{"version":3,"sources":["./$_lazy_route_resource lazy namespace object","./src/app/app-routing.module.ts","./src/app/app.component.ts","./src/app/app.component.html","./src/app/app.module.ts","./src/app/core/components/auto-logout/auto-logout.component.ts","./src/app/core/components/auto-logout/auto-logout.component.html","./src/app/core/components/layouts/bottom-nav-bar/bottom-nav-bar.component.ts","./src/app/core/components/layouts/bottom-nav-bar/bottom-nav-bar.component.html","./src/app/core/components/layouts/footer/footer.component.ts","./src/app/core/components/layouts/footer/footer.component.html","./src/app/core/components/layouts/header/header.component.ts","./src/app/core/components/layouts/header/header.component.html","./src/app/core/components/layouts/layout/layout.component.ts","./src/app/core/components/layouts/layout/layout.component.html","./src/app/core/components/layouts/resume-or-start-popup/resume-or-start-popup.component.ts","./src/app/core/components/layouts/resume-or-start-popup/resume-or-start-popup.component.html","./src/app/core/components/layouts/sub-header/sub-header.component.ts","./src/app/core/components/layouts/sub-header/sub-header.component.html","./src/app/core/components/loader-inner/loader-inner.component.ts","./src/app/core/components/loader-inner/loader-inner.component.html","./src/app/core/components/loader/loader.component.ts","./src/app/core/components/loader/loader.component.html","./src/app/core/components/side-bar/animations.ts","./src/app/core/components/side-bar/side-bar.component.ts","./src/app/core/components/side-bar/side-bar.component.html","./src/app/core/constants/local-storage.ts","./src/app/core/material-components.module.ts","./src/app/core/services/authentication.service.ts","./src/app/core/services/http.service.ts","./src/app/core/services/loader.service.ts","./src/app/core/theme.module.ts","./src/app/material-components.module.ts","./src/app/modules/completed-opportunities/completed-opportunities.component.ts","./src/app/modules/completed-opportunities/completed-opportunities.component.html","./src/app/modules/financial-goal/services/financial-goal.service.ts","./src/app/modules/message-portal/message-portal.component.ts","./src/app/modules/message-portal/message-portal.component.html","./src/app/modules/message-portal/new-message-popup/new-message-popup.component.ts","./src/app/modules/message-portal/new-message-popup/new-message-popup.component.html","./src/app/modules/message-portal/selected-message/selected-message.component.ts","./src/app/modules/message-portal/selected-message/selected-message.component.html","./src/app/modules/repetaed-component/confirmation-prompt/confirmation-prompt.component.ts","./src/app/modules/repetaed-component/confirmation-prompt/confirmation-prompt.component.html","./src/app/modules/shared-component/user-form/user-form.component.ts","./src/app/modules/shared-component/user-form/user-form.component.html","./src/app/modules/side-nav-components/service/sidenav.service.ts","./src/app/modules/start-application/start-application.component.ts","./src/app/modules/start-application/start-application.component.html","./src/app/modules/user-notification/header-notification-popup/header-notification-popup.component.ts","./src/app/modules/user-notification/header-notification-popup/header-notification-popup.component.html","./src/app/modules/user-notification/user-notification-popup/user-notification-popup.component.ts","./src/app/modules/user-notification/user-notification-popup/user-notification-popup.component.html","./src/app/modules/user-notification/user-notification.component.ts","./src/app/modules/user-notification/user-notification.component.html","./src/app/modules/users/address/address.component.ts","./src/app/modules/users/address/address.component.html","./src/app/modules/users/confirmation-popup/confirmation-popup.component.ts","./src/app/modules/users/confirmation-popup/confirmation-popup.component.html","./src/app/modules/users/custom-date-adapter.ts","./src/app/modules/users/feedback-popup/feedback-popup.component.ts","./src/app/modules/users/feedback-popup/feedback-popup.component.html","./src/app/modules/users/forgot-password/forgot-password.component.ts","./src/app/modules/users/forgot-password/forgot-password.component.html","./src/app/modules/users/login-otp/login-otp.component.ts","./src/app/modules/users/login-otp/login-otp.component.html","./src/app/modules/users/login-page/login-page.component.ts","./src/app/modules/users/login-page/login-page.component.html","./src/app/modules/users/login/login.component.ts","./src/app/modules/users/login/login.component.html","./src/app/modules/users/mobile-input.directive.ts","./src/app/modules/users/services/users.service.ts","./src/app/modules/users/tel-input/tel-input.component.ts","./src/app/modules/users/tel-input/tel-input.component.html","./src/app/modules/users/update-password/update-password.component.ts","./src/app/modules/users/update-password/update-password.component.html","./src/app/modules/users/withdraw-opportunity-popup/withdraw-opportunity-popup.component.ts","./src/app/modules/users/withdraw-opportunity-popup/withdraw-opportunity-popup.component.html","./src/app/route-guard/auth-guard.service.ts","./src/app/route-guard/is-opportunity.guard.service.ts","./src/environments/environment.ts","./src/main.ts"],"names":[],"mappings":";;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAE;AACF;AACA,4CAA4C,WAAW;AACvD;AACA;AACA,wE;;;;;;;;;;;;ACZA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAyC;AACc;AAC+D;AAClB;AACP;AACO;AACvC;AAEmB;AACoB;AACT;AACqB;AAC3B;;;AAErF,MAAM,MAAM,GAAW;IACrB,0BAA0B;IAC1B,+BAA+B;IAC/B;QACE,IAAI,EAAE,EAAE;QAER,SAAS,EAAE,MAAM;QACjB,SAAS,EAAE,gHAAyB;QACpC,IAAI,EAAE,EAAE,KAAK,EAAE,mBAAmB,EAAE,UAAU,EAAE,mBAAmB,EAAE;KACtE;IAED,kDAAkD;IAClD;QACE,IAAI,EAAE,SAAS;QAEf,SAAS,EAAE,yGAAiB;KAC7B;IACD;QACE,WAAW,EAAE,CAAC,yEAAS,CAAC;QACxB,IAAI,EAAE,OAAO;QACb,SAAS,EAAE,kGAAkB;KAC9B;IACD;QACE,IAAI,EAAE,gBAAgB;QAEtB,SAAS,EAAE,yGAAiB;KAC7B;IACD;QACE,IAAI,EAAE,oBAAoB;QAE1B,SAAS,EAAE,yGAAiB;KAC7B;IACD;QACE,IAAI,EAAE,gBAAgB;QAEtB,SAAS,EAAE,yGAAiB;KAC7B;IACD;QACE,IAAI,EAAE,iBAAiB;QAEvB,SAAS,EAAE,yGAAiB;KAC7B;IACD;QACE,IAAI,EAAE,mBAAmB;QAEzB,SAAS,EAAE,yGAAiB;KAC7B;IACD;QACE,IAAI,EAAE,iBAAiB;QAEvB,SAAS,EAAE,yGAAiB;KAC7B;IACD;QACE,IAAI,EAAE,kBAAkB;QAExB,SAAS,EAAE,yGAAiB;KAC7B;IAED;QACE,IAAI,EAAE,iCAAiC;QACvC,SAAS,EAAE,gHAAuB;KACnC;IACD;QACE,IAAI,EAAE,iCAAiC;QACvC,SAAS,EAAE,gHAAuB;KACnC;IAED;QACE,IAAI,EAAE,YAAY;QAClB,WAAW,EAAE,CAAC,yEAAS,CAAC;QACxB,YAAY,EAAE,GAAG,EAAE,CACjB,knCAA8D,CAAC,IAAI,CACjE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,sBAAsB,CAChC;KACJ;IACD;QACE,IAAI,EAAE,MAAM;QACZ,WAAW,EAAE,CAAC,yEAAS,EAAE,4FAAkB,CAAC;QAC5C,YAAY,EAAE,GAAG,EAAE,CACjB,uSAAsC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC;KACpE;IAED;QACE,IAAI,EAAE,gBAAgB;QACtB,WAAW,EAAE,CAAC,yEAAS,EAAE,4FAAkB,CAAC;QAC5C,YAAY,EAAE,GAAG,EAAE,CACjB,wtCAAwD,CAAC,IAAI,CAC3D,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,oBAAoB,CAC9B;KACJ;IAED;QACE,IAAI,EAAE,iBAAiB;QACvB,WAAW,EAAE,CAAC,yEAAS,EAAE,4FAAkB,CAAC;QAC5C,YAAY,EAAE,GAAG,EAAE,CACjB,gsBAA0D,CAAC,IAAI,CAC7D,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,oBAAoB,CAC9B;KACJ;IAED;QACE,IAAI,EAAE,mBAAmB;QACzB,WAAW,EAAE,CAAC,yEAAS,EAAE,4FAAkB,CAAC;QAC5C,YAAY,EAAE,GAAG,EAAE,CACjB,klBAA8D,CAAC,IAAI,CACjE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,sBAAsB,CAChC;KACJ;IAED;QACE,IAAI,EAAE,iBAAiB;QACvB,WAAW,EAAE,CAAC,yEAAS,EAAE,4FAAkB,CAAC;QAC5C,YAAY,EAAE,GAAG,EAAE,CACjB,kkBAA0D,CAAC,IAAI,CAC7D,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,oBAAoB,CAC9B;KACJ;IAED;QACE,IAAI,EAAE,kBAAkB;QACxB,WAAW,EAAE,CAAC,yEAAS,EAAE,4FAAkB,CAAC;QAC5C,YAAY,EAAE,GAAG,EAAE,CACjB,kcAA4D,CAAC,IAAI,CAC/D,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,qBAAqB,CAC/B;KACJ;IAED;QACE,IAAI,EAAE,gBAAgB;QACtB,WAAW,EAAE,CAAC,yEAAS,EAAE,4FAAkB,CAAC;QAC5C,YAAY,EAAE,GAAG,EAAE,CACjB,khBAEC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,8BAA8B,CAAC;KAClD;IAED;QACE,IAAI,EAAE,oBAAoB;QAC1B,WAAW,EAAE,CAAC,yEAAS,EAAE,4FAAkB,CAAC;QAC5C,YAAY,EAAE,GAAG,EAAE,CACjB,kjBAEC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,kCAAkC,CAAC;KACtD;IAED;QACE,IAAI,EAAE,OAAO;QACb,YAAY,EAAE,GAAG,EAAE,CACjB,oNAAsC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC;KACpE;IACD;QACE,IAAI,EAAE,gBAAgB;QACtB,WAAW,EAAE,CAAC,yEAAS,CAAC;QACxB,YAAY,EAAE,GAAG,EAAE,CACjB,4RAAwD,CAAC,IAAI,CAC3D,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,mBAAmB,CAC7B;KACJ;IACD;QACE,IAAI,EAAE,yBAAyB;QAC/B,WAAW,EAAE,CAAC,yEAAS,EAAE,4FAAkB,CAAC;QAC5C,YAAY,EAAE,GAAG,EAAE,CACjB,oWAEC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,4BAA4B,CAAC;KAChD;IACD;QACE,IAAI,EAAE,WAAW;QACjB,WAAW,EAAE,CAAC,yEAAS,CAAC;QACxB,SAAS,EAAE,kIAA+B;QAC1C,IAAI,EAAE;YACJ,KAAK,EAAE,uBAAuB;YAC9B,UAAU,EAAE,uBAAuB;SACpC;KACF;IACD;QACE,IAAI,EAAE,cAAc;QACpB,WAAW,EAAE,CAAC,yEAAS,CAAC;QACxB,SAAS,EAAE,gHAAyB;QACpC,IAAI,EAAE,EAAE,KAAK,EAAE,cAAc,EAAE,UAAU,EAAE,mBAAmB,EAAE;KACjE;IACD;QACE,IAAI,EAAE,SAAS;QACf,WAAW,EAAE,CAAC,yEAAS,CAAC;QACxB,SAAS,EAAE,uGAAsB;QACjC,IAAI,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,cAAc,EAAE;KACxD;IACD;QACE,IAAI,EAAE,kBAAkB;QACxB,WAAW,EAAE,CAAC,yEAAS,CAAC;QACxB,SAAS,EAAE,6HAAwB;QACnC,IAAI,EAAE,EAAE,KAAK,EAAE,mBAAmB,EAAE,UAAU,EAAE,cAAc,EAAE;KACjE;IACD;QACE,IAAI,EAAE,UAAU;QAChB,WAAW,EAAE,CAAC,yEAAS,CAAC;QACxB,YAAY,EAAE,GAAG,EAAE,CACjB,0wCAAkE,CAAC,IAAI,CACrE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,uBAAuB,CACjC;KACJ;IACD;QACE,IAAI,EAAE,QAAQ;QACd,WAAW,EAAE,CAAC,yEAAS,CAAC;QACxB,YAAY,EAAE,GAAG,EAAE,CACjB,+hCAA4D,CAAC,IAAI,CAC/D,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,YAAY,CACtB;KACJ;IACD;QACE,IAAI,EAAE,QAAQ;QACd,WAAW,EAAE,CAAC,yEAAS,CAAC;QACxB,YAAY,EAAE,GAAG,EAAE,CACjB,kmCAEC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,iCAAiC,CAAC;KACrD;IAED;QACE,IAAI,EAAE,MAAM;QACZ,WAAW,EAAE,CAAC,yEAAS,CAAC;QACxB,YAAY,EAAE,GAAG,EAAE,CACjB,kzCAEC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC;KAC9B;IACD;QACE,IAAI,EAAE,gBAAgB;QACtB,WAAW,EAAE,CAAC,yEAAS,CAAC;QACxB,YAAY,EAAE,GAAG,EAAE,CACjB,0xCAEC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,uBAAuB,CAAC;KAC3C;IAED;QACE,IAAI,EAAE,IAAI;QACV,UAAU,EAAE,EAAE;KACf;CACF,CAAC;AAMK,MAAM,gBAAgB;;+FAAhB,gBAAgB;0JAAhB,gBAAgB,kBAHlB,CAAC,4DAAY,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,EAC7B,4DAAY;mIAEX,gBAAgB,uFAFjB,4DAAY;6FAEX,gBAAgB;cAJ5B,sDAAQ;eAAC;gBACR,OAAO,EAAE,CAAC,4DAAY,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;gBACvC,OAAO,EAAE,CAAC,4DAAY,CAAC;aACxB;;;;;;;;;;;;;;ACjQD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAA2D;AAOpC;;;;;;AAShB,MAAM,YAAY;IAOvB,YAAmB,IAA2B;QAA3B,SAAI,GAAJ,IAAI,CAAuB;QAN9C,UAAK,GAAG,UAAU,CAAC;QACX,WAAM,GAA6B,IAAI,CAAC;QACzC,gBAAW,GAAe,IAAI,CAAC;QACtC,YAAO,GAAG,EAAE,CAAC;QAIX,IAAI,CAAC,kBAAkB,EAAE,CAAC;IAC5B,CAAC;IAED,QAAQ;QACN,IAAI,CAAC,4BAA4B,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,SAAS,CAClE,CAAC,KAAK,EAAE,EAAE;;YACR,UAAI,CAAC,WAAW,0CAAE,OAAO,GAAG;YAC5B,UAAI,CAAC,MAAM,0CAAE,MAAM,GAAG;YACtB,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAC5B,CAAC,CACF,CAAC;IACJ,CAAC;IACD,kBAAkB;QAChB,OAAO,IAAI,OAAO,CAAM,CAAC,OAAO,EAAE,EAAE;YAClC,MAAM,CAAC,gBAAgB,GAAG,CAAC,GAAQ,EAAE,EAAE;gBACrC,GAAG,CAAC,IAAI,CAAC;oBACP,IAAI,EAAE;wBACJ,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE;qBAClC;iBACF,CAAC,CAAC;gBACH,IAAI,CAAC,WAAW,GAAG,GAAG,CAAC;gBACvB,OAAO,CAAC,GAAG,CAAC,CAAC;YACf,CAAC,CAAC;YACF,IAAI,CAAC,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;YAC/C,IAAI,CAAC,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC;YAC1B,IAAI,CAAC,MAAM,CAAC,IAAI,GAAG,iBAAiB,CAAC;YACrC,IAAI,CAAC,MAAM,CAAC,GAAG,GAAG,2CAA2C,wEAAW,CAAC,cAAc,0BAA0B,CAAC;YAClH,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACzC,CAAC,CAAC,CAAC;IACL,CAAC;IAED,+CAA+C;IAC/C,6DAA6D;IAC7D,+CAA+C;IAC/C,6CAA6C;IAC7C,KAAK;IACL,kBAAkB;IAClB,uBAAuB;IACvB,IAAI;IACJ,wBAAwB;IACxB,yCAAyC;IAEzC,mDAAmD;IACnD,eAAe;IACf,8GAA8G;IAC9G,mCAAmC;IACnC,uBAAuB;IACvB,4BAA4B;IAC5B,gEAAgE;IAEhE,eAAe;IACf,4DAA4D;IAC5D,oBAAoB;IACpB,QAAQ;IACR,IAAI;IAEJ,WAAW;;QACT,IAAI,IAAI,CAAC,WAAW,EAAE;YACpB,UAAI,CAAC,WAAW,0CAAE,OAAO,GAAG;SAC7B;QACD,UAAI,CAAC,MAAM,0CAAE,MAAM,GAAG;QACtB,UAAI,CAAC,4BAA4B,0CAAE,WAAW,GAAG;IACnD,CAAC;;wEAtEU,YAAY;4FAAZ,YAAY;QCjBzB,6EACE;QAAA,2EACgB;QAClB,4DAAa;QACb,yEAA2B;;6FDad,YAAY;cALxB,uDAAS;eAAC;gBACT,QAAQ,EAAE,UAAU;gBACpB,WAAW,EAAE,sBAAsB;gBACnC,SAAS,EAAE,CAAC,sBAAsB,CAAC;aACpC;;;;;;;;;;;;;;AEhBD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAA0D;AACjB;AACqB;AAEN;AACT;AACG;AAC6B;AACP;AACX;AACyD;AAClB;AAC9B;AACE;AAC4B;AACmC;AAClF;AACE;AACd;AACC;AACK;AAC/C,yDAAyD;AACK;AACD;AACJ;AACoF;AAClD;AACuB;AAClC;AACgC;AACa;;AAE7H,iFAAiF;AACjF,wFAAwF;AACxF,4DAA4D;AAC5D,4DAA4D;AAE5D,qDAAW,CAAC;IACV,GAAG,EAAE,4EAA4E;IACjF,YAAY,EAAE;QACZ,IAAI,6DAAY,CAAC,cAAc,CAAC;YAC9B,cAAc,EAAE,CAAC,WAAW,EAAE,2BAA2B,CAAC;YAC1D,sBAAsB,EAAE,uEAA6B;SACtD,CAAC;KACH;IAED,8CAA8C;IAC9C,8CAA8C;IAC9C,kDAAkD;IAClD,gBAAgB,EAAE,GAAG;CACtB,CAAC,CAAC;AA0DI,MAAM,SAAS;;wFAAT,SAAS,cAFR,2DAAY;4IAEb,SAAS,mBA5BT;QACT;YACE,OAAO,EAAE,0DAAY;YACrB,QAAQ,EAAE,mEAAyB,CAAC;gBAClC,UAAU,EAAE,IAAI;aACjB,CAAC;SACH;QACD;YACE,OAAO,EAAE,6DAAmB;YAC5B,IAAI,EAAE,CAAC,uDAAM,CAAC;SACf;QACD;YACE,OAAO,EAAE,6DAAe;YACxB,UAAU,EAAE,GAAG,EAAE,CAAC,GAAG,EAAE,GAAE,CAAC;YAC1B,IAAI,EAAE,CAAC,6DAAmB,CAAC;YAC3B,KAAK,EAAE,IAAI;SACZ;QAED,EAAE,OAAO,EAAE,uEAAe,EAAE,QAAQ,EAAE,OAAO,EAAE;QAC/C,EAAE,OAAO,EAAE,mEAAW,EAAE,QAAQ,EAAE,qFAAiB,EAAE;QACrD,4DAAY;QACZ,0EAAS;QACT,6FAAkB;KAGnB,YAxCQ;YACP,4DAAY;YACZ,uEAAa;YACb,oEAAgB;YAChB,8DAAW;YACX,4FAAuB;YACvB,oFAAwB;YACxB,mEAAmB;YACnB,qEAAa;YACb,uBAAuB;YACvB,4EAAuB;YACvB,uEAAc;SAEf,EACS,oFAAwB;mIA6BvB,SAAS,mBAtDlB,2DAAY;QACZ,kIAA+B;QAC/B,gHAAyB;QACzB,iHAAyB;QACzB,oJAA8B;QAC9B,0JAAgC;QAChC,wGAAsB;QACtB,+HAAwB;QACxB,6HAAwB;QACxB,0IAA2B,aAG3B,4DAAY;QACZ,uEAAa;QACb,oEAAgB;QAChB,8DAAW;QACX,4FAAuB;QACvB,oFAAwB;QACxB,mEAAmB;QACnB,qEAAa;QACb,uBAAuB;QACvB,4EAAuB;QACvB,uEAAc,aAGN,oFAAwB;6FA6BvB,SAAS;cAxDrB,sDAAQ;eAAC;gBACR,YAAY,EAAE;oBACZ,2DAAY;oBACZ,kIAA+B;oBAC/B,gHAAyB;oBACzB,iHAAyB;oBACzB,oJAA8B;oBAC9B,0JAAgC;oBAChC,wGAAsB;oBACtB,+HAAwB;oBACxB,6HAAwB;oBACxB,0IAA2B;iBAC5B;gBACD,OAAO,EAAE;oBACP,4DAAY;oBACZ,uEAAa;oBACb,oEAAgB;oBAChB,8DAAW;oBACX,4FAAuB;oBACvB,oFAAwB;oBACxB,mEAAmB;oBACnB,qEAAa;oBACb,uBAAuB;oBACvB,4EAAuB;oBACvB,uEAAc;iBAEf;gBACD,OAAO,EAAE,CAAC,oFAAwB,CAAC;gBACnC,SAAS,EAAE;oBACT;wBACE,OAAO,EAAE,0DAAY;wBACrB,QAAQ,EAAE,mEAAyB,CAAC;4BAClC,UAAU,EAAE,IAAI;yBACjB,CAAC;qBACH;oBACD;wBACE,OAAO,EAAE,6DAAmB;wBAC5B,IAAI,EAAE,CAAC,uDAAM,CAAC;qBACf;oBACD;wBACE,OAAO,EAAE,6DAAe;wBACxB,UAAU,EAAE,GAAG,EAAE,CAAC,GAAG,EAAE,GAAE,CAAC;wBAC1B,IAAI,EAAE,CAAC,6DAAmB,CAAC;wBAC3B,KAAK,EAAE,IAAI;qBACZ;oBAED,EAAE,OAAO,EAAE,uEAAe,EAAE,QAAQ,EAAE,OAAO,EAAE;oBAC/C,EAAE,OAAO,EAAE,mEAAW,EAAE,QAAQ,EAAE,qFAAiB,EAAE;oBACrD,4DAAY;oBACZ,0EAAS;oBACT,6FAAkB;iBAGnB;gBACD,SAAS,EAAE,CAAC,2DAAY,CAAC;aAC1B;;;;;;;;;;;;;;AC3GD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAA6D;;;;;;AAStD,MAAM,mBAAmB;IAqB9B,YAAqB,SAA4C;QAA5C,cAAS,GAAT,SAAS,CAAmC;QAnBjE,aAAQ,GAAG,EAAE,CAAC;QACd,qBAAgB,GAAG,GAAG,CAAC;QAEvB,iBAAY,GAAG,KAAK,CAAC;IAgBgD,CAAC;IAdtE,UAAU;QACR,IAAI,CAAC,QAAQ,GAAG,WAAW,CAAC,GAAG,EAAE;YAC/B,IAAI,IAAI,CAAC,QAAQ,GAAG,CAAC,EAAE;gBACrB,IAAI,CAAC,QAAQ,EAAE,CAAC;gBAChB,IAAI,CAAC,gBAAgB,GAAG,CAAC,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC,GAAG,GAAG,CAAC;aACpD;YACD,IAAI,IAAI,CAAC,QAAQ,KAAK,CAAC,EAAE;gBACvB,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE;oBACpB,IAAI,CAAC,MAAM,EAAE,CAAC;iBACjB;aACF;QACH,CAAC,EAAE,IAAI,CAAC,CAAC;IACX,CAAC;IAID,QAAQ;QAEN,IAAI,CAAC,UAAU,EAAE,CAAC;IACpB,CAAC;IAED,WAAW;QACT,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;QACzB,IAAI,IAAI,CAAC,QAAQ,EAAE;YACjB,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;SAC9B;IACH,CAAC;IAED,KAAK;QACH,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;QACzB,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC7B,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAC,MAAM,EAAE,KAAK,EAAC,CAAC,CAAC;IACxC,CAAC;IAED,MAAM;QACJ,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;QACzB,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC7B,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAC,MAAM,EAAE,IAAI,EAAC,CAAC,CAAC;IACvC,CAAC;;sFA7CU,mBAAmB;mGAAnB,mBAAmB;QCRhC,yEAEI;QAAA,wFACE;QAAA,yEACE;QAAA,yEACE;QAAA,yEACE;QAAA,sEACA;QAAA,qFACuB;QAAA,4DAAM;QAC7B,sEAAK;QAAA,wEAAsB;QAAA,uDAAY;QAAA,4DAAK;QAAA,4DAAM;QAEpD,4DAAM;QACN,0EACE;QAAA,gFAAsD;QAAA,wEAAY;QAAA,4DAAY;QAEhF,4DAAM;QACP,0EACC;QAAA,yEAAgD;QAAA,8EAAiB;QAAA,4DAAK;QACtE,4DAAM;QACN,0EAEE;QAAA,0EACE;QAAA,wJAA2F;QAAA,iEAC/F;QAAA,4DAAK;QAEL,4DAAM;QACR,4DAAM;QAER,4DAAM;QACR,4DAAqB;QACrB,0FACE;QAAA,8EAMA;QAFA,4IAAS,WAAO,IAAC;QAEjB,sEACA;QAAA,4DAAS;QAEX,4DAAqB;QACrB,2EACE;QAAA,8EAGE;QADA,4IAAS,YAAQ,IAAC;QAClB,wEACA;QAAA,4DAAS;QACb,4DAAM;QAGV,4DAAM;;QA3CoE,0DAA0B;QAA1B,uFAA0B;QAE7D,0DAAY;QAAZ,6EAAY;;6FDDtC,mBAAmB;cAL/B,uDAAS;eAAC;gBACT,QAAQ,EAAE,iBAAiB;gBAC3B,WAAW,EAAE,8BAA8B;gBAC3C,SAAS,EAAE,CAAC,8BAA8B,CAAC;aAC5C;;;;;;;;;;;;;;AERD;AAAA;AAAA;AAAA;AAAA;AAAkD;;;;AAQ3C,MAAM,qBAAqB;IAChC,YAAmB,WAAyB;QAAzB,gBAAW,GAAX,WAAW,CAAc;IAAG,CAAC;IAEhD,QAAQ,KAAU,CAAC;IACnB,aAAa,CAAC,KAAK;QACjB,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC7C,CAAC;;0FANU,qBAAqB;qGAArB,qBAAqB;QCRlC,yEACI;QAAA,wEACI;QAAA,qEAAI;QAAA,uEAA2D;QAAxD,wIAAS,kBAAc,WAAW,CAAC,IAAC;QAAoB,2EAC3D;QAAA,8DACI;QADJ,yEACI;QAAA,qEACA;QAAA,4DAAM;QACd,4DAAW;QAAA,oEAAS;QAAA,4DAAI;QAAA,4DAAK;QAC7B,+DAAI;QAAJ,qEAAI;QAAA,uEAAwD;QAArD,wIAAS,kBAAc,QAAQ,CAAC,IAAC;QAAoB,+EACxD;QAAA,6EACJ;QAAA,4DAAW;QAAA,kEAAM;QAAA,4DAAI;QAAA,4DAAK;QAC1B,sEAAI;QAAA,wEAA0D;QAAtD,yIAAS,kBAAc,SAAS,CAAC,IAAC;QAAoB,+EAC1D;QAAA,8DACI;QADJ,0EACI;QAAA,sEACA;QAAA,4DAAM;QACd,4DAAW;QAAA,oEAAQ;QAAA,4DAAI;QAAA,4DAAK;QAC5B,+DAAI;QAAJ,sEAAI;QAAA,wEAA6D;QAA1D,yIAAS,kBAAc,aAAa,CAAC,IAAC;QAAoB,+EAC7D;QAAA,kEACJ;QAAA,4DAAW;QAAA,uEAAW;QAAA,4DAAI;QAAA,4DAAK;QAI/B,sEAAI;QAAA,wEACA;QADI,yIAAS,kBAAc,UAAU,CAAC,IAAC;QACvC,+EACI;QAAA,8DACI;QADJ,0EACI;QAAA,sEACA;QAAA,4DAAM;QAClB,4DAAW;QAAA,oEAAQ;QAAA,4DAAI;QAAA,4DAAK;QAChC,4DAAK;QAET,4DAAM;;6FDrBO,qBAAqB;cALjC,uDAAS;eAAC;gBACT,QAAQ,EAAE,oBAAoB;gBAC9B,WAAW,EAAE,iCAAiC;gBAC9C,SAAS,EAAE,CAAC,iCAAiC,CAAC;aAC/C;;;;;;;;;;;;;;AEPD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAkD;;;;;;AAQ3C,MAAM,eAAe;IAE1B,YAAmB,IAA2B;QAA3B,SAAI,GAAJ,IAAI,CAAuB;QAD9C,mBAAc,GAAG,KAAK,CAAC;IAC0B,CAAC;IAElD,QAAQ,KAAU,CAAC;;8EAJR,eAAe;+FAAf,eAAe;QCR5B,6EACE;QACA,yEACE;QAAA,yEACE;QAAA,yEACE;QAAA,yEACE;QAAA,uEACG;QAAA,oEACD;QAAA,4DAAI;QACR,4DAAM;QACN,yEACE;QAAA,uEAA4C;QAAA,uEAAY;QAAA,4DAAI;QAC5D,0EAAmB;QAAA,6EAAiB;QAAA,4DAAM;QAC5C,4DAAM;QACR,4DAAM;QAEN,2EACE;QAAA,iFACE;QAAA,2FAIE;QAHA,4KAA2B,IAAI,IAAC,oHACL,KAAK,IADA;QAGhC,8FACE;QAAA,mFAAkB;QAAA,6EAAgB;QAAA,4DAAkB;QACpD,4EAA0C;QAAA,oEAAO;QAAA,4DAAO;QACxD,4EAAuC;QAAA,iEAAI;QAAA,4DAAO;QACpD,4DAA6B;QAC7B,2EACE;QAAA,sEACE;QAAA,sEAAI;QAAA,yEAA8B;QAAA,gEAAI;QAAA,4DAAI;QAAA,4DAAK;QAC/C,sEAAI;QAAA,yEAA8B;QAAA,mEAAO;QAAA,4DAAI;QAAA,4DAAK;QAClD,sEAAI;QAAA,yEAA8B;QAAA,kEAAM;QAAA,4DAAI;QAAA,4DAAK;QACjD,sEAAI;QAAA,yEAA8B;QAAA,kEAAM;QAAA,4DAAI;QAAA,4DAAK;QACjD,sEAAI;QAAA,yEAA8B;QAAA,qEAAS;QAAA,4DAAI;QAAA,4DAAK;QACpD,sEAAI;QAAA,yEAA8B;QAAA,oEAAQ;QAAA,4DAAI;QAAA,4DAAK;QACrD,4DAAK;QACP,4DAAM;QACR,4DAAsB;QAEtB,2FAIA;QAHA,4KAA2B,IAAI,IAAC,oHACL,KAAK,IADA;QAGhC,8FACE;QAAA,mFAAkB;QAAA,4EAAe;QAAA,4DAAkB;QACnD,4EAA0C;QAAA,oEAAO;QAAA,4DAAO;QACxD,4EAAuC;QAAA,iEAAI;QAAA,4DAAO;QACpD,4DAA6B;QAC7B,2EACE;QAAA,sEACE;QAAA,sEAAI;QAAA,yEAA8B;QAAA,4EAAgB;QAAA,4DAAI;QAAA,4DAAK;QAC3D,sEAAI;QAAA,yEAA8B;QAAA,2EAAe;QAAA,4DAAI;QAAA,4DAAK;QAC1D,sEAAI;QAAA,yEAA8B;QAAA,8EAAkB;QAAA,4DAAI;QAAA,4DAAK;QAC7D,sEAAI;QAAA,yEAA8B;QAAA,6EAAiB;QAAA,4DAAI;QAAA,4DAAK;QAC5D,sEAAI;QAAA,yEAA8B;QAAA,gFAAoB;QAAA,4DAAI;QAAA,4DAAK;QAC/D,sEAAI;QAAA,yEAA8B;QAAA,6EAAiB;QAAA,4DAAI;QAAA,4DAAK;QAC9D,4DAAK;QACP,4DAAM;QACR,4DAAsB;QAEtB,2FAIA;QAHA,4KAA2B,IAAI,IAAC,oHACL,KAAK,IADA;QAGhC,8FACE;QAAA,mFAAkB;QAAA,2EAAc;QAAA,4DAAkB;QAClD,4EAA0C;QAAA,oEAAO;QAAA,4DAAO;QACxD,4EAAuC;QAAA,iEAAI;QAAA,4DAAO;QACpD,4DAA6B;QAC7B,2EACE;QAAA,sEACE;QAAA,sEAAI;QAAA,yEAA8B;QAAA,wEAAY;QAAA,4DAAI;QAAA,4DAAK;QACvD,sEAAI;QAAA,yEAA8B;QAAA,gFAAoB;QAAA,4DAAI;QAAA,4DAAK;QAC/D,sEAAI;QAAA,yEAA8B;QAAA,gFAAoB;QAAA,4DAAI;QAAA,4DAAK;QAC/D,sEAAI;QAAA,yEAA8B;QAAA,qFAAyB;QAAA,4DAAI;QAAA,4DAAK;QACtE,4DAAK;QACP,4DAAM;QACR,4DAAsB;QAEtB,2FAIA;QAHA,4KAA2B,IAAI,IAAC,oHACL,KAAK,IADA;QAGhC,8FACE;QAAA,mFAAkB;QAAA,sEAAS;QAAA,4DAAkB;QAC7C,4EAA0C;QAAA,oEAAO;QAAA,4DAAO;QACxD,4EAAuC;QAAA,iEAAI;QAAA,4DAAO;QACpD,4DAA6B;QAC7B,4EACE;QAAA,uEACE;QAAA,uEAAI;QAAA,0EAA8B;QAAA,qEAAQ;QAAA,4DAAI;QAAA,4DAAK;QACnD,uEAAI;QAAA,0EAA8B;QAAA,gFAAmB;QAAA,4DAAI;QAAA,4DAAK;QAC9D,uEAAI;QAAA,0EAA8B;QAAA,sEAAS;QAAA,4DAAI;QAAA,4DAAK;QACtD,4DAAK;QACP,4DAAM;QACR,4DAAsB;QAEtB,4FAIA;QAHA,6KAA2B,IAAI,IAAC,qHACL,KAAK,IADA;QAGhC,+FACE;QAAA,oFAAkB;QAAA,2EAAa;QAAA,4DAAkB;QACjD,6EAA0C;QAAA,qEAAO;QAAA,4DAAO;QACxD,6EAAuC;QAAA,kEAAI;QAAA,4DAAO;QACpD,4DAA6B;QAC7B,4EACE;QAAA,uEACE;QAAA,uEAAI;QAAA,0EAA8B;QAAA,2EAAc;QAAA,4DAAI;QAAA,4DAAK;QACzD,uEAAI;QAAA,0EAA8B;QAAA,yFAA4B;QAAA,4DAAI;QAAA,4DAAK;QACvE,uEAAI;QAAA,0EAA8B;QAAA,kEAAK;QAAA,4DAAI;QAAA,4DAAK;QAClD,4DAAK;QACP,4DAAM;QACR,4DAAsB;QACpB,4DAAgB;QACd,4DAAM;QAEN,4EACE;QAAA,4EACE;QAAA,2EACE;QAAA,2EAAoB;QAAA,4EAAe;QAAA,4DAAK;QACxC,uEAAI;QAAA,0EAA4D;QAAA,iEAAI;QAAA,4DAAI;QAAA,4DAAK;QAC7E,uEAAI;QAAA,0EAA+D;QAAA,oEAAO;QAAA,4DAAI;QAAA,4DAAK;QACnF,uEAAI;QAAA,0EAA8D;QAAA,mEAAM;QAAA,4DAAI;QAAA,4DAAK;QACjF,uEAAI;QAAA,0EAA8D;QAAA,mEAAM;QAAA,4DAAI;QAAA,4DAAK;QACjF,uEAAI;QAAA,0EAAiE;QAAA,sEAAS;QAAA,4DAAI;QAAA,4DAAK;QACvF,uEAAI;QAAA,0EAAgE;QAAA,qEAAQ;QAAA,4DAAI;QAAA,4DAAK;QACvF,4DAAK;QACL,2EACE;QAAA,2EAAoB;QAAA,2EAAc;QAAA,4DAAK;QACvC,uEAAI;QAAA,0EAAgF;QAAA,6EAAgB;QAAA,4DAAI;QAAA,4DAAK;QAC7G,uEAAI;QAAA,0EAA+E;QAAA,4EAAe;QAAA,4DAAI;QAAA,4DAAK;QAC3G,uEAAI;QAAA,0EAAkF;QAAA,+EAAkB;QAAA,4DAAI;QAAA,4DAAK;QACjH,uEAAI;QAAA,0EAAiF;QAAA,8EAAiB;QAAA,4DAAI;QAAA,4DAAK;QAC/G,uEAAI;QAAA,0EAAoF;QAAA,iFAAoB;QAAA,4DAAI;QAAA,4DAAK;QACrH,uEAAI;QAAA,0EAAkE;QAAA,8EAAiB;QAAA,4DAAI;QAAA,4DAAK;QAClG,4DAAK;QACL,2EACE;QAAA,2EAAoB;QAAA,0EAAa;QAAA,4DAAK;QACtC,uEAAI;QAAA,0EAA6D;QAAA,yEAAY;QAAA,4DAAI;QAAA,4DAAK;QACtF,uEAAI;QAAA,0EAA4E;QAAA,iFAAoB;QAAA,4DAAI;QAAA,4DAAK;QAC7G,uEAAI;QAAA,0EAA4E;QAAA,iFAAoB;QAAA,4DAAI;QAAA,4DAAK;QAC7G,uEAAI;QAAA,0EAA8D;QAAA,sFAAyB;QAAA,4DAAI;QAAA,4DAAK;QACtG,4DAAK;QACL,2EACE;QAAA,2EAAoB;QAAA,qEAAQ;QAAA,4DAAK;QACjC,uEAAI;QAAA,0EAAkE;QAAA,qEAAQ;QAAA,4DAAI;QAAA,4DAAK;QACvF,uEAAI;QAAA,0EAA6E;QAAA,gFAAmB;QAAA,4DAAI;QAAA,4DAAK;QAC7G,uEAAI;QAAA,0EAAmE;QAAA,sEAAS;QAAA,4DAAI;QAAA,4DAAK;QAC3F,4DAAK;QACL,2EACE;QAAA,2EAAoB;QAAA,yEAAY;QAAA,4DAAK;QACrC,uEAAI;QAAA,0EAA+D;QAAA,2EAAc;QAAA,4DAAI;QAAA,4DAAK;QAC1F,uEAAI;QAAA,0EAA6E;QAAA,yFAA4B;QAAA,4DAAI;QAAA,4DAAK;QACtH,uEAAI;QAAA,0EAAsD;QAAA,kEAAK;QAAA,4DAAI;QAAA,4DAAK;QAC1E,4DAAK;QACP,4DAAM;QACR,4DAAM;QACN,4EACE;QAAA,sEACE;QAAA,mIACF;QAAA,4DAAI;QACJ,2EACE;QAAA,2EACE;QAAA,0EACE;QAAA,8DAME;QANF,4EAME;QAAA,wEAMF;QAAA,4DAAM;QACR,4DAAI;QACN,4DAAK;QACL,+DACE;QADF,2EACE;QAAA,0EACE;QAAA,8DAME;QANF,4EAME;QAAA,wEAMF;QAAA,4DAAM;QACR,4DAAI;QACN,4DAAK;QACL,+DACE;QADF,2EACE;QAAA,0EACE;QAAA,8DAME;QANF,4EAME;QAAA,wEAMF;QAAA,4DAAM;QACR,4DAAI;QACN,4DAAK;QACL,+DACE;QADF,2EACE;QAAA,0EACE;QAAA,8DAME;QANF,4EAME;QAAA,wEAMF;QAAA,4DAAM;QACR,4DAAI;QACN,4DAAK;QACL,+DACE;QADF,2EACE;QAAA,0EACE;QAAA,8DAME;QANF,4EAME;QAAA,wEAMF;QAAA,4DAAM;QACR,4DAAI;QACN,4DAAK;QACP,4DAAK;QACP,4DAAM;QACR,4DAAM;QAER,4DAAM;QAEN,+DACE;QADF,4EACE;QAAA,2EACE;QAAA,0EACE;QAAA,qaAMF;QAAA,4DAAI;QACN,4DAAM;QACR,4DAAM;QAER,4DAAU;;QA3Qc,+GAAmD;;6FDQ9D,eAAe;cAL3B,uDAAS;eAAC;gBACT,QAAQ,EAAE,YAAY;gBACtB,WAAW,EAAE,yBAAyB;gBACtC,SAAS,EAAE,CAAC,yBAAyB,CAAC;aACvC;;;;;;;;;;;;;;AEPD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAMuB;AACoB;AAIkC;AAM6B;AAEH;AAC4C;AAC3D;AACkD;AACnC;;;;;;;;;;;;;;;;;ICarF,qEAEM;;;;IAIX,wEACA;IAAA,6EAEG;IAFgB,wTAA2B;IAE3C,+EAAuC;IAAA,gEAAI;IAAA,4DAAW;IAE1D,4DAAS;IACZ,4DAAI;;;;IACJ,wEACC;IAAA,6EAEG;IAFgB,uTAA6B,qBAAqB,KAAE;IAEpE,+EAAuC;IAAA,gEAAI;IAAA,4DAAW;IAE1D,4DAAS;IACZ,4DAAI;;;;IAEE,wEACH;IAAA,0EACG;IADE,8SAAoB,uBAAuB,KAAE;IAAlD,4DACG;IAAA,0EACA;IADK,8SAAoB,uBAAuB,KAAE;IAAlD,4DACA;IAAA,4DAAI;;;IAOF,qEACC;;;IAD8B,2IAAa;;;IAC3C,qEACA;;;IAD+B,2IAAa;;;IAC5C,0EACC;IAAA,gFAAwB;IAAA,uDAAmB;IAAA,4DAAY;IACzD,4DAAM;;;IADoB,0DAAmB;IAAnB,wFAAmB;;;IAiB3C,qEACA;;;IAD8B,2IAAa;;;IAC3C,0EACE;IAAA,gFAAwB;IAAA,uDAAmB;IAAA,4DAAY;IACzD,4DAAM;;;IADoB,0DAAmB;IAAnB,wFAAmB;;;;IA3BjD,wEAEF;IAAA,6EAEE;IAAA,oEACE;IAAA,4HACC;IAAA,4HACA;IAAA,4HACC;IAEF,4DAAI;IACR,4DAAS;IACT,mFACE;IAAA,qEAA4B;IAS5B,8EACE;IAAA,2EACE;IACA,8HACA;IAAA,8HACE;IAEJ,4DAAM;IACN,2EAA0B;IAAA,wDAAc;IAAA,4DAAM;IAC9C,2EAA0B;IAAA,wDAAS;IAAA,4DAAM;IAC3C,4DAAS;IACT,8EAA2C;IAC3C,8EACE;IADoB,gUAAuB,wBAAwB,KAAE;IACrE,gFACE;IAAA,oEACF;IAAA,4DAAW;IACX,wEAAM;IAAA,0EAAc;IAAA,4DAAO;IAC7B,4DAAS;IAQT,8EACE;IADsB,+TAAsB,2BAA2B,KAAE;IACzE,gFACE;IAAA,yEACF;IAAA,4DAAW;IACX,wEAAM;IAAA,qEAAS;IAAA,4DAAO;IACxB,4DAAS;IAET,8EACE;IADsB,0UAA8B;IACpD,4EAAW;IAAA,kEAAK;IAAA,4DAAW;IAC3B,wEAAM;IAAA,6EAAiB;IAAA,4DAAO;IAChC,4DAAS;IAET,8EACE;IADoB,gUAAuB,oBAAoB,KAAE;IACjE,gFAAkC;IAAA,oEAAQ;IAAA,4DAAW;IACrD,wEAAM;IAAA,oEAAQ;IAAA,4DAAO;IACvB,4DAAS;IAET,8EACE;IADoB,qUAAyB;IAC7C,gFACE;IAAA,0EACF;IAAA,4DAAW;IACX,wEAAM;IAAA,yEAAa;IAAA,4DAAO;IAC5B,4DAAS;IAMT,8EACE;IADoB,8TAAkB;IACtC,4EACE;IAAA,8DACE;IADF,2EACE;IAAA,uEACA;IAAA,uEACA;IAAA,4DAAM;IAGR,4DAAW;IACb,+DAAM;IAAN,wEAAM;IAAA,kEAAM;IAAA,4DAAO;IACrB,4DAAS;IACX,4DAAW;IACX,qEAAe;;;;IArFiE,0DAA0B;IAA1B,mFAA0B;IAGvC,0DAAa;IAAb,8EAAa;IACT,0DAAa;IAAb,8EAAa;IAC1B,0DAAc;IAAd,+EAAc;IAkBf,0DAAa;IAAb,8EAAa;IACX,0DAAc;IAAd,+EAAc;IAI3C,0DAAc;IAAd,2FAAc;IACd,0DAAS;IAAT,6EAAS;IAGoC,0DAAsC;IAAtC,sGAAsC;IAalC,0DAAsC;IAAtC,sGAAsC;IAO3D,0DAAsC;IAAtC,sGAAsC;;;IAmGzG,0EACG;IAAA,0EAA6B;IACjC,4DAAM;;;IAFsB,6FAAkC;;ADzLvD,MAAM,eAAe;IAC1B,YAC4B,QAAkB,EACrC,IAA2B,EAC3B,MAAiB,EAChB,SAAuB,EACvB,cAA8B,EAC9B,WAAyB,EACzB,KAAqB;QANH,aAAQ,GAAR,QAAQ,CAAU;QACrC,SAAI,GAAJ,IAAI,CAAuB;QAC3B,WAAM,GAAN,MAAM,CAAW;QAChB,cAAS,GAAT,SAAS,CAAc;QACvB,mBAAc,GAAd,cAAc,CAAgB;QAC9B,gBAAW,GAAX,WAAW,CAAc;QACzB,UAAK,GAAL,KAAK,CAAgB;QAK/B,cAAS,GAAG,QAAQ,CAAC;QAErB,oBAAe,GAAoB,OAAO,CAAC;QAC3C,UAAK,GAAQ,EAAE,CAAC;QAGhB,oBAAe,GAAG,EAAE,CAAC;QAGrB,cAAS,GAAG,MAAM,CAAC;QACnB,UAAK,GAAG,gBAAgB,CAAC;QACzB,oBAAe,GAAG,CAAC,CAAC;QACpB,6BAAwB,GAAG,CAAC,CAAC;QAC7B,eAAU,GAAG,KAAK,CAAC;QACnB,kBAAa,GAAG,IAAI,CAAC;IAlBlB,CAAC;IAqBJ,cAAc;QACZ,IACE,QAAQ,CAAC,IAAI,CAAC,SAAS,GAAG,EAAE;YAC5B,QAAQ,CAAC,eAAe,CAAC,SAAS,GAAG,EAAE,EACvC;YACA,QAAQ,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;SACnE;aAAM;YACL,QAAQ,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;SACtE;IACH,CAAC;IACD,QAAQ;QACN,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACxB,IAAI,CAAC,eAAe,EAAE,CAAC;QACvB,IAAI,CAAC,eAAe,EAAE,CAAC;QACvB,IAAI,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;YACxB,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;SACxB;IACH,CAAC;IACD,aAAa;QACX,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,oHAAsB,EAAE;YACzD,KAAK,EAAE,OAAO;YACd,QAAQ,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE;YACrC,IAAI,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE;SAC3B,CAAC,CAAC;QACH,SAAS,CAAC,WAAW,EAAE,CAAC,SAAS,CAAC,CAAC,MAAM,EAAE,EAAE;YAC3C,IAAI,MAAM,EAAE;gBACV,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,0BAA0B,CAAC,CAAC;aACvD;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IACD,2BAA2B;QACzB,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,gKAAgC,EAAE;YACnE,KAAK,EAAE,OAAO;YACd,QAAQ,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE;YACrC,IAAI,EAAE;gBACJ,eAAe,EAAE,IAAI,CAAC,eAAe;aACtC;SACF,CAAC,CAAC;QACH,SAAS,CAAC,WAAW,EAAE,CAAC,SAAS,CAAC,CAAC,MAAM,EAAE,EAAE;YAC3C,IAAI,MAAM,EAAE;gBACV,mEAAmE;aACpE;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IACD,kBAAkB;QAChB,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,oHAAsB,EAAE;YACzD,QAAQ,EAAE,OAAO;YACjB,KAAK,EAAE,MAAM;YAEb,QAAQ,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE;YACrC,IAAI,EAAE,EAAE,IAAI,EAAE,eAAe,EAAE;SAChC,CAAC,CAAC;QACH,SAAS,CAAC,WAAW,EAAE,CAAC,SAAS,CAAC,CAAC,MAAM,EAAE,EAAE;YAC3C,IAAI,MAAM,EAAE;gBACV,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,qCAAqC,CAAC,CAAC;aAClE;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IACD,gBAAgB;QACd,IAAI,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;YACxB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,yBAAyB,EAAE,CAAC;YAEtD,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YAC3D,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC;YAC3D,IAAI,CAAC,eAAe;gBAClB,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;oBAC1D,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;SAC7D;IACH,CAAC;IACD,eAAe;QACb,IAAI,CAAC,uBAAuB,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC,KAAK,EAAE,EAAE;YACvE,IAAI,KAAK,EAAE;gBACT,IAAI,CAAC,WAAW,EAAE,CAAC;aACpB;QACH,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,4BAA4B,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,SAAS,CAClE,CAAC,KAAK,EAAE,EAAE;YACR,IAAI,KAAK,EAAE;gBACT,IAAI,CAAC,eAAe,EAAE,CAAC;aACxB;iBAAM;gBACL,IAAI,CAAC,eAAe,GAAG,EAAE,CAAC;aAC3B;QACH,CAAC,CACF,CAAC;QAEF,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,KAAK,EAAE,EAAE;YACrE,IAAI,KAAK,EAAE;gBACT,IAAI,CAAC,gBAAgB,EAAE,CAAC;aACzB;QACH,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,0BAA0B,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,SAAS,CAChE,CAAC,KAAK,EAAE,EAAE;YACR,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAAC;QACrC,CAAC,CACF,CAAC;IACJ,CAAC;IAED,WAAW;QACT,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;QAC3C,IAAI,IAAI,CAAC,SAAS,EAAE;YAClB,MAAM,SAAS,GAAG,yBAAyB,GAAG,IAAI,CAAC,SAAS,CAAC;YAC7D,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,sBAAsB,CAAC,SAAS,CAAC,CAAC;SAC/D;aAAM;YACL,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;SACjB;IACH,CAAC;IACD,sBAAsB,CAAC,KAAa;QAClC,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;QACxB,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACzB,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAC5B,IAAI,CAAC,eAAe,EAAE,CAAC;QACvB,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,IAAI,CAAC,mBAAmB,EAAE,CAAC;IAC7B,CAAC;IACD,WAAW;QACT,IAAI,CAAC,uBAAuB,CAAC,WAAW,EAAE,CAAC;QAC3C,IAAI,CAAC,4BAA4B,CAAC,WAAW,EAAE,CAAC;QAChD,IAAI,CAAC,sBAAsB,CAAC,WAAW,EAAE,CAAC;QAC1C,IAAI,CAAC,0BAA0B,CAAC,WAAW,EAAE,CAAC;IAChD,CAAC;IACD,MAAM;QACJ,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;QACnB,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;IAClB,CAAC;IACD,WAAW;QACT,IAAI,CAAC,UAAU,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC;IACrC,CAAC;IAED,kBAAkB;QAChB,IAAI,CAAC,aAAa,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC;IAC3C,CAAC;IAED,eAAe;QACb,IAAI,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;YACxB,sCAAsC;YACtC,sBAAsB;YACtB,6BAA6B;YAC7B,yCAAyC;YACzC,uCAAuC;YACvC,uCAAuC;YACvC,WAAW;YACX,SAAS;YACT,mBAAmB;YACnB,yBAAyB;YACzB,0CAA0C;YAC1C,qCAAqC;YACrC,sCAAsC;YACtC,gCAAgC;YAChC,kDAAkD;YAClD,gFAAgF;YAChF,sCAAsC;YACtC,yDAAyD;YACzD,2CAA2C;YAC3C,mDAAmD;YACnD,+CAA+C;YAC/C,iDAAiD;YACjD,iDAAiD;YACjD,gEAAgE;YAChE,gCAAgC;YAChC,oEAAoE;YACpE,kBAAkB;YAClB,wDAAwD;YACxD,iBAAiB;YACjB,aAAa;YACb,YAAY;YACZ,oBAAoB;YACpB,mDAAmD;YACnD,sCAAsC;YACtC,yDAAyD;YACzD,uDAAuD;YACvD,qDAAqD;YACrD,8CAA8C;YAC9C,gDAAgD;YAChD,aAAa;YACb,WAAW;YACX,UAAU;SACX;aAAM;YACL,6DAA6D;SAC9D;IACH,CAAC;IACD,aAAa;IACb,UAAU,CAAC,QAAgB;QACzB,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,0FAAc,EAAE;YACjD,KAAK,EAAE,OAAO;YACd,IAAI,EAAE;gBACJ,QAAQ;aACT;SACF,CAAC,CAAC;QACH,SAAS,CAAC,WAAW,EAAE,CAAC,SAAS,CAAC,CAAC,MAAM,EAAE,EAAE;YAC3C,IAAI,MAAM,EAAE;gBACV,IAAI,MAAM,KAAK,gBAAgB,EAAE;oBAC/B,IAAI,CAAC,gBAAgB,EAAE,CAAC;iBACzB;qBAAM,IAAI,MAAM,KAAK,UAAU,EAAE;oBAChC,IAAI,CAAC,QAAQ,EAAE,CAAC;iBACjB;qBAAM,IAAI,MAAM,KAAK,YAAY,EAAE;iBACnC;aACF;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IACD,QAAQ;QACN,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,qGAAiB,EAAE;YACpD,KAAK,EAAE,OAAO;YACd,IAAI,EAAE,EAAE;SACT,CAAC,CAAC;QACH,SAAS,CAAC,WAAW,EAAE,CAAC,SAAS,CAAC,CAAC,MAAM,EAAE,EAAE;YAC3C,IAAI,MAAM,EAAE;gBACV,IAAI,MAAM,KAAK,aAAa,EAAE;oBAC5B,IAAI,CAAC,UAAU,CAAC,uBAAuB,CAAC,CAAC;iBAC1C;qBAAM,IAAI,MAAM,KAAK,gBAAgB,EAAE;oBACtC,IAAI,CAAC,gBAAgB,EAAE,CAAC;iBACzB;qBAAM,IAAI,MAAM,KAAK,YAAY,EAAE;iBACnC;aACF;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IACD,gBAAgB;QACd,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,uHAAuB,EAAE;YAC1D,KAAK,EAAE,OAAO;SACf,CAAC,CAAC;QACH,SAAS,CAAC,WAAW,EAAE,CAAC,SAAS,CAAC,CAAC,MAAM,EAAE,EAAE;YAC3C,IAAI,MAAM,EAAE;gBACV,IAAI,MAAM,KAAK,aAAa,EAAE;oBAC5B,IAAI,CAAC,UAAU,CAAC,uBAAuB,CAAC,CAAC;iBAC1C;aACF;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IACD,cAAc;QACZ,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,cAAc,CAAC,CAAC;IAC5C,CAAC;IACD,eAAe;QACb,IAAI,CAAC,cAAc,EAAE,CAAC;QACtB,wCAAwC;QACxC,uDAAuD;QACvD,IAAI;QACJ,kCAAkC;IACpC,CAAC;IAED,WAAW;QACT,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC;QAEhD,IAAI,CAAC,CAAC,WAAW,KAAI,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,MAAM,EAAC,EAAE;YACzC,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAAC,CAAC,SAAS,CACrE,CAAC,QAAQ,EAAE,EAAE;gBACX,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;YAChD,CAAC,EACD,CAAC,KAAK,EAAE,EAAE;gBACR,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,wBAAwB,CAAC,CAAC;YACtD,CAAC,CACF,CAAC;SACH;IACH,CAAC;IAED,oBAAoB;QAClB,MAAM,iBAAiB,GAAG,IAAI,CAAC,IAAI,CAAC,kCAAkC,EAAE,CAAC;QAEzE,IAAI,CAAC,CAAC,iBAAiB,IAAI,iBAAiB,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE;YACxD,IAAI,CAAC,WAAW;iBACb,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAAC;iBACpD,SAAS,CACR,CAAC,QAAQ,EAAE,EAAE;gBACX,IAAI,CAAC,IAAI,CAAC,gCAAgC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YAC5D,CAAC,EACD,CAAC,GAAG,EAAE,EAAE;gBACN,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACnB,CAAC,CACF,CAAC;SACL;IACH,CAAC;IAED,eAAe;QACb,MAAM,kBAAkB,GAAG,IAAI,CAAC,IAAI,CAAC,gCAAgC,EAAE,CAAC;QAExE,IAAI,CAAC,CAAC,kBAAkB,IAAI,kBAAkB,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE;YAC1D,IAAI,CAAC,WAAW;iBACb,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAAC;iBAC/C,SAAS,CACR,CAAC,QAAQ,EAAE,EAAE;gBACX,IAAI,CAAC,IAAI,CAAC,8BAA8B,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YAC1D,CAAC,EACD,CAAC,GAAG,EAAE,EAAE;gBACN,OAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE,GAAG,CAAC,CAAC;YACtC,CAAC,CACF,CAAC;SACL;IACH,CAAC;IAED,mBAAmB;QACjB,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,8BAA8B,EAAE,CAAC;QAEjE,IACE,CAAC,CACC,aAAa;YACb,aAAa,CAAC,eAAe;YAC7B,aAAa,CAAC,eAAe,CAAC,MAAM,GAAG,CAAC,CACzC,EACD;YACA,IAAI,CAAC,WAAW;iBACb,WAAW,CACV,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,EAC9B,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAC7B;iBACA,SAAS,CACR,CAAC,QAAQ,EAAE,EAAE;gBACX,IAAI,CAAC,IAAI,CAAC,4BAA4B,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YACxD,CAAC,EACD,CAAC,GAAG,EAAE,EAAE;gBACN,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACnB,CAAC,CACF,CAAC;SACL;IACH,CAAC;IAED,aAAa;QACX,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,2BAA2B,EAAE,CAAC;QAE3D,IAAI,CAAC,CAAC,UAAU,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE;YAC1C,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAAC,CAAC,SAAS,CACnE,CAAC,QAAQ,EAAE,EAAE;gBACX,IAAI,QAAQ,CAAC,IAAI,EAAE;oBACjB,IAAI,CAAC,IAAI,CAAC,yBAAyB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;iBACpD;YACH,CAAC,EACD,CAAC,GAAG,EAAE,EAAE;gBACN,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACnB,CAAC,CACF,CAAC;SACH;IACH,CAAC;IAED,iBAAiB;QACf,MAAM,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC;QACvD,IAAI,CAAC,cAAc,CAAC,YAAY,EAAE,CAAC;QACnC,IAAI,CAAC,WAAW;aACb,wBAAwB,CACvB,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,EAC9B,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAC7B;aACA,SAAS,CACR,CAAC,aAAa,EAAE,EAAE;;YAChB,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;YAClC,IAAI,CAAC,IAAI,CAAC,uBAAuB,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;YACtD,IAAI,SAAS,GAAG,KAAK,CAAC;YACtB,IAAI,UAAU,GAAG,KAAK,CAAC;YACvB,IAAI,eAAe,GAAG,KAAK,CAAC;YAC5B,IAAI,WAAW,GAAG,KAAK,CAAC;YACxB,IAAI,YAAY,GAAG,KAAK,CAAC;YACzB,IAAI,WAAW,GAAG,KAAK,CAAC;YACxB,IAAI,YAAY,GAAG,IAAI,CAAC;YACxB,IAAI,cAAc,GAAG,KAAK,CAAC;YAC3B,IAAI,SAAS,GAAG,KAAK,CAAC;YACtB,mBAAa,CAAC,IAAI,0CAAE,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;gBACtC,IAAI,OAAO,CAAC,WAAW,KAAK,CAAC,EAAE;oBAC7B,mBAAmB;oBACnB,SAAS,GAAG,IAAI,CAAC;oBACjB,IAAI,CAAC,IAAI,CAAC,2BAA2B,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;oBAC7D,IACE,cAAc;wBACd,cAAc,CAAC,KAAK;wBACpB,cAAc,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,EACtC;wBACA,IAAI,cAAc,CAAC,KAAK,KAAK,OAAO,CAAC,aAAa,EAAE;4BAClD,YAAY,GAAG,KAAK,CAAC;4BACrB,IAAI,CAAC,aAAa,CAAC,yCAAyC,CAAC,CAAC;yBAC/D;qBACF;oBACD,IAAI,IAAI,CAAC,UAAU,KAAK,UAAU,EAAE;wBAClC,MAAM,YAAY,GAAG,OAAO,CAAC,oBAAoB,CAAC;wBAClD,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,CAAC;wBAC7D,YAAY,GAAG,KAAK,CAAC;wBACrB,IAAI,CAAC,aAAa,CAChB,OAAO,CAAC,aAAa,EACrB,OAAO,CAAC,WAAW,EACnB,OAAO,CAAC,IAAI,EACZ,UAAU,CACX,CAAC;qBACH;iBACF;gBACD,IAAI,OAAO,CAAC,WAAW,KAAK,CAAC,EAAE;oBAC7B,6BAA6B;oBAC7B,UAAU,GAAG,IAAI,CAAC;oBAClB,IAAI,CAAC,IAAI,CAAC,4BAA4B,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;oBAC9D,IACE,cAAc;wBACd,cAAc,CAAC,KAAK;wBACpB,cAAc,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,EACtC;wBACA,IAAI,cAAc,CAAC,KAAK,KAAK,OAAO,CAAC,aAAa,EAAE;4BAClD,YAAY,GAAG,KAAK,CAAC;4BACrB,IAAI,CAAC,aAAa,CAChB,mDAAmD,CACpD,CAAC;yBACH;qBACF;oBACD,IAAI,IAAI,CAAC,UAAU,KAAK,iBAAiB,EAAE;wBACzC,MAAM,YAAY,GAAG,OAAO,CAAC,oBAAoB,CAAC;wBAClD,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,YAAY,CAAC,CAAC;wBAC9D,YAAY,GAAG,KAAK,CAAC;wBACrB,2DAA2D;wBAC3D,kDAAkD;wBAClD,0BAA0B;wBAC1B,4DAA4D;wBAC5D,SAAS;wBACT,2DAA2D;wBAC3D,6CAA6C;wBAC7C,aAAa;wBACb,mBAAmB;wBACnB,MAAM;wBACN,WAAW;wBACX,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;wBAC/B,IAAI;qBACL;iBACF;gBAED,IAAI,OAAO,CAAC,WAAW,KAAK,CAAC,EAAE;oBAC7B,iCAAiC;oBACjC,eAAe,GAAG,IAAI,CAAC;oBACvB,IAAI,CAAC,IAAI,CAAC,iCAAiC,CACzC,OAAO,CAAC,aAAa,CACtB,CAAC;oBACF,0DAA0D;oBAC1D,sEAAsE;oBACtE,IACE,cAAc;wBACd,cAAc,CAAC,KAAK;wBACpB,cAAc,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,EACtC;wBACA,IAAI,cAAc,CAAC,KAAK,KAAK,OAAO,CAAC,aAAa,EAAE;4BAClD,YAAY,GAAG,KAAK,CAAC;4BACrB,IAAI,CAAC,aAAa,CAChB,oDAAoD,CACrD,CAAC;yBACH;qBACF;oBACD,IAAI,IAAI,CAAC,UAAU,KAAK,kBAAkB,EAAE;wBAC1C,YAAY,GAAG,KAAK,CAAC;wBACrB,2DAA2D;wBAC3D,kDAAkD;wBAClD,0BAA0B;wBAC1B,6DAA6D;wBAC7D,SAAS;wBACT,2DAA2D;wBAC3D,6CAA6C;wBAC7C,aAAa;wBACb,mBAAmB;wBACnB,MAAM;wBACN,WAAW;wBACX,IAAI,CAAC,aAAa,CAAC,kBAAkB,CAAC,CAAC;wBACvC,KAAK;qBACN;iBACF;gBACD,IAAI,OAAO,CAAC,WAAW,KAAK,CAAC,EAAE;oBAC7B,sBAAsB;oBACtB,YAAY,GAAG,IAAI,CAAC;oBACpB,IAAI,CAAC,IAAI,CAAC,uCAAuC,CAC/C,OAAO,CAAC,aAAa,CACtB,CAAC;oBACF,yDAAyD;oBACzD,sEAAsE;oBACtE,IACE,cAAc;wBACd,cAAc,CAAC,KAAK;wBACpB,cAAc,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,EACtC;wBACA,IAAI,cAAc,CAAC,KAAK,KAAK,OAAO,CAAC,aAAa,EAAE;4BAClD,YAAY,GAAG,KAAK,CAAC;4BACrB,IAAI,CAAC,aAAa,CAChB,sDAAsD,CACvD,CAAC;yBACH;qBACF;oBACD,IAAI,IAAI,CAAC,UAAU,KAAK,oBAAoB,EAAE;wBAC5C,wCAAwC;wBACxC,YAAY,GAAG,KAAK,CAAC;wBACrB,2DAA2D;wBAC3D,kDAAkD;wBAClD,0BAA0B;wBAC1B,+DAA+D;wBAC/D,SAAS;wBACT,2DAA2D;wBAC3D,6CAA6C;wBAC7C,aAAa;wBACb,mBAAmB;wBACnB,MAAM;wBACN,WAAW;wBACX,IAAI,CAAC,aAAa,CAAC,oBAAoB,CAAC,CAAC;wBACzC,KAAK;qBACN;iBACF;gBACD,IAAI,OAAO,CAAC,WAAW,KAAK,CAAC,EAAE;oBAC7B,qBAAqB;oBACrB,WAAW,GAAG,IAAI,CAAC;oBACnB,IAAI,CAAC,IAAI,CAAC,sCAAsC,CAC9C,OAAO,CAAC,aAAa,CACtB,CAAC;oBACF,yDAAyD;oBACzD,qEAAqE;oBACrE,IACE,cAAc;wBACd,cAAc,CAAC,KAAK;wBACpB,cAAc,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,EACtC;wBACA,IAAI,cAAc,CAAC,KAAK,KAAK,OAAO,CAAC,aAAa,EAAE;4BAClD,YAAY,GAAG,KAAK,CAAC;4BACrB,IAAI,CAAC,aAAa,CAChB,qDAAqD,CACtD,CAAC;yBACH;qBACF;oBACD,IAAI,IAAI,CAAC,UAAU,KAAK,mBAAmB,EAAE;wBAC3C,sCAAsC;wBACtC,YAAY,GAAG,KAAK,CAAC;wBACrB,2DAA2D;wBAC3D,kDAAkD;wBAClD,0BAA0B;wBAC1B,8DAA8D;wBAC9D,SAAS;wBACT,2DAA2D;wBAC3D,6CAA6C;wBAC7C,aAAa;wBACb,mBAAmB;wBACnB,MAAM;wBACN,WAAW;wBACX,IAAI,CAAC,aAAa,CAAC,mBAAmB,CAAC,CAAC;wBACxC,KAAK;qBACN;iBACF;gBACD,IAAI,OAAO,CAAC,WAAW,KAAK,CAAC,EAAE;oBAC7B,qBAAqB;oBACrB,WAAW,GAAG,IAAI,CAAC;oBACnB,IAAI,CAAC,IAAI,CAAC,qCAAqC,CAC7C,OAAO,CAAC,aAAa,CACtB,CAAC;oBACF,yDAAyD;oBACzD,sEAAsE;oBACtE,IACE,cAAc;wBACd,cAAc,CAAC,KAAK;wBACpB,cAAc,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,EACtC;wBACA,IAAI,cAAc,CAAC,KAAK,KAAK,OAAO,CAAC,aAAa,EAAE;4BAClD,YAAY,GAAG,KAAK,CAAC;4BACrB,IAAI,CAAC,aAAa,CAChB,oDAAoD,CACrD,CAAC;yBACH;qBACF;oBACD,IAAI,IAAI,CAAC,UAAU,KAAK,kBAAkB,EAAE;wBAC1C,sCAAsC;wBACtC,YAAY,GAAG,KAAK,CAAC;wBACrB,2DAA2D;wBAC3D,kDAAkD;wBAClD,0BAA0B;wBAC1B,6DAA6D;wBAC7D,SAAS;wBACT,2DAA2D;wBAC3D,6CAA6C;wBAC7C,aAAa;wBACb,mBAAmB;wBACnB,MAAM;wBACN,WAAW;wBACX,IAAI,CAAC,aAAa,CAAC,kBAAkB,CAAC,CAAC;wBACvC,IAAI;qBACL;iBACF;gBACD,IAAI,OAAO,CAAC,WAAW,KAAK,CAAC,EAAE;oBAC7B,iCAAiC;oBACjC,cAAc,GAAG,IAAI,CAAC;oBACtB,IAAI,CAAC,IAAI,CAAC,wCAAwC,CAChD,OAAO,CAAC,aAAa,CACtB,CAAC;oBACF,yDAAyD;oBACzD,sEAAsE;oBACtE,IACE,cAAc;wBACd,cAAc,CAAC,KAAK;wBACpB,cAAc,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,EACtC;wBACA,IAAI,cAAc,CAAC,KAAK,KAAK,OAAO,CAAC,aAAa,EAAE;4BAClD,YAAY,GAAG,KAAK,CAAC;4BACrB,IAAI,CAAC,aAAa,CAChB,uDAAuD,CACxD,CAAC;yBACH;qBACF;oBACD,IAAI,IAAI,CAAC,UAAU,KAAK,qBAAqB,EAAE;wBAC7C,sCAAsC;wBACtC,YAAY,GAAG,KAAK,CAAC;wBACrB,2DAA2D;wBAC3D,kDAAkD;wBAClD,0BAA0B;wBAC1B,gEAAgE;wBAChE,SAAS;wBACT,2DAA2D;wBAC3D,6CAA6C;wBAC7C,aAAa;wBACb,mBAAmB;wBACnB,MAAM;wBACN,WAAW;wBACX,IAAI,CAAC,aAAa,CAAC,qBAAqB,CAAC,CAAC;wBAC1C,IAAI;qBACL;iBACF;gBACD,IAAI,OAAO,CAAC,WAAW,KAAK,CAAC,EAAE;oBAC7B,0CAA0C;oBAC1C,SAAS,GAAG,IAAI,CAAC;oBACjB,IAAI,CAAC,IAAI,CAAC,oCAAoC,CAC5C,OAAO,CAAC,aAAa,CACtB,CAAC;oBACF,yDAAyD;oBACzD,sEAAsE;oBACtE,IACE,cAAc;wBACd,cAAc,CAAC,KAAK;wBACpB,cAAc,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,EACtC;wBACA,IAAI,cAAc,CAAC,KAAK,KAAK,OAAO,CAAC,aAAa,EAAE;4BAClD,YAAY,GAAG,KAAK,CAAC;4BACrB,IAAI,CAAC,aAAa,CAChB,kDAAkD,CACnD,CAAC;yBACH;qBACF;oBACD,IAAI,IAAI,CAAC,UAAU,KAAK,iBAAiB,EAAE;wBACzC,sCAAsC;wBACtC,YAAY,GAAG,KAAK,CAAC;wBACrB,2DAA2D;wBAC3D,kDAAkD;wBAClD,0BAA0B;wBAC1B,4DAA4D;wBAC5D,SAAS;wBACT,2DAA2D;wBAC3D,6CAA6C;wBAC7C,aAAa;wBACb,mBAAmB;wBACnB,MAAM;wBACN,WAAW;wBACX,IAAI,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC;wBACtC,KAAK;qBACN;iBACF;YACH,CAAC,EAAE;YACH,IAAI,CAAC,SAAS,EAAE;gBACd,IAAI,CAAC,IAAI,CAAC,2BAA2B,CAAC,EAAE,CAAC,CAAC;gBAC1C,IAAI,IAAI,CAAC,UAAU,KAAK,UAAU,EAAE;oBAClC,YAAY,GAAG,KAAK,CAAC;oBAErB,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;oBAC/B,IAAI;iBACL;aACF;YACD,IAAI,CAAC,UAAU,EAAE;gBACf,IAAI,CAAC,IAAI,CAAC,4BAA4B,CAAC,EAAE,CAAC,CAAC;gBAC3C,IAAI,IAAI,CAAC,UAAU,KAAK,iBAAiB,EAAE;oBACzC,YAAY,GAAG,KAAK,CAAC;oBAErB,IAAI,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC;oBACtC,IAAI;iBACL;aACF;YACD,IAAI,CAAC,eAAe,EAAE;gBACpB,IAAI,CAAC,IAAI,CAAC,iCAAiC,CAAC,EAAE,CAAC,CAAC;gBAChD,IAAI,IAAI,CAAC,UAAU,KAAK,kBAAkB,EAAE;oBAC1C,YAAY,GAAG,KAAK,CAAC;oBAErB,IAAI,CAAC,aAAa,CAAC,kBAAkB,CAAC,CAAC;oBACvC,KAAK;iBACN;aACF;YACD,IAAI,CAAC,WAAW,EAAE;gBAChB,IAAI,CAAC,IAAI,CAAC,sCAAsC,CAAC,EAAE,CAAC,CAAC;gBACrD,IAAI,IAAI,CAAC,UAAU,KAAK,mBAAmB,EAAE;oBAC3C,YAAY,GAAG,KAAK,CAAC;oBAErB,IAAI,CAAC,aAAa,CAAC,mBAAmB,CAAC,CAAC;oBACxC,KAAK;iBACN;aACF;YACD,IAAI,CAAC,YAAY,EAAE;gBACjB,IAAI,CAAC,IAAI,CAAC,uCAAuC,CAAC,EAAE,CAAC,CAAC;gBACtD,IAAI,IAAI,CAAC,UAAU,KAAK,oBAAoB,EAAE;oBAC5C,YAAY,GAAG,KAAK,CAAC;oBAErB,IAAI,CAAC,aAAa,CAAC,oBAAoB,CAAC,CAAC;oBACzC,KAAK;iBACN;aACF;YACD,IAAI,CAAC,WAAW,EAAE;gBAChB,IAAI,CAAC,IAAI,CAAC,qCAAqC,CAAC,EAAE,CAAC,CAAC;gBACpD,IAAI,IAAI,CAAC,UAAU,KAAK,kBAAkB,EAAE;oBAC1C,YAAY,GAAG,KAAK,CAAC;oBAErB,IAAI,CAAC,aAAa,CAAC,kBAAkB,CAAC,CAAC;oBACvC,KAAK;iBACN;aACF;YACD,IAAI,CAAC,cAAc,EAAE;gBACnB,IAAI,CAAC,IAAI,CAAC,wCAAwC,CAAC,EAAE,CAAC,CAAC;gBACvD,IAAI,IAAI,CAAC,UAAU,KAAK,qBAAqB,EAAE;oBAC7C,YAAY,GAAG,KAAK,CAAC;oBAErB,IAAI,CAAC,aAAa,CAAC,qBAAqB,CAAC,CAAC;oBAC1C,KAAK;iBACN;aACF;YACD,IAAI,CAAC,SAAS,EAAE;gBACd,IAAI,CAAC,IAAI,CAAC,oCAAoC,CAAC,EAAE,CAAC,CAAC;gBACnD,IAAI,IAAI,CAAC,UAAU,KAAK,iBAAiB,EAAE;oBACzC,YAAY,GAAG,KAAK,CAAC;oBAErB,IAAI,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC;oBACtC,KAAK;iBACN;aACF;YACD,IAAI,YAAY,EAAE;gBAChB,IACE,cAAc;oBACd,cAAc,CAAC,KAAK;oBACpB,cAAc,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,EACtC;oBACA,IAAI,CAAC,IAAI,CAAC,eAAe,CACvB,+CAA+C,CAChD,CAAC;iBACH;gBAED,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;gBACxB,IAAI;aACL;YACD,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;YAClC,2DAA2D;YAC3D,yCAAyC;YACzC,IAAI;QACN,CAAC,EACD,CAAC,KAAK,EAAE,EAAE;YACR,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YACnB,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;YAClC,IAAI,IAAI,CAAC,eAAe,IAAI,CAAC,EAAE;gBAC7B,IAAI,CAAC,eAAe,EAAE,CAAC;gBACvB,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,sCAAsC,CAAC,CAAC;gBAClE,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;aACxD;iBAAM;gBACL,IAAI,CAAC,IAAI,CAAC,eAAe,CACvB,yDAAyD,CAC1D,CAAC;gBACF,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;aACpB;QACH,CAAC,CACF,CAAC;IACN,CAAC;IACD,aAAa,CACX,KAAa,EACb,OAAe,EACf,IAAY,EACZ,UAAkB;QAElB,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,kHAA2B,EAAE;YAC9D,KAAK,EAAE,OAAO;YACd,IAAI,EAAE;gBACJ,IAAI;gBACJ,WAAW,EAAE,UAAU;aACxB;SACF,CAAC,CAAC;QACH,SAAS,CAAC,WAAW,EAAE,CAAC,SAAS,CAAC,CAAC,MAAM,EAAE,EAAE;YAC3C,IAAI,MAAM,EAAE;gBACV,IAAI,MAAM,KAAK,QAAQ,EAAE;oBACvB,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;iBAChC;qBAAM;oBACL,IAAI,CAAC,IAAI,CAAC,eAAe,CACvB,2BAA2B,IAAI,eAAe,EAC9C,IAAI,CACL,CAAC;oBACF,IAAI,CAAC,kBAAkB,CAAC,KAAK,EAAE,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;oBACrD,wCAAwC;iBACzC;aACF;iBAAM;gBACL,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;aAChC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IACD,kBAAkB,CAAC,KAAa,EAAE,OAAe,EAAE,UAAkB;QACnE,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,uJAAiC,EAAE;YACpE,KAAK,EAAE,OAAO;YACd,QAAQ,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE;YACrC,IAAI,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE;SAC5C,CAAC,CAAC;QACH,SAAS,CAAC,WAAW,EAAE,CAAC,SAAS,CAAC,CAAC,MAAM,EAAE,EAAE;YAC3C,IAAI,MAAM,EAAE;gBACV,IAAI,CAAC,IAAI,CAAC,2BAA2B,CAAC,EAAE,CAAC,CAAC;gBAC1C,wCAAwC;aACzC;iBAAM;gBACL,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;aAChC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAED,aAAa,CAAC,GAAG,GAAG,EAAE;QACpB,yBAAyB;QACzB,+BAA+B;QAC/B,uBAAuB;QACvB,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IACzB,CAAC;IAED,YAAY,CAAC,KAAa;QACxB,mCAAmC;QACnC,2CAA2C;QAC3C,IAAI;QACJ,IAAI,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,KAAK,KAAK,EAAE;YACvC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;SACjD;QACD,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IAC5B,CAAC;;8EA30BU,eAAe,kEAEhB,wDAAQ;+FAFP,eAAe;yIAAf,oBAAgB;;QC9B7B,6EACE;QAAA,yEACI;QAAA,yEACA;QAAA,yEACE;QAAA,yEACE;QAAA,yEACE;QAAA,yEAEE;QAAA,uEAEE;QAAA,8DACE;QADF,yEACE;QAAA,qEACA;QAAA,wEACA;QAAA,+EACA;QAAA,sEACA;QAAA,4DAAU;QACV,wEACA;QAAA,4DAAO;QACT,4DAAM;QACR,4DAAI;QACJ,+DACG;QADH,yEACG;QAAA,sEACD;QAAA,4DAAI;QACN,yEACG;QAAA,sEACD;QAAA,4DAAI;QACR,4DAAM;QACR,4DAAM;QACN,2EACE;QAAA,yEAAmD;QAAA,yEAAa;QAAA,4DAAI;QAGpE,yEACE;QAAA,8EAEI;QAFe,wIAAS,iCAA6B,IAAC;QAEtD,gFAAoC;QAAA,yEAAa;QAAA,4DAAW;QAC5D,8GAEA;QACJ,4DAAS;QAEV,4DAAI;QACJ,0GACA;QAMJ,0GACC;QAOE,0GACH;QAIG,kIAEF;QAsFA,4DAAM;QACR,4DAAM;QACR,4DAAM;QACR,4DAAM;QAER,4DAAM;QACR,4DAAU;QA2DT,8GACG;;QApL8C,2DAAgC;QAAhC,gGAAgC;QAMlE,0DAAyB;QAAzB,uFAAyB;QAO7B,0DAA0B;QAA1B,wFAA0B;QAQF,0DAA0B;QAA1B,wFAA0B;QAKpC,0DAAyB;QAAzB,uFAAyB;QAyJY,0DAA0B;QAA1B,uFAA0B;;6FDzL5E,eAAe;cAL3B,uDAAS;eAAC;gBACT,QAAQ,EAAE,YAAY;gBACtB,WAAW,EAAE,yBAAyB;gBACtC,SAAS,EAAE,CAAC,yBAAyB,CAAC;aACvC;sCAGuC,QAAQ;sBAA3C,oDAAM;uBAAC,wDAAQ;yjBA4BlB,cAAc;kBADb,0DAAY;mBAAC,eAAe,EAAE,EAAE;;;;;;;;;;;;;;AE3DnC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAwE;AACN;;;;;;;;;ICMlE,yEACI;IAAA,gFAAyC;IAC7C,4DAAM;;;IAFqB,+FAAoC;;;;ADExD,MAAM,eAAe;IAe1B,YACU,YAAyB,EAC1B,IAA0B;QADzB,iBAAY,GAAZ,YAAY,CAAa;QAC1B,SAAI,GAAJ,IAAI,CAAsB;QAhBnC,aAAQ,GAAG,SAAS,CAAC;QAErB,aAAQ,GAAG,KAAK,CAAC;QAKjB,eAAU,GAAG,KAAK,CAAC;QAKT,oBAAe,GAAG,IAAI,0DAAY,EAAE,CAAC;IAK1C,CAAC;IAEN,QAAQ;QACN,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC;YAC5C,SAAS,EAAE,CAAC,EAAE,EAAE,yDAAU,CAAC,QAAQ,CAAC;SACrC,CAAC,CAAC;QACH,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC;YAC7C,UAAU,EAAE,CAAC,EAAE,EAAE,yDAAU,CAAC,QAAQ,CAAC;SACtC,CAAC,CAAC;IACL,CAAC;IAED,WAAW;QACT,IAAI,CAAC,YAAY,CAAC,WAAW,EAAE,CAAC;IAClC,CAAC;;8EA/BU,eAAe;+FAAf,eAAe;;QCT5B,wEAAyB;QAEzB,yEACI;QAAA,6DAAmC;QACvC,4DAAM;QAEN,wEAAyB;QACzB,2GACI;;QAD4D,0DAA0B;QAA1B,uFAA0B;;6FDE7E,eAAe;cAL3B,uDAAS;eAAC;gBACT,QAAQ,EAAE,YAAY;gBACtB,WAAW,EAAE,yBAAyB;gBACtC,SAAS,EAAE,CAAC,yBAAyB,CAAC;aACvC;wNAcW,eAAe;kBAAxB,oDAAM;;;;;;;;;;;;;;AEtBT;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAA0D;AACe;;;;;;;;ICkBrD,gFAA8F;IAAA,kFAAuB;IAAA,oEAAG;IAAA,uDAA0B;IAAA,4DAAI;IAAC,wEAAY;IAAA,4DAAY;;;IAAvD,0DAA0B;IAA1B,8FAA0B;;;IAClJ,gFAA8F;IAAA,4FAAiC;IAAA,oEAAG;IAAA,uDAA4B;IAAA,4DAAI;IAAC,gMAAoI;IAAA,4DAAY;;;IAAjL,0DAA4B;IAA5B,yGAA4B;;ADZ3K,MAAM,2BAA2B;IAGtC,YACS,SAAoD,EAC3B,IAAS;QADlC,cAAS,GAAT,SAAS,CAA2C;QAC3B,SAAI,GAAJ,IAAI,CAAK;QAH3C,eAAU,GAAG,KAAK,CAAC;IAIhB,CAAC;IAEJ,QAAQ;QACN,IAAI,IAAI,CAAC,IAAI,EAAE;YACb,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;YAC7C,IAAI,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE;gBACzB,IAAI,IAAI,CAAC,IAAI,CAAC,WAAW,IAAI,gBAAgB,EAAE;oBAC7C,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;iBACxB;aACF;SACF;IACH,CAAC;IACD,UAAU,CAAC,MAAc;QACvB,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAC/B,CAAC;;sGApBU,2BAA2B,0MAK5B,wEAAe;2GALd,2BAA2B;QCRxC,yEACI;QAAA,yEACI;QAAA,mEAEK;QAAA,4EAAoC;QAAA,0EAA6B;QAAA,gEAAK;QAAA,4DAAO;QAAA,4DAAS;QAC/F,4DAAM;QACN,uEACI;QAAA,wFACI;QAAA,yEAEI;QAAA,yEACI;QAAA,0EACI;QAAA,8DACI;QADJ,0EACI;QAAA,uEACJ;QAAA,4DAAM;QAEV,4DAAM;QAEN,+DAA+C;QAA/C,iFAA+C;QAAA,2EAAe;QAAA,4DAAY;QAC1E,sIAA8F;QAC9F,sIAA8F;QAE9F,0FACI;QAAA,8EAAkF;QAAzE,oJAAS,eAAW,KAAK,CAAC,IAAC;QAA8C,sEAAS;QAAA,4DAAS;QACpG,8EACI;QADI,oJAAS,eAAW,QAAQ,CAAC,IAAC;QAClC,oEACF;QAAA,4DAAS;QACb,4DAAqB;QAE3B,4DAAM;QAIV,4DAAM;QAEV,4DAAqB;QAEzB,4DAAO;QACX,4DAAM;;QAnByB,2DAAyB;QAAzB,yFAAyB;QACxB,0DAAwB;QAAxB,wFAAwB;;6FDZ3C,2BAA2B;cALvC,uDAAS;eAAC;gBACT,QAAQ,EAAE,2BAA2B;gBACrC,WAAW,EAAE,wCAAwC;gBACrD,SAAS,EAAE,CAAC,wCAAwC,CAAC;aACtD;;sBAMI,oDAAM;uBAAC,wEAAe;;;;;;;;;;;;;;AEb3B;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAauB;AAKmH;;;;;;;;ICVhI,6EAAyF;IAA/B,wVAA8B;IAAC,+EAAoB;IAAA,4DAAS;;;IAFtH,wEACA;IACA,yIAAyF;IAC3F,qEAAe;;;IADL,0DAA4B;IAA5B,6FAA4B;;;;IAR9C,yEACI;IACE,yEACI;IAAA,wEACI;IAAA,uDACJ;IAAA,4DAAK;IACL,sIACA;IAIJ,4DAAM;IAQN,yEAEE;IAAA,4EAA0D;IAAA,gEAAK;IAAA,gEAAI;IAAA,wDAAkC;IAAA,4DAAM;IAE7G,4DAAM;IAEV,4DAAM;;;IAzBuD,2JAA4D;IAI7G,0DACJ;IADI,yFACJ;IACc,0DAAqB;IAArB,uFAAqB;IAaT,0DAAgE;IAAhE,+HAAgE;IAEzB,0DAAkC;IAAlC,wHAAkC;;;IAqBvG,0EACE;IAAA,oEAAsD;IAExD,4DAAM;;;IAnBV,0EACI;IAAA,yEACI;IAAA,wEACI;IAAA,uDACJ;IAAA,4DAAK;IACL,2EAAqB;IAAA,uDAAuC;IAAA,4DAAO;IAEvE,4DAAM;IASN,qHACE;IAIN,4DAAM;;;IAlBM,0DACJ;IADI,yFACJ;IACqB,0DAAuC;IAAvC,6HAAuC;IAWlC,0DAAyB;IAAzB,0FAAyB;;ADjBtD,MAAM,kBAAkB;IAM7B,YACS,IAA2B,EAC3B,MAAiB,EAChB,QAAmB;QAFpB,SAAI,GAAJ,IAAI,CAAuB;QAC3B,WAAM,GAAN,MAAM,CAAW;QAChB,aAAQ,GAAR,QAAQ,CAAW;QAN7B,mCAAmC;QACnC,SAAI,GAAwB,aAAa,CAAC;QAC1C,UAAK,GAAG,EAAE,CAAC;QAQY,iBAAY,GAAG,CAAC,CAAC;QACnB,eAAU,GAAG,EAAE,CAAC;QAOrC,2BAA2B;QAC3B,aAAQ,GAAG,KAAK,CAAC;IAZd,CAAC;IAaJ,oBAAoB;IAEpB,WAAW;QACT,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,WAAW,IAAI,EAAE,CAAC;IAC3C,CAAC;IAED,WAAW,CAAC,OAAsB;;QAChC,IAAI,CAAC,MAAM,SAAG,OAAO,CAAC,MAAM,0CAAE,YAAY,CAAC;QAE3C,IACE,cAAO,CAAC,YAAY,0CAAE,YAAY,YAAI,OAAO,CAAC,YAAY,0CAAE,YAAY,GACxE;YACA,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC,YAAY,CAAC;SACvD;QACD,IAAI,cAAO,CAAC,UAAU,0CAAE,YAAY,YAAI,OAAO,CAAC,UAAU,0CAAE,aAAa,GAAE;YACzE,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC,YAAY,CAAC;SACnD;QAGD,IAAI,CAAC,oBAAoB,EAAE,CAAC;IAC9B,CAAC;IACD,QAAQ;QACN,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,YAAY,CAAC;IAErC,CAAC;IACD,eAAe;QACb,IAAI,CAAC,oBAAoB,EAAE,CAAC;IAC9B,CAAC;IACD,kBAAkB;QAChB,IAAI,CAAC,eAAe,EAAE,CAAC;QACvB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QACzB,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC;QAEhC,IAAI,KAAK,IAAI,OAAO,EAAE;YACpB,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,uJAAiC,EAAE;gBACpE,KAAK,EAAE,OAAO;gBACd,QAAQ,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE;gBACrC,IAAI,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE;aAC5C,CAAC,CAAC;SACJ;aAAM;YACL,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,+BAA+B,CAAC,CAAC;SAC5D;IACH,CAAC;IACD,eAAe;QACb,oDAAoD;QACpD,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;QAC7C,IACE,UAAU,CAAC,QAAQ,CAAC,OAAO,CAAC;YAC5B,UAAU,CAAC,QAAQ,CAAC,gBAAgB,CAAC;YACrC,UAAU,CAAC,QAAQ,CAAC,yBAAyB,CAAC,EAC9C;YACA,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC;YACpB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;SAC3C;aAAM,IAAI,UAAU,CAAC,QAAQ,CAAC,iBAAiB,CAAC,EAAE;YACjD,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC;YACpB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;SAC3C;aAAM,IAAI,UAAU,CAAC,QAAQ,CAAC,kBAAkB,CAAC,EAAE;YAClD,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC;YACpB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;SAC3C;aAAM,IAAI,UAAU,CAAC,QAAQ,CAAC,oBAAoB,CAAC,EAAE;YACpD,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC;YACpB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;SAC3C;aAAM,IAAI,UAAU,CAAC,QAAQ,CAAC,kBAAkB,CAAC,EAAE;YAClD,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC;YACpB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;SAC3C;aAAM,IAAI,UAAU,CAAC,QAAQ,CAAC,qBAAqB,CAAC,EAAE;YACrD,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC;YACpB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;SAC3C;aAAM,IAAI,UAAU,CAAC,QAAQ,CAAC,mBAAmB,CAAC,EAAE;YACnD,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC;YACpB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;SAC3C;aAAM,IAAI,UAAU,CAAC,QAAQ,CAAC,iBAAiB,CAAC,EAAE;YACjD,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC;YACpB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;SAC3C;IACH,CAAC;IACD,oBAAoB;;QAClB,IAAI,WAAI,CAAC,SAAS,0CAAE,aAAa,KAAI,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,UAAU,EAAE;YACzE,IAAI,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC;YAC1B,IAAI,CAAC,GAAG,CAAC,EAAE;gBACT,CAAC,IAAI,CAAC,CAAC;aACR;YACD,MAAM,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC;YAC1B,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;YACnC,MAAM,iBAAiB,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC;YACnC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CACpB,IAAI,CAAC,SAAS,CAAC,aAAa,EAC5B,YAAY,EACZ,8HAA8H,iBAAiB,kBAAkB,CAClK,CAAC;SACH;IACH,CAAC;;oFAlHU,kBAAkB;kGAAlB,kBAAkB;;;;;;kJAAlB,uBAAmB;;QCzBhC,+GACI;QAyBF,8GACI;;QA3B+B,uFAAyB;QA0BxB,0DAA0B;QAA1B,wFAA0B;;6FDDnD,kBAAkB;cAL9B,uDAAS;eAAC;gBACT,QAAQ,EAAE,gBAAgB;gBAC1B,WAAW,EAAE,6BAA6B;gBAC1C,SAAS,EAAE,CAAC,6BAA6B,CAAC;aAC3C;mSAakB,MAAM;kBAAtB,mDAAK;mBAAC,QAAQ;YACQ,YAAY;kBAAlC,mDAAK;mBAAC,cAAc;YACA,UAAU;kBAA9B,mDAAK;mBAAC,YAAY;YAEwB,SAAS;kBAAnD,uDAAS;mBAAC,WAAW,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE;YASzC,WAAW;kBADV,0DAAY;mBAAC,eAAe,EAAE,CAAC,QAAQ,CAAC;;;;;;;;;;;;;;AEjD3C;AAAA;AAAA;AAAA;AAAA;AAAyD;;;;;ICWvD,wEACE;IAAA,8EACF;IAAA,qEAAe;;;;;;;;;IAEjB,wEACE;IAAA,yEACA;IAAA,yEACC;IAAA,yEACC;IAAA,oFACsB;IACvB,4DAAM;IACN,yEACC;IAAA,sEACC;IAAA,oFAK4B;IAC7B,4DAAM;IACN,sEACC;IAAA,oFACsB;IACvB,4DAAM;IACP,4DAAM;IACP,4DAAM;IACN,0EACC;IAAA,0EACC;IAAA,qFAK2B;IAC5B,4DAAM;IACN,0EACC;IAAA,qFAK2B;IAC5B,4DAAM;IACN,0EACC;IAAA,qFAK2B;IAC5B,4DAAM;IACP,4DAAM;IACP,4DAAM;IAEP,qEAAe;;IA9C8B,0DAA2C;IAA3C,wIAA2C;IAK9D,0DAKhB;IALgB,wIAKhB;IAGgB,0DAAkE;IAAlE,wIAAkE;IAOnE,0DAKjB;IALiB,wIAKjB;IAGiB,0DAKjB;IALiB,yIAKjB;IAGiB,0DAKjB;IALiB,yIAKjB;;;;IAQR,wEACC;IACC,0EACA;IAAA,qFAAwG;IACzG,4DAAM;IACP,qEAAe;;IAFkB,0DAAkD;IAAlD,wIAAkD;;;;IAKnF,wEACE;IACA,0EACA;IAAA,qFAKsB;IACvB,4DAAM;IACP,qEAAe;;IAPsC,0DAIjD;IAJiD,wIAIjD;;;IAMJ,wEACA;IACA,0EACE;IAAA,qFAA0E;IAC5E,4DAAM;IACN,qEAAe;;ADvFR,MAAM,oBAAoB;IAK/B;QAHA,eAAU,GAAG,CAAC,CAAC;IAGA,CAAC;IAEhB,QAAQ;QACN,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC;IAC9B,CAAC;;wFATU,oBAAoB;oGAApB,oBAAoB;QCI/B,kIACE;QAGJ,oIACE;QAoDF,kIACC;QAOD,kIACE;QAYF,kIACA;;QA/EgB,sFAAwB;QAI1B,0DAAwB;QAAxB,sFAAwB;QAqDxB,0DAAwB;QAAxB,sFAAwB;QAQxB,0DAAyB;QAAzB,uFAAyB;QAazB,0DAAyB;QAAzB,uFAAyB;;6FDlF1B,oBAAoB;cALhC,uDAAS;eAAC;gBACT,QAAQ,EAAE,kBAAkB;gBAC5B,WAAW,EAAE,+BAA+B;gBAC5C,SAAS,EAAE,CAAC,+BAA+B,CAAC;aAC7C;sCAKU,IAAI;kBAAZ,mDAAK;;;;;;;;;;;;;;AEXR;AAAA;AAAA;AAAA;AAAA;AAAoE;;;;;ICCpE,yEACE;IAAA,yEAEE;IAAA,oEAEJ;IAAA,4DAAM;IAGN,4DAAM;;ADLN;;GAEG;AAMI,MAAM,gBAAgB;IAI3B,0BAA0B;IAC1B,YAAoB,cAA8B;QAA9B,mBAAc,GAAd,cAAc,CAAgB;QAJlD,YAAO,GAAG,KAAK,CAAC;IAIqC,CAAC;IAEtD,4CAA4C;IAC5C,QAAQ;QACN,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,SAAS,CACpE,CAAC,KAAK,EAAE,EAAE;YACR,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;QACvB,CAAC,CACF,CAAC;QACH,oCAAoC;IACrC,CAAC;IAED,WAAW;QACT,IAAI,CAAC,mBAAmB,CAAC,WAAW,EAAE,CAAC;IACzC,CAAC;;gFAnBU,gBAAgB;gGAAhB,gBAAgB;QCX7B,4GACE;;QADmB,6EAAe;;6FDWvB,gBAAgB;cAL5B,uDAAS;eAAC;gBACT,QAAQ,EAAE,aAAa;gBACvB,WAAW,EAAE,yBAAyB;gBACtC,SAAS,EAAE,CAAC,yBAAyB,CAAC;aACvC;;;;;;;;;;;;;;AEXD;AAAA;AAAA;AAAA;AAO+B;AAExB,MAAM,oBAAoB,GAAG,qEAAS,CAAC;IAC1C,iEAAK,CAAC,EAAE,IAAI,EAAE,gBAAgB,EAAE,CAAC;IACjC,iEAAK,CAAC,cAAc,EAAE,CAAC,iEAAK,CAAC,EAAE,SAAS,EAAE,4BAA4B,EAAE,CAAC,CAAC,EAAE,EAAC,QAAQ,EAAE,IAAI,EAAC,CAAC;IAC7F,oEAAQ,CAAC;QACP,mEAAO,CAAC,KAAK,CAAG;QAChB,iEAAK,CAAC,cAAc,EAAE;YACpB,mEAAO,CAAC,EAAE,EAAE,CAAC,mEAAO,CAAC,oBAAoB,EAAE,iEAAK,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC;SAC3E,EAAE,EAAC,QAAQ,EAAE,IAAI,EAAC,CAAC;KACrB,CAAC;CACH,CAAC,CAAC;AAEE,MAAM,qBAAqB,GAAG,qEAAS,CAAC;IAC3C;IACA,iEAAK,CAAC,cAAc,EAAE,CAAC,iEAAK,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,EAAC,QAAQ,EAAE,IAAI,EAAC,CAAC;IACvE,oEAAQ,CAAC;QACP,iEAAK,CAAC,cAAc,EAAE;YACpB,mEAAO,CAAC,CAAC,EAAE,EAAE;gBACX,mEAAO,CACL,oBAAoB,EACpB,iEAAK,CAAC,EAAE,SAAS,EAAE,4BAA4B,EAAE,CAAC,CACnD;aACF,CAAC;SACH,EAAE,EAAC,QAAQ,EAAE,IAAI,EAAC,CAAC;QACpB,mEAAO,CAAC,KAAK,EAAE,iEAAK,CAAC,EAAE,IAAI,EAAE,gBAAgB,EAAE,CAAC,CAAC;KAClD,CAAC;CACH,CAAC,CAAC;;;;;;;;;;;;;AChCL;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAMuB;AAWmH;AAGlE;AACG;;;;;;;;;;;;;;IC8C3E,mEAEe;;;;IAIf,wEACA;IAAA,0EACE;IAAA,0EACE;IAAA,0EACE;IAAA,qEAAI;IAAA,iEAAM;IAAA,4DAAK;IACf,wEAA4B;IAAzB,2TAAuB;IAAE,+EAC1B;IAAA,kEACA;IAAA,4DAAW;IAAA,4DAAI;IAEnB,4DAAM;IACR,4DAAM;IACN,0EACE;IAAA,2EACE;IAAA,yEACE;IADwB,wTAAsB,wBAAwB,KAAE;IACxE,gFACE;IAAA,8DACE;IADF,2EACE;IAAA,uEACA;IAAA,4DAAM;IAEV,4DAAW;IACX,+DAAc;IAAd,4EAAc;IAAA,0EAAc;IAAA,4DAAQ;IACtC,4DAAI;IACN,4DAAM;IACR,4DAAM;IACN,2EACE;IAAA,2EACE;IAAA,yEACE;IADuB,wTAAsB,qBAAqB,KAAE;IACpE,gFACE;IAAA,8DACE;IADF,2EACE;IAAA,uEACA;IAAA,4DAAM;IAEV,4DAAW;IACX,+DAAe;IAAf,4EAAe;IAAA,qEAAS;IAAA,4DAAQ;IAElC,4DAAI;IACN,4DAAM;IACR,4DAAM;IAyDN,2EACE;IAAA,2EACE;IAAA,yEACE;IAAA,gFACE;IAAA,8DACE;IADF,2EACE;IAAA,uEACA;IAAA,4DAAM;IAEV,4DAAW;IACX,+DAAe;IAAf,4EAAe;IAAA,iEAAK;IAAA,4DAAQ;IAC9B,4DAAI;IACN,4DAAM;IACR,4DAAM;IACN,2EACE;IAAA,2EACE;IAAA,yEACE;IADwB,wTAAsB,mBAAmB,KAAE;IACnE,gFACE;IAAA,8DACE;IADF,2EACE;IAAA,uEACF;IAAA,4DAAM;IAER,4DAAW;IACX,+DAAgB;IAAhB,4EAAgB;IAAA,gFAAoB;IAAA,4DAAQ;IAC9C,4DAAI;IACN,4DAAM;IACR,4DAAM;IA4BR,4DAAM;IACN,qEAAe;;IAnJe,0DAAS;IAAT,gFAAS;;;;IAyJvC,wEACE;IAAA,0EACE;IAAA,0EACE;IAAA,0EACE;IAAA,qEAAI;IAAA,mEAAQ;IAAA,4DAAK;IACjB,wEAA2B;IAAxB,8TAAuB;IAAC,+EACzB;IAAA,kEACA;IAAA,4DAAW;IAAA,4DAAI;IAEnB,4DAAM;IACR,4DAAM;IACN,0EACE;IAAA,2EACE;IACA,yEACE;IADyB,2TAAsB,iBAAiB,KAAE;IAClE,+EACE;IAAA,8DACE;IADF,2EACE;IAAA,uEACA;IAAA,4DAAM;IAEV,4DAAW;IAGX,+DAAe;IAAf,4EAAe;IAAA,gEAAI;IAAA,4DAAQ;IAC7B,4DAAI;IACN,4DAAM;IACR,4DAAM;IAEN,2EACE;IAAA,2EACE;IAAA,yEACE;IADwB,kUAA0B;IAClD,gFACE;IAAA,8DACE;IADF,2EACE;IAAA,uEACA;IAAA,4DAAM;IAEV,4DAAW;IAEX,+DAA8E;IAA9E,6EAA8E;IAAA,mEAAO;IAAA,4DAAQ;IAC/F,4DAAI;IACN,4DAAM;IACR,4DAAM;IACN,2EACE;IAAA,2EACE;IAAA,yEACE;IADuB,mTAAc,uCAAuC,KAAE;IAC9E,+EACE;IAAA,6EACF;IAAA,4DAAW;IAEX,4EAAe;IAAA,kEAAM;IAAA,4DAAQ;IAC/B,4DAAI;IACN,4DAAM;IACR,4DAAM;IAGN,2EACE;IAAA,2EACE;IAAA,yEACE;IADwB,2TAAsB,OAAO,KAAE;IACvD,gFACE;IAAA,8DACE;IADF,2EACE;IAAA,uEACF;IAAA,4DAAM;IAER,4DAAW;IAEX,+DAAe;IAAf,4EAAe;IAAA,kEAAM;IAAA,4DAAQ;IAC/B,4DAAI;IACN,4DAAM;IACR,4DAAM;IA2BN,2EACE;IAAA,2EACE;IAAA,yEACE;IADwB,kUAA0B;IAClD,+EACE;IAAA,8DACE;IADF,2EACE;IAAA,uEACA;IAAA,uEACA;IAAA,uEACA;IAAA,uEACA;IAAA,uEACA;IAAA,uEACA;IAAA,uEACA;IAAA,uEACA;IAAA,uEACA;IAAA,4DAAM;IAEV,4DAAW;IAEX,+DAA8E;IAA9E,6EAA8E;IAAA,+DAAG;IAAA,4DAAQ;IAC3F,4DAAI;IACN,4DAAM;IACR,4DAAM;IAER,4DAAM;IAER,qEAAe;;;IAvHgB,0DAAS;IAAT,gFAAS;IAqCS,2DAAsC;IAAtC,sGAAsC;IA2EtC,2DAAsC;IAAtC,sGAAsC;;;;IAUvF,wEACE;IAAA,0EACE;IAAA,0EACE;IAAA,0EACE;IAAA,qEAAI;IAAA,mEAAQ;IAAA,4DAAK;IACjB,wEAA2B;IAAxB,8TAAuB;IAAC,+EACzB;IAAA,kEACA;IAAA,4DAAW;IAAA,4DAAI;IAEnB,4DAAM;IACR,4DAAM;IACN,0EACE;IAAA,2EACE;IAAA,yEACE;IADyB,kUAA0B;IAEnD,gFACA;IAAA,8DACE;IADF,2EACE;IAAA,uEACA;IAAA,4DAAM;IACR,4DAAW;IACX,+DAA8E;IAA9E,6EAA8E;IAAA,oEAAQ;IAAA,4DAAQ;IAChG,4DAAI;IACN,4DAAM;IACR,4DAAM;IACN,2EACE;IAAA,2EACE;IAAA,yEACE;IADuB,kUAA0B;IACjD,8DACE;IADF,2EACE;IAAA,uEACA;IAAA,4DAAM;IAER,+DAA8E;IAA9E,6EAA8E;IAAA,2EAAe;IAAA,4DAAQ;IACvG,4DAAI;IACN,4DAAM;IACR,4DAAM;IACN,2EACE;IAAA,2EACE;IAAA,yEAEI;IAFsB,kUAA0B;IAEhD,8DACE;IADF,2EACE;IAAA,uEACA;IAAA,4DAAM;IACV,+DAA8E;IAA9E,6EAA8E;IAAA,yEAAa;IAAA,4DAAQ;IACrG,4DAAI;IACN,4DAAM;IACR,4DAAM;IACN,2EACE;IAAA,2EACE;IAAA,yEACE;IADwB,kUAA0B;IAClD,gFACE;IAAA,8DACE;IADF,2EACE;IAAA,uEACA;IAAA,4DAAM;IAEV,4DAAW;IACX,+DAA8E;IAA9E,6EAA8E;IAAA,+EAAmB;IAAA,4DAAQ;IAC3G,4DAAI;IACN,4DAAM;IACR,4DAAM;IACN,2EACE;IAAA,2EACE;IAAA,yEACE;IADwB,kUAA0B;IAClD,+EACE;IAAA,8DACE;IADF,2EACE;IAAA,uEACA;IAAA,4DAAM;IAGV,4DAAW;IACX,+DAA8E;IAA9E,6EAA8E;IAAA,sEAAU;IAAA,4DAAQ;IAClG,4DAAI;IACN,4DAAM;IACR,4DAAM;IAEN,2EACE;IAAA,2EACE;IAAA,yEACE;IADwB,kUAA0B;IAClD,+EACE;IAAA,8DACE;IADF,2EACE;IAAA,uEACA;IAAA,4DAAM;IAEV,4DAAW;IACX,+DAA8E;IAA9E,6EAA8E;IAAA,iEAAK;IAAA,4DAAQ;IAC7F,4DAAI;IACN,4DAAM;IACR,4DAAM;IAEN,2EACE;IAAA,2EACE;IAAA,yEACE;IADwB,kUAA0B;IAClD,+EACE;IAAA,8DACE;IADF,2EACE;IAAA,uEACA;IAAA,4DAAM;IAEV,4DAAW;IACX,+DAA8E;IAA9E,6EAA8E;IAAA,uEAAW;IAAA,4DAAQ;IACnG,4DAAI;IACN,4DAAM;IACR,4DAAM;IACN,2EACE;IAAA,2EACE;IAAA,yEACE;IADwB,kUAA0B;IAClD,+EACE;IAAA,8DACE;IADF,2EACE;IAAA,uEACA;IAAA,4DAAM;IAEV,4DAAW;IACX,+DAA8E;IAA9E,6EAA8E;IAAA,yGAA6C;IAAA,4DAAQ;IACrI,4DAAI;IACN,4DAAM;IACR,4DAAM;IACN,2EACE;IAAA,2EACE;IAAA,yEACE;IADwB,kUAA0B;IAClD,+EACE;IAAA,8DACE;IADF,2EACE;IAAA,uEACA;IAAA,4DAAM;IAGV,4DAAW;IACX,+DAA8E;IAA9E,6EAA8E;IAAA,sFAA0B;IAAA,4DAAQ;IAClH,4DAAI;IACN,4DAAM;IACR,4DAAM;IACN,2EACE;IAAA,2EACE;IAAA,yEACE;IADwB,kUAA0B;IAClD,+EACE;IAAA,8DACE;IADF,2EACE;IAAA,uEACA;IAAA,4DAAM;IAIV,4DAAW;IACX,+DAA8E;IAA9E,6EAA8E;IAAA,mEAAO;IAAA,4DAAQ;IAC/F,4DAAI;IACN,4DAAM;IACR,4DAAM;IAGR,4DAAM;IAER,qEAAe;;;IAlJgB,0DAAS;IAAT,gFAAS;IAmBS,2DAAsC;IAAtC,sGAAsC;IAWtC,0DAAsC;IAAtC,sGAAsC;IAWtC,0DAAsC;IAAtC,sGAAsC;IAatC,0DAAsC;IAAtC,sGAAsC;IActC,0DAAsC;IAAtC,sGAAsC;IActC,0DAAsC;IAAtC,sGAAsC;IActC,0DAAsC;IAAtC,sGAAsC;IAatC,0DAAsC;IAAtC,sGAAsC;IActC,0DAAsC;IAAtC,sGAAsC;IAetC,0DAAsC;IAAtC,sGAAsC;;;;IAyC7E,0EAEE;IAAA,+EACE;IADmD,kbAAyB;IAC5E,kEAAM;IAAA,4DAAW;IACrB,4DAAM;;;;IACN,0EAEE;IAAA,+EACE;IADoD,kbAAyB;IAC7E,gEACA;IAAA,4DAAW;IACf,4DAAM;;;;IAIN,yEACE;IADE,+dAAwD;IAC1D,qEAAI;IAAA,wEAA8B;IAAA,gFAAsC;IAAA,8EAAmB;IAAA,4DAAY;IAAA,4DAAI;IAAA,4DAAK;IAC9G,qEAAI;IAAA,wEAA8B;IAAA,gFAAsC;IAAA,6EAAkB;IAAA,4DAAY;IAAA,4DAAI;IAAA,4DAAK;IAC/G,qEAAI;IAAA,yEAA8B;IAAA,iFAAsC;IAAA,oFAAwB;IAAA,4DAAY;IAAA,4DAAI;IAAA,4DAAK;IACrH,sEAAI;IAAA,yEAA8B;IAAA,iFAAsC;IAAA,uFAA2B;IAAA,4DAAY;IAAA,4DAAI;IAAA,4DAAK;IACxH,sEAAI;IAAA,yEAA6B;IAAA,iFAAsC;IAAA,sFAA0B;IAAA,4DAAY;IAAA,4DAAI;IAAA,4DAAK;IACtH,sEAAI;IAAA,yEAA8B;IAAA,iFAAsC;IAAA,gFAAoB;IAAA,4DAAY;IAAA,4DAAI;IAAA,4DAAK;IACjH,sEAAI;IAAA,yEAA8B;IAAA,iFAAsC;IAAA,yEAAa;IAAA,4DAAY;IAAA,4DAAI;IAAA,4DAAK;IAC1G,sEAAI;IAAA,yEAA8B;IAAA,iFAAsC;IAAA,2EAAe;IAAA,4DAAY;IAAA,4DAAI;IAAA,4DAAK;IAC5G,sEAAI;IAAA,yEAA8B;IAAA,iFAAsC;IAAA,6EAAiB;IAAA,4DAAY;IAAA,4DAAI;IAAA,4DAAK;IAC9G,sEAAI;IAAA,yEAA8B;IAAA,iFAAsC;IAAA,+EAAmB;IAAA,4DAAY;IAAA,4DAAI;IAAA,4DAAK;IAClH,4DAAK;;;IAVG,0DAAyB;IAAzB,sFAAyB;IACvB,0DAAyB;IAAzB,sFAAyB;IACzB,0DAAyB;IAAzB,sFAAyB;IACzB,0DAAyB;IAAzB,sFAAyB;IAC1B,0DAAyB;IAAzB,sFAAyB;IACxB,0DAAyB;IAAzB,sFAAyB;IACzB,0DAAyB;IAAzB,sFAAyB;IACzB,0DAAyB;IAAzB,sFAAyB;IACzB,0DAAyB;IAAzB,sFAAyB;IACzB,0DAAyB;IAAzB,sFAAyB;;;;IAEnC,yEACE;IADE,yeAAkE;IACpE,qEAAI;IAAA,wEAA8B;IAAA,gFAAsC;IAAA,8EAAmB;IAAA,4DAAY;IAAA,4DAAI;IAAA,4DAAK;IAC9G,qEAAI;IAAA,wEAA8B;IAAA,gFAAsC;IAAA,wEAAa;IAAA,4DAAY;IAAA,4DAAI;IAAA,4DAAK;IAC1G,qEAAI;IAAA,yEAA8B;IAAA,iFAAsC;IAAA,oFAAwB;IAAA,4DAAY;IAAA,4DAAI;IAAA,4DAAK;IACrH,sEAAI;IAAA,yEAA8B;IAAA,iFAAsC;IAAA,uFAA2B;IAAA,4DAAY;IAAA,4DAAI;IAAA,4DAAK;IACxH,sEAAI;IAAA,yEAA6B;IAAA,iFAAsC;IAAA,gGAAoC;IAAA,4DAAY;IAAA,4DAAI;IAAA,4DAAK;IAChI,sEAAI;IAAA,yEAA8B;IAAA,iFAAsC;IAAA,6EAAiB;IAAA,4DAAY;IAAA,4DAAI;IAAA,4DAAK;IAC9G,sEAAI;IAAA,yEAA8B;IAAA,iFAAsC;IAAA,+EAAmB;IAAA,4DAAY;IAAA,4DAAI;IAAA,4DAAK;IAChH,sEAAI;IAAA,yEAA8B;IAAA,iFAAsC;IAAA,+EAAmB;IAAA,4DAAY;IAAA,4DAAI;IAAA,4DAAK;IAChH,sEAAI;IAAA,yEAA8B;IAAA,iFAAsC;IAAA,4FAAgC;IAAA,4DAAY;IAAA,4DAAI;IAAA,4DAAK;IAC7H,sEAAI;IAAA,yEAA8B;IAAA,iFAAsC;IAAA,0EAAc;IAAA,4DAAY;IAAA,4DAAI;IAAA,4DAAK;IAC7G,4DAAK;;;IAVG,0DAAyB;IAAzB,sFAAyB;IACvB,0DAAyB;IAAzB,sFAAyB;IACzB,0DAAyB;IAAzB,sFAAyB;IACzB,0DAAyB;IAAzB,sFAAyB;IAC1B,0DAAyB;IAAzB,sFAAyB;IACxB,0DAAyB;IAAzB,sFAAyB;IACzB,0DAAyB;IAAzB,sFAAyB;IACzB,0DAAyB;IAAzB,sFAAyB;IACzB,0DAAyB;IAAzB,sFAAyB;IACzB,0DAAyB;IAAzB,sFAAyB;;;;IAEnC,yEACE;IADE,4eAAqE;IACvE,qEAAI;IAAA,wEAA8B;IAAA,gFAAsC;IAAA,8EAAmB;IAAA,4DAAY;IAAA,4DAAI;IAAA,4DAAK;IAC9G,qEAAI;IAAA,wEAA8B;IAAA,gFAAsC;IAAA,2FAAgC;IAAA,4DAAY;IAAA,4DAAI;IAAA,4DAAK;IAC7H,qEAAI;IAAA,yEAA8B;IAAA,iFAAsC;IAAA,8EAAkB;IAAA,4DAAY;IAAA,4DAAI;IAAA,4DAAK;IAC/G,sEAAI;IAAA,yEAA8B;IAAA,iFAAsC;IAAA,4EAAgB;IAAA,4DAAY;IAAA,4DAAI;IAAA,4DAAK;IAC7G,sEAAI;IAAA,yEAA6B;IAAA,iFAAsC;IAAA,gGAAoC;IAAA,4DAAY;IAAA,4DAAI;IAAA,4DAAK;IAChI,sEAAI;IAAA,yEAA8B;IAAA,iFAAsC;IAAA,6EAAiB;IAAA,4DAAY;IAAA,4DAAI;IAAA,4DAAK;IAC9G,sEAAI;IAAA,yEAA8B;IAAA,iFAAsC;IAAA,+EAAmB;IAAA,4DAAY;IAAA,4DAAI;IAAA,4DAAK;IAChH,sEAAI;IAAA,yEAA8B;IAAA,iFAAsC;IAAA,+EAAmB;IAAA,4DAAY;IAAA,4DAAI;IAAA,4DAAK;IAChH,sEAAI;IAAA,yEAA8B;IAAA,iFAAsC;IAAA,4FAAgC;IAAA,4DAAY;IAAA,4DAAI;IAAA,4DAAK;IAC7H,sEAAI;IAAA,yEAA8B;IAAA,iFAAsC;IAAA,0EAAc;IAAA,4DAAY;IAAA,4DAAI;IAAA,4DAAK;IAC7G,4DAAK;;;IAVG,0DAAyB;IAAzB,sFAAyB;IACvB,0DAAyB;IAAzB,sFAAyB;IACzB,0DAAyB;IAAzB,sFAAyB;IACzB,0DAAyB;IAAzB,sFAAyB;IAC1B,0DAAyB;IAAzB,sFAAyB;IACxB,0DAAyB;IAAzB,sFAAyB;IACzB,0DAAyB;IAAzB,sFAAyB;IACzB,0DAAyB;IAAzB,sFAAyB;IACzB,0DAAyB;IAAzB,sFAAyB;IACzB,0DAAyB;IAAzB,sFAAyB;;;;IAEnC,yEACE;IADE,2eAAoE;IACtE,qEAAI;IAAA,wEAA8B;IAAA,gFAAsC;IAAA,8EAAmB;IAAA,4DAAY;IAAA,4DAAI;IAAA,4DAAK;IAC9G,qEAAI;IAAA,wEAA8B;IAAA,gFAAsC;IAAA,0FAA+B;IAAA,4DAAY;IAAA,4DAAI;IAAA,4DAAK;IAC5H,qEAAI;IAAA,yEAA8B;IAAA,iFAAsC;IAAA,8EAAkB;IAAA,4DAAY;IAAA,4DAAI;IAAA,4DAAK;IAC/G,sEAAI;IAAA,yEAA8B;IAAA,iFAAsC;IAAA,4EAAgB;IAAA,4DAAY;IAAA,4DAAI;IAAA,4DAAK;IAC7G,sEAAI;IAAA,yEAA6B;IAAA,iFAAsC;IAAA,uFAA2B;IAAA,4DAAY;IAAA,4DAAI;IAAA,4DAAK;IACvH,sEAAI;IAAA,yEAA8B;IAAA,iFAAsC;IAAA,yFAA6B;IAAA,4DAAY;IAAA,4DAAI;IAAA,4DAAK;IAC1H,sEAAI;IAAA,yEAA8B;IAAA,iFAAsC;IAAA,0EAAc;IAAA,4DAAY;IAAA,4DAAI;IAAA,4DAAK;IAE7G,4DAAK;;;IARG,0DAAyB;IAAzB,sFAAyB;IACvB,0DAAyB;IAAzB,sFAAyB;IACzB,0DAAyB;IAAzB,sFAAyB;IACzB,0DAAyB;IAAzB,sFAAyB;IAC1B,0DAAyB;IAAzB,sFAAyB;IACxB,0DAAyB;IAAzB,sFAAyB;IACzB,0DAAyB;IAAzB,sFAAyB;;;;IAGnC,yEACE;IADE,0eAAmE;IACrE,qEAAI;IAAA,wEAA8B;IAAA,gFAAsC;IAAA,8EAAmB;IAAA,4DAAY;IAAA,4DAAI;IAAA,4DAAK;IAC9G,qEAAI;IAAA,wEAA8B;IAAA,gFAAsC;IAAA,yFAA8B;IAAA,4DAAY;IAAA,4DAAI;IAAA,4DAAK;IAC3H,qEAAI;IAAA,yEAA8B;IAAA,iFAAsC;IAAA,8EAAkB;IAAA,4DAAY;IAAA,4DAAI;IAAA,4DAAK;IAC/G,sEAAI;IAAA,yEAA8B;IAAA,iFAAsC;IAAA,4EAAgB;IAAA,4DAAY;IAAA,4DAAI;IAAA,4DAAK;IAC7G,sEAAI;IAAA,yEAA6B;IAAA,iFAAsC;IAAA,uFAA2B;IAAA,4DAAY;IAAA,4DAAI;IAAA,4DAAK;IACvH,sEAAI;IAAA,yEAA8B;IAAA,iFAAsC;IAAA,yFAA6B;IAAA,4DAAY;IAAA,4DAAI;IAAA,4DAAK;IAC1H,sEAAI;IAAA,yEAA8B;IAAA,iFAAsC;IAAA,0EAAc;IAAA,4DAAY;IAAA,4DAAI;IAAA,4DAAK;IAE7G,4DAAK;;;IARG,0DAAyB;IAAzB,sFAAyB;IACvB,0DAAyB;IAAzB,sFAAyB;IACzB,0DAAyB;IAAzB,sFAAyB;IACzB,0DAAyB;IAAzB,sFAAyB;IAC1B,0DAAyB;IAAzB,sFAAyB;IACxB,0DAAyB;IAAzB,sFAAyB;IACzB,0DAAyB;IAAzB,sFAAyB;;;;IAGnC,yEACE;IADE,yeAAkE;IACpE,qEAAI;IAAA,wEAA8B;IAAA,gFAAsC;IAAA,8EAAmB;IAAA,4DAAY;IAAA,4DAAI;IAAA,4DAAK;IAC9G,qEAAI;IAAA,wEAA8B;IAAA,gFAAsC;IAAA,wFAA6B;IAAA,4DAAY;IAAA,4DAAI;IAAA,4DAAK;IAC1H,qEAAI;IAAA,yEAA8B;IAAA,iFAAsC;IAAA,8EAAkB;IAAA,4DAAY;IAAA,4DAAI;IAAA,4DAAK;IAC/G,sEAAI;IAAA,yEAA8B;IAAA,iFAAsC;IAAA,4EAAgB;IAAA,4DAAY;IAAA,4DAAI;IAAA,4DAAK;IAC7G,sEAAI;IAAA,yEAA6B;IAAA,iFAAsC;IAAA,2EAAe;IAAA,4DAAY;IAAA,4DAAI;IAAA,4DAAK;IAC3G,sEAAI;IAAA,yEAA8B;IAAA,iFAAsC;IAAA,2FAA+B;IAAA,4DAAY;IAAA,4DAAI;IAAA,4DAAK;IAC5H,sEAAI;IAAA,yEAA8B;IAAA,iFAAsC;IAAA,0EAAc;IAAA,4DAAY;IAAA,4DAAI;IAAA,4DAAK;IAE7G,4DAAK;;;IARG,0DAAyB;IAAzB,sFAAyB;IACvB,0DAAyB;IAAzB,sFAAyB;IACzB,0DAAyB;IAAzB,sFAAyB;IACzB,0DAAyB;IAAzB,sFAAyB;IAC1B,0DAAyB;IAAzB,sFAAyB;IACxB,0DAAyB;IAAzB,sFAAyB;IACzB,0DAAyB;IAAzB,sFAAyB;;;;IAGnC,yEACE;IADE,4eAAqE;IACvE,qEAAI;IAAA,wEAA8B;IAAA,gFAAsC;IAAA,8EAAmB;IAAA,4DAAY;IAAA,4DAAI;IAAA,4DAAK;IAC9G,qEAAI;IAAA,wEAA8B;IAAA,gFAAsC;IAAA,2FAAgC;IAAA,4DAAY;IAAA,4DAAI;IAAA,4DAAK;IAC7H,qEAAI;IAAA,yEAA8B;IAAA,iFAAsC;IAAA,8EAAkB;IAAA,4DAAY;IAAA,4DAAI;IAAA,4DAAK;IAC/G,sEAAI;IAAA,yEAA8B;IAAA,iFAAsC;IAAA,4EAAgB;IAAA,4DAAY;IAAA,4DAAI;IAAA,4DAAK;IAC7G,sEAAI;IAAA,yEAA6B;IAAA,iFAAsC;IAAA,gGAAoC;IAAA,4DAAY;IAAA,4DAAI;IAAA,4DAAK;IAChI,sEAAI;IAAA,yEAA8B;IAAA,iFAAsC;IAAA,6EAAiB;IAAA,4DAAY;IAAA,4DAAI;IAAA,4DAAK;IAC9G,sEAAI;IAAA,yEAA8B;IAAA,iFAAsC;IAAA,+EAAmB;IAAA,4DAAY;IAAA,4DAAI;IAAA,4DAAK;IAChH,sEAAI;IAAA,yEAA8B;IAAA,iFAAsC;IAAA,+EAAmB;IAAA,4DAAY;IAAA,4DAAI;IAAA,4DAAK;IAChH,sEAAI;IAAA,yEAA8B;IAAA,iFAAsC;IAAA,4FAAgC;IAAA,4DAAY;IAAA,4DAAI;IAAA,4DAAK;IAC7H,sEAAI;IAAA,yEAA8B;IAAA,iFAAsC;IAAA,0EAAc;IAAA,4DAAY;IAAA,4DAAI;IAAA,4DAAK;IAC7G,4DAAK;;;IAVG,0DAAyB;IAAzB,sFAAyB;IACvB,0DAAyB;IAAzB,sFAAyB;IACzB,0DAAyB;IAAzB,sFAAyB;IACzB,0DAAyB;IAAzB,sFAAyB;IAC1B,0DAAyB;IAAzB,sFAAyB;IACxB,0DAAyB;IAAzB,sFAAyB;IACzB,0DAAyB;IAAzB,sFAAyB;IACzB,0DAAyB;IAAzB,sFAAyB;IACzB,0DAAyB;IAAzB,sFAAyB;IACzB,0DAAyB;IAAzB,sFAAyB;;;;IA7EnD,0EACE;IAAA,gJACE;IAWA,gJACE;IAWA,gJACE;IAWA,+IACE;IASA,+IACE;IASA,+IACE;IASA,gJACE;IAWZ,6EAA2G;IAApE,6eAAmE;IAAC,+EAAoB;IAAA,4DAAS;IAE9I,4DAAM;;;IAhF2D,0DAA8B;IAA9B,8FAA8B;IAYlB,0DAA8B;IAA9B,8FAA8B;IAYzB,0DAA8B;IAA9B,8FAA8B;IAY7B,0DAA8B;IAA9B,8FAA8B;IAU7B,0DAA8B;IAA9B,8FAA8B;IAU7B,0DAA8B;IAA9B,8FAA8B;IAUzB,0DAA8B;IAA9B,8FAA8B;;;IAtFxH,0EACE;IAAA,wEACE;IAAA,8EACE;IAAA,wEACF;IAAA,4DAAW;IACX,2EAAc;IAAA,uDAAoB;IAAA,4DAAQ;IAC1C,0IAEE;IAGF,0IAEE;IAIJ,4DAAI;IAEJ,2IACE;IAmFJ,4DAAM;;;IAlGY,0DAAoB;IAApB,qFAAoB;IACd,0DAA4B;IAA5B,0FAA4B;IAK5B,0DAA6B;IAA7B,2FAA6B;IAQ9B,0DAA4B;IAA5B,0FAA4B;;;IApBrD,0EACE;IAAA,oIACE;IA0GJ,4DAAM;;;IA3G6B,0DAAwD;IAAxD,4FAAwD;;;;IAtB/F,wEACE;IAAA,0EACE;IAAA,0EACE;IAAA,0EACE;IAAA,qEAAI;IAAA,sEAAW;IAAA,4DAAK;IACpB,wEAA2B;IAAxB,8TAAuB;IAAC,+EACzB;IAAA,kEACA;IAAA,4DAAW;IAAA,4DAAI;IAEnB,4DAAM;IACR,4DAAM;IACN,0EACE;IAAA,2EACE;IAAA,yEACE;IADC,mTAAc,GAAG,KAAE;IACpB,gFACE;IAAA,qEACF;IAAA,4DAAW;IACX,4EAAc;IAAA,iFAAqB;IAAA,4DAAQ;IAC7C,4DAAI;IACN,4DAAM;IACR,4DAAM;IACN,+HACE;IAsHF,2EACE;IAAA,2EACE;IAAA,yEACE;IADC,qUAA6B;IAC9B,+EACE;IAAA,0EACF;IAAA,4DAAW;IACX,4EAAc;IAAA,kFAAsB;IAAA,4DAAQ;IAC9C,4DAAI;IACN,4DAAM;IACR,4DAAM;IAGR,4DAAM;IAER,qEAAe;;;IAzJgB,0DAAS;IAAT,gFAAS;IAoBX,2DAAgC;IAAhC,mGAAgC;;ADnf7D,MAAM,eAAe,GAAG;IACtB,SAAS,EAAE,OAAO;IAClB,cAAc,EAAE,YAAY;CAC7B,CAAC;AAwBF,IAAK,gBAUJ;AAVD,WAAK,gBAAgB;IACnB,uHAAsC;IACtC,uHAAsC;IACtC,uHAAsC;IACtC,uHAAsC;IACtC,uHAAsC;IACtC,uHAAsC;IACtC,uHAAsC;IACtC,uHAAsC;IACtC,uHAAsC;AACxC,CAAC,EAVI,gBAAgB,KAAhB,gBAAgB,QAUpB;AACD,IAAK,8BAUJ;AAVD,WAAK,8BAA8B;IACjC,mJAAsC;IACtC,mJAAsC;IACtC,mJAAsC;IACtC,mJAAsC;IACtC,mJAAsC;IACtC,mJAAsC;IACtC,mJAAsC;IACtC,mJAAsC;IACtC,mJAAsC;AACxC,CAAC,EAVI,8BAA8B,KAA9B,8BAA8B,QAUlC;AAED,IAAK,iCAUJ;AAVD,WAAK,iCAAiC;IACpC,yJAAsC;IACtC,yJAAsC;IACtC,yJAAsC;IACtC,yJAAsC;IACtC,yJAAsC;IACtC,yJAAsC;IACtC,yJAAsC;IACtC,yJAAsC;IACtC,yJAAsC;AACxC,CAAC,EAVI,iCAAiC,KAAjC,iCAAiC,QAUrC;AACD,IAAK,gCAOJ;AAPD,WAAK,gCAAgC;IACnC,uJAAsC;IACtC,uJAAsC;IACtC,uJAAsC;IACtC,uJAAsC;IACtC,uJAAsC;IACtC,uJAAsC;AACxC,CAAC,EAPI,gCAAgC,KAAhC,gCAAgC,QAOpC;AAED,IAAK,+BAOJ;AAPD,WAAK,+BAA+B;IAClC,qJAAsC;IACtC,qJAAsC;IACtC,qJAAsC;IACtC,qJAAsC;IACtC,qJAAsC;IACtC,qJAAsC;AACxC,CAAC,EAPI,+BAA+B,KAA/B,+BAA+B,QAOnC;AACD,IAAK,8BAOJ;AAPD,WAAK,8BAA8B;IACjC,mJAAsC;IACtC,mJAAsC;IACtC,mJAAsC;IACtC,mJAAsC;IACtC,mJAAsC;IACtC,mJAAsC;AACxC,CAAC,EAPI,8BAA8B,KAA9B,8BAA8B,QAOlC;AACD,IAAK,iCAUJ;AAVD,WAAK,iCAAiC;IACpC,yJAAsC;IACtC,yJAAsC;IACtC,yJAAsC;IACtC,yJAAsC;IACtC,yJAAsC;IACtC,yJAAsC;IACtC,yJAAsC;IACtC,yJAAsC;IACtC,yJAAsC;AACxC,CAAC,EAVI,iCAAiC,KAAjC,iCAAiC,QAUrC;AACD,gBAAgB;AAChB,2BAA2B;AAC3B,0BAA0B;AAC1B,8BAA8B;AAC9B,wBAAwB;AACxB,8BAA8B;AAC9B,4BAA4B;AAC5B,qBAAqB;AACrB,YAAY;AACZ,yBAAyB;AACzB,2BAA2B;AAC3B,IAAI;AAyBG,MAAM,gBAAgB;IAsD3B,YACU,cAAoC,EACpC,WAAyB,EAC1B,IAA2B,EAC1B,cAA8B,EAC9B,SAAuB,EACxB,MAAiB;QALhB,mBAAc,GAAd,cAAc,CAAsB;QACpC,gBAAW,GAAX,WAAW,CAAc;QAC1B,SAAI,GAAJ,IAAI,CAAuB;QAC1B,mBAAc,GAAd,cAAc,CAAgB;QAC9B,cAAS,GAAT,SAAS,CAAc;QACxB,WAAM,GAAN,MAAM,CAAW;QA3D1B,mCAAmC;QACnC,oBAAe,GAAG,EAAE,CAAC;QAIrB,UAAK,GAAQ,yCAAyC,CAAC;QAOhD,WAAM,GAAG,IAAI,CAAC;QAErB,oBAAe,GAAoB,OAAO,CAAC;QAkC3C,gFAAgF;QAChF,aAAQ,GAAG,KAAK,CAAC;QACjB,iBAAiB;QACjB,cAAS,GAAG,EAAE,CAAC;QACf,oBAAe,GAAG,EAAE,CAAC;QA6ErB,aAAQ,GAAG,CAAC,CAAS,EAAE,IAAqB,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC;IArE9D,CAAC;IAEJ,QAAQ;QACN,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAC5C,sCAAsC;QACtC,oCAAoC;QACpC,yDAAyD;QACzD,8GAA8G;QAC9G,8BAA8B;QAC9B,4EAA4E;QAC5E,0EAA0E;QAC1E,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;QAC3C,IAAI,IAAI,CAAC,SAAS,EAAE;YAClB,MAAM,SAAS,GAAG,yBAAyB,GAAG,IAAI,CAAC,SAAS,CAAC;YAC7D,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,sBAAsB,CAAC,SAAS,CAAC,CAAC;SAC/D;QACD,IAAI,CAAC,eAAe,EAAE,CAAC;QACvB,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC,CAAC;IACrD,CAAC;IACD,eAAe;QACb,IAAI,CAAC,uBAAuB,GAAG,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,SAAS,CAC/D,CAAC,KAAK,EAAE,EAAE;YACR,IAAI,KAAK,EAAE;gBACT,qCAAqC;gBACrC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC,CAAC;aACpD;QACH,CAAC,CACF,CAAC;QACF,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,SAAS,CACjE,CAAC,KAAK,EAAE,EAAE;YACR,IAAI,KAAK,EAAE;gBACT,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;aAC1B;QACH,CAAC,CACF,CAAC;IACJ,CAAC;IACD,WAAW;QACT,IAAI,CAAC,uBAAuB,CAAC,WAAW,EAAE,CAAC;QAC3C,IAAI,CAAC,mBAAmB,CAAC,WAAW,EAAE,CAAC;IACzC,CAAC;IAED,YAAY,CAAC,CAAS;QACpB,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,QAAQ,GAAG,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;QACrE,kCAAkC;IACpC,CAAC;IACD,iBAAiB;QACf,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,CAAC;QACjC,0CAA0C;QAC1C,2CAA2C;QAC3C,qCAAqC;QACrC,IAAI;QACJ,IAAI,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,KAAK,YAAY,EAAE;YAC9C,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;YAChD,sDAAsD;SACvD;QACD,wCAAwC;QACxC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;IAClC,CAAC;IACD,YAAY,CAAC,KAAa;QACxB,mCAAmC;QACnC,2CAA2C;QAC3C,qCAAqC;QACrC,IAAI;QACJ,IAAI,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,KAAK,KAAK,EAAE;YACvC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;SACjD;QAED,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACnB,CAAC;IAGD,cAAc,CAAC,QAAQ;QACrB,0CAA0C;QAC1C,yBAAyB;QACzB,wCAAwC;QACxC,IAAI,CAAC,eAAe,GAAG,EAAE,CAAC;QAC1B,IAAI,CAAC,eAAe,GAAG,EAAE,CAAC;QAC1B,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;YAC5B,IAAI,OAAO,CAAC,WAAW,IAAI,CAAC,EAAE;gBAC5B,OAAO;gBACP,MAAM,cAAc,GAClB,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,4BAA4B,CAAC,CAAC;gBAClE,MAAM,WAAW,GAAG,gBAAgB,CAAC,GAAG,OAAO,CAAC,oBAAoB,EAAE,CAAC,CAAC;gBACxE,MAAM,IAAI,GAAG;oBACX,IAAI,EAAE,cAAc;oBACpB,iDAAiD;oBACjD,QAAQ,EAAE;wBACR;4BACE,IAAI,EAAE,cAAc;4BACpB,QAAQ,EAAE,KAAK;4BACf,YAAY,EAAE,OAAO,CAAC,oBAAoB;4BAC1C,KAAK,EAAE,OAAO,CAAC,aAAa;4BAC5B,OAAO,EAAE,OAAO,CAAC,WAAW;4BAC5B,CAAC,EAAE,QAAQ;4BACX,CAAC,EACC,gBAAgB,CAAC,sCAAsC,CAAC;gCACxD,WAAW;gCACT,CAAC,CAAC,QAAQ;gCACV,CAAC,CAAC,EAAE;4BACR,CAAC,EACC,gBAAgB,CAAC,sCAAsC,CAAC;gCACxD,WAAW;gCACT,CAAC,CAAC,QAAQ;gCACV,CAAC,CAAC,EAAE;4BACR,CAAC,EACC,gBAAgB,CAAC,sCAAsC,CAAC;gCACxD,WAAW;gCACT,CAAC,CAAC,QAAQ;gCACV,CAAC,CAAC,EAAE;4BACR,CAAC,EACC,gBAAgB,CAAC,sCAAsC,CAAC;gCACxD,WAAW;gCACT,CAAC,CAAC,QAAQ;gCACV,CAAC,CAAC,EAAE;4BACR,CAAC,EACC,gBAAgB,CAAC,sCAAsC,CAAC;gCACxD,WAAW;gCACT,CAAC,CAAC,QAAQ;gCACV,CAAC,CAAC,EAAE;4BACR,CAAC,EACC,gBAAgB,CAAC,sCAAsC,CAAC;gCACxD,WAAW;gCACT,CAAC,CAAC,QAAQ;gCACV,CAAC,CAAC,EAAE;4BACR,CAAC,EACC,gBAAgB,CAAC,sCAAsC,CAAC;gCACxD,WAAW;gCACT,CAAC,CAAC,QAAQ;gCACV,CAAC,CAAC,EAAE;4BACR,CAAC,EACC,gBAAgB,CAAC,sCAAsC,CAAC;gCACxD,WAAW;gCACT,CAAC,CAAC,QAAQ;gCACV,CAAC,CAAC,EAAE;4BACR,CAAC,EACC,gBAAgB,CAAC,sCAAsC,CAAC;gCACxD,WAAW;gCACT,CAAC,CAAC,QAAQ;gCACV,CAAC,CAAC,EAAE;yBACT;qBACF;iBACF,CAAC;gBACF,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC5C,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aACjC;iBAAM,IAAI,OAAO,CAAC,WAAW,IAAI,CAAC,EAAE;gBACnC,QAAQ;gBACR,MAAM,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;gBACjD,MAAM,WAAW,GACf,8BAA8B,CAAC,GAAG,OAAO,CAAC,oBAAoB,EAAE,CAAC,CAAC;gBACpE,MAAM,IAAI,GAAG;oBACX,IAAI,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC;oBAC/D,iDAAiD;oBACjD,QAAQ,EAAE;wBACR;4BACE,IAAI,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC;4BAC/D,QAAQ,EAAE,KAAK;4BACf,YAAY,EAAE,OAAO,CAAC,oBAAoB;4BAC1C,KAAK,EAAE,OAAO,CAAC,aAAa;4BAC5B,OAAO,EAAE,OAAO,CAAC,WAAW;4BAE5B,CAAC,EAAE,QAAQ;4BACX,CAAC,EACC,8BAA8B,CAC5B,sCAAsC,CACvC,GAAG,WAAW;gCACb,CAAC,CAAC,QAAQ;gCACV,CAAC,CAAC,EAAE;4BACR,CAAC,EACC,8BAA8B,CAC5B,sCAAsC,CACvC,GAAG,WAAW;gCACb,CAAC,CAAC,QAAQ;gCACV,CAAC,CAAC,EAAE;4BACR,CAAC,EACC,8BAA8B,CAC5B,sCAAsC,CACvC,GAAG,WAAW;gCACb,CAAC,CAAC,QAAQ;gCACV,CAAC,CAAC,EAAE;4BACR,CAAC,EACC,8BAA8B,CAC5B,sCAAsC,CACvC,GAAG,WAAW;gCACb,CAAC,CAAC,QAAQ;gCACV,CAAC,CAAC,EAAE;4BAER,CAAC,EACC,8BAA8B,CAC5B,sCAAsC,CACvC,GAAG,WAAW;gCACb,CAAC,CAAC,QAAQ;gCACV,CAAC,CAAC,EAAE;4BACR,CAAC,EACC,8BAA8B,CAC5B,sCAAsC,CACvC,GAAG,WAAW;gCACb,CAAC,CAAC,QAAQ;gCACV,CAAC,CAAC,EAAE;4BACR,CAAC,EACC,8BAA8B,CAC5B,sCAAsC,CACvC,GAAG,WAAW;gCACb,CAAC,CAAC,QAAQ;gCACV,CAAC,CAAC,EAAE;4BACR,CAAC,EACC,8BAA8B,CAC5B,sCAAsC,CACvC,GAAG,WAAW;gCACb,CAAC,CAAC,QAAQ;gCACV,CAAC,CAAC,EAAE;4BACR,CAAC,EACC,8BAA8B,CAC5B,sCAAsC,CACvC,IAAI,WAAW;gCACd,CAAC,CAAC,QAAQ;gCACV,CAAC,CAAC,EAAE;yBACT;qBACF;iBACF,CAAC;gBACF,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC5C,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aACjC;iBAAM,IAAI,OAAO,CAAC,WAAW,IAAI,CAAC,EAAE;gBACnC,qBAAqB;gBACrB,MAAM,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;gBACjD,MAAM,WAAW,GACf,iCAAiC,CAAC,GAAG,OAAO,CAAC,oBAAoB,EAAE,CAAC,CAAC;gBACvE,MAAM,IAAI,GAAG;oBACX,IAAI,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC;oBAC/D,iDAAiD;oBACjD,QAAQ,EAAE;wBACR;4BACE,IAAI,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC;4BAC/D,QAAQ,EAAE,KAAK;4BACf,YAAY,EAAE,OAAO,CAAC,oBAAoB;4BAC1C,KAAK,EAAE,OAAO,CAAC,aAAa;4BAC5B,OAAO,EAAE,OAAO,CAAC,WAAW;4BAE5B,CAAC,EAAE,QAAQ;4BACX,CAAC,EACC,iCAAiC,CAC/B,sCAAsC,CACvC,GAAG,WAAW;gCACb,CAAC,CAAC,QAAQ;gCACV,CAAC,CAAC,EAAE;4BACR,CAAC,EACC,iCAAiC,CAC/B,sCAAsC,CACvC,GAAG,WAAW;gCACb,CAAC,CAAC,QAAQ;gCACV,CAAC,CAAC,EAAE;4BACR,CAAC,EACC,iCAAiC,CAC/B,sCAAsC,CACvC,GAAG,WAAW;gCACb,CAAC,CAAC,QAAQ;gCACV,CAAC,CAAC,EAAE;4BACR,CAAC,EACC,iCAAiC,CAC/B,sCAAsC,CACvC,GAAG,WAAW;gCACb,CAAC,CAAC,QAAQ;gCACV,CAAC,CAAC,EAAE;4BAER,CAAC,EACC,iCAAiC,CAC/B,sCAAsC,CACvC,GAAG,WAAW;gCACb,CAAC,CAAC,QAAQ;gCACV,CAAC,CAAC,EAAE;4BACR,CAAC,EACC,iCAAiC,CAC/B,sCAAsC,CACvC,GAAG,WAAW;gCACb,CAAC,CAAC,QAAQ;gCACV,CAAC,CAAC,EAAE;4BACR,CAAC,EACC,iCAAiC,CAC/B,sCAAsC,CACvC,GAAG,WAAW;gCACb,CAAC,CAAC,QAAQ;gCACV,CAAC,CAAC,EAAE;4BACR,CAAC,EACC,iCAAiC,CAC/B,sCAAsC,CACvC,GAAG,WAAW;gCACb,CAAC,CAAC,QAAQ;gCACV,CAAC,CAAC,EAAE;4BACR,CAAC,EACC,iCAAiC,CAC/B,sCAAsC,CACvC,IAAI,WAAW;gCACd,CAAC,CAAC,QAAQ;gCACV,CAAC,CAAC,EAAE;yBACT;qBACF;iBACF,CAAC;gBACF,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC5C,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aACjC;iBAAM,IAAI,OAAO,CAAC,WAAW,IAAI,CAAC,EAAE;gBACnC,oBAAoB;gBACpB,MAAM,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;gBACjD,MAAM,WAAW,GACf,gCAAgC,CAAC,GAAG,OAAO,CAAC,oBAAoB,EAAE,CAAC,CAAC;gBACtE,MAAM,IAAI,GAAG;oBACX,IAAI,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC;oBAC/D,iDAAiD;oBACjD,QAAQ,EAAE;wBACR;4BACE,IAAI,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC;4BAC/D,QAAQ,EAAE,KAAK;4BACf,YAAY,EAAE,OAAO,CAAC,oBAAoB;4BAC1C,KAAK,EAAE,OAAO,CAAC,aAAa;4BAC5B,OAAO,EAAE,OAAO,CAAC,WAAW;4BAE5B,CAAC,EAAE,QAAQ;4BACX,CAAC,EACC,gCAAgC,CAC9B,sCAAsC,CACvC,GAAG,WAAW;gCACb,CAAC,CAAC,QAAQ;gCACV,CAAC,CAAC,EAAE;4BACR,CAAC,EACC,gCAAgC,CAC9B,sCAAsC,CACvC,GAAG,WAAW;gCACb,CAAC,CAAC,QAAQ;gCACV,CAAC,CAAC,EAAE;4BACR,CAAC,EACC,gCAAgC,CAC9B,sCAAsC,CACvC,GAAG,WAAW;gCACb,CAAC,CAAC,QAAQ;gCACV,CAAC,CAAC,EAAE;4BACR,CAAC,EACC,gCAAgC,CAC9B,sCAAsC,CACvC,GAAG,WAAW;gCACb,CAAC,CAAC,QAAQ;gCACV,CAAC,CAAC,EAAE;4BAER,CAAC,EACC,gCAAgC,CAC9B,sCAAsC,CACvC,GAAG,WAAW;gCACb,CAAC,CAAC,QAAQ;gCACV,CAAC,CAAC,EAAE;4BACR,CAAC,EACC,gCAAgC,CAC9B,sCAAsC,CACvC,GAAG,WAAW;gCACb,CAAC,CAAC,QAAQ;gCACV,CAAC,CAAC,EAAE;yBAmBT;qBACF;iBACF,CAAC;gBACF,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC5C,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aACjC;iBAAM,IAAI,OAAO,CAAC,WAAW,IAAI,CAAC,EAAE;gBACnC,mBAAmB;gBACnB,MAAM,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;gBACjD,MAAM,WAAW,GACf,+BAA+B,CAAC,GAAG,OAAO,CAAC,oBAAoB,EAAE,CAAC,CAAC;gBACrE,MAAM,IAAI,GAAG;oBACX,IAAI,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC;oBAC/D,iDAAiD;oBACjD,QAAQ,EAAE;wBACR;4BACE,IAAI,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC;4BAC/D,QAAQ,EAAE,KAAK;4BACf,YAAY,EAAE,OAAO,CAAC,oBAAoB;4BAC1C,KAAK,EAAE,OAAO,CAAC,aAAa;4BAC5B,OAAO,EAAE,OAAO,CAAC,WAAW;4BAE5B,CAAC,EAAE,QAAQ;4BACX,CAAC,EACC,+BAA+B,CAC7B,sCAAsC,CACvC,GAAG,WAAW;gCACb,CAAC,CAAC,QAAQ;gCACV,CAAC,CAAC,EAAE;4BACR,CAAC,EACC,+BAA+B,CAC7B,sCAAsC,CACvC,GAAG,WAAW;gCACb,CAAC,CAAC,QAAQ;gCACV,CAAC,CAAC,EAAE;4BACR,CAAC,EACC,+BAA+B,CAC7B,sCAAsC,CACvC,GAAG,WAAW;gCACb,CAAC,CAAC,QAAQ;gCACV,CAAC,CAAC,EAAE;4BACR,CAAC,EACC,+BAA+B,CAC7B,sCAAsC,CACvC,GAAG,WAAW;gCACb,CAAC,CAAC,QAAQ;gCACV,CAAC,CAAC,EAAE;4BAER,CAAC,EACC,+BAA+B,CAC7B,sCAAsC,CACvC,GAAG,WAAW;gCACb,CAAC,CAAC,QAAQ;gCACV,CAAC,CAAC,EAAE;4BACR,CAAC,EACC,+BAA+B,CAC7B,sCAAsC,CACvC,GAAG,WAAW;gCACb,CAAC,CAAC,QAAQ;gCACV,CAAC,CAAC,EAAE;yBAmBT;qBACF;iBACF,CAAC;gBACF,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC5C,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aACjC;iBAAM,IAAI,OAAO,CAAC,WAAW,IAAI,CAAC,EAAE;gBACnC,kBAAkB;gBAClB,MAAM,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;gBACjD,MAAM,WAAW,GACf,8BAA8B,CAAC,GAAG,OAAO,CAAC,oBAAoB,EAAE,CAAC,CAAC;gBACpE,MAAM,IAAI,GAAG;oBACX,IAAI,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC;oBAC/D,iDAAiD;oBACjD,QAAQ,EAAE;wBACR;4BACE,IAAI,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC;4BAC/D,QAAQ,EAAE,KAAK;4BACf,YAAY,EAAE,OAAO,CAAC,oBAAoB;4BAC1C,KAAK,EAAE,OAAO,CAAC,aAAa;4BAC5B,OAAO,EAAE,OAAO,CAAC,WAAW;4BAE5B,CAAC,EAAE,QAAQ;4BACX,CAAC,EACC,8BAA8B,CAC5B,sCAAsC,CACvC,GAAG,WAAW;gCACb,CAAC,CAAC,QAAQ;gCACV,CAAC,CAAC,EAAE;4BACR,CAAC,EACC,8BAA8B,CAC5B,sCAAsC,CACvC,GAAG,WAAW;gCACb,CAAC,CAAC,QAAQ;gCACV,CAAC,CAAC,EAAE;4BACR,CAAC,EACC,8BAA8B,CAC5B,sCAAsC,CACvC,GAAG,WAAW;gCACb,CAAC,CAAC,QAAQ;gCACV,CAAC,CAAC,EAAE;4BACR,CAAC,EACC,8BAA8B,CAC5B,sCAAsC,CACvC,GAAG,WAAW;gCACb,CAAC,CAAC,QAAQ;gCACV,CAAC,CAAC,EAAE;4BAER,CAAC,EACC,8BAA8B,CAC5B,sCAAsC,CACvC,GAAG,WAAW;gCACb,CAAC,CAAC,QAAQ;gCACV,CAAC,CAAC,EAAE;4BACR,CAAC,EACC,8BAA8B,CAC5B,sCAAsC,CACvC,GAAG,WAAW;gCACb,CAAC,CAAC,QAAQ;gCACV,CAAC,CAAC,EAAE;yBAmBT;qBACF;iBACF,CAAC;gBACF,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC5C,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aACjC;iBAAM,IAAI,OAAO,CAAC,WAAW,IAAI,CAAC,EAAE;gBACnC,sBAAsB;gBACtB,MAAM,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;gBACjD,MAAM,WAAW,GACf,iCAAiC,CAAC,GAAG,OAAO,CAAC,oBAAoB,EAAE,CAAC,CAAC;gBACvE,MAAM,IAAI,GAAG;oBACX,IAAI,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC;oBAC/D,iDAAiD;oBACjD,QAAQ,EAAE;wBACR;4BACE,IAAI,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC;4BAC/D,QAAQ,EAAE,KAAK;4BACf,YAAY,EAAE,OAAO,CAAC,oBAAoB;4BAC1C,KAAK,EAAE,OAAO,CAAC,aAAa;4BAC5B,OAAO,EAAE,OAAO,CAAC,WAAW;4BAE5B,CAAC,EAAE,QAAQ;4BACX,CAAC,EACC,iCAAiC,CAC/B,sCAAsC,CACvC,GAAG,WAAW;gCACb,CAAC,CAAC,QAAQ;gCACV,CAAC,CAAC,EAAE;4BACR,CAAC,EACC,iCAAiC,CAC/B,sCAAsC,CACvC,GAAG,WAAW;gCACb,CAAC,CAAC,QAAQ;gCACV,CAAC,CAAC,EAAE;4BACR,CAAC,EACC,iCAAiC,CAC/B,sCAAsC,CACvC,GAAG,WAAW;gCACb,CAAC,CAAC,QAAQ;gCACV,CAAC,CAAC,EAAE;4BACR,CAAC,EACC,iCAAiC,CAC/B,sCAAsC,CACvC,GAAG,WAAW;gCACb,CAAC,CAAC,QAAQ;gCACV,CAAC,CAAC,EAAE;4BAER,CAAC,EACC,iCAAiC,CAC/B,sCAAsC,CACvC,GAAG,WAAW;gCACb,CAAC,CAAC,QAAQ;gCACV,CAAC,CAAC,EAAE;4BACR,CAAC,EACC,iCAAiC,CAC/B,sCAAsC,CACvC,GAAG,WAAW;gCACb,CAAC,CAAC,QAAQ;gCACV,CAAC,CAAC,EAAE;4BACR,CAAC,EACC,iCAAiC,CAC/B,sCAAsC,CACvC,GAAG,WAAW;gCACb,CAAC,CAAC,QAAQ;gCACV,CAAC,CAAC,EAAE;4BACR,CAAC,EACC,iCAAiC,CAC/B,sCAAsC,CACvC,GAAG,WAAW;gCACb,CAAC,CAAC,QAAQ;gCACV,CAAC,CAAC,EAAE;4BACR,CAAC,EACC,iCAAiC,CAC/B,sCAAsC,CACvC,IAAI,WAAW;gCACd,CAAC,CAAC,QAAQ;gCACV,CAAC,CAAC,EAAE;yBACT;qBACF;iBACF,CAAC;gBACF,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC5C,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aACjC;iBAAM,IAAI,OAAO,CAAC,WAAW,IAAI,CAAC,EAAE;gBACnC,yBAAyB;gBACzB,MAAM,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;gBACjD,4EAA4E;gBAE5E,MAAM,IAAI,GAAG;oBACX,IAAI,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC;oBAC/D,iDAAiD;oBACjD,QAAQ,EAAE;wBACR;4BACE,QAAQ,EAAE,KAAK;4BACf,IAAI,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC;4BAC/D,OAAO,EAAE,OAAO,CAAC,WAAW;4BAC5B,8CAA8C;4BAC9C,KAAK,EAAE,OAAO,CAAC,aAAa;yBAC7B;qBACF;iBACF,CAAC;gBACF,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC5C,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aACjC;QACH,CAAC,EAAE;IACL,CAAC;IACD,cAAc;QACZ,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,cAAc,CAAC,CAAC;IAC5C,CAAC;IAED,kBAAkB,CAAC,KAAa,EAAE,OAAe;QAC/C,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACnB,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,CAAC;QACjC,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,uJAAiC,EAAE;YACpE,KAAK,EAAE,OAAO;YACd,QAAQ,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE;YACrC,IAAI,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE;SAC5C,CAAC,CAAC;IACL,CAAC;IAED,YAAY,CAAC,OAAO;QAClB,IAAI,OAAO,IAAI,WAAW,EAAE;YAC1B,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,cAAc,CAAC,CAAC;SAC3C;QACD,IAAI,IAAI,CAAC,SAAS,KAAK,OAAO,EAAE;YAC9B,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC;SAC1B;aAAM;YACL,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;SACrB;IACH,CAAC;IAED,WAAW;QACT,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;IACtB,CAAC;IACD,IAAI,CAAC,KAAa;QAChB,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAC1B,IAAI,CAAC,WAAW,EAAE,CAAC;IACrB,CAAC;IAED,aAAa,CAAC,GAAG,GAAG,EAAE;QACpB,+BAA+B;QAC/B,uBAAuB;QACvB,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IACzB,CAAC;IAED,oBAAoB,CAAC,KAAa;QAChC,sBAAsB;QACtB,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;QAC/C,sBAAsB;QACtB,oBAAoB;QACpB,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;IAC1B,CAAC;IACD,8BAA8B,CAAC,KAAa;QAC1C,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC;QAChD,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;IAC1B,CAAC;IACD,iCAAiC,CAAC,KAAa;QAC7C,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,8BAA8B,CAAC,KAAK,CAAC,CAAC;QAC5D,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;IAC1B,CAAC;IACD,gCAAgC,CAAC,KAAa;QAC5C,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,6BAA6B,CAAC,KAAK,CAAC,CAAC;QAC3D,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;IAC1B,CAAC;IACD,+BAA+B,CAAC,KAAa;QAC3C,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,4BAA4B,CAAC,KAAK,CAAC,CAAC;QAC1D,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;IAC1B,CAAC;IACD,8BAA8B,CAAC,KAAa;QAC1C,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,2BAA2B,CAAC,KAAK,CAAC,CAAC;QACzD,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;IAC1B,CAAC;IAED,iCAAiC,CAAC,KAAa;QAC7C,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,8BAA8B,CAAC,KAAK,CAAC,CAAC;QAC5D,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;IAC1B,CAAC;;gFA/vBU,gBAAgB;gGAAhB,gBAAgB;;;;;;QC/J7B,yEACE;QAAA,yEAEE;QAAA,yEACE;QAAA,uEAA4D;QAAxD,mIAAS,iBAAa,WAAW,CAAC,IAAC;QAAqB,8EAC1D;QAAA,8DACE;QADF,yEACE;QAAA,qEACA;QAAA,4DAAM;QAER,4DAAW;QACX,+DAAc;QAAd,2EAAc;QAAA,oEAAS;QAAA,4DAAQ;QACjC,4DAAI;QACN,4DAAM;QACN,yEACE;QAAA,wEAAyD;QAAtD,oIAAS,iBAAa,QAAQ,CAAC,IAAC;QAAsB,+EACvD;QAAA,6EACA;QAAA,4DAAW;QACX,4EAAc;QAAA,kEAAM;QAAA,4DAAQ;QAC9B,4DAAI;QACN,4DAAM;QACN,0EACE;QAAA,wEAAyD;QAAtD,oIAAS,iBAAa,SAAS,CAAC,IAAC;QAAqB,gFACvD;QAAA,8DACE;QADF,0EACE;QAAA,uEACA;QAAA,4DAAM;QAER,4DAAW;QACX,+DAAc;QAAd,4EAAc;QAAA,oEAAQ;QAAA,4DAAQ;QAChC,4DAAI;QACN,4DAAM;QACN,0EACE;QAAA,wEAA2D;QAAvD,oIAAS,iBAAa,UAAU,CAAC,IAAC;QAAqB,gFACzD;QAAA,8DACE;QADF,0EACE;QAAA,uEACA;QAAA,4DAAM;QACR,4DAAW;QACX,+DAAc;QAAd,4EAAc;QAAA,oEAAQ;QAAA,4DAAQ;QAChC,4DAAI;QACN,4DAAM;QACN,2EACE;QAAA,wEAA6D;QAA1D,oIAAS,iBAAa,aAAa,CAAC,IAAC;QAAqB,+EAC3D;QAAA,kEACA;QAAA,4DAAW;QACX,4EAAc;QAAA,uEAAW;QAAA,4DAAQ;QACnC,4DAAI;QACN,4DAAM;QAQN,0EACE;QAAA,wEAAkE;QAA/D,oIAAS,SAAK,0BAA0B,CAAC,IAAC;QAAqB,4EAChE;QAAA,gFACA;QAAA,4DAAW;QACX,4EAAc;QAAA,sEAAU;QAAA,4DAAQ;QAClC,4DAAI;QACN,4DAAM;QACR,4DAAM;QAKR,4DAAM;QAIN,iIAEA;QAIA,kIACA;QAyJA,kIACE;QA0HF,mIACE;QAuJF,kIACE;;QAtfwD,0DAAsC;QAAtC,mGAAsC;QAkElF,2DAAgC;QAAhC,8FAAgC;QAMhC,0DAA6B;QAA7B,2FAA6B;QA0J7B,0DAA8B;QAA9B,4FAA8B;QA2H9B,0DAA+B;QAA/B,6FAA+B;QAwJ/B,0DAAkC;QAAlC,gGAAkC;i2oGD5WlC;YACV,mEAAO,CAAC,UAAU,EAAE;gBAClB,sEAAU,CAAC,QAAQ,EAAE;oBACnB,wEAAY,CAAC,gEAAoB,EAAE;wBACjC,MAAM,oBACD,eAAe,CACnB;qBACF,CAAC;iBACH,CAAC;gBACF,sEAAU,CAAC,QAAQ,EAAE;oBACnB,wEAAY,CAAC,iEAAqB,EAAE;wBAClC,MAAM,oBACD,eAAe,CACnB;qBACF,CAAC;iBACH,CAAC;aACH,CAAC;SACH;6FAEU,gBAAgB;cAvB5B,uDAAS;eAAC;gBACT,QAAQ,EAAE,cAAc;gBACxB,WAAW,EAAE,2BAA2B;gBACxC,SAAS,EAAE,CAAC,2BAA2B,CAAC;gBACxC,UAAU,EAAE;oBACV,mEAAO,CAAC,UAAU,EAAE;wBAClB,sEAAU,CAAC,QAAQ,EAAE;4BACnB,wEAAY,CAAC,gEAAoB,EAAE;gCACjC,MAAM,oBACD,eAAe,CACnB;6BACF,CAAC;yBACH,CAAC;wBACF,sEAAU,CAAC,QAAQ,EAAE;4BACnB,wEAAY,CAAC,iEAAqB,EAAE;gCAClC,MAAM,oBACD,eAAe,CACnB;6BACF,CAAC;yBACH,CAAC;qBACH,CAAC;iBACH;aACF;6lBAayB,cAAc;kBAArC,uDAAS;mBAAC,WAAW;;;;;;;;;;;;;;AE3KxB;AAAA;AAAA;;GAEG;AACI,MAAM,YAAY,GAAG;IAC1B,SAAS,EAAE,YAAY;IACvB,KAAK,EAAE,YAAY;IACnB,aAAa,EAAE,gBAAgB;IAC/B,OAAO,EAAE,iBAAiB;IAC1B,GAAG,EAAE,KAAK;IACV,IAAI,EAAE,MAAM;IACZ,UAAU,EAAE,cAAc;IAC1B,eAAe,EAAE,mBAAmB;IACpC,WAAW,EAAE,eAAe;IAC5B,YAAY,EAAE,gBAAgB;IAC9B,WAAW,EAAE,eAAe;IAC5B,cAAc,EAAE,kBAAkB;IAClC,SAAS,EAAE,aAAa;IACxB,SAAS,EAAE,YAAY;IACvB,aAAa,EAAE,gBAAgB;IAC/B,iBAAiB,EAAE,oBAAoB;IACvC,YAAY,EAAE,eAAe;IAC7B,eAAe,EAAE,kBAAkB;IACnC,oBAAoB,EAAE,yBAAyB;IAC/C,UAAU,EAAE,YAAY;IACxB,YAAY,EAAE,eAAe;CAC9B,CAAC;;;;;;;;;;;;;ACzBF;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAyC;AACM;AACQ;AAEA;AACgB;AACZ;AACa;AACjB;AACQ;AACN;AACU;AAEM;AACZ;AACI;AACD;AACP;AACF;AACU;AACK;AACQ;AACrB;AACA;AACE;AACE;AACF;AACW;AACN;AACT;AACM;AACJ;AACF;AACM;AACA;AAC7D,oEAAoE;AACF;AACL;AACN;;AAgGhD,MAAM,wBAAwB;;uGAAxB,wBAAwB;0KAAxB,wBAAwB,mBAPxB;QACT;YACE,OAAO,EAAE,sEAAY;YACrB,QAAQ,EAAE,EAAE;SACb;KACF,YA3FQ;YACP,4DAAY;YACZ,oFAAqB;YACrB,wEAAe;YACf,qFAAqB;YACrB,oEAAa;YACb,4EAAiB;YACjB,sEAAc;YACd,iFAAmB;YACnB,yEAAe;YACf,2EAAgB;YAChB,+EAAkB;YAClB,8EAAiB;YACjB,oEAAa;YACb,uEAAc;YACd,qEAAa;YACb,oEAAa;YACb,+EAAkB;YAClB,oFAAoB;YACpB,4FAAwB;YACxB,uEAAc;YACd,uEAAe;YACf,yEAAe;YACf,2EAAgB;YAChB,yEAAe;YACf,oFAAoB;YACpB,8EAAiB;YACjB,qEAAa;YACb,2EAAgB;YAChB,uEAAc;YACd,qEAAa;YACb,2EAAgB;YAChB,2EAAgB;YAChB,uEAAc;YACd,+EAAkB;YAClB,4FAAwB;YACxB,qEAAa;YACb,uEAAc;YACd,qEAAa;YAEb,uBAAuB;YACvB,2EAAmB;YACnB,gFAAkB;SACnB,EAGC,wEAAe;QACf,qFAAqB;QACrB,oEAAa;QACb,4EAAiB;QACjB,sEAAc;QACd,iFAAmB;QACnB,yEAAe;QACf,2EAAgB;QAChB,+EAAkB;QAClB,8EAAiB;QACjB,oEAAa;QACb,uEAAc;QACd,qEAAa;QACb,oEAAa;QACb,+EAAkB;QAClB,oFAAoB;QACpB,4FAAwB;QACxB,uEAAc;QACd,uEAAe;QACf,yEAAe;QACf,2EAAgB;QAChB,yEAAe;QACf,oFAAoB;QACpB,8EAAiB;QACjB,qEAAa;QACb,2EAAgB;QAChB,uEAAc;QACd,qEAAa;QACb,2EAAgB;QAChB,2EAAgB;QAChB,uEAAc;QACd,+EAAkB;QAClB,4FAAwB;QACxB,qEAAa;QACb,uEAAc;QACd,oFAAqB;QACrB,uBAAuB;QACvB,2EAAmB;QACnB,gFAAkB;mIAST,wBAAwB,cA5FjC,4DAAY;QACZ,oFAAqB;QACrB,wEAAe;QACf,qFAAqB;QACrB,oEAAa;QACb,4EAAiB;QACjB,sEAAc;QACd,iFAAmB;QACnB,yEAAe;QACf,2EAAgB;QAChB,+EAAkB;QAClB,8EAAiB;QACjB,oEAAa;QACb,uEAAc;QACd,qEAAa;QACb,oEAAa;QACb,+EAAkB;QAClB,oFAAoB;QACpB,4FAAwB;QACxB,uEAAc;QACd,uEAAe;QACf,yEAAe;QACf,2EAAgB;QAChB,yEAAe;QACf,oFAAoB;QACpB,8EAAiB;QACjB,qEAAa;QACb,2EAAgB;QAChB,uEAAc;QACd,qEAAa;QACb,2EAAgB;QAChB,2EAAgB;QAChB,uEAAc;QACd,+EAAkB;QAClB,4FAAwB;QACxB,qEAAa;QACb,uEAAc;QACd,qEAAa;QAEb,uBAAuB;QACvB,2EAAmB;QACnB,gFAAkB,aAIlB,wEAAe;QACf,qFAAqB;QACrB,oEAAa;QACb,4EAAiB;QACjB,sEAAc;QACd,iFAAmB;QACnB,yEAAe;QACf,2EAAgB;QAChB,+EAAkB;QAClB,8EAAiB;QACjB,oEAAa;QACb,uEAAc;QACd,qEAAa;QACb,oEAAa;QACb,+EAAkB;QAClB,oFAAoB;QACpB,4FAAwB;QACxB,uEAAc;QACd,uEAAe;QACf,yEAAe;QACf,2EAAgB;QAChB,yEAAe;QACf,oFAAoB;QACpB,8EAAiB;QACjB,qEAAa;QACb,2EAAgB;QAChB,uEAAc;QACd,qEAAa;QACb,2EAAgB;QAChB,2EAAgB;QAChB,uEAAc;QACd,+EAAkB;QAClB,4FAAwB;QACxB,qEAAa;QACb,uEAAc;QACd,oFAAqB;QACrB,uBAAuB;QACvB,2EAAmB;QACnB,gFAAkB;6FAST,wBAAwB;cA9FpC,sDAAQ;eAAC;gBACR,OAAO,EAAE;oBACP,4DAAY;oBACZ,oFAAqB;oBACrB,wEAAe;oBACf,qFAAqB;oBACrB,oEAAa;oBACb,4EAAiB;oBACjB,sEAAc;oBACd,iFAAmB;oBACnB,yEAAe;oBACf,2EAAgB;oBAChB,+EAAkB;oBAClB,8EAAiB;oBACjB,oEAAa;oBACb,uEAAc;oBACd,qEAAa;oBACb,oEAAa;oBACb,+EAAkB;oBAClB,oFAAoB;oBACpB,4FAAwB;oBACxB,uEAAc;oBACd,uEAAe;oBACf,yEAAe;oBACf,2EAAgB;oBAChB,yEAAe;oBACf,oFAAoB;oBACpB,8EAAiB;oBACjB,qEAAa;oBACb,2EAAgB;oBAChB,uEAAc;oBACd,qEAAa;oBACb,2EAAgB;oBAChB,2EAAgB;oBAChB,uEAAc;oBACd,+EAAkB;oBAClB,4FAAwB;oBACxB,qEAAa;oBACb,uEAAc;oBACd,qEAAa;oBAEb,uBAAuB;oBACvB,2EAAmB;oBACnB,gFAAkB;iBACnB;gBACD,YAAY,EAAE,EAAE;gBAChB,OAAO,EAAE;oBACP,wEAAe;oBACf,qFAAqB;oBACrB,oEAAa;oBACb,4EAAiB;oBACjB,sEAAc;oBACd,iFAAmB;oBACnB,yEAAe;oBACf,2EAAgB;oBAChB,+EAAkB;oBAClB,8EAAiB;oBACjB,oEAAa;oBACb,uEAAc;oBACd,qEAAa;oBACb,oEAAa;oBACb,+EAAkB;oBAClB,oFAAoB;oBACpB,4FAAwB;oBACxB,uEAAc;oBACd,uEAAe;oBACf,yEAAe;oBACf,2EAAgB;oBAChB,yEAAe;oBACf,oFAAoB;oBACpB,8EAAiB;oBACjB,qEAAa;oBACb,2EAAgB;oBAChB,uEAAc;oBACd,qEAAa;oBACb,2EAAgB;oBAChB,2EAAgB;oBAChB,uEAAc;oBACd,+EAAkB;oBAClB,4FAAwB;oBACxB,qEAAa;oBACb,uEAAc;oBACd,oFAAqB;oBACrB,uBAAuB;oBACvB,2EAAmB;oBACnB,gFAAkB;iBACnB;gBACD,SAAS,EAAE;oBACT;wBACE,OAAO,EAAE,sEAAY;wBACrB,QAAQ,EAAE,EAAE;qBACb;iBACF;aACF;;;;;;;;;;;;;;ACrID;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAyD;AACG;AAEgB;AACxC;AAEkD;;;;;AAItF,IAAK,oBAUJ;AAVD,WAAK,oBAAoB;IACvB,iFAAyD;IACzD,uFAA+D;IAC/D,0FAAkE;IAClE,sFAA8D;IAC9D,mFAA2D;IAC3D,6EAAqD;IACrD,qEAA6C;IAC7C,iFAAyD;IACzD,mFAA2D;AAC7D,CAAC,EAVI,oBAAoB,KAApB,oBAAoB,QAUxB;AACD,IAAK,qBAUJ;AAVD,WAAK,qBAAqB;IACxB,8EAAqD;IACrD,kFAAyD;IACzD,iFAAwD;IACxD,mGAA0E;IAC1E,kFAAyD;IACzD,oFAA2D;IAC3D,oFAA2D;IAC3D,+FAAsE;IACtE,+EAAsD;AACxD,CAAC,EAVI,qBAAqB,KAArB,qBAAqB,QAUzB;AACD,IAAY,iCAUX;AAVD,WAAY,iCAAiC;IAC3C,2GAAsE;IACtE,8FAAyD;IACzD,6FAAwD;IACxD,+GAA0E;IAC1E,8FAAyD;IACzD,gGAA2D;IAC3D,gGAA2D;IAC3D,2GAAsE;IACtE,2FAAsD;AACxD,CAAC,EAVW,iCAAiC,KAAjC,iCAAiC,QAU5C;AACD,IAAY,gCAOX;AAPD,WAAY,gCAAgC;IAC1C,yGAAqE;IACrE,6FAAyD;IACzD,4FAAwD;IACxD,qGAAiE;IACjE,sGAAkE;IAClE,0FAAsD;AACxD,CAAC,EAPW,gCAAgC,KAAhC,gCAAgC,QAO3C;AACD,IAAY,+BAOX;AAPD,WAAY,+BAA+B;IACzC,uGAAoE;IACpE,4FAAyD;IACzD,2FAAwD;IACxD,oGAAiE;IACjE,qGAAkE;IAClE,yFAAsD;AACxD,CAAC,EAPW,+BAA+B,KAA/B,+BAA+B,QAO1C;AACD,IAAY,8BAOX;AAPD,WAAY,8BAA8B;IACxC,qGAAmE;IACnE,2FAAyD;IACzD,0FAAwD;IACxD,wFAAsD;IACtD,qGAAmE;IACnE,wFAAsD;AACxD,CAAC,EAPW,8BAA8B,KAA9B,8BAA8B,QAOzC;AACD,IAAY,iCAUX;AAVD,WAAY,iCAAiC;IAC3C,2GAAsE;IACtE,8FAAyD;IACzD,6FAAwD;IACxD,+GAA0E;IAC1E,8FAAyD;IACzD,gGAA2D;IAC3D,gGAA2D;IAC3D,2GAAsE;IACtE,2FAAsD;AACxD,CAAC,EAVW,iCAAiC,KAAjC,iCAAiC,QAU5C;AACD,IAAK,2BAUJ;AAVD,WAAK,2BAA2B;IAC9B,yFAA4D;IAC5D,yGAA4E;IAC5E,+GAAkF;IAClF,oGAAuE;IACvE,kGAAqE;IACrE,2FAA8D;IAC9D,2FAA8D;IAC9D,+FAAkE;IAClE,iGAAoE;AACtE,CAAC,EAVI,2BAA2B,KAA3B,2BAA2B,QAU/B;AACD,IAAK,gCAUJ;AAVD,WAAK,gCAAgC;IACnC,4FAA0D;IAC1D,wHAAsF;IACtF,8HAA4F;IAC5F,8EAA4C;IAC5C,8EAA4C;IAC5C,8EAA4C;IAC5C,8EAA4C;IAC5C,8EAA4C;IAC5C,8EAA4C;AAC9C,CAAC,EAVI,gCAAgC,KAAhC,gCAAgC,QAUpC;AACD,IAAK,4CAUJ;AAVD,WAAK,4CAA4C;IAC/C,yGAA2D;IAC3D,iIAAmF;IACnF,2IAA6F;IAC7F,yFAA2C;IAC3C,yFAA2C;IAC3C,yFAA2C;IAC3C,yFAA2C;IAC3C,yFAA2C;IAC3C,yFAA2C;AAC7C,CAAC,EAVI,4CAA4C,KAA5C,4CAA4C,QAUhD;AACD,IAAK,2CAOJ;AAPD,WAAK,2CAA2C;IAC9C,0GAA6D;IAC7D,2HAA8E;IAC9E,4IAA+F;IAC/F,wFAA2C;IAC3C,wFAA2C;IAC3C,wFAA2C;AAC7C,CAAC,EAPI,2CAA2C,KAA3C,2CAA2C,QAO/C;AACD,IAAK,0CAOJ;AAPD,WAAK,0CAA0C;IAC7C,wGAA4D;IAC5D,kHAAsE;IACtE,0IAA8F;IAC9F,uFAA2C;IAC3C,uFAA2C;IAC3C,uFAA2C;AAC7C,CAAC,EAPI,0CAA0C,KAA1C,0CAA0C,QAO9C;AACD,IAAK,yCAOJ;AAPD,WAAK,yCAAyC;IAC5C,sGAA2D;IAC3D,gIAAqF;IACrF,wIAA6F;IAC7F,sFAA2C;IAC3C,sFAA2C;IAC3C,sFAA2C;AAC7C,CAAC,EAPI,yCAAyC,KAAzC,yCAAyC,QAO7C;AAED,IAAK,4CAUJ;AAVD,WAAK,4CAA4C;IAC/C,4GAA8D;IAC9D,2HAA6E;IAC7E,8IAAgG;IAChG,yFAA2C;IAC3C,yFAA2C;IAC3C,yFAA2C;IAC3C,yFAA2C;IAC3C,yFAA2C;IAC3C,yFAA2C;AAC7C,CAAC,EAVI,4CAA4C,KAA5C,4CAA4C,QAUhD;AACD;;;;GAIG;AAEH,MAAM,yBAAyB,GAAG,EAAE,CAAC,CAAC,UAAU;AAChD,MAAM,cAAc,GAAG,KAAK,CAAC,CAAC,QAAQ;AACtC,MAAM,SAAS,GAAG,YAAY,CAAC;AAKxB,MAAM,qBAAqB;IAqBhC,YACS,MAAiB,EAChB,QAAqB,EACrB,MAAc;QAFf,WAAM,GAAN,MAAM,CAAW;QAChB,aAAQ,GAAR,QAAQ,CAAa;QACrB,WAAM,GAAN,MAAM,CAAQ;QAvBxB,eAAU,GAAG,KAAK,CAAC;QACnB,6BAAwB,GAAG,KAAK,CAAC;QACjC,kBAAa,GAAG,IAAI,0DAAY,EAAW,CAAC;QAC5C,gBAAW,GAAG,IAAI,4CAAO,EAAW,CAAC;QACrC,iBAAY,GAAG,IAAI,4CAAO,EAAW,CAAC;QACtC,eAAU,GAAG,IAAI,4CAAO,EAAW,CAAC;QAEpC,mBAAc,GAAG,IAAI,0DAAY,EAAW,CAAC;QAC7C,eAAU,GAAG,IAAI,4CAAO,EAAW,CAAC;QACpC,gBAAW,GAAG,IAAI,4CAAO,EAAW,CAAC;QACrC,iBAAY,GAAG,IAAI,4CAAO,EAAU,CAAC;QACrC,qBAAgB,GAAG,IAAI,4CAAO,EAAO,CAAC;QACtC,oBAAe,GAAG;YAChB,SAAS,EAAE,mBAAmB;YAC9B,SAAS,EAAE,gBAAgB;YAC3B,SAAS,EAAE,wBAAwB;YACnC,SAAS,EAAE,0CAA0C;YACrD,SAAS,EAAE,gDAAgD;YAC3D,SAAS,EAAE,qCAAqC;SACjD,CAAC;QAMA,IAAI,CAAC,KAAK,EAAE,CAAC;QACb,IAAI,CAAC,YAAY,EAAE,CAAC;QACpB,IAAI,CAAC,YAAY,EAAE,CAAC;IACtB,CAAC;IAED,4BAA4B;IACrB,aAAa;QAClB,OAAO,QAAQ,CAAC,YAAY,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,EAAE,CAAC,CAAC;IACvD,CAAC;IACM,aAAa,CAAC,UAAkB;QACrC,YAAY,CAAC,OAAO,CAAC,SAAS,EAAE,UAAU,CAAC,QAAQ,EAAE,CAAC,CAAC;IACzD,CAAC;IAED,YAAY;QACV,QAAQ,CAAC,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;QAC5D,QAAQ,CAAC,IAAI,CAAC,gBAAgB,CAAC,WAAW,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;QAChE,QAAQ,CAAC,IAAI,CAAC,gBAAgB,CAAC,UAAU,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;QAC/D,QAAQ,CAAC,IAAI,CAAC,gBAAgB,CAAC,SAAS,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;QAC9D,QAAQ,CAAC,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;QAC5D,QAAQ,CAAC,IAAI,CAAC,gBAAgB,CAAC,UAAU,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;IACjE,CAAC;IAED,KAAK;QACH,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;IACjC,CAAC;IAED,YAAY;QACV,WAAW,CAAC,GAAG,EAAE;YACf,IAAI,CAAC,KAAK,EAAE,CAAC;QACf,CAAC,EAAE,cAAc,CAAC,CAAC;IACrB,CAAC;IAED,KAAK;QACH,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,MAAM,QAAQ,GACZ,IAAI,CAAC,aAAa,EAAE,GAAG,yBAAyB,GAAG,EAAE,GAAG,IAAI,CAAC;QAC/D,MAAM,IAAI,GAAG,QAAQ,GAAG,GAAG,CAAC;QAC5B,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,CAAC;QAE3B,IAAI,SAAS,EAAE;YACb,IAAI,IAAI,CAAC,cAAc,EAAE,EAAE;gBACzB,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,iGAAmB,EAAE;oBACtD,KAAK,EAAE,OAAO;iBAEf,CAAC,CAAC;gBAEH,SAAS,CAAC,WAAW,EAAE,CAAC,SAAS,CAAC,CAAC,MAAM,EAAE,EAAE;oBAC3C,IAAI,MAAM,EAAE;wBACV,IAAI,MAAM,CAAC,MAAM,EAAE;4BACjB,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;4BACvB,IAAI,CAAC,MAAM,EAAE,CAAC;yBACf;qBACF;oBACD,IAAI,CAAC,KAAK,EAAE,CAAC;gBACf,CAAC,CAAC,CAAC;gBAEH,0BAA0B;gBAC1B,iBAAiB;gBACjB,YAAY,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;gBACnC,YAAY,CAAC,KAAK,EAAE,CAAC;aACtB;SACF;IACH,CAAC;IAED;;OAEG;IACH,UAAU;QACR,IACE,MAAM,CAAC,cAAc,CAAC,qEAAc,CAAC,SAAS,CAAC;YAC/C,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,cAAc,CAAC,qEAAc,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,EACrE;YACA,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;YAEvB,OAAO,IAAI,CAAC;SACb;aAAM;YACL,OAAO,KAAK,CAAC;SACd;IACH,CAAC;IACD,eAAe;QACb,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YAC9C,OAAO,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC;QAC7B,CAAC,CAAC,CAAC;QACH,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;;;OAGG;IACH,qBAAqB,CAAC,IAAS;QAC7B,IAAI,MAAM,CAAC,cAAc,CAAC,qEAAc,CAAC,SAAS,CAAC,EAAE;YACnD,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAC3B,MAAM,CAAC,cAAc,CAAC,qEAAc,CAAC,SAAS,CAAC,CAChD,CAAC;YACF,+BAA+B;YAC/B,MAAM,CAAC,cAAc,CAAC,qEAAc,CAAC,SAAS,CAAC;gBAC7C,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;SAC9B;IACH,CAAC;IACD,eAAe,CAAC,GAAW,EAAE,IAAI,GAAG,IAAI;QACtC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE;YAC9B,QAAQ,EAAE,IAAI;SACf,CAAC,CAAC;IACL,CAAC;IACD,kBAAkB,CAAC,EAAU;QAC3B,MAAM,MAAM,GAAG,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACxC,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,aAAa,IAAI,EAAE,CAAC,CAAC;QAC1D,IAAI,KAAK,CAAC,WAAW,IAAI,CAAC,EAAE;YAC1B,MAAM,IAAI,GAAG,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAC;YACtE,OAAO,IAAI,CAAC;SACb;aAAM;YACL,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YACnC,OAAO,IAAI,CAAC,CAAC,CAAC,CAAC;SAChB;IACH,CAAC;IAED;;OAEG;IACH,yBAAyB;QACvB,IAAI,IAAI,CAAC,UAAU,EAAE,EAAE;YACrB,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,cAAc,CAAC,qEAAc,CAAC,YAAY,CAAC,CAAC;iBAClE,YAAY,CAAC;SACjB;aAAM;YACL,OAAO,IAAI,CAAC;SACb;IACH,CAAC;IACD,WAAW;QACT,MAAM,QAAQ,GAAG,IAAI,CAAC,yBAAyB,EAAE,CAAC;QAClD,IAAI,QAAQ,EAAE;YACZ,OAAO,QAAQ,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC;SACjD;aAAM;YACL,OAAO,IAAI,CAAC;SACb;IACH,CAAC;IACD,iBAAiB;QACf,MAAM,QAAQ,GAAG,IAAI,CAAC,yBAAyB,EAAE,CAAC;QAClD,IAAI,QAAQ,EAAE;YACZ,OAAO,QAAQ,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC;SAC9C;aAAM;YACL,OAAO,IAAI,CAAC;SACb;IACH,CAAC;IACD,eAAe,CAAC,YAAiB;QAC/B,MAAM,WAAW,GAAG,EAAE,YAAY,EAAE,YAAY,EAAE,CAAC;QACnD,MAAM,CAAC,cAAc,CAAC,qEAAc,CAAC,YAAY,CAAC;YAChD,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;QAE9B,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC7B,CAAC;IAED,0BAA0B;IAC1B,6BAA6B;IAC7B,4EAA4E;IAC5E,uBAAuB;IACvB,aAAa;IACb,mBAAmB;IACnB,MAAM;IACN,IAAI;IACJ;;OAEG;IACH,kBAAkB;QAChB,IAAI,IAAI,CAAC,UAAU,EAAE,EAAE;YACrB,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,cAAc,CAAC,qEAAc,CAAC,SAAS,CAAC,CAAC;iBAC/D,SAAS,CAAC;SACd;aAAM;YACL,OAAO,IAAI,CAAC;SACb;IACH,CAAC;IAED;;;OAGG;IACH,kBAAkB,CAAC,KAAU;QAC3B,MAAM,QAAQ,GAAG,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC;QACtC,MAAM,CAAC,cAAc,CAAC,qEAAc,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QAC3E,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QACvB,IAAI,CAAC,uBAAuB,CAAC,EAAE,CAAC,CAAC;QACjC,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;QAC7B,IAAI,CAAC,eAAe,CAAC,0DAAU,CAAC,KAAK,CAAC,CAAC,CAAC;QAExC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC7B,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC/B,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;QACtB,IAAI,CAAC,4BAA4B,CAAC,EAAE,CAAC,CAAC;QACtC,IAAI,CAAC,yBAAyB,CAAC,EAAE,CAAC,CAAC;QACnC,IAAI,CAAC,8BAA8B,CAAC,EAAE,CAAC,CAAC;QACxC,IAAI,CAAC,gCAAgC,CAAC,EAAE,CAAC,CAAC;QAC1C,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC;IAC3B,CAAC;IAED;;OAEG;IACH,cAAc;QACZ,MAAM,KAAK,GAAG,IAAI,CAAC,yBAAyB,EAAE,CAAC;QAC/C,IAAI,KAAK,EAAE;YACT,OAAO,KAAK,CAAC,WAAW,CAAC,CAAC;SAC3B;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IACD;;OAEG;IACH,gBAAgB;QACd,MAAM,KAAK,GAAG,IAAI,CAAC,yBAAyB,EAAE,CAAC;QAC/C,IAAI,KAAK,EAAE;YACT,OAAO,KAAK,CAAC,kBAAkB,CAAC,CAAC;SAClC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,uBAAuB;QACrB,IAAI,IAAI,CAAC,gBAAgB,EAAE,IAAI,IAAI,CAAC,cAAc,EAAE,EAAE;YACpD,OAAO,SAAS,CAAC;SAClB;aAAM;YACL,OAAO,WAAW,CAAC;SACpB;IACH,CAAC;IACD;;OAEG;IACH,mBAAmB;QACjB,MAAM,KAAK,GAAG,IAAI,CAAC,yBAAyB,EAAE,CAAC;QAC/C,IAAI,KAAK,EAAE;YACT,OAAO,KAAK,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,oBAAoB,CAAC;SACxD;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,qBAAqB,CAAC,SAAiB;QACrC,MAAM,KAAK,GAAG,IAAI,CAAC,yBAAyB,EAAE,CAAC;QAC/C,IAAI,KAAK,EAAE;YACT,OAAO,KAAK,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;SAC9C;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,kBAAkB;QAChB,MAAM,KAAK,GAAG,IAAI,CAAC,yBAAyB,EAAE,CAAC;QAC/C,IAAI,KAAK,EAAE;YACT,OAAO,KAAK,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,oBAAoB,CAAC;SACxD;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IACD,gBAAgB;QACd,MAAM,YAAY,GAAG,IAAI,CAAC,qBAAqB,CAAC,WAAW,CAAC,CAAC;QAC7D,MAAM,QAAQ,GAAG,IAAI,IAAI,CAAC,YAAY,CAAC,CAAC;QACxC,QAAQ,CAAC,WAAW,CAAC,QAAQ,CAAC,WAAW,EAAE,GAAG,EAAE,CAAC,CAAC;QAClD,OAAO,QAAQ,CAAC;IAClB,CAAC;IACD,iBAAiB,CAAC,YAAoB;QACpC,OAAO,2BAA2B,CAAC,YAAY,CAAC,CAAC;IACnD,CAAC;IACD,kBAAkB,CAAC,YAAoB;QACrC,OAAO,gCAAgC,CAAC,YAAY,CAAC,CAAC;IACxD,CAAC;IACD,8BAA8B,CAAC,YAAoB;QACjD,OAAO,4CAA4C,CAAC,YAAY,CAAC,CAAC;IACpE,CAAC;IACD,6BAA6B,CAAC,YAAoB;QAChD,OAAO,2CAA2C,CAAC,YAAY,CAAC,CAAC;IACnE,CAAC;IACD,4BAA4B,CAAC,YAAoB;QAC/C,OAAO,0CAA0C,CAAC,YAAY,CAAC,CAAC;IAClE,CAAC;IACD,2BAA2B,CAAC,YAAoB;QAC9C,OAAO,yCAAyC,CAAC,YAAY,CAAC,CAAC;IACjE,CAAC;IACD,8BAA8B,CAAC,YAAoB;QACjD,OAAO,4CAA4C,CAAC,YAAY,CAAC,CAAC;IACpE,CAAC;IACD;;OAEG;IACH,iBAAiB;QACf,IAAI,MAAM,CAAC,cAAc,CAAC,qEAAc,CAAC,SAAS,CAAC,EAAE;YACnD,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,cAAc,CAAC,qEAAc,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC;SAC1E;IACH,CAAC;IACD;;OAEG;IACH,gBAAgB;QACd,MAAM,KAAK,GAAG,IAAI,CAAC,yBAAyB,EAAE,CAAC;QAC/C,IAAI,KAAK,EAAE;YACT,OAAO,KAAK,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;SAC7C;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IACD,iBAAiB;QACf,MAAM,KAAK,GAAG,IAAI,CAAC,yBAAyB,EAAE,CAAC;QAC/C,IAAI,KAAK,EAAE;YACT,MAAM,cAAc,GAAG,KAAK,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,cAAc,GAAG,EAAE,CAAC;YACtE,MAAM,kBAAkB,GACtB,KAAK,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,kBAAkB,GAAG,EAAE,CAAC;YACrD,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC;SAC/C;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IACD,iBAAiB,CAAC,cAAsB,EAAE,kBAA0B;QAClE,MAAM,aAAa,GAAG,IAAI,CAAC,yBAAyB,EAAE,CAAC;QACvD,IAAI,aAAa,EAAE;YACjB,aAAa,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,cAAc,GAAG,cAAc,CAAC;YACnE,aAAa,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,kBAAkB;gBACnD,kBAAkB,CAAC;YACrB,IAAI,CAAC,eAAe,CAAC,aAAa,CAAC,CAAC;SACrC;IACH,CAAC;IACD,cAAc;QACZ,MAAM,KAAK,GAAG,IAAI,CAAC,yBAAyB,EAAE,CAAC;QAE/C,IAAI,KAAK,EAAE;YACT,OAAO,KAAK,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC;SACjD;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IACD;;;OAGG;IACH,gBAAgB;QACd,MAAM,KAAK,GAAG,IAAI,CAAC,yBAAyB,EAAE,CAAC;QAC/C,IAAI,KAAK,EAAE;YACT,OAAO,KAAK,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;SAC1E;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IACD,oBAAoB;QAClB,MAAM,KAAK,GAAG,IAAI,CAAC,yBAAyB,EAAE,CAAC;QAC/C,IAAI,KAAK,EAAE;YACT,MAAM,IAAI,GAAG,KAAK,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;YACpD,OAAO,IAAI,CAAC;SACb;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IACD;;;OAGG;IACH,iBAAiB,CAAC,KAAU;QAC1B,MAAM,QAAQ,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;QAClC,MAAM,CAAC,cAAc,CAAC,qEAAc,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QACvE,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC9B,CAAC;IAED,oBAAoB;QAClB,MAAM,QAAQ,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;QACjC,MAAM,CAAC,cAAc,CAAC,qEAAc,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QACvE,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC9B,CAAC;IAED;;;OAGG;IACH,aAAa;QACX,IAAI,IAAI,CAAC,UAAU,EAAE,EAAE;YACrB,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,cAAc,CAAC,qEAAc,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC;SACtE;aAAM;YACL,OAAO,IAAI,CAAC;SACb;IACH,CAAC;IAED;;;OAGG;IACH,qBAAqB,CAAC,WAAoB,IAAI;QAC5C,MAAM,CAAC,cAAc,CAAC,KAAK,EAAE,CAAC;QAE9B,2BAA2B;QAC3B,yCAAyC;QACzC,IAAI;IACN,CAAC;IACD;;;OAGG;IACH,uBAAuB;QACrB,IAAI,IAAI,CAAC,UAAU,EAAE,EAAE;YACrB,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,cAAc,CAAC,qEAAc,CAAC,aAAa,CAAC,CAAC;iBACnE,oBAAoB,CAAC;SACzB;aAAM;YACL,OAAO,IAAI,CAAC;SACb;IACH,CAAC;IAED,4BAA4B;;QAC1B,IAAI,IAAI,CAAC,UAAU,EAAE,EAAE;YACrB,aAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,cAAc,CAAC,qEAAc,CAAC,UAAU,CAAC,CAAC,0CAC/D,oBAAoB,CAAC;SAC1B;aAAM;YACL,OAAO,IAAI,CAAC;SACb;IACH,CAAC;IACD,6BAA6B,CAAC,OAAe;QAC3C,IAAI,IAAI,CAAC,UAAU,EAAE,EAAE;YACrB,MAAM,cAAc,GAAG,IAAI,CAAC,KAAK,CAC/B,MAAM,CAAC,cAAc,CAAC,qEAAc,CAAC,OAAO,CAAC,CAC9C,CAAC,OAAO,CAAC;YACV,IAAI,EAAE,CAAC;YACP,cAAc,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;gBACjC,IAAI,OAAO,CAAC,WAAW,IAAI,OAAO,EAAE;oBAClC,EAAE,GAAG,OAAO,CAAC,4BAA4B,CAAC;iBAC3C;YACH,CAAC,CAAC,CAAC;YACH,OAAO,EAAE,CAAC;SACX;aAAM;YACL,OAAO,IAAI,CAAC;SACb;IACH,CAAC;IACD,eAAe,CAAC,OAAe;QAC7B,IAAI,IAAI,CAAC,UAAU,EAAE,EAAE;YACrB,MAAM,cAAc,GAAG,IAAI,CAAC,KAAK,CAC/B,MAAM,CAAC,cAAc,CAAC,qEAAc,CAAC,OAAO,CAAC,CAC9C,CAAC,OAAO,CAAC;YACV,IAAI,EAAE,CAAC;YACP,cAAc,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;gBACjC,IAAI,OAAO,CAAC,WAAW,IAAI,OAAO,EAAE;oBAClC,EAAE,GAAG,OAAO,CAAC,aAAa,CAAC;iBAC5B;YACH,CAAC,CAAC,CAAC;YACH,OAAO,EAAE,CAAC;SACX;aAAM;YACL,OAAO,IAAI,CAAC;SACb;IACH,CAAC;IACD,wBAAwB;QACtB,IAAI,IAAI,CAAC,UAAU,EAAE,EAAE;YACrB,MAAM,cAAc,GAAG,IAAI,CAAC,KAAK,CAC/B,MAAM,CAAC,cAAc,CAAC,qEAAc,CAAC,OAAO,CAAC,CAC9C,CAAC,OAAO,CAAC;YACV,IAAI,EAAE,CAAC;YACP,cAAc,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;gBACjC,IAAI,OAAO,CAAC,WAAW,IAAI,CAAC,EAAE;oBAC5B,EAAE,GAAG,OAAO,CAAC,6BAA6B,CAAC;iBAC5C;YACH,CAAC,CAAC,CAAC;YACH,OAAO,EAAE,CAAC;SACX;aAAM;YACL,OAAO,IAAI,CAAC;SACb;IACH,CAAC;IACD,kBAAkB;QAChB,IAAI,IAAI,CAAC,UAAU,EAAE,EAAE;YACrB,MAAM,cAAc,GAAG,IAAI,CAAC,KAAK,CAC/B,MAAM,CAAC,cAAc,CAAC,qEAAc,CAAC,OAAO,CAAC,CAC9C,CAAC,OAAO,CAAC;YACV,IAAI,GAAG,CAAC;YACR,cAAc,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;gBACjC,IAAI,OAAO,CAAC,WAAW,IAAI,CAAC,EAAE;oBAC5B,GAAG,GAAG,OAAO,CAAC;iBACf;YACH,CAAC,CAAC,CAAC;YACH,OAAO,GAAG,CAAC;SACZ;aAAM;YACL,OAAO,IAAI,CAAC;SACb;IACH,CAAC;IACD,iCAAiC;;QAC/B,IAAI,IAAI,CAAC,UAAU,EAAE,EAAE;YACrB,aAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,cAAc,CAAC,qEAAc,CAAC,eAAe,CAAC,CAAC,0CACpE,oBAAoB,CAAC;SAC1B;aAAM;YACL,OAAO,IAAI,CAAC;SACb;IACH,CAAC;IACD,uCAAuC;;QACrC,IAAI,IAAI,CAAC,UAAU,EAAE,EAAE;YACrB,aAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,cAAc,CAAC,qEAAc,CAAC,YAAY,CAAC,CAAC,0CACjE,oBAAoB,CAAC;SAC1B;aAAM;YACL,OAAO,IAAI,CAAC;SACb;IACH,CAAC;IACD,sCAAsC;;QACpC,IAAI,IAAI,CAAC,UAAU,EAAE,EAAE;YACrB,aAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,cAAc,CAAC,qEAAc,CAAC,WAAW,CAAC,CAAC,0CAChE,oBAAoB,CAAC;SAC1B;aAAM;YACL,OAAO,IAAI,CAAC;SACb;IACH,CAAC;IACD,qCAAqC;;QACnC,IAAI,IAAI,CAAC,UAAU,EAAE,EAAE;YACrB,aAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,cAAc,CAAC,qEAAc,CAAC,WAAW,CAAC,CAAC,0CAChE,oBAAoB,CAAC;SAC1B;aAAM;YACL,OAAO,IAAI,CAAC;SACb;IACH,CAAC;IACD,wCAAwC;;QACtC,IAAI,IAAI,CAAC,UAAU,EAAE,EAAE;YACrB,aAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,cAAc,CAAC,qEAAc,CAAC,cAAc,CAAC,CAAC,0CACnE,oBAAoB,CAAC;SAC1B;aAAM;YACL,OAAO,IAAI,CAAC;SACb;IACH,CAAC;IAED;;;OAGG;IACH,iBAAiB;QACf,IAAI,IAAI,CAAC,UAAU,EAAE,EAAE;YACrB,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,cAAc,CAAC,qEAAc,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC;SAC1E;aAAM;YACL,OAAO,IAAI,CAAC;SACb;IACH,CAAC;IAED;;;OAGG;IACH,uBAAuB,CAAC,IAAI;QAC1B,MAAM,QAAQ,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;QACnC,MAAM,CAAC,cAAc,CAAC,qEAAc,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QACzE,IAAI,CAAC,aAAa,EAAE,CAAC;IACvB,CAAC;IACD;;;OAGG;IACH,UAAU,CAAC,GAAG;QACZ,MAAM,QAAQ,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC;QAClC,MAAM,CAAC,cAAc,CAAC,qEAAc,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;IACvE,CAAC;IAED;;;OAGG;IACH,iBAAiB,CAAC,CAAU;QAC1B,MAAM,QAAQ,GAAG,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;QAC7B,MAAM,CAAC,cAAc,CAAC,qEAAc,CAAC,oBAAoB,CAAC;YACxD,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;IAC7B,CAAC;IACD;;;OAGG;IACH,iBAAiB;QACf,IAAI,IAAI,CAAC,UAAU,EAAE,EAAE;YACrB,OAAO,IAAI,CAAC,KAAK,CACf,MAAM,CAAC,cAAc,CAAC,qEAAc,CAAC,oBAAoB,CAAC,CAC3D,CAAC,IAAI,CAAC;SACR;aAAM;YACL,OAAO,IAAI,CAAC;SACb;IACH,CAAC;IAED;;;OAGG;IACH,sBAAsB,CAAC,GAAG;QACxB,MAAM,QAAQ,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC;QAClC,MAAM,CAAC,cAAc,CAAC,qEAAc,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;IACxE,CAAC;IACD;;;OAGG;IACH,UAAU;QACR,IAAI,IAAI,CAAC,UAAU,EAAE,EAAE;YACrB,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,cAAc,CAAC,qEAAc,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC;SACtE;aAAM;YACL,OAAO,IAAI,CAAC;SACb;IACH,CAAC;IACD;;;OAGG;IACH,sBAAsB;QACpB,IAAI,IAAI,CAAC,UAAU,EAAE,EAAE;YACrB,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,cAAc,CAAC,qEAAc,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC;SACvE;aAAM;YACL,OAAO,IAAI,CAAC;SACb;IACH,CAAC;IAED,aAAa;QACX,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACjC,CAAC;IAED,uBAAuB,CAAC,KAAK;QAC3B,MAAM,oBAAoB,GAAG,IAAI,CAAC,uBAAuB,EAAE,CAAC;QAE5D,MAAM,cAAc,GAAG,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAEhD,MAAM,cAAc,GAAG,EAAE,CAAC;QAC1B,cAAc,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;YACjC,IAAI,OAAO,CAAC,wBAAwB,KAAK,oBAAoB,EAAE;gBAC7D,OAAO,CAAC,oBAAoB,GAAG,oBAAoB,CAAC,GAAG,KAAK,EAAE,CAAC,CAAC;gBAChE,OAAO,CAAC,8BAA8B,GAAG,KAAK,CAAC;aAChD;YACD,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC/B,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,uBAAuB,CAAC,cAAc,CAAC,CAAC;QAC7C,kCAAkC;IACpC,CAAC;IACD,4BAA4B,CAAC,KAAK;QAChC,MAAM,oBAAoB,GAAG,IAAI,CAAC,4BAA4B,EAAE,CAAC;QAEjE,MAAM,cAAc,GAAG,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAEhD,MAAM,cAAc,GAAG,EAAE,CAAC;QAC1B,cAAc,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;YACjC,IAAI,OAAO,CAAC,wBAAwB,KAAK,oBAAoB,EAAE;gBAC7D,OAAO,CAAC,oBAAoB,GAAG,qBAAqB,CAAC,GAAG,KAAK,EAAE,CAAC,CAAC;gBACjE,OAAO,CAAC,8BAA8B,GAAG,KAAK,CAAC;aAChD;YACD,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC/B,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,uBAAuB,CAAC,cAAc,CAAC,CAAC;QAC7C,kCAAkC;IACpC,CAAC;IACD,wCAAwC,CAAC,KAAK;QAC5C,MAAM,oBAAoB,GAAG,IAAI,CAAC,iCAAiC,EAAE,CAAC;QAEtE,MAAM,cAAc,GAAG,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAEhD,MAAM,cAAc,GAAG,EAAE,CAAC;QAC1B,cAAc,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;YACjC,IAAI,OAAO,CAAC,wBAAwB,KAAK,oBAAoB,EAAE;gBAC7D,OAAO,CAAC,oBAAoB;oBAC1B,iCAAiC,CAAC,GAAG,KAAK,EAAE,CAAC,CAAC;gBAChD,OAAO,CAAC,8BAA8B,GAAG,KAAK,CAAC;aAChD;YACD,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC/B,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,uBAAuB,CAAC,cAAc,CAAC,CAAC;QAC7C,kCAAkC;IACpC,CAAC;IACD,uCAAuC,CAAC,KAAK;QAC3C,MAAM,oBAAoB,GAAG,IAAI,CAAC,uCAAuC,EAAE,CAAC;QAE5E,MAAM,cAAc,GAAG,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAEhD,MAAM,cAAc,GAAG,EAAE,CAAC;QAC1B,cAAc,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;YACjC,IAAI,OAAO,CAAC,wBAAwB,KAAK,oBAAoB,EAAE;gBAC7D,OAAO,CAAC,oBAAoB;oBAC1B,gCAAgC,CAAC,GAAG,KAAK,EAAE,CAAC,CAAC;gBAC/C,OAAO,CAAC,8BAA8B,GAAG,KAAK,CAAC;aAChD;YACD,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC/B,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,uBAAuB,CAAC,cAAc,CAAC,CAAC;QAC7C,kCAAkC;IACpC,CAAC;IAED,sCAAsC,CAAC,KAAK;QAC1C,MAAM,oBAAoB,GAAG,IAAI,CAAC,sCAAsC,EAAE,CAAC;QAE3E,MAAM,cAAc,GAAG,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAEhD,MAAM,cAAc,GAAG,EAAE,CAAC;QAC1B,cAAc,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;YACjC,IAAI,OAAO,CAAC,wBAAwB,KAAK,oBAAoB,EAAE;gBAC7D,OAAO,CAAC,oBAAoB;oBAC1B,+BAA+B,CAAC,GAAG,KAAK,EAAE,CAAC,CAAC;gBAC9C,OAAO,CAAC,8BAA8B,GAAG,KAAK,CAAC;aAChD;YACD,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC/B,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,uBAAuB,CAAC,cAAc,CAAC,CAAC;QAC7C,kCAAkC;IACpC,CAAC;IAED,qCAAqC,CAAC,KAAK;QACzC,MAAM,oBAAoB,GAAG,IAAI,CAAC,qCAAqC,EAAE,CAAC;QAE1E,MAAM,cAAc,GAAG,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAEhD,MAAM,cAAc,GAAG,EAAE,CAAC;QAC1B,cAAc,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;YACjC,IAAI,OAAO,CAAC,wBAAwB,KAAK,oBAAoB,EAAE;gBAC7D,OAAO,CAAC,oBAAoB;oBAC1B,8BAA8B,CAAC,GAAG,KAAK,EAAE,CAAC,CAAC;gBAC7C,OAAO,CAAC,8BAA8B,GAAG,KAAK,CAAC;aAChD;YACD,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC/B,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,uBAAuB,CAAC,cAAc,CAAC,CAAC;QAC7C,kCAAkC;IACpC,CAAC;IACD,wCAAwC,CAAC,KAAK;QAC5C,MAAM,oBAAoB,GACxB,IAAI,CAAC,wCAAwC,EAAE,CAAC;QAElD,MAAM,cAAc,GAAG,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAEhD,MAAM,cAAc,GAAG,EAAE,CAAC;QAC1B,cAAc,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;YACjC,IAAI,OAAO,CAAC,wBAAwB,KAAK,oBAAoB,EAAE;gBAC7D,OAAO,CAAC,oBAAoB;oBAC1B,iCAAiC,CAAC,GAAG,KAAK,EAAE,CAAC,CAAC;gBAChD,OAAO,CAAC,8BAA8B,GAAG,KAAK,CAAC;aAChD;YACD,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC/B,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,uBAAuB,CAAC,cAAc,CAAC,CAAC;QAC7C,kCAAkC;IACpC,CAAC;IACD;;;OAGG;IACH,2BAA2B,CAAC,EAAU;QACpC,MAAM,QAAQ,GAAG,EAAE,oBAAoB,EAAE,EAAE,EAAE,CAAC;QAC9C,MAAM,CAAC,cAAc,CAAC,qEAAc,CAAC,aAAa,CAAC;YACjD,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;IAC7B,CAAC;IACD,4BAA4B,CAAC,EAAU;QACrC,MAAM,QAAQ,GAAG,EAAE,oBAAoB,EAAE,EAAE,EAAE,CAAC;QAC9C,MAAM,CAAC,cAAc,CAAC,qEAAc,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;IAC9E,CAAC;IACD,iCAAiC,CAAC,EAAU;QAC1C,MAAM,QAAQ,GAAG,EAAE,oBAAoB,EAAE,EAAE,EAAE,CAAC;QAC9C,MAAM,CAAC,cAAc,CAAC,qEAAc,CAAC,eAAe,CAAC;YACnD,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;IAC7B,CAAC;IACD,sCAAsC,CAAC,EAAU;QAC/C,MAAM,QAAQ,GAAG,EAAE,oBAAoB,EAAE,EAAE,EAAE,CAAC;QAC9C,MAAM,CAAC,cAAc,CAAC,qEAAc,CAAC,WAAW,CAAC;YAC/C,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;IAC7B,CAAC;IACD,uCAAuC,CAAC,EAAU;QAChD,MAAM,QAAQ,GAAG,EAAE,oBAAoB,EAAE,EAAE,EAAE,CAAC;QAC9C,MAAM,CAAC,cAAc,CAAC,qEAAc,CAAC,YAAY,CAAC;YAChD,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;IAC7B,CAAC;IACD,qCAAqC,CAAC,EAAU;QAC9C,MAAM,QAAQ,GAAG,EAAE,oBAAoB,EAAE,EAAE,EAAE,CAAC;QAC9C,MAAM,CAAC,cAAc,CAAC,qEAAc,CAAC,WAAW,CAAC;YAC/C,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;IAC7B,CAAC;IACD,wCAAwC,CAAC,EAAU;QACjD,MAAM,QAAQ,GAAG,EAAE,oBAAoB,EAAE,EAAE,EAAE,CAAC;QAC9C,MAAM,CAAC,cAAc,CAAC,qEAAc,CAAC,cAAc,CAAC;YAClD,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;IAC7B,CAAC;IAED,oCAAoC,CAAC,EAAU;QAC7C,MAAM,QAAQ,GAAG,EAAE,oBAAoB,EAAE,EAAE,EAAE,CAAC;QAC9C,MAAM,CAAC,cAAc,CAAC,qEAAc,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;IAC7E,CAAC;IACD,oCAAoC;;QAClC,IAAI,IAAI,CAAC,UAAU,EAAE,EAAE;YACrB,aAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,cAAc,CAAC,qEAAc,CAAC,SAAS,CAAC,CAAC,0CAC9D,oBAAoB,CAAC;SAC1B;aAAM;YACL,OAAO,IAAI,CAAC;SACb;IACH,CAAC;IAED,4BAA4B,CAAC,IAAI;QAC/B,MAAM,QAAQ,GAAG,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;QACzC,MAAM,CAAC,cAAc,CAAC,qEAAc,CAAC,aAAa,CAAC;YACjD,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;IAC7B,CAAC;IACD,yBAAyB,CAAC,IAAI;QAC5B,MAAM,QAAQ,GAAG,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC;QACtC,MAAM,CAAC,cAAc,CAAC,qEAAc,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;IAC9E,CAAC;IACD,2BAA2B;;QACzB,IAAI,IAAI,CAAC,UAAU,EAAE,EAAE;YACrB,aAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,cAAc,CAAC,qEAAc,CAAC,UAAU,CAAC,CAAC,0CAC/D,UAAU,CAAC;SAChB;aAAM;YACL,OAAO,IAAI,CAAC;SACb;IACH,CAAC;IACD,8BAA8B;;QAC5B,IAAI,IAAI,CAAC,UAAU,EAAE,EAAE;YACrB,aAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,cAAc,CAAC,qEAAc,CAAC,aAAa,CAAC,CAAC,0CAClE,aAAa,CAAC;SACnB;aAAM;YACL,OAAO,IAAI,CAAC;SACb;IACH,CAAC;IAED,eAAe,CAAC,IAAI;QAClB,MAAM,QAAQ,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;QACvC,MAAM,CAAC,cAAc,CAAC,qEAAc,CAAC,YAAY,CAAC;YAChD,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;IAC7B,CAAC;IAED,eAAe;;QACb,IAAI,IAAI,CAAC,UAAU,EAAE,EAAE;YACrB,aAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,cAAc,CAAC,qEAAc,CAAC,YAAY,CAAC,CAAC,0CACjE,WAAW,CAAC;SACjB;aAAM;YACL,OAAO,IAAI,CAAC;SACb;IACH,CAAC;IACD,8BAA8B,CAAC,IAAI;QACjC,MAAM,QAAQ,GAAG,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC;QACxC,MAAM,CAAC,cAAc,CAAC,qEAAc,CAAC,eAAe,CAAC;YACnD,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;IAC7B,CAAC;IACD,gCAAgC;;QAC9B,IAAI,IAAI,CAAC,UAAU,EAAE,EAAE;YACrB,aAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,cAAc,CAAC,qEAAc,CAAC,eAAe,CAAC,CAAC,0CACpE,YAAY,CAAC;SAClB;aAAM;YACL,OAAO,IAAI,CAAC;SACb;IACH,CAAC;IAED,gCAAgC,CAAC,IAAI;QACnC,MAAM,QAAQ,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;QACpC,MAAM,CAAC,cAAc,CAAC,qEAAc,CAAC,iBAAiB,CAAC;YACrD,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;IAC7B,CAAC;IACD,kCAAkC;;QAChC,IAAI,IAAI,CAAC,UAAU,EAAE,EAAE;YACrB,aAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,cAAc,CAAC,qEAAc,CAAC,iBAAiB,CAAC,CAAC,0CACtE,QAAQ,CAAC;SACd;aAAM;YACL,OAAO,IAAI,CAAC;SACb;IACH,CAAC;IAED,YAAY,CAAC,EAAU;QACrB,MAAM,QAAQ,GAAG,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC;QACnC,MAAM,CAAC,cAAc,CAAC,qEAAc,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;IAC7E,CAAC;IACD,YAAY;;QACV,IAAI,IAAI,CAAC,UAAU,EAAE,EAAE;YACrB,aAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,cAAc,CAAC,qEAAc,CAAC,SAAS,CAAC,CAAC,0CAC9D,SAAS,CAAC;SACf;aAAM;YACL,OAAO,IAAI,CAAC;SACb;IACH,CAAC;IACD,MAAM;QACJ,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;QACvB,IAAI,CAAC,qBAAqB,EAAE,CAAC;QAC7B,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;QACxB,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC9B,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC9B,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5B,IAAI,IAAI,CAAC,eAAe,EAAE;YACxB,YAAY,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;SACpC;QACD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QAC5B,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACtB,CAAC;IAED,UAAU;QACR,MAAM,QAAQ,GAAG,IAAI,CAAC,yBAAyB,EAAE,CAAC;QAClD,IAAI,QAAQ,EAAE;YACZ,MAAM,OAAO,GAAG,IAAI,IAAI,EAAE,CAAC;YAC3B,MAAM,UAAU,GAAG,QAAQ,CAAC,GAAG,CAAC;YAChC,MAAM,WAAW,GAAG,OAAO,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC;YAC7C,MAAM,cAAc,GAAG,UAAU,GAAG,WAAW,CAAC;YAChD,MAAM,WAAW,GAAG,cAAc,GAAG,IAAI,CAAC;YAE1C,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,cAAc,EAAE,OAAO,CAAC,CAAC;YACrD,IAAI,CAAC,eAAe,GAAG,UAAU,CAAC,GAAG,EAAE;gBACrC,IAAI,CAAC,MAAM,EAAE,CAAC;gBACd,IAAI,CAAC,eAAe,CAAC,oCAAoC,EAAE,IAAI,CAAC,CAAC;YACnE,CAAC,EAAE,WAAW,CAAC,CAAC;SACjB;IACH,CAAC;IAED,OAAO,CAAC,GAAG,EAAE,gBAAiB;QAC5B,IAAI,gBAAgB,EAAE;YACpB,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,EAAE;gBAC1B,WAAW,EAAE,gBAAgB;aAC9B,CAAC,CAAC;SACJ;aAAM;YACL,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;SAC7B;QACD,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACtB,CAAC;IAED,aAAa;QACX,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACvC,CAAC;;0FAl5BU,qBAAqB;wGAArB,qBAAqB,WAArB,qBAAqB,mBAFpB,MAAM;6FAEP,qBAAqB;cAHjC,wDAAU;eAAC;gBACV,UAAU,EAAE,MAAM;aACnB;;;;;;;;;;;;;;AC/JD;AAAA;AAAA;AAAA;AAAA;AAAA;AAA2C;AACgC;AAC7B;AACF;;;AAKrC,MAAM,WAAW;IACtB,YAAoB,IAAgB;QAAhB,SAAI,GAAJ,IAAI,CAAY;IAAG,CAAC;IAExC;;;;OAIG;IACK,UAAU,CAAC,KAAK;QACtB,MAAM,aAAa,GAAG;YACpB,cAAc,EAAE,kBAAkB;YAClC,MAAM,EAAE,kBAAkB;YAC1B,aAAa,EAAE,UAAU,KAAK,EAAE;SAGjC,CAAC;QACF,OAAO,IAAI,gEAAW,CAAC,aAAa,CAAC,CAAC;IACxC,CAAC;IAED;;;;OAIG;IACK,YAAY,CAAC,KAAU;QAC7B,OAAO,uDAAU,CAAC,KAAK,CAAC,CAAC;IAC3B,CAAC;IAED;;;;;;;;OAQG;IACH,GAAG,CACD,KAAa,EACb,IAAY,EACZ,SAAqB,IAAI,+DAAU,EAAE,EACrC,UAAuB,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC;QAE7C,OAAO,IAAI,CAAC,IAAI;aACb,GAAG,CAAI,IAAI,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;aACjC,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC;IACzC,CAAC;IAED;;;;;;;;OAQG;IACH,IAAI,CACF,KAAa,EACb,IAAY,EACZ,OAAe,EAAE,EACjB,UAAuB,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC;QAE7C,MAAM,WAAW,GAAG,IAAI,YAAY,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QACvE,OAAO,IAAI,CAAC,IAAI;aACb,IAAI,CAAI,IAAI,EAAE,WAAW,EAAE,EAAE,OAAO,EAAE,CAAC;aACvC,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC;IACzC,CAAC;IAED;;;;;;;;OAQG;IACH,GAAG,CACD,KAAa,EACb,IAAY,EACZ,OAAe,EAAE,EACjB,UAAuB,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC;QAE7C,MAAM,WAAW,GAAG,IAAI,YAAY,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QACvE,OAAO,IAAI,CAAC,IAAI;aACb,GAAG,CAAI,IAAI,EAAE,WAAW,EAAE,EAAE,OAAO,EAAE,CAAC;aACtC,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC;IACzC,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,CACH,KAAa,EACb,IAAY,EACZ,OAAe,EAAE,EACjB,UAAuB,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC;QAE7C,MAAM,WAAW,GAAG,IAAI,YAAY,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QACvE,OAAO,IAAI,CAAC,IAAI;aACb,KAAK,CAAI,IAAI,EAAE,WAAW,EAAE,EAAE,OAAO,EAAE,CAAC;aACxC,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC;IACzC,CAAC;IAED;;;;;;;OAOG;IACH,MAAM,CACJ,KAAa,EACb,IAAY,EACZ,UAAuB,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC;QAE7C,OAAO,IAAI,CAAC,IAAI;aACb,MAAM,CAAI,IAAI,EAAE,EAAE,OAAO,EAAE,CAAC;aAC5B,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC;IACzC,CAAC;;sEA/HU,WAAW;8FAAX,WAAW,WAAX,WAAW,mBAFV,MAAM;6FAEP,WAAW;cAHvB,wDAAU;eAAC;gBACV,UAAU,EAAE,MAAM;aACnB;;;;;;;;;;;;;;ACPD;AAAA;AAAA;AAAA;AAAA;;;;;GAKG;AACwC;AACZ;;AAKxB,MAAM,cAAc;IAH3B;QAIS,aAAQ,GAAG,KAAK,CAAC;QACxB,kBAAa,GAAiB,IAAI,4CAAO,EAAE,CAAC;KAsC7C;IApCC;;;;OAIG;IACH,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAED;;;;OAIG;IACH,IAAI,OAAO,CAAC,KAAK;QACf,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;QACtB,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACjC,CAAC;IAED;;;;OAIG;IACH,YAAY;QACV,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;IACtB,CAAC;IAED;;;;OAIG;IACH,WAAW;QACT,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;IACvB,CAAC;;4EAvCU,cAAc;iGAAd,cAAc,WAAd,cAAc,mBAFb,MAAM;6FAEP,cAAc;cAH1B,wDAAU;eAAC;gBACV,UAAU,EAAE,MAAM;aACnB;;;;;;;;;;;;;;ACXD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAyC;AACM;AACgC;AACA;AACA;AAEP;AACG;AAC5B;AACmB;AAClE,qCAAqC;AACmC;AAEI;AACrB;AAC8B;AACgB;AACX;AAC+B;AACjC;AAC1B;;AAE9D,MAAM,UAAU,GAAG;IACjB,2FAAe;IACf,2FAAe;IACf,2FAAe;IACf,oFAAgB;IAChB,yFAAgB;IAChB,uGAAkB;IAClB,qGAAoB;CACrB,CAAC;AACF,6CAA6C;AAsBtC,MAAM,WAAW;;0FAAX,WAAW;gJAAX,WAAW,kBAbb;YACP,4DAAY;YACZ,qEAAgB;YAChB,4DAAY;YACZ,0DAAW;YACX,kEAAmB;YACnB,oFAAwB;YACxB,qEAAa;YACb,4EAAuB;SACxB,EAES,oFAAwB;mIAEvB,WAAW,mBA9BtB,2FAAe;QACf,2FAAe;QACf,2FAAe;QACf,oFAAgB;QAChB,yFAAgB;QAChB,uGAAkB;QAClB,qGAAoB,EAOlB,kGAAmB;QACnB,kHAAqB;QACrB,sIAA2B,aAG3B,4DAAY;QACZ,qEAAgB;QAChB,4DAAY;QACZ,0DAAW;QACX,kEAAmB;QACnB,oFAAwB;QACxB,qEAAa;QACb,4EAAuB,aAGf,oFAAwB,EA5BlC,2FAAe;QACf,2FAAe;QACf,2FAAe;QACf,oFAAgB;QAChB,yFAAgB;QAChB,uGAAkB;QAClB,qGAAoB;6FAwBT,WAAW;cApBvB,sDAAQ;eAAC;gBACR,YAAY,EAAE;oBACZ,GAAG,UAAU;oBACb,kGAAmB;oBACnB,kHAAqB;oBACrB,sIAA2B;iBAC5B;gBACD,OAAO,EAAE;oBACP,4DAAY;oBACZ,qEAAgB;oBAChB,4DAAY;oBACZ,0DAAW;oBACX,kEAAmB;oBACnB,oFAAwB;oBACxB,qEAAa;oBACb,4EAAuB;iBACxB;gBACD,0BAA0B;gBAC1B,OAAO,EAAE,CAAC,oFAAwB,EAAE,GAAG,UAAU,CAAC;aACnD;;;;;;;;;;;;;;ACpDD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAyC;AACM;AACQ;AAED;AACe;AACZ;AACa;AACjB;AACQ;AACN;AACU;AACR;AACE;AACI;AACD;AACP;AACF;AACU;AACK;AACQ;AACrB;AACA;AACE;AACE;AACF;AACW;AACN;AACT;AACM;AACJ;AACF;AACM;AACA;AAC3D,oEAAoE;AACJ;AACL;AACJ;;AA0FhD,MAAM,wBAAwB;;uGAAxB,wBAAwB;0KAAxB,wBAAwB,kBAvF1B;YACP,4DAAY;YACZ,oFAAqB;YACrB,wEAAe;YACf,qFAAqB;YACrB,oEAAa;YACb,4EAAiB;YACjB,sEAAc;YACd,iFAAmB;YACnB,yEAAe;YACf,2EAAgB;YAChB,+EAAkB;YAClB,8EAAiB;YACjB,oEAAa;YACb,uEAAc;YACd,qEAAa;YACb,oEAAa;YACb,+EAAkB;YAClB,oFAAoB;YACpB,4FAAwB;YACxB,uEAAc;YACd,uEAAe;YACf,yEAAe;YACf,2EAAgB;YAChB,yEAAe;YACf,oFAAoB;YACpB,8EAAiB;YACjB,qEAAa;YACb,2EAAgB;YAChB,uEAAc;YACd,qEAAa;YACb,2EAAgB;YAChB,2EAAgB;YAChB,uEAAc;YACd,+EAAkB;YAClB,4FAAwB;YACxB,qEAAa;YACb,uEAAc;YACd,uBAAuB;YACvB,2EAAmB;YACnB,gFAAkB;YAClB,qEAAa;SACd,EAGC,wEAAe;QACf,qFAAqB;QACrB,oEAAa;QACb,4EAAiB;QACjB,sEAAc;QACd,iFAAmB;QACnB,yEAAe;QACf,2EAAgB;QAChB,+EAAkB;QAClB,8EAAiB;QACjB,oEAAa;QACb,uEAAc;QACd,qEAAa;QACb,oEAAa;QACb,+EAAkB;QAClB,oFAAoB;QACpB,4FAAwB;QACxB,uEAAc;QACd,uEAAe;QACf,yEAAe;QACf,2EAAgB;QAChB,yEAAe;QACf,oFAAoB;QACpB,8EAAiB;QACjB,qEAAa;QACb,2EAAgB;QAChB,uEAAc;QACd,qEAAa;QACb,2EAAgB;QAChB,2EAAgB;QAChB,uEAAc;QACd,+EAAkB;QAClB,4FAAwB;QACxB,qEAAa;QACb,uEAAc;QACd,oFAAqB;QACrB,uBAAuB;QACvB,2EAAmB;QACnB,gFAAkB;QAClB,qEAAa;mIAGJ,wBAAwB,cAtFjC,4DAAY;QACZ,oFAAqB;QACrB,wEAAe;QACf,qFAAqB;QACrB,oEAAa;QACb,4EAAiB;QACjB,sEAAc;QACd,iFAAmB;QACnB,yEAAe;QACf,2EAAgB;QAChB,+EAAkB;QAClB,8EAAiB;QACjB,oEAAa;QACb,uEAAc;QACd,qEAAa;QACb,oEAAa;QACb,+EAAkB;QAClB,oFAAoB;QACpB,4FAAwB;QACxB,uEAAc;QACd,uEAAe;QACf,yEAAe;QACf,2EAAgB;QAChB,yEAAe;QACf,oFAAoB;QACpB,8EAAiB;QACjB,qEAAa;QACb,2EAAgB;QAChB,uEAAc;QACd,qEAAa;QACb,2EAAgB;QAChB,2EAAgB;QAChB,uEAAc;QACd,+EAAkB;QAClB,4FAAwB;QACxB,qEAAa;QACb,uEAAc;QACd,uBAAuB;QACvB,2EAAmB;QACnB,gFAAkB;QAClB,qEAAa,aAIb,wEAAe;QACf,qFAAqB;QACrB,oEAAa;QACb,4EAAiB;QACjB,sEAAc;QACd,iFAAmB;QACnB,yEAAe;QACf,2EAAgB;QAChB,+EAAkB;QAClB,8EAAiB;QACjB,oEAAa;QACb,uEAAc;QACd,qEAAa;QACb,oEAAa;QACb,+EAAkB;QAClB,oFAAoB;QACpB,4FAAwB;QACxB,uEAAc;QACd,uEAAe;QACf,yEAAe;QACf,2EAAgB;QAChB,yEAAe;QACf,oFAAoB;QACpB,8EAAiB;QACjB,qEAAa;QACb,2EAAgB;QAChB,uEAAc;QACd,qEAAa;QACb,2EAAgB;QAChB,2EAAgB;QAChB,uEAAc;QACd,+EAAkB;QAClB,4FAAwB;QACxB,qEAAa;QACb,uEAAc;QACd,oFAAqB;QACrB,uBAAuB;QACvB,2EAAmB;QACnB,gFAAkB;QAClB,qEAAa;6FAGJ,wBAAwB;cAxFpC,sDAAQ;eAAC;gBACR,OAAO,EAAE;oBACP,4DAAY;oBACZ,oFAAqB;oBACrB,wEAAe;oBACf,qFAAqB;oBACrB,oEAAa;oBACb,4EAAiB;oBACjB,sEAAc;oBACd,iFAAmB;oBACnB,yEAAe;oBACf,2EAAgB;oBAChB,+EAAkB;oBAClB,8EAAiB;oBACjB,oEAAa;oBACb,uEAAc;oBACd,qEAAa;oBACb,oEAAa;oBACb,+EAAkB;oBAClB,oFAAoB;oBACpB,4FAAwB;oBACxB,uEAAc;oBACd,uEAAe;oBACf,yEAAe;oBACf,2EAAgB;oBAChB,yEAAe;oBACf,oFAAoB;oBACpB,8EAAiB;oBACjB,qEAAa;oBACb,2EAAgB;oBAChB,uEAAc;oBACd,qEAAa;oBACb,2EAAgB;oBAChB,2EAAgB;oBAChB,uEAAc;oBACd,+EAAkB;oBAClB,4FAAwB;oBACxB,qEAAa;oBACb,uEAAc;oBACd,uBAAuB;oBACvB,2EAAmB;oBACnB,gFAAkB;oBAClB,qEAAa;iBACd;gBACD,YAAY,EAAE,EAAE;gBAChB,OAAO,EAAE;oBACP,wEAAe;oBACf,qFAAqB;oBACrB,oEAAa;oBACb,4EAAiB;oBACjB,sEAAc;oBACd,iFAAmB;oBACnB,yEAAe;oBACf,2EAAgB;oBAChB,+EAAkB;oBAClB,8EAAiB;oBACjB,oEAAa;oBACb,uEAAc;oBACd,qEAAa;oBACb,oEAAa;oBACb,+EAAkB;oBAClB,oFAAoB;oBACpB,4FAAwB;oBACxB,uEAAc;oBACd,uEAAe;oBACf,yEAAe;oBACf,2EAAgB;oBAChB,yEAAe;oBACf,oFAAoB;oBACpB,8EAAiB;oBACjB,qEAAa;oBACb,2EAAgB;oBAChB,uEAAc;oBACd,qEAAa;oBACb,2EAAgB;oBAChB,2EAAgB;oBAChB,uEAAc;oBACd,+EAAkB;oBAClB,4FAAwB;oBACxB,qEAAa;oBACb,uEAAc;oBACd,oFAAqB;oBACrB,uBAAuB;oBACvB,2EAAmB;oBACnB,gFAAkB;oBAClB,qEAAa;iBACd;aACF;;;;;;;;;;;;;;AC9HD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAkD;;;;;;;;;IC8BtC,yEAAsC;IAAA,4EAAiB;IAAA,4DAAK;;;IAC5D,yEAAwC;IAAA,uDAAiB;IAAA,4DAAK;;;IAAtB,0DAAiB;IAAjB,4FAAiB;;;IAKzD,yEAAuC;IAAA,mEAAO;IAAA,4DAAK;;;IACnD,yEAAwC;IAAA,uDAAmB;IAAA,4DAAK;;;IAAxB,0DAAmB;IAAnB,8FAAmB;;;IAK3D,yEAAuC;IAAA,wEAAY;IAAA,4DAAK;;;IACxD,yEAAwC;IAAA,uDAAiB;IAAA,4DAAK;;;IAAtB,0DAAiB;IAAjB,4FAAiB;;;IAKzD,yEAAuC;IAAA,mEAAO;IAAA,4DAAK;;;IACnD,yEAAwC;IAAA,uDAAmB;IAAA,4DAAK;;;IAAxB,0DAAmB;IAAnB,8FAAmB;;;IAG7D,oEAA4D;;;IAC5D,oEAAkE;;;IAxCxE,yEACE;IAAA,yEACE;IAAA,qEAAI;IAAA,uDAAiC;IAAA,4DAAK;IAC5C,4DAAM;IAEN,yEAEE;IAAA,4EAEE;IAOA,4EACE;IAAA,gIAAsC;IACtC,gIAAwC;IAC1C,qEAAe;IAGf,4EACE;IAAA,kIAAuC;IACvC,kIAAwC;IAC1C,qEAAe;IAGf,6EACE;IAAA,kIAAuC;IACvC,kIAAwC;IAC1C,qEAAe;IAGf,6EACE;IAAA,kIAAuC;IACvC,kIAAwC;IAC1C,qEAAe;IAEf,kIAAuD;IACvD,kIAA6D;IAC/D,4DAAQ;IACV,4DAAM;IACR,4DAAM;;;IAzCE,0DAAiC;IAAjC,8GAAiC;IAKpB,0DAA8B;IAA9B,8FAA8B;IAgC1B,2DAAmC;IAAnC,oGAAmC;IAC1C,0DAAgD;IAAhD,qGAAgD;;;IAMhE,0EACE;IAAA,yEAAsC;IAAA,wGAA6C;IAAA,4DAAK;IAC1F,4DAAM;;ADxDZ,yBAAyB;AACzB,MAAM;AACN,oBAAoB;AACpB,iCAAiC;AACjC,sBAAsB;AACtB,wBAAwB;AACxB,qBAAqB;AACrB,OAAO;AACP,MAAM;AACN,oBAAoB;AACpB,sCAAsC;AACtC,sBAAsB;AACtB,wBAAwB;AACxB,qBAAqB;AACrB,OAAO;AACP,MAAM;AACN,oBAAoB;AACpB,6DAA6D;AAC7D,uBAAuB;AACvB,wBAAwB;AACxB,qBAAqB;AACrB,OAAO;AACP,MAAM;AACN,oBAAoB;AACpB,iCAAiC;AACjC,sBAAsB;AACtB,wBAAwB;AACxB,qBAAqB;AACrB,OAAO;AACP,MAAM;AACN,oBAAoB;AACpB,sCAAsC;AACtC,sBAAsB;AACtB,wBAAwB;AACxB,qBAAqB;AACrB,OAAO;AACP,MAAM;AACN,oBAAoB;AACpB,6DAA6D;AAC7D,uBAAuB;AACvB,wBAAwB;AACxB,qBAAqB;AACrB,OAAO;AACP,KAAK;AAOE,MAAM,+BAA+B;IAO1C,YACU,WAAyB,EACzB,IAA2B,EAC3B,cAA8B;QAF9B,gBAAW,GAAX,WAAW,CAAc;QACzB,SAAI,GAAJ,IAAI,CAAuB;QAC3B,mBAAc,GAAd,cAAc,CAAgB;QATxC,qBAAgB,GAAa,CAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;QAClE,oBAAe,GAAG,EAAE,CAAC;QAGrB,kBAAa,GAAG,KAAK,CAAC;IAMnB,CAAC;IAEJ,QAAQ;QACN,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAC9C,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAC9C,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAC5C,IAAI,CAAC,wBAAwB,EAAE,CAAC;IAClC,CAAC;IAED,wBAAwB;QACtB,IAAI,CAAC,cAAc,CAAC,YAAY,EAAE,CAAC;QACnC,IAAI,CAAC,WAAW;aACb,uBAAuB,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC;aACnD,SAAS,CACR,CAAC,QAAQ,EAAE,EAAE;YACX,IAAI,CAAC,eAAe,GAAG,EAAE,CAAC;YAC1B,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;YAClC,yBAAyB;YACzB,IAAI,QAAQ,EAAE;gBACZ,IAAI,QAAQ,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,EAAE;oBAC7B,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;iBAC3B;gBACD,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;oBAChC,MAAM,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;oBACjD,MAAM,OAAO,GAAG;wBACd,IAAI,EAAE,OAAO,CAAC,6BAA6B;wBAC3C,IAAI,EAAE,cAAc,CAAC,CAAC,CAAC;wBACvB,MAAM,EAAE,OAAO,CAAC,YAAY;wBAC5B,IAAI,EAAE,OAAO,CAAC,mBAAmB;wBACjC,MAAM,EAAE,OAAO,CAAC,mBAAmB;qBACpC,CAAC;oBACF,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBACrC,CAAC,CAAC,CAAC;gBACH,IAAI,IAAI,CAAC,eAAe,CAAC,MAAM,IAAI,CAAC,EAAE;oBACpC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,+CAA+C,EAAE,IAAI,CAAC;iBACjF;aACF;QACH,CAAC,EACD,CAAC,KAAK,EAAE,EAAE;YACR,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YACnB,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;YAClC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,gCAAgC,CAAC;QAC7D,CAAC,CACF,CAAC;IACN,CAAC;IAED,MAAM;QACJ,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;QACvC,wBAAwB;QACxB,IAAI,OAAO,EAAE;YACX,wCAAwC;YACxC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,OAAO,EAAE,CAAC,CAAC;SACjC;aAAM;YACL,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,yCAAyC,CAAC;SACrE;IACH,CAAC;;8GAlEU,+BAA+B;+GAA/B,+BAA+B;QCvD5C,+EAIkB;QAKlB,6EACE;QAAA,yEACE;QAEA,4HACE;QA6CA,2HACE;QAGF,yEAEE;QAAA,4EAA8E;QAAnB,uJAAS,YAAQ,IAAC;QAAC,6EAAkB;QAAA,4DAAS;QAC7G,4DAAM;QAIR,4DAAM;QAER,4DAAU;;QAvEV,4FAAmC;QAYJ,0DAAmC;QAAnC,gGAAmC;QA8C3C,0DAAqB;QAArB,mFAAqB;;6FDJ/B,+BAA+B;cAL3C,uDAAS;eAAC;gBACT,QAAQ,EAAE,6BAA6B;gBACvC,WAAW,EAAE,0CAA0C;gBACvD,SAAS,EAAE,CAAC,0CAA0C,CAAC;aACxD;;;;;;;;;;;;;;AEtDD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAA2C;AACG;AACF;AAGe;;;;AAG3D;;GAEG;AAKI,MAAM,oBAAoB;IAC/B,YACU,WAAwB,EACxB,IAA2B;QAD3B,gBAAW,GAAX,WAAW,CAAa;QACxB,SAAI,GAAJ,IAAI,CAAuB;IAClC,CAAC;IAEJ;;;;;;OAMG;IACK,UAAU,CAAC,GAAW;QAC5B,OAAO,GAAG,wEAAW,CAAC,IAAI,IAAI,GAAG,EAAE,CAAC;IACtC,CAAC;IAED;;OAEG;IACH,aAAa,CAAC,QAAQ;QACpB,OAAO,IAAI,CAAC,WAAW;aACpB,IAAI,CAAC,EAAE,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,8BAA8B,CAAC,EAAE,EAAE,QAAQ,CAAC;aACxE,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED;;OAEG;IACH,eAAe,CAAC,QAAQ;QACtB,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CAAC,EAAE,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,8BAA8B,CAAC,EAAE,EAAE,QAAQ,CAAC;aACvE,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,uBAAuB;IACvB,kBAAkB,CAAC,KAAK,EAAE,QAAQ;QAChC,OAAO,IAAI,CAAC,WAAW;aACpB,IAAI,CACH,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAAC,sCAAsC,CAAC,GAAG,EAC7D,QAAQ,CACT;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED;;OAEG;IACH,6CAA6C;IAC7C,4BAA4B;IAC5B,YAAY;IACZ,eAAe;IACf,6EAA6E;IAC7E,QAAQ;IACR,iEAAiE;IACjE,IAAI;IAEJ,yDAAyD;IACzD,4BAA4B;IAC5B,YAAY;IACZ,eAAe;IACf,4BAA4B;IAC5B,mEAAmE;IACnE,YAAY;IACZ,QAAQ;IACR,iEAAiE;IACjE,IAAI;IAEJ;;;;OAIG;IACH,WAAW,CAAI,SAAS,GAAG,WAAW,EAAE,MAAU;QAChD,OAAO,CAAC,KAAU,EAAiB,EAAE;YACnC,MAAM,YAAY,GAAG,KAAK,CAAC,MAAM,CAAC;YAClC,IAAI,KAAK,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,CAAC,UAAU,IAAI,cAAc,EAAE;gBAC/D,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;aACpB;YACD,+DAA+D;YAC/D,6EAA6E;YAC7E,IAAI;YAEJ,OAAO,uDAAU,CAAC,KAAK,CAAC,CAAC;QAC3B,CAAC,CAAC;IACJ,CAAC;;wFAtFU,oBAAoB;uGAApB,oBAAoB,WAApB,oBAAoB,mBAFnB,MAAM;6FAEP,oBAAoB;cAHhC,wDAAU;eAAC;gBACV,UAAU,EAAE,MAAM;aACnB;;;;;;;;;;;;;;ACdD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAgE;AAEjC;AACqC;AAIuB;;;;;;;;;;;;;;AAOpF,MAAM,sBAAsB;IAsBjC,YACU,cAA8B,EAC9B,WAAyB,EAC1B,IAA2B,EAC3B,MAAiB;QAHhB,mBAAc,GAAd,cAAc,CAAgB;QAC9B,gBAAW,GAAX,WAAW,CAAc;QAC1B,SAAI,GAAJ,IAAI,CAAuB;QAC3B,WAAM,GAAN,MAAM,CAAW;QAzB1B,oBAAe,GAAG,EAAE,CAAC;QACrB,yBAAoB,GAAG,EAAE,CAAC;QAG1B,yBAAoB,GAAG,EAAE,CAAC;QAC1B,kBAAa,GAAG,EAAE,CAAC;QAOnB,kBAAa,GAAG,IAAI,4CAAO,EAAE,CAAC;QAC9B,4BAA4B;QAC5B,oBAAoB;QACpB,kBAAkB;QAClB,aAAQ,GAAE,KAAK,CAAC;IAUb,CAAC;IARJ,WAAW;QACT,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,WAAW,IAAI,EAAE,CAAC;IAC3C,CAAC;IAQD,QAAQ;QACN,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAC5C,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAC9C,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAC9C,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,yBAAyB,EAAE,CAAC;QACtD,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACxE,IAAI,CAAC,aAAa;aACf,IAAI,CAAC,mEAAY,CAAC,GAAG,CAAC,EAAE,2EAAoB,EAAE,CAAC;aAC/C,SAAS,CAAC,CAAC,KAAa,EAAE,EAAE;YAC3B,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC;QAClC,CAAC,CAAC,CAAC;QACL,IAAI,CAAC,eAAe,EAAE,CAAC;IACzB,CAAC;IACD,eAAe;QACb,IAAI,CAAC,oBAAoB,GAAG,EAAE,CAAC;QAC/B,IAAI,CAAC,cAAc,CAAC,YAAY,EAAE,CAAC;QACnC,IAAI,CAAC,WAAW;aACb,mBAAmB,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC;aAC/D,SAAS,CACR,CAAC,QAAQ,EAAE,EAAE;YACX,8BAA8B;YAC9B,yBAAyB;YACzB,IAAI,CAAC,eAAe,GAAG,EAAE,CAAC;YAC1B,IAAI,QAAQ,CAAC,IAAI,IAAI,QAAQ,CAAC,IAAI,CAAC,OAAO,EAAE;gBAC1C,yBAAyB;gBACzB,6BAA6B;gBAC7B,MAAM,mBAAmB,GAAG,EAAE,CAAC;gBAC/B,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;oBACxC,MAAM,UAAU,GAAG,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;wBACjD,OAAO,CAAC,CAAC,iBAAiB,IAAI,OAAO,CAAC,UAAU,CAAC;oBACnD,CAAC,CAAC,CAAC;oBACH,IAAI,SAAS,GAAG,kBAAkB,CAAC;oBACnC,IAAI,aAAa,GAAG,IAAI,CAAC;oBACzB,IAAI,UAAU,CAAC,qBAAqB,IAAI,CAAC,EAAE;wBACzC,MAAM,OAAO,GAAG,UAAU,CAAC,wBAAwB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;wBAC/D,mDAAmD;wBACnD,SAAS,GAAG,KAAK,CAAC;wBAClB,aAAa,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;qBAC7D;oBAED,MAAM,YAAY,GAAG;wBACnB,IAAI,EAAE,UAAU,CAAC,qBAAqB;wBACtC,SAAS,EAAE,OAAO,CAAC,mBAAmB;wBACtC,OAAO,EAAE,OAAO,CAAC,OAAO;wBACxB,WAAW,EAAE,OAAO,CAAC,WAAW;wBAChC,SAAS,EAAE,OAAO,CAAC,SAAS;wBAC5B,UAAU,EAAE,OAAO,CAAC,UAAU;wBAC9B,UAAU,EAAE,OAAO,CAAC,UAAU;wBAC9B,iDAAiD;wBACjD,kEAAkE;wBAClE,SAAS;wBACT,aAAa;qBAGd,CAAC;oBACF,mBAAmB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;oBACvC,qCAAqC;oBACrC,mCAAmC;oBACnC,WAAW;oBACX,uCAAuC;oBACvC,IAAI;oBACJ,4CAA4C;gBAC9C,CAAC,CAAC,CAAC;gBACH,8DAA8D;gBAC9D,sCAAsC;gBACtC,oCAAoC;gBACpC,MAAM,aAAa,GAAG,mBAAmB,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC;oBAC7D,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;oBAClC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;oBACrB,OAAO,CAAC,CAAC;gBACX,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;gBACxB,gCAAgC;gBAChC,8BAA8B;gBAC9B,qCAAqC;gBACrC,MAAM,mBAAmB,GAAG,EAAE,CAAC;gBAC/B,KAAK,MAAM,MAAM,IAAI,aAAa,EAAE;oBAClC,yBAAyB;oBACzB,MAAM,CAAC,GAAG,EAAE,CAAC;oBACb,aAAa,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;wBACxC,2BAA2B;wBAC3B,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;oBAClB,CAAC,CAAC,CAAC;oBACH,mBAAmB,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC,CAAC;iBACnE;gBACD,iCAAiC;gBACjC,IAAI,CAAC,eAAe,GAAG,mBAAmB,CAAC;gBAC3C,IAAI,CAAC,mBAAmB,CAAC,EAAE,CAAC,CAAC;aAC9B;YACD,mCAAmC;YACnC,qCAAqC;YACrC,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;QACpC,CAAC,EACD,CAAC,GAAG,EAAE,EAAE;YACN,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;YAClC,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;YAC1B,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,uBAAuB,CAAC;QACpD,CAAC,CACF,CAAC;IACN,CAAC;IACD,cAAc,CAAC,IAAI,EAAE,OAAe;QAClC,MAAM,CAAC,GAAG,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,OAAO,CAAC,CAAC;QACvE,MAAM,OAAO,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC;QAC1B,IAAI,IAAI,CAAC,YAAY,IAAI,CAAC,EAAE;YAC1B,IAAI,CAAC,aAAa,GAAG,EAAE,CAAC;YACxB,IAAI,CAAC,cAAc,GAAG,EAAE,CAAC;YACzB,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC,CAAC;SACxB;aAAM;YACL,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC;YACtB,IAAI,CAAC,cAAc,GAAG,OAAO,CAAC;YAC9B,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;SACxC;IACH,CAAC;IAED,WAAW,CAAC,WAAW;QACrB,IAAI,WAAW,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,EAAE;YACvC,MAAM,QAAQ,GAAG;gBACf,WAAW,EAAE,WAAW,CAAC,KAAK,CAAC,IAAI,EAAE;gBACrC,OAAO,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,OAAO;gBACtC,gDAAgD;gBAChD,SAAS,EAAE,IAAI,CAAC,SAAS;gBACzB,SAAS,EAAE,IAAI,CAAC,SAAS;aAC1B,CAAC;YACF,yBAAyB;YACzB,IAAI,CAAC,cAAc,CAAC,YAAY,EAAE,CAAC;YACnC,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC,IAAI,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,SAAS,CAC9D,CAAC,IAAI,EAAE,EAAE;gBACP,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;gBAClC,qBAAqB;gBACrB,WAAW,CAAC,KAAK,GAAG,EAAE,CAAC;gBACvB,iDAAiD;gBACjD,MAAM,YAAY,GAAG;oBACnB,IAAI,EAAE,CAAC;oBACP,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,cAAc,EAAE;oBACtC,OAAO,EAAE,QAAQ,CAAC,OAAO;oBACzB,WAAW,EAAE,QAAQ,CAAC,WAAW;oBACjC,SAAS,EAAE,CAAC;oBACZ,UAAU,EAAE,CAAC;oBACb,UAAU,EAAE,IAAI,CAAC,IAAI;oBACrB,iDAAiD;oBACjD,kEAAkE;oBAClE,SAAS,EAAE,KAAK;oBAChB,aAAa,EACX,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;iBAGlE,CAAC;gBACF,iDAAiD;gBACjD,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;gBACtC,8DAA8D;gBAC9D,mEAAmE;gBACnE,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,SAAS,CAAC,MAAM,CACtD,CAAC,EACD,CAAC,EACD,YAAY,CACb,CAAC;YACJ,CAAC,EACD,CAAC,KAAK,EAAE,EAAE;gBACR,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;gBACnB,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;gBAClC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,uBAAuB,CAAC;YACpD,CAAC,CACF,CAAC;SACH;aAAM;YACL,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,2BAA2B,CAAC;YACtD,OAAO;SACR;IACH,CAAC;IACD,kBAAkB,CAAC,KAAa;QAC9B,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACjC,CAAC;IACD,MAAM;QACJ,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,sBAAsB,EAAE,CAAC;QACnD,wBAAwB;QACxB,IAAI,OAAO,EAAE;YACX,wCAAwC;YACxC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,OAAO,EAAE,CAAC,CAAC;SACjC;aAAM;YACL,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,yCAAyC,CAAC;SACrE;IACH,CAAC;IACD,OAAO;QACL,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,uGAAwB,EAAE;YAC3D,KAAK,EAAE,OAAO;YACd,QAAQ,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE;SACtC,CAAC,CAAC;QACH,SAAS,CAAC,WAAW,EAAE,CAAC,SAAS,CAAC,CAAC,MAAM,EAAE,EAAE;YAC3C,2CAA2C;YAC3C,IAAI,MAAM,EAAE;gBACV,IAAI,CAAC,eAAe,EAAE,CAAC;aACxB;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IACO,mBAAmB,CAAC,KAAa;QACvC,sBAAsB;QACtB,MAAM,WAAW,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;QACxC,IAAI,WAAW,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,EAAE;YACjC,IAAI,CAAC,oBAAoB,GAAG,EAAE,CAAC;YAC/B,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE;gBACtC,IAAI,IAAI,CAAC;gBACT,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;oBACnC,IACE,OAAO,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,WAAW,CAAC;wBACnD,OAAO,CAAC,WAAW,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,WAAW,CAAC,EACvD;wBACA,IAAI,GAAG,IAAI,CAAC;qBACb;gBACH,CAAC,CAAC,CAAC;gBACH,IAAI,IAAI,IAAI,IAAI,EAAE;oBAChB,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;iBACxC;YACH,CAAC,CAAC,CAAC;YACH,0CAA0C;SAC3C;aAAM;YACL,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC,eAAe,CAAC;SAClD;IACH,CAAC;;4FApPU,sBAAsB;sGAAtB,sBAAsB;sJAAtB,uBAAmB;;QCdhC,yEAEE;QAAA,yEACE;QAAA,yEAEE;QAAA,yEACE;QAAA,wEAA0B;QAAA,mEAAQ;QAAA,4DAAK;QAEvC,yEACE;QAAA,yEACE;QAAA,yEACE;QAAA,oFACE;QAAA,6EACE;QAAA,gFAAiC;QAAA,kEAAM;QAAA,4DAAW;QACpD,4DAAS;QACT,wEAMA;QAAA,8EACE;QAAA,gFAAiC;QAAA,uEAAW;QAAA,4DAAW;QACzD,4DAAS;QACX,4DAAiB;QACnB,4DAAM;QACR,4DAAM;QAEN,8EACE;QAAA,4EAAU;QAAA,mEAAO;QAAA,4DAAW;QAC5B,qEACF;QAAA,4DAAS;QACX,4DAAM;QACR,4DAAM;QACR,4DAAM;QAER,4DAAM;QACN,2EACE;QAAA,2EACE;QAAA,2EAEE;QAAA,8EACE;QAD6C,+IAAS,aAAS,IAAC;QAChE,4EAAU;QAAA,gEAAI;QAAA,4DAAW;QACzB,qEACF;QAAA,4DAAS;QAET,8EAOE;QAAA,4EAA6B;QAAA,iEAAK;QAAA,4DAAO;QAAC,kEAAK;QAAA,4EAC5C;QAAA,+EAAmB;QAAA,4DACrB;QACH,4DAAS;QACT,sFACE;QAAA,8EACE;QAAA,gFAAiC;QAAA,iEAAK;QAAA,4DAAW;QACjD,wEAAM;QAAA,iEAAK;QAAA,4DAAO;QACpB,4DAAS;QACT,8EACE;QAAA,gFAAiC;QAAA,gEAAI;QAAA,4DAAW;QAChD,wEAAM;QAAA,gEAAI;QAAA,4DAAO;QACnB,4DAAS;QACT,8EACE;QAAA,gFAAiC;QAAA,kEAAM;QAAA,4DAAW;QAClD,wEAAM;QAAA,kEAAM;QAAA,4DAAO;QACrB,4DAAS;QACT,8EACE;QAAA,gFAAiC;QAAA,mEAAO;QAAA,4DAAW;QACnD,wEAAM;QAAA,oEAAQ;QAAA,4DAAO;QACvB,4DAAS;QACT,8EACE;QAAA,gFAAiC;QAAA,kEAAM;QAAA,4DAAW;QAClD,wEAAM;QAAA,iEAAK;QAAA,4DAAO;QACpB,4DAAS;QACX,4DAAW;QAeb,4DAAM;QACR,4DAAM;QAEN,2EACE;QAAA,2EAA6B;QAE7B,2EACE;QAAA,8EAOE;QAAA,4EAAU;QAAA,+EAAmB;QAAA,4DAAW;QAC1C,4DAAS;QACT,sFACE;QAAA,8EAAsB;QAAA,sEAAU;QAAA,4DAAS;QACzC,8EAAsB;QAAA,uEAAW;QAAA,4DAAS;QAC1C,8EAAsB;QAAA,wEAAY;QAAA,4DAAS;QAC7C,4DAAW;QACb,4DAAM;QAEN,2EACE;QAAA,8EAOE;QAAA,iEAAI;QAAA,4EAAU;QAAA,+EAAmB;QAAA,4DAAW;QAC9C,4DAAS;QACX,4DAAM;QACN,2EACE;QAAA,8EAME;QAAA,oEAAO;QAAA,4EAAU;QAAA,+EAAmB;QAAA,4DAAW;QACjD,4DAAS;QACX,4DAAM;QACN,2EACE;QAAA,8EAKE;QAAA,wEAAW;QAAA,4EAAU;QAAA,+EAAmB;QAAA,4DAAW;QACrD,4DAAS;QACX,4DAAM;QACR,4DAAM;QAEN,2EACE;QAAA,2EACE;QAAA,2EACE;QAAA,wEAAM;QAAA,8DAAE;QAAA,4DAAO;QACjB,4DAAM;QACN,2EAEE;QAAA,2EACE;QAAA,2EAA6B;QAC/B,4DAAM;QAEN,2EACE;QAAA,iFAA8B;QAAA,wEAAW;QAAA,4DAAY;QACrD,4EAAmB;QAAA,8DAAC;QAAA,4DAAM;QAE5B,4DAAM;QACN,4EACE;QAAA,kFAA8B;QAAA,6EAAgB;QAAA,4DAAY;QAC1D,8EACG;QAAA,2IAEH;QAAA,4DAAY;QACd,4DAAM;QACN,4EACE;QAAA,8EAAW;QAAA,iFAAoB;QAAA,4DAAY;QAC7C,4DAAM;QAEN,4EACE;QAAA,4EACE;QAAA,+EACE;QAAA,6EAAU;QAAA,uEAAU;QAAA,4DAAW;QACjC,4DAAS;QACX,4DAAM;QAEN,4EACE;QAAA,+EACE;QAAA,6EAAU;QAAA,oEAAO;QAAA,4DAAW;QAC9B,4DAAS;QACT,+EACE;QAAA,6EAAU;QAAA,4EAAe;QAAA,4DAAW;QACtC,4DAAS;QACT,+EACE;QAAA,6EAAU;QAAA,kEAAK;QAAA,4DAAW;QAC5B,4DAAS;QACT,+EACE;QAAA,6EAAU;QAAA,mEAAM;QAAA,4DAAW;QAC7B,4DAAS;QACX,4DAAM;QACR,4DAAM;QACR,4DAAM;QACR,4DAAM;QACR,4DAAM;QACN,4EACE;QAAA,4EACE;QAAA,4EACE;QAAA,yEAAM;QAAA,+DAAE;QAAA,4DAAO;QACjB,4DAAM;QACN,4EAEE;QAAA,4EACE;QAAA,4EAA6B;QAC/B,4DAAM;QAEN,4EACE;QAAA,kFAA8B;QAAA,wEAAW;QAAA,4DAAY;QACrD,4EAAmB;QAAA,8DAAC;QAAA,4DAAM;QAE5B,4DAAM;QACN,4EACE;QAAA,kFAA8B;QAAA,6EAAgB;QAAA,4DAAY;QAC1D,8EACG;QAAA,2IAEH;QAAA,4DAAY;QACd,4DAAM;QACN,4EACE;QAAA,8EAAW;QAAA,iFAAoB;QAAA,4DAAY;QAC7C,4DAAM;QAEN,4EACE;QAAA,4EACE;QAAA,+EACE;QAAA,6EAAU;QAAA,uEAAU;QAAA,4DAAW;QACjC,4DAAS;QACX,4DAAM;QAEN,4EACE;QAAA,+EACE;QAAA,6EAAU;QAAA,oEAAO;QAAA,4DAAW;QAC9B,4DAAS;QACT,+EACE;QAAA,6EAAU;QAAA,4EAAe;QAAA,4DAAW;QACtC,4DAAS;QACT,+EACE;QAAA,6EAAU;QAAA,kEAAK;QAAA,4DAAW;QAC5B,4DAAS;QACT,+EACE;QAAA,6EAAU;QAAA,mEAAM;QAAA,4DAAW;QAC7B,4DAAS;QACX,4DAAM;QACR,4DAAM;QACR,4DAAM;QACR,4DAAM;QACR,4DAAM;QACN,4EACE;QAAA,4EACE;QAAA,4EACE;QAAA,yEAAM;QAAA,+DAAE;QAAA,4DAAO;QACjB,4DAAM;QACN,4EAEE;QAAA,4EACE;QAAA,4EAA6B;QAC/B,4DAAM;QAEN,4EACE;QAAA,kFAA8B;QAAA,wEAAW;QAAA,4DAAY;QACrD,4EAAmB;QAAA,8DAAC;QAAA,4DAAM;QAE5B,4DAAM;QACN,4EACE;QAAA,kFAA8B;QAAA,6EAAgB;QAAA,4DAAY;QAC1D,8EACG;QAAA,2IAEH;QAAA,4DAAY;QACd,4DAAM;QACN,4EACE;QAAA,8EAAW;QAAA,iFAAoB;QAAA,4DAAY;QAC7C,4DAAM;QAEN,4EACE;QAAA,4EACE;QAAA,+EACE;QAAA,6EAAU;QAAA,uEAAU;QAAA,4DAAW;QACjC,4DAAS;QACX,4DAAM;QAEN,4EACE;QAAA,+EACE;QAAA,6EAAU;QAAA,oEAAO;QAAA,4DAAW;QAC9B,4DAAS;QACT,+EACE;QAAA,6EAAU;QAAA,4EAAe;QAAA,4DAAW;QACtC,4DAAS;QACT,+EACE;QAAA,6EAAU;QAAA,kEAAK;QAAA,4DAAW;QAC5B,4DAAS;QACT,+EACE;QAAA,6EAAU;QAAA,mEAAM;QAAA,4DAAW;QAC7B,4DAAS;QACX,4DAAM;QACR,4DAAM;QACR,4DAAM;QACR,4DAAM;QACR,4DAAM;QAIN,4EACE;QAAA,4EACE;QAAA,8EAAW;QAAA,mFAAsB;QAAA,4DAAY;QAC/C,4DAAM;QACN,4EACE;QAAA,+EACE;QAAA,6EAAU;QAAA,gFAAmB;QAAA,4DAAW;QAC1C,4DAAS;QAET,8EAAW;QAAA,8DAAC;QAAA,4DAAY;QAExB,+EACE;QAAA,6EAAU;QAAA,iFAAoB;QAAA,4DAAW;QAC3C,4DAAS;QACX,4DAAM;QAEN,4EACE;QAAA,8EAAW;QAAA,2EAAc;QAAA,4DAAY;QACrC,+EAOE;QAAA,gEAAE;QAAA,6EAAU;QAAA,gFAAmB;QAAA,4DAAW;QAC5C,4DAAS;QACT,uFACE;QAAA,+EACE;QAAA,yEAAM;QAAA,8DAAC;QAAA,4DAAO;QAChB,4DAAS;QACT,+EACE;QAAA,yEAAM;QAAA,8DAAC;QAAA,4DAAO;QAChB,4DAAS;QACT,+EACE;QAAA,yEAAM;QAAA,8DAAC;QAAA,4DAAO;QAChB,4DAAS;QACT,+EACE;QAAA,yEAAM;QAAA,+DAAE;QAAA,4DAAO;QACjB,4DAAS;QACX,4DAAW;QACb,4DAAM;QACR,4DAAM;QACR,4DAAM;QACR,4DAAM;;;;;QA5VsB,0DAA4D;QAA5D,wJAA4D;QAgD9E,2DAA0B;QAA1B,kFAA0B;QAsD1B,2DAAmC;QAAnC,kFAAmC;QAiBnC,2DAAmC;QAAnC,kFAAmC;QAgNnC,4DAAgC;QAAhC,kFAAgC;;6FD5T7B,sBAAsB;cALlC,uDAAS;eAAC;gBACT,QAAQ,EAAE,oBAAoB;gBAC9B,WAAW,EAAE,iCAAiC;gBAC9C,SAAS,EAAE,CAAC,iCAAiC,CAAC;aAC/C;qZAoBC,WAAW;kBADV,0DAAY;mBAAC,eAAe,EAAE,CAAC,QAAQ,CAAC;;;;;;;;;;;;;;AEhC3C;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAkD;AACkB;;;;;;;;;;;;AAW7D,MAAM,wBAAwB;IAKnC,YACU,WAAwB,EACzB,IAA2B,EAC1B,cAA8B,EAC9B,WAAyB,EAC1B,SAAiD;QAJhD,gBAAW,GAAX,WAAW,CAAa;QACzB,SAAI,GAAJ,IAAI,CAAuB;QAC1B,mBAAc,GAAd,cAAc,CAAgB;QAC9B,gBAAW,GAAX,WAAW,CAAc;QAC1B,cAAS,GAAT,SAAS,CAAwC;IACvD,CAAC;IAEJ,QAAQ;QACN,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAC5C,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAC9C,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAC9C,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC;YAC5C,WAAW,EAAE,CAAC,EAAE,EAAE,yDAAU,CAAC,QAAQ,CAAC;YACtC,OAAO,EAAE,CAAC,EAAE,EAAE,yDAAU,CAAC,QAAQ,CAAC;YAClC,SAAS,EAAE,CAAC,IAAI,CAAC,SAAS,EAAE,yDAAU,CAAC,QAAQ,CAAC;YAChD,SAAS,EAAE,CAAC,IAAI,CAAC,SAAS,EAAE,yDAAU,CAAC,QAAQ,CAAC;SACjD,CAAC,CAAC;IACL,CAAC;IACD,QAAQ;QACN,IAAI,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE;YAChC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,yBAAyB,CAAC;YACpD,OAAO;SACR;QACD,2CAA2C;QAC3C,IAAI,CAAC,cAAc,CAAC,YAAY,EAAE,CAAC;QACnC,IAAI,CAAC,WAAW;aACb,eAAe,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC;aACvD,SAAS,CACR,CAAC,IAAI,EAAE,EAAE;YACP,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;YAClC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC7B,CAAC,EACD,CAAC,KAAK,EAAE,EAAE;YACR,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YACnB,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;YAClC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,uBAAuB,CAAC;QACpD,CAAC,CACF,CAAC;IACN,CAAC;;gGA5CU,wBAAwB;wGAAxB,wBAAwB;QCZrC,yEACI;QAAA,yEACE;QACE,mEACK;QAAA,4EAAoC;QAAA,0EAA6B;QAAA,gEAAK;QAAA,4DAAO;QAAA,4DAAS;QAC/F,4DAAM;QAEN,yEACI;QAAA,0EACI;QAAA,wFACI;QAAA,yEACI;QAAA,0EACI;QAAA,sEAAK;QAAA,wEAAY;QAAA,4DAAK;QAC1B,4DAAM;QAON,2EACI;QAAA,6EAAW;QAAA,mEAAO;QAAA,4DAAY;QAC9B,sFACI;QAAA,wEACJ;QAAA,4DAAiB;QACrB,4DAAM;QACN,2EACI;QACA,sFACI;QAAA,2EAA6H;QACjI,4DAAiB;QACrB,4DAAM;QAEN,8EAA2C;QAU/C,4DAAM;QAEV,4DAAqB;QAEzB,4DAAO;QAEX,4DAAM;QACN,2EACI;QAAA,8EAAuE;QAAA,kEAAM;QAAA,4DAAS;QACtF,2EACE;QAAA,8EAA4C;QAAA,4EAAW;QAAA,wEAAW;QAAA,4DAAW;QAAA,4DAAS;QAEtF,8EACI;QADiC,iJAAS,cAAU,IAAC;QACrD,kEACF;QAAA,4DAAS;QACf,4DAAM;QACN,4DAAM;QAEZ,4DAAM;;QArDQ,0DAA6B;QAA7B,0FAA6B;;6FDI9B,wBAAwB;cALpC,uDAAS;eAAC;gBACT,QAAQ,EAAE,uBAAuB;gBACjC,WAAW,EAAE,oCAAoC;gBACjD,SAAS,EAAE,CAAC,oCAAoC,CAAC;aAClD;;;;;;;;;;;;;;AEXD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAkD;;;;;;;;AAO3C,MAAM,wBAAwB;IAEnC,gBAAgB,CAAC;IAEjB,QAAQ;IACR,CAAC;;gGALU,wBAAwB;wGAAxB,wBAAwB;QCPrC,+EAIkB;QAElB,yEAEI;QAAA,yEACI;QAAA,yEACI;QAAA,yEAEI;QAAA,4EACI;QAAA,2EAAU;QAAA,+DAAI;QAAA,4DAAW;QAC7B,oEACA;QAAA,4DAAS;QAGT,4EACI;QAAA,2EAA6B;QAAA,iEAAK;QAAA,4DAAO;QAAC,kEAAK;QAAA,4EAAU;QAAA,+EAAmB;QAAA,4DAAW;QAC3F,4DAAS;QACT,qFACI;QAAA,6EACI;QAAA,+EAAkC;QAAA,iEAAK;QAAA,4DAAW;QAClD,wEAAM;QAAA,iEAAK;QAAA,4DAAO;QACtB,4DAAS;QACT,6EACI;QAAA,+EAAiC;QAAA,gEAAI;QAAA,4DAAW;QAChD,wEAAM;QAAA,gEAAI;QAAA,4DAAO;QACrB,4DAAS;QACT,6EACI;QAAA,+EAAiC;QAAA,kEAAM;QAAA,4DAAW;QAClD,wEAAM;QAAA,kEAAM;QAAA,4DAAO;QACvB,4DAAS;QACT,6EACI;QAAA,+EAAiC;QAAA,mEAAO;QAAA,4DAAW;QACnD,wEAAM;QAAA,oEAAQ;QAAA,4DAAO;QACzB,4DAAS;QACT,6EACI;QAAA,+EAAiC;QAAA,kEAAM;QAAA,4DAAW;QAClD,wEAAM;QAAA,iEAAK;QAAA,4DAAO;QACtB,4DAAS;QACb,4DAAW;QACf,4DAAM;QACN,2EACI;QAAA,8EACI;QAAA,2EAA6B;QAAA,mEAAO;QAAA,4DAAO;QAAC,qEAChD;QAAA,4DAAS;QACT,8EACI;QAAA,2EAA6B;QAAA,kEAAM;QAAA,4DAAO;QAAC,oEAC/C;QAAA,4DAAS;QACb,4DAAM;QAEV,4DAAM;QAEN,2EACI;QAAA,2EACI;QAAA,iFAA0B;QAAA,4EAAgB;QAAA,4DAAY;QACtD,2EACK;QAAA,4EACD;QAAA,mEACA;QAAA,8EACE;QAAA,4EAAU;QAAA,kEAAM;QAAA,4DAAW;QAC7B,4DAAS;QACX,4DAAW;QAGb,4DAAM;QAGd,4DAAM;QAIV,4DAAM;QACV,4DAAM;QArEN,4DAEI;;;QAPJ,8EAAqB;QAiBmE,0DAA0B;QAA1B,kFAA0B;;6FDXrG,wBAAwB;cALpC,uDAAS;eAAC;gBACT,QAAQ,EAAE,sBAAsB;gBAChC,WAAW,EAAE,mCAAmC;gBAChD,SAAS,EAAE,CAAC,mCAAmC,CAAC;aACjD;;;;;;;;;;;;;;AEND;AAAA;AAAA;AAAA;AAAA;AAAA;AAA0D;AACe;;;;;AAOlE,MAAM,2BAA2B;IAEtC,YACS,SAAoD,EAC3B,IAAS;QADlC,cAAS,GAAT,SAAS,CAA2C;QAC3B,SAAI,GAAJ,IAAI,CAAK;QAG3C,aAAQ,GAAG,gBAAgB,CAAC;IADxB,CAAC;IAGL,QAAQ;QACN,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO,EAAC;YACpB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC;SACnC;IAEH,CAAC;IAED,QAAQ;QACJ,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC/B,CAAC;;sGAlBU,2BAA2B,0MAI5B,wEAAe;2GAJd,2BAA2B;QCRxC,yEACI;QAAA,yEACI;QAAA,mEAA0B;QAC1B,4EACI;QAAA,0EAA6B;QAAA,gEAAK;QAAA,4DAAO;QAC7C,4DAAS;QACb,4DAAM;QAGN,yEACI;QAAA,yEACI;QAAA,wEAAkB;QAAA,4EAAiB;QAAA,4DAAK;QAC5C,gFAA8B;QAAA,wDAAwC;QAAA,4DAAY;QAEtF,4DAAM;QAEN,0EACI;QAAA,8EAA4D;QAArB,oJAAS,cAAU,IAAC;QAAC,kEAAM;QAAA,4DAAS;QAC3E,8EAAqE;QAAA,kEAAM;QAAA,4DAAS;QACxF,4DAAM;QAOV,4DAAM;QA1BN,4DACI;;QAWkC,2DAAwC;QAAxC,kHAAwC;;6FDJjE,2BAA2B;cALvC,uDAAS;eAAC;gBACT,QAAQ,EAAE,yBAAyB;gBACnC,WAAW,EAAE,sCAAsC;gBACnD,SAAS,EAAE,CAAC,sCAAsC,CAAC;aACpD;;sBAKI,oDAAM;uBAAC,wEAAe;;;;;;;;;;;;;;AEZ3B;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AASuB;AAMC;AASc;AACO;AAIM;AAEgB;AAE6B;AAClB;AAC2B;AACrC;;;;;;;;;;;;;;;;;;;;;;ICD9D,uEACE;IAAA,mGACA;IAAA,uEAA0E;IAA9C,0SAAoB,uBAAuB,KAAE;IAAC,iEAAM;IAAA,4DAAI;IACtF,4DAAI;;;IAIJ,yEACE;IAAA,uDACF;IAAA,4DAAK;;;IADH,0DACF;IADE,gHACF;;;IAiGY,uEACA;;;IAAgC,uEAAsG;;;;;IAzFpJ,2EAKE;IAHA,4TAAuB;IAGvB,0EACE;IAAA,0EACE;IAAA,qEAAI;IAAA,2FAAgC;IAAA,4DAAK;IAC3C,4DAAM;IACN,0EACE;IAAA,0EACE;IAAA,0EACE;IAAA,0EACE;IAAA,gFAAqC;IAAA,sEAAU;IAAA,4DAAY;IAC3D,sFACC;IAAA,wEAKC;IAOF,4DAAiB;IAqBnB,4DAAM;IACR,4DAAM;IACN,2EACE;IAAA,2EACE;IAAA,iFAAqC;IAAA,uEAAW;IAAA,4DAAY;IAC5D,sFACA;IAAA,wEAKA;IAAA,4DAAiB;IAoBnB,4DAAM;IACR,4DAAM;IACR,4DAAM;IACN,2EACE;IAAA,2EACE;IAAA,2EACE;IAAA,iFAAqC;IAAA,wEAAY;IAAA,4DAAY;IAC7D,sFAEE;IAAA,2HACA;IAAA,mNAAgC;IAGhC,gFAAoB;IAAA,iEAAK;IAAA,4DAAW;IACtC,4DAAiB;IA0CnB,4DAAM;IACR,4DAAM;IACN,2EACE;IAAA,2EACE;IAAA,iFAAqC;IAAA,iEAAK;IAAA,4DAAY;IACtD,sFACC;IAAA,6EAMC;IAFE,4TAAwB;IAJ3B,4DAMC;IAAA,gFAAoB;IAAA,iEAAK;IAAA,4DAAW;IACtC,4DAAiB;IAqBnB,4DAAM;IACR,4DAAM;IACR,4DAAM;IACN,2EAEE;IAAA,2EACE;IAAA,2EACE;IAAA,iFAAqC;IAAA,0EAAc;IAAA,4DAAY;IAC/D,sFAGD;IAAA,6EAUG;IALE,iUAAsB,OAAO,aAAU,2QAChB,QAAQ,aADQ;IAL5C,4DAUG;IAAA,wFAIyB;IACzB,uFAA0C;IAC5C,4DAAiB;IAWnB,4DAAM;IACR,4DAAM;IACN,2EACE;IAAA,2EACE;IAAA,iFAAqC;IAAA,kEAAM;IAAA,4DAAY;IACvD,uFAIE;IAAA,wFAA4B;IAAA,gEAAI;IAAA,4DAAmB;IACnD,wFAA4B;IAAA,kEAAM;IAAA,4DAAmB;IACvD,4DAAkB;IAWpB,4DAAM;IACR,4DAAM;IACR,4DAAM;IACN,2EAGE;IAAA,2EACE;IAAA,2EACE;IAAA,iFAAqC;IAAA,0FAA8B;IAAA,4DAAY;IAC/E,sFACE;IAAA,kFAKE;IAJA,sVAAoB;IAIpB,kFACG;IAAA,mEAAO;IAAA,4DACT;IACD,kFACG;IAAA,oEAAQ;IAAA,4DACV;IACD,kFACG;IAAA,wEAAY;IAAA,4DACd;IACH,4DAAa;IAWf,4DAAiB;IACnB,4DAAM;IACR,4DAAM;IAEN,2EACE;IAAA,2EACE;IAAA,iFAAqC;IAAA,+FAAmC;IAAA,4DAAY;IACpF,uFAIE;IAAA,wFAAiC;IAAA,uEAAW;IAAA,4DAAmB;IAC/D,wFAAkC;IAAA,8DAAE;IAAA,4DAAmB;IACzD,4DAAkB;IAWpB,4DAAM;IACR,4DAAM;IACR,4DAAM;IASN,2EACE;IAAA,+EAIgB;IAChB,4EACE;IAAA,8HACA;IAAA,yEAIE;IAAA,4FAA+B;IAAA,4DAChC;IAAA,8DACD;IAAA,yEAGG;IAAA,+EAAmB;IAAA,4DACrB;IACD,iEACA;IAAA,yEAGG;IAAA,0EAAc;IAAA,4DAChB;IAAA,8DACH;IAAA,4DAAO;IAWT,4DAAM;IAER,4DAAM;IAIR,4DAAM;IAEL,2EACC;IAAA,8EAIA;IAAA,sEACF;IAAA,4DAAS;IACP,8EAA6D;IAAA,6EAAiB;IAAA,4DAAS;IAEzF,4DAAM;IAiBR,4DAAO;;;;;IAhXL,6FAA6B;IAuFV,2DAA6C;IAA7C,wFAA6C;IA8FlD,2DAAyB;IAAzB,8EAAyB;IAUzB,0DAAe;IAAf,oEAAe;IAkByB,0DAAmC;IAAnC,8JAAmC;IA8B3E,2DAAoB;IAApB,kFAAoB;IAIR,0DAAiC;IAAjC,wGAAiC;IAGjC,0DAAkC;IAAlC,yGAAkC;IAGlC,0DAAsC;IAAtC,6GAAsC;IAmBZ,0DAAmC;IAAnC,8JAAmC;IAMzD,0DAAc;IAAd,uEAAc;IACd,0DAAe;IAAf,wEAAe;IA2B1C,0DAAmC;IAAnC,8JAAmC;;;IAoJlC,wEACE;IAAA,6EAKc;IAChB,qEAAe;;;IALX,0DAAiD;IAAjD,kHAAiD;;;;IAlF3D,2EAKE;IAAA,0EAEE;IAAA,0EACE;IAAA,0EACE;IAAA,qEAAI;IAAA,+EAAoB;IAAA,4DAAK;IAC/B,4DAAM;IACN,6EAKc;IAEd,0EACE;IAAA,0EACE;IAAA,0EACE;IAAA,6EAAY;IAAA,0FAA8B;IAAA,4DAAY;IACtD,sFAGE;IAAA,wEAQA;IAAA,wFAGyB;IACzB,uFAA0C;IAC5C,4DAAiB;IACnB,4DAAM;IACR,4DAAM;IACR,4DAAM;IAEN,2EAIE;IAAA,sEAAI;IAAA,iFAAqB;IAAA,4DAAK;IAChC,4DAAM;IACN,8EAMc;IACd,2EACE;IAAA,sEAAI;IAAA,0EAAc;IAAA,4DAAK;IACzB,4DAAM;IACN,2EACE;IAAA,2EACE;IAAA,2EACE;IAAA,6EACG;IAAA,qHACH;IAAA,4DAAY;IACZ,uFAKE;IAFA,0VAAqC;IAErC,wFACG;IAAA,+DAAG;IAAA,4DACL;IACD,wFAAiC;IAAA,8DAAE;IAAA,4DAAmB;IACxD,4DAAkB;IACpB,4DAAM;IACR,4DAAM;IACR,4DAAM;IAGN,yIACE;IAyCJ,4DAAM;IACR,4DAAM;IAIN,2EACE;IAAA,8EAOS;IAJP,2TAAsB;IAIxB,4DAAS;IAET,8EAOE;IAFA,gUAA2B;IAG3B,kEACF;IAAA,4DAAS;IACX,4DAAM;IACR,4DAAO;;;;IAlJL,yFAAyB;IAUnB,0DAA+C;IAA/C,+GAA+C;IAevC,0DAAyB;IAAzB,+EAAyB;IAQzB,0DAAe;IAAf,qEAAe;IAUvB,0DAA+C;IAA/C,+GAA+C;IAK/C,0DAAmD;IAAnD,mHAAmD;IA8BvC,2DAAwD;IAAxD,2HAAwD;;AD/chF,IAAK,gBAQJ;AARD,WAAK,gBAAgB;IACnB,kCAAc;IACd,iCAAa;IACb,kCAAc;IACd,2CAAuB;IACvB,iCAAa;IACb,sCAAkB;IAClB,+BAAW;AACb,CAAC,EARI,gBAAgB,KAAhB,gBAAgB,QAQpB;AACD,IAAK,YAIJ;AAJD,WAAK,YAAY;IACf,qCAAqB;IACrB,sCAAsB;IACtB,0CAA0B;AAC5B,CAAC,EAJI,YAAY,KAAZ,YAAY,QAIhB;AAOM,MAAM,iBAAiB;IA2C5B,YACU,EAAc,EACd,WAAwB,EACxB,WAAyB,EAC1B,IAA2B,EAC1B,cAA8B,EAC/B,MAAiB,CAAC,0CAA0C;;QAL3D,OAAE,GAAF,EAAE,CAAY;QACd,gBAAW,GAAX,WAAW,CAAa;QACxB,gBAAW,GAAX,WAAW,CAAc;QAC1B,SAAI,GAAJ,IAAI,CAAuB;QAC1B,mBAAc,GAAd,cAAc,CAAgB;QAC/B,WAAM,GAAN,MAAM,CAAW;QAhD1B,aAAQ,GAAG,SAAS,CAAC;QAErB,WAAM,GAAG,CAAC,CAAC;QACX,aAAQ,GAAG,KAAK,CAAC;QAMjB,cAAS,GAAG,KAAK,CAAC;QAClB,WAAM,GAAG,EAAE,CAAC;QACZ,kBAAa,GAAG,KAAK,CAAC;QACtB,iBAAY,GAAG,CAAC,CAAC;QACjB,eAAU,GAAG,EAAE,CAAC;QAGhB,eAAU,GAAG,KAAK,CAAC;QAGnB,cAAS,GAAS,IAAI,IAAI,EAAE,CAAC;QAC7B,kBAAa,GAAG,gBAAgB,CAAC;QACjC,gBAAW,GAAG,YAAY,CAAC;QAC3B,kBAAa,GAAG,IAAI,CAAC;QACX,oBAAe,GAAG,IAAI,0DAAY,EAAE,CAAC;QAG/C,cAAS,GAAG,KAAK,CAAC;QAElB,YAAO,GAAG,KAAK,CAAC;QAChB,eAAU,GAAG,KAAK,CAAC;QACnB,UAAK,GAAiB,QAAQ,CAAC;QAC/B,mBAAmB;QACnB,YAAY;QACZ,cAAc;QACd,kBAAkB;QAClB,oBAAoB;QACpB,KAAK;QACL,iBAAY,GAAG,IAAI,4CAAO,EAAE,CAAC;QAC7B,uBAAkB,GAAG,EAAE,CAAC;QACxB,cAAS,GAAG,EAAE,CAAC;QACf,YAAO,GAAG,EAAE,CAAC;QACb,oBAAe,GAAG,KAAK,CAAC;IAQrB,CAAC;IAGJ,QAAQ,CAAC,IAAY,EAAE,KAAoC;QACzD,IAAI,KAAK,CAAC,KAAK,EAAE;YACf,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,GAAG,CAAC,CAAC;YAChD,IAAI,CAAC,MAAM;gBACT,KAAK,CAAC,KAAK,CAAC,WAAW,EAAE,GAAG,GAAG,GAAG,IAAI,GAAG,GAAG,GAAG,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;SACxE;IACH,CAAC;IACD,gBAAgB,CAAC,IAAU;QACzB,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,GAAG,CAAC,CAAC;QACxC,OAAO,IAAI,CAAC,WAAW,EAAE,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;IAC/D,CAAC;IACD,QAAQ;QACN,uCAAuC;QACvC,IAAI,CAAC,eAAe,EAAE,CAAC;QACvB,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,yBAAyB,EAAE,CAAC;QAEvD,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC;QAC5C,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC;YAC5C,SAAS,EAAE,CAAC,EAAE,CAAC;YACf,SAAS,EAAE,CAAC,EAAE,EAAE,CAAC,yDAAU,CAAC,QAAQ,EAAE,yDAAU,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC;YAChE,QAAQ,EAAE,CAAC,EAAE,EAAE,CAAC,yDAAU,CAAC,QAAQ,EAAE,yDAAU,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC;YAC/D,WAAW,EAAE,CAAC,EAAE,EAAE,yDAAU,CAAC,QAAQ,CAAC;YACtC,4EAA4E;YAC5E,SAAS,EAAE,CAAC,EAAE,EAAE,yDAAU,CAAC,QAAQ,CAAC;YACpC,qHAAqH;YACrH,aAAa,EAAE,CAAC,EAAE,EAAE,CAAC,yDAAU,CAAC,QAAQ,EAAE,yDAAU,CAAC,KAAK,CAAC,CAAC;YAE5D,UAAU,EAAE,CAAC,EAAE,EAAE,yDAAU,CAAC,QAAQ,CAAC;YACrC,qBAAqB,EAAE,CAAC,EAAE,EAAE,yDAAU,CAAC,QAAQ,CAAC;YAChD,yBAAyB,EAAE,CAAC,EAAE,EAAE,yDAAU,CAAC,QAAQ,CAAC;YACpD,OAAO,EAAE,CAAC,EAAE,EAAE,yDAAU,CAAC,QAAQ,CAAC;YAClC,8BAA8B,EAAE,CAAC,YAAY,CAAC;SAC/C,CAAC,CAAC;QACH,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC;YACxC,OAAO,EAAE,CAAC,EAAE,CAAC;YACb,SAAS,EAAE,CAAC,EAAE,CAAC;YACf,SAAS,EAAE,CAAC,EAAE,CAAC;YACf,QAAQ,EAAE,CAAC,EAAE,CAAC;YACd,SAAS,EAAE,CAAC,EAAE,CAAC;YACf,UAAU,EAAE,CAAC,EAAE,CAAC;YAChB,qBAAqB,EAAE,CAAC,EAAE,CAAC;YAC3B,+BAA+B,EAAE,CAAC,EAAE,CAAC;YAErC,aAAa,EAAE,CAAC,EAAE,EAAE,yDAAU,CAAC,QAAQ,CAAC;YACxC,qBAAqB,EAAE,CAAC,MAAM,CAAC;YAC/B,WAAW,EAAE,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC;gBAClC,eAAe,EAAE,CAAC,WAAW,CAAC;gBAC9B,aAAa,EAAE,CAAC,EAAE,CAAC;gBACnB,UAAU,EAAE,CAAC,EAAE,CAAC;gBAChB,gBAAgB,EAAE,CAAC,EAAE,EAAE,yDAAU,CAAC,QAAQ,CAAC;gBAC3C,kBAAkB,EAAE,CAAC,EAAE,EAAE,yDAAU,CAAC,QAAQ,CAAC;gBAC7C,cAAc,EAAE,CAAC,EAAE,CAAC;gBACpB,WAAW,EAAE;oBACX,sCAAsC;oBACtC,yDAAU,CAAC,QAAQ;iBACpB;gBACD,SAAS,EAAE,CAAC,EAAE,EAAE,yDAAU,CAAC,QAAQ,CAAC;gBACpC,QAAQ,EAAE,CAAC,EAAE,EAAE,yDAAU,CAAC,QAAQ,CAAC;gBACnC,YAAY,EAAE,CAAC,EAAE,EAAE,yDAAU,CAAC,QAAQ,CAAC;gBACvC,oBAAoB,EAAE,CAAC,GAAG,EAAE,yDAAU,CAAC,QAAQ,CAAC;gBAChD,SAAS,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC;aAC5B,CAAC;YACF,eAAe,EAAE,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC;gBACtC,eAAe,EAAE,CAAC,WAAW,CAAC;gBAC9B,aAAa,EAAE,CAAC,EAAE,CAAC;gBACnB,UAAU,EAAE,CAAC,EAAE,CAAC;gBAChB,gBAAgB,EAAE,CAAC,EAAE,EAAE,yDAAU,CAAC,QAAQ,CAAC;gBAC3C,kBAAkB,EAAE,CAAC,EAAE,EAAE,yDAAU,CAAC,QAAQ,CAAC;gBAC7C,cAAc,EAAE,CAAC,EAAE,CAAC;gBACpB,WAAW,EAAE;oBACX,sCAAsC;oBACtC,yDAAU,CAAC,QAAQ;iBACpB;gBACD,SAAS,EAAE,CAAC,EAAE,EAAE,yDAAU,CAAC,QAAQ,CAAC;gBACpC,QAAQ,EAAE,CAAC,EAAE,EAAE,yDAAU,CAAC,QAAQ,CAAC;gBACnC,YAAY,EAAE,CAAC,EAAE,EAAE,yDAAU,CAAC,QAAQ,CAAC;gBACvC,oBAAoB,EAAE,CAAC,GAAG,CAAC;gBAC3B,SAAS,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC;aAC5B,CAAC;YACF,aAAa,EAAE,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC;gBACpC,eAAe,EAAE,CAAC,WAAW,CAAC;gBAC9B,aAAa,EAAE,CAAC,EAAE,CAAC;gBACnB,UAAU,EAAE,CAAC,EAAE,CAAC;gBAChB,gBAAgB,EAAE,CAAC,EAAE,CAAC;gBACtB,kBAAkB,EAAE,CAAC,EAAE,CAAC;gBACxB,cAAc,EAAE,CAAC,EAAE,CAAC;gBACpB,WAAW,EAAE,CAAC,sCAAsC,CAAC;gBACrD,SAAS,EAAE,CAAC,EAAE,CAAC;gBACf,QAAQ,EAAE,CAAC,EAAE,CAAC;gBACd,YAAY,EAAE,CAAC,EAAE,CAAC;gBAClB,oBAAoB,EAAE,CAAC,GAAG,CAAC;gBAC3B,SAAS,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC;aAC5B,CAAC;SACH,CAAC,CAAC;QAEH,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,aAAa,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,MAAM,EAAE,EAAE;YACxE,MAAM,WAAW,GAAG,IAAI,IAAI,EAAE,CAAC;YAC/B,MAAM,KAAK,GAAG,IAAI,IAAI,EAAE,CAAC;YACzB,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;YAEjD,IAAI,KAAK,GAAG,EAAE,EAAE;gBACd,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;gBAC3B,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,eAAe,CAAC,OAAO,EAAE,CAAC;aACrD;iBAAM;gBACL,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;gBAC1B,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,eAAe,CAAC,MAAM,EAAE,CAAC;aACpD;QACH,CAAC,CAAC,CAAC;QACH,8BAA8B;QAC9B,0BAA0B;QAC1B,IAAI;QAEJ,IAAI,QAAQ,EAAE;YACZ,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;SAC5B;QAED,IAAI,IAAI,CAAC,qBAAqB,EAAE;YAC9B,IAAI,CAAC,qBAAqB,CAAC,WAAW,EAAE,CAAC;SAC1C;QACD,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,KAAK,EAAE,EAAE;YACvE,IAAI,KAAK,EAAE;gBACT,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,CAAC;aAC9B;iBAAM;gBACL,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,yBAAyB,EAAE,CAAC;gBACzD,IAAI,UAAU,EAAE;oBACd,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;oBAC7B,mBAAmB;oBACnB,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;iBACrB;aACF;QACH,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;YACzB,IAAI,CAAC,YAAY;iBACd,IAAI,CAAC,mEAAY,CAAC,IAAI,CAAC,EAAE,2EAAoB,EAAE,CAAC;iBAChD,SAAS,CAAC,CAAC,KAAK,EAAE,EAAE;gBACnB,IAAI,CAAC,UAAU,EAAE,CAAC;YACpB,CAAC,CAAC,CAAC;SACN;IACH,CAAC;IAED,WAAW,CAAC,IAAI;QACd,MAAM,QAAQ,GAAG;YACf,SAAS,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,SAAS;YAC3C,QAAQ,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,QAAQ;YACzC,aAAa,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,aAAa;YACnD,SAAS,EAAE,IAAI,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YACrD,OAAO,EAAE,IAAI;YACb,WAAW,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,WAAW;YAC/C,UAAU,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,UAAU,GAAG,EAAE;YAClD,qBAAqB,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,qBAAqB,GAAG,EAAE;YACxE,8BAA8B,EAAE,YAAY;YAC5C,yBAAyB,EACvB,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,yBAAyB;SACnD,CAAC;QAEF,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;QAC1C,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;QAC5B,6CAA6C;QAC7C,wDAAwD;QACxD,IAAI;QACJ,2EAA2E;QAC3E,+EAA+E;QAC/E,kFAAkF;QAClF,wEAAwE;IAC1E,CAAC;IAED,MAAM;QACJ,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;QACnB,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,CAAC;IAC/B,CAAC;IAED,SAAS,CAAC,EAAE,EAAE,EAAE;QACd,IAAI,MAAM,CAAC;QACX,MAAM,GAAG,CAAC,EAAE,CAAC,WAAW,EAAE,GAAG,EAAE,CAAC,WAAW,EAAE,CAAC,GAAG,EAAE,CAAC;QACpD,MAAM,IAAI,EAAE,CAAC,QAAQ,EAAE,CAAC;QACxB,MAAM,IAAI,EAAE,CAAC,QAAQ,EAAE,CAAC;QACxB,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC;QACzB,OAAO,MAAM,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;IAClC,CAAC;IAED,IAAI,YAAY;QACd,OAAO,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC;IACvC,CAAC;IACD,IAAI,kBAAkB;QACpB,OAAO,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC;IACnC,CAAC;IAED,WAAW;;QACT,IAAI,CAAC,qBAAqB,CAAC,WAAW,EAAE,CAAC;QACzC,UAAI,CAAC,YAAY,0CAAE,WAAW,GAAG;QACjC,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;IACpC,CAAC;IAED,kBAAkB,CAAC,KAAK;QACtB,IAAI,KAAK,CAAC,KAAK,IAAI,MAAM,EAAE;YACzB,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;YAE/D,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAC,eAAe,EAAE,CAAC;YACzE,IAAI,CAAC,WAAW;iBACb,GAAG,CAAC,kCAAkC,CAAC;iBACvC,eAAe,EAAE,CAAC;YACrB,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAC,eAAe,EAAE,CAAC;YAEvE,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC,eAAe,EAAE,CAAC;YAClE,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAC,eAAe,EAAE,CAAC;YACjE,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAC,eAAe,EAAE,CAAC;YACpE,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC,eAAe,EAAE,CAAC;YAErE,IAAI,CAAC,WAAW;iBACb,GAAG,CAAC,gCAAgC,CAAC;iBACrC,sBAAsB,EAAE,CAAC;YAC5B,IAAI,CAAC,WAAW;iBACb,GAAG,CAAC,kCAAkC,CAAC;iBACvC,sBAAsB,EAAE,CAAC;YAC5B,IAAI,CAAC,WAAW;iBACb,GAAG,CAAC,8BAA8B,CAAC;iBACnC,sBAAsB,EAAE,CAAC;YAE5B,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC,sBAAsB,EAAE,CAAC;YACzE,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAC,sBAAsB,EAAE,CAAC;YACxE,IAAI,CAAC,WAAW;iBACb,GAAG,CAAC,2BAA2B,CAAC;iBAChC,sBAAsB,EAAE,CAAC;YAC5B,IAAI,CAAC,WAAW;iBACb,GAAG,CAAC,4BAA4B,CAAC;iBACjC,sBAAsB,EAAE,CAAC;YAC5B,oDAAoD;YACpD,gDAAgD;YAChD,KAAK;YACL,mBAAmB;YACnB,0CAA0C;YAC1C,4BAA4B;YAE5B,qEAAqE;YACrE,qDAAqD;SACtD;aAAM;YACL,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;YAChE,IAAI,CAAC,WAAW;iBACb,GAAG,CAAC,yBAAyB,CAAC;iBAC9B,aAAa,CAAC,yDAAU,CAAC,QAAQ,CAAC,CAAC;YACtC,IAAI,CAAC,WAAW;iBACb,GAAG,CAAC,wBAAwB,CAAC;iBAC7B,aAAa,CAAC,yDAAU,CAAC,QAAQ,CAAC,CAAC;YACtC,IAAI,CAAC,WAAW;iBACb,GAAG,CAAC,4BAA4B,CAAC;iBACjC,aAAa,CAAC,yDAAU,CAAC,QAAQ,CAAC,CAAC;YACtC,IAAI,CAAC,WAAW;iBACb,GAAG,CAAC,gCAAgC,CAAC;iBACrC,aAAa,CAAC,yDAAU,CAAC,QAAQ,CAAC,CAAC;YACtC,IAAI,CAAC,WAAW;iBACb,GAAG,CAAC,kCAAkC,CAAC;iBACvC,aAAa,CAAC,yDAAU,CAAC,QAAQ,CAAC,CAAC;YACtC,mBAAmB;YACnB,yCAAyC;YACzC,yCAAyC;YAEzC,IAAI,CAAC,WAAW;iBACb,GAAG,CAAC,2BAA2B,CAAC;iBAChC,aAAa,CAAC,yDAAU,CAAC,QAAQ,CAAC,CAAC;YACtC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,sBAAsB,EAAE,CAAC;YAC/D,mDAAmD;YACnD,oEAAoE;YACpE,oDAAoD;YACpD,mBAAmB;YACnB,0CAA0C;YAC1C,4BAA4B;YAC5B,4EAA4E;YAC5E,4EAA4E;SAC7E;IACH,CAAC;IAED,QAAQ;;QACN,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QACvB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACtB,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;QAC1B,IAAI,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE;YAChC,IACE,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,OAAO;gBAC9C,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,OAAO;gBAC7C,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,OAAO;gBAClD,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,OAAO;gBAChD,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,OAAO,EAC7C;gBACA,IAAI,CAAC,IAAI,CAAC,eAAe,CACvB,yDAAyD,CAC1D,CAAC;aACH;iBAAM;gBACL,IAAI,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,OAAO,EAAE;oBACrD,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,0CAA0C,CAAC,CAAC;iBACvE;qBAAM;oBACL,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,0BAA0B,CAAC,CAAC;iBACvD;aACF;YACD,MAAM,cAAc,GAAG,QAAQ,CAAC,sBAAsB,CAAC,YAAY,CAAC,CAAC;YACrE,MAAM,UAAU,SAAG,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,0CAAE,SAAS,CACtD,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,OAAO,IAAI,OAAO,IAAI,EAAE,CAAC,OAAO,IAAI,YAAY,CAC5D,CAAC;YACF,IAAI,UAAU,IAAI,CAAC,EAAE;gBAClB,cAAc,CAAC,UAAU,CAAiB,CAAC,KAAK,EAAE,CAAC;aACrD;YACD,OAAO;SACR;QACD,IACE,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,OAAO,IAAI,KAAK;YAC3C,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,OAAO,IAAI,EAAE,EACxC;YACA,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,yCAAyC,CAAC,CAAC;YACrE,OAAO;SACR;QACD,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAC7C,IAAI,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE;YAC9B,IAAI,CAAC,cAAc,CAAC,YAAY,EAAE,CAAC;YACnC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;YACpB,IAAI,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;gBACxB,OAAO,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,OAAO,CAAC;gBAC1C,OAAO,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,8BAA8B,CAAC;gBACjE,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC;gBAClE,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBACpE,OAAO,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,KAAK,CAAC;gBACxC,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC,MAAM;oBAChD,CAAC,CAAC,IAAI,CAAC,MAAM;oBACb,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;gBAEhE,IAAI,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE;oBAC9B,IAAI,CAAC,WAAW;yBACb,iBAAiB,CAAC,KAAK,EAAE,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC;yBACpD,SAAS,CACR,CAAC,QAAQ,EAAE,EAAE;wBACX,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;wBAClC,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;wBACrB,IAAI,QAAQ,CAAC,OAAO,EAAE;4BACpB,gCAAgC;4BAEhC,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,yBAAyB,EAAE,CAAC;4BAC5D,aAAa,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,SAAS;gCACvC,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,SAAS,CAAC;4BACvC,aAAa,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,QAAQ;gCACtC,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,QAAQ,CAAC;4BACtC,aAAa,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,aAAa;gCAC3C,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,aAAa,CAAC;4BAC3C,aAAa,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,SAAS;gCACvC,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,SAAS,CAAC;4BACvC,aAAa,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,WAAW;gCACzC,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,WAAW,CAAC;4BACzC,aAAa,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,UAAU;gCACxC,CAAC,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,UAAU,CAAC;4BACzC,aAAa,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,qBAAqB;gCACnD,CAAC,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,qBAAqB,CAAC;4BACpD,aAAa,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,yBAAyB;gCACvD,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,yBAAyB,CAAC;4BACvD,aAAa,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,QAAQ;gCACtC,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,SAAS;oCACpC,GAAG;oCACH,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,QAAQ,CAAC;4BACtC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,aAAa,CAAC,CAAC;yBAC1C;oBACH,CAAC,EACD,CAAC,GAAG,EAAE,EAAE;wBACN,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;wBACjB,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;wBAClC,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;wBACrB,+BAA+B;wBAC/B,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;oBACjD,CAAC,CACF,CAAC;iBACL;qBAAM;oBACL,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;oBAClC,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;oBAErB,IAAI,CAAC,WAAW;yBACb,wBAAwB,CAAC,KAAK,EAAE,EAAC,SAAS,EAAE,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,SAAS,EAAC,CAAC;yBAClF,SAAS,CAAC,CAAC,QAAQ,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC;iBACjC;gBACD,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;gBACnC,IAAI,CAAC,UAAU,EAAE,CAAC;gBAClB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC;gBAC5C,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,WAAW,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;gBAC9D,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,eAAe,CAAC,SAAS;oBAC9C,IAAI,CAAC,SAAS,CAAC;gBACjB,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,aAAa,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;gBAChE,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC;aAC3C;iBAAM;gBACL,wDAAwD;gBACxD,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC,MAAM;oBAChD,CAAC,CAAC,IAAI,CAAC,MAAM;oBACb,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;gBAChE,iHAAiH;gBACjH,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,SAAS,CACpE,CAAC,QAAQ,EAAE,EAAE;oBACX,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;oBAClC,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;oBACrB,IAAI,QAAQ,CAAC,OAAO,EAAE;wBACpB,IAAI,CAAC,IAAI,CAAC,eAAe,CACvB,0DAA0D,CAC3D,CAAC;wBACF,MAAM,KAAK,GAAG,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,KAAK,CAAC;wBAC9D,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,CAAC;wBAC7B,MAAM,GAAG,GAAG,mDAAmD,KAAK,YAAY,CAAC;wBACjF,MAAM,MAAM,GAAG,kBAAkB,CAAC;wBAElC,IAAI,CAAC,qBAAqB,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;qBAChD;gBACH,CAAC,EACD,CAAC,GAAG,EAAE,EAAE;oBACN,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;oBAClC,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;oBACrB,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;oBAC1B,IAAI,GAAG,CAAC,KAAK,CAAC,OAAO,KAAK,uBAAuB,EAAE;wBACjD,IAAI,CAAC,IAAI,CAAC,eAAe,CACvB,yCAAyC,CAC1C,CAAC;wBACF,IAAI,CAAC,UAAU,CAAC,mBAAmB,CAAC,CAAC;qBACtC;yBAAM,IAAI,GAAG,CAAC,KAAK,CAAC,OAAO,KAAK,aAAa,EAAE;wBAC9C,MAAM,GAAG,GACP,uDAAuD;4BACvD,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,KAAK;4BAC/C,wFAAwF,CAAC;wBAC3F,MAAM,MAAM,GAAG,kBAAkB,CAAC;wBAClC,IAAI,CAAC,qBAAqB,CACxB,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,KAAK,EAC/C,MAAM,EACN,GAAG,CACJ,CAAC;qBACH;yBAAM;wBACL,6BAA6B;wBAC7B,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;qBAC9C;gBACH,CAAC,CACF,CAAC;aACH;SACF;IACH,CAAC;IAED,qBAAqB,CAAC,KAAK,EAAE,MAAc,EAAE,OAAe;QAC1D,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,iHAA0B,EAAE;YAC7D,KAAK,EAAE,OAAO;YACd,IAAI,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE;SACjC,CAAC,CAAC;IACL,CAAC;IAED,YAAY;;QACV,MAAM,UAAU,GAAG,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,KAAK,CAAC;QACnE,UAAI,CAAC,YAAY,0CAAE,IAAI,CAAC,UAAU,EAAE;IACtC,CAAC;IACD,UAAU;QACR,sCAAsC;QACtC,MAAM,KAAK,GAAG,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,KAAK,CAAC;QAC9D,IAAI,KAAK,IAAI,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE;YACtC,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,SAAS,CAC9C,CAAC,QAAQ,EAAE,EAAE;gBACX,IAAI,QAAQ,CAAC,IAAI,IAAI,aAAa,EAAE;oBAClC,MAAM,GAAG,GACP,uDAAuD;wBACvD,KAAK;wBACL,wFAAwF,CAAC;oBAC3F,MAAM,MAAM,GAAG,kBAAkB,CAAC;oBAClC,IAAI,CAAC,qBAAqB,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;iBAChD;qBAAM,IAAI,QAAQ,CAAC,IAAI,IAAI,aAAa,EAAE;oBACzC,IAAI,CAAC,IAAI,CAAC,eAAe,CACvB,yCAAyC,CAC1C,CAAC;oBACF,IAAI,CAAC,UAAU,CAAC,mBAAmB,CAAC,CAAC;iBACtC;gBACD,oCAAoC;YACtC,CAAC,EACD,CAAC,GAAG,EAAE,EAAE;gBACN,oCAAoC;gBACpC,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;YAC5B,CAAC,CACF,CAAC;SACH;IACH,CAAC;IACD,aAAa,CAAC,KAAK;QACjB,OAAO,KAAK,CAAC,KAAK,CAChB,2JAA2J,CAC5J,CAAC;IACJ,CAAC;IACD,UAAU;QACR,IAAI,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;YACxB,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAAC;YAC7C,MAAM,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC;YACtC,IAAI,CAAC,cAAc,CAAC,YAAY,EAAE,CAAC;YACnC,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,SAAS,CAC7C,CAAC,QAAQ,EAAE,EAAE;;gBACX,UAAI,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,0CAAE,aAAa,EAAE;oBACnC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;oBACtB,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;wBAChC,IAAI,OAAO,CAAC,eAAe,KAAK,WAAW,EAAE;4BAC3C,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,WAAW,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;4BAC1D,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,aAAa,CAAC,UAAU,CAChD,OAAO,CAAC,QAAQ,CACjB,CAAC;yBACH;6BAAM,IAAI,OAAO,CAAC,eAAe,KAAK,WAAW,EAAE;4BAClD,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,eAAe,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;yBAC/D;6BAAM,IAAI,OAAO,CAAC,eAAe,KAAK,WAAW,EAAE;4BAClD,IAAI,OAAO,CAAC,qBAAqB,EAAE;gCACjC,IAAI,CAAC,kBAAkB,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;gCAC3C,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,aAAa,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;6BAC7D;iCAAM;gCACL,IAAI,CAAC,kBAAkB,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;gCAC5C,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,aAAa,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;6BAC7D;yBACF;oBACH,CAAC,CAAC,CAAC;oBAEH,yDAAyD;oBACzD,6DAA6D;oBAC7D,2DAA2D;oBAC3D,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC;iBAC3C;gBACD,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;gBAClC,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;YACvB,CAAC,EACD,CAAC,GAAG,EAAE,EAAE;gBACN,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBACjB,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;gBAClC,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;gBACrB,+BAA+B;gBAC/B,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;YACjD,CAAC,CACF,CAAC;SACH;IACH,CAAC;IAED,UAAU;QACR,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IACrC,CAAC;IACD,YAAY,CAAC,KAAa;QACxB,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACpB,IAAI,IAAI,CAAC,kBAAkB,IAAI,SAAS,EAAE;YACxC,IAAI,KAAK,IAAI,CAAC,EAAE;gBACd,IAAI,CAAC,MAAM,GAAG,qBAAqB,CAAC;gBACpC,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC;gBACrB,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC;gBACtB,uCAAuC;aACxC;YACD,IAAI,KAAK,IAAI,CAAC,EAAE;gBACd,IAAI,CAAC,MAAM,GAAG,+BAA+B,CAAC;gBAC9C,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC;gBACrB,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC;gBACtB,wCAAwC;aACzC;SACF;QACD,IAAI,IAAI,CAAC,kBAAkB,IAAI,gBAAgB,EAAE;YAC/C,IAAI,KAAK,IAAI,CAAC,EAAE;gBACd,IAAI,CAAC,MAAM,GAAG,gCAAgC,CAAC;gBAC/C,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC;gBACpB,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC;gBACtB,+CAA+C;aAChD;YACD,IAAI,KAAK,IAAI,CAAC,EAAE;gBACd,IAAI,CAAC,MAAM,GAAG,+BAA+B,CAAC;gBAC9C,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC;gBACpB,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC;gBACtB,+CAA+C;aAChD;SACF;QACD,IAAI,IAAI,CAAC,kBAAkB,IAAI,gBAAgB,EAAE;YAC/C,IAAI,KAAK,IAAI,CAAC,EAAE;gBACd,IAAI,CAAC,MAAM,GAAG,kCAAkC,CAAC;gBACjD,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC;gBACpB,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC;gBACtB,uCAAuC;aACxC;YACD,IAAI,KAAK,IAAI,CAAC,EAAE;gBACd,IAAI,CAAC,MAAM,GAAG,+BAA+B,CAAC;gBAC9C,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC;gBACpB,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC;gBACtB,wCAAwC;aACzC;SACF;QACD,IAAI,IAAI,CAAC,kBAAkB,IAAI,kBAAkB,EAAE;YACjD,IAAI,KAAK,IAAI,CAAC,EAAE;gBACd,IAAI,CAAC,MAAM,GAAG,6BAA6B,CAAC;gBAC5C,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC;gBACpB,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC;gBACtB,uCAAuC;aACxC;YACD,IAAI,KAAK,IAAI,CAAC,EAAE;gBACd,IAAI,CAAC,MAAM,GAAG,+BAA+B,CAAC;gBAC9C,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC;gBACpB,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC;gBACtB,wCAAwC;aACzC;SACF;QACD,IAAI,IAAI,CAAC,kBAAkB,IAAI,iBAAiB,EAAE;YAChD,IAAI,KAAK,IAAI,CAAC,EAAE;gBACd,IAAI,CAAC,MAAM,GAAG,mCAAmC,CAAC;gBAClD,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC;gBACpB,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC;gBACtB,uCAAuC;aACxC;YACD,IAAI,KAAK,IAAI,CAAC,EAAE;gBACd,IAAI,CAAC,MAAM,GAAG,+BAA+B,CAAC;gBAC9C,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC;gBACpB,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC;gBACtB,wCAAwC;aACzC;SACF;QACD,IAAI,IAAI,CAAC,kBAAkB,IAAI,gBAAgB,EAAE;YAC/C,IAAI,KAAK,IAAI,CAAC,EAAE;gBACd,IAAI,CAAC,MAAM,GAAG,mCAAmC,CAAC;gBAClD,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC;gBACrB,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC;gBACtB,uCAAuC;aACxC;YACD,IAAI,KAAK,IAAI,CAAC,EAAE;gBACd,IAAI,CAAC,MAAM,GAAG,+BAA+B,CAAC;gBAC9C,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC;gBACrB,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC;gBACtB,wCAAwC;aACzC;SACF;QACD,IAAI,IAAI,CAAC,kBAAkB,IAAI,eAAe,EAAE;YAC9C,IAAI,KAAK,IAAI,CAAC,EAAE;gBACd,IAAI,CAAC,MAAM,GAAG,wCAAwC,CAAC;gBACvD,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC;gBACrB,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC;gBACtB,uCAAuC;aACxC;YACD,IAAI,KAAK,IAAI,CAAC,EAAE;gBACd,IAAI,CAAC,MAAM,GAAG,+BAA+B,CAAC;gBAC9C,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC;gBACrB,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC;gBACtB,wCAAwC;aACzC;SACF;QACD,IAAI,IAAI,CAAC,kBAAkB,IAAI,mBAAmB,EAAE;YAClD,IAAI,KAAK,IAAI,CAAC,EAAE;gBACd,IAAI,CAAC,MAAM,GAAG,mCAAmC,CAAC;gBAClD,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC;gBACrB,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC;gBACtB,uCAAuC;aACxC;YACD,IAAI,KAAK,IAAI,CAAC,EAAE;gBACd,IAAI,CAAC,MAAM,GAAG,+BAA+B,CAAC;gBAC9C,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC;gBACrB,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC;gBACtB,wCAAwC;aACzC;SACF;IACH,CAAC;IACD,eAAe;;QACb,IAAI,CAAC,cAAc,CAAC,YAAY,EAAE,CAAC;QACnC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;QAC1B,IAAI,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE;YAC5B,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,0BAA0B,CAAC,CAAC;YACtD,MAAM,cAAc,GAAG,QAAQ,CAAC,sBAAsB,CAAC,YAAY,CAAC,CAAC;YACrE,MAAM,UAAU,SAAG,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,0CAAE,SAAS,CACtD,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,OAAO,IAAI,OAAO,IAAI,EAAE,CAAC,OAAO,IAAI,YAAY,CAC5D,CAAC;YACF,IAAI,UAAU,IAAI,CAAC,EAAE;gBAClB,cAAc,CAAC,UAAU,CAAiB,CAAC,KAAK,EAAE,CAAC;aACrD;YAED,qCAAqC;YACrC,gEAAgE;YAChE,WAAW;YACX,gCAAgC;YAChC,oCAAoC;YACpC,+BAA+B;YAC/B,UAAU;YACV,sDAAsD;YACtD,sEAAsE;YACtE,8CAA8C;YAC9C,aAAa;YACb,kCAAkC;YAClC,sCAAsC;YACtC,iBAAiB;YACjB,UAAU;YACV,QAAQ;YACR,MAAM;YACN,8BAA8B;YAC9B,mCAAmC;YACnC,qDAAqD;YACrD,oEAAoE;YACpE,0BAA0B;YAC1B,uEAAuE;YACvE,4CAA4C;YAC5C,WAAW;YACX,0CAA0C;YAC1C,uBAAuB;YACvB,4EAA4E;YAC5E,gCAAgC;YAChC,2BAA2B;YAC3B,0BAA0B;YAC1B,0CAA0C;YAC1C,cAAc;YACd,YAAY;YACZ,YAAY;YACZ,oBAAoB;YACpB,iBAAiB;YACjB,UAAU;YACV,QAAQ;YACR,MAAM;YACN,IAAI;YACJ,6BAA6B;YAC7B,mCAAmC;YACnC,yDAAyD;YACzD,wEAAwE;YACxE,0BAA0B;YAC1B,uEAAuE;YACvE,4CAA4C;YAC5C,WAAW;YACX,0CAA0C;YAC1C,uBAAuB;YACvB,4EAA4E;YAC5E,gCAAgC;YAChC,2BAA2B;YAC3B,0BAA0B;YAC1B,0CAA0C;YAC1C,cAAc;YACd,YAAY;YACZ,YAAY;YACZ,oBAAoB;YACpB,iBAAiB;YACjB,UAAU;YACV,QAAQ;YACR,MAAM;YACN,IAAI;YACJ,8BAA8B;YAC9B,mCAAmC;YACnC,wDAAwD;YACxD,sEAAsE;YACtE,0BAA0B;YAC1B,uEAAuE;YACvE,4CAA4C;YAC5C,WAAW;YACX,0CAA0C;YAC1C,uBAAuB;YACvB,4EAA4E;YAC5E,gCAAgC;YAChC,2BAA2B;YAC3B,0BAA0B;YAC1B,0CAA0C;YAC1C,cAAc;YACd,YAAY;YACZ,YAAY;YACZ,oBAAoB;YACpB,iBAAiB;YACjB,UAAU;YACV,QAAQ;YACR,MAAM;YACN,IAAI;YAEJ,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;YAClC,OAAO;SACR;QAED,IAAI,IAAI,CAAC,SAAS,EAAE;YAClB,IAAI,IAAI,CAAC,kBAAkB,IAAI,gBAAgB,EAAE;gBAC/C,MAAM,YAAY,GAAG;oBACnB,SAAS,EAAE,IAAI,CAAC,SAAS;oBACzB,OAAO,EAAE,CAAC;oBACV,SAAS,EAAE,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,KAAK;oBACtD,QAAQ,EAAE,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,KAAK;oBACpD,SAAS,EAAE,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,KAAK;oBACtD,UAAU,EAAE,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,KAAK;oBACxD,qBAAqB,EAAE,IAAI,CAAC,IAAI,CAAC,qBAAqB,CACpD,uBAAuB,CACxB;oBACD,+BAA+B,EAAE,IAAI,CAAC,IAAI,CAAC,qBAAqB,CAC9D,iCAAiC,CAClC;iBACF,CAAC;gBACF,IAAI,YAAY,CAAC,qBAAqB,IAAI,IAAI,EAAE;oBAC9C,IAAI,CAAC,aAAa,EAAE,CAAC;iBACtB;gBACD,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;aAC3C;iBAAM;gBACL,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE;oBAC3B,IAAI,CAAC,MAAM,EAAE,CAAC;oBACd,qCAAqC;oBACrC,OAAO;iBACR;aACF;YAED,MAAM,QAAQ,mCACT,IAAI,CAAC,WAAW,CAAC,WAAW,EAAE,KACjC,cAAc,EAAE,IAAI,GACrB,CAAC;YACF,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAAC;YAC7C,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;YACpB,IAAI,CAAC,WAAW;iBACb,aAAa,CAAC,KAAK,EAAE,QAAQ,CAAC;iBAC9B,SAAS,EAWR,CAAC;YACL,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;YACrB,IAAI,CAAC,MAAM,EAAE,CAAC;SACf;aAAM;YACL,IAAI,IAAI,CAAC,kBAAkB,IAAI,gBAAgB,EAAE;gBAC/C,MAAM,YAAY,GAAG;oBACnB,SAAS,EAAE,IAAI,CAAC,SAAS;oBACzB,OAAO,EAAE,CAAC;oBACV,SAAS,EAAE,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,KAAK;oBACtD,QAAQ,EAAE,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,KAAK;oBACpD,SAAS,EAAE,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,KAAK;oBACtD,UAAU,EAAE,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,KAAK;oBACxD,qBAAqB,EAAE,IAAI,CAAC,IAAI,CAAC,qBAAqB,CACpD,uBAAuB,CACxB;oBACD,+BAA+B,EAAE,IAAI,CAAC,IAAI,CAAC,qBAAqB,CAC9D,iCAAiC,CAClC;iBACF,CAAC;gBAEF,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;gBAC1C,IAAI,YAAY,CAAC,qBAAqB,IAAI,IAAI,EAAE;oBAC9C,IAAI,CAAC,aAAa,EAAE,CAAC;iBACtB;aACF;YACD,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;YACpB,MAAM,QAAQ,mCACT,IAAI,CAAC,WAAW,CAAC,WAAW,EAAE,KACjC,cAAc,EAAE,IAAI,GACrB,CAAC;YACF,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAAC;YAC7C,IAAI,CAAC,WAAW;iBACb,WAAW,CAAC,KAAK,EAAE,QAAQ,CAAC;iBAC5B,SAAS,EAWR,CAAC;YACL,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;YACrB,IAAI,CAAC,MAAM,EAAE,CAAC;SACf;IACH,CAAC;IACD,aAAa;QACX,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAC7C,MAAM,QAAQ,GAAG;YACf,SAAS,EAAE,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE;SACtC,CAAC;QACF,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,SAAS,CACzD,CAAC,IAAI,EAAE,EAAE,GAAE,CAAC,EACZ,CAAC,KAAK,EAAE,EAAE;YACR,qCAAqC;YACrC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YACnB,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,uBAAuB,CAAC,CAAC;QACrD,CAAC,CACF,CAAC;IACJ,CAAC;IAED,MAAM;QACJ,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAClC,CAAC;IACD,aAAa;IACb,UAAU,CAAC,QAAgB;QACzB,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,2EAAc,EAAE;YACjD,KAAK,EAAE,OAAO;YACd,IAAI,EAAE;gBACJ,QAAQ;gBACR,KAAK,EAAE,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,aAAa,CAAC,KAAK;aACzD;SACF,CAAC,CAAC;QAEH,SAAS,CAAC,WAAW,EAAE,CAAC,SAAS,CAAC,CAAC,MAAM,EAAE,EAAE;YAC3C,IAAI,MAAM,EAAE;gBACV,IAAI,MAAM,IAAI,UAAU,EAAE;iBACzB;qBAAM,IAAI,MAAM,IAAI,gBAAgB,EAAE;oBACrC,IAAI,CAAC,gBAAgB,EAAE,CAAC;iBACzB;qBAAM,IAAI,MAAM,IAAI,UAAU,EAAE;oBAC/B,IAAI,CAAC,QAAQ,EAAE,CAAC;iBACjB;qBAAM,IAAI,MAAM,IAAI,YAAY,EAAE;iBAClC;aACF;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IACD,QAAQ;QACN,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,sFAAiB,EAAE;YACpD,KAAK,EAAE,OAAO;YACd,IAAI,EAAE,EAAE;SACT,CAAC,CAAC;QACH,SAAS,CAAC,WAAW,EAAE,CAAC,SAAS,CAAC,CAAC,MAAM,EAAE,EAAE;YAC3C,IAAI,MAAM,EAAE;gBACV,IAAI,MAAM,IAAI,UAAU,EAAE;oBACxB,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,yBAAyB,EAAE,CAAC;oBACvD,IAAI,QAAQ,EAAE;wBACZ,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;wBAC3B,mBAAmB;wBACnB,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;qBACrB;iBACF;qBAAM,IAAI,MAAM,IAAI,aAAa,EAAE;oBAClC,IAAI,CAAC,UAAU,CAAC,uBAAuB,CAAC,CAAC;iBAC1C;qBAAM,IAAI,MAAM,IAAI,gBAAgB,EAAE;oBACrC,IAAI,CAAC,gBAAgB,EAAE,CAAC;iBACzB;qBAAM,IAAI,MAAM,IAAI,YAAY,EAAE;iBAClC;aACF;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IACD,gBAAgB;QACd,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,wGAAuB,EAAE;YAC1D,KAAK,EAAE,OAAO;SACf,CAAC,CAAC;QACH,SAAS,CAAC,WAAW,EAAE,CAAC,SAAS,CAAC,CAAC,MAAM,EAAE,EAAE;YAC3C,IAAI,MAAM,EAAE;gBACV,IAAI,MAAM,IAAI,aAAa,EAAE;oBAC3B,IAAI,CAAC,UAAU,CAAC,uBAAuB,CAAC,CAAC;iBAC1C;aACF;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IACD,eAAe;QACb,oDAAoD;QACpD,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;QAC7C,IAAI,CAAC,SAAS,GAAG,UAAU,CAAC;QAC5B,QAAQ,UAAU,EAAE;YAClB,KAAK,UAAU,CAAC,CAAC;gBACf,IAAI,CAAC,MAAM,GAAG,qBAAqB,CAAC;gBACpC,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC;gBACrB,IAAI,CAAC,kBAAkB,GAAG,SAAS,CAAC;gBACpC,IAAI,CAAC,OAAO,GAAG,iBAAiB,CAAC;gBACjC,MAAM;aACP;YACD,KAAK,iBAAiB,CAAC,CAAC;gBACtB,IAAI,CAAC,MAAM,GAAG,+BAA+B,CAAC;gBAC9C,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC;gBACpB,IAAI,CAAC,kBAAkB,GAAG,gBAAgB,CAAC,CAAC,EAAE;gBAC9C,IAAI,CAAC,OAAO,GAAG,6CAA6C,CAAC;gBAE7D,MAAM;aACP;YACD,KAAK,kBAAkB,CAAC,CAAC;gBACvB,IAAI,CAAC,MAAM,GAAG,kCAAkC,CAAC;gBACjD,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC;gBACpB,IAAI,CAAC,kBAAkB,GAAG,gBAAgB,CAAC,CAAC,EAAE;gBAC9C,IAAI,CAAC,OAAO,GAAG,0CAA0C,CAAC;gBAC1D,MAAM;aACP;YACD,KAAK,oBAAoB,CAAC,CAAC;gBACzB,IAAI,CAAC,MAAM,GAAG,6BAA6B,CAAC;gBAC5C,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC;gBACpB,IAAI,CAAC,kBAAkB,GAAG,kBAAkB,CAAC,CAAC,EAAE;gBAChD,IAAI,CAAC,OAAO,GAAG,qCAAqC,CAAC;gBACrD,MAAM;aACP;YACD,KAAK,mBAAmB,CAAC,CAAC;gBACxB,IAAI,CAAC,MAAM,GAAG,mCAAmC,CAAC;gBAClD,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC;gBACpB,IAAI,CAAC,kBAAkB,GAAG,iBAAiB,CAAC,CAAC,EAAE;gBAC/C,IAAI,CAAC,OAAO,GAAG,6BAA6B,CAAC;gBAC7C,MAAM;aACP;YACD,KAAK,kBAAkB,CAAC,CAAC;gBACvB,IAAI,CAAC,MAAM,GAAG,mCAAmC,CAAC;gBAClD,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC;gBACrB,IAAI,CAAC,kBAAkB,GAAG,gBAAgB,CAAC,CAAC,EAAE;gBAC9C,IAAI,CAAC,OAAO,GAAG,2CAA2C,CAAC;gBAC3D,MAAM;aACP;YACD,KAAK,iBAAiB,CAAC,CAAC;gBACtB,IAAI,CAAC,MAAM,GAAG,wCAAwC,CAAC;gBACvD,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC;gBACrB,IAAI,CAAC,kBAAkB,GAAG,eAAe,CAAC;gBAC1C,IAAI,CAAC,OAAO,GAAG,4CAA4C,CAAC;gBAC5D,MAAM;aACP;YACD,KAAK,qBAAqB,CAAC,CAAC;gBAC1B,IAAI,CAAC,MAAM,GAAG,mCAAmC,CAAC;gBAClD,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC;gBACrB,IAAI,CAAC,kBAAkB,GAAG,mBAAmB,CAAC;gBAC9C,IAAI,CAAC,OAAO,GAAG,mCAAmC,CAAC;gBACnD,MAAM;aACP;YACD,OAAO,CAAC,CAAC;gBACP,cAAc;gBACd,MAAM;aACP;SACF;IACH,CAAC;IACD,mBAAmB;QACjB,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAC/C,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAC/C,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,yBAAyB,EAAE,CAAC;QACvD,MAAM,YAAY,GAAG,QAAQ,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;QACzD,IAAI,IAAI,CAAC,kBAAkB,IAAI,gBAAgB,EAAE;YAC/C,MAAM,iBAAiB,GAAG,IAAI,CAAC,IAAI,CAAC,4BAA4B,EAAE,CAAC;YACnE,IAAI,CAAC,iBAAiB,EAAE;gBACtB,IAAI,CAAC,mBAAmB,CAAC,SAAS,EAAE,SAAS,EAAE,YAAY,CAAC,CAAC;aAC9D;SACF;aAAM,IAAI,IAAI,CAAC,kBAAkB,IAAI,gBAAgB,EAAE;YACtD,MAAM,sBAAsB,GAC1B,IAAI,CAAC,IAAI,CAAC,iCAAiC,EAAE,CAAC;YAChD,IAAI,CAAC,sBAAsB,EAAE;gBAC3B,IAAI,CAAC,wBAAwB,CAAC,SAAS,EAAE,SAAS,EAAE,YAAY,CAAC,CAAC;aACnE;SACF;aAAM,IAAI,IAAI,CAAC,kBAAkB,IAAI,gBAAgB,EAAE;YACtD,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,qCAAqC,EAAE,CAAC;YACrE,IAAI,CAAC,UAAU,EAAE;gBACf,IAAI,CAAC,4BAA4B,CAAC,SAAS,EAAE,SAAS,EAAE,YAAY,CAAC,CAAC;aACvE;SACF;aAAM,IAAI,IAAI,CAAC,kBAAkB,IAAI,iBAAiB,EAAE;YACvD,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,sCAAsC,EAAE,CAAC;YACtE,IAAI,CAAC,UAAU,EAAE;gBACf,IAAI,CAAC,oBAAoB,CAAC,SAAS,EAAE,SAAS,EAAE,YAAY,CAAC,CAAC;aAC/D;SACF;aAAM,IAAI,IAAI,CAAC,kBAAkB,IAAI,kBAAkB,EAAE;YACxD,MAAM,4BAA4B,GAChC,IAAI,CAAC,IAAI,CAAC,uCAAuC,EAAE,CAAC;YACtD,IAAI,CAAC,4BAA4B,EAAE;gBACjC,IAAI,CAAC,oBAAoB,CAAC,SAAS,EAAE,SAAS,EAAE,YAAY,CAAC,CAAC;aAC/D;SACF;aAAM,IAAI,IAAI,CAAC,kBAAkB,IAAI,eAAe,EAAE;YACrD,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,oCAAoC,EAAE,CAAC;YACtE,IAAI,CAAC,YAAY,EAAE;gBACjB,IAAI,CAAC,kBAAkB,CAAC,SAAS,EAAE,SAAS,EAAE,YAAY,CAAC,CAAC;aAC7D;SACF;aAAM,IAAI,IAAI,CAAC,kBAAkB,IAAI,mBAAmB,EAAE;YACzD,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,wCAAwC,EAAE,CAAC;YAC1E,IAAI,CAAC,YAAY,EAAE;gBACjB,IAAI,CAAC,qBAAqB,CAAC,SAAS,EAAE,SAAS,EAAE,YAAY,CAAC,CAAC;aAChE;SACF;IACH,CAAC;IAED,mBAAmB,CACjB,SAAiB,EACjB,SAAiB,EACjB,YAAoB;QAEpB,MAAM,QAAQ,GAAG;YACf,YAAY;YACZ,SAAS;YACT,SAAS,EAAE,SAAS;YACpB,OAAO,EAAE,CAAC;SACX,CAAC;QACF,IAAI,CAAC,cAAc,CAAC,YAAY,EAAE,CAAC;QACnC,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,SAAS,CAChD,CAAC,QAAQ,EAAE,EAAE;YACX,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;YAClC,IAAI,QAAQ,EAAE;gBACZ,IAAI,CAAC,IAAI,CAAC,4BAA4B,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;gBACpE,MAAM,MAAM,GAAG;oBACb,IAAI,EAAE,GAAG,QAAQ,CAAC,YAAY,+BAA+B;oBAC7D,aAAa,EAAE,QAAQ,CAAC,IAAI,CAAC,aAAa;oBAC1C,wBAAwB,EAAE,QAAQ,CAAC,IAAI,CAAC,aAAa;oBACrD,4DAA4D;oBAC5D,WAAW,EAAE,CAAC;oBACd,6BAA6B,EAC3B,QAAQ,CAAC,IAAI,CAAC,6BAA6B;oBAC7C,oBAAoB,EAAE,sCAAsC;oBAC5D,8BAA8B,EAAE,oBAAoB;iBACrD,CAAC;gBACF,MAAM,cAAc,GAAG,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC;gBACrD,MAAM,OAAO,GAAG,CAAC,GAAG,cAAc,EAAE,MAAM,CAAC,CAAC;gBAC5C,IAAI,CAAC,IAAI,CAAC,uBAAuB,CAAC,OAAO,CAAC,CAAC;gBAC3C,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;gBAC1B,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;aACrB;QACH,CAAC,EACD,CAAC,KAAK,EAAE,EAAE;YACR,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YACnB,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;YAClC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACjD,CAAC,CACF,CAAC;QACF,IAAI;IACN,CAAC;IACD,wBAAwB,CACtB,SAAiB,EACjB,SAAiB,EACjB,YAAoB;QAEpB,MAAM,QAAQ,GAAG;YACf,YAAY;YACZ,SAAS;YACT,SAAS,EAAE,SAAS;YACpB,OAAO,EAAE,CAAC;SACX,CAAC;QACF,IAAI,CAAC,cAAc,CAAC,YAAY,EAAE,CAAC;QACnC,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,SAAS,CAChD,CAAC,QAAQ,EAAE,EAAE;YACX,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;YAClC,IAAI,QAAQ,EAAE;gBACZ,IAAI,CAAC,IAAI,CAAC,iCAAiC,CACzC,QAAQ,CAAC,IAAI,CAAC,aAAa,CAC5B,CAAC;gBACF,MAAM,MAAM,GAAG;oBACb,IAAI,EAAE,GAAG,QAAQ,CAAC,YAAY,mCAAmC;oBACjE,aAAa,EAAE,QAAQ,CAAC,IAAI,CAAC,aAAa;oBAC1C,wBAAwB,EAAE,QAAQ,CAAC,IAAI,CAAC,aAAa;oBACrD,WAAW,EAAE,CAAC;oBACd,6BAA6B,EAC3B,QAAQ,CAAC,IAAI,CAAC,6BAA6B;oBAC7C,oBAAoB,EAAE,sCAAsC;oBAC5D,8BAA8B,EAAE,oBAAoB;iBACrD,CAAC;gBACF,MAAM,cAAc,GAAG,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC;gBACrD,MAAM,OAAO,GAAG,CAAC,GAAG,cAAc,EAAE,MAAM,CAAC,CAAC;gBAC5C,IAAI,CAAC,IAAI,CAAC,uBAAuB,CAAC,OAAO,CAAC,CAAC;gBAC3C,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;gBAC1B,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;aACrB;QACH,CAAC,EACD,CAAC,KAAK,EAAE,EAAE;YACR,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YACnB,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;YAClC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACjD,CAAC,CACF,CAAC;QACF,IAAI;IACN,CAAC;IACD,4BAA4B,CAC1B,SAAiB,EACjB,SAAiB,EACjB,YAAoB;QAEpB,MAAM,QAAQ,GAAG;YACf,YAAY;YACZ,SAAS;YACT,SAAS,EAAE,SAAS;YACpB,OAAO,EAAE,CAAC;SACX,CAAC;QACF,IAAI,CAAC,cAAc,CAAC,YAAY,EAAE,CAAC;QACnC,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,SAAS,CAChD,CAAC,QAAQ,EAAE,EAAE;YACX,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;YAClC,IAAI,QAAQ,EAAE;gBACZ,IAAI,CAAC,IAAI,CAAC,sCAAsC,CAC9C,QAAQ,CAAC,IAAI,CAAC,aAAa,CAC5B,CAAC;gBACF,MAAM,MAAM,GAAG;oBACb,IAAI,EAAE,GAAG,QAAQ,CAAC,YAAY,gCAAgC;oBAC9D,aAAa,EAAE,QAAQ,CAAC,IAAI,CAAC,aAAa;oBAC1C,wBAAwB,EAAE,QAAQ,CAAC,IAAI,CAAC,aAAa;oBACrD,4DAA4D;oBAC5D,WAAW,EAAE,CAAC;oBACd,6BAA6B,EAC3B,QAAQ,CAAC,IAAI,CAAC,6BAA6B;oBAC7C,oBAAoB,EAAE,sCAAsC;oBAC5D,8BAA8B,EAAE,oBAAoB;iBACrD,CAAC;gBACF,MAAM,cAAc,GAAG,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC;gBACrD,MAAM,OAAO,GAAG,CAAC,GAAG,cAAc,EAAE,MAAM,CAAC,CAAC;gBAC5C,IAAI,CAAC,IAAI,CAAC,uBAAuB,CAAC,OAAO,CAAC,CAAC;gBAC3C,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;gBAC1B,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;aACrB;QACH,CAAC,EACD,CAAC,KAAK,EAAE,EAAE;YACR,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YACnB,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;YAClC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACjD,CAAC,CACF,CAAC;QACF,IAAI;IACN,CAAC;IACD,oBAAoB,CAClB,SAAiB,EACjB,SAAiB,EACjB,YAAoB;QAEpB,MAAM,QAAQ,GAAG;YACf,YAAY;YACZ,SAAS;YACT,SAAS,EAAE,SAAS;YACpB,OAAO,EAAE,CAAC;SACX,CAAC;QACF,IAAI,CAAC,cAAc,CAAC,YAAY,EAAE,CAAC;QACnC,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,SAAS,CAChD,CAAC,QAAQ,EAAE,EAAE;YACX,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;YAClC,IAAI,QAAQ,EAAE;gBACZ,IAAI,CAAC,IAAI,CAAC,sCAAsC,CAC9C,QAAQ,CAAC,IAAI,CAAC,aAAa,CAC5B,CAAC;gBAEF,MAAM,MAAM,GAAG;oBACb,IAAI,EAAE,GAAG,QAAQ,CAAC,YAAY,iCAAiC;oBAC/D,aAAa,EAAE,QAAQ,CAAC,IAAI,CAAC,aAAa;oBAC1C,wBAAwB,EAAE,QAAQ,CAAC,IAAI,CAAC,aAAa;oBACrD,4DAA4D;oBAC5D,WAAW,EAAE,CAAC;oBACd,6BAA6B,EAC3B,QAAQ,CAAC,IAAI,CAAC,6BAA6B;oBAC7C,oBAAoB,EAAE,sCAAsC;oBAC5D,8BAA8B,EAAE,oBAAoB;iBACrD,CAAC;gBACF,MAAM,cAAc,GAAG,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC;gBACrD,MAAM,OAAO,GAAG,CAAC,GAAG,cAAc,EAAE,MAAM,CAAC,CAAC;gBAC5C,IAAI,CAAC,IAAI,CAAC,uBAAuB,CAAC,OAAO,CAAC,CAAC;gBAC3C,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;gBAC1B,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;aACrB;QACH,CAAC,EACD,CAAC,KAAK,EAAE,EAAE;YACR,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YACnB,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;YAClC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACjD,CAAC,CACF,CAAC;QACF,IAAI;IACN,CAAC;IACD,oBAAoB,CAClB,SAAiB,EACjB,SAAiB,EACjB,YAAoB;QAEpB,MAAM,QAAQ,GAAG;YACf,YAAY;YACZ,SAAS;YACT,SAAS,EAAE,SAAS;YACpB,OAAO,EAAE,CAAC;SACX,CAAC;QACF,IAAI,CAAC,cAAc,CAAC,YAAY,EAAE,CAAC;QACnC,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,SAAS,CAChD,CAAC,QAAQ,EAAE,EAAE;YACX,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;YAClC,IAAI,QAAQ,EAAE;gBACZ,IAAI,CAAC,IAAI,CAAC,uCAAuC,CAC/C,QAAQ,CAAC,IAAI,CAAC,aAAa,CAC5B,CAAC;gBACF,MAAM,MAAM,GAAG;oBACb,IAAI,EAAE,GAAG,QAAQ,CAAC,YAAY,kCAAkC;oBAChE,aAAa,EAAE,QAAQ,CAAC,IAAI,CAAC,aAAa;oBAC1C,wBAAwB,EAAE,QAAQ,CAAC,IAAI,CAAC,aAAa;oBACrD,4DAA4D;oBAC5D,WAAW,EAAE,CAAC;oBACd,6BAA6B,EAC3B,QAAQ,CAAC,IAAI,CAAC,6BAA6B;oBAC7C,oBAAoB,EAAE,sCAAsC;oBAC5D,8BAA8B,EAAE,oBAAoB;iBACrD,CAAC;gBACF,MAAM,cAAc,GAAG,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC;gBACrD,MAAM,OAAO,GAAG,CAAC,GAAG,cAAc,EAAE,MAAM,CAAC,CAAC;gBAC5C,IAAI,CAAC,IAAI,CAAC,uBAAuB,CAAC,OAAO,CAAC,CAAC;gBAC3C,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;gBAE1B,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;gBAClC,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;aACrB;QACH,CAAC,EACD,CAAC,KAAK,EAAE,EAAE;YACR,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YACnB,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;YAClC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACjD,CAAC,CACF,CAAC;QACF,IAAI;IACN,CAAC;IACD,kBAAkB,CAChB,SAAiB,EACjB,SAAiB,EACjB,YAAoB;QAEpB,MAAM,QAAQ,GAAG;YACf,YAAY;YACZ,SAAS;YACT,SAAS,EAAE,SAAS;YACpB,OAAO,EAAE,CAAC;SACX,CAAC;QACF,IAAI,CAAC,cAAc,CAAC,YAAY,EAAE,CAAC;QACnC,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,SAAS,CAChD,CAAC,QAAQ,EAAE,EAAE;YACX,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;YAClC,IAAI,QAAQ,EAAE;gBACZ,IAAI,CAAC,IAAI,CAAC,oCAAoC,CAC5C,QAAQ,CAAC,IAAI,CAAC,aAAa,CAC5B,CAAC;gBACF,MAAM,MAAM,GAAG;oBACb,IAAI,EAAE,GAAG,QAAQ,CAAC,YAAY,4CAA4C;oBAC1E,aAAa,EAAE,QAAQ,CAAC,IAAI,CAAC,aAAa;oBAC1C,wBAAwB,EAAE,QAAQ,CAAC,IAAI,CAAC,aAAa;oBACrD,4DAA4D;oBAC5D,WAAW,EAAE,CAAC;iBAKf,CAAC;gBACF,MAAM,cAAc,GAAG,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC;gBACrD,MAAM,OAAO,GAAG,CAAC,GAAG,cAAc,EAAE,MAAM,CAAC,CAAC;gBAC5C,IAAI,CAAC,IAAI,CAAC,uBAAuB,CAAC,OAAO,CAAC,CAAC;gBAC3C,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;gBAC1B,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;gBAClC,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;aACrB;QACH,CAAC,EACD,CAAC,KAAK,EAAE,EAAE;YACR,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YACnB,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;YAClC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACjD,CAAC,CACF,CAAC;QACF,IAAI;IACN,CAAC;IACD,qBAAqB,CACnB,SAAiB,EACjB,SAAiB,EACjB,YAAoB;QAEpB,MAAM,QAAQ,GAAG;YACf,YAAY;YACZ,SAAS;YACT,SAAS,EAAE,SAAS;YACpB,OAAO,EAAE,CAAC;SACX,CAAC;QACF,IAAI,CAAC,cAAc,CAAC,YAAY,EAAE,CAAC;QACnC,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,SAAS,CAChD,CAAC,QAAQ,EAAE,EAAE;YACX,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;YAClC,IAAI,QAAQ,EAAE;gBACZ,IAAI,CAAC,IAAI,CAAC,wCAAwC,CAChD,QAAQ,CAAC,IAAI,CAAC,aAAa,CAC5B,CAAC;gBACF,MAAM,MAAM,GAAG;oBACb,IAAI,EAAE,GAAG,QAAQ,CAAC,YAAY,mCAAmC;oBACjE,aAAa,EAAE,QAAQ,CAAC,IAAI,CAAC,aAAa;oBAC1C,wBAAwB,EAAE,QAAQ,CAAC,IAAI,CAAC,aAAa;oBACrD,4DAA4D;oBAC5D,WAAW,EAAE,CAAC;oBACd,6BAA6B,EAC3B,QAAQ,CAAC,IAAI,CAAC,6BAA6B;oBAC7C,oBAAoB,EAAE,sCAAsC;oBAC5D,8BAA8B,EAAE,kCAAkC;iBACnE,CAAC;gBACF,MAAM,cAAc,GAAG,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC;gBACrD,MAAM,OAAO,GAAG,CAAC,GAAG,cAAc,EAAE,MAAM,CAAC,CAAC;gBAC5C,IAAI,CAAC,IAAI,CAAC,uBAAuB,CAAC,OAAO,CAAC,CAAC;gBAC3C,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;gBAE1B,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;gBAClC,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;aACrB;QACH,CAAC,EACD,CAAC,KAAK,EAAE,EAAE;YACR,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YACnB,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;YAClC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACjD,CAAC,CACF,CAAC;QACF,IAAI;IACN,CAAC;;kFA33CU,iBAAiB;iGAAjB,iBAAiB,+JAFjB,CAAC,EAAE,OAAO,EAAE,gFAAmB,EAAE,WAAW,EAAE,sFAAiB,EAAE,CAAC;QC1D/E,+EAKkB;QAQlB,6EACE;QAAA,yEACE;QAWA,yEACE;QAOA,yGACE;QAMF,2GACE;QAQJ,4DAAM;QAEN,iHAKE;QA8WF,iHAKE;QAiJJ,4DAAM;QACR,4DAAU;;QA7jBV,8EAAiB;QAiCS,0DAA0B;QAA1B,wFAA0B;QAOnB,0DAAyB;QAAzB,uFAAyB;QAcpD,0DAAmB;QAAnB,iFAAmB;QAmXd,0DAAmB;QAAnB,iFAAmB;;6FD9WjB,iBAAiB;cAN7B,uDAAS;eAAC;gBACT,QAAQ,EAAE,eAAe;gBACzB,WAAW,EAAE,4BAA4B;gBACzC,SAAS,EAAE,CAAC,4BAA4B,CAAC;gBACzC,SAAS,EAAE,CAAC,EAAE,OAAO,EAAE,gFAAmB,EAAE,WAAW,EAAE,sFAAiB,EAAE,CAAC;aAC9E;qhBAyBW,eAAe;kBAAxB,oDAAM;;;;;;;;;;;;;;AErFT;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAyD;AACF;AACX;AAGuB;;;;;AAKnE;;GAEG;AAKI,MAAM,cAAc;IACzB,YACU,WAAwB,EACxB,IAAgB,EAChB,IAA2B;QAF3B,gBAAW,GAAX,WAAW,CAAa;QACxB,SAAI,GAAJ,IAAI,CAAY;QAChB,SAAI,GAAJ,IAAI,CAAuB;IAClC,CAAC;IAEJ;;;;;;OAMG;IACK,UAAU,CAAC,GAAW;QAC5B,OAAO,GAAG,qEAAW,CAAC,IAAI,IAAI,GAAG,EAAE,CAAC;IACtC,CAAC;IAED,gBAAgB,CAAC,KAAK,EAAE,EAAE;QACxB,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,2BAA2B,GAAG,EAAE,CAAC,EAAE,CAAC;aAClE,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,cAAc,CAAC,KAAK,EAAE,QAAQ;QAC5B,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,gBAAgB,CAAC,EAAE,EAAE,QAAQ,CAAC;aAC5D,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,kBAAkB,CAAC,KAAK,EAAE,QAAQ;QAChC,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,uBAAuB,CAAC,EAAE,EAAE,QAAQ,CAAC;aACnE,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,gBAAgB,CAAC,KAAK,EAAE,QAAQ;QAC9B,OAAO,IAAI,CAAC,WAAW;aACpB,IAAI,CACH,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAAC,mCAAmC,CAAC,EAAE,EACzD,QAAQ,CACT;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,kBAAkB,CAAC,KAAK,EAAE,QAAQ;QAChC,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,sBAAsB,CAAC,EAAE,EAAE,QAAQ,CAAC;aAClE,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,gDAAgD;IAChD,4BAA4B;IAC5B,eAAe;IACf,eAAe;IACf,+EAA+E;IAC/E,QAAQ;IACR,iEAAiE;IACjE,IAAI;IACJ,aAAa,CAAC,KAAK,EAAE,EAAE;QACrB,OAAO,IAAI,CAAC,WAAW;aACpB,MAAM,CACL,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAAC,iCAAiC,GAAG,EAAE,CAAC,EAAE,CAC7D;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,0CAA0C;IAC1C,4BAA4B;IAC5B,4EAA4E;IAC5E,iEAAiE;IACjE,IAAI;IAEJ,qBAAqB;IACrB,QAAQ,CAAC,KAAK,EAAE,EAAE;QAChB,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,+BAA+B,GAAG,EAAE,CAAC,EAAE,CAAC;aACtE,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,qBAAqB,CAAC,KAAK,EAAE,EAAE;QAC7B,OAAO,IAAI,CAAC,WAAW;aACpB,MAAM,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,qBAAqB,GAAG,EAAE,CAAC,EAAE,CAAC;aAC/D,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,mBAAmB,CAAC,KAAK,EAAE,QAAQ;QACjC,OAAO,IAAI,CAAC,WAAW;aACpB,IAAI,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,oBAAoB,CAAC,EAAE,EAAE,QAAQ,CAAC;aACjE,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,sBAAsB,CAAC,KAAK,EAAE,QAAQ;QACpC,OAAO,IAAI,CAAC,WAAW;aACpB,IAAI,CACH,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAAC,8BAA8B,CAAC,EAAE,EACpD,QAAQ,CACT;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,8BAA8B,CAAC,KAAK,EAAE,QAAQ;QAC5C,OAAO,IAAI,CAAC,WAAW;aACpB,IAAI,CACH,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAAC,uCAAuC,CAAC,EAAE,EAC7D,QAAQ,CACT;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,eAAe,CAAC,KAAK,EAAE,QAAQ;QAC7B,OAAO,IAAI,CAAC,WAAW;aACpB,IAAI,CACH,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAAC,kCAAkC,CAAC,EAAE,EACxD,QAAQ,CACT;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,gBAAgB,CAAC,KAAK,EAAE,EAAE;QACxB,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CACF,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAAC,qCAAqC,GAAG,EAAE,CAAC,EAAE,CACjE;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,iBAAiB,CAAC,KAAK,EAAE,EAAE;QACzB,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CACF,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAAC,oCAAoC,GAAG,EAAE,CAAC,EAAE,CAChE;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,cAAc,CAAC,KAAK,EAAE,EAAE;QACtB,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CACF,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAChB,+CAA+C,GAAG,EAAE,CACrD,EAAE,CACJ;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,iCAAiC;IAEjC,qBAAqB;IACrB,+BAA+B,CAAC,KAAK,EAAE,EAAE;QACvC,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CACF,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAChB,8DAA8D,GAAG,EAAE,CACpE,EAAE,CACJ;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,yBAAyB,CAAC,KAAK;QAC7B,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CACF,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAAC,4CAA4C,CAAC,EAAE,CACnE;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,8BAA8B,CAAC,KAAK,EAAE,EAAE;QACtC,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CACF,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAChB,6DAA6D,GAAG,EAAE,CACnE,EAAE,CACJ;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,qBAAqB,CAAC,KAAK,EAAE,SAAS,EAAE,SAAS;QAC/C,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CACF,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAChB,wDAAwD,SAAS,cAAc,SAAS,EAAE,CAC3F,EAAE,CACJ;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,sBAAsB,CAAC,KAAK,EAAE,EAAE;QAC9B,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CACF,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAChB,gDAAgD,GAAG,EAAE,CACtD,EAAE,CACJ;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,wBAAwB,CAAC,KAAK;QAC5B,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,6BAA6B,CAAC,EAAE,CAAC;aAC/D,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,8BAA8B,CAAC,KAAK,EAAE,QAAQ;QAC5C,OAAO,IAAI,CAAC,WAAW;aACpB,IAAI,CACH,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAAC,6CAA6C,CAAC,EAAE,EACnE,QAAQ,CACT;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,aAAa,CAAC,KAAK,EAAE,QAAQ;QAC3B,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,yBAAyB,CAAC,EAAE,EAAE,QAAQ,CAAC;aACrE,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,WAAW,CAAC,KAAK,EAAE,QAAQ,EAAE,SAAS;QACpC,MAAM,WAAW,mCAAQ,QAAQ,KAAE,SAAS,GAAE,CAAC;QAC/C,OAAO,CAAC,GAAG,CAAC,2BAA2B,EAAE,WAAW,CAAC,CAAC;QACtD,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CACF,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAAC,4BAA4B,CAAC,EAAE,EAClD,WAAW,CACZ;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,WAAW,CAAC,KAAK,EAAE,EAAE;QACnB,OAAO,IAAI,CAAC,WAAW;aACpB,MAAM,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,wBAAwB,GAAG,EAAE,CAAC,EAAE,CAAC;aAClE,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,aAAa;IACb,aAAa,CAAC,KAAK,EAAE,EAAE;QACrB,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,uBAAuB,GAAG,EAAE,CAAC,EAAE,CAAC;aAC9D,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,kBAAkB;IAClB,iBAAiB,CAAC,KAAK,EAAE,EAAE;QACzB,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,oBAAoB,GAAG,EAAE,CAAC,EAAE,CAAC;aAC3D,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,gBAAgB,CAAC,KAAK,EAAE,EAAE;QACxB,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CACF,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAAC,mCAAmC,GAAG,EAAE,CAAC,EAAE,CAC/D;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,oBAAoB,CAAC,KAAK,EAAE,EAAE;QAC5B,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CACF,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAAC,uCAAuC,GAAG,EAAE,CAAC,EAAE,CACnE;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,oBAAoB,CAAC,KAAK,EAAE,EAAE;QAC5B,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CACF,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAChB,gEAAgE,GAAG,EAAE,CACtE,EAAE,CACJ;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,mBAAmB,CAAC,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI;QACnD,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CACF,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAChB,mEAAmE,SAAS,cAAc,SAAS,SAAS,IAAI,EAAE,CACnH,EAAE,CACJ;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,uBAAuB,CAAC,KAAK,EAAE,EAAE;QAC/B,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CACF,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAChB,wEAAwE;YACtE,EAAE,CACL,EAAE,CACJ;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,gBAAgB,CAAC,KAAK,EAAE,EAAE;QACxB,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CACF,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAChB,mEAAmE;YACjE,EAAE,CACL,EAAE,CACJ;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,gBAAgB,CAAC,KAAK,EAAE,EAAE;QACxB,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CACF,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAChB,yEAAyE;YACvE,EAAE,CACL,EAAE,CACJ;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,iBAAiB,CAAC,KAAK,EAAE,EAAE;QACzB,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CACF,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAChB,6DAA6D,GAAG,EAAE,CACnE,EAAE,CACJ;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,sBAAsB,CAAC,KAAK,EAAE,EAAE;QAC9B,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CACF,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAChB,kEAAkE;YAChE,EAAE,CACL,EAAE,CACJ;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,kBAAkB,CAAC,KAAK,EAAE,EAAE;QAC1B,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CACF,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAChB,gEAAgE,GAAG,EAAE,CACtE,EAAE,CACJ;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,kBAAkB,CAAC,KAAK,EAAE,EAAE;QAC1B,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CACF,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAChB,qDAAqD,GAAG,EAAE,CAC3D,EAAE,CACJ;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,oBAAoB,CAAC,KAAK,EAAE,EAAE;QAC5B,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CACF,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAChB,8DAA8D,GAAG,EAAE,CACpE,EAAE,CACJ;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,qBAAqB,CAAC,KAAK,EAAE,IAAI;QAC/B,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CACF,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAChB,mEAAmE;YACjE,IAAI,CACP,EAAE,CACJ;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,wDAAwD;IACxD,4BAA4B;IAC5B,wBAAwB;IACxB,iEAAiE;IACjE,IAAI;IACJ,2CAA2C;IAC3C,uBAAuB,CAAC,KAAK,EAAE,QAAQ;QACrC,OAAO,IAAI,CAAC,WAAW;aACpB,IAAI,CACH,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAAC,+CAA+C,CAAC,EAAE,EACrE,QAAQ,CACT;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED;;;;OAIG;IACH,WAAW,CAAI,SAAS,GAAG,WAAW,EAAE,MAAU;QAChD,OAAO,CAAC,KAAU,EAAiB,EAAE;YACnC,MAAM,YAAY,GAAG,KAAK,CAAC,MAAM,CAAC;YAClC,IAAI,KAAK,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,CAAC,UAAU,IAAI,cAAc,EAAE;gBAC/D,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;aACpB;YACD,+DAA+D;YAC/D,6EAA6E;YAC7E,IAAI;YAEJ,OAAO,uDAAU,CAAC,KAAK,CAAC,CAAC;QAC3B,CAAC,CAAC;IACJ,CAAC;;4EA/ZU,cAAc;iGAAd,cAAc,WAAd,cAAc,mBAFb,MAAM;6FAEP,cAAc;cAH1B,wDAAU;eAAC;gBACV,UAAU,EAAE,MAAM;aACnB;;;;;;;;;;;;;;AChBD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAkD;AAGkF;AAIvC;AAClB;AACX;AAE6D;;;;;;;;;;;;;ICIvH,wEACE;IAAA,mGACA;IAAA,wEAA0E;IAA9C,kTAAoB,uBAAuB,KAAE;IAAC,iEAAM;IAAA,4DAAI;IACtF,4DAAI;;ADAH,MAAM,yBAAyB;IAgBpC,YACS,IAA2B,EAC3B,MAAiB,EAChB,cAA8B,EAC9B,oBAA0C,EAC1C,KAAqB,EACrB,WAAyB;QAL1B,SAAI,GAAJ,IAAI,CAAuB;QAC3B,WAAM,GAAN,MAAM,CAAW;QAChB,mBAAc,GAAd,cAAc,CAAgB;QAC9B,yBAAoB,GAApB,oBAAoB,CAAsB;QAC1C,UAAK,GAAL,KAAK,CAAgB;QACrB,gBAAW,GAAX,WAAW,CAAc;QArBnC,sBAAsB;QACtB,aAAQ,GAAG,MAAM,CAAC;IAqBf,CAAC;IAEJ,QAAQ;QACN,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAC1C,IAAI,IAAI,EAAE;YACR,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;SACtB;QACD,IAAI,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;YACxB,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;SAClC;QACD,MAAM,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC;QACvD,IACE,eAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,MAAM;YACtB,cAAc,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC;YACvC,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EACrB;YACA,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;SACzC;IACH,CAAC;IACD,WAAW,CAAC,EAAU;QACpB,IAAI,CAAC,cAAc,CAAC,YAAY,EAAE,CAAC;QACnC,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,SAAS,CACxC,CAAC,aAAa,EAAE,EAAE;YAChB,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;YAClC,IAAI,aAAa,IAAI,aAAa,CAAC,IAAI,EAAE;gBACvC,IAAI,aAAa,CAAC,IAAI,CAAC,eAAe,EAAE;oBACtC,IAAI,CAAC,UAAU,CACb,uBAAuB,EACvB,IAAI,EACJ,aAAa,CAAC,IAAI,CAAC,aAAa,CACjC,CAAC;iBACH;qBAAM;oBACL,IAAI,CAAC,IAAI,CAAC,OAAO,CACf,wBAAwB,aAAa,CAAC,IAAI,CAAC,SAAS,EAAE,EACtD;wBACE,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC,KAAK;wBAC5C,KAAK,EAAE,aAAa,CAAC,IAAI,CAAC,aAAa;qBACxC,CACF,CAAC;oBACF,IAAI,CAAC,IAAI,CAAC,eAAe,CACvB,iEAAiE,EACjE,IAAI,CACL,CAAC;oBACF,wBAAwB;oBACxB,8DAA8D;oBAC9D,MAAM;oBACN,qBAAqB;oBACrB,sDAAsD;oBACtD,SAAS;oBACT,MAAM;oBACN,KAAK;iBACN;aACF;QACH,CAAC,EACD,CAAC,KAAK,EAAE,EAAE;YACR,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YACnB,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;YAClC,IAAI,CAAC,IAAI,CAAC,eAAe,CACvB,uDAAuD,CACxD,CAAC;QACJ,CAAC,CACF,CAAC;IACJ,CAAC;IACD,oBAAoB,CAAC,KAAa;QAChC,IAAI,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;YACxB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAAC;YAC5C,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAC9C,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAC9C,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,yBAAyB,EAAE,CAAC;YACtD,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;YAC7D,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC;SACrD;QACD,QAAQ,KAAK,EAAE;YACb,KAAK,UAAU,CAAC,CAAC;gBACf,IAAI,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;oBACxB,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,uBAAuB,EAAE,CAAC;oBAEvD,IAAI,CAAC,OAAO,GAAG,iBAAiB,CAAC;oBACjC,IAAI,UAAU,EAAE;wBACd,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;qBACvB;yBAAM;wBACL,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;qBAChC;iBACF;qBAAM;oBACL,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;iBAChC;gBACD,MAAM;aACP;YACD,KAAK,iBAAiB,CAAC,CAAC;gBACtB,IAAI,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;oBACxB,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,4BAA4B,EAAE,CAAC;oBAC5D,IAAI,CAAC,OAAO,GAAG,iBAAiB,CAAC;oBACjC,IAAI,UAAU,EAAE;wBACd,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;qBACvB;yBAAM;wBACL,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC;qBAC3B;iBACF;qBAAM;oBACL,IAAI,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC;iBACvC;gBACD,MAAM;aACP;YACD,KAAK,kBAAkB,CAAC,CAAC;gBACvB,IAAI,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;oBACxB,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,iCAAiC,EAAE,CAAC;oBACjE,IAAI,CAAC,OAAO,GAAG,kBAAkB,CAAC;oBAClC,IAAI,UAAU,EAAE;wBACd,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;qBACvB;yBAAM;wBACL,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC;qBAC3B;iBACF;qBAAM;oBACL,IAAI,CAAC,aAAa,CAAC,kBAAkB,CAAC,CAAC;iBACxC;gBACD,MAAM;aACP;YACD,KAAK,oBAAoB,CAAC,CAAC;gBACzB,IAAI,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;oBACxB,MAAM,UAAU,GACd,IAAI,CAAC,IAAI,CAAC,uCAAuC,EAAE,CAAC;oBACtD,IAAI,CAAC,OAAO,GAAG,oBAAoB,CAAC;oBACpC,IAAI,UAAU,EAAE;wBACd,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;qBACvB;yBAAM;wBACL,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC;qBAC3B;iBACF;qBAAM;oBACL,IAAI,CAAC,aAAa,CAAC,oBAAoB,CAAC,CAAC;iBAC1C;gBACD,MAAM;aACP;YACD,KAAK,mBAAmB,CAAC,CAAC;gBACxB,IAAI,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;oBACxB,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,sCAAsC,EAAE,CAAC;oBACtE,IAAI,CAAC,OAAO,GAAG,mBAAmB,CAAC;oBACnC,IAAI,UAAU,EAAE;wBACd,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;qBACvB;yBAAM;wBACL,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC;qBAC3B;iBACF;qBAAM;oBACL,IAAI,CAAC,aAAa,CAAC,mBAAmB,CAAC,CAAC;iBACzC;gBACD,MAAM;aACP;YACD,KAAK,kBAAkB,CAAC,CAAC;gBACvB,IAAI,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;oBACxB,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,qCAAqC,EAAE,CAAC;oBACrE,IAAI,CAAC,OAAO,GAAG,kBAAkB,CAAC;oBAClC,IAAI,UAAU,EAAE;wBACd,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;qBACvB;yBAAM;wBACL,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC;qBAC3B;iBACF;qBAAM;oBACL,IAAI,CAAC,aAAa,CAAC,kBAAkB,CAAC,CAAC;iBACxC;gBACD,MAAM;aACP;YACD,KAAK,qBAAqB,CAAC,CAAC;gBAC1B,IAAI,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;oBACxB,MAAM,UAAU,GACd,IAAI,CAAC,IAAI,CAAC,wCAAwC,EAAE,CAAC;oBACvD,IAAI,CAAC,OAAO,GAAG,qBAAqB,CAAC;oBACrC,IAAI,UAAU,EAAE;wBACd,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;qBACvB;yBAAM;wBACL,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC;qBAC3B;iBACF;qBAAM;oBACL,IAAI,CAAC,aAAa,CAAC,qBAAqB,CAAC,CAAC;iBAC3C;gBACD,MAAM;aACP;YACD,KAAK,iBAAiB,CAAC,CAAC;gBACtB,IAAI,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;oBACxB,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,oCAAoC,EAAE,CAAC;oBACpE,IAAI,CAAC,OAAO,GAAG,iBAAiB,CAAC;oBACjC,IAAI,UAAU,EAAE;wBACd,IAAI,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC;qBACvC;yBAAM;wBACL,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC;qBAC3B;iBACF;qBAAM;oBACL,IAAI,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC;iBACvC;gBACD,MAAM;aACP;YACD,OAAO,CAAC,CAAC;gBACP,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;gBACxB,MAAM;aACP;SACF;IACH,CAAC;IAED,aAAa,CAAC,GAAG,GAAG,EAAE;QACpB,+BAA+B;QAC/B,uBAAuB;QACvB,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IACzB,CAAC;IACD,UAAU,CAAC,OAAe;QACxB,MAAM,WAAW,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE;YACvD,OAAO,OAAO,CAAC,WAAW,IAAI,OAAO,CAAC;QACxC,CAAC,CAAC,CAAC;QAEH,IAAI,WAAW,EAAE;YACf,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC,oBAAoB,CAAC;YACrD,IAAI,CAAC,oBAAoB,GAAG,WAAW,CAAC,aAAa,CAAC;YACtD,IAAI,CAAC,sBAAsB,GAAG,OAAO,CAAC;YACtC,MAAM,cAAc,GAAG,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACrD,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC;YACxC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC;YAChC,IAAI,OAAO,IAAI,CAAC,EAAE;gBAChB,OAAO;gBACP,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;gBACtE,IAAI,CAAC,cAAc;oBACjB,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,4BAA4B,CAAC,CAAC;aACvE;iBAAM,IAAI,OAAO,IAAI,CAAC,EAAE;gBACvB,iBAAiB;gBACjB,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;aACxE;iBAAM,IAAI,OAAO,IAAI,CAAC,EAAE;gBACvB,kBAAkB;gBAClB,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,8BAA8B,CAC7D,IAAI,CAAC,YAAY,CAClB,CAAC;aACH;iBAAM,IAAI,OAAO,IAAI,CAAC,EAAE;gBACvB,oBAAoB;gBACpB,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,6BAA6B,CAC5D,IAAI,CAAC,YAAY,CAClB,CAAC;aACH;iBAAM,IAAI,OAAO,IAAI,CAAC,EAAE;gBACvB,mBAAmB;gBACnB,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,4BAA4B,CAC3D,IAAI,CAAC,YAAY,CAClB,CAAC;aACH;iBAAM,IAAI,OAAO,IAAI,CAAC,EAAE;gBACvB,kBAAkB;gBAClB,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,2BAA2B,CAC1D,IAAI,CAAC,YAAY,CAClB,CAAC;aACH;iBAAM,IAAI,OAAO,IAAI,CAAC,EAAE;gBACvB,qBAAqB;gBACrB,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,8BAA8B,CAC7D,IAAI,CAAC,YAAY,CAClB,CAAC;aACH;iBAAM,IAAI,OAAO,IAAI,CAAC,EAAE;gBACvB,gCAAgC;gBAChC,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,4BAA4B,CAC3D,IAAI,CAAC,YAAY,CAClB,CAAC;aACH;SACF;IACH,CAAC;IACD,aAAa,CAAC,OAAe;QAC3B,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QACzB,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,iJAA2B,EAAE;YAC9D,KAAK,EAAE,OAAO;YACd,IAAI,EAAE;gBACJ,IAAI,EAAE,IAAI,CAAC,cAAc;aAC1B;SACF,CAAC,CAAC;QACH,SAAS,CAAC,WAAW,EAAE,CAAC,SAAS,CAAC,CAAC,MAAM,EAAE,EAAE;YAC3C,IAAI,MAAM,EAAE;gBACV,IAAI,MAAM,IAAI,QAAQ,EAAE;oBACtB,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;iBAC1C;qBAAM;oBACL,IAAI,CAAC,IAAI,CAAC,eAAe,CACvB,2BAA2B,IAAI,CAAC,cAAc,eAAe,EAC7D,IAAI,CACL,CAAC;oBACF,IAAI,CAAC,kBAAkB,CACrB,IAAI,CAAC,oBAAoB,EACzB,IAAI,CAAC,sBAAsB,CAC5B,CAAC;oBACF,wCAAwC;iBACzC;aACF;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IACD,kBAAkB,CAAC,KAAa,EAAE,OAAe;QAC/C,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,wIAAiC,EAAE;YACpE,KAAK,EAAE,OAAO;YACd,QAAQ,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE;YACrC,IAAI,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE;SAC5C,CAAC,CAAC;QACH,SAAS,CAAC,WAAW,EAAE,CAAC,SAAS,CAAC,CAAC,MAAM,EAAE,EAAE;YAC3C,IAAI,MAAM,EAAE;gBACV,IAAI,MAAM,CAAC,OAAO,IAAI,CAAC,EAAE;oBACvB,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;iBACtC;qBAAM;oBACL,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;iBACjC;aACF;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IACD,iBAAiB,CAAC,OAAe;QAC/B,MAAM,QAAQ,GAAG;YACf,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,OAAO;SACR,CAAC;QACF,IAAI,OAAe,CAAC;QACpB,IAAI,CAAC,cAAc,CAAC,YAAY,EAAE,CAAC;QACnC,IAAI,CAAC,oBAAoB,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,SAAS,CACzD,CAAC,QAAQ,EAAE,EAAE;YACX,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;YAClC,IAAI,QAAQ,EAAE;gBACZ,IAAI,MAAM,GAAG,EAAE,CAAC;gBAEhB,IAAI,OAAO,IAAI,CAAC,EAAE;oBAChB,IAAI,CAAC,IAAI,CAAC,4BAA4B,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;oBACpE,OAAO,GAAG,4BAA4B,CAAC;oBACvC,MAAM,mCACD,MAAM,KACT,6BAA6B,EAC3B,QAAQ,CAAC,IAAI,CAAC,6BAA6B,EAC7C,oBAAoB,EAAE,sCAAsC,EAC5D,8BAA8B,EAAE,eAAe,GAChD,CAAC;iBACH;gBACD,IAAI,OAAO,IAAI,CAAC,EAAE;oBAChB,IAAI,CAAC,IAAI,CAAC,iCAAiC,CACzC,QAAQ,CAAC,IAAI,CAAC,aAAa,CAC5B,CAAC;oBACF,OAAO,GAAG,gCAAgC,CAAC;oBAC3C,MAAM,mCACD,MAAM,KACT,6BAA6B,EAC3B,QAAQ,CAAC,IAAI,CAAC,6BAA6B,EAC7C,oBAAoB,EAAE,sCAAsC,EAC5D,8BAA8B,EAC5B,kCAAkC,GACrC,CAAC;iBACH;gBACD,IAAI,OAAO,IAAI,CAAC,EAAE;oBAChB,IAAI,CAAC,IAAI,CAAC,uCAAuC,CAC/C,QAAQ,CAAC,IAAI,CAAC,aAAa,CAC5B,CAAC;oBACF,OAAO,GAAG,+BAA+B,CAAC;oBAC1C,MAAM,mCACD,MAAM,KACT,6BAA6B,EAC3B,QAAQ,CAAC,IAAI,CAAC,6BAA6B,EAC7C,oBAAoB,EAAE,sCAAsC,EAC5D,8BAA8B,EAAE,iCAAiC,GAClE,CAAC;iBACH;gBACD,IAAI,OAAO,IAAI,CAAC,EAAE;oBAChB,IAAI,CAAC,IAAI,CAAC,sCAAsC,CAC9C,QAAQ,CAAC,IAAI,CAAC,aAAa,CAC5B,CAAC;oBACF,OAAO,GAAG,8BAA8B,CAAC;oBACzC,MAAM,mCACD,MAAM,KACT,6BAA6B,EAC3B,QAAQ,CAAC,IAAI,CAAC,6BAA6B,EAC7C,oBAAoB,EAAE,sCAAsC,EAC5D,8BAA8B,EAAE,gCAAgC,GACjE,CAAC;iBACH;gBACD,IAAI,OAAO,IAAI,CAAC,EAAE;oBAChB,IAAI,CAAC,IAAI,CAAC,qCAAqC,CAC7C,QAAQ,CAAC,IAAI,CAAC,aAAa,CAC5B,CAAC;oBACF,OAAO,GAAG,6BAA6B,CAAC;oBACxC,MAAM,mCACD,MAAM,KACT,6BAA6B,EAC3B,QAAQ,CAAC,IAAI,CAAC,6BAA6B,EAC7C,oBAAoB,EAAE,sCAAsC,EAC5D,8BAA8B,EAAE,+BAA+B,GAChE,CAAC;iBACH;gBAED,IAAI,OAAO,IAAI,CAAC,EAAE;oBAChB,IAAI,CAAC,IAAI,CAAC,wCAAwC,CAChD,QAAQ,CAAC,IAAI,CAAC,aAAa,CAC5B,CAAC;oBACF,OAAO,GAAG,gCAAgC,CAAC;oBAC3C,MAAM,mCACD,MAAM,KACT,6BAA6B,EAC3B,QAAQ,CAAC,IAAI,CAAC,6BAA6B,EAC7C,oBAAoB,EAAE,sCAAsC,EAC5D,8BAA8B,EAC5B,kCAAkC,GACrC,CAAC;iBACH;gBACD,IAAI,OAAO,IAAI,CAAC,EAAE;oBAChB,IAAI,CAAC,IAAI,CAAC,oCAAoC,CAC5C,QAAQ,CAAC,IAAI,CAAC,aAAa,CAC5B,CAAC;oBACF,OAAO,GAAG,yCAAyC,CAAC;iBACrD;gBACD,MAAM,mCACD,MAAM,KACT,IAAI,EAAE,GAAG,QAAQ,CAAC,YAAY,MAAM,OAAO,EAAE,EAC7C,aAAa,EAAE,QAAQ,CAAC,IAAI,CAAC,aAAa,EAC1C,wBAAwB,EAAE,QAAQ,CAAC,IAAI,CAAC,aAAa;oBACrD,4DAA4D;oBAC5D,WAAW,EAAE,OAAO,GACrB,CAAC;gBACF,MAAM,cAAc,GAAG,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC;gBACrD,MAAM,OAAO,GAAG,CAAC,GAAG,cAAc,EAAE,MAAM,CAAC,CAAC;gBAC5C,IAAI,CAAC,IAAI,CAAC,uBAAuB,CAAC,OAAO,CAAC,CAAC;gBAC3C,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;gBAC1B,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;gBACpB,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBACjC,wDAAwD;gBACxD,oBAAoB;gBACpB,uBAAuB;gBACvB,MAAM;gBACN,oEAAoE;gBACpE,4DAA4D;gBAC5D,6DAA6D;gBAC7D,oCAAoC;gBACpC,+CAA+C;gBAC/C,OAAO;gBACP,KAAK;gBACL,8CAA8C;gBAC9C,6BAA6B;aAC9B;QACH,CAAC,EACD,CAAC,KAAK,EAAE,EAAE;YACR,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YACnB,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;YAClC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACjD,CAAC,CACF,CAAC;QACF,IAAI;IACN,CAAC;IACD,kCAAkC;IAClC,sEAAsE;IACtE,sDAAsD;IACtD,IAAI;IAEJ,UAAU,CAAC,QAAgB,EAAE,YAAY,GAAG,KAAK,EAAE,KAAc;QAC/D,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,2EAAc,EAAE;YACjD,KAAK,EAAE,OAAO;YACd,IAAI,EAAE;gBACJ,QAAQ;gBACR,YAAY;gBACZ,KAAK;aACN;SACF,CAAC,CAAC;QAEH,SAAS,CAAC,WAAW,EAAE,CAAC,SAAS,CAAC,CAAC,MAAM,EAAE,EAAE;YAC3C,IAAI,MAAM,EAAE;gBACV,IAAI,MAAM,IAAI,gBAAgB,EAAE;oBAC9B,IAAI,CAAC,gBAAgB,EAAE,CAAC;iBACzB;qBAAM,IAAI,MAAM,IAAI,UAAU,EAAE;oBAC/B,IAAI,CAAC,QAAQ,EAAE,CAAC;iBACjB;qBAAM,IAAI,MAAM,IAAI,YAAY,EAAE;iBAClC;aACF;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IACD,QAAQ;QACN,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,sFAAiB,EAAE;YACpD,KAAK,EAAE,OAAO;YACd,IAAI,EAAE,EAAE;SACT,CAAC,CAAC;QACH,SAAS,CAAC,WAAW,EAAE,CAAC,SAAS,CAAC,CAAC,MAAM,EAAE,EAAE;YAC3C,IAAI,MAAM,EAAE;gBACV,IAAI,MAAM,IAAI,aAAa,EAAE;oBAC3B,IAAI,CAAC,UAAU,CAAC,uBAAuB,CAAC,CAAC;iBAC1C;qBAAM,IAAI,MAAM,IAAI,gBAAgB,EAAE;oBACrC,IAAI,CAAC,gBAAgB,EAAE,CAAC;iBACzB;qBAAM,IAAI,MAAM,IAAI,YAAY,EAAE;iBAClC;aACF;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IACD,gBAAgB;QACd,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,wGAAuB,EAAE;YAC1D,KAAK,EAAE,OAAO;SACf,CAAC,CAAC;QACH,SAAS,CAAC,WAAW,EAAE,CAAC,SAAS,CAAC,CAAC,MAAM,EAAE,EAAE;YAC3C,IAAI,MAAM,EAAE;gBACV,IAAI,MAAM,IAAI,aAAa,EAAE;oBAC3B,IAAI,CAAC,UAAU,CAAC,uBAAuB,CAAC,CAAC;iBAC1C;aACF;QACH,CAAC,CAAC,CAAC;IACL,CAAC;;kGA5fU,yBAAyB;yGAAzB,yBAAyB;QCVtC,6EACE;QAAA,yEAGE;QAAA,yEACE;QACA,+EAA8B;QAAA,yGAA8C;QAAA,4DAAY;QACxF,iHACE;QAGJ,4DAAM;QAEN,yEACE;QAAA,uEACE;QADiB,4IAAS,yBAAqB,iBAAiB,CAAC,IAAC;QAClE,yEACE;QAAA,yEACE;QAAA,8DACE;QADF,0EACE;QAAA,uEACA;QAAA,4DAAM;QAEV,4DAAM;QACN,+DACE;QADF,2EACE;QAAA,6EAAW;QAAA,yFAA6B;QAAA,4DAAY;QACtD,4DAAM;QACN,2EACE;QAAA,6EAAW;QAAA,oEAAQ;QAAA,4DAAY;QAC/B,gFACE;QAAA,2EACA;QAAA,4DAAW;QACf,4DAAM;QACR,4DAAM;QAER,4DAAI;QAGJ,2EAEE;QAAA,yEACE;QADiB,6IAAS,yBAAqB,kBAAkB,CAAC,IAAC;QACnE,0EACE;QAAA,8DACE;QADF,2EACE;QAAA,yEACA;QAAA,uEACA;QAAA,uEACA;QAAA,uEACA;QAAA,uEACA;QAAA,uEACA;QAAA,4DAAI;QACJ,wEACA;QAAA,gFACA;QAAA,uEACA;QAAA,4DAAW;QACX,4DAAO;QACP,4DAAM;QAEV,4DAAM;QACN,+DACE;QADF,2EACE;QAAA,6EAAW;QAAA,2FAA+B;QAAA,4DAAY;QACxD,4DAAM;QACN,2EACE;QAAA,6EAAW;QAAA,oEAAQ;QAAA,4DAAY;QAC/B,gFACE;QAAA,2EACA;QAAA,4DAAW;QACf,4DAAM;QACR,4DAAI;QAEN,4DAAM;QAEN,2EAEE;QAAA,yEACE;QADkB,6IAAS,yBAAqB,UAAU,CAAC,IAAC;QAC5D,0EACE;QAAA,8DACE;QADF,2EACE;QAAA,uEACA;QAAA,4DAAM;QAGV,4DAAM;QACN,+DACE;QADF,2EACE;QAAA,6EAAW;QAAA,0FAA8B;QAAA,4DAAY;QACvD,4DAAM;QACN,2EACE;QAAA,6EAAW;QAAA,oEAAQ;QAAA,4DAAY;QAC/B,gFACE;QAAA,2EACA;QAAA,4DAAW;QACf,4DAAM;QACR,4DAAI;QAEN,4DAAM;QAIN,2EAEE;QAAA,yEACE;QADkB,6IAAS,yBAAqB,iBAAiB,CAAC,IAAC;QACnE,0EACE;QAAA,8DACE;QADF,2EACE;QAAA,uEACA;QAAA,4DAAM;QACV,4DAAM;QACN,+DACE;QADF,2EACE;QAAA,6EAAW;QAAA,kGAAsC;QAAA,4DAAY;QAC/D,4DAAM;QACN,2EACE;QAAA,6EAAW;QAAA,oEAAQ;QAAA,4DAAY;QAC/B,gFACE;QAAA,2EACA;QAAA,4DAAW;QACf,4DAAM;QACR,4DAAI;QAEN,4DAAM;QAEN,2EAEE;QAAA,yEACE;QADiB,6IAAS,yBAAqB,oBAAoB,CAAC,IAAC;QACrE,0EACE;QAAA,8DACE;QADF,2EACE;QAAA,uEACA;QAAA,4DAAM;QAKV,4DAAM;QACN,+DACE;QADF,2EACE;QAAA,6EAAW;QAAA,uFAA2B;QAAA,4DAAY;QACpD,4DAAM;QACN,2EACE;QAAA,6EAAW;QAAA,oEAAQ;QAAA,4DAAY;QAC/B,gFACE;QAAA,2EACA;QAAA,4DAAW;QACf,4DAAM;QACR,4DAAI;QAEN,4DAAM;QAEN,2EAEE;QAAA,yEACE;QADiB,6IAAS,yBAAqB,mBAAmB,CAAC,IAAC;QACpE,0EACE;QAAA,8DACE;QADF,2EACE;QAAA,uEACA;QAAA,4DAAM;QACV,4DAAM;QACN,+DACE;QADF,2EACE;QAAA,6EAAW;QAAA,6FAAiC;QAAA,4DAAY;QAC1D,4DAAM;QACN,2EACE;QAAA,6EAAW;QAAA,oEAAQ;QAAA,4DAAY;QAC/B,gFACE;QAAA,2EACA;QAAA,4DAAW;QACf,4DAAM;QACR,4DAAI;QAEN,4DAAM;QAEN,2EAEE;QAAA,yEACE;QADiB,6IAAS,yBAAqB,kBAAkB,CAAC,IAAC;QACnE,0EACE;QAAA,8DACE;QADF,2EACE;QAAA,uEACA;QAAA,4DAAM;QACV,4DAAM;QACN,+DACE;QADF,2EACE;QAAA,6EAAW;QAAA,8FAAiC;QAAA,4DAAY;QAC1D,4DAAM;QACN,4EACE;QAAA,8EAAW;QAAA,qEAAQ;QAAA,4DAAY;QAC/B,iFACE;QAAA,4EACA;QAAA,4DAAW;QACf,4DAAM;QACR,4DAAI;QAEN,4DAAM;QAEN,4EAEE;QAAA,0EACE;QADkB,8IAAS,yBAAqB,qBAAqB,CAAC,IAAC;QACvE,2EACE;QAAA,8DACE;QADF,4EACE;QAAA,wEACA;QAAA,4DAAM;QAEV,4DAAM;QACN,+DACE;QADF,4EACE;QAAA,8EAAW;QAAA,0GAA6C;QAAA,4DAAY;QACtE,4DAAM;QACN,4EACE;QAAA,8EAAW;QAAA,qEAAQ;QAAA,4DAAY;QAC/B,iFACE;QAAA,4EACA;QAAA,4DAAW;QACf,4DAAM;QACR,4DAAI;QAEN,4DAAM;QAIR,4DAAM;QAGR,4DAAM;QACR,4DAAU;;QAlND,kHAAsD;QAOrC,0DAA0B;QAA1B,wFAA0B;;6FDGvC,yBAAyB;cALrC,uDAAS;eAAC;gBACT,QAAQ,EAAE,uBAAuB;gBACjC,WAAW,EAAE,oCAAoC;gBACjD,SAAS,EAAE,CAAC,oCAAoC,CAAC;aAClD;;;;;;;;;;;;;;AEjBD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAA0D;AACe;;;;;;;;;;;;;ICYrE,0EAGI;IAAA,gFACE;IAAA,mGACF;IAAA,4DAAY;IAGhB,4DAAM;;;IAEI,6EACE;IAAA,0EACE;IAAA,0EAAwB;IAAA,uDAAyB;IAAA,4DAAM;IACvD,0EACE;IAAA,0EACE;IAAA,0EAAkB;IAAA,uDAAqB;IAAA,4DAAM;IAC7C,0EACE;IAAA,uDACF;;IAAA,4DAAM;IAER,4DAAM;IACN,2EACE;IAAA,wDACF;;IAAA,4DAAM;IACN,2EACE;IAAA,wDACF;IAAA,4DAAM;IACR,4DAAM;IAER,4DAAM;IACR,4DAAS;;;IAlBmB,0DAAyB;IAAzB,yFAAyB;IAG3B,0DAAqB;IAArB,qFAAqB;IAErC,0DACF;IADE,yKACF;IAIA,0DACF;IADE,8KACF;IAEE,0DACF;IADE,gGACF;;;IAMd,0EACI;IAAA,gFAA2B;IAAA,yEAAc;IAAA,4DAAY;IACzD,4DAAM;;;IAzBE,sEACA;IAAA,4IACE;IAqBV,oIACI;IAEJ,4DAAM;;;IAzB8D,0DAAuC;IAAvC,2FAAuC;IAsB9E,0DAAiC;IAAjC,oGAAiC;;;IAI9D,0EACE;IAAA,wEAAqC;IAAA,2EAAgB;IAAA,4DAAI;IAK3D,4DAAM;;AD3CL,MAAM,gCAAgC;IAK3C,YACkC,IAAS,EAClC,SAAyD,EACzD,IAA2B,EAC1B,cAA8B,EAC9B,WAAyB,EACzB,cAA8B;QALN,SAAI,GAAJ,IAAI,CAAK;QAClC,cAAS,GAAT,SAAS,CAAgD;QACzD,SAAI,GAAJ,IAAI,CAAuB;QAC1B,mBAAc,GAAd,cAAc,CAAgB;QAC9B,gBAAW,GAAX,WAAW,CAAc;QACzB,mBAAc,GAAd,cAAc,CAAgB;QATxC,oBAAe,GAAG,EAAE,CAAC;IAUlB,CAAC;IAEJ,QAAQ;QACN,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAC5C,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAC9C,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAC9C,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC;IACnD,CAAC;IACD,2BAA2B;IAC3B,2BAA2B;IAC3B,+BAA+B;IAC/B,wCAAwC;IACxC,kDAAkD;IAClD,4DAA4D;IAC5D,SAAS;IACT,gDAAgD;IAChD,IAAI;IACJ,cAAc;QACZ,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,cAAc,CAAC;IAC3C,CAAC;;gHA/BU,gCAAgC,kEAMjC,wEAAe;gHANd,gCAAgC;QCZ7C,yEACE;QAAA,yEACE;QAAA,mEAA0B;QAC1B,4EACE;QAAA,0EAA6B;QAAA,gEAAK;QAAA,4DAAO;QAC3C,4DAAS;QACX,4DAAM;QAEN,yEACE;QAAA,yEACE;QAAA,qEAAI;QAAA,8EAAmB;QAAA,4DAAK;QAC9B,4DAAM;QAEN,8HAGI;QAMM,8HACA;QA0BR,8HACE;QAMN,4DAAM;QACR,4DAAM;;QA5CwD,2DAA0B;QAA1B,wFAA0B;QASrE,0DAAyB;QAAzB,uFAAyB;QA2BL,0DAAyB;QAAzB,uFAAyB;;6FDrCnD,gCAAgC;cAL5C,uDAAS;eAAC;gBACT,QAAQ,EAAE,+BAA+B;gBACzC,WAAW,EAAE,4CAA4C;gBACzD,SAAS,EAAE,CAAC,4CAA4C,CAAC;aAC1D;;sBAOI,oDAAM;uBAAC,wEAAe;;;;;;;;;;;;;;AElB3B;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAkD;AACkB;;;;;;;;;;;AAY7D,MAAM,8BAA8B;IAKzC,YACU,WAAwB,EACzB,IAA2B,EAC1B,cAA8B,EAC9B,WAAyB,EAC1B,SAAkD;QAJjD,gBAAW,GAAX,WAAW,CAAa;QACzB,SAAI,GAAJ,IAAI,CAAuB;QAC1B,mBAAc,GAAd,cAAc,CAAgB;QAC9B,gBAAW,GAAX,WAAW,CAAc;QAC1B,cAAS,GAAT,SAAS,CAAyC;IACxD,CAAC;IAEJ,QAAQ;QACN,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAC5C,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAC9C,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAC9C,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC;YAC5C,WAAW,EAAE,CAAC,EAAE,EAAE,yDAAU,CAAC,QAAQ,CAAC;YACtC,OAAO,EAAE,CAAC,EAAE,EAAE,yDAAU,CAAC,QAAQ,CAAC;YAClC,SAAS,EAAE,CAAC,IAAI,CAAC,SAAS,EAAE,yDAAU,CAAC,QAAQ,CAAC;YAChD,SAAS,EAAE,CAAC,IAAI,CAAC,SAAS,EAAE,yDAAU,CAAC,QAAQ,CAAC;SACjD,CAAC,CAAC;IACL,CAAC;IACD,QAAQ;QACN,IAAI,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE;YAChC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,yBAAyB,CAAC;YACpD,OAAO;SACR;QACD,2CAA2C;QAC3C,IAAI,CAAC,cAAc,CAAC,YAAY,EAAE,CAAC;QACnC,IAAI,CAAC,WAAW;aACb,eAAe,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC;aACvD,SAAS,CACR,CAAC,IAAI,EAAE,EAAE;YACP,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;YAClC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC7B,CAAC,EACD,CAAC,KAAK,EAAE,EAAE;YACR,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YACnB,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;YAClC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,uBAAuB,CAAC;QACpD,CAAC,CACF,CAAC;IACN,CAAC;;4GA5CU,8BAA8B;8GAA9B,8BAA8B;QCb3C,yEACI;QAAA,yEACE;QACE,mEACK;QAAA,4EAAoC;QAAA,0EAA6B;QAAA,gEAAK;QAAA,4DAAO;QAAA,4DAAS;QAC/F,4DAAM;QAEN,yEACI;QAAA,0EACI;QAAA,wFACI;QAAA,yEACI;QAAA,0EACI;QAAA,sEAAK;QAAA,wEAAY;QAAA,4DAAK;QAC1B,4DAAM;QAON,2EACI;QAAA,6EAAW;QAAA,mEAAO;QAAA,4DAAY;QAC9B,sFACI;QAAA,wEACJ;QAAA,4DAAiB;QACrB,4DAAM;QACN,2EACI;QACA,sFACI;QAAA,2EAA6H;QACjI,4DAAiB;QACrB,4DAAM;QAEN,8EAA2C;QAG3C,0FACI;QAAA,8EAAsE;QAAA,kEAAM;QAAA,4DAAS;QACrF,8EACI;QAD4D,uJAAS,cAAU,IAAC;QAChF,kEACJ;QAAA,4DAAS;QACb,4DAAqB;QAEzB,4DAAM;QAEV,4DAAqB;QAEzB,4DAAO;QAEX,4DAAM;QAEV,4DAAM;;QA3CQ,0DAA6B;QAA7B,0FAA6B;;6FDK9B,8BAA8B;cAL1C,uDAAS;eAAC;gBACT,QAAQ,EAAE,6BAA6B;gBACvC,WAAW,EAAE,0CAA0C;gBACvD,SAAS,EAAE,CAAC,0CAA0C,CAAC;aACxD;;;;;;;;;;;;;;AEZD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAkD;AAEA;AAC2B;AAIgC;;;;;;;;;;;;;;;ICkHjF,8DACI;IADJ,0EACI;IAAA,sEACJ;IAAA,4DAAM;IACN,+DAA2C;IAA3C,gFAA2C;IAAA,mEAAQ;IAAA,4DAAY;IAC/D,+EAEI;IAAA,8DACJ;IAAA,4DAAW;;;IAgDS,qEAA8E;;;;IAVlG,0EAEQ;IAFuE,0YAA2D;IAElI,0EACI;IAAA,qEACA;IACJ,4DAAM;IACN,0EACI;IAAA,0EACI;IAAA,0EACI;IAAA,gFAA8B;IAAA,uDAAkC;IAAA,4DAAY;IAC5E,6HAAwE;IAE5E,4DAAM;IACN,0EACI;IAAA,yEAAmB;IAAA,wDAAkC;IAAA,4DAAI;IAE7D,4DAAM;IACV,4DAAM;IACN,2EACI;IAAA,iFACI;IAAA,wDACJ;;IAAA,4DAAY;IAChB,4DAAM;IAEV,4DAAM;IAGd,4DAAM;;;IAlB4C,0DAAkC;IAAlC,kGAAkC;IACpC,0DAA2C;IAA3C,wGAA2C;IAIpD,0DAAkC;IAAlC,kGAAkC;IAMrD,0DACJ;IADI,yLACJ;;;IA6KpB,8DACI;IADJ,0EACI;IAAA,sEACA;IAAA,4DAAM;IACN,+DAA2C;IAA3C,gFAA2C;IAAA,+DAAI;IAAA,4DAAY;;;IA6D/D,0EACI;IAAA,0EACI;IAAA,qEAEJ;IAAA,4DAAM;IACN,0EACI;IAAA,0EACI;IAAA,0EACI;IAAA,gFAA8B;IAAA,uDAAqB;IAAA,4DAAY;IAGnE,4DAAM;IACN,0EACI;IAAA,wEAAmB;IAAA,wDAAqB;IAAA,4DAAI;IAEhD,4DAAM;IACV,4DAAM;IACN,2EACI;IAAA,iFACI;IAAA,wDACJ;IAAA,4DAAY;IAChB,4DAAM;IAEV,4DAAM;IACV,4DAAM;;;IAhBwC,0DAAqB;IAArB,sFAAqB;IAKhC,0DAAqB;IAArB,sFAAqB;IAMxC,0DACJ;IADI,mGACJ;;;;;IAtCxB,+DACI;IADJ,0EACI;IAAA,0EACW;IAAA,gFACJ;IAAA,uDACH;IAAA,4DAAY;IAShB,4DAAM;IAEN,0EAEI;IAAA,0EACI;IAAA,8HACI;IA8HR,4DAAM;IAEN,0EACG;IAAA,0EACI;IAAA,8EAAmG;IAEvG,4DAAM;IACL,2EACI;IAAA,2EACI;IAAA,iFAAqC;IAAA,oEAAQ;IAAA,4DAAY;IAEzD,yEAAgC;IAAA,wDAAkB;IAAA,4DAAI;IAK1D,4DAAM;IAEN,2EACI;IAAA,8EACI;IAD2C,oZAAuC;IAClF,8DACI;IADJ,2EACI;IAAA,uEACA;IAAA,4DAAM;IAEd,4DAAS;IACb,4DAAM;IAGV,4DAAM;IACV,4DAAM;IAEV,4DAAM;IAGV,4DAAM;;;IAhLK,0DACH;IADG,2GACH;IAcsC,0DAAqC;IAArC,yFAAqC;IA0I/B,2DAAkB;IAAlB,sFAAkB;;ADpiB3E,MAAM,yBAAyB;IAcpC,4BAA4B;IAC5B,oBAAoB;IACpB,kBAAkB;IAClB,YACU,cAA8B,EAC9B,WAAyB,EAC1B,IAA2B,EAC3B,MAAiB;QAHhB,mBAAc,GAAd,cAAc,CAAgB;QAC9B,gBAAW,GAAX,WAAW,CAAc;QAC1B,SAAI,GAAJ,IAAI,CAAuB;QAC3B,WAAM,GAAN,MAAM,CAAW;QApB1B,oBAAe,GAAG,EAAE,CAAC;QACrB,yBAAoB,GAAG,EAAE,CAAC;QAG1B,yBAAoB,GAAG,EAAE,CAAC;QAC1B,kBAAa,GAAG,EAAE,CAAC;QAOnB,kBAAa,GAAG,IAAI,4CAAO,EAAE,CAAC;IAS3B,CAAC;IAEJ,QAAQ;QACN,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAC5C,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAC9C,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAC9C,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,yBAAyB,EAAE,CAAC;QACtD,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACxE,IAAI,CAAC,aAAa;aACf,IAAI,CAAC,mEAAY,CAAC,GAAG,CAAC,EAAE,2EAAoB,EAAE,CAAC;aAC/C,SAAS,CAAC,CAAC,KAAa,EAAE,EAAE;YAC3B,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC;QAClC,CAAC,CAAC,CAAC;QACL,IAAI,CAAC,eAAe,EAAE,CAAC;IACzB,CAAC;IACD,eAAe;QACb,IAAI,CAAC,oBAAoB,GAAG,EAAE,CAAC;QAC/B,IAAI,CAAC,cAAc,CAAC,YAAY,EAAE,CAAC;QACnC,IAAI,CAAC,WAAW;aACb,mBAAmB,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC;aAC/D,SAAS,CACR,CAAC,QAAQ,EAAE,EAAE;YACX,8BAA8B;YAC9B,yBAAyB;YACzB,IAAI,CAAC,eAAe,GAAG,EAAE,CAAC;YAC1B,IAAI,QAAQ,CAAC,IAAI,IAAI,QAAQ,CAAC,IAAI,CAAC,OAAO,EAAE;gBAC1C,yBAAyB;gBACzB,6BAA6B;gBAC7B,MAAM,mBAAmB,GAAG,EAAE,CAAC;gBAC/B,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;oBACxC,MAAM,UAAU,GAAG,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;wBACjD,OAAO,CAAC,CAAC,iBAAiB,IAAI,OAAO,CAAC,UAAU,CAAC;oBACnD,CAAC,CAAC,CAAC;oBACH,IAAI,SAAS,GAAG,kBAAkB,CAAC;oBACnC,IAAI,aAAa,GAAG,IAAI,CAAC;oBACzB,IAAI,UAAU,CAAC,qBAAqB,IAAI,CAAC,EAAE;wBACzC,MAAM,OAAO,GAAG,UAAU,CAAC,wBAAwB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;wBAC/D,mDAAmD;wBACnD,SAAS,GAAG,KAAK,CAAC;wBAClB,aAAa,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;qBAC7D;oBAED,MAAM,YAAY,GAAG;wBACnB,IAAI,EAAE,UAAU,CAAC,qBAAqB;wBACtC,SAAS,EAAE,OAAO,CAAC,mBAAmB;wBACtC,OAAO,EAAE,OAAO,CAAC,OAAO;wBACxB,WAAW,EAAE,OAAO,CAAC,WAAW;wBAChC,SAAS,EAAE,OAAO,CAAC,SAAS;wBAC5B,UAAU,EAAE,OAAO,CAAC,UAAU;wBAC9B,UAAU,EAAE,OAAO,CAAC,UAAU;wBAC9B,iDAAiD;wBACjD,kEAAkE;wBAClE,SAAS;wBACT,aAAa;qBAGd,CAAC;oBACF,mBAAmB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;oBACvC,qCAAqC;oBACrC,mCAAmC;oBACnC,WAAW;oBACX,uCAAuC;oBACvC,IAAI;oBACJ,4CAA4C;gBAC9C,CAAC,CAAC,CAAC;gBACH,8DAA8D;gBAC9D,sCAAsC;gBACtC,oCAAoC;gBACpC,MAAM,aAAa,GAAG,mBAAmB,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC;oBAC7D,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;oBAClC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;oBACrB,OAAO,CAAC,CAAC;gBACX,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;gBACxB,gCAAgC;gBAChC,8BAA8B;gBAC9B,qCAAqC;gBACrC,MAAM,mBAAmB,GAAG,EAAE,CAAC;gBAC/B,KAAK,MAAM,MAAM,IAAI,aAAa,EAAE;oBAClC,yBAAyB;oBACzB,MAAM,CAAC,GAAG,EAAE,CAAC;oBACb,aAAa,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;wBACxC,2BAA2B;wBAC3B,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;oBAClB,CAAC,CAAC,CAAC;oBACH,mBAAmB,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC,CAAC;iBACnE;gBACD,iCAAiC;gBACjC,IAAI,CAAC,eAAe,GAAG,mBAAmB,CAAC;gBAC3C,IAAI,CAAC,mBAAmB,CAAC,EAAE,CAAC,CAAC;aAC9B;YACD,mCAAmC;YACnC,qCAAqC;YACrC,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;QACpC,CAAC,EACD,CAAC,GAAG,EAAE,EAAE;YACN,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;YAClC,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;YAC1B,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,uBAAuB,CAAC;QACpD,CAAC,CACF,CAAC;IACN,CAAC;IACD,cAAc,CAAC,IAAI,EAAE,OAAe;QAClC,MAAM,CAAC,GAAG,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,OAAO,CAAC,CAAC;QACvE,MAAM,OAAO,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC;QAC1B,IAAI,IAAI,CAAC,YAAY,IAAI,CAAC,EAAE;YAC1B,IAAI,CAAC,aAAa,GAAG,EAAE,CAAC;YACxB,IAAI,CAAC,cAAc,GAAG,EAAE,CAAC;YACzB,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC,CAAC;SACxB;aAAM;YACL,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC;YACtB,IAAI,CAAC,cAAc,GAAG,OAAO,CAAC;YAC9B,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;SACxC;IACH,CAAC;IAED,WAAW,CAAC,WAAW;QACrB,IAAI,WAAW,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,EAAE;YACvC,MAAM,QAAQ,GAAG;gBACf,WAAW,EAAE,WAAW,CAAC,KAAK,CAAC,IAAI,EAAE;gBACrC,OAAO,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,OAAO;gBACtC,gDAAgD;gBAChD,SAAS,EAAE,IAAI,CAAC,SAAS;gBACzB,SAAS,EAAE,IAAI,CAAC,SAAS;aAC1B,CAAC;YACF,yBAAyB;YACzB,IAAI,CAAC,cAAc,CAAC,YAAY,EAAE,CAAC;YACnC,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC,IAAI,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,SAAS,CAC9D,CAAC,IAAI,EAAE,EAAE;gBACP,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;gBAClC,qBAAqB;gBACrB,WAAW,CAAC,KAAK,GAAG,EAAE,CAAC;gBACvB,iDAAiD;gBACjD,MAAM,YAAY,GAAG;oBACnB,IAAI,EAAE,CAAC;oBACP,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,cAAc,EAAE;oBACtC,OAAO,EAAE,QAAQ,CAAC,OAAO;oBACzB,WAAW,EAAE,QAAQ,CAAC,WAAW;oBACjC,SAAS,EAAE,CAAC;oBACZ,UAAU,EAAE,CAAC;oBACb,UAAU,EAAE,IAAI,CAAC,IAAI;oBACrB,iDAAiD;oBACjD,kEAAkE;oBAClE,SAAS,EAAE,KAAK;oBAChB,aAAa,EACX,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;iBAGlE,CAAC;gBACF,iDAAiD;gBACjD,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;gBACtC,8DAA8D;gBAC9D,mEAAmE;gBACnE,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,SAAS,CAAC,MAAM,CACtD,CAAC,EACD,CAAC,EACD,YAAY,CACb,CAAC;YACJ,CAAC,EACD,CAAC,KAAK,EAAE,EAAE;gBACR,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;gBACnB,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;gBAClC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,uBAAuB,CAAC;YACpD,CAAC,CACF,CAAC;SACH;aAAM;YACL,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,2BAA2B,CAAC;YACtD,OAAO;SACR;IACH,CAAC;IACD,kBAAkB,CAAC,KAAa;QAC9B,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACjC,CAAC;IACD,MAAM;QACJ,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,sBAAsB,EAAE,CAAC;QACnD,wBAAwB;QACxB,IAAI,OAAO,EAAE;YACX,wCAAwC;YACxC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,OAAO,EAAE,CAAC,CAAC;SACjC;aAAM;YACL,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,yCAAyC,CAAC;SACrE;IACH,CAAC;IACD,OAAO;QACL,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,yHAA8B,EAAE;YACjE,QAAQ,EAAE,OAAO;YACjB,KAAK,EAAE,MAAM;YACb,QAAQ,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE;SACtC,CAAC,CAAC;QACH,SAAS,CAAC,WAAW,EAAE,CAAC,SAAS,CAAC,CAAC,MAAM,EAAE,EAAE;YAC3C,2CAA2C;YAC3C,IAAI,MAAM,EAAE;gBACV,IAAI,CAAC,eAAe,EAAE,CAAC;aACxB;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IACO,mBAAmB,CAAC,KAAa;QACvC,sBAAsB;QACtB,MAAM,WAAW,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;QACxC,IAAI,WAAW,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,EAAE;YACjC,IAAI,CAAC,oBAAoB,GAAG,EAAE,CAAC;YAC/B,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE;gBACtC,IAAI,IAAI,CAAC;gBACT,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;oBACnC,IACE,OAAO,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,WAAW,CAAC;wBACnD,OAAO,CAAC,WAAW,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,WAAW,CAAC,EACvD;wBACA,IAAI,GAAG,IAAI,CAAC;qBACb;gBACH,CAAC,CAAC,CAAC;gBACH,IAAI,IAAI,IAAI,IAAI,EAAE;oBAChB,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;iBACxC;YACH,CAAC,CAAC,CAAC;YACH,0CAA0C;SAC3C;aAAM;YACL,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC,eAAe,CAAC;SAClD;IACH,CAAC;;kGAhPU,yBAAyB;yGAAzB,yBAAyB;;QCdtC,+EAIkB;QAGlB,6EACI;QAAA,yEACI;QA2GA,yEACI;QAAA,yEACI;QAAA,mFACI;QAAA,6EACI;QAAA,qIACI;QASJ,yEACI;QAAA,yEACI;QAAA,2EAEI;QAAA,sFACI;QAAA,iFAQA;QAPA,+RAAS,iCAAgC,IAAC;QAD1C,4DAQA;QAAA,8EACE;QAAA,gFAA4C;QAAA,kEAAM;QAAA,4DAAW;QAC7D,4DAAS;QAEZ,4DAAiB;QACxB,4DAAM;QAEV,4DAAM;QAGN,2EACI;QAAA,iFAA8B;QAAA,wDAAqD;QAAA,4DAAY;QAE/F,4DAAM;QAOV,4DAAM;QAEV,2EACI;QAAA,yHAEQ;QA0LZ,4DAAM;QAEV,4DAAU;QAEV,+EACE;QAAA,uIACE;QAKJ,4DAAU;QAGZ,4DAAgB;QAyBlB,8EACI;QAD4B,kJAAS,aAAS,IAAC;QAC/C,8DACI;QADJ,2EACI;QAAA,uEACA;QAAA,4DAAM;QAEd,4DAAS;QAKb,4DAAM;QAGN,yHACI;QAoLR,4DAAM;QAEN,+DAEI;QAFJ,2EAEI;QAAA,8EAA8E;QAAnB,kJAAS,YAAQ,IAAC;QAAC,8EAAkB;QAAA,4DAAS;QAC7G,4DAAM;QAkGV,4DAAM;QACV,4DAAU;;QAlrBV,mFAA0B;QAyJoC,2DAAqD;QAArD,+HAAqD;QAYrD,0DAA4C;QAA5C,6FAA4C;QAgPhE,0DAAsB;QAAtB,oFAAsB;;6FDxYnD,yBAAyB;cALrC,uDAAS;eAAC;gBACT,QAAQ,EAAE,uBAAuB;gBACjC,WAAW,EAAE,oCAAoC;gBACjD,SAAS,EAAE,CAAC,oCAAoC,CAAC;aAClD;;;;;;;;;;;;;;AEbD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAUuB;AAeC;AAImB;;;;;;;;;;;;;;;;ICP1B,6EAA0C;IAAA,sEAAU;IAAA,4DAAa;;;;IAEhE,iFACE;IAD6F,oYAAiC;IAC9H,uDACA;IAAA,4DAAa;;;IAF8C,8FAAiC;IAC5F,0DACA;IADA,uGACA;;;IAFF,0IACE;;;IADyB,sFAAiC;;;IA0DhE,iFACE;IAAA,uDACF;IAAA,4DAAa;;;IAF4C,8EAAiB;IACxE,0DACF;IADE,uFACF;;;IAoBA,iFACE;IAAA,uDACF;IAAA,4DAAa;;;;IAFiC,6FAAyB;IACrE,0DACF;IADE,uFACF;;;IAwBA,iFACE;IAAA,uDACF;IAAA,4DAAa;;;IAFyC,4FAA+B;IACnF,0DACF;IADE,gGACF;;;IAiBR,0EACE;IAAA,0EACE;IAAA,4EAAW;IAAA,yEAAc;IAAA,4DAAY;IACrC,qFACE;IAAA,iFACE;IAAA,6EAAY;IAAA,+DAAI;IAAA,4DAAa;IAC7B,iFAAgD;IAAA,mEAAQ;IAAA,4DAAa;IACrE,kFAA+C;IAAA,oEAAQ;IAAA,4DAAa;IACpE,kFAAgD;IAAA,qEAAU;IAAA,4DAAa;IACvE,kFAA0D;IAAA,8EAAkB;IAAA,4DAAa;IACzF,kFAAgD;IAAA,oEAAQ;IAAA,4DAAa;IACrE,kFAAqD;IAAA,yEAAc;IAAA,4DAAa;IAChF,kFAA8C;IAAA,kEAAM;IAAA,4DAAa;IACnE,4DAAa;IAEf,4DAAiB;IACnB,4DAAM;IACR,4DAAM;;;IAXc,0DAAmC;IAAnC,4GAAmC;IACnC,0DAAkC;IAAlC,2GAAkC;IAClC,0DAAmC;IAAnC,4GAAmC;IACnC,0DAA6C;IAA7C,qHAA6C;IAC7C,0DAAmC;IAAnC,2GAAmC;IACnC,0DAAwC;IAAxC,gHAAwC;IACxC,0DAAiC;IAAjC,yGAAiC;;;ADnI3D,IAAK,gBAQJ;AARD,WAAK,gBAAgB;IACnB,kCAAc;IACd,iCAAa;IACb,kCAAc;IACd,2CAAuB;IACvB,iCAAa;IACb,sCAAkB;IAClB,+BAAW;AACb,CAAC,EARI,gBAAgB,KAAhB,gBAAgB,QAQpB;AACD,IAAK,SAUJ;AAVD,WAAK,SAAS;IACZ,8BAAiB;IACjB,8BAAiB;IACjB,8BAAiB;IACjB,6BAAgB;IAChB,6BAAgB;IAChB,8BAAiB;IACjB,6BAAgB;IAChB,8BAAiB;IACjB,gCAAmB;AACrB,CAAC,EAVI,SAAS,KAAT,SAAS,QAUb;AACD,IAAK,UAUJ;AAVD,WAAK,UAAU;IACb,qCAAyB;IACzB,8BAAkB;IAClB,gCAAoB;IACpB,sCAA0B;IAC1B,oCAAwB;IACxB,8BAAkB;IAClB,uCAA2B;IAC3B,kDAAsC;IACtC,6BAAe;AACjB,CAAC,EAVI,UAAU,KAAV,UAAU,QAUd;AACD,IAAK,cAwMJ;AAxMD,WAAK,cAAc;IACjB,gCAAgB;IAChB,sCAAoB;IACpB,qCAAmB;IACnB,sCAAoB;IACpB,sCAAoB;IACpB,qCAAmB;IACnB,wCAAsB;IACtB,qCAAmB;IACnB,yCAAuB;IACvB,wCAAsB;IACtB,sCAAoB;IACpB,sCAAoB;IACpB,qCAAmB;IACnB,qCAAmB;IACnB,oCAAkB;IAClB,qCAAmB;IACnB,yCAAuB;IACvB,qCAAmB;IACnB,oCAAkB;IAClB,qCAAmB;IACnB,sCAAoB;IACpB,wCAAsB;IACtB,oCAAkB;IAClB,sCAAoB;IACpB,qCAAmB;IACnB,wCAAsB;IACtB,wCAAsB;IACtB,sCAAoB;IACpB,yCAAuB;IACvB,qCAAmB;IACnB,sCAAoB;IACpB,uCAAqB;IACrB,wCAAsB;IACtB,sCAAoB;IACpB,qCAAmB;IACnB,yCAAuB;IACvB,sCAAoB;IACpB,yCAAuB;IACvB,qCAAmB;IACnB,sCAAoB;IACpB,qCAAmB;IACnB,yCAAuB;IACvB,oCAAkB;IAClB,qCAAmB;IACnB,qCAAmB;IACnB,wCAAsB;IACtB,yCAAuB;IACvB,wCAAsB;IACtB,yCAAuB;IACvB,wCAAsB;IACtB,uCAAqB;IACrB,qCAAmB;IACnB,oCAAkB;IAClB,oCAAkB;IAClB,yCAAuB;IACvB,mCAAiB;IACjB,2CAAyB;IACzB,wCAAsB;IACtB,oCAAkB;IAClB,qCAAmB;IACnB,mCAAiB;IACjB,wCAAsB;IACtB,yCAAuB;IACvB,sCAAoB;IACpB,0CAAwB;IACxB,uCAAqB;IACrB,yCAAuB;IACvB,yCAAuB;IACvB,oCAAkB;IAClB,sCAAoB;IACpB,uCAAqB;IACrB,yCAAuB;IACvB,yCAAuB;IACvB,uCAAqB;IACrB,qCAAmB;IACnB,wCAAsB;IACtB,mCAAiB;IACjB,sCAAoB;IACpB,uCAAqB;IACrB,oCAAkB;IAClB,qCAAmB;IACnB,qCAAmB;IACnB,oCAAkB;IAClB,sCAAoB;IACpB,qCAAmB;IACnB,sCAAoB;IACpB,qCAAmB;IACnB,qCAAmB;IACnB,uCAAqB;IACrB,uCAAqB;IACrB,wCAAsB;IACtB,oCAAkB;IAClB,2CAAyB;IACzB,4CAA0B;IAC1B,wCAAsB;IACtB,mCAAiB;IACjB,oCAAkB;IAClB,oCAAkB;IAClB,uCAAqB;IACrB,uCAAqB;IACrB,oCAAkB;IAClB,oCAAkB;IAClB,sCAAoB;IACpB,uCAAqB;IACrB,oCAAkB;IAClB,oCAAkB;IAClB,uCAAqB;IACrB,mCAAiB;IACjB,oCAAkB;IAClB,wCAAsB;IACtB,qCAAmB;IACnB,oCAAkB;IAClB,uCAAqB;IACrB,qCAAmB;IACnB,sCAAoB;IACpB,oCAAkB;IAClB,yCAAuB;IACvB,uCAAqB;IACrB,oCAAkB;IAClB,oCAAkB;IAClB,oCAAkB;IAClB,uCAAqB;IACrB,sCAAoB;IACpB,uCAAqB;IACrB,qCAAmB;IACnB,sCAAoB;IACpB,qCAAmB;IACnB,oCAAkB;IAClB,yCAAuB;IACvB,oCAAkB;IAClB,0CAAwB;IACxB,wCAAsB;IACtB,oCAAkB;IAClB,qCAAmB;IACnB,sCAAoB;IACpB,oCAAkB;IAClB,qCAAmB;IACnB,qCAAmB;IACnB,uCAAqB;IACrB,oCAAkB;IAClB,uCAAqB;IACrB,oCAAkB;IAClB,qCAAmB;IACnB,wCAAsB;IACtB,0CAAwB;IACxB,oCAAkB;IAClB,oCAAkB;IAClB,qCAAmB;IACnB,wCAAsB;IACtB,uCAAqB;IACrB,oCAAkB;IAClB,wCAAsB;IACtB,uCAAqB;IACrB,qCAAmB;IACnB,wCAAsB;IACtB,sCAAoB;IACpB,qCAAmB;IACnB,qCAAmB;IACnB,mCAAiB;IACjB,mCAAiB;IACjB,mCAAiB;IACjB,0CAAwB;IACxB,sCAAoB;IACpB,qCAAmB;IACnB,qCAAmB;IACnB,oCAAkB;IAClB,sCAAoB;IACpB,sCAAoB;IACpB,4CAA0B;IAC1B,qCAAmB;IACnB,sCAAoB;IACpB,qCAAmB;IACnB,sCAAoB;IACpB,uCAAqB;IACrB,oCAAkB;IAClB,4CAA0B;IAC1B,uCAAqB;IACrB,mCAAiB;IACjB,mCAAiB;IACjB,sCAAoB;IACpB,qCAAmB;IACnB,qCAAmB;IACnB,uCAAqB;IACrB,wCAAsB;IACtB,wCAAsB;IACtB,oCAAkB;IAClB,yCAAuB;IACvB,oCAAkB;IAClB,uCAAqB;IACrB,oCAAkB;IAClB,sCAAoB;IACpB,qCAAmB;IACnB,mCAAiB;IACjB,oCAAkB;IAClB,oCAAkB;IAClB,uCAAqB;IACrB,qCAAmB;IACnB,oCAAkB;IAClB,oCAAkB;AACpB,CAAC,EAxMI,cAAc,KAAd,cAAc,QAwMlB;AAOM,MAAM,gBAAgB;IAgD3B,YACU,WAAwB,EACxB,IAAgB,EAChB,cAA8B,EAC9B,WAAyB,EAC1B,IAA2B;QAJ1B,gBAAW,GAAX,WAAW,CAAa;QACxB,SAAI,GAAJ,IAAI,CAAY;QAChB,mBAAc,GAAd,cAAc,CAAgB;QAC9B,gBAAW,GAAX,WAAW,CAAc;QAC1B,SAAI,GAAJ,IAAI,CAAuB;QApDpC,aAAQ,GAAG,SAAS,CAAC;QAIrB,mBAAc,GAAG,KAAK,CAAC;QACvB,kBAAa,GAAG,gBAAgB,CAAC;QAyBjC,oBAAoB;QACpB,cAAS,GAAG,EAAE,CAAC;QACf,mBAAc,GAAG,EAAE,CAAC;QACpB,gBAAW,GAAG,cAAc,CAAC;QAC7B,yBAAoB,GAAG,EAAE,CAAC;QAC1B,sBAAiB,GAAG,EAAE,CAAC;QACvB,6BAAwB,GAAG,EAAE,CAAC;QAC9B,yBAAoB,GAAG,EAAE,CAAC;QAC1B,mBAAc,GAAG,IAAI,CAAC;QACtB,kBAAa,GAAG,IAAI,CAAC;QACrB,cAAS,GAAG,EAAE,CAAC;QACf,WAAM,GAAG,SAAS,CAAC;QACnB,eAAU,GAAG,EAAE,CAAC;QAGhB,YAAO,GAAG,IAAI,4CAAO,EAAE,CAAC;QACxB,YAAO,GAAG,KAAK,CAAC;QAQd,kDAAkD;QAClD,IAAI,CAAC,cAAc,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACpD,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC,cAAc,CAAC;QAChD,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC5C,CAAC;IAnDD,IACI,UAAU,CAAC,IAAa;QAC1B,IAAI,IAAI,EAAE;YACR,IAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,OAAO,EAAE;gBAChD,IAAI,CAAC,wBAAwB,GAAG,EAAE;gBAClC,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;aAC5B;YAED,IAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,OAAO,EAAE;gBAC7C,IAAI,CAAC,oBAAoB,GAAG,EAAE,CAAC;gBAC/B,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC;aAC7B;YAED,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;YAC3B,IAAI,CAAC,UAAU,CAAC,gBAAgB,EAAE,CAAC;SACpC;IACH,CAAC;IACD,IACI,MAAM,CAAC,IAAI;QACb,IAAI,IAAI,EAAE;YACR,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;SACxB;IACH,CAAC;IA+BD,QAAQ;QACN,MAAM,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;QACvH,IAAI,CAAC,wBAAwB,GAAG,cAAc,IAAI,EAAE,CAAC;QACrD,IAAI,CAAC,cAAc,EAAE;YACnB,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;SAC7D;QACD,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAC5C,IAAI,CAAC,OAAO;aACT,IAAI,CAAC,mEAAY,CAAC,IAAI,CAAC,EAAE,2EAAoB,EAAE,CAAC;aAChD,SAAS,CAAC,CAAC,KAAK,EAAE,EAAE;YACnB,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;QACxC,CAAC,CAAC,CAAC;QAEL,IAAI,CAAC,WAAW,EAAE,CAAC;IACrB,CAAC;IACD,qBAAqB,CAAC,KAAK;QACzB,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;QAChI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;QACnD,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;IAC5B,CAAC;IACD,qBAAqB,CAAC,KAAK;QACzB,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;QAC1B,IAAI,CAAC,wBAAwB,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC;QACnD,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;IACvF,CAAC;IAED,oBAAoB,CAAC,KAAK;QACxB,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;QACjI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;QAChD,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;IAC7B,CAAC;IAED,mBAAmB,CAAC,KAAK,EAAE,IAAY;QACrC,IAAI,IAAI,KAAK,YAAY,EAAE;YACzB,IAAI,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC,EAAE;gBACrG,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;gBAC3B,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;aACtF;SACF;aAAM,IAAI,IAAI,KAAK,aAAa,EAAE;YACjC,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,KAAK,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC;YAC7G,IAAI,IAAI,EAAE;gBACR,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;gBAC3B,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;aACjE;SACF;QAED,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,OAAO,EAAE;YACjD,KAAK,CAAC,MAAM,CAAC,KAAK,GAAG,EAAE;YACvB,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;SAC5B;QAED,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,OAAO,EAAE;YAC9C,KAAK,CAAC,MAAM,CAAC,KAAK,GAAG,EAAE,CAAC;YACxB,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC;SAC7B;IACH,CAAC;IAED,kBAAkB,CAAC,KAAK;QACtB,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,KAAK,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAEtF,IAAG,IAAI,EAAE;YACP,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;YAC3B,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC,QAAQ,CAAC;YAC1C,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;SACjE;IACH,CAAC;IAED,MAAM,CAAC,IAAsB;QAC3B,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;QAC5B,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC;QAE9B,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAChC,CAAC;IAED,WAAW;;QACT,sCAAsC;QACtC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QACpB,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC;QAEhD,IAAI,WAAW,KAAI,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,MAAM,GAAE;YACtC,IAAI,CAAC,SAAS,GAAG,CAAC,GAAG,WAAW,CAAC,CAAC;YAClC,IAAI,CAAC,oBAAoB,SAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,aAAa,KAAK,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,WAAW,CAAC,0CAAE,QAAQ,CAAC;YAC5H,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;SACtB;aAAM;YACL,IAAI,CAAC,WAAW;iBACb,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC;iBACxB,SAAS,CACR,CAAC,QAAQ,EAAE,EAAE;;gBACX,IAAI,CAAC,SAAS,GAAG,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;gBACpC,IAAI,CAAC,oBAAoB,SAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,aAAa,KAAK,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,WAAW,CAAC,0CAAE,QAAQ,CAAC;gBAC5H,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;gBAE9C,qCAAqC;gBACrC,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;YACvB,CAAC,EACD,CAAC,KAAK,EAAE,EAAE;gBACR,sCAAsC;gBACtC,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;gBACrB,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,wBAAwB,CAAC;YACrD,CAAC,CACF,CAAC;SACL;IACH,CAAC;IAED,UAAU,CAAC,YAA8B;QACvC,IAAI,YAAY,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,IAAI,CAAC,EAAE;YACzC,iDAAiD;YACjD,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,gCAAgC,CAAC;YAC3D,OAAO;SACR;QACD,4CAA4C;QAC5C,sCAAsC;QACtC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QACpB,IAAI,CAAC,WAAW;aACb,cAAc,CAAC,IAAI,CAAC,KAAK,EAAE,YAAY,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;aACrD,SAAS,CACR,CAAC,QAAQ,EAAE,EAAE;YACX,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC;YACrB,sCAAsC;YACtC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE;gBAClC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;YACxC,CAAC,CAAC,CAAC;YACH,gCAAgC;YAChC,qCAAqC;YACrC,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;QACvB,CAAC,EACD,CAAC,KAAK,EAAE,EAAE;YACR,sCAAsC;YACtC,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;YACrB,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,wBAAwB,CAAC;QACrD,CAAC,CACF,CAAC;IACN,CAAC;IACD,eAAe,CAAC,OAAO;;QACrB,IAAI,IAAI,GAAG,EAAE,CAAC;QACd,IAAI,GAAG;YACL,iBAAiB,EAAE,OAAO,CAAC,gBAAgB;YAC3C,kBAAkB,EAAE,OAAO,CAAC,UAAU;YACtC,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,SAAS,EAAE,SAAS,CAAC,UAAU,CAAC,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC,CAAC;YAC5D,yDAAyD;YACzD,WAAW,QAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,KAAK,OAAO,CAAC,aAAa,CAAC,0CAAE,aAAa;YAChG,YAAY,EAAE,OAAO,CAAC,UAAU;SACjC,CAAC;QACF,IAAI,OAAO,CAAC,WAAW,EAAE;YACvB,IAAI,OAAO,CAAC,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;gBACrC,MAAM,YAAY,GAAG,OAAO,CAAC,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBACpD,IAAI,mCACC,IAAI,KACP,gBAAgB,EAAE,YAAY,CAAC,CAAC,CAAC,EACjC,UAAU,EAAE,YAAY,CAAC,CAAC,CAAC,GAC5B,CAAC;aACH;iBAAM;gBACL,IAAI,mCACC,IAAI,KACP,gBAAgB,EAAE,OAAO,CAAC,WAAW,GACtC,CAAC;aACH;SACF;QACD,IAAI,OAAO,CAAC,WAAW,IAAI,OAAO,CAAC,WAAW,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE;YAChE,MAAM,YAAY,GAAG,OAAO,CAAC,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YACpD,IAAI,mCACC,IAAI,KACP,gBAAgB,EAAE,YAAY,CAAC,CAAC,CAAC,EACjC,UAAU,EAAE,YAAY,CAAC,CAAC,CAAC,GAC5B,CAAC;SACH;QACD,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAClB,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QACjC,sCAAsC;IACxC,CAAC;IACD,IAAI,eAAe;QACjB,OAAO,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC;IAClC,CAAC;;gFA1OU,gBAAgB;gGAAhB,gBAAgB;;QC5Q7B,8EACE;QAAA,yEACE;QAAA,yEACE;QAAA,yEACE;QAAA,yEACE;QAKA,oFAEE;QAAA,oEACA;QAAA,8EAQG;QARiB,oRAAS,eAAoB,IAAC;QAAlD,4DAQG;QAAA,8FACE;QAAA,6HAA0C;QAC1C,2MACC;QAKA,4DAAmB;QAQnB,8EACE;QADqE,sRAAS,mBAAwB,IAAC;QACvG,gFAA4C;QAAA,kEAAM;QAAA,4DAAW;QAC7D,4DAAS;QACnB,4DAAiB;QAEnB,4DAAM;QACR,4DAAM;QACR,4DAAM;QACN,0EACE;QAAA,2EACE;QAAA,6EAAW;QAAA,0EAAc;QAAA,4DAAY;QACnC,qFACE;QAAA,wEACF;QAAA,4DAAiB;QACrB,4DAAM;QACN,2EACE;QAAA,6EAAW;QAAA,yEAAa;QAAA,4DAAY;QAClC,qFACE;QAAA,wEACF;QAAA,4DAAiB;QAErB,4DAAM;QACN,2EAEE;QAAA,6EAAW;QAAA,uEAAW;QAAA,4DAAY;QAChC,qFACE;QAAA,wEACF;QAAA,4DAAiB;QAErB,4DAAM;QACN,2EACE;QAAA,2EACE;QAAA,6EAAW;QAAA,uEAAW;QAAA,4DAAY;QASlC,qFACE;QAAA,6EAEA;QAFmD,8IAAS,iCAA6B,IAAC,oFACL,gCAA4B,YAAY,CAAC,IADpC;QAA1F,4DAEA;QAAA,4FACE;QAD8C,2KAAkB,iCAA6B,IAAC;QAC9F,6HACE;QAEJ,4DAAmB;QACrB,4DAAiB;QACnB,4DAAM;QACR,4DAAM;QAEN,2EACI;QAAA,6EAAW;QAAA,gEAAI;QAAA,4DAAY;QAC3B,qFACE;QAAA,wEACF;QAAA,4DAAiB;QAGrB,4DAAM;QAEN,2EACE;QAAA,2EACE;QAAA,6EAAW;QAAA,iEAAK;QAAA,4DAAY;QAC5B,sFACE;QAAA,kFACE;QAAA,6HACE;QAEJ,4DAAa;QACb,4DAAiB;QAErB,4DAAM;QACR,4DAAM;QAGN,2EACE;QAAA,2EACE;QAAA,6EAAW;QAAA,mEAAO;QAAA,4DAAY;QAU9B,qFACE;QAAA,6EAEA;QAF+C,8IAAS,gCAA4B,IAAC,oFACZ,gCAA4B,aAAa,CAAC,IAD9B;QAArF,4DAEA;QAAA,4FACE;QAD+C,2KAAkB,8BAA0B,IAAC;QAC5F,6HACE;QAEJ,4DAAmB;QACrB,4DAAiB;QACnB,4DAAM;QACR,4DAAM;QAGN,2EAEE;QAAA,6EAAW;QAAA,2EAAe;QAAA,4DAAY;QACpC,qFACE;QAAA,wEACF;QAAA,4DAAiB;QAGrB,4DAAM;QAEN,gHACE;QAiBJ,4DAAM;QAER,4DAAM;QACR,qEAAe;;;;;;QA1KD,qFAAwB;QAkBxB,0DAAwB;QAAxB,gFAAwB;QAIT,0DAA4B;QAA5B,6EAA4B;QA8CZ,2DAA8C;QAA9C,uKAA8C;QAYpE,0DAAkC;QAAlC,+FAAkC;QAE/B,0DAA4C;QAA5C,6FAA4C;QAsB5C,2DAAiC;QAAjC,kFAAiC;QAWd,0DAA+C;QAA/C,wKAA+C;QAa9E,0DAA8B;QAA9B,2FAA8B;QAElB,0DAAyC;QAAzC,0FAAyC;QAmBlC,0DAA4C;QAA5C,8GAA4C;;6FDuHhE,gBAAgB;cAL5B,uDAAS;eAAC;gBACT,QAAQ,EAAE,aAAa;gBACvB,WAAW,EAAE,0BAA0B;gBACvC,SAAS,EAAE,CAAC,0BAA0B,CAAC;aACxC;kdAQU,UAAU;kBAAlB,mDAAK;YAEF,UAAU;kBADb,mDAAK;YAkBF,MAAM;kBADT,mDAAK;;;;;;;;;;;;;;AErSR;AAAA;AAAA;AAAA;AAAA;AAAA;AAA0D;AAKxB;;;;;AAQ3B,MAAM,0BAA0B;IACrC,YACS,SAAmD,EAClD,cAA8B,EAC/B,MAAiB,EACQ,IAAS;QAHlC,cAAS,GAAT,SAAS,CAA0C;QAClD,mBAAc,GAAd,cAAc,CAAgB;QAC/B,WAAM,GAAN,MAAM,CAAW;QACQ,SAAI,GAAJ,IAAI,CAAK;IACxC,CAAC;IAGJ,QAAQ;QACN,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;QAC/B,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC;QACjC,8DAA8D;QAC9D,0CAA0C;QAC1C,mBAAmB;QACnB,gEAAgE;QAChE,wBAAwB;QACxB,gGAAgG;QAEhG,gCAAgC;QAChC,0CAA0C;QAC1C,MAAM;QACN,IAAI;QACJ,uBAAuB;QAEvB,IAAI;IACN,CAAC;;oGA1BU,0BAA0B,qeAK3B,wEAAe;0GALd,0BAA0B;QCbvC,yEACE;QAKA,gEACA;QAAA,yEAEE;QAAA,uEAAkB;QAAA,oEAA2C;QAAA,4DAAI;QACnE,4DAAM;QAEJ,wFACE;QAAA,yEACE;QAAA,yEACC;QAAA,yEACC;QAAA,wEAAwB;QAAA,wDAAU;QAAA,4DAAK;QACvC,4DAAM;QACN,0EACC;QAAA,qEAAI;QAAA,wDACJ;QAAA,4DAAI;QAGL,4DAAM;QACR,4DAAM;QAGR,sEAEM;QACN,4DAAM;QACR,4DAAqB;QACrB,qFAEqB;QAGzB,4DAAM;;QArB4B,2DAAU;QAAV,2EAAU;QAG7B,0DACJ;QADI,sFACJ;;6FDPE,0BAA0B;cALtC,uDAAS;eAAC;gBACT,QAAQ,EAAE,wBAAwB;gBAClC,WAAW,EAAE,qCAAqC;gBAClD,SAAS,EAAE,CAAC,qCAAqC,CAAC;aACnD;;sBAMI,oDAAM;uBAAC,wEAAe;;;;;;;;;;;;;;AElB3B;AAAA;AAAA;AAAA;AAA2C;AACgB;;AAE3D,wFAAwF;AAIjF,MAAM,iBAAkB,SAAQ,wEAAiB;IACtD,KAAK,CAAC,KAAU;QACd,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE;YACxD,IAAI,KAAK,CAAC,MAAM,IAAI,EAAE,EAAE;gBACtB,MAAM,GAAG,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBAC7B,MAAM,IAAI,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC5B,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;gBACjC,MAAM,IAAI,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC5B,2BAA2B;gBAC3B,yBAAyB;gBACzB,4BAA4B;gBAC5B,0BAA0B;gBAC1B,2BAA2B;gBAC3B,yBAAyB;gBACzB,IAAI,KAAK,GAAG,EAAE,EAAE;oBACd,+BAA+B;oBAC/B,4CAA4C;oBAC5C,uBAAuB;oBACvB,SAAS;oBACT,OAAO;iBACR;gBACD,4CAA4C;gBAC5C,OAAO,IAAI,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;aACpC;SACF;QACD,MAAM,SAAS,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACxE,OAAO,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC;IACvD,CAAC;IAED,wDAAwD;IACxD,MAAM,CAAC,IAAU,EAAE,aAAqB;QACtC,IAAI,GAAG,IAAI,IAAI,CACb,IAAI,CAAC,GAAG,CACN,IAAI,CAAC,WAAW,EAAE,EAClB,IAAI,CAAC,QAAQ,EAAE,EACf,IAAI,CAAC,OAAO,EAAE,EACd,IAAI,CAAC,QAAQ,EAAE,EACf,IAAI,CAAC,UAAU,EAAE,EACjB,IAAI,CAAC,UAAU,EAAE,EACjB,IAAI,CAAC,eAAe,EAAE,CACvB,CACF,CAAC;QACF,aAAa,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,aAAa,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC;QAEtE,MAAM,GAAG,GAAG,IAAI,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;QAEhE,OAAO,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,iBAAiB,EAAE,EAAE,CAAC,CAAC;IACzD,CAAC;;4GA/CU,iBAAiB;oGAAjB,iBAAiB,WAAjB,iBAAiB,mBAFhB,MAAM;yHAEP,iBAAiB;6FAAjB,iBAAiB;cAH7B,wDAAU;eAAC;gBACV,UAAU,EAAE,MAAM;aACnB;;;;;;;;;;;;;;ACND;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAA0D;AACU;AAKlC;;;;;;;;;;;;;;;;;;ICKtB,qEAAmC;IAAA,wEAAa;IAAA,4DAAK;;;IACrD,qEAAwC;IAAA,oFAAyB;IAAA,4DAAK;;;IAG1E,gFAA8D;IAAA,mIAAwE;IAAA,4DAAY;;;IAQtI,iFAAgE;IAAA,uDAAa;IAAA,4DAAa;;;IAAjD,2FAAsB;IAAC,0DAAa;IAAb,6EAAa;;;;IAKrE,+EACE;IAAA,uDACA;IAAA,6EACE;IADoB,wXAAoC;IACxD,2EAAU;IAAA,iEAAM;IAAA,4DAAW;IAC7B,4DAAS;IACX,4DAAW;;;IAJT,0DACA;IADA,wFACA;;;;IAbtB,0EACE;IAAA,0EACE;IAAA,0EACE;IAAA,4EAAW;IAAA,2EAAgB;IAAA,4DAAY;IACvC,qFACE;IAAA,iFACI;IAD6C,yWAA4C;IACzF,wIAAgE;IACpE,4DAAa;IACjB,4DAAiB;IACF,4DAAM;IACN,oFACC;IAAA,oIACE;IAMJ,4DAAgB;IAChC,4DAAM;IACR,4DAAM;;;IAdkB,0DAA4B;IAA5B,mFAA4B;IAKtB,0DAAiC;IAAjC,wFAAiC;;ADThE,MAAM,sBAAsB;IASjC,YACkC,IAAS,EAClC,SAA+C,EAC9C,WAAwB,EACzB,MAAiB,EAChB,IAA2B,EAC3B,cAA8B,EAC9B,WAAyB,EACzB,cAA8B;QAPN,SAAI,GAAJ,IAAI,CAAK;QAClC,cAAS,GAAT,SAAS,CAAsC;QAC9C,gBAAW,GAAX,WAAW,CAAa;QACzB,WAAM,GAAN,MAAM,CAAW;QAChB,SAAI,GAAJ,IAAI,CAAuB;QAC3B,mBAAc,GAAd,cAAc,CAAgB;QAC9B,gBAAW,GAAX,WAAW,CAAc;QACzB,mBAAc,GAAd,cAAc,CAAgB;QAdxC,cAAS,GAAG,UAAU,CAAC;QAGvB,YAAO,GAAG,EAAE,CAAC;QAEb,iBAAY,GAAG,EAAE,CAAC;IAUf,CAAC;IAEJ,QAAQ;QACN,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAC5C,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAC9C,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAE9C,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC;YAC5C,cAAc,EAAE,CAAC,sCAAsC,CAAC;YACxD,kBAAkB,EAAE,CAAC,EAAE,CAAC;YACxB,WAAW,EAAE,CAAC,EAAE,EAAE,yDAAU,CAAC,QAAQ,CAAC;YACtC,OAAO,EAAE,CAAC,UAAU,CAAC;YACrB,SAAS,EAAE,CAAC,IAAI,CAAC,SAAS,EAAE,yDAAU,CAAC,QAAQ,CAAC;YAChD,SAAS,EAAE,CAAC,IAAI,CAAC,SAAS,EAAE,yDAAU,CAAC,QAAQ,CAAC;SACjD,CAAC,CAAC;QACH,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;QAChC,IAAI,IAAI,CAAC,SAAS,IAAI,eAAe,EAAE;YACrC,UAAU,CAAC,GAAG,EAAE;gBACd,IAAI,CAAC,aAAa,EAAE,CAAC;YACvB,CAAC,EAAE,CAAC,CAAC,CAAC;SACP;IACH,CAAC;IACD,QAAQ;QACN,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;QACxC,IAAI,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE;YAChC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,yBAAyB,CAAC;YACpD,OAAO;SACR;QACD,IAAI,CAAC,cAAc,CAAC,YAAY,EAAE,CAAC;QACnC,IAAI,QAAQ,GAAG,EAAE,CAAC;QAClB,IAAI,IAAI,CAAC,SAAS,IAAI,UAAU,EAAE;YAChC,QAAQ,qBACH,IAAI,CAAC,eAAe,CAAC,KAAK,CAC9B,CAAC;SACH;aAAM;YACL,MAAM,UAAU,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC;YAC3D,QAAQ,mCACH,IAAI,CAAC,eAAe,CAAC,KAAK,KAC7B,MAAM,EAAE,UAAU,GACnB,CAAC;SACH;QAED,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC,IAAI,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,SAAS,CAC9D,CAAC,IAAI,EAAE,EAAE;YACP,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;YAClC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC7B,CAAC,EACD,CAAC,KAAK,EAAE,EAAE;YACR,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YACnB,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;YAClC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,uBAAuB,CAAC;QACpD,CAAC,CACF,CAAC;IACJ,CAAC;IACD,aAAa;QACX,IAAI,CAAC,cAAc,CAAC,YAAY,EAAE,CAAC;QACnC,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,SAAS,CACrE,CAAC,QAAQ,EAAE,EAAE;YACX,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;YAClC,IAAI,QAAQ,IAAI,QAAQ,CAAC,IAAI,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE;gBACjD,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;gBAEtB,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,UAAU,EAAE;oBAC/B,MAAM,IAAI,GAAG;wBACX,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,QAAQ;wBAC1C,KAAK,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,YAAY;qBAChD,CAAC;oBACF,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBACxB,IAAI,CAAC,uBAAuB,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;iBACrD;gBACD,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,oBAAoB,EAAE;oBACzC,MAAM,IAAI,GAAG;wBACX,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,oBAAoB,CAAC,QAAQ;wBACpD,KAAK,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,oBAAoB,CAAC,YAAY;qBAC1D,CAAC;oBACF,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBACxB,IAAI,CAAC,uBAAuB,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;iBACrD;gBACD,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,kBAAkB,EAAE;oBACvC,MAAM,IAAI,GAAG;wBACX,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,kBAAkB,CAAC,QAAQ;wBAClD,KAAK,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,kBAAkB,CAAC,YAAY;qBACxD,CAAC;oBACF,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBACxB,IAAI,CAAC,uBAAuB,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;iBACrD;gBACD,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,aAAa,EAAE;oBAClC,MAAM,IAAI,GAAG;wBACX,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,QAAQ;wBAC7C,KAAK,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,YAAY;qBACnD,CAAC;oBACF,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBACxB,IAAI,CAAC,uBAAuB,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;iBACrD;aACF;QACH,CAAC,EACD,CAAC,KAAK,EAAE,EAAE;YACR,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;YAClC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,kDAAkD,CAAC;YAC7E,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACrB,CAAC,CACF,CAAC;IACJ,CAAC;IACD,uBAAuB,CAAC,KAAK;QAC3B,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,EAAE;YAC/C,OAAO,EAAE,CAAC,KAAK,IAAI,KAAK,CAAC,KAAK,CAAC;QACjC,CAAC,CAAC,CAAC;QACH,IAAI,KAAK,IAAI,CAAC,CAAC,EAAE;YACf,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,KAAK,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC;YACpE,IAAI,QAAQ,EAAE;gBACZ,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;aAClC;SACF;IACH,CAAC;IACD,gBAAgB,CAAC,KAAK;QACpB,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACrB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACnB,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;QAC5D,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE;YAC1C,OAAO,EAAE,CAAC,KAAK,IAAI,KAAK,CAAC,KAAK,CAAC;QACjC,CAAC,CAAC,CAAC;QAEH,IAAI,KAAK,EAAE;YACT,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,kBAAkB,CAAC;SAC9C;aAAM;YACL,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,KAAK,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC;YACpE,IAAI,QAAQ,EAAE;gBACZ,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;aAClC;SACF;IACH,CAAC;IAED,cAAc,CAAC,KAAa;QAC1B,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,KAAK,IAAI,KAAK,CAAC,CAAC;QACrE,IAAI,KAAK,GAAG,CAAC,CAAC,EAAE;YACd,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;SACpC;IACH,CAAC;;4FA3JU,sBAAsB,kEAUvB,wEAAe;sGAVd,sBAAsB;QCnBnC,yEAEI;QAAA,yEACI;QAAA,mEAA2B;QAC3B,4EAAoC;QAAA,0EACT;QAAA,gEAAK;QAAA,4DAAO;QACvC,4DAAS;QACb,4DAAM;QACN,0EACA;QAAA,yEACI;QAAA,yEACI;QAAA,gHAAmC;QACnC,kHAAwC;QAC5C,4DAAM;QAEN,gIAA8D;QAC9D,8EAA2C;QAC3C,sHACE;QAwBF,2EAGI;QAAA,2EACI;QACA,sFACE;QAAA,2EAKY;QACd,4DAAiB;QACnB,4DAAM;QACZ,4DAAM;QAGV,4DAAM;QAsBV,4DAAO;QAEP,0FACE;QAAA,8EAAwD;QAAA,kEAAM;QAAA,4DAAS;QACvE,2EACE;QAAA,8EAA4C;QAAA,4EAAW;QAAA,wEAAW;QAAA,4DAAW;QAAA,4DAAS;QACtF,8EACI;QADiC,+IAAS,cAAU,IAAC;QACrD,kEACF;QAAA,4DAAS;QACf,4DAAM;QACN,4DAAqB;QACrB,4DAAM;;QApFI,0DAA6B;QAA7B,0FAA6B;QAGvB,0DAA8B;QAA9B,6FAA8B;QAC9B,0DAAmC;QAAnC,kGAAmC;QAGb,0DAA8B;QAA9B,6FAA8B;QAE3C,0DAAmC;QAAnC,kGAAmC;;6FDE/C,sBAAsB;cALlC,uDAAS;eAAC;gBACT,QAAQ,EAAE,oBAAoB;gBAC9B,WAAW,EAAE,iCAAiC;gBAC9C,SAAS,EAAE,CAAC,iCAAiC,CAAC;aAC/C;;sBAWI,oDAAM;uBAAC,wEAAe;;;;;;;;;;;;;;AE7B3B;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAkD;AACkB;AAI4B;;;;;;;;;;;;;ICmF5E,gFAOC;IAAA,4EAAiB;IAAA,4DACnB;;ADnFZ,MAAM,uBAAuB;IAUlC,YACS,SAAgD,EAC/C,YAAyB,EACzB,WAAyB,EACzB,IAA2B,EAC3B,cAA8B,EAC/B,MAAiB;QALjB,cAAS,GAAT,SAAS,CAAuC;QAC/C,iBAAY,GAAZ,YAAY,CAAa;QACzB,gBAAW,GAAX,WAAW,CAAc;QACzB,SAAI,GAAJ,IAAI,CAAuB;QAC3B,mBAAc,GAAd,cAAc,CAAgB;QAC/B,WAAM,GAAN,MAAM,CAAW;QAf1B,aAAQ,GAAG,SAAS,CAAC;QACrB,cAAS,GAAG,KAAK,CAAC;QAClB,eAAU,GAAG,KAAK,CAAC;QAEnB,WAAM,GAAG,IAAI,CAAC;QACd,cAAS,GAAG,iBAAiB,CAAC;QAC9B,mBAAc,GAAG,KAAK,CAAC;QACvB,qBAAgB,GAAG,EAAE,CAAC;IASnB,CAAC;IAEJ,QAAQ;QACN,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC;YACxC,QAAQ,EAAE,CAAC,EAAE,EAAE,CAAC,yDAAU,CAAC,QAAQ,CAAC,CAAC;SACtC,CAAC,CAAC;IACL,CAAC;IAED,WAAW;QACT,IAAI,CAAC,cAAc,GAAG,CAAC,IAAI,CAAC,cAAc,CAAC;IAC7C,CAAC;IAED,UAAU,CAAC,KAAK,EAAE,MAAc,EAAE,OAAe;QAC/C,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC;QACvB,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,2GAA0B,EAAE;YAC7D,KAAK,EAAE,OAAO;YACd,IAAI,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE;SACjC,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,cAAc;QACZ,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QACvB,IAAI,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE;YAC3B,OAAO;SACR;QACD,IAAI,CAAC,SAAS,GAAG,iBAAiB,CAAC;QACnC,IAAI,CAAC,cAAc,CAAC,YAAY,EAAE,CAAC;QACnC,sCAAsC;QACtC,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,SAAS,CAC1D,CAAC,QAAQ,EAAE,EAAE;YACX,yBAAyB;YACzB,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;YAClC,IAAI,QAAQ,EAAE;gBACZ,IAAI,CAAC,SAAS,GAAG,iBAAiB,CAAC;gBAEnC,MAAM,GAAG,GACP,yCAAyC;oBACzC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,QAAQ,CAAC,KAAK;oBACvC,4FAA4F,CAAC;gBAC/F,MAAM,MAAM,GAAG,6BAA6B,CAAC;gBAE7C,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;gBACtE,8DAA8D;aAC/D;QACH,CAAC,EACD,CAAC,KAAK,EAAE,EAAE;YACR,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;YAClC,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC;YACzB,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;YACvB,yDAAyD;YACzD,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,8CAA8C,CAAC;QAC3E,CAAC,CACF,CAAC;IACJ,CAAC;IACD,WAAW;QACT,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;IACtC,CAAC;;8FA5EU,uBAAuB;uGAAvB,uBAAuB;QCbpC,yEACE;QAmEA,6EACE;QAAA,yEACI;QAAA,yEACI;QAAA,yEACI;QAAA,yEACE;QAAA,8DACE;QADF,yEACE;QAAA,qEACA;QAAA,4DAAM;QAEV,4DAAM;QACV,4DAAM;QACN,+DAA2B;QAA3B,wEAA2B;QAAA,2EAAgB;QAAA,4DAAK;QAChD,2EACA;QAD+B,oJAAY,oBAAgB,IAAC;QAC5D,6EAAW;QAAA,qHAAyD;QAAA,4DAAY;QAChF,2EACI;QAAA,sFACI;QAAA,6EAAW;QAAA,0EAAc;QAAA,4DAAY;QACrC,wEAGA;QAAA,kIAOC;QAEH,4DAAiB;QAEvB,4DAAM;QAGN,8EACkB;QAAA,wDAAgB;QAAA,8DAC9B;QAD8B,2EAC9B;QAAA,uEACA;QAAA,4DAAM;QACN,4DAAS;QACzB,4DAAO;QACS,+DACI;QADJ,2EACI;QAAA,yEAA2C;QAAxB,2IAAS,iBAAa,IAAC;QAAC,yEAAa;QAAA,4DAAI;QAChE,4DAAM;QAEd,4DAAM;QAEV,4DAAM;QACV,4DAAU;QAEV,4DAAM;;QArCY,2DAAwB;QAAxB,qFAAwB;QAStB,0DAIC;QAJD,8KAIC;QAS+B,0DAAsB;QAAtB,mFAAsB;QAC5C,0DAAgB;QAAhB,yFAAgB;;6FD1FjC,uBAAuB;cALnC,uDAAS;eAAC;gBACT,QAAQ,EAAE,qBAAqB;gBAC/B,WAAW,EAAE,kCAAkC;gBAC/C,SAAS,EAAE,CAAC,kCAAkC,CAAC;aAChD;;;;;;;;;;;;;;AEZD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAA6D;AACO;;;;;;;;;;;;;;;ICqBlD,wEAAoE;IAA7C,iTAAuB;IAAsB,uEAAY;IAAA,4DAAI;;;;IAI1F,0EACI;IAAA,qFACI;IAAA,4EAAW;IAAA,oEAAS;IAAA,4DAAY;IAChC,uEAGJ;IAAA,6EACE;IADgC,8TAAsB;IACtD,+EAAqE;IAAA,uDAA0C;IAAA,4DAAW;IAC5H,4DAAS;IAGP,4DAAiB;IAEvB,4DAAM;;;IATF,0DAAmC;IAAnC,mGAAmC;IAEsB,0DAAmC;IAAnC,wFAAmC;IACrB,0DAA0C;IAA1C,8GAA0C;;;;IASrH,6EAIE;IAFA,wTAAmB;IAEnB,uDAAkB;IAAA,8DAChB;IADgB,0EAChB;IAAA,sEACA;IAAA,4DAAM;IACN,4DAAS;;;IAHX,0DAAkB;IAAlB,gGAAkB;;;;IAKhB,6EAKA;IAHA,4TAAqB;IAGrB,uDAAiB;IAAA,8DACf;IADe,0EACf;IAAA,sEACA;IAAA,4DAAM;IACN,4DAAS;;;IAHX,0DAAiB;IAAjB,+FAAiB;;;IAM6G,wEAAmC;IAAA,uDAAiB;IAAA,4DAAI;;;IAArB,0DAAiB;IAAjB,+FAAiB;;;;IADlL,0EACE;IAAA,6EAAyG;IAAtD,uTAAmB;IAAmC,qEAAU;IAAA,4DAAS;IAAA,iHAAmC;IAGnK,4DAAM;;;IAHM,0DAAyB;IAAzB,yFAAyB;IAA8F,0DAAe;IAAf,kFAAe;;ADlDzJ,MAAM,iBAAiB;IAS5B,YACS,SAA0C,EACzC,WAAwB,EACxB,WAAyB,EACzB,IAA2B,EAC3B,cAA8B;QAJ/B,cAAS,GAAT,SAAS,CAAiC;QACzC,gBAAW,GAAX,WAAW,CAAa;QACxB,gBAAW,GAAX,WAAW,CAAc;QACzB,SAAI,GAAJ,IAAI,CAAuB;QAC3B,mBAAc,GAAd,cAAc,CAAgB;QAbxC,SAAI,GAAG,IAAI,CAAC;QACZ,kBAAa,GAAG,UAAU,CAAC;QAC3B,iBAAY,GAAG,QAAQ,CAAC;QACxB,aAAQ,GAAG,CAAC,CAAC;QACb,UAAK,GAAG,EAAE,CAAC;QAEX,iBAAY,GAAG,KAAK,CAAC;IAQlB,CAAC;IAEJ,QAAQ;QACN,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC;YAC5C,QAAQ,EAAE,CAAC,EAAE,EAAE,CAAC,yDAAU,CAAC,QAAQ,CAAC,CAAC;YACrC,QAAQ,EAAE,CAAC,EAAE,EAAE,CAAC,yDAAU,CAAC,QAAQ,CAAC,CAAC;SACtC,CAAC,CAAC;IACL,CAAC;IACD,WAAW;QACT,IAAI,CAAC,iBAAiB,EAAE,CAAC;IAC3B,CAAC;IACD,WAAW;QACT,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAC;QAClB,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,MAAM,EAAE,CAAC;QAC9C,IAAI,CAAC,iBAAiB,EAAE,CAAC;IAC3B,CAAC;IACD,OAAO;QACL,IAAI,IAAI,CAAC,QAAQ,GAAG,CAAC,EAAE;YACrB,IAAI,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,OAAO,EAAE;gBAChD,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,wBAAwB,CAAC,CAAC;gBACpD,OAAO;aACR;YACD,IAAI,CAAC,aAAa,GAAG,eAAe,CAAC;YACrC,IAAI,CAAC,cAAc,CAAC,YAAY,EAAE,CAAC;YACnC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC,WAAW,EAAE,CAAC,CAAC,SAAS,CACpE,CAAC,QAAQ,EAAE,EAAE;gBACX,IAAI,QAAQ,EAAE;oBACZ,IAAI,CAAC,QAAQ,EAAE,CAAC;oBAChB,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,OAAO,EAAE,CAAC;oBAC/C,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;oBAClC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,yBAAyB,CAAC,CAAC;oBAErD,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;oBAChB,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;oBACzB,IAAI,CAAC,eAAe,EAAE,CAAC;iBACxB;YACH,CAAC,EACD,CAAC,GAAG,EAAE,EAAE;gBACN,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;gBAC1B,IAAI,GAAG,CAAC,KAAK,CAAC,OAAO,KAAK,iBAAiB,EAAE;oBAC3C,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,mBAAmB,CAAC,CAAC;iBAChD;qBAAM;oBACL,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,mCAAmC,CAAC,CAAC;iBAChE;gBACD,IAAI,CAAC,aAAa,GAAG,UAAU,CAAC;gBAChC,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;YACpC,CAAC,CACF,CAAC;SACH;IACH,CAAC;IACD,eAAe;QACb,IAAI,IAAI,CAAC,OAAO,EAAE;YAChB,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;SAC7B;QACD,IAAI,CAAC,OAAO,GAAG,WAAW,CAAC,GAAG,EAAE;YAC9B,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACxB,IAAI,IAAI,CAAC,KAAK,IAAI,CAAC,EAAE;gBACnB,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;gBAC1B,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;aAC7B;iBAAM;gBACL,IAAI,CAAC,KAAK,EAAE,CAAC;aACd;QACH,CAAC,EAAE,IAAI,CAAC,CAAC;IACX,CAAC;IACD,SAAS;QACP,IAAI,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE;YAChC,OAAO;SACR;QACD,IAAI,CAAC,YAAY,GAAG,eAAe,CAAC;QACpC,IAAI,CAAC,cAAc,CAAC,YAAY,EAAE,CAAC;QACnC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,eAAe,CAAC,WAAW,EAAE,CAAC,CAAC;QAChD,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,IAAI,CAAC,eAAe,CAAC,WAAW,EAAE,CAAC,CAAC,SAAS,CACzE,CAAC,QAAQ,EAAE,EAAE;YACX,IAAI,QAAQ,EAAE;gBACZ,IAAI,CAAC,iBAAiB,EAAE,CAAC;gBACzB,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;gBACzC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBACnC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;gBACvB,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;gBAClC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;gBACvD,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;aAClC;QACH,CAAC,EACD,CAAC,GAAG,EAAE,EAAE;YACN,IAAI,GAAG,CAAC,KAAK,CAAC,OAAO,KAAK,aAAa,EAAE;gBACvC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,mBAAmB,CAAC,CAAC;aAChD;iBAAM,IAAI,GAAG,CAAC,KAAK,CAAC,OAAO,KAAK,WAAW,EAAE;gBAC5C,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,cAAc,CAAC,CAAC;aAC3C;iBAAM;gBACL,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,mBAAmB,CAAC,CAAC;aAChD;YACD,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;YAClC,IAAI,CAAC,YAAY,GAAG,QAAQ,CAAC;QAC/B,CAAC,CACF,CAAC;IACJ,CAAC;IACD,iBAAiB;QACf,IAAI,IAAI,CAAC,OAAO,EAAE;YAChB,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;SAC7B;IACH,CAAC;IACD,WAAW;QACT,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;IACtC,CAAC;IACD,UAAU;QACR,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;IACrC,CAAC;IACD,qBAAqB;IACrB,4CAA4C;IAC5C,IAAI;IAEJ;;;;OAIG;IACH,QAAQ,CAAC,QAAQ;QACf,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC;QACvC,IAAI,CAAC,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;IAC9B,CAAC;IAED;;;;OAIG;IACH,QAAQ,CAAC,QAAQ;QACf,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC;IACxC,CAAC;;kFA/IU,iBAAiB;iGAAjB,iBAAiB;QCZ9B,yEAEE;QAAA,6EACE;QAAA,yEACI;QAAA,yEACI;QAAA,yEACI;QAAA,yEACI;QAAA,oEACJ;QAAA,4DAAM;QACV,4DAAM;QACN,wEAA0B;QAAA,uFAA4B;QAAA,4DAAK;QAE3D,0EACA;QAAA,0EACI;QAAA,sFACI;QAAA,6EAAW;QAAA,iEAAK;QAAA,4DAAY;QAC5B,wEAKF;QAAA,4DAAiB;QACjB,4GAAoE;QAG1E,4DAAM;QACN,gHACI;QAeJ,sHAIE;QAKE,sHAKA;QAIhB,4DAAO;QACS,gHACE;QAIF,2EACE;QAAA,yEAA6C;QAAzB,qIAAS,iBAAa,IAAC;QAAE,+EAAmB;QAAA,4DAAI;QACxE,4DAAM;QACJ,2EACI;QAAA,yEAA4C;QAAxB,qIAAS,gBAAY,IAAC;QAAE,sFAA0B;QAAA,4DAAI;QAC9E,4DAAM;QAKd,4DAAM;QAEV,4DAAM;QACV,4DAAU;QAEV,4DAAM;;QArEY,0DAA6B;QAA7B,0FAA6B;QAUzB,0DAAkB;QAAlB,kFAAkB;QAIC,0DAAkB;QAAlB,kFAAkB;QAiBxB,0DAAmB;QAAnB,mFAAmB;QAWtC,0DAAkB;QAAlB,kFAAkB;QAOS,0DAAgC;QAAhC,sGAAgC;;6FDjD9D,iBAAiB;cAL7B,uDAAS;eAAC;gBACT,QAAQ,EAAE,eAAe;gBACzB,WAAW,EAAE,4BAA4B;gBACzC,SAAS,EAAE,CAAC,4BAA4B,CAAC;aAC1C;;;;;;;;;;;;;;AEXD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAA6D;AACO;AAErC;AAGiE;AAG5B;AACmB;;;;;;;;;;;;;;ICmB/D,gFAOC;IAAA,+EAAoB;IAAA,4DACtB;;;IAoBP,4EAMG;IAAA,+EAAoB;IAAA,4DACtB;;AD9CV,MAAM,kBAAkB;IAU7B,YACS,SAAgD,EAC/C,WAAwB,EACxB,cAA8B,EAC9B,WAAyB,EAC1B,MAAiB,EAChB,IAA2B;QAL5B,cAAS,GAAT,SAAS,CAAuC;QAC/C,gBAAW,GAAX,WAAW,CAAa;QACxB,mBAAc,GAAd,cAAc,CAAgB;QAC9B,gBAAW,GAAX,WAAW,CAAc;QAC1B,WAAM,GAAN,MAAM,CAAW;QAChB,SAAI,GAAJ,IAAI,CAAuB;QAfrC,cAAS,GAAG,KAAK,CAAC;QAElB,iBAAY,GAAG,IAAI,4CAAO,EAAE,CAAC;QAC7B,WAAM,GAAG,IAAI,CAAC;QACd,cAAS,GAAG,OAAO,CAAC;QACpB,SAAI,GAAG,IAAI,CAAC;IAWT,CAAC;IAEJ,QAAQ;QACN,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC;YAC5C,QAAQ,EAAE,CAAC,EAAE,EAAE,CAAC,yDAAU,CAAC,QAAQ,CAAC,CAAC;YACrC,QAAQ,EAAE,CAAC,EAAE,EAAE,CAAC,yDAAU,CAAC,QAAQ,CAAC,CAAC;SACtC,CAAC,CAAC;QAEH,IAAI,CAAC,YAAY;aACd,IAAI,CAAC,mEAAY,CAAC,IAAI,CAAC,EAAE,2EAAoB,EAAE,CAAC;aAChD,SAAS,CAAC,CAAC,KAAK,EAAE,EAAE;YACnB,IAAI,CAAC,UAAU,EAAE,CAAC;QACpB,CAAC,CAAC,CAAC;IACP,CAAC;IACD,WAAW;;QACT,UAAI,CAAC,YAAY,0CAAE,WAAW,GAAG;IACnC,CAAC;IAED,QAAQ;QACN,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACpB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACtB,IAAI,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE;YAChC,OAAO;SACR;QACD,IAAI,CAAC,SAAS,GAAG,eAAe,CAAC;QACjC,IAAI,CAAC,cAAc,CAAC,YAAY,EAAE,CAAC;QACnC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,eAAe,CAAC,WAAW,EAAE,CAAC,CAAC;QAChD,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,WAAW,EAAE,CAAC,CAAC,SAAS,CAClE,CAAC,QAAQ,EAAE,EAAE;YACX,IAAI,QAAQ,EAAE;gBACZ,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;gBACpB,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;gBACzC,IAAI,CAAC,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC;gBACvC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBACnC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,yBAAyB,EAAE,CAAC;gBACtD,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;gBACvB,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;gBAClC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;aACxD;QACH,CAAC,EACD,CAAC,GAAG,EAAE,EAAE;YACN,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;YAC1B,IAAI,GAAG,CAAC,KAAK,CAAC,OAAO,KAAK,aAAa,EAAE;gBACvC,IAAI,CAAC,qBAAqB,CACxB,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,KAAK,CAC3C,CAAC;aACH;iBAAM;gBACL,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,qCAAqC,CAAC,CAAC;aAClE;YACD,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;YAClC,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC;YACzB,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;QACzB,CAAC,CACF,CAAC;IACJ,CAAC;IACD,qBAAqB,CAAC,KAAK;QACzB,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,2GAA0B,EAAE;YAC7D,KAAK,EAAE,OAAO;YACd,IAAI,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,UAAU,EAAE,kBAAkB,EAAE;SAClE,CAAC,CAAC;IACL,CAAC;IACD,YAAY;;QACV,MAAM,UAAU,GAAG,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC;QAC9D,UAAI,CAAC,YAAY,0CAAE,IAAI,CAAC,UAAU,EAAE;IACtC,CAAC;IACD,UAAU;QACR,sCAAsC;QACtC,MAAM,KAAK,GAAG,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC;QACzD,IAAI,KAAK,IAAI,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE;YACtC,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,SAAS,CAC9C,CAAC,QAAQ,EAAE,EAAE;gBACX,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;gBACtB,IAAI,QAAQ,CAAC,IAAI,IAAI,aAAa,EAAE;oBAClC,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC;iBACnC;gBACD,oCAAoC;YACtC,CAAC,EACD,CAAC,GAAG,EAAE,EAAE;gBACN,oCAAoC;gBACpC,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;YAC5B,CAAC,CACF,CAAC;SACH;IACH,CAAC;IACD,aAAa,CAAC,KAAK;QACjB,OAAO,KAAK,CAAC,KAAK,CAChB,2JAA2J,CAC5J,CAAC;IACJ,CAAC;IAED,QAAQ,CAAC,QAAQ;QACf,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC;QACvC,IAAI,CAAC,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;IAC9B,CAAC;IACD,QAAQ,CAAC,QAAQ;QACf,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC;IACxC,CAAC;IACD,IAAI,YAAY;QACd,OAAO,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC;IACvC,CAAC;IAED,cAAc;QACZ,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,kGAAuB,EAAE;YAC1D,KAAK,EAAE,OAAO;SACf,CAAC,CAAC;QACH,SAAS,CAAC,WAAW,EAAE,CAAC,SAAS,CAAC,CAAC,MAAM,EAAE,EAAE;YAC3C,IAAI,MAAM,EAAE;gBACV,IAAI,MAAM,IAAI,aAAa,EAAE;oBAC3B,2CAA2C;iBAC5C;aACF;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IACD,UAAU;QACR,+BAA+B;QAC/B,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IACzB,CAAC;;oFArIU,kBAAkB;kGAAlB,kBAAkB;QClB/B,6EACI;QAAA,yEACI;QAAA,yEACI;QAMA,wEAA0B;QAAA,uEAAY;QAAA,4DAAK;QAS3C,0EACI;QAAA,yEACI;QAAA,oFACI;QAAA,4EAAW;QAAA,yEAAc;QAAA,4DAAY;QACrC,4EAOA;QAHA,0IAAS,kBAAc,IAAC;QAJxB,4DAOA;QAAA,4HAOC;QAEH,4DAAiB;QAEvB,4DAAM;QAQV,0EACI;QAAA,qFACI;QAAA,6EAAW;QAAA,qEAAS;QAAA,4DAAY;QAChC,wEAGJ;QAAA,8EACI;QAD8B,mKAAsB;QACpD,gFAAqE;QAAA,wDAA0C;QAAA,4DAAW;QAC5H,4DAAS;QACX,6HAMG;QAGD,4DAAiB;QAEvB,4DAAM;QAKN,8EAKA;QAFA,2IAAS,cAAU,IAAC;QAEpB,wDAAgB;QAAA,8DACd;QADc,2EACd;QAAA,uEACA;QAAA,4DAAM;QACN,4DAAS;QAEP,+DACI;QADJ,2EACI;QAAA,yEAA2C;QAAvB,sIAAS,gBAAY,IAAC;QAAC,mFAAuB;QAAA,4DAAI;QAC1E,4DAAM;QACN,2EACI;QAAA,yEAA0D;QAA3B,sIAAS,oBAAgB,IAAC;QAAC,iFAAqB;QAAA,4DAAI;QACvF,4DAAM;QACV,4DAAO;QAAA,8DACX;QAAA,4DAAM;QACV,4DAAM;QACV,4DAAU;;QA1EQ,0DAA6B;QAA7B,0FAA6B;QAYvB,0DAIC;QAJD,gKAIC;QAkBT,0DAAmC;QAAnC,gGAAmC;QAEsB,0DAAmC;QAAnC,wFAAmC;QACnB,0DAA0C;QAA1C,2GAA0C;QAGjH,0DAIC;QAJD,gKAIC;QAaP,0DAAsB;QAAtB,mFAAsB;QAGtB,0DAAgB;QAAhB,yFAAgB;;6FD5Df,kBAAkB;cAL9B,uDAAS;eAAC;gBACT,QAAQ,EAAE,gBAAgB;gBAC1B,WAAW,EAAE,6BAA6B;gBAC1C,SAAS,EAAE,CAAC,6BAA6B,CAAC;aAC3C;;;;;;;;;;;;;;AEjBD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAMuB;AAC6C;AASlC;AAG8D;AAC5B;AACrC;;;;;;;;;;;;;;ICGX,gFAOC;IAAA,+EAAoB;IAAA,4DACtB;;;IAaH,4EAMG;IAAA,+EAAoB;IAAA,4DACtB;;ADxBV,MAAM,cAAc;IA0BzB,2BAA2B;IAC3B,YACS,SAAuC,EACtC,WAAwB,EACxB,WAAyB,EACzB,IAA2B,EAC3B,cAA8B,EAC/B,MAAiB,EACQ,IAAS,EACjC,aAA4B;QAP7B,cAAS,GAAT,SAAS,CAA8B;QACtC,gBAAW,GAAX,WAAW,CAAa;QACxB,gBAAW,GAAX,WAAW,CAAc;QACzB,SAAI,GAAJ,IAAI,CAAuB;QAC3B,mBAAc,GAAd,cAAc,CAAgB;QAC/B,WAAM,GAAN,MAAM,CAAW;QACQ,SAAI,GAAJ,IAAI,CAAK;QACjC,kBAAa,GAAb,aAAa,CAAe;QAlCtC,aAAQ,GAAG,SAAS,CAAC;QACrB,aAAQ,GAAG,uBAAuB,CAAC;QACnC,cAAS,GAAG,KAAK,CAAC;QAClB,eAAU,GAAG,KAAK,CAAC;QAEnB,WAAM,GAAG,IAAI,CAAC;QACd,cAAS,GAAG,OAAO,CAAC;QACpB,mBAAc,GAAG,KAAK,CAAC;QACvB,qBAAgB,GAAG,EAAE,CAAC;QAEtB,SAAI,GAAG,IAAI,CAAC;QAEZ,eAAe;QACf,gBAAgB;QAChB,uBAAuB;QACvB,yCAAyC;QACzC,+CAA+C;QAC/C,oCAAoC;QACpC,kCAAkC;QAClC,2BAA2B;QAC3B,2BAA2B;QAC3B,+BAA+B;QAC/B,iCAAiC;QACjC,KAAK;QACL,iBAAY,GAAG,IAAI,4CAAO,EAAE,CAAC;IAW1B,CAAC;IAEJ;;OAEG;IAEH,QAAQ;QACN,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC;YAC5C,QAAQ,EAAE,CAAC,EAAE,EAAE,CAAC,yDAAU,CAAC,QAAQ,CAAC,CAAC;YACrC,QAAQ,EAAE,CAAC,EAAE,EAAE,CAAC,yDAAU,CAAC,QAAQ,CAAC,CAAC;SACtC,CAAC,CAAC;QACH,IAAI,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;YACtB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC;YACnC,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE;gBACnB,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;aAClE;YACD,IAAI,IAAI,CAAC,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,IAAI,CAAC,YAAY,IAAI,IAAI,EAAE;gBAC5D,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,OAAO,EAAE,CAAC;aAChD;SACF;QACD,IAAI,CAAC,YAAY;aACd,IAAI,CAAC,mEAAY,CAAC,IAAI,CAAC,EAAE,2EAAoB,EAAE,CAAC;aAChD,SAAS,CAAC,CAAC,KAAK,EAAE,EAAE;YACnB,IAAI,CAAC,UAAU,EAAE,CAAC;QACpB,CAAC,CAAC,CAAC;IACP,CAAC;IAED,WAAW;;QACT,UAAI,CAAC,YAAY,0CAAE,WAAW,GAAG;IACnC,CAAC;IACD;;MAEE;IAEF,QAAQ;QACN,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACpB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACtB,IAAI,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE;YAChC,OAAO;SACR;QACD,IAAI,CAAC,SAAS,GAAG,aAAa,CAAC;QAC/B,IAAI,CAAC,cAAc,CAAC,YAAY,EAAE,CAAC;QACnC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,WAAW,EAAE,CAAC,CAAC,SAAS,CAClE,CAAC,QAAQ,EAAE,EAAE;YACX,uBAAuB;YACvB,+CAA+C;YAC/C,0EAA0E;YAC1E,0EAA0E;YAC1E,WAAW;YACX,8CAA8C;YAC9C,4CAA4C;YAC5C,4CAA4C;YAC5C,IAAI;YACJ,qCAAqC;YACrC,IAAI,QAAQ,EAAE;gBACZ,mCAAmC;gBACnC,8BAA8B;gBAE9B,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;gBACpB,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;gBACzC,IAAI,CAAC,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC;gBACvC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBACnC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,yBAAyB,EAAE,CAAC;gBACtD,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;gBACvB,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;gBAElC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;gBACvD,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;aAClC;QACH,CAAC,EACD,CAAC,GAAG,EAAE,EAAE;YACN,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;YAC1B,IAAI,GAAG,CAAC,KAAK,CAAC,OAAO,KAAK,aAAa,EAAE;gBACvC,MAAM,GAAG,GACP,uDAAuD;oBACvD,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,KAAK;oBAC1C,wFAAwF,CAAC;gBAC3F,MAAM,MAAM,GAAG,kBAAkB,CAAC;gBAClC,IAAI,CAAC,qBAAqB,CACxB,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,KAAK,EAC1C,MAAM,EACN,GAAG,CACJ,CAAC;aACH;iBAAM;gBACL,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,qCAAqC,CAAC,CAAC;aAClE;YACD,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;YAClC,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC;YACzB,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;QACzB,CAAC,CACF,CAAC;IACJ,CAAC;IACD,qBAAqB,CAAC,KAAK,EAAE,MAAc,EAAE,OAAe;QAC1D,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC;QACvB,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,2GAA0B,EAAE;YAC7D,KAAK,EAAE,OAAO;YACd,IAAI,EAAE;gBACJ,KAAK;gBACL,MAAM;gBACN,OAAO;aAER;SACF,CAAC,CAAC;IACL,CAAC;IACD,YAAY;;QACV,MAAM,UAAU,GAAG,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC;QAC9D,UAAI,CAAC,YAAY,0CAAE,IAAI,CAAC,UAAU,EAAE;IACtC,CAAC;IACD,eAAe;IACf,sCAAsC;IACtC,IAAI;IAEJ,UAAU;QACR,sCAAsC;QACtC,MAAM,KAAK,GAAG,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC;QACzD,IAAI,KAAK,IAAI,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE;YACtC,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,SAAS,CAC9C,CAAC,QAAQ,EAAE,EAAE;gBACX,IAAI,QAAQ,CAAC,IAAI,IAAI,aAAa,EAAE;oBAClC,MAAM,GAAG,GACP,uDAAuD;wBACvD,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,KAAK;wBAC1C,wFAAwF,CAAC;oBAC3F,MAAM,MAAM,GAAG,kBAAkB,CAAC;oBAClC,IAAI,CAAC,qBAAqB,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;iBAChD;gBACD,oCAAoC;YACtC,CAAC,EACD,CAAC,GAAG,EAAE,EAAE;gBACN,oCAAoC;gBACpC,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;YAC5B,CAAC,CACF,CAAC;SACH;IACH,CAAC;IACD,aAAa,CAAC,KAAK;QACjB,OAAO,KAAK,CAAC,KAAK,CAChB,2JAA2J,CAC5J,CAAC;IACJ,CAAC;IAED;;;;OAIG;IACH,QAAQ,CAAC,QAAQ;QACf,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC;QACvC,IAAI,CAAC,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QAE5B,uDAAuD;QACvD,0CAA0C;QAC1C,mBAAmB;QACnB,mCAAmC;QACnC,WAAW;QACX,0BAA0B;QAC1B,IAAI;IACN,CAAC;IAED;;;;OAIG;IACH,QAAQ,CAAC,QAAQ;QACf,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC;IACxC,CAAC;IAED,WAAW;QACT,IAAI,CAAC,cAAc,GAAG,CAAC,IAAI,CAAC,cAAc,CAAC;IAC7C,CAAC;IACD,cAAc;QACZ,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;IACzC,CAAC;IAED;;MAEE;IACF,IAAI,YAAY;QACd,OAAO,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC;IACvC,CAAC;;4EAxNU,cAAc,g4BAkCf,wEAAe;8FAlCd,cAAc;QC5B3B,yEACE;QAAA,6EACE;QAAA,yEACI;QAAA,yEACI;QAAA,yEACI;QAAA,yEACE;QAAA,8DACE;QADF,yEACE;QAAA,qEACF;QAAA,4DAAM;QACR,4DAAM;QACV,4DAAM;QACN,+DAA0B;QAA1B,wEAA0B;QAAA,uDAAY;QAAA,4DAAK;QAE3C,2EACA;QAAA,2EACI;QAAA,sFACI;QAAA,6EAAW;QAAA,0EAAc;QAAA,4DAAY;QACrC,6EAOA;QAHA,sIAAS,kBAAc,IAAC;QAJxB,4DAOA;QAAA,yHAOC;QAEH,4DAAiB;QAEvB,4DAAM;QACN,2EACI;QAAA,sFACI;QAAA,6EAAW;QAAA,qEAAS;QAAA,4DAAY;QAChC,wEAGJ;QAAA,8EACE;QADgC,+JAAsB;QACtD,gFAAqE;QAAA,wDAA0C;QAAA,4DAAW;QAC5H,4DAAS;QACT,yHAMG;QAGD,4DAAiB;QAEvB,4DAAM;QACN,8EAKE;QAFA,uIAAS,cAAU,IAAC;QAEpB,wDAAgB;QAAA,8DACd;QADc,2EACd;QAAA,uEACA;QAAA,4DAAM;QACN,4DAAS;QACzB,4DAAO;QACS,+DACI;QADJ,2EACI;QAAA,yEAA0D;QAA3B,kIAAS,oBAAgB,IAAC;QAAC,iFAAqB;QAAA,4DAAI;QACvF,4DAAM;QAEd,4DAAM;QAEV,4DAAM;QACV,4DAAU;QAEV,4DAAM;;QAjEgC,0DAAY;QAAZ,6EAAY;QAEhC,0DAA6B;QAA7B,0FAA6B;QAY3B,0DAIC;QAJD,gKAIC;QAWL,0DAAmC;QAAnC,gGAAmC;QAEsB,0DAAmC;QAAnC,wFAAmC;QACrB,0DAA0C;QAA1C,2GAA0C;QAG/G,0DAIC;QAJD,gKAIC;QASL,0DAAsB;QAAtB,mFAAsB;QAGtB,0DAAgB;QAAhB,yFAAgB;;6FDlCjB,cAAc;cAL1B,uDAAS;eAAC;gBACT,QAAQ,EAAE,WAAW;gBACrB,WAAW,EAAE,wBAAwB;gBACrC,SAAS,EAAE,CAAC,wBAAwB,CAAC;aACtC;;sBAmCI,oDAAM;uBAAC,wEAAe;;;;;;;;;;;;;;AE7D3B;AAAA;AAAA;AAMuB;;AAKhB,MAAM,oBAAoB;IAG/B,YACU,UAAsB;QAAtB,eAAU,GAAV,UAAU,CAAY;QAMhC,qCAAqC;QAC7B,cAAS,GAAG,EAAE,CAAC;QANrB,IAAI,CAAC,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC;QACxC,IAAI,CAAC,QAAQ,EAAE,CAAC;IAClB,CAAC;IAMO,WAAW,CAAC,GAAY;QAC9B,MAAM,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;QACxC,OAAO,QAAQ,MAAM,8BAA8B,CAAC;IACtD,CAAC;IACO,QAAQ,CAAC,SAAkB;QACjC,IAAI,CAAC,UAAU,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,EAAE,GAAG,CAAC,CAAC;IACjE,CAAC;IAED,QAAQ;QACN,IAAI,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE;YACjB,IAAI,CAAC,EAAE,CAAC,KAAK,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC;SACjD;IACH,CAAC;IAED,OAAO,CAAC,KAAK;QACX,sCAAsC;QACtC,IAAI,CAAC,EAAE,CAAC,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;QAC/C,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC;IACnB,CAAC;IAED,MAAM,CAAC,KAAK;QACV,IAAI,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE;YACjB,IAAI,CAAC,EAAE,CAAC,KAAK,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC;SACjD;IACH,CAAC;IAED,MAAM,CAAC,KAAK;QACV,IAAI,CAAC,EAAE,CAAC,KAAK,GAAG,EAAE,CAAC;IACrB,CAAC;IACD,WAAW,CAAC,KAAK;QACf,OAAO,IAAI,KAAK,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,KAAK,CAAC,SAAS,CAClD,CAAC,EACD,CAAC,CACF,KAAK,KAAK,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC;IACjC,CAAC;IAED,OAAO,CAAC,KAAK;QACX,kEAAkE;QAClE,MAAM,UAAU,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC9E,IAAI,UAAU,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE;YACrC,IAAI,CAAC,SAAS,GAAG,UAAU,CAAC;SAC7B;QACD,IAAI,CAAC,EAAE,CAAC,KAAK,GAAG,UAAU,IAAI,IAAI,CAAC,SAAS,CAAC;IAC/C,CAAC;;wFAxDU,oBAAoB;oGAApB,oBAAoB;kJAApB,gCAA4B,oFAA5B,+BAA2B,8GAA3B,+BAA2B,sFAA3B,mBAAe;;6FAAf,oBAAoB;cAHhC,uDAAS;eAAC;gBACT,QAAQ,EAAE,eAAe;aAC1B;wGA4BC,OAAO;kBADN,0DAAY;mBAAC,OAAO,EAAE,CAAC,qBAAqB,CAAC;YAO9C,MAAM;kBADL,0DAAY;mBAAC,MAAM,EAAE,CAAC,qBAAqB,CAAC;YAO7C,MAAM;kBADL,0DAAY;mBAAC,mBAAmB,EAAE,CAAC,qBAAqB,CAAC;YAW1D,OAAO;kBADN,0DAAY;mBAAC,OAAO,EAAE,CAAC,QAAQ,CAAC;;;;;;;;;;;;;;AC5DnC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAyD;AACF;AACX;AAGe;;;;;AAK3D;;GAEG;AAKI,MAAM,YAAY;IAKvB,8BAA8B;IAC9B,6CAA6C;IAC7C,YACU,WAAwB,EACxB,IAAgB,EAChB,IAA2B;QAF3B,gBAAW,GAAX,WAAW,CAAa;QACxB,SAAI,GAAJ,IAAI,CAAY;QAChB,SAAI,GAAJ,IAAI,CAAuB;QATrC,cAAS,GAAG,KAAK,CAAC;QAClB,kBAAa,GAAG,IAAI,4CAAO,EAAU,CAAC;QACtC,0BAAqB,GAAG,IAAI,4CAAO,EAAW,CAAC;IAQ5C,CAAC;IAEJ;;;;;;OAMG;IACK,UAAU,CAAC,GAAW;QAC5B,OAAO,GAAG,wEAAW,CAAC,IAAI,IAAI,GAAG,EAAE,CAAC;IACtC,CAAC;IAED,aAAa,CAAC,QAAQ;QACpB,OAAO,IAAI,CAAC,WAAW;aACpB,IAAI,CAAC,EAAE,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,8BAA8B,CAAC,EAAE,EAAE,QAAQ,CAAC;aACxE,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,UAAU,CAAC,QAAQ;QACjB,kCAAkC;QAClC,qCAAqC;QACrC,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CAAC,EAAE,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,kBAAkB,CAAC,EAAE,CAAC;aACjD,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,eAAe,CAAC,QAAQ;QACtB,kCAAkC;QAClC,qCAAqC;QACrC,OAAO,IAAI,CAAC,WAAW;aACpB,IAAI,CAAC,EAAE,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,kBAAkB,CAAC,EAAE,EAAE,QAAQ,CAAC;aAC5D,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,iBAAiB,CAAC,KAAK,EAAE,QAAQ;QAC/B,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,uBAAuB,CAAC,EAAE,EAAE,QAAQ,CAAC;aACnE,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,UAAU,CAAC,KAAK,EAAE,QAAQ;QACxB,OAAO,IAAI,CAAC,WAAW;aACpB,IAAI,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,mBAAmB,CAAC,EAAE,EAAE,QAAQ,CAAC;aAChE,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,OAAO,CAAC,KAAK,EAAE,QAAQ;QACrB,OAAO,IAAI,CAAC,WAAW;aACpB,IAAI,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,wBAAwB,CAAC,EAAE,EAAE,QAAQ,CAAC;aACrE,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,YAAY,CAAC,KAAK,EAAE,QAAQ;QAC1B,OAAO,IAAI,CAAC,WAAW;aACpB,IAAI,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,qBAAqB,CAAC,EAAE,EAAE,QAAQ,CAAC;aAClE,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,0BAA0B,CAAC,KAAK,EAAE,QAAQ;QACxC,OAAO,IAAI,CAAC,WAAW;aACpB,IAAI,CACH,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAAC,oCAAoC,CAAC,EAAE,EAC1D,QAAQ,CACT;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED;;OAEG;IACH,wBAAwB,CAAC,KAAK,EAAE,QAAQ;QACtC,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,+BAA+B,CAAC,EAAE,EAAE,QAAQ,CAAC;aAC3E,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,iBAAiB,CAAC,KAAK,EAAE,QAAQ;QAC/B,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,kBAAkB,CAAC,EAAE,EAAE,QAAQ,CAAC;aAC9D,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,gBAAgB,CAAC,KAAK,EAAE,EAAE;QACxB,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,6BAA6B,GAAG,EAAE,CAAC,EAAE,CAAC;aACpE,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,iBAAiB,CAAC,KAAK,EAAE,EAAE;QACzB,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,kCAAkC,GAAG,EAAE,CAAC,EAAE,CAAC;aACzE,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,oCAAoC,CAAC,KAAK,EAAE,EAAE;QAC5C,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,0BAA0B,GAAG,EAAE,CAAC,EAAE,CAAC;aACjE,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,uBAAuB,CAAC,KAAK,EAAE,EAAE;QAC/B,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CACF,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAAC,uCAAuC,GAAG,EAAE,CAAC,EAAE,CACnE;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,iBAAiB,CAAC,KAAK,EAAE,KAAK;QAC5B,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CACF,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAAC,sCAAsC,GAAG,KAAK,CAAC,EAAE,CACrE;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,SAAS,CAAC,KAAK,EAAE,EAAE;QACjB,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,6BAA6B,GAAG,EAAE,CAAC,EAAE,CAAC;aACpE,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,oCAAoC;IACpC,eAAe,CAAC,KAAK;QACnB,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,uCAAuC,CAAC,EAAE,CAAC;aACzE,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,eAAe,CAAC,KAAK,EAAE,SAAS,EAAE,SAAS;QACzC,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CACF,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAChB,sDAAsD;YACpD,SAAS;YACT,aAAa;YACb,SAAS,CACZ,EAAE,CACJ;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,sBAAsB,CAAC,KAAK,EAAE,EAAE;QAC9B,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CACF,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAChB,mDAAmD,GAAG,EAAE,CACzD,EAAE,CACJ;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,cAAc,CAAC,KAAK,EAAE,IAAI;QACxB,OAAO,IAAI,CAAC,WAAW;aACpB,IAAI,CACH,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAAC,sCAAsC,CAAC,EAAE,EAC5D,IAAI,CACL;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,iBAAiB,CAAC,KAAK,EAAE,IAAI;QAC3B,OAAO,IAAI,CAAC,WAAW;aACpB,IAAI,CACH,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAAC,yCAAyC,CAAC,EAAE,EAC/D,IAAI,CACL;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,WAAW,CAAC,KAAK,EAAE,IAAI;QACrB,OAAO,IAAI,CAAC,WAAW;aACpB,IAAI,CACH,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAAC,oCAAoC,CAAC,EAAE,EAC1D,IAAI,CACL;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,mBAAmB,CAAC,KAAK,EAAE,IAAI;QAC7B,OAAO,IAAI,CAAC,WAAW;aACpB,IAAI,CACH,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAAC,uCAAuC,CAAC,EAAE,EAC7D,IAAI,CACL;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,eAAe,CAAC,KAAK,EAAE,IAAI;QACzB,OAAO,IAAI,CAAC,WAAW;aACpB,IAAI,CACH,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAAC,oCAAoC,CAAC,EAAE,EAC1D,IAAI,CACL;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,kCAAkC;IAElC,QAAQ,CAAC,KAAK,EAAE,EAAE;QAChB,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CACF,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAAC,2CAA2C,GAAG,EAAE,CAAC,EAAE,CACvE;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,SAAS,CAAC,KAAK,EAAE,QAAQ;QACvB,OAAO,IAAI,CAAC,WAAW;aACpB,IAAI,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,4BAA4B,CAAC,EAAE,EAAE,QAAQ,CAAC;aACzE,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,qCAAqC;IACrC,iBAAiB,CAAC,KAAK;QACrB,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CACF,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAChB,qDAAqD,CACtD,EAAE,CACJ;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,UAAU,CAAC,KAAK;QACd,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CACF,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAAC,8CAA8C,CAAC,EAAE,CACrE;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,gBAAgB,CAAC,KAAK,EAAE,IAAI;QAC1B,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CACF,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAChB,wDAAwD,GAAG,IAAI,CAChE,EAAE,CACJ;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,eAAe,CAAC,KAAK,EAAE,EAAE;QACvB,OAAO,IAAI,CAAC,WAAW;aACpB,MAAM,CACL,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAAC,2CAA2C,GAAG,EAAE,CAAC,EAAE,CACvE;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,cAAc,CAAC,KAAK,EAAE,EAAE;QACtB,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CACF,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAChB,+CAA+C,GAAG,EAAE,CACrD,EAAE,CACJ;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,mBAAmB,CAAC,KAAK,EAAE,SAAS,EAAE,SAAS;QAC7C,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CACF,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAChB,uEAAuE;YACrE,SAAS;YACT,aAAa;YACb,SAAS,CACZ,EAAE,CACJ;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,aAAa,CAAC,KAAK,EAAE,QAAQ;QAC3B,OAAO,IAAI,CAAC,WAAW;aACpB,IAAI,CACH,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAAC,+CAA+C,CAAC,EAAE,EACrE,QAAQ,CACT;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,mCAAmC;IAEnC,eAAe,CAAC,KAAK,EAAE,IAAI;QACzB,OAAO,IAAI,CAAC,WAAW;aACpB,IAAI,CACH,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAAC,yCAAyC,CAAC,EAAE,EAC/D,IAAI,CACL;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,qDAAqD;IACrD,mBAAmB;IACnB,iBAAiB;IACjB,4CAA4C;IAC5C,4CAA4C;IAC5C,SAAS;IACT,OAAO;IACP,2BAA2B;IAC3B,mBAAmB;IACnB,oKAAoK;IACpK,OAAO;IACP,qBAAqB;IACrB,YAAY;IACZ,uKAAuK;IACvK,eAAe;IACf,QAAQ;IACR,iEAAiE;IACjE,iIAAiI;IACjI,+BAA+B;IAC/B,eAAe;IACf,eAAe;IACf,+DAA+D;IAC/D,cAAc;IACd,0BAA0B;IAC1B,WAAW;IACX,oEAAoE;IACpE,IAAI;IAEJ,cAAc,CAAC,KAAK,EAAE,IAAI;QACxB,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,6BAA6B,GAAG,IAAI,CAAC,EAAE,CAAC;aACtE,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,YAAY,CAAC,KAAK;QAChB,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,uBAAuB,CAAC,EAAE,CAAC;aACzD,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,YAAY,CAAC,KAAK,EAAE,IAAI;QACtB,OAAO,IAAI,CAAC,WAAW;aACpB,IAAI,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,+BAA+B,CAAC,EAAE,EAAE,IAAI,CAAC;aACxE,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,QAAQ;QACZ,OAAO,IAAI,CAAC,WAAW;aACpB,IAAI,CAAC,EAAE,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,EAAE,QAAQ,CAAC;aACtD,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,YAAY,CAAC,QAAQ;QACnB,OAAO,IAAI,CAAC,WAAW;aACpB,IAAI,CAAC,EAAE,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,gBAAgB,CAAC,EAAE,EAAE,QAAQ,CAAC;aAC1D,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,WAAW;IACX,OAAO,CAAC,QAAQ;QACd,OAAO,IAAI,CAAC,WAAW;aACpB,IAAI,CAAC,EAAE,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC,EAAE,EAAE,QAAQ,CAAC;aACzD,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD;;OAEG;IACH,UAAU,CAAC,QAAQ;QACjB,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CAAC,EAAE,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE,EAAE,QAAQ,CAAC;aACtD,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED;;OAEG;IACH,WAAW,CAAC,KAAK,EAAE,QAAQ;QACzB,OAAO,IAAI,CAAC,WAAW;aACpB,IAAI,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,kBAAkB,CAAC,EAAE,EAAE,QAAQ,CAAC;aAC/D,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,aAAa,CAAC,KAAK,EAAE,QAAQ;QAC3B,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,kBAAkB,CAAC,EAAE,EAAE,QAAQ,CAAC;aAC9D,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,eAAe,CAAC,KAAK,EAAE,QAAQ;QAC7B,OAAO,IAAI,CAAC,WAAW;aACpB,IAAI,CACH,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAAC,kCAAkC,CAAC,EAAE,EACxD,QAAQ,CACT;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,wBAAwB,CAAC,KAAK,EAAE,QAAQ;QACtC,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CACF,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAAC,8CAA8C,CAAC,EAAE,EACpE,QAAQ,CACT;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,eAAe,CAAC,QAAQ;QACtB,OAAO,IAAI,CAAC,WAAW;aACpB,IAAI,CAAC,EAAE,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,qBAAqB,CAAC,EAAE,EAAE,QAAQ,CAAC;aAC/D,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,mBAAmB,CACjB,KAAK,EACL,SAAiB,EACjB,SAAiB,EACjB,UAAmB;QAEnB,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CACF,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAChB,+BAA+B,SAAS,cAAc,SAAS,eAAe,UAAU,EAAE,CAC3F,EAAE,CACJ;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,yDAAyD;IACzD,4BAA4B;IAC5B,uEAAuE;IACvE,iEAAiE;IACjE,IAAI;IACJ,eAAe,CAAC,KAAK,EAAE,QAAQ;QAC7B,OAAO,IAAI,CAAC,WAAW;aACpB,IAAI,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,mBAAmB,CAAC,EAAE,EAAE,QAAQ,CAAC;aAChE,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,sCAAsC;IAEtC,eAAe,CAAC,KAAK,EAAE,EAAE;QACvB,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,6BAA6B,GAAG,EAAE,CAAC,EAAE,CAAC;aACpE,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,eAAe,CAAC,KAAK,EAAE,QAAQ;QAC7B,OAAO,IAAI,CAAC,WAAW;aACpB,IAAI,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,EAAE,EAAE,QAAQ,CAAC;aAC3D,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,sCAAsC;IACtC,kBAAkB,CAAC,KAAK,EAAE,QAAQ;QAChC,OAAO,IAAI,CAAC,WAAW;aACpB,IAAI,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,iBAAiB,CAAC,EAAE,EAAE,QAAQ,CAAC;aAC9D,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,iBAAiB,CAAC,KAAK,EAAE,aAAa;QACpC,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CACF,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAAC,gCAAgC,GAAG,aAAa,CAAC,EAAE,CACvE;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,4DAA4D;IAE5D,UAAU,CAAC,KAAK;QACd,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,mBAAmB,CAAC,EAAE,CAAC;aACrD,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,aAAa,CAAC,KAAK,EAAE,IAAI;QACvB,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,gCAAgC,GAAG,IAAI,CAAC,EAAE,CAAC;aACzE,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,oBAAoB,CAAC,KAAK,EAAE,EAAE,EAAE,SAAS;QACvC,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CACF,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAChB,2CAA2C;YACzC,EAAE;YACF,aAAa;YACb,SAAS,CACZ,EAAE,CACJ;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,gBAAgB,CAAC,KAAK,EAAE,EAAE;QACxB,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,2BAA2B,GAAG,EAAE,CAAC,EAAE,CAAC;aAClE,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,oBAAoB,CAAC,KAAK,EAAE,EAAE;QAC5B,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CACF,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAAC,qCAAqC,GAAG,EAAE,CAAC,EAAE,CACjE;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,gBAAgB,CAAC,KAAK,EAAE,SAAS;QAC/B,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,wBAAwB,GAAG,SAAS,CAAC,EAAE,CAAC;aACtE,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,2BAA2B,CAAC,KAAK,EAAE,EAAE;QACnC,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CACF,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAChB,8CAA8C,GAAG,EAAE,CACpD,EAAE,CACJ;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,2BAA2B,CAAC,KAAK,EAAE,EAAE;QACnC,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CACF,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAAC,wCAAwC,GAAG,EAAE,CAAC,EAAE,CACpE;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,aAAa,CAAC,KAAK;QACjB,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,mBAAmB,CAAC,EAAE,CAAC;aACrD,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,aAAa;IACb,YAAY,CAAC,KAAK,EAAE,WAAW;QAC7B,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CACF,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAAC,+BAA+B,GAAG,WAAW,CAAC,EAAE,CACpE;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,6BAA6B;IAC7B,eAAe,CAAC,KAAK,EAAE,WAAW;QAChC,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CACF,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAChB,mDAAmD,GAAG,WAAW,CAClE,EAAE,CACJ;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,eAAe,CAAC,KAAK,EAAE,gBAAgB;QACrC,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CACF,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAChB,6DAA6D;YAC3D,gBAAgB,CACnB,EAAE,CACJ;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,aAAa;IACb,4DAA4D;IAC5D,+BAA+B;IAC/B,eAAe;IACf,kBAAkB;IAClB,mFAAmF;IACnF,WAAW;IACX,oEAAoE;IACpE,OAAO;IAEP,iBAAiB,CAAC,KAAK,EAAE,IAAI;QAC3B,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CACF,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAChB,uDAAuD,GAAG,IAAI,CAC/D,EAAE,CACJ;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,qBAAqB,CAAC,KAAK,EAAE,QAAQ;QACnC,OAAO,IAAI,CAAC,WAAW;aACpB,IAAI,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,EAAE,QAAQ,CAAC;aACrD,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,gBAAgB,CAAC,KAAK,EAAE,QAAQ;QAC9B,OAAO,IAAI,CAAC,WAAW;aACpB,IAAI,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,2BAA2B,CAAC,EAAE,EAAE,QAAQ,CAAC;aACxE,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,6BAA6B,CAAC,KAAK,EAAE,QAAQ;QAC3C,OAAO,IAAI,CAAC,WAAW;aACpB,IAAI,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,EAAE,EAAE,QAAQ,CAAC;aAC3D,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,eAAe,CAAC,KAAK,EAAE,QAAQ;QAC7B,OAAO,IAAI,CAAC,WAAW;aACpB,IAAI,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,oBAAoB,CAAC,EAAE,EAAE,QAAQ,CAAC;aACjE,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,gBAAgB,CAAC,KAAK,EAAE,QAAQ;QAC9B,OAAO,IAAI,CAAC,WAAW;aACpB,IAAI,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,2BAA2B,CAAC,EAAE,EAAE,QAAQ,CAAC;aACxE,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,aAAa,CAAC,KAAK,EAAE,QAAQ;QAC3B,OAAO,IAAI,CAAC,WAAW;aACpB,IAAI,CACH,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAAC,kCAAkC,CAAC,EAAE,EACxD,QAAQ,CACT;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,wDAAwD;IACxD,4BAA4B;IAC5B,aAAa;IACb,eAAe;IACf,wEAAwE;IACxE,iBAAiB;IACjB,QAAQ;IACR,iEAAiE;IACjE,IAAI;IACJ,YAAY,CAAC,KAAK,EAAE,EAAE;QACpB,OAAO,IAAI,CAAC,WAAW;aACpB,MAAM,CACL,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAAC,uCAAuC,GAAG,EAAE,CAAC,EAAE,CACnE;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,WAAW,CAAC,KAAK,EAAE,QAAQ;QACzB,OAAO,IAAI,CAAC,WAAW;aACpB,IAAI,CACH,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAAC,oCAAoC,CAAC,EAAE,EAC1D,QAAQ,CACT;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,oBAAoB,CAAC,KAAK,EAAE,QAAQ;QAClC,OAAO,IAAI,CAAC,WAAW;aACpB,IAAI,CACH,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAAC,uCAAuC,CAAC,EAAE,EAC7D,QAAQ,CACT;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,4BAA4B,CAAC,KAAK,EAAE,QAAQ;QAC1C,OAAO,IAAI,CAAC,WAAW;aACpB,IAAI,CACH,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAAC,oCAAoC,CAAC,EAAE,EAC1D,QAAQ,CACT;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,oCAAoC,CAAC,KAAK,EAAE,QAAQ;QAClD,OAAO,IAAI,CAAC,WAAW;aACpB,IAAI,CACH,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAAC,0CAA0C,CAAC,EAAE,EAChE,QAAQ,CACT;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,YAAY,CAAC,KAAK,EAAE,EAAE;QACpB,OAAO,IAAI,CAAC,WAAW;aACpB,MAAM,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,gBAAgB,GAAG,EAAE,CAAC,EAAE,CAAC;aAC1D,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,sBAAsB,CAAC,KAAK,EAAE,QAAQ;QACpC,6CAA6C;QAC7C,yBAAyB;QACzB,OAAO,IAAI,CAAC,WAAW;aACpB,IAAI,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,oBAAoB,CAAC,EAAE,EAAE,QAAQ,CAAC;aACjE,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,qBAAqB,CAAC,KAAK,EAAE,EAAE;QAC7B,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,+BAA+B,GAAG,EAAE,CAAC,EAAE,CAAC;aACtE,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,wBAAwB,CAAC,KAAK,EAAE,EAAE;QAChC,OAAO,IAAI,CAAC,WAAW;aACpB,MAAM,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,qBAAqB,GAAG,EAAE,CAAC,EAAE,CAAC;aAC/D,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,sBAAsB,CAAC,KAAK,EAAE,EAAE;QAC9B,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CACF,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAAC,oCAAoC,GAAG,EAAE,CAAC,EAAE,CAChE;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,uBAAuB,CAAC,KAAK,EAAE,QAAQ;QACrC,OAAO,IAAI,CAAC,WAAW;aACpB,IAAI,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,yBAAyB,CAAC,EAAE,EAAE,QAAQ,CAAC;aACtE,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,aAAa,CAAC,KAAK,EAAE,EAAE;QACrB,OAAO,IAAI,CAAC,WAAW;aACpB,MAAM,CACL,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAAC,iCAAiC,GAAG,EAAE,CAAC,EAAE,CAC7D;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,sBAAsB,CAAC,KAAK,EAAE,QAAQ;QACpC,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,yBAAyB,CAAC,EAAE,EAAE,QAAQ,CAAC;aACrE,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,wDAAwD;IACxD,4BAA4B;IAC5B,aAAa;IACb,eAAe;IACf,uEAAuE;IACvE,iBAAiB;IACjB,QAAQ;IACR,iEAAiE;IACjE,IAAI;IAEJ,iBAAiB,CAAC,KAAK,EAAE,QAAQ;QAC/B,OAAO,IAAI,CAAC,WAAW;aACpB,IAAI,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,uBAAuB,CAAC,EAAE,EAAE,QAAQ,CAAC;aACpE,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,mBAAmB,CAAC,KAAK,EAAE,QAAQ;QACjC,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,uBAAuB,CAAC,EAAE,EAAE,QAAQ,CAAC;aACnE,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,gBAAgB,CAAC,KAAK,EAAE,EAAE;QACxB,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,kCAAkC,GAAG,EAAE,CAAC,EAAE,CAAC;aACzE,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,eAAe,CAAC,KAAK,EAAE,EAAE;QACvB,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CACF,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAAC,6CAA6C,GAAG,EAAE,CAAC,EAAE,CACzE;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,iDAAiD;IACjD,4BAA4B;IAC5B,+EAA+E;IAC/E,iEAAiE;IACjE,IAAI;IAEJ,eAAe,CAAC,KAAK,EAAE,EAAE;QACvB,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,kCAAkC,GAAG,EAAE,CAAC,EAAE,CAAC;aACzE,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,iBAAiB,CAAC,KAAK,EAAE,EAAE;QACzB,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,iCAAiC,GAAG,EAAE,CAAC,EAAE,CAAC;aACxE,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,mBAAmB,CAAC,KAAK,EAAE,EAAE;QAC3B,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CACF,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAChB,iDAAiD,GAAG,EAAE,CACvD,EAAE,CACJ;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,uBAAuB,CAAC,KAAK,EAAE,QAAQ;QACrC,OAAO,IAAI,CAAC,WAAW;aACpB,IAAI,CACH,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAAC,mCAAmC,CAAC,EAAE,EACzD,QAAQ,CACT;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,kBAAkB,CAAC,KAAK,EAAE,EAAE;QAC1B,oCAAoC;QACpC,mBAAmB;QACnB,OAAO,IAAI,CAAC,WAAW;aACpB,MAAM,CACL,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAAC,oCAAoC,GAAG,EAAE,CAAC,EAAE,CAChE;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,uDAAuD;IACvD,wCAAwC;IACxC,uBAAuB;IACvB,4BAA4B;IAC5B,eAAe;IACf,eAAe;IACf,2EAA2E;IAC3E,QAAQ;IACR,iEAAiE;IACjE,IAAI;IACJ,+CAA+C;IAC/C,4BAA4B;IAC5B,YAAY;IACZ,eAAe;IACf,iFAAiF;IACjF,QAAQ;IACR,iEAAiE;IACjE,IAAI;IACJ,oBAAoB,CAAC,KAAK,EAAE,EAAE;QAC5B,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,iCAAiC,GAAG,EAAE,CAAC,EAAE,CAAC;aACxE,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,oBAAoB,CAAC,KAAK,EAAE,EAAE;QAC5B,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,+BAA+B,GAAG,EAAE,CAAC,EAAE,CAAC;aACtE,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,kBAAkB,CAAC,KAAK,EAAE,EAAE;QAC1B,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CACF,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAChB,oDAAoD,GAAG,EAAE,CAC1D,EAAE,CACJ;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,WAAW,CAAC,KAAK,EAAE,EAAE;QACnB,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CACF,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAChB,+CAA+C,GAAG,EAAE,CACrD,EAAE,CACJ;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,iBAAiB,CAAC,KAAK,EAAE,EAAE;QACzB,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CACF,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAChB,uDAAuD,GAAG,EAAE,CAC7D,EAAE,CACJ;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,qBAAqB,CAAC,KAAK,EAAE,QAAQ;QACnC,OAAO,IAAI,CAAC,WAAW;aACpB,IAAI,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,sBAAsB,CAAC,EAAE,EAAE,QAAQ,CAAC;aACnE,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,uBAAuB,CAAC,KAAK,EAAE,QAAQ;QACrC,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,sBAAsB,CAAC,EAAE,EAAE,QAAQ,CAAC;aAClE,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,UAAU,CAAC,KAAK,EAAE,IAAI;QACpB,OAAO,IAAI,CAAC,WAAW;aACpB,IAAI,CACH,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAAC,kCAAkC,CAAC,EAAE,EACxD,IAAI,CACL;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,gBAAgB,CAAC,KAAK,EAAE,IAAI;QAC1B,OAAO,IAAI,CAAC,WAAW;aACpB,IAAI,CACH,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAAC,yCAAyC,CAAC,EAAE,EAC/D,IAAI,CACL;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,sBAAsB,CAAC,KAAK,EAAE,EAAE;QAC9B,OAAO,IAAI,CAAC,WAAW;aACpB,MAAM,CACL,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAAC,2CAA2C,GAAG,EAAE,CAAC,EAAE,CACvE;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,uCAAuC;IACvC,4BAA4B;IAC5B,2EAA2E;IAC3E,iEAAiE;IACjE,IAAI;IAEJ,6BAA6B,CAAC,KAAK,EAAE,QAAQ;QAC3C,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CACF,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAAC,8BAA8B,CAAC,EAAE,EACpD,QAAQ,CACT;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,uBAAuB,CAAC,KAAK,EAAE,EAAE;QAC/B,OAAO,IAAI,CAAC,WAAW;aACpB,MAAM,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,uBAAuB,GAAG,EAAE,CAAC,EAAE,CAAC;aACjE,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,qBAAqB,CAAC,KAAK,EAAE,EAAE;QAC7B,OAAO,IAAI,CAAC,WAAW;aACpB,MAAM,CACL,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAAC,wCAAwC,GAAG,EAAE,CAAC,EAAE,CACpE;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,cAAc,CAAC,KAAK,EAAE,OAAO;QAC3B,OAAO,IAAI,CAAC,IAAI;aACb,IAAI,CACH,6OAA6O,EAC7O,OAAO,CACR;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,uBAAuB,CAAC,KAAK,EAAE,EAAE;QAC/B,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CACF,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAChB,0DAA0D,GAAG,EAAE,CAChE,EAAE,CACJ;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,oBAAoB,CAAC,KAAK;QACxB,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CACF,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAAC,6CAA6C,CAAC,EAAE,CACpE;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,mBAAmB,CAAC,KAAK,EAAE,EAAE;QAC3B,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CACF,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAAC,mCAAmC,GAAG,EAAE,CAAC,EAAE,CAC/D;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,oBAAoB,CAAC,KAAK,EAAE,QAAQ;QAClC,OAAO,IAAI,CAAC,WAAW;aACpB,IAAI,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,wBAAwB,CAAC,EAAE,EAAE,QAAQ,CAAC;aACrE,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,mBAAmB,CAAC,KAAK,EAAE,QAAQ;QACjC,OAAO,IAAI,CAAC,WAAW;aACpB,IAAI,CACH,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAAC,yCAAyC,CAAC,EAAE,EAC/D,QAAQ,CACT;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,sBAAsB,CAAC,KAAK,EAAE,EAAE;QAC9B,OAAO,IAAI,CAAC,WAAW;aACpB,MAAM,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,yBAAyB,GAAG,EAAE,CAAC,EAAE,CAAC;aACnE,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,eAAe,CAAC,KAAK,EAAE,WAAW;QAChC,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CACF,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAChB,gDAAgD,GAAG,WAAW,CAC/D,EAAE,CACJ;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,eAAe,CAAC,KAAK,EAAE,WAAW;QAChC,yDAAyD;QACzD,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CACF,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAChB,gDAAgD,GAAG,WAAW,CAC/D,EAAE,CACJ;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,WAAW,CAAC,KAAK;QACf,sDAAsD;QACtD,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,sCAAsC,CAAC,EAAE,CAAC;aACxE,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,qBAAqB,CAAC,KAAK;QACzB,sDAAsD;QACtD,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CACF,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAAC,4CAA4C,CAAC,EAAE,CACnE;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,gBAAgB,CAAC,KAAK,EAAE,EAAE;QACxB,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,kCAAkC,GAAG,EAAE,CAAC,EAAE,CAAC;aACzE,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,qBAAqB,CAAC,KAAK,EAAE,EAAE;QAC7B,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CACF,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAChB,+CAA+C,GAAG,EAAE,CACrD,EAAE,CACJ;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,gCAAgC,CAAC,KAAK,EAAE,EAAE;QACxC,OAAO,IAAI,CAAC,WAAW;aACpB,IAAI,CACH,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAAC,wCAAwC,CAAC,EAAE,EAC9D,EAAE,CACH;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,mCAAmC,CAAC,KAAK,EAAE,EAAE;QAC3C,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CACF,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAChB,gEAAgE,GAAG,EAAE,CACtE,EAAE,CACJ;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,mBAAmB,CAAC,KAAK,EAAE,EAAE,EAAE,IAAI;QACjC,OAAO,IAAI,CAAC,WAAW;aACpB,IAAI,CACH,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAAC,iDAAiD,CAAC,EAAE,EACvE,EAAE,EAAE,EAAE,IAAI,EAAE,CACb;aAEA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,mBAAmB,CAAC,KAAK,EAAE,EAAE;QAC3B,OAAO,IAAI,CAAC,WAAW;aACpB,IAAI,CACH,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAAC,6CAA6C,CAAC,EAAE,EACnE,EAAE,CACH;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,uBAAuB,CAAC,KAAK,EAAE,EAAE;QAC/B,OAAO,IAAI,CAAC,WAAW;aACpB,MAAM,CACL,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAAC,qCAAqC,GAAG,EAAE,CAAC,EAAE,CACjE;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,oBAAoB,CAAC,KAAK,EAAE,EAAE;QAC5B,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CACF,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAChB,sDAAsD,GAAG,EAAE,CAC5D,EAAE,CACJ;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,iBAAiB,CAAC,KAAK,EAAE,QAAQ;QAC/B,OAAO,IAAI,CAAC,WAAW;aACpB,IAAI,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,wBAAwB,CAAC,EAAE,EAAE,QAAQ,CAAC;aACrE,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,gBAAgB,CAAC,KAAK,EAAE,QAAQ;QAC9B,OAAO,IAAI,CAAC,WAAW;aACpB,IAAI,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,sBAAsB,CAAC,EAAE,EAAE,QAAQ,CAAC;aACnE,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,mBAAmB,CAAC,KAAK,EAAE,EAAE;QAC3B,OAAO,IAAI,CAAC,WAAW;aACpB,MAAM,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,yBAAyB,GAAG,EAAE,CAAC,EAAE,CAAC;aACnE,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,WAAW,CAAC,KAAK,EAAE,IAAI;QACrB,OAAO,IAAI,CAAC,WAAW;aACpB,IAAI,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,gCAAgC,CAAC,EAAE,EAAE,IAAI,CAAC;aACzE,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,cAAc,CAAC,KAAK;QAClB,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CACF,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAAC,6CAA6C,CAAC,EAAE,CACpE;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,wBAAwB,CAAC,KAAK,EAAE,QAAQ;QACtC,OAAO,IAAI,CAAC,WAAW;aACpB,IAAI,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,wBAAwB,CAAC,EAAE,EAAE,QAAQ,CAAC;aACrE,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,uBAAuB,CAAC,KAAK,EAAE,EAAE;QAC/B,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CACF,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAAC,mCAAmC,GAAG,EAAE,CAAC,EAAE,CAC/D;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,kBAAkB,CAAC,KAAK,EAAE,QAAQ;QAChC,OAAO,IAAI,CAAC,WAAW;aACpB,IAAI,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,2BAA2B,CAAC,EAAE,EAAE,QAAQ,CAAC;aACxE,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,iBAAiB,CAAC,KAAK,EAAE,EAAE;QACzB,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CACF,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAAC,sCAAsC,GAAG,EAAE,CAAC,EAAE,CAClE;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,8BAA8B,CAAC,KAAK,EAAE,EAAE,EAAE,SAAS;QACjD,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CACF,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAChB,kDAAkD,EAAE,cAAc,SAAS,EAAE,CAC9E,EAAE,CACJ;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,sBAAsB,CAAC,KAAK,EAAE,EAAE,EAAE,SAAS;QACzC,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CACF,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAChB,uCAAuC,EAAE,cAAc,SAAS,EAAE,CACnE,EAAE,CACJ;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,uBAAuB,CAAC,KAAK,EAAE,QAAQ;QACrC,OAAO,IAAI,CAAC,WAAW;aACpB,IAAI,CACH,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAAC,+BAA+B,CAAC,EAAE,EACrD,QAAQ,CACT;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,kBAAkB;IAElB,cAAc,CAAC,KAAK,EAAE,EAAE;QACtB,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,+BAA+B,GAAG,EAAE,CAAC,EAAE,CAAC;aACtE,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,oBAAoB,CAAC,KAAK,EAAE,EAAE;QAC5B,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CACF,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAAC,sCAAsC,GAAG,EAAE,CAAC,EAAE,CAClE;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,wBAAwB,CAAC,KAAK,EAAE,EAAE;QAChC,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CACF,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAChB,oDAAoD,GAAG,EAAE,CAC1D,EAAE,CACJ;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,WAAW,CAAC,EAAU;QACpB,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CAAC,EAAE,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,gCAAgC,GAAG,EAAE,CAAC,EAAE,CAAC;aACpE,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,cAAc,CAAC,KAAa;QAC1B,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CAAC,EAAE,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,+BAA+B,GAAG,KAAK,CAAC,EAAE,CAAC;aACtE,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,oBAAoB,CAAC,KAAK,EAAE,EAAE;QAC5B,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CACF,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAAC,mCAAmC,GAAG,EAAE,CAAC,EAAE,CAC/D;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,uBAAuB,CAAC,KAAK,EAAE,EAAE;QAC/B,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CACF,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAChB,mDAAmD,GAAG,EAAE,CACzD,EAAE,CACJ;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,gBAAgB,CAAC,KAAK,EAAE,QAAQ;QAC9B,OAAO,IAAI,CAAC,WAAW;aACpB,IAAI,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,gBAAgB,CAAC,EAAE,EAAE,QAAQ,CAAC;aAC7D,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,gCAAgC;IAChC,oBAAoB,CAAC,KAAK,EAAE,QAAQ;QAClC,OAAO,IAAI,CAAC,WAAW;aACpB,IAAI,CACH,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAAC,+BAA+B,CAAC,EAAE,EACrD,QAAQ,CACT;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,mBAAmB,CAAC,KAAK,EAAE,EAAE;QAC3B,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CACF,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAChB,8CAA8C,GAAG,EAAE,CACpD,EAAE,CACJ;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,QAAQ,CAAC,KAAK,EAAE,QAAQ;QACtB,OAAO,IAAI,CAAC,WAAW;aACpB,IAAI,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,yBAAyB,CAAC,EAAE,EAAE,QAAQ,CAAC;aACtE,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,OAAO,CAAC,KAAK,EAAE,EAAE;QACf,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CACF,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAAC,wCAAwC,GAAG,EAAE,CAAC,EAAE,CACpE;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,kBAAkB,CAAC,KAAK,EAAE,EAAE;QAC1B,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CACF,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAChB,oDAAoD,GAAG,EAAE,CAC1D,EAAE,CACJ;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,uBAAuB;IAEvB,eAAe,CAAC,KAAK,EAAE,EAAE;QACvB,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,kCAAkC,GAAG,EAAE,CAAC,EAAE,CAAC;aACzE,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,gBAAgB,CAAC,KAAK,EAAE,QAAQ;QAC9B,OAAO,IAAI,CAAC,WAAW;aACpB,IAAI,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,mBAAmB,CAAC,EAAE,EAAE,QAAQ,CAAC;aAChE,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,kCAAkC;IAClC,kBAAkB,CAAC,KAAK,EAAE,EAAE;QAC1B,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,iCAAiC,GAAG,EAAE,CAAC,EAAE,CAAC;aACxE,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,kBAAkB,CAAC,KAAK,EAAE,KAAK,EAAE,SAAS;QACxC,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CACF,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAChB,uDAAuD;YACrD,KAAK;YACL,aAAa;YACb,SAAS,CACZ,EAAE,CACJ;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,qBAAqB,CAAC,KAAK,EAAE,QAAkB;QAC7C,OAAO,IAAI,CAAC,WAAW;aACpB,IAAI,CACH,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAAC,uCAAuC,CAAC,EAAE,EAC7D,QAAQ,CACT;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,mBAAmB,CAAC,KAAK,EAAE,SAAiB;QAC1C,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CACF,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAChB,wDAAwD,GAAG,SAAS,CACrE,EAAE,CACJ;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,2BAA2B,CAAC,KAAK,EAAE,SAAiB;QAClD,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CACF,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAChB,qDAAqD,GAAG,SAAS,CAClE,EAAE,CACJ;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,iBAAiB,CAAC,KAAK,EAAE,SAAiB;QACxC,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CACF,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAChB,4CAA4C,GAAG,SAAS,CACzD,EAAE,CACJ;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,qBAAqB,CAAC,KAAK,EAAE,QAAQ;QACnC,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,0BAA0B,CAAC,EAAE,EAAE,QAAQ,CAAC;aACtE,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,iBAAiB,CAAC,KAAK,EAAE,IAAI;QAC3B,OAAO,IAAI,CAAC,WAAW;aACpB,IAAI,CACH,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAAC,6CAA6C,CAAC,EAAE,EACnE,IAAI,CACL;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,eAAe,CAAC,KAAK,EAAE,EAAE;QACvB,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CACF,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAChB,oDAAoD,GAAG,EAAE,CAC1D,EAAE,CACJ;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,gBAAgB,CAAC,KAAK,EAAE,IAAI;QAC1B,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CACF,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAChB,iDAAiD,GAAG,IAAI,CACzD,EAAE,CACJ;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,wBAAwB,CAAC,KAAK,EAAE,IAAI;QAClC,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CACF,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAChB,8DAA8D,GAAG,IAAI,CACtE,EAAE,CACJ;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,gBAAgB,CAAC,KAAK,EAAE,QAAQ;QAC9B,OAAO,IAAI,CAAC,WAAW;aACpB,IAAI,CACH,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAAC,yCAAyC,CAAC,EAAE,EAC/D,QAAQ,CACT;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,wBAAwB,CAAC,KAAK,EAAE,QAAQ;QACtC,OAAO,IAAI,CAAC,WAAW;aACpB,IAAI,CACH,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAChB,mDAAmD,CACpD,EAAE,EACH,QAAQ,CACT;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,kBAAkB,CAAC,KAAK,EAAE,EAAE;QAC1B,OAAO,IAAI,CAAC,WAAW;aACpB,MAAM,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,6BAA6B,GAAG,EAAE,CAAC,EAAE,CAAC;aACvE,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,yBAAyB,CAAC,KAAK,EAAE,EAAE;QACjC,OAAO,IAAI,CAAC,WAAW;aACpB,MAAM,CACL,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAChB,iDAAiD,GAAG,EAAE,CACvD,EAAE,CACJ;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,2BAA2B,CAAC,KAAK,EAAE,SAAS;QAC1C,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CACF,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAChB,mDAAmD,GAAG,SAAS,CAChE,EAAE,CACJ;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,sBAAsB,CAAC,KAAK,EAAE,SAAS;QACrC,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CACF,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAChB,2DAA2D;YACzD,SAAS,CACZ,EAAE,CACJ;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,oBAAoB,CAAC,KAAK,EAAE,QAAQ;QAClC,OAAO,IAAI,CAAC,WAAW;aACpB,IAAI,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,4BAA4B,CAAC,EAAE,EAAE,QAAQ,CAAC;aACzE,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,sBAAsB,CAAC,KAAK,EAAE,QAAQ;QACpC,OAAO,IAAI,CAAC,WAAW;aACpB,IAAI,CACH,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,CAChB,oDAAoD,CACrD,EAAE,EACH,QAAQ,CACT;aACA,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,aAAa,CAAC,KAAK,EAAE,EAAE;QACrB,OAAO,IAAI,CAAC,WAAW;aACpB,GAAG,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,uBAAuB,GAAG,EAAE,CAAC,EAAE,CAAC;aAC9D,IAAI,CAAC,iEAAU,CAAC,IAAI,CAAC,WAAW,CAAM,eAAe,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD;;;;OAIG;IACH,WAAW,CAAI,SAAS,GAAG,WAAW,EAAE,MAAU;QAChD,OAAO,CAAC,KAAU,EAAiB,EAAE;YACnC,MAAM,YAAY,GAAG,KAAK,CAAC,MAAM,CAAC;YAClC,IAAI,KAAK,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,CAAC,UAAU,IAAI,cAAc,EAAE;gBAC/D,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;aACpB;YACD,+DAA+D;YAC/D,6EAA6E;YAC7E,IAAI;YAEJ,OAAO,uDAAU,CAAC,KAAK,CAAC,CAAC;QAC3B,CAAC,CAAC;IACJ,CAAC;;wEA1+CU,YAAY;+FAAZ,YAAY,WAAZ,YAAY,mBAFX,MAAM;6FAEP,YAAY;cAHxB,wDAAU;eAAC;gBACV,UAAU,EAAE,MAAM;aACnB;;;;;;;;;;;;;;ACfD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAA4E;AAYrD;AASC;AAKc;AACP;;;;;;;;AAE/B,+CAA+C;AAC/C,sCAAsC;AACtC,kDAAkD;AAClD,QAAQ;AACR,IAAI;AAEJ,mDAAmD;AAC5C,MAAM,KAAK;IAChB,YACS,OAAe,EAAE,EACjB,WAAmB,EAAE,EACrB,aAAqB,EAAE;QAFvB,SAAI,GAAJ,IAAI,CAAa;QACjB,aAAQ,GAAR,QAAQ,CAAa;QACrB,eAAU,GAAV,UAAU,CAAa;IAC7B,CAAC;CACL;AAYM,MAAM,iBAAiB;IAqE5B,YACE,WAAwB,EAChB,aAA2B,EAC3B,WAAoC,EACD,UAAwB,EACxC,SAAoB;QAHvC,kBAAa,GAAb,aAAa,CAAc;QAC3B,gBAAW,GAAX,WAAW,CAAyB;QACD,eAAU,GAAV,UAAU,CAAc;QACxC,cAAS,GAAT,SAAS,CAAW;QA8BjD,iBAAY,GAAG,IAAI,4CAAO,EAAQ,CAAC;QACnC,YAAO,GAAG,KAAK,CAAC;QAChB,YAAO,GAAG,KAAK,CAAC;QAChB,gBAAW,GAAG,mBAAmB,CAAC;QAClC,OAAE,GAAG,qBAAqB,iBAAiB,CAAC,MAAM,EAAE,EAAE,CAAC;QAI/C,cAAS,GAAG,KAAK,CAAC;QAClB,cAAS,GAAG,KAAK,CAAC;QAC1B,aAAQ,GAAG,CAAC,CAAM,EAAE,EAAE,GAAE,CAAC,CAAC;QAC1B,cAAS,GAAG,GAAG,EAAE,GAAE,CAAC,CAAC;QAvCnB,IAAI,CAAC,KAAK,GAAG,WAAW,CAAC,KAAK,CAAC;YAC7B,IAAI,EAAE;gBACJ,IAAI;gBACJ,CAAC,yDAAU,CAAC,QAAQ,EAAE,yDAAU,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,yDAAU,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;aACxE;YACD,QAAQ,EAAE;gBACR,IAAI;gBACJ,CAAC,yDAAU,CAAC,QAAQ,EAAE,yDAAU,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,yDAAU,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;aACxE;YACD,UAAU,EAAE;gBACV,IAAI;gBACJ,CAAC,yDAAU,CAAC,QAAQ,EAAE,yDAAU,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,yDAAU,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;aACxE;SACF,CAAC,CAAC;QAEH,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,EAAE;YAC1B,IAAI,CAAC,SAAS,CAAC,aAAa,GAAG,IAAI,CAAC;SACrC;IACH,CAAC;IAtFD,IAAI,KAAK;QACP,MAAM,EACJ,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,GACtC,GAAG,IAAI,CAAC,KAAK,CAAC;QAEf,OAAO,CAAC,IAAI,IAAI,CAAC,QAAQ,IAAI,CAAC,UAAU,CAAC;IAC3C,CAAC;IAED,IAAI,gBAAgB;QAClB,OAAO,IAAI,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC;IACrC,CAAC;IAED,IACI,WAAW;QACb,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IACD,IAAI,WAAW,CAAC,KAAa;QAC3B,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;QAC1B,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;IAC3B,CAAC;IAED,IACI,QAAQ;QACV,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IACD,IAAI,QAAQ,CAAC,KAAc;QACzB,IAAI,CAAC,SAAS,GAAG,mFAAqB,CAAC,KAAK,CAAC,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;IAC3B,CAAC;IAED,IACI,QAAQ;QACV,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IACD,IAAI,QAAQ,CAAC,KAAc;QACzB,IAAI,CAAC,SAAS,GAAG,mFAAqB,CAAC,KAAK,CAAC,CAAC;QAC9C,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;QAC5D,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;IAC3B,CAAC;IAED,IACI,KAAK;QACP,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE;YACpB,MAAM,EACJ,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,GACtC,GAAG,IAAI,CAAC,KAAK,CAAC;YACf,OAAO,IAAI,KAAK,CAAC,IAAI,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAC;SAC9C;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IACD,IAAI,KAAK,CAAC,GAAiB;QACzB,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,GAAG,GAAG,IAAI,IAAI,KAAK,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;QACpE,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,CAAC,CAAC;QACpD,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;IAC3B,CAAC;IAED,IAAI,UAAU;QACZ,wBAAwB;QACxB,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC;IAC5C,CAAC;IAiDD,WAAW,CAAC,OAAsB;QAChC,wCAAwC;QACxC,mDAAmD;QACnD,IAAI,OAAO,CAAC,aAAa,CAAC,YAAY,EAAE;YACtC,uBAAuB;YACvB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;SACrB;IACH,CAAC;IAED,WAAW;QACT,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC;QAC7B,IAAI,CAAC,aAAa,CAAC,cAAc,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACtD,CAAC;IAED,SAAS,CAAC,KAAiB;QACzB,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;YACjB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;YACpB,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;SAC1B;IACH,CAAC;IAED,UAAU,CAAC,KAAiB;QAC1B,IACE,CAAC,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,QAAQ,CAAC,KAAK,CAAC,aAAwB,CAAC,EACxE;YACA,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;YACpB,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;YACrB,IAAI,CAAC,SAAS,EAAE,CAAC;YACjB,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;SAC1B;IACH,CAAC;IAED,aAAa,CACX,OAAwB,EACxB,WAA8B;QAE9B,IAAI,CAAC,OAAO,CAAC,MAAM,IAAI,WAAW,EAAE;YAClC,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;SACrD;IACH,CAAC;IAED,aAAa,CAAC,OAAwB,EAAE,WAA6B;QACnE,IAAI,OAAO,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE;YAC5B,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;SACrD;IACH,CAAC;IAED,iBAAiB,CAAC,GAAa;QAC7B,MAAM,cAAc,GAAG,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,aAAa,CACjE,8BAA8B,CAC9B,CAAC;QACH,cAAc,CAAC,YAAY,CAAC,kBAAkB,EAAE,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IACjE,CAAC;IAED,gBAAgB;QACd,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC,KAAK,EAAE;YACxC,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,eAAe,EAAE,SAAS,CAAC,CAAC;SAC9D;aAAM,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,KAAK,EAAE;YAC7C,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,eAAe,EAAE,SAAS,CAAC,CAAC;SAC9D;aAAM,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE;YACzC,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC;SAC5D;aAAM;YACL,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;SACxD;IACH,CAAC;IAED,UAAU,CAAC,GAAiB;QAC1B,IAAI,CAAC,KAAK,GAAG,GAAG,CAAC;IACnB,CAAC;IAED,gBAAgB,CAAC,EAAO;QACtB,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;IACrB,CAAC;IAED,iBAAiB,CAAC,EAAO;QACvB,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;IACtB,CAAC;IAED,gBAAgB,CAAC,UAAmB;QAClC,IAAI,CAAC,QAAQ,GAAG,UAAU,CAAC;IAC7B,CAAC;IAED,YAAY,CAAC,OAAwB,EAAE,WAA8B;QACnE,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;QACzC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC5B,CAAC;;AA1GM,wBAAM,GAAG,CAAC,CAAC;kFA/FP,iBAAiB,2bAyEN,2EAAc;iGAzEzB,iBAAiB;;;;;;;;;;;;2RANjB,CAAC,EAAE,OAAO,EAAE,gFAAmB,EAAE,WAAW,EAAE,iBAAiB,EAAE,CAAC;;QCjD/E,yEAKK;QAFA,gJAAW,qBAAiB,IAAC,0FACjB,sBAAkB,IADD;QAE7B,0EAAuC;QAAA,4DAAK;QAAA,4DAAO;QACtD,8EAOA;QAHO,oRAAS,8CAA2C,IAAC;QAJ5D,4DAOA;QAAA,0EAAuC;QAAA,4DAAK;QAAA,4DAAO;QACnD,8EASA;QAJO,qRAAS,kDAAiD,IAAC,gPACxC,mDAA4C,IADJ;QALlE,4DASA;QACA,8EASF;QAJS,wIAAS,+CAAuC,IAAC,gPAC9B,qDAAkD,IADpB;QALxD,4DASF;QAAA,4DAAM;;QAhCD,gFAAmB;QACnB,yIAAiD;;6FDqDzC,iBAAiB;cAV7B,uDAAS;eAAC;gBACT,QAAQ,EAAE,eAAe;gBACzB,WAAW,EAAE,4BAA4B;gBACzC,SAAS,EAAE,CAAC,4BAA4B,CAAC;gBACzC,SAAS,EAAE,CAAC,EAAE,OAAO,EAAE,gFAAmB,EAAE,WAAW,EAAE,iBAAiB,EAAE,CAAC;gBAC7E,IAAI,EAAE;oBACJ,0BAA0B,EAAE,kBAAkB;oBAC9C,MAAM,EAAE,IAAI;iBACb;aACF;;sBA0EI,sDAAQ;;sBAAI,oDAAM;uBAAC,2EAAc;;sBACjC,sDAAQ;;sBAAI,kDAAI;wBArDf,WAAW;kBADd,mDAAK;YAUF,QAAQ;kBADX,mDAAK;YAUF,QAAQ;kBADX,mDAAK;YAWF,KAAK;kBADR,mDAAK;YAmDa,SAAS;kBAA3B,uDAAS;mBAAC,MAAM;YACM,aAAa;kBAAnC,uDAAS;mBAAC,UAAU;YACI,eAAe;kBAAvC,uDAAS;mBAAC,YAAY;YACC,aAAa;kBAApC,mDAAK;mBAAC,eAAe;YAQK,mBAAmB;kBAA7C,mDAAK;mBAAC,kBAAkB;;;;;;;;;;;;;;AErK3B;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAwE;AACJ;AAIV;AAG6B;AAClB;;;;;;;;;;;;;;ICmL/D,4EAMC;IAAA,+EAAoB;IAAA,4DACtB;;;IAED,4EAMG;IAAA,6FAAkC;IAAA,4DACpC;;;IAgBD,4EAGkB;IAAA,mFACF;IAAA,4DAAY;;ADhNzB,MAAM,uBAAuB;IAMlC,YACU,WAAwB,EACxB,WAAyB,EACzB,KAAqB,EACrB,cAA8B,EAC/B,MAAiB,EACjB,IAA2B;QAL1B,gBAAW,GAAX,WAAW,CAAa;QACxB,gBAAW,GAAX,WAAW,CAAc;QACzB,UAAK,GAAL,KAAK,CAAgB;QACrB,mBAAc,GAAd,cAAc,CAAgB;QAC/B,WAAM,GAAN,MAAM,CAAW;QACjB,SAAI,GAAJ,IAAI,CAAuB;QATpC,cAAS,GAAG,KAAK,CAAC;QAClB,SAAI,GAAG,IAAI,CAAC;QACZ,UAAK,GAAG,IAAI,CAAC;QASb,iBAAY,GAAG,OAAO,CAAC;IADpB,CAAC;IAEJ,QAAQ;QACN,IAAI,CAAC,eAAe,EAAE,CAAC;QACvB,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,MAAM,EAAE,EAAE;YACrC,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC;QACpC,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAC3C;YACE,QAAQ,EAAE,CAAC,EAAE,EAAE,CAAC,yDAAU,CAAC,QAAQ,EAAE,yDAAU,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC;YAC/D,gBAAgB,EAAE,CAAC,EAAE,EAAE,CAAC,yDAAU,CAAC,QAAQ,EAAE,yDAAU,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC;SACxE,EACD,EAAE,UAAU,EAAE,IAAI,CAAC,cAAc,EAAE,CACpC,CAAC;IACJ,CAAC;IACD,eAAe;QACb,oDAAoD;QACpD,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;QAE7C,IAAI,UAAU,CAAC,QAAQ,CAAC,iBAAiB,CAAC,EAAE;YAC1C,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC;SAC7B;aAAM,IAAI,UAAU,CAAC,QAAQ,CAAC,iBAAiB,CAAC,EAAE;YACjD,IAAI,CAAC,YAAY,GAAG,QAAQ,CAAC;SAC9B;IACH,CAAC;IACD,cAAc,CAAC,KAAgB;QAC7B,qCAAqC;QACrC,MAAM,QAAQ,GAAG,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC;QAC7C,MAAM,eAAe,GAAG,KAAK,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC,KAAK,CAAC;QAE5D,OAAO,QAAQ,KAAK,eAAe,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IACjE,CAAC;IACD,IAAI,YAAY;QACd,OAAO,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC;IACvC,CAAC;IAED,QAAQ;QACN,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QAEtB,IAAI,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE;YAChC,IAAI,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,OAAO,EAAE;gBACvC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,yBAAyB,CAAC,CAAC;aACtD;YACD,OAAO;SACR;QAED,IAAI,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE;YAC9B,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;YACtD,IAAI,CAAC,cAAc,CAAC,YAAY,EAAE,CAAC;YACnC,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,SAAS,CACpE,CAAC,QAAQ,EAAE,EAAE;gBACX,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;gBAElC,IAAI,QAAQ,CAAC,OAAO,EAAE;oBACpB,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,mBAAmB,CAAC,CAAC;oBAC/C,IACE,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC,KAAK;wBACrC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC,KAAK,EACrC;wBACA,2BAA2B;wBAC3B,kDAAkD;wBAClD,MAAM;wBACN,IAAI,CAAC,UAAU,CACb,uBAAuB,EACvB,IAAI,EACJ,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC,KAAK,CACtC,CAAC;qBACH;yBAAM;wBACL,0BAA0B;wBAC1B,IAAI,CAAC,UAAU,CAAC,uBAAuB,CAAC,CAAC;qBAC1C;oBACD,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;iBACrB;qBAAM;iBACN;YACH,CAAC,EACD,CAAC,GAAG,EAAE,EAAE;gBACN,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;gBAClC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACnB,CAAC,CACF,CAAC;SACH;IACH,CAAC;IAED,UAAU,CAAC,QAAgB,EAAE,YAAY,GAAG,KAAK,EAAE,KAAc;QAC/D,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,qEAAc,EAAE;YACjD,KAAK,EAAE,OAAO;YACd,IAAI,EAAE;gBACJ,QAAQ;gBACR,YAAY;gBACZ,KAAK;aACN;SACF,CAAC,CAAC;QAEH,SAAS,CAAC,WAAW,EAAE,CAAC,SAAS,CAAC,CAAC,MAAM,EAAE,EAAE;YAC3C,IAAI,MAAM,EAAE;gBACV,IAAI,MAAM,IAAI,gBAAgB,EAAE;oBAC9B,IAAI,CAAC,gBAAgB,EAAE,CAAC;iBACzB;qBAAM,IAAI,MAAM,IAAI,UAAU,EAAE;oBAC/B,IAAI,CAAC,QAAQ,EAAE,CAAC;iBACjB;qBAAM,IAAI,MAAM,IAAI,YAAY,EAAE;iBAClC;aACF;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAED,QAAQ;QACN,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,gFAAiB,EAAE;YACpD,KAAK,EAAE,OAAO;YACd,IAAI,EAAE,EAAE;SACT,CAAC,CAAC;QACH,SAAS,CAAC,WAAW,EAAE,CAAC,SAAS,CAAC,CAAC,MAAM,EAAE,EAAE;YAC3C,IAAI,MAAM,EAAE;gBACV,IAAI,MAAM,IAAI,aAAa,EAAE;oBAC3B,IAAI,CAAC,UAAU,CAAC,uBAAuB,CAAC,CAAC;iBAC1C;qBAAM,IAAI,MAAM,IAAI,gBAAgB,EAAE;oBACrC,IAAI,CAAC,gBAAgB,EAAE,CAAC;iBACzB;qBAAM,IAAI,MAAM,IAAI,YAAY,EAAE;iBAClC;aACF;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IACD,gBAAgB;QACd,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,kGAAuB,EAAE;YAC1D,KAAK,EAAE,OAAO;SACf,CAAC,CAAC;QACH,SAAS,CAAC,WAAW,EAAE,CAAC,SAAS,CAAC,CAAC,MAAM,EAAE,EAAE;YAC3C,IAAI,MAAM,EAAE;gBACV,IAAI,MAAM,IAAI,aAAa,EAAE;oBAC3B,IAAI,CAAC,UAAU,CAAC,uBAAuB,CAAC,CAAC;iBAC1C;aACF;QACH,CAAC,CAAC,CAAC;IACL,CAAC;;8FAlJU,uBAAuB;uGAAvB,uBAAuB;QChBpC,6EACE;QAAA,yEACE;QAgKJ,yEACE;QAAA,yEACE;QAAA,yEACE;QAAA,8DACE;QADF,yEACE;QAAA,qEACA;QAAA,4DAAM;QAEV,4DAAM;QACR,4DAAM;QACN,+DAA0B;QAA1B,wEAA0B;QAAA,uDAAyB;QAAA,4DAAK;QACxD,2EAAiC;QAAA,iGAAqC;QAAA,4DAAQ;QAC9E,2EACE;QADkC,oJAAY,cAAU,IAAC;QACzD,2EAEE;QAAA,sFACI;QAAA,6EAAW;QAAA,wEAAY;QAAA,4DAAY;QACnC,wEAMA;QAAA,8EACE;QAD8C,wKAAsB;QACpE,gFAAqE;QAAA,wDAA0C;QAAA,4DAAW;QAC5H,4DAAS;QAEb,kIAMC;QAGH,kIAMG;QAGC,4DAAiB;QAGnB,sFACE;QAAA,6EAAW;QAAA,4EAAgB;QAAA,4DAAY;QACvC,wEAMA;QAAA,8EACE;QAD8C,0KAAwB;QACtE,gFAAqE;QAAA,wDAA2C;QAAA,4DAAW;QAC7H,4DAAS;QACb,kIAGkB;QAGhB,4DAAiB;QAEnB,4DAAM;QACN,8EAIU;QAAA,oEAAO;QAAA,8DACL;QADK,2EACL;QAAA,uEACA;QAAA,4DAAM;QACN,4DAAS;QAEnB,4DAAO;QACb,4DAAM;QAEJ,4DAAM;QACR,4DAAU;;QAvEkB,0DAAyB;QAAzB,mGAAyB;QAE7C,0DAA6B;QAA7B,0FAA6B;QAQ3B,0DAAmC;QAAnC,gGAAmC;QAGoC,0DAAmC;QAAnC,wFAAmC;QACnC,0DAA0C;QAA1C,2GAA0C;QAIrH,0DAIC;QAJD,gKAIC;QAKD,0DAIC;QAJD,iKAIC;QAYC,0DAAoC;QAApC,iGAAoC;QAGqC,0DAAmC;QAAnC,wFAAmC;QACrC,0DAA2C;QAA3C,4GAA2C;QAGpG,0DAAwD;QAAxD,0HAAwD;;6FD7MjE,uBAAuB;cALnC,uDAAS;eAAC;gBACT,QAAQ,EAAE,qBAAqB;gBAC/B,WAAW,EAAE,kCAAkC;gBAC/C,SAAS,EAAE,CAAC,kCAAkC,CAAC;aAChD;;;;;;;;;;;;;;AEfD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAA0D;AACU;AAMlC;AAIuF;;;;;;;;;;;;;;;ICMrG,iFAAuE;IAAA,uDAAiB;IAAA,4DAAa;;;IAAnD,gFAAoB;IAAC,0DAAiB;IAAjB,iFAAiB;;ADErG,MAAM,iCAAiC;IAmB5C,YACU,YAAyB,EACzB,cAAoC,EACpC,WAAyB,EAC1B,IAA2B,EAC1B,cAA8B,EAC/B,MAAiB,EACjB,SAA0D,EACjC,IAAS;QAPjC,iBAAY,GAAZ,YAAY,CAAa;QACzB,mBAAc,GAAd,cAAc,CAAsB;QACpC,gBAAW,GAAX,WAAW,CAAc;QAC1B,SAAI,GAAJ,IAAI,CAAuB;QAC1B,mBAAc,GAAd,cAAc,CAAgB;QAC/B,WAAM,GAAN,MAAM,CAAW;QACjB,cAAS,GAAT,SAAS,CAAiD;QACjC,SAAI,GAAJ,IAAI,CAAK;QA1B3C,aAAQ,GACN,+EAA+E,CAAC;QAGlF,cAAS,GAAS,IAAI,IAAI,EAAE,CAAC;QAC7B,gBAAW,GAAG;YACZ,EAAE,EAAE,EAAE,CAAC,EAAE,KAAK,EAAE,sBAAsB,EAAE;YACxC,EAAE,EAAE,EAAE,CAAC,EAAE,KAAK,EAAE,cAAc,EAAE;YAChC,EAAE,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,sBAAsB,EAAE;YAChD,EAAE,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,qBAAqB,EAAE;SAKhD,CAAC;IAaC,CAAC;IACJ,QAAQ;QACN,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAC5C,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;QACnC,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC;QACxC,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC;YAC7C,aAAa,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC;YAClC,qBAAqB,EAAE,CAAC,EAAE,EAAE,CAAC,yDAAU,CAAC,QAAQ,CAAC,CAAC;YAClD,8CAA8C;YAC9C,eAAe;YACf,gDAAgD;YAChD,2BAA2B;YAC3B,KAAK;YACL,WAAW,EAAE,CAAC,EAAE,CAAC;SAClB,CAAC,CAAC;IACL,CAAC;IAED,QAAQ;QACN,IAAI,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE;YAChC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,0BAA0B,EAAE,IAAI,CAAC,CAAC;YAC5D,OAAO;SACR;QACD,MAAM,OAAO,GAAG,0BAA0B,CAAC;QAC3C,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,iIAA2B,EAAE;YAC9D,KAAK,EAAE,OAAO;YACd,IAAI,EAAE;gBACJ,OAAO,EAAE,OAAO;aACjB;SACF,CAAC,CAAC;QAEH,SAAS,CAAC,WAAW,EAAE,CAAC,SAAS,CAAC,CAAC,MAAM,EAAE,EAAE;YAC3C,IAAI,MAAM,IAAI,IAAI,EAAE;gBAClB,IAAI,CAAC,cAAc,CAAC,YAAY,EAAE,CAAC;gBACnC,IAAI,CAAC,cAAc;qBAChB,kBAAkB,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC;qBAC1D,SAAS,CACR,CAAC,QAAQ,EAAE,EAAE;oBACX,IAAI,QAAQ,CAAC,OAAO,EAAE;wBACpB,IAAI,CAAC,qBAAqB,CACxB,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,aAAa,CACzC,CAAC;wBACF,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;wBAClC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;wBAC/C,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC;qBACxD;yBAAM;wBACL,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,uBAAuB,EAAE,IAAI,CAAC,CAAC;qBAC1D;gBACH,CAAC,EACD,CAAC,KAAK,EAAE,EAAE;oBACR,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;oBACnB,IAAI,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC,EAAE;wBAClD,IAAI,CAAC,qBAAqB,CACxB,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,aAAa,CACzC,CAAC;wBACF,IAAI,CAAC,IAAI,CAAC,eAAe,CACvB,qCAAqC,EACrC,IAAI,CACL,CAAC;wBACF,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC;qBACxD;yBAAM;wBACL,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;qBACtD;oBAED,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;gBACpC,CAAC,CACF,CAAC;aACL;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IACD,qBAAqB,CAAC,KAAK;QACzB,MAAM,cAAc,GAAG,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACrD,MAAM,cAAc,GAAG,EAAE,CAAC;QAC1B,cAAc,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;YACjC,IAAI,OAAO,CAAC,aAAa,KAAK,KAAK,EAAE;gBACnC,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;aAC9B;QACH,CAAC,CAAC,CAAC;QACH,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;QAC9B,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;QAC5B,IAAI,CAAC,IAAI,CAAC,uBAAuB,CAAC,cAAc,CAAC,CAAC;QAClD,IAAI,IAAI,CAAC,cAAc,IAAI,CAAC,EAAE;YAC5B,IAAI,CAAC,IAAI,CAAC,4BAA4B,CAAC,EAAE,CAAC,CAAC;YAC3C,+BAA+B;YAC/B,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;SACxB;QACD,IAAI,IAAI,CAAC,cAAc,IAAI,CAAC,EAAE;YAC5B,IAAI,CAAC,IAAI,CAAC,2BAA2B,CAAC,EAAE,CAAC,CAAC;YAC1C,4CAA4C;YAC5C,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;SACrC;QACD,IAAI,IAAI,CAAC,cAAc,IAAI,CAAC,EAAE;YAC5B,IAAI,CAAC,IAAI,CAAC,iCAAiC,CAAC,EAAE,CAAC,CAAC;YAChD,+BAA+B;YAC/B,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;SACxB;QACD,IAAI,IAAI,CAAC,cAAc,IAAI,CAAC,EAAE;YAC5B,IAAI,CAAC,IAAI,CAAC,uCAAuC,CAAC,EAAE,CAAC,CAAC;YACtD,+BAA+B;YAC/B,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;SACxB;QACD,IAAI,IAAI,CAAC,cAAc,IAAI,CAAC,EAAE;YAC5B,IAAI,CAAC,IAAI,CAAC,sCAAsC,CAAC,EAAE,CAAC,CAAC;YACrD,+BAA+B;YAC/B,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;SACxB;QACD,IAAI,IAAI,CAAC,cAAc,IAAI,CAAC,EAAE;YAC5B,IAAI,CAAC,IAAI,CAAC,qCAAqC,CAAC,EAAE,CAAC,CAAC;YACpD,+BAA+B;YAC/B,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;SACxB;QACD,IAAI,IAAI,CAAC,cAAc,IAAI,CAAC,EAAE;YAC5B,IAAI,CAAC,IAAI,CAAC,wCAAwC,CAAC,EAAE,CAAC,CAAC;YACvD,+BAA+B;YAC/B,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;SACxB;QACD,IAAI,IAAI,CAAC,cAAc,IAAI,CAAC,EAAE;YAC5B,IAAI,CAAC,IAAI,CAAC,oCAAoC,CAAC,EAAE,CAAC,CAAC;YACnD,+BAA+B;YAC/B,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;SACxB;QAED,6BAA6B;QAC7B,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAChC,iCAAiC;QACjC,mCAAmC;IACrC,CAAC;IACD,QAAQ,CAAC,IAAY,EAAE,KAAoC;QACzD,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,GAAG,CAAC,CAAC;QAChD,IAAI,CAAC,MAAM;YACT,KAAK,CAAC,KAAK,CAAC,WAAW,EAAE,GAAG,GAAG,GAAG,IAAI,GAAG,GAAG,GAAG,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;QACvE,4BAA4B;IAC9B,CAAC;IAED;;MAEE;IACF,IAAI,YAAY;QACd,OAAO,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC;IACvC,CAAC;;kHAtKU,iCAAiC,qjCA2BlC,wEAAe;iHA3Bd,iCAAiC;QCnB9C,yEACE;QAAA,yEACE;QAAA,wEAAqB;QAAA,+EAAoB;QAAA,4DAAK;QAC9C,4EAAoC;QAAA,0EAA6B;QAAA,gEAAK;QAAA,4DAAO;QAAA,4DAAS;QACxF,4DAAM;QAEN,0EACE;QAAA,yEACE;QAAA,yEACE;QAGA,0EACE;QAAA,0EACE;QAAA,iFAAsC;QAAA,wGAA4C;QAAA,4DAAY;QAC9F,sFACI;QAAA,kFACI;QAAA,8IAAuE;QACvE,4DAAa;QACrB,4DAAiB;QAErB,4DAAM;QAuCN,4DAAM;QAEN,2EACE;QAAA,0EACE;QAAA,iFAAqC;QAAA,mEAAO;QAAA,4DAAY;QACxD,sFACE;QAAA,2EAAsG;QACxG,4DAAiB;QAEnB,4DAAM;QAER,4DAAM;QACR,4DAAM;QAMR,4DAAM;QAQJ,0FACE;QAAA,8EAAqD;QAAA,kEAAM;QAAA,4DAAS;QACpE,8EAMA;QAFN,0JAAS,cAAU,IAAC;QAEd,oEACA;QAAA,4DAAS;QACX,4DAAqB;QAEzB,4DAAO;QAET,4DAAM;;QA9FE,0DAA6B;QAA7B,0FAA6B;QAWL,0DAAqC;QAArC,oFAAqC;;6FDExD,iCAAiC;cAL7C,uDAAS;eAAC;gBACT,QAAQ,EAAE,gCAAgC;gBAC1C,WAAW,EAAE,6CAA6C;gBAC1D,SAAS,EAAE,CAAC,6CAA6C,CAAC;aAC3D;;sBA4BI,oDAAM;uBAAC,wEAAe;;;;;;;;;;;;;;AE9C3B;AAAA;AAAA;AAAA;AAAA;AAA2C;;;;AAWpC,MAAM,SAAS;IACpB,YACU,WAAkC,EAClC,MAAc;QADd,gBAAW,GAAX,WAAW,CAAuB;QAClC,WAAM,GAAN,MAAM,CAAQ;QAExB,4BAAuB,GAAG,KAAK,CAAC;QAChC,cAAS,GAAG,EAAE,CAAC;QACf,cAAS,GAAG,EAAE,CAAC;IAHZ,CAAC;IAIJ,WAAW,CACT,KAA6B,EAC7B,KAA0B;QAM1B,OAAO,IAAI,CAAC,WAAW,CAAC,eAAe,EAAE,CAAC,IAAI,CAAC,CAAC,IAAa,EAAE,EAAE;YAC/D,MAAM,eAAe,GAAG,KAAK,CAAC,GAAG,CAAC;YAClC,IAAI,IAAI,EAAE;gBACR,IAAI,eAAe,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE;oBACrC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;iBAC7B;qBAAM;oBACL,OAAO,IAAI,CAAC;iBACb;aACF;iBAAM;gBACL,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;gBAC7B,IAAI,eAAe,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE;oBACpC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;iBACpC;qBAAM,IAAI,eAAe,CAAC,QAAQ,CAAC,gBAAgB,CAAC,EAAE;oBACrD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC;iBAC3C;qBAAM,IAAI,eAAe,CAAC,QAAQ,CAAC,oBAAoB,CAAC,EAAE;oBACzD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC;iBAC/C;qBAAM,IAAI,eAAe,CAAC,QAAQ,CAAC,gBAAgB,CAAC,EAAE;oBACrD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC;iBAC3C;qBAAM,IAAI,eAAe,CAAC,QAAQ,CAAC,iBAAiB,CAAC,EAAE;oBACtD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC;iBAC5C;qBAAM,IAAI,eAAe,CAAC,QAAQ,CAAC,mBAAmB,CAAC,EAAE;oBACxD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC;iBAC9C;qBAAM,IAAI,eAAe,CAAC,QAAQ,CAAC,iBAAiB,CAAC,EAAE;oBACtD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC;iBAC5C;qBAAM,IAAI,eAAe,CAAC,QAAQ,CAAC,kBAAkB,CAAC,EAAE;oBACvD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC;iBAC7C;qBAAM,IAAI,eAAe,CAAC,QAAQ,CAAC,yBAAyB,CAAC,EAAE;oBAC9D,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;iBACpC;qBAAM,IAAI,eAAe,CAAC,QAAQ,CAAC,gBAAgB,CAAC,EAAE;oBACrD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;iBACpC;qBAAM,IAAI,eAAe,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE;oBAC5C,OAAO,IAAI,CAAC;iBACb;qBAAM;oBACL,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;iBAC7B;aACF;QACH,CAAC,CAAC,CAAC;IACL,CAAC;;kEArDU,SAAS;4FAAT,SAAS,WAAT,SAAS;6FAAT,SAAS;cADrB,wDAAU;;;;;;;;;;;;;;ACVX;AAAA;AAAA;AAAA;AAA2C;;;AAUpC,MAAM,kBAAkB;IAC7B,YAAoB,WAAkC;QAAlC,gBAAW,GAAX,WAAW,CAAuB;IAAG,CAAC;IAC1D,WAAW,CACT,KAA6B,EAC7B,KAA0B;QAM1B,OAAO,IAAI,CAAC,WAAW,CAAC,eAAe,EAAE,CAAC,IAAI,CAAC,CAAC,IAAa,EAAE,EAAE;YAC/D,IAAI,IAAI,EAAE;gBACR,MAAM,eAAe,GAAG,KAAK,CAAC,GAAG,CAAC;gBAClC,IAAI,UAAU,GAAG,IAAI,CAAC;gBACtB,IAAI,eAAe,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE;oBACpC,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,uBAAuB,EAAE,CAAC;oBACvD,IAAI,CAAC,GAAG,EAAE;wBACR,UAAU,GAAG,KAAK,CAAC;qBACpB;iBACF;qBAAM,IAAI,eAAe,CAAC,QAAQ,CAAC,gBAAgB,CAAC,EAAE;oBACrD,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,oCAAoC,EAAE,CAAC;oBAEpE,IAAI,CAAC,GAAG,EAAE;wBACR,UAAU,GAAG,KAAK,CAAC;qBACpB;iBACF;qBAAM,IAAI,eAAe,CAAC,QAAQ,CAAC,oBAAoB,CAAC,EAAE;oBACzD,MAAM,GAAG,GACP,IAAI,CAAC,WAAW,CAAC,wCAAwC,EAAE,CAAC;oBAC9D,IAAI,CAAC,GAAG,EAAE;wBACR,UAAU,GAAG,KAAK,CAAC;qBACpB;iBACF;qBAAM,IAAI,eAAe,CAAC,QAAQ,CAAC,gBAAgB,CAAC,EAAE;oBACrD,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,4BAA4B,EAAE,CAAC;oBAC5D,IAAI,CAAC,GAAG,EAAE;wBACR,UAAU,GAAG,KAAK,CAAC;qBACpB;iBACF;qBAAM,IAAI,eAAe,CAAC,QAAQ,CAAC,iBAAiB,CAAC,EAAE;oBACtD,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,iCAAiC,EAAE,CAAC;oBACjE,IAAI,CAAC,GAAG,EAAE;wBACR,UAAU,GAAG,KAAK,CAAC;qBACpB;iBACF;qBAAM,IAAI,eAAe,CAAC,QAAQ,CAAC,mBAAmB,CAAC,EAAE;oBACxD,MAAM,GAAG,GACP,IAAI,CAAC,WAAW,CAAC,uCAAuC,EAAE,CAAC;oBAC7D,IAAI,CAAC,GAAG,EAAE;wBACR,UAAU,GAAG,KAAK,CAAC;qBACpB;iBACF;qBAAM,IAAI,eAAe,CAAC,QAAQ,CAAC,iBAAiB,CAAC,EAAE;oBACtD,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,qCAAqC,EAAE,CAAC;oBACrE,IAAI,CAAC,GAAG,EAAE;wBACR,UAAU,GAAG,KAAK,CAAC;qBACpB;iBACF;qBAAM,IAAI,eAAe,CAAC,QAAQ,CAAC,kBAAkB,CAAC,EAAE;oBACvD,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,sCAAsC,EAAE,CAAC;oBACtE,IAAI,CAAC,GAAG,EAAE;wBACR,UAAU,GAAG,KAAK,CAAC;qBACpB;iBACF;qBAAM,IAAI,eAAe,CAAC,QAAQ,CAAC,yBAAyB,CAAC,EAAE;oBAC9D,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,uBAAuB,EAAE,CAAC;oBACvD,IAAI,CAAC,GAAG,EAAE;wBACR,UAAU,GAAG,KAAK,CAAC;qBACpB;iBACF;qBAAM,IAAI,eAAe,CAAC,QAAQ,CAAC,gBAAgB,CAAC,EAAE;oBACrD,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,uBAAuB,EAAE,CAAC;oBACvD,IAAI,CAAC,GAAG,EAAE;wBACR,UAAU,GAAG,KAAK,CAAC;qBACpB;iBACF;qBAAM;oBACL,UAAU,GAAG,KAAK,CAAC;iBACpB;gBACD,IAAI,UAAU,IAAI,KAAK,EAAE;oBACvB,IAAI,CAAC,WAAW,CAAC,eAAe,CAC9B,0DAA0D,CAC3D,CAAC;oBACF,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;iBAC/B;qBAAM;oBACL,OAAO,IAAI,CAAC;iBACb;aACF;QACH,CAAC,CAAC,CAAC;IACL,CAAC;;oFAhFU,kBAAkB;qGAAlB,kBAAkB,WAAlB,kBAAkB;6FAAlB,kBAAkB;cAD9B,wDAAU;;;;;;;;;;;;;;ACTX;AAAA;AAAA,gFAAgF;AAChF,0EAA0E;AAC1E,gEAAgE;AAEzD,MAAM,WAAW,GAAG;IACzB,cAAc,EAAE,sCAAsC;IACtD,UAAU,EAAE,KAAK;IACjB,GAAG,EAAE,OAAO;IACZ,cAAc;IACd,IAAI,EAAE,iCAAiC;CAKxC,CAAC;AAEF;;;;;;GAMG;AACH,mEAAmE;;;;;;;;;;;;;ACvBnE;AAAA;AAAA;AAAA;AAAA;AAA+C;AAIU;;;AAEzD,IAAI,qEAAW,CAAC,UAAU,EAAE;IAC1B,oEAAc,EAAE,CAAC;CAClB;AAED,2EAAwB,gBAAgB,CAAC,0DAAU;KAChD,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC","file":"main.js","sourcesContent":["function webpackEmptyAsyncContext(req) {\n\t// Here Promise.resolve().then() is used instead of new Promise() to prevent\n\t// uncaught exception popping up in devtools\n\treturn Promise.resolve().then(function() {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t});\n}\nwebpackEmptyAsyncContext.keys = function() { return []; };\nwebpackEmptyAsyncContext.resolve = webpackEmptyAsyncContext;\nmodule.exports = webpackEmptyAsyncContext;\nwebpackEmptyAsyncContext.id = \"./$$_lazy_route_resource lazy recursive\";","import { NgModule } from '@angular/core';\nimport { Routes, RouterModule } from '@angular/router';\nimport { CompletedOpportunitiesComponent } from './modules/completed-opportunities/completed-opportunities.component';\nimport { StartApplicationComponent } from './modules/start-application/start-application.component';\nimport { UserFormComponent } from './modules/shared-component/user-form/user-form.component';\nimport { UserNotificationComponent } from './modules/user-notification/user-notification.component';\nimport { AuthGuard } from './route-guard/auth-guard.service';\n\nimport { IsOpportunityGuard } from './route-guard/is-opportunity.guard.service';\nimport { UpdatePasswordComponent } from './modules/users/update-password/update-password.component';\nimport { MessagePortalComponent } from './modules/message-portal/message-portal.component';\nimport { SelectedMessageComponent } from './modules/message-portal/selected-message/selected-message.component';\nimport { LoginPageComponent } from './modules/users/login-page/login-page.component';\nimport { LifeInsuranceApplicationModule } from './modules/life-insurance-application/life-insurance-application.module';\nconst routes: Routes = [\n // route without authGuard\n // start page // no auth guard\n {\n path: '',\n\n pathMatch: 'full',\n component: StartApplicationComponent,\n data: { title: 'Start Application', breadcrumb: 'Start Application' },\n },\n\n // all application register page // no auth guard\n {\n path: 'debtapp',\n\n component: UserFormComponent,\n },\n {\n canActivate: [AuthGuard],\n path: 'login',\n component: LoginPageComponent,\n },\n {\n path: 'life-insurance',\n\n component: UserFormComponent,\n },\n {\n path: 'financial-planning',\n\n component: UserFormComponent,\n },\n {\n path: 'superannuation',\n\n component: UserFormComponent,\n },\n {\n path: 'managed-account',\n\n component: UserFormComponent,\n },\n {\n path: 'general-insurance',\n\n component: UserFormComponent,\n },\n {\n path: 'estate-planning',\n\n component: UserFormComponent,\n },\n {\n path: 'health-insurance',\n\n component: UserFormComponent,\n },\n\n {\n path: 'user/update-password/:contactId',\n component: UpdatePasswordComponent,\n },\n {\n path: 'user/create-password/:contactId',\n component: UpdatePasswordComponent,\n },\n\n {\n path: 'accountant',\n canActivate: [AuthGuard],\n loadChildren: () =>\n import('./modules/accountant-portal/accountant-portal.module').then(\n (m) => m.AccountantPortalModule\n ),\n },\n {\n path: 'user',\n canActivate: [AuthGuard, IsOpportunityGuard],\n loadChildren: () =>\n import('./modules/users/users.module').then((m) => m.UsersModule),\n },\n\n {\n path: 'superannuation',\n canActivate: [AuthGuard, IsOpportunityGuard],\n loadChildren: () =>\n import('./modules/superannuation/superannuation.module').then(\n (m) => m.SuperannuationModule\n ),\n },\n\n {\n path: 'managed-account',\n canActivate: [AuthGuard, IsOpportunityGuard],\n loadChildren: () =>\n import('./modules/managed-account/managed-account.module').then(\n (m) => m.ManagedAccountModule\n ),\n },\n\n {\n path: 'general-insurance',\n canActivate: [AuthGuard, IsOpportunityGuard],\n loadChildren: () =>\n import('./modules/general-insurance/general-insurance.module').then(\n (m) => m.GeneralInsuranceModule\n ),\n },\n\n {\n path: 'estate-planning',\n canActivate: [AuthGuard, IsOpportunityGuard],\n loadChildren: () =>\n import('./modules/estate-planning/estate-planning.module').then(\n (m) => m.EstatePlanningModule\n ),\n },\n\n {\n path: 'health-insurance',\n canActivate: [AuthGuard, IsOpportunityGuard],\n loadChildren: () =>\n import('./modules/health-insurance/health-insurance.module').then(\n (m) => m.HealthInsuranceModule\n ),\n },\n\n {\n path: 'life-insurance',\n canActivate: [AuthGuard, IsOpportunityGuard],\n loadChildren: () =>\n import(\n './modules/life-insurance-application/life-insurance-application.module'\n ).then((m) => m.LifeInsuranceApplicationModule),\n },\n\n {\n path: 'financial-planning',\n canActivate: [AuthGuard, IsOpportunityGuard],\n loadChildren: () =>\n import(\n './modules/financial-planning-application/financial-planning-application.module'\n ).then((m) => m.FinancialPlanningApplicationModule),\n },\n\n {\n path: 'uikit',\n loadChildren: () =>\n import('./modules/uikit/uikit.module').then((m) => m.UiKitModule),\n },\n {\n path: 'financial-goal',\n canActivate: [AuthGuard],\n loadChildren: () =>\n import('./modules/financial-goal/financial-goal.module').then(\n (m) => m.FinancialGoalModule\n ),\n },\n {\n path: 'refinance-consolidation',\n canActivate: [AuthGuard, IsOpportunityGuard],\n loadChildren: () =>\n import(\n './modules/refinance-consolidation/refinance-consolidation.module'\n ).then((m) => m.RefinanceConsolidationModule),\n },\n {\n path: 'completed',\n canActivate: [AuthGuard],\n component: CompletedOpportunitiesComponent,\n data: {\n title: 'Completed Application',\n breadcrumb: 'Completed Application',\n },\n },\n {\n path: 'notification',\n canActivate: [AuthGuard],\n component: UserNotificationComponent,\n data: { title: 'Notification', breadcrumb: 'User Notification' },\n },\n {\n path: 'message',\n canActivate: [AuthGuard],\n component: MessagePortalComponent,\n data: { title: 'Messages', breadcrumb: 'User message' },\n },\n {\n path: 'selected-message',\n canActivate: [AuthGuard],\n component: SelectedMessageComponent,\n data: { title: 'Selected Messages', breadcrumb: 'User message' },\n },\n {\n path: 'side-nav',\n canActivate: [AuthGuard],\n loadChildren: () =>\n import('./modules/side-nav-components/side-nav-components.module').then(\n (m) => m.SideNavComponentsModule\n ),\n },\n {\n path: 'family',\n canActivate: [AuthGuard],\n loadChildren: () =>\n import('./modules/side-nav-components/family/family.module').then(\n (m) => m.FamilyModule\n ),\n },\n {\n path: 'invest',\n canActivate: [AuthGuard],\n loadChildren: () =>\n import(\n './modules/side-nav-components/additional-services/investment-and-superannuation/investment-and-superannuation.module'\n ).then((m) => m.InvestmentAndSuperannuationModule),\n },\n\n {\n path: 'debt',\n canActivate: [AuthGuard],\n loadChildren: () =>\n import(\n './modules/side-nav-components/additional-services/debt/debt.module'\n ).then((m) => m.DebtModule),\n },\n {\n path: 'financial-plan',\n canActivate: [AuthGuard],\n loadChildren: () =>\n import(\n './modules/side-nav-components/additional-services/financial-planning/financial-planning.module'\n ).then((m) => m.FinancialPlanningModule),\n },\n\n {\n path: '**',\n redirectTo: '',\n },\n];\n\n@NgModule({\n imports: [RouterModule.forRoot(routes)],\n exports: [RouterModule],\n})\nexport class AppRoutingModule {}\n","import { AuthenticationService } from './core/services/authentication.service';\nimport { environment } from 'src/environments/environment';\nimport {\n Component,\n HostListener,\n OnInit,\n Inject,\n OnDestroy,\n} from '@angular/core';\nimport { Subscription } from 'rxjs';\ndeclare const window: Window & { onUsersnapCXLoad?: (api: any) => void };\n\n@Component({\n selector: 'app-root',\n templateUrl: './app.component.html',\n styleUrls: ['./app.component.scss'],\n})\nexport class AppComponent implements OnInit, OnDestroy {\n title = 'frontend';\n private script: HTMLScriptElement | null = null;\n public usersnapApi: any | null = null;\n emailid = '';\n userNotificationSubscription: Subscription;\n\n constructor(public auth: AuthenticationService) {\n this.initializeUserSnap();\n }\n\n ngOnInit(): void {\n this.userNotificationSubscription = this.auth.headerDetail.subscribe(\n (value) => {\n this.usersnapApi?.destroy();\n this.script?.remove();\n this.initializeUserSnap();\n }\n );\n }\n initializeUserSnap() {\n return new Promise((resolve) => {\n window.onUsersnapCXLoad = (api: any) => {\n api.init({\n user: {\n email: this.auth.getUserEmailId(),\n },\n });\n this.usersnapApi = api;\n resolve(api);\n };\n this.script = document.createElement('script');\n this.script.defer = false;\n this.script.type = 'text/javascript';\n this.script.src = `https://widget.usersnap.com/global/load/${environment.usersnapGlobal}?onload=onUsersnapCXLoad`;\n document.body.appendChild(this.script);\n });\n }\n\n // private handleOpenWidget = (event: any) => {\n // event.api.setValue('email', this.auth.getUserEmailId());\n // console.log('this.auth.getUserEmailId()');\n // console.log(this.auth.getUserEmailId());\n // };\n // constructor() {\n // this.loadScript();\n // }\n // public loadScript() {\n // console.log('preparing to load...');\n\n // const node = document.createElement('script');\n // node.src =\n // 'https://widget.usersnap.com/global/load/b5fb2517-7823-4e00-9202-4389438606e7?onload=onUsersnapCXLoad';\n // node.type = 'text/javascript';\n // node.async = true;\n // node.charset = 'utf-8';\n // document.getElementsByTagName('head')[0].appendChild(node);\n\n // api.init({\n // mountNode: document.getElementById('widgetContainer')\n // locale: 'de',\n // });\n // }\n\n ngOnDestroy() {\n if (this.usersnapApi) {\n this.usersnapApi?.destroy();\n }\n this.script?.remove();\n this.userNotificationSubscription?.unsubscribe();\n }\n}\n","\n \n \n\n\n\n","import { BrowserModule } from '@angular/platform-browser';\nimport { NgModule } from '@angular/core';\nimport { ErrorHandler, APP_INITIALIZER } from '@angular/core';\n\nimport { AppRoutingModule } from './app-routing.module';\nimport { AppComponent } from './app.component';\nimport { ThemeModule } from './core/theme.module';\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\nimport { MaterialComponentsModule } from './material-components.module';\nimport { CommonModule, CurrencyPipe } from '@angular/common';\nimport { CompletedOpportunitiesComponent } from './modules/completed-opportunities/completed-opportunities.component';\nimport { StartApplicationComponent } from './modules/start-application/start-application.component';\nimport { DateAdapter, MAT_DATE_LOCALE } from '@angular/material/core';\nimport { CustomDateAdapter } from './modules/users/custom-date-adapter';\nimport { UserNotificationComponent } from './modules/user-notification/user-notification.component';\nimport { UserNotificationPopupComponent } from './modules/user-notification/user-notification-popup/user-notification-popup.component';\nimport { ReactiveFormsModule } from '@angular/forms';\nimport { MatSortModule } from '@angular/material/sort';\nimport { Router } from '@angular/router';\nimport * as Sentry from '@sentry/angular';\nimport { Integrations } from '@sentry/tracing';\n// import { NgImageSliderModule } from 'ng-image-slider';\nimport { NgxSkeletonLoaderModule } from 'ngx-skeleton-loader';\nimport { AuthGuard } from './route-guard/auth-guard.service';\nimport { MatTableModule } from '@angular/material/table';\nimport { HeaderNotificationPopupComponent } from './modules/user-notification/header-notification-popup/header-notification-popup.component';\nimport { MessagePortalComponent } from './modules/message-portal/message-portal.component';\nimport { NewMessagePopupComponent } from './modules/message-portal/new-message-popup/new-message-popup.component';\nimport { IsOpportunityGuard } from './route-guard/is-opportunity.guard.service';\nimport { SelectedMessageComponent } from './modules/message-portal/selected-message/selected-message.component';\nimport { ConfirmationPromptComponent } from './modules/repetaed-component/confirmation-prompt/confirmation-prompt.component';\n\n// import { IsAccountantGuard } from './route-guard/is-accountant-guard.service';\n// import { IsNotAccountantGuard } from './route-guard/is-not-accountant-guard.service';\n// import { MatIconRegistry } from \"@angular/material/icon\";\n// import { DomSanitizer } from \"@angular/platform-browser\";\n\nSentry.init({\n dsn: 'https://af44223d136e4d679cd25884b0c5c341@o1065768.ingest.sentry.io/6059529',\n integrations: [\n new Integrations.BrowserTracing({\n tracingOrigins: ['localhost', 'https://yourserver.io/api'],\n routingInstrumentation: Sentry.routingInstrumentation,\n }),\n ],\n\n // Set tracesSampleRate to 1.0 to capture 100%\n // of transactions for performance monitoring.\n // We recommend adjusting this value in production\n tracesSampleRate: 1.0,\n});\n\n@NgModule({\n declarations: [\n AppComponent,\n CompletedOpportunitiesComponent,\n StartApplicationComponent,\n UserNotificationComponent,\n UserNotificationPopupComponent,\n HeaderNotificationPopupComponent,\n MessagePortalComponent,\n NewMessagePopupComponent,\n SelectedMessageComponent,\n ConfirmationPromptComponent,\n ],\n imports: [\n CommonModule,\n BrowserModule,\n AppRoutingModule,\n ThemeModule,\n BrowserAnimationsModule,\n MaterialComponentsModule,\n ReactiveFormsModule,\n MatSortModule,\n // NgImageSliderModule,\n NgxSkeletonLoaderModule,\n MatTableModule,\n // MatIconRegistry\n ],\n exports: [MaterialComponentsModule],\n providers: [\n {\n provide: ErrorHandler,\n useValue: Sentry.createErrorHandler({\n showDialog: true,\n }),\n },\n {\n provide: Sentry.TraceService,\n deps: [Router],\n },\n {\n provide: APP_INITIALIZER,\n useFactory: () => () => {},\n deps: [Sentry.TraceService],\n multi: true,\n },\n\n { provide: MAT_DATE_LOCALE, useValue: 'en-GB' },\n { provide: DateAdapter, useClass: CustomDateAdapter },\n CurrencyPipe,\n AuthGuard,\n IsOpportunityGuard,\n // IsAccountantGuard,\n // IsNotAccountantGuard,\n ],\n bootstrap: [AppComponent],\n})\nexport class AppModule {\n // constructor(\n // private matIconRegistry: MatIconRegistry,\n // private domSanitizer: DomSanitizer,\n // private customIconService: CustomIconService\n // ) {\n // this.matIconRegistry.addSvgIcon(\n // \"logo\",\n // this.domSanitizer.bypassSecurityTrustResourceUrl(\"../assets/images/logo.svg\")\n // );\n // }\n}\n","import { Component, OnDestroy, OnInit } from '@angular/core';\nimport { MatDialog, MatDialogRef } from '@angular/material/dialog';\nimport { AuthenticationService } from '../../services/authentication.service';\n\n@Component({\n selector: 'app-auto-logout',\n templateUrl: './auto-logout.component.html',\n styleUrls: ['./auto-logout.component.scss']\n})\nexport class AutoLogoutComponent implements OnInit, OnDestroy {\n\n timeLeft = 60;\n progressBarValue = 100;\n interval;\n dialogClosed = false;\n\n startTimer() {\n this.interval = setInterval(() => {\n if (this.timeLeft > 0) {\n this.timeLeft--;\n this.progressBarValue = (this.timeLeft / 60) * 100;\n }\n if (this.timeLeft === 0) {\n if (!this.dialogClosed) {\n this.logout();\n }\n }\n }, 1000);\n }\n\n constructor( private dialogRef: MatDialogRef) { }\n\n ngOnInit(): void {\n\n this.startTimer();\n }\n\n ngOnDestroy() {\n this.dialogClosed = true;\n if (this.interval) {\n clearInterval(this.interval);\n }\n }\n\n close() {\n this.dialogClosed = true;\n clearInterval(this.interval);\n this.dialogRef.close({logout: false});\n }\n\n logout() {\n this.dialogClosed = true;\n clearInterval(this.interval);\n this.dialogRef.close({logout: true});\n }\n}\n","\n
\n\n \n
\n
\n
\n
\n \n
\n

{{timeLeft}}

\n \n
\n
\n Seconds left\n\n
\n
\n

Session Expiring.

\n
\n
\n\n
\n Session is about to expire due to inactivity. Please click continue to stay in the session.
\n
\n\n
\n
\n\n
\n
\n \n \n Continue\n \n\n \n
\n \n Logout Now\n \n
\n\n\n
\n","import { Component, OnInit } from '@angular/core';\nimport { UsersService } from 'src/app/modules/users/services/users.service';\n\n@Component({\n selector: 'app-bottom-nav-bar',\n templateUrl: './bottom-nav-bar.component.html',\n styleUrls: ['./bottom-nav-bar.component.scss'],\n})\nexport class BottomNavBarComponent implements OnInit {\n constructor(public userService: UsersService) {}\n\n ngOnInit(): void {}\n toggleSideBar(value) {\n this.userService.toggleSideBar.next(value);\n }\n}\n","","import { Component, OnInit } from '@angular/core';\nimport { AuthenticationService } from 'src/app/core/services/authentication.service';\n\n@Component({\n selector: 'app-footer',\n templateUrl: './footer.component.html',\n styleUrls: ['./footer.component.scss'],\n})\nexport class FooterComponent implements OnInit {\n panelOpenState = false;\n constructor(public auth: AuthenticationService) {}\n\n ngOnInit(): void {}\n}\n","
\n \n
\n
\n
\n
\n \"\"\n\n
\n
\n 03 9209 9000\n
join@cashelfo.com
\n
\n
\n\n \n\n \n
\n

\n @2017, Cashel Family Office (Australia) Pty Ltd, All Right Reserved.\n

\n \n
\n
\n\n
\n \n
\n
\n

\n Issued and maintained by Cashel Support Services Pty Ltd (ABN 31 619 697\n 808, Authorised Representative Number 001257601 of Cashel Financial\n Services Pty Ltd, Australian Financial Services License and Australian\n Credit License No 306803)('Cashel'). Use of this website is subject to\n Cashel Financial Service Pty Ltd's Terms and Conditions and Privacy\n Policy.\n

\n
\n
\n \n
\n","import {\n Component,\n HostListener,\n OnInit,\n Inject,\n OnDestroy,\n} from '@angular/core';\nimport { DOCUMENT } from '@angular/common';\nimport { AuthenticationService } from 'src/app/core/services/authentication.service';\nimport { DomSanitizer } from '@angular/platform-browser';\nimport { MatDialog } from '@angular/material/dialog';\nimport { LoginComponent } from 'src/app/modules/users/login/login.component';\nimport { Subscription } from 'rxjs';\nimport { LoadingService } from 'src/app/core/services/loader.service';\nimport { UsersService } from 'src/app/modules/users/services/users.service';\nimport { TooltipPosition } from '@angular/material/tooltip';\nimport { ActivatedRoute } from '@angular/router';\nimport { ForgotPasswordComponent } from 'src/app/modules/users/forgot-password/forgot-password.component';\nimport { FeedbackComponent } from 'src/app/modules/side-nav-components/help/feedback/feedback.component';\nimport { FeedbackPopupComponent } from 'src/app/modules/users/feedback-popup/feedback-popup.component';\nimport { HeaderNotificationPopupComponent } from 'src/app/modules/user-notification/header-notification-popup/header-notification-popup.component';\nimport { LoginOtpComponent } from 'src/app/modules/users/login-otp/login-otp.component';\nimport { WithdrawOpportunityPopupComponent } from 'src/app/modules/users/withdraw-opportunity-popup/withdraw-opportunity-popup.component';\nimport { ResumeOrStartPopupComponent } from '../resume-or-start-popup/resume-or-start-popup.component';\n\n@Component({\n selector: 'app-header',\n templateUrl: './header.component.html',\n styleUrls: ['./header.component.scss'],\n})\nexport class HeaderComponent implements OnInit, OnDestroy {\n constructor(\n @Inject(DOCUMENT) private document: Document,\n public auth: AuthenticationService,\n public dialog: MatDialog,\n private sanitizer: DomSanitizer,\n private loadingService: LoadingService,\n private userService: UsersService,\n private route: ActivatedRoute\n ) {}\n headerImageSubscription: Subscription;\n userNotificationSubscription: Subscription;\n userDetailSubscription: Subscription;\n signInVal = 'Logout';\n fetchingOpportunityOnLogin: Subscription;\n positionOptions: TooltipPosition = 'right';\n image: any = '';\n primaryUsericon: string;\n imageBlob;\n allNotification = [];\n currentUrl: string;\n userData;\n firstname = 'Adam';\n email = 'adam@gmail.com';\n tryAgainOppFlag = 0;\n tryAgainNotificationFlag = 0;\n menuActive = false;\n sideBarActive = true;\n\n @HostListener('window:scroll', [])\n onWindowScroll() {\n if (\n document.body.scrollTop > 20 ||\n document.documentElement.scrollTop > 20\n ) {\n document.getElementById('appHeader').classList.add('fixedHeader');\n } else {\n document.getElementById('appHeader').classList.remove('fixedHeader');\n }\n }\n ngOnInit() {\n this.updateImage();\n this.updateUserDetail();\n this.allSubscription();\n this.getNotification();\n if (this.auth.isLoggedIn) {\n this.auth.autoLogout();\n }\n }\n feedbackPopup() {\n const dialogRef = this.dialog.open(FeedbackPopupComponent, {\n width: '720px',\n position: { right: '0', bottom: '0' },\n data: { type: 'feedback' },\n });\n dialogRef.afterClosed().subscribe((result) => {\n if (result) {\n this.auth.showSnackBarMsg('Thanks for the feedback!');\n }\n });\n }\n openHeaderNotificationPopup() {\n const dialogRef = this.dialog.open(HeaderNotificationPopupComponent, {\n width: '720px',\n position: { right: '0', bottom: '0' },\n data: {\n allNotification: this.allNotification,\n },\n });\n dialogRef.afterClosed().subscribe((result) => {\n if (result) {\n // this.auth.showSnackBarMsg('Message sent to team, successfully!')\n }\n });\n }\n onMeassageYourTeam() {\n const dialogRef = this.dialog.open(FeedbackPopupComponent, {\n maxWidth: '600px',\n width: '100%',\n\n position: { right: '0', bottom: '0' },\n data: { type: 'messagetoTeam' },\n });\n dialogRef.afterClosed().subscribe((result) => {\n if (result) {\n this.auth.showSnackBarMsg('Message sent to team, successfully!');\n }\n });\n }\n updateUserDetail() {\n if (this.auth.isLoggedIn) {\n this.userData = this.auth.getDecodedUserAccessToken();\n\n this.firstname = this.userData.contactDetails[0].firstname;\n this.email = this.userData.contactDetails[0].emailaddress1;\n this.primaryUsericon =\n this.userData.contactDetails[0].firstname.trim().charAt(0) +\n this.userData.contactDetails[0].lastname.trim().charAt(0);\n }\n }\n allSubscription() {\n this.headerImageSubscription = this.auth.headerImage.subscribe((value) => {\n if (value) {\n this.updateImage();\n }\n });\n this.userNotificationSubscription = this.auth.headerDetail.subscribe(\n (value) => {\n if (value) {\n this.getNotification();\n } else {\n this.allNotification = [];\n }\n }\n );\n\n this.userDetailSubscription = this.auth.userDetail.subscribe((value) => {\n if (value) {\n this.updateUserDetail();\n }\n });\n\n this.fetchingOpportunityOnLogin = this.auth.fetchingData.subscribe(\n (value) => {\n this.fetchCorrespondingData(value);\n }\n );\n }\n\n updateImage() {\n this.imageBlob = this.auth.getLoginImage();\n if (this.imageBlob) {\n const objectURL = 'data:image/jpeg;base64,' + this.imageBlob;\n this.image = this.sanitizer.bypassSecurityTrustUrl(objectURL);\n } else {\n this.image = '';\n }\n }\n fetchCorrespondingData(route: string) {\n this.currentUrl = route;\n this.getAllOpportunity();\n this.getContries();\n this.getInsuranceProvider();\n this.getAllInstitute();\n this.getOccupation();\n this.getAllRelatedMember();\n }\n ngOnDestroy() {\n this.headerImageSubscription.unsubscribe();\n this.userNotificationSubscription.unsubscribe();\n this.userDetailSubscription.unsubscribe();\n this.fetchingOpportunityOnLogin.unsubscribe();\n }\n logout() {\n this.auth.logout();\n this.image = '';\n }\n handleClick() {\n this.menuActive = !this.menuActive;\n }\n\n handleSideBarClick() {\n this.sideBarActive = !this.sideBarActive;\n }\n\n getNotification() {\n if (this.auth.isLoggedIn) {\n // this.loadingService.startLoading();\n // // this.userService\n // // .getUserNotification(\n // // this.auth.getUserAccessToken(),\n // // this.auth.getPrimaryUserId(),\n // // this.auth.getUserAccountId(),\n // // 3\n // // )\n // // .subscribe(\n // // (response) => {\n // // // console.log('data we get');\n // // // console.log(response);\n // // this.allNotification = [];\n // // if (response.data) {\n // // response.data.forEach((element) => {\n // // const createdBy = element._createdby_value_Formatted.split(' ');\n // // const notification = {\n // // createdOn: element.createdon_Formatted,\n // // subject: element.subject,\n // // description: element.description,\n // // statecode: element.statecode,\n // // statuscode: element.statuscode,\n // // activityid: element.activityid,\n // // createdBy: element._createdby_value_Formatted,\n // // createdBySlug:\n // // createdBy[0].charAt(0) + createdBy[1].charAt(0),\n // // };\n // // this.allNotification.push(notification);\n // // });\n // // }\n // // },\n // // (err) => {\n // // /// this.loadingService.stopLoading();\n // // console.log('error', err);\n // // console.log('this.tryAgainNotificationFlag');\n // // console.log(this.tryAgainNotificationFlag);\n // // if (this.tryAgainNotificationFlag <= 3) {\n // // this.tryAgainNotificationFlag++;\n // // this.auth.headerDetail.next(true);\n // // }\n // // }\n // // );\n } else {\n // console.log('do not get notification, user is not login');\n }\n }\n // Dialog Box\n openDialog(headline: string) {\n const dialogRef = this.dialog.open(LoginComponent, {\n width: '500px',\n data: {\n headline,\n },\n });\n dialogRef.afterClosed().subscribe((result) => {\n if (result) {\n if (result === 'forgotPassword') {\n this.openForgotDialog();\n } else if (result === 'otpLogin') {\n this.loginOtp();\n } else if (result === 'onRegister') {\n }\n }\n });\n }\n loginOtp() {\n const dialogRef = this.dialog.open(LoginOtpComponent, {\n width: '500px',\n data: {},\n });\n dialogRef.afterClosed().subscribe((result) => {\n if (result) {\n if (result === 'backToLogin') {\n this.openDialog('LOGIN TO YOUR ACCOUNT');\n } else if (result === 'forgotPassword') {\n this.openForgotDialog();\n } else if (result === 'onRegister') {\n }\n }\n });\n }\n openForgotDialog() {\n const dialogRef = this.dialog.open(ForgotPasswordComponent, {\n width: '500px',\n });\n dialogRef.afterClosed().subscribe((result) => {\n if (result) {\n if (result === 'backToLogin') {\n this.openDialog('LOGIN TO YOUR ACCOUNT');\n }\n }\n });\n }\n showComingSoon() {\n this.auth.showSnackBarMsg('Coming Soon!');\n }\n gotoMessagePage() {\n this.showComingSoon();\n // if (this.router.url !== '/message') {\n // this.auth.setNotificationBackUrl(this.router.url);\n // }\n // this.redirectToURL('/message');\n }\n\n getContries() {\n const allContries = this.auth.getAllCountries();\n\n if (!(allContries && allContries?.length)) {\n this.userService.getCountries(this.auth.getUserAccessToken()).subscribe(\n (response) => {\n this.auth.setAllCountries([...response.data]);\n },\n (error) => {\n this.auth.showSnackBarMsg('Something went wrong!.');\n }\n );\n }\n }\n\n getInsuranceProvider() {\n const insuranceProvider = this.auth.getAllInsuranceProviderFromSession();\n\n if (!(insuranceProvider && insuranceProvider.length > 0)) {\n this.userService\n .getInsuranceProvider(this.auth.getUserAccessToken())\n .subscribe(\n (response) => {\n this.auth.setAllInsuranceProviderInSession(response.data);\n },\n (err) => {\n console.log(err);\n }\n );\n }\n }\n\n getAllInstitute() {\n const allillionInstitute = this.auth.getAllIllionInstatiteFromSession();\n\n if (!(allillionInstitute && allillionInstitute.length > 0)) {\n this.userService\n .getAllInstitute(this.auth.getUserAccessToken())\n .subscribe(\n (response) => {\n this.auth.setAllIllionInstatiteInSession(response.data);\n },\n (err) => {\n console.log('getAllInstitute', err);\n }\n );\n }\n }\n\n getAllRelatedMember() {\n const relatedMember = this.auth.getAllRelatedMemberFromSession();\n\n if (\n !(\n relatedMember &&\n relatedMember.allRelatedOwner &&\n relatedMember.allRelatedOwner.length > 0\n )\n ) {\n this.userService\n .getAllOwner(\n this.auth.getUserAccessToken(),\n this.auth.getPrimaryUserId()\n )\n .subscribe(\n (response) => {\n this.auth.setAllRelatedMemberInSession(response.data);\n },\n (err) => {\n console.log(err);\n }\n );\n }\n }\n\n getOccupation() {\n const occupation = this.auth.getAllOccupationFromSession();\n\n if (!(occupation && occupation.length > 0)) {\n this.userService.getJobRole(this.auth.getUserAccessToken()).subscribe(\n (response) => {\n if (response.data) {\n this.auth.setAllOccupationInSession(response.data);\n }\n },\n (err) => {\n console.log(err);\n }\n );\n }\n }\n\n getAllOpportunity() {\n const queryParameter = this.route.snapshot.queryParams;\n this.loadingService.startLoading();\n this.userService\n .getIncompleteOpportunity(\n this.auth.getUserAccessToken(),\n this.auth.getUserAccountId()\n )\n .subscribe(\n (responseValue) => {\n this.loadingService.stopLoading();\n this.auth.setOpportunityinSession(responseValue.data);\n let IsdebtOpp = false;\n let IsSuperOpp = false;\n let IsInvestmentOpp = false;\n let IsHealthOpp = false;\n let IsGeneralOpp = false;\n let IsEstateOpp = false;\n let needRedirect = true;\n let IsFinancialOpp = false;\n let IsLifeOpp = false;\n responseValue.data?.forEach((element) => {\n if (element.tlx_leadfor === 2) {\n // debt opportunity\n IsdebtOpp = true;\n this.auth.setCurrentDebtOpportunityId(element.opportunityid);\n if (\n queryParameter &&\n queryParameter.oppid &&\n queryParameter.oppid.trim().length > 0\n ) {\n if (queryParameter.oppid === element.opportunityid) {\n needRedirect = false;\n this.redirectToURL('/user/complete-review-outstanding-items');\n }\n }\n if (this.currentUrl === '/debtapp') {\n const currentStage = element._activestageid_value;\n const currentUrl = this.auth.getDebtCurrentUrl(currentStage);\n needRedirect = false;\n this.resumeOrStart(\n element.opportunityid,\n element.tlx_leadfor,\n element.name,\n currentUrl\n );\n }\n }\n if (element.tlx_leadfor === 1) {\n // superannuation opportunity\n IsSuperOpp = true;\n this.auth.setCurrentSuperOpportunityId(element.opportunityid);\n if (\n queryParameter &&\n queryParameter.oppid &&\n queryParameter.oppid.trim().length > 0\n ) {\n if (queryParameter.oppid === element.opportunityid) {\n needRedirect = false;\n this.redirectToURL(\n '/superannuation/complete-review-outstanding-items'\n );\n }\n }\n if (this.currentUrl === '/superannuation') {\n const currentStage = element._activestageid_value;\n const currentUrl = this.auth.getSuperCurrentUrl(currentStage);\n needRedirect = false;\n // if (queryParameter?.uploaddocumentwithemail == 'true') {\n // if (queryParameter?.queryUser == 'primary') {\n // this.redirectToURL(\n // '/superannuation/complete-review-outstanding-items'\n // );\n // } else if (queryParameter?.queryUser == 'secondary') {\n // this.secondaryUserUrl(queryParameter);\n // } else {\n // //accountant\n // }\n // } else {\n this.redirectToURL(currentUrl);\n // }\n }\n }\n\n if (element.tlx_leadfor === 9) {\n // managed investment opportunity\n IsInvestmentOpp = true;\n this.auth.setCurrentInvestmentOpportunityId(\n element.opportunityid\n );\n // // const currentStage = element._activestageid_value;\n // // const currentUrl = this.auth.getSuperCurrentUrl(currentStage);\n if (\n queryParameter &&\n queryParameter.oppid &&\n queryParameter.oppid.trim().length > 0\n ) {\n if (queryParameter.oppid === element.opportunityid) {\n needRedirect = false;\n this.redirectToURL(\n '/managed-account/complete-review-outstanding-items'\n );\n }\n }\n if (this.currentUrl === '/managed-account') {\n needRedirect = false;\n // if (queryParameter?.uploaddocumentwithemail == 'true') {\n // if (queryParameter?.queryUser == 'primary') {\n // this.redirectToURL(\n // '/managed-account/complete-review-outstanding-items'\n // );\n // } else if (queryParameter?.queryUser == 'secondary') {\n // this.secondaryUserUrl(queryParameter);\n // } else {\n // //accountant\n // }\n // } else {\n this.redirectToURL('/managed-account');\n // }\n }\n }\n if (element.tlx_leadfor === 4) {\n // general opportunity\n IsGeneralOpp = true;\n this.auth.setCurrentGeneralInsuranceOpportunityId(\n element.opportunityid\n );\n // // const currentStage = element._activestageid_value;\n // // const currentUrl = this.auth.getSuperCurrentUrl(currentStage);\n if (\n queryParameter &&\n queryParameter.oppid &&\n queryParameter.oppid.trim().length > 0\n ) {\n if (queryParameter.oppid === element.opportunityid) {\n needRedirect = false;\n this.redirectToURL(\n '/general-insurance/complete-review-outstanding-items'\n );\n }\n }\n if (this.currentUrl === '/general-insurance') {\n // // this.redirectToURL(currentUrl);\n needRedirect = false;\n // if (queryParameter?.uploaddocumentwithemail == 'true') {\n // if (queryParameter?.queryUser == 'primary') {\n // this.redirectToURL(\n // '/general-insurance/complete-review-outstanding-items'\n // );\n // } else if (queryParameter?.queryUser == 'secondary') {\n // this.secondaryUserUrl(queryParameter);\n // } else {\n // //accountant\n // }\n // } else {\n this.redirectToURL('/general-insurance');\n // }\n }\n }\n if (element.tlx_leadfor === 5) {\n // health opportunity\n IsHealthOpp = true;\n this.auth.setCurrentHealthInsuranceOpportunityId(\n element.opportunityid\n );\n // // const currentStage = element._activestageid_value;\n // // const currentUrl = this.auth.getSuperCurrentUrl(currentStage);\n if (\n queryParameter &&\n queryParameter.oppid &&\n queryParameter.oppid.trim().length > 0\n ) {\n if (queryParameter.oppid === element.opportunityid) {\n needRedirect = false;\n this.redirectToURL(\n '/health-insurance/complete-review-outstanding-items'\n );\n }\n }\n if (this.currentUrl === '/health-insurance') {\n // // this.redirectToURL(currentUrl);\n needRedirect = false;\n // if (queryParameter?.uploaddocumentwithemail == 'true') {\n // if (queryParameter?.queryUser == 'primary') {\n // this.redirectToURL(\n // '/health-insurance/complete-review-outstanding-items'\n // );\n // } else if (queryParameter?.queryUser == 'secondary') {\n // this.secondaryUserUrl(queryParameter);\n // } else {\n // //accountant\n // }\n // } else {\n this.redirectToURL('/health-insurance');\n // }\n }\n }\n if (element.tlx_leadfor === 6) {\n // estate opportunity\n IsEstateOpp = true;\n this.auth.setCurrentEstatePlanningOpportunityId(\n element.opportunityid\n );\n // // const currentStage = element._activestageid_value;\n // // const currentUrl = this.auth.getSuperCurrentUrl(currentStage);\n if (\n queryParameter &&\n queryParameter.oppid &&\n queryParameter.oppid.trim().length > 0\n ) {\n if (queryParameter.oppid === element.opportunityid) {\n needRedirect = false;\n this.redirectToURL(\n '/estate-planning/complete-review-outstanding-items'\n );\n }\n }\n if (this.currentUrl === '/estate-planning') {\n // // this.redirectToURL(currentUrl);\n needRedirect = false;\n // if (queryParameter?.uploaddocumentwithemail == 'true') {\n // if (queryParameter?.queryUser == 'primary') {\n // this.redirectToURL(\n // '/estate-planning/complete-review-outstanding-items'\n // );\n // } else if (queryParameter?.queryUser == 'secondary') {\n // this.secondaryUserUrl(queryParameter);\n // } else {\n // //accountant\n // }\n // } else {\n this.redirectToURL('/estate-planning');\n // }\n }\n }\n if (element.tlx_leadfor === 7) {\n // financial planning opportunity\n IsFinancialOpp = true;\n this.auth.setCurrentFinancialPlanningOpportunityId(\n element.opportunityid\n );\n // // const currentStage = element._activestageid_value;\n // // const currentUrl = this.auth.getSuperCurrentUrl(currentStage);\n if (\n queryParameter &&\n queryParameter.oppid &&\n queryParameter.oppid.trim().length > 0\n ) {\n if (queryParameter.oppid === element.opportunityid) {\n needRedirect = false;\n this.redirectToURL(\n '/financial-planning/complete-review-outstanding-items'\n );\n }\n }\n if (this.currentUrl === '/financial-planning') {\n // // this.redirectToURL(currentUrl);\n needRedirect = false;\n // if (queryParameter?.uploaddocumentwithemail == 'true') {\n // if (queryParameter?.queryUser == 'primary') {\n // this.redirectToURL(\n // '/financial-planning/complete-review-outstanding-items'\n // );\n // } else if (queryParameter?.queryUser == 'secondary') {\n // this.secondaryUserUrl(queryParameter);\n // } else {\n // //accountant\n // }\n // } else {\n this.redirectToURL('/financial-planning');\n // }\n }\n }\n if (element.tlx_leadfor === 3) {\n // life and personal insurance opportunity\n IsLifeOpp = true;\n this.auth.setCurrentLifeInsuranceOpportunityId(\n element.opportunityid\n );\n // // const currentStage = element._activestageid_value;\n // // const currentUrl = this.auth.getSuperCurrentUrl(currentStage);\n if (\n queryParameter &&\n queryParameter.oppid &&\n queryParameter.oppid.trim().length > 0\n ) {\n if (queryParameter.oppid === element.opportunityid) {\n needRedirect = false;\n this.redirectToURL(\n 'life-insurance/complete-review-outstanding-items'\n );\n }\n }\n if (this.currentUrl === '/life-insurance') {\n // // this.redirectToURL(currentUrl);\n needRedirect = false;\n // if (queryParameter?.uploaddocumentwithemail == 'true') {\n // if (queryParameter?.queryUser == 'primary') {\n // this.redirectToURL(\n // '/life-insurance/complete-review-outstanding-items'\n // );\n // } else if (queryParameter?.queryUser == 'secondary') {\n // this.secondaryUserUrl(queryParameter);\n // } else {\n // //accountant\n // }\n // } else {\n this.redirectToURL('/life-insurance');\n // }\n }\n }\n });\n if (!IsdebtOpp) {\n this.auth.setCurrentDebtOpportunityId('');\n if (this.currentUrl === '/debtapp') {\n needRedirect = false;\n\n this.redirectToURL('/debtapp');\n // }\n }\n }\n if (!IsSuperOpp) {\n this.auth.setCurrentSuperOpportunityId('');\n if (this.currentUrl === '/superannuation') {\n needRedirect = false;\n\n this.redirectToURL('/superannuation');\n // }\n }\n }\n if (!IsInvestmentOpp) {\n this.auth.setCurrentInvestmentOpportunityId('');\n if (this.currentUrl === '/managed-account') {\n needRedirect = false;\n\n this.redirectToURL('/managed-account');\n // }\n }\n }\n if (!IsHealthOpp) {\n this.auth.setCurrentHealthInsuranceOpportunityId('');\n if (this.currentUrl === '/health-insurance') {\n needRedirect = false;\n\n this.redirectToURL('/health-insurance');\n // }\n }\n }\n if (!IsGeneralOpp) {\n this.auth.setCurrentGeneralInsuranceOpportunityId('');\n if (this.currentUrl === '/general-insurance') {\n needRedirect = false;\n\n this.redirectToURL('/general-insurance');\n // }\n }\n }\n if (!IsEstateOpp) {\n this.auth.setCurrentEstatePlanningOpportunityId('');\n if (this.currentUrl === '/estate-planning') {\n needRedirect = false;\n\n this.redirectToURL('/estate-planning');\n // }\n }\n }\n if (!IsFinancialOpp) {\n this.auth.setCurrentFinancialPlanningOpportunityId('');\n if (this.currentUrl === '/financial-planning') {\n needRedirect = false;\n\n this.redirectToURL('/financial-planning');\n // }\n }\n }\n if (!IsLifeOpp) {\n this.auth.setCurrentLifeInsuranceOpportunityId('');\n if (this.currentUrl === '/life-insurance') {\n needRedirect = false;\n\n this.redirectToURL('/life-insurance');\n // }\n }\n }\n if (needRedirect) {\n if (\n queryParameter &&\n queryParameter.oppid &&\n queryParameter.oppid.trim().length > 0\n ) {\n this.auth.showSnackBarMsg(\n 'Opps! The opportunity is no longer available.'\n );\n }\n\n this.redirectToURL('/');\n // }\n }\n this.loadingService.stopLoading();\n // if (queryParameter?.uploaddocumentwithemail != 'true') {\n // this.auth.resetUserForm.emit(false);\n // }\n },\n (error) => {\n console.log(error);\n this.loadingService.stopLoading();\n if (this.tryAgainOppFlag <= 3) {\n this.tryAgainOppFlag++;\n this.auth.showSnackBarMsg('Something Went Wrong,Please wait....');\n this.auth.fetchingData.next(this.auth.getCurrentUrl());\n } else {\n this.auth.showSnackBarMsg(\n 'Something Went Wrong, Please Try again after some time.'\n );\n this.auth.logout();\n }\n }\n );\n }\n resumeOrStart(\n oppId: string,\n leadFor: string,\n name: string,\n currentUrl: string\n ) {\n const dialogRef = this.dialog.open(ResumeOrStartPopupComponent, {\n width: '400px',\n data: {\n name,\n currentPage: 'userForm',\n },\n });\n dialogRef.afterClosed().subscribe((result) => {\n if (result) {\n if (result === 'resume') {\n this.redirectToURL(currentUrl);\n } else {\n this.auth.showSnackBarMsg(\n `Please withdraw current ${name} application.`,\n 9000\n );\n this.disableOpportunity(oppId, +leadFor, currentUrl);\n // this.redirectToURL(this.startNewUrl);\n }\n } else {\n this.redirectToURL(currentUrl);\n }\n });\n }\n disableOpportunity(oppID: string, leadFor: number, currentUrl: string) {\n const dialogRef = this.dialog.open(WithdrawOpportunityPopupComponent, {\n width: '720px',\n position: { right: '0', bottom: '0' },\n data: { type: 'add', data: oppID, leadFor },\n });\n dialogRef.afterClosed().subscribe((result) => {\n if (result) {\n this.auth.setCurrentDebtOpportunityId('');\n // this.redirectToURL('financial-goal');\n } else {\n this.redirectToURL(currentUrl);\n }\n });\n }\n\n redirectToURL(url = '') {\n // this.showComingSoon();\n // this.router.navigate([url]);\n // window.scroll(0, 0);\n this.auth.gotoUrl(url);\n }\n\n pathToSubnav(route: string) {\n // if (this.router.url !== route) {\n // this.auth.setBackUrl(this.router.url);\n // }\n if (this.auth.getCurrentUrl() !== route) {\n this.auth.setBackUrl(this.auth.getCurrentUrl());\n }\n this.redirectToURL(route);\n }\n}\n","
\n
\n
\n
\n
\n
\n \n
\n
\n 03 9209 9000 \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \"Login\"\n \"Login\"\n \n \n \n \n \n \n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n
\n
\n
\n
\n
\n\n
\n
\n\n\n\n\n\n\n
\n \n
\n","import { Component, OnInit, Output, EventEmitter } from '@angular/core';\nimport {FormBuilder, FormGroup, Validators} from '@angular/forms';\nimport { AuthenticationService } from 'src/app/core/services/authentication.service';\n\n@Component({\n selector: 'app-layout',\n templateUrl: './layout.component.html',\n styleUrls: ['./layout.component.scss']\n})\nexport class LayoutComponent implements OnInit {\n selected = 'option2';\n\n isLinear = false;\n firstFormGroup: FormGroup;\n secondFormGroup: FormGroup;\n\n routeUrl: string;\n visibility = false;\n subscription: any;\n progInfoSubscription: any;\n bottomBarActive: true;\n\n @Output() headerMenuEvent = new EventEmitter();\n\n constructor(\n private _formBuilder: FormBuilder,\n public auth:AuthenticationService\n ) {}\n\n ngOnInit(): void {\n this.firstFormGroup = this._formBuilder.group({\n firstCtrl: ['', Validators.required]\n });\n this.secondFormGroup = this._formBuilder.group({\n secondCtrl: ['', Validators.required]\n });\n }\n\n ngOnDestroy() {\n this.subscription.unsubscribe();\n }\n\n}\n","\n\n
\n \n
\n\n\n
\n \n
","import { Component, Inject, OnInit } from '@angular/core';\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\n\n@Component({\n selector: 'app-resume-or-start-popup',\n templateUrl: './resume-or-start-popup.component.html',\n styleUrls: ['./resume-or-start-popup.component.scss'],\n})\nexport class ResumeOrStartPopupComponent implements OnInit {\n currentApplicationName: string;\n debtHeader = false;\n constructor(\n public dialogRef: MatDialogRef,\n @Inject(MAT_DIALOG_DATA) public data: any\n ) {}\n\n ngOnInit(): void {\n if (this.data) {\n this.currentApplicationName = this.data.name;\n if (this.data.currentPage) {\n if (this.data.currentPage == 'financial-goal') {\n this.debtHeader = true;\n }\n }\n }\n }\n closepopup(result: string) {\n this.dialogRef.close(result);\n }\n}\n","
\n
\n

\n \n

\n
\n
\n \n
\n\n
\n
\n \n \n \n \n
\n\n Please confirm!\n Do you want to resume, {{currentApplicationName}} application.\n You have an existing application ({{currentApplicationName}}) in progress. Would you like to Resume or Start New Application. If you start a new application, the old application will be closed. \n\n \n \n \n \n\n
\n\n\n\n
\n\n
\n\n
\n
","import {\n AfterViewInit,\n Component,\n ElementRef,\n HostListener,\n Input,\n OnChanges,\n OnDestroy,\n OnInit,\n Renderer2,\n SimpleChange,\n SimpleChanges,\n ViewChild,\n} from '@angular/core';\nimport { MatDialog } from '@angular/material/dialog';\nimport { ProgressSpinnerMode } from '@angular/material/progress-spinner';\nimport { Subscription } from 'rxjs';\nimport { AuthenticationService } from 'src/app/core/services/authentication.service';\nimport { WithdrawOpportunityPopupComponent } from 'src/app/modules/users/withdraw-opportunity-popup/withdraw-opportunity-popup.component';\n\n@Component({\n selector: 'app-sub-header',\n templateUrl: './sub-header.component.html',\n styleUrls: ['./sub-header.component.scss'],\n})\nexport class SubHeaderComponent implements OnInit, OnChanges, AfterViewInit {\n tlxleadfor: number;\n oppID: string;\n // color: ThemePalette = 'primary';\n mode: ProgressSpinnerMode = 'determinate';\n value = 50;\n constructor(\n public auth: AuthenticationService,\n public dialog: MatDialog,\n private renderer: Renderer2\n ) {}\n\n @Input('header') header: string;\n @Input('currentStage') currentStage = 0;\n @Input('totalStage') totalStage = 10;\n\n @ViewChild('circleBar', { static: false }) circleBar: ElementRef;\n\n // updatecircleSubscription: Subscription;\n\n showStage;\n // element: HTMLDivElement;\n isSticky = false;\n // progressBar = [];\n @HostListener('window:scroll', ['$event'])\n checkScroll() {\n this.isSticky = window.pageYOffset >= 80;\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n this.header = changes.header?.currentValue;\n\n if (\n changes.currentStage?.currentValue != changes.currentStage?.currentValue\n ) {\n this.currentStage = changes.currentStage.currentValue;\n }\n if (changes.totalStage?.currentValue != changes.totalStage?.previousValue) {\n this.totalStage = changes.totalStage.currentValue;\n }\n\n\n this.setcircleProgressBar();\n }\n ngOnInit(): void {\n this.showStage = this.currentStage;\n\n }\n ngAfterViewInit(): void {\n this.setcircleProgressBar();\n }\n disableOpportunity() {\n this.checkCurrentUrl();\n const oppID = this.oppID;\n const leadFor = this.tlxleadfor;\n\n if (oppID && leadFor) {\n const dialogRef = this.dialog.open(WithdrawOpportunityPopupComponent, {\n width: '720px',\n position: { right: '0', bottom: '0' },\n data: { type: 'add', data: oppID, leadFor },\n });\n } else {\n this.auth.showSnackBarMsg('No Related Application Found!');\n }\n }\n checkCurrentUrl() {\n // const currentUrl = this.router.url.split('?')[0];\n const currentUrl = this.auth.getCurrentUrl();\n if (\n currentUrl.includes('/user') ||\n currentUrl.includes('financial-goal') ||\n currentUrl.includes('refinance-consolidation')\n ) {\n this.tlxleadfor = 2;\n this.oppID = this.auth.getOPPByLeadFor(2);\n } else if (currentUrl.includes('/superannuation')) {\n this.tlxleadfor = 1;\n this.oppID = this.auth.getOPPByLeadFor(1);\n } else if (currentUrl.includes('/managed-account')) {\n this.tlxleadfor = 9;\n this.oppID = this.auth.getOPPByLeadFor(9);\n } else if (currentUrl.includes('/general-insurance')) {\n this.tlxleadfor = 4;\n this.oppID = this.auth.getOPPByLeadFor(4);\n } else if (currentUrl.includes('/estate-planning')) {\n this.tlxleadfor = 6;\n this.oppID = this.auth.getOPPByLeadFor(6);\n } else if (currentUrl.includes('/financial-planning')) {\n this.tlxleadfor = 7;\n this.oppID = this.auth.getOPPByLeadFor(7);\n } else if (currentUrl.includes('/health-insurance')) {\n this.tlxleadfor = 5;\n this.oppID = this.auth.getOPPByLeadFor(5);\n } else if (currentUrl.includes('/life-insurance')) {\n this.tlxleadfor = 3;\n this.oppID = this.auth.getOPPByLeadFor(3);\n }\n }\n setcircleProgressBar() {\n if (this.circleBar?.nativeElement && this.currentStage && this.totalStage) {\n let a = this.currentStage;\n if (a > 0) {\n a -= 1;\n }\n const b = this.totalStage;\n const c = Number(a / b).toFixed(2);\n const currentPercentage = +c * 100;\n this.renderer.setStyle(\n this.circleBar.nativeElement,\n 'background',\n `radial-gradient(closest-side, white 80%, transparent 0 99.9%, white 0),conic-gradient(var(--fg) calc(var(--pgPercentage) * ${currentPercentage}%), var(--bg) 0)`\n );\n }\n }\n}\n","
\n \n
\n

\n {{header}}\n

\n \n \n \n \n \n
\n \n \n \n
\n \n
step
{{currentStage}} of {{totalStage}}
\n \n
\n \n
\n
\n
\n

\n {{header}}\n

\n STEP {{currentStage}} OF {{totalStage}}\n \n
\n \n \n \n
\n
\n \n
\n \n
\n","import { Component, Input, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-loader-inner',\n templateUrl: './loader-inner.component.html',\n styleUrls: ['./loader-inner.component.scss']\n})\nexport class LoaderInnerComponent implements OnInit {\n\n loaderType = 0;\n\n @Input() type ;\n constructor() {}\n\n ngOnInit() {\n this.loaderType = this.type;\n }\n}\n","\n \n\n \n No loader created\n \n\n\n
\n\t\t
\n\t\t\t
\n\t\t\t\t\n\t\t\t\t\n\t\t\t
\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
\n\t\t\t
\n\t\t
\n\t\t
\n\t\t\t
\n\t\t\t\t\n\t\t\t
\n\t\t\t
\n\t\t\t\t\n\t\t\t
\n\t\t\t
\n\t\t\t\t\n\t\t\t
\n\t\t
\n\t
\n\n
\n\n\n\n \n
\n\t\t\n\t
\n
\n\n\n\n \n
\n\t\t\n\t\t\n\t
\n
\n\n\n\n\n
\n \n
\n
","import { Component, Input, OnDestroy, OnInit } from '@angular/core';\nimport { LoadingService } from '../../services/loader.service';\nimport { Subscription } from 'rxjs';\nimport { debugOutputAstAsTypeScript } from '@angular/compiler';\n/**\n * LoadingComponent used to for creating the loader on screen.\n */\n@Component({\n selector: 'app-loading',\n templateUrl: './loader.component.html',\n styleUrls: ['./loader.component.scss'],\n})\nexport class LoadingComponent implements OnInit, OnDestroy {\n loading = false;\n loadingSubscription: Subscription;\n\n // @Input() loadingInput ;\n constructor(private loadingService: LoadingService) {}\n\n // Initializing the component before loading\n ngOnInit() {\n this.loadingSubscription = this.loadingService.loadingStatus.subscribe(\n (value) => {\n this.loading = value;\n }\n );\n // this.loading = this.loadingInput;\n }\n\n ngOnDestroy() {\n this.loadingSubscription.unsubscribe();\n }\n}\n","\n
\n
\n\n \"\"\n\n
\n\n \n
\n\n\n\n \n \n","import {\n animate,\n animation,\n query,\n sequence,\n stagger,\n style\n } from '@angular/animations';\n\nexport const SidebarOpenAnimation = animation([\n style({ left: '-{{menuWidth}}' }),\n query('.profile-opt', [style({ transform: 'translateX(-{{menuWidth}})' })], {optional: true}),\n sequence([\n animate('0ms', ),\n query('.profile-opt', [\n stagger(25, [animate('{{animationStyle}}', style({ transform: 'none' }))])\n ], {optional: true})\n ])\n ]);\n\nexport const SidebarCloseAnimation = animation([\n ,\n query('.profile-opt', [style({ transform: 'none' })], {optional: true}),\n sequence([\n query('.profile-opt', [\n stagger(-25, [\n animate(\n '{{animationStyle}}',\n style({ transform: 'translateX(-{{menuWidth}})' })\n )\n ])\n ], {optional: true}),\n animate('0ms', style({ left: '-{{menuWidth}}' }))\n ])\n ]);\n","import { FlatTreeControl, NestedTreeControl } from '@angular/cdk/tree';\nimport { THIS_EXPR } from '@angular/compiler/src/output/output_ast';\nimport {\n Component,\n ElementRef,\n OnDestroy,\n OnInit,\n ViewChild,\n} from '@angular/core';\nimport { MatDialog } from '@angular/material/dialog';\nimport {\n MatTreeFlatDataSource,\n MatTreeFlattener,\n MatTreeNestedDataSource,\n} from '@angular/material/tree';\nimport { DomSanitizer } from '@angular/platform-browser';\nimport { Subscription } from 'rxjs';\nimport { FinancialGoalService } from 'src/app/modules/financial-goal/services/financial-goal.service';\nimport { UsersService } from 'src/app/modules/users/services/users.service';\nimport { WithdrawOpportunityPopupComponent } from 'src/app/modules/users/withdraw-opportunity-popup/withdraw-opportunity-popup.component';\nimport { AuthenticationService } from '../../services/authentication.service';\nimport { LoadingService } from '../../services/loader.service';\nimport { transition, trigger, useAnimation } from '@angular/animations';\nimport { SidebarOpenAnimation, SidebarCloseAnimation } from './animations';\nimport { TooltipPosition } from '@angular/material/tooltip';\nimport { ResumeOrStartPopupComponent } from '../layouts/resume-or-start-popup/resume-or-start-popup.component';\nconst animationParams = {\n menuWidth: '350px',\n animationStyle: '500ms ease',\n};\ninterface applicationNode {\n name: string;\n oppID: string;\n a?: string;\n b?: string;\n c?: string;\n d?: string;\n e?: string;\n f?: string;\n g?: string;\n h?: string;\n i?: string;\n j?: string;\n\n children?: applicationNode[];\n}\n\n/** Flat node with expandable and level information */\ninterface ExampleFlatNode {\n expandable: boolean;\n name: string;\n level: number;\n}\nenum opportunityStage {\n 'ece3b3ec-e98a-4d95-8ce0-eff28d771b26',\n '2d8c0501-6d5d-4f7e-a0c0-e9afe7c52164',\n '2eda2878-affb-4fb3-ae3a-7d86a737a786',\n 'ba486328-0485-4273-b4ab-9a9faaa22423',\n 'f041dfe1-8e90-430c-9eb8-85ced7da8386',\n '9ffd96ef-b806-4871-bf37-1a77a7edafc0',\n '4cbe1585-4102-4ea1-bf17-a9e5328020d5',\n '5da0f5ec-d070-48cf-946e-b4977631459a',\n '16a09f15-0fef-4315-853b-83d47be3b241',\n}\nenum superannuationOpportunityStage {\n 'a11f4588-28ec-8a7a-86f4-1d06dd4200cb',\n '2ee1ba75-0b75-40c9-9a75-9106f4182f16',\n 'bf20f70a-8f44-4ef6-8e28-2de5fe2921c9',\n 'df4ce430-ccee-4a24-b922-da984b27adb9',\n 'b43ca487-1cca-40a5-8fbd-de322210386f',\n '25e0e995-b9bd-4269-a68d-87df4a17b455',\n '49e1509f-5970-42bd-85ae-0763915eae08',\n 'b50c99a7-a462-4b92-b960-b3a28f3de9a8',\n '86a29103-435a-4d13-bfcf-7509cdedd7d7',\n}\n\nenum managedInvestmentOpportunityStage {\n '7a2e74cf-784e-4a40-a6d4-52a78cfaddb1',\n '56b2b8c3-810b-4538-b3da-dcabd8b82a27',\n '245e5731-0211-428d-aaf0-96bb04702f7d',\n 'bf12435e-14a5-49b1-94ad-1587b1f50f66',\n 'ad8aa40b-c284-4eb7-a0e4-644035d7cd6a',\n '5ec99075-3775-4a62-9984-4a9c2f64cc9c',\n '8f49837e-20bd-4909-a1bc-f7f55c0f0bb2',\n 'a6f4e59d-8c3d-4b40-bace-b93e1ebed4a2',\n '18101044-3c51-45f5-8b2b-4bc8405047c8',\n}\nenum generalInsuranceOpportunityStage {\n '3d2d49c7-17f7-4e61-be92-7aec9d824fe9',\n '1e95aa1f-ce10-4a49-869f-73a17d4291cd',\n 'daa80418-f805-49d1-a5ed-24d6b515529c',\n '7297956a-c73c-4971-ae62-e32114e29182',\n '06ddfd5e-8e72-47f5-b507-51534d4b62b3',\n '81c266c2-9e8b-4dba-9e1f-93b7b92ef672',\n}\n\nenum healthInsuranceOpportunityStage {\n 'dd7d0688-38bc-484f-b3b6-00d974c00b3d',\n 'a7e8150f-e667-4e32-a250-9f0e2aa4f1e9',\n '7279b36d-eb5b-42d8-a413-00b20233209b',\n '59b5f987-c91a-4f54-9171-7c1084a7f1cd',\n '95c0ac62-c756-489a-a5ba-fd80097b3895',\n 'cb3d67b2-d699-47bf-945d-4828c8be0e3e',\n}\nenum estatePlanningOpportunityStage {\n '860c244b-9214-48f4-942e-267926726fdb',\n 'd408967b-797a-48f2-9200-4233ff61d00d',\n 'c8d01d17-01f1-4e6e-9db9-545ffed1f890',\n '143a267d-bfe0-48bb-9d5c-109c2f6c17b1',\n 'b4878a2f-d020-4b70-82a6-25b3fecc6f00',\n 'dd752a5e-b234-4241-912f-a8937dab14ee',\n}\nenum financialPlanningOpportunityStage {\n '97f16148-4f74-4ead-887d-c3546a6e8cf9',\n '05de9ac0-c6cb-458d-8ce9-7b15f27f20d3',\n '47153fb5-92e1-4256-97c9-19e17695e210',\n '761cd62f-cb3d-462c-86e9-d82be5aab55d',\n '274a2637-1ce8-414e-a870-1d581b726c89',\n '2533fab7-2fb0-4855-8a10-d55ece667f9b',\n '2d159854-8941-45c4-87df-9cfe05a27bee',\n 'ed46d589-c988-4fff-86da-a7cee673f375',\n 'ecd6e91a-2ed8-4222-b45c-b41ca49685b6',\n}\n// enum stages {\n// 'Client Registration',\n// 'Confirm Loan Needs',\n// 'Confirm Family Details',\n// 'Gather Documents',\n// 'Product Recommendation',\n// 'Submission To Lender',\n// 'Loan Approval',\n// 'Loan',\n// 'Settlement Booked',\n// 'Settlement Complete',\n// }\n\n@Component({\n selector: 'app-side-bar',\n templateUrl: './side-bar.component.html',\n styleUrls: ['./side-bar.component.scss'],\n animations: [\n trigger('sideMenu', [\n transition(':enter', [\n useAnimation(SidebarOpenAnimation, {\n params: {\n ...animationParams,\n },\n }),\n ]),\n transition(':leave', [\n useAnimation(SidebarCloseAnimation, {\n params: {\n ...animationParams,\n },\n }),\n ]),\n ]),\n ],\n})\nexport class SideBarComponent implements OnInit, OnDestroy {\n // // // completedApplication = [];\n openApplication = [];\n userData;\n userFirstName: string;\n userLastName: string;\n image: any = '../../../../../assets/images/avatar.jpg';\n imageBlob;\n username: string;\n // currentOpportunity: string; // = 'e26bc19f-bcee-eb11-94ef-00224814e86f';\n token;\n targetDiv: HTMLDivElement;\n @ViewChild('targetDiv') targetRefrence: ElementRef;\n public toggle = true;\n\n positionOptions: TooltipPosition = 'right';\n\n // treeControl = new FlatTreeControl(\n // (node) => node.level,\n // (node) => node.expandable\n // );\n // private _transformer = (node: applicationNode, level: number) => {\n // return {\n // expandable: !!node.children && node.children.length > 0,\n // name: node.name,\n // oppID: node.oppID,\n // a: node.a,\n // b: node.b,\n // c: node.c,\n // d: node.d,\n // e: node.e,\n // f: node.f,\n // g: node.g,\n // h: node.h,\n // i: node.i,\n // j: node.j,\n\n // level: level,\n // };\n // };\n // treeFlattener = new MatTreeFlattener(\n // this._transformer,\n // (node) => node.level,\n // (node) => node.expandable,\n // (node) => node.children\n // );\n opportunitySubscription: Subscription;\n\n sideBarSubscription: Subscription;\n // dataSource = new MatTreeFlatDataSource(this.treeControl, this.treeFlattener);\n showData = false;\n // Active sub nav\n activeNav = '';\n debtstageActive = [];\n constructor(\n private financeService: FinancialGoalService,\n private userService: UsersService,\n public auth: AuthenticationService,\n private loadingService: LoadingService,\n private sanitizer: DomSanitizer,\n public dialog: MatDialog\n ) {}\n\n ngOnInit(): void {\n this.token = this.auth.getUserAccessToken();\n // this.dataSource1.data = Open_DATA;\n // this.dataSource.data = TREE_DATA;\n // this.userData = this.auth.getDecodedUserAccessToken();\n // this.username = `${this.userData.contactDetails[0].firstname} ${this.userData.contactDetails[0].lastname}`;\n // console.log(this.username);\n // this.userFirstName = this.userData.contactDetails[0].firstname.charAt(0);\n // this.userLastName = this.userData.contactDetails[0].lastname.charAt(0);\n this.imageBlob = this.auth.getLoginImage();\n if (this.imageBlob) {\n const objectURL = 'data:image/jpeg;base64,' + this.imageBlob;\n this.image = this.sanitizer.bypassSecurityTrustUrl(objectURL);\n }\n this.allSubscription();\n this.setOpportunity(this.auth.getAllOpportunity());\n }\n allSubscription() {\n this.opportunitySubscription = this.auth.newOpportunity.subscribe(\n (value) => {\n if (value) {\n // console.log('coming in side bar');\n this.setOpportunity(this.auth.getAllOpportunity());\n }\n }\n );\n this.sideBarSubscription = this.userService.toggleSideBar.subscribe(\n (value) => {\n if (value) {\n this.ToggleSubnav(value);\n }\n }\n );\n }\n ngOnDestroy() {\n this.opportunitySubscription.unsubscribe();\n this.sideBarSubscription.unsubscribe();\n }\n\n showHideData(i: number) {\n this.debtstageActive[i].showData = !this.debtstageActive[i].showData;\n // this.showData = !this.showData;\n }\n gotoCompletedPage() {\n this.ToggleSubnav('application');\n // if (this.router.url !== '/completed') {\n // this.auth.setBackUrl(this.router.url);\n // // console.log(this.router.url);\n // }\n if (this.auth.getCurrentUrl() !== '/completed') {\n this.auth.setBackUrl(this.auth.getCurrentUrl());\n // console.log(this.auth.getCurrentUrl(), \"side-bar\");\n }\n // this.router.navigate(['/completed']);\n this.auth.gotoUrl('/completed');\n }\n pathToSubnav(route: string) {\n // if (this.router.url !== route) {\n // this.auth.setBackUrl(this.router.url);\n // // console.log(this.router.url);\n // }\n if (this.auth.getCurrentUrl() !== route) {\n this.auth.setBackUrl(this.auth.getCurrentUrl());\n }\n\n this.goto(route);\n }\n hasChild = (_: number, node: ExampleFlatNode) => node.expandable;\n\n setOpportunity(response) {\n // console.log('opportunity in side bar');\n // console.log(response);\n // // // this.completedApplication = [];\n this.openApplication = [];\n this.debtstageActive = [];\n response?.forEach((element) => {\n if (element.tlx_leadfor == 2) {\n // debt\n const opprtunityName =\n this.auth.opportunityType[element.tlx_debtneedstransactiontype];\n const activeStage = opportunityStage[`${element._activestageid_value}`];\n const data = {\n name: opprtunityName,\n // stage: element._activestageid_value_Formatted,\n children: [\n {\n name: opprtunityName,\n showData: false,\n currentStage: element._activestageid_value,\n oppID: element.opportunityid,\n leadFor: element.tlx_leadfor,\n a: 'active',\n b:\n opportunityStage['ece3b3ec-e98a-4d95-8ce0-eff28d771b26'] <\n activeStage\n ? 'active'\n : '',\n c:\n opportunityStage['2d8c0501-6d5d-4f7e-a0c0-e9afe7c52164'] <\n activeStage\n ? 'active'\n : '',\n d:\n opportunityStage['2eda2878-affb-4fb3-ae3a-7d86a737a786'] <\n activeStage\n ? 'active'\n : '',\n e:\n opportunityStage['ba486328-0485-4273-b4ab-9a9faaa22423'] <\n activeStage\n ? 'active'\n : '',\n f:\n opportunityStage['f041dfe1-8e90-430c-9eb8-85ced7da8386'] <\n activeStage\n ? 'active'\n : '',\n g:\n opportunityStage['9ffd96ef-b806-4871-bf37-1a77a7edafc0'] <\n activeStage\n ? 'active'\n : '',\n h:\n opportunityStage['4cbe1585-4102-4ea1-bf17-a9e5328020d5'] <\n activeStage\n ? 'active'\n : '',\n i:\n opportunityStage['5da0f5ec-d070-48cf-946e-b4977631459a'] <\n activeStage\n ? 'active'\n : '',\n j:\n opportunityStage['16a09f15-0fef-4315-853b-83d47be3b241'] <=\n activeStage\n ? 'active'\n : '',\n },\n ],\n };\n this.debtstageActive.push(data.children[0]);\n this.openApplication.push(data);\n } else if (element.tlx_leadfor == 1) {\n // super\n const opprtunityName = element.name.split(' - ');\n const activeStage =\n superannuationOpportunityStage[`${element._activestageid_value}`];\n const data = {\n name: opprtunityName[1] ? opprtunityName[1] : opprtunityName[0],\n // stage: element._activestageid_value_Formatted,\n children: [\n {\n name: opprtunityName[1] ? opprtunityName[1] : opprtunityName[0],\n showData: false,\n currentStage: element._activestageid_value,\n oppID: element.opportunityid,\n leadFor: element.tlx_leadfor,\n\n a: 'active',\n b:\n superannuationOpportunityStage[\n 'a11f4588-28ec-8a7a-86f4-1d06dd4200cb'\n ] < activeStage\n ? 'active'\n : '',\n c:\n superannuationOpportunityStage[\n '2ee1ba75-0b75-40c9-9a75-9106f4182f16'\n ] < activeStage\n ? 'active'\n : '',\n d:\n superannuationOpportunityStage[\n 'bf20f70a-8f44-4ef6-8e28-2de5fe2921c9'\n ] < activeStage\n ? 'active'\n : '',\n e:\n superannuationOpportunityStage[\n 'df4ce430-ccee-4a24-b922-da984b27adb9'\n ] < activeStage\n ? 'active'\n : '',\n\n f:\n superannuationOpportunityStage[\n 'b43ca487-1cca-40a5-8fbd-de322210386f'\n ] < activeStage\n ? 'active'\n : '',\n g:\n superannuationOpportunityStage[\n '25e0e995-b9bd-4269-a68d-87df4a17b455'\n ] < activeStage\n ? 'active'\n : '',\n h:\n superannuationOpportunityStage[\n '49e1509f-5970-42bd-85ae-0763915eae08'\n ] < activeStage\n ? 'active'\n : '',\n i:\n superannuationOpportunityStage[\n 'b50c99a7-a462-4b92-b960-b3a28f3de9a8'\n ] < activeStage\n ? 'active'\n : '',\n j:\n superannuationOpportunityStage[\n '86a29103-435a-4d13-bfcf-7509cdedd7d7'\n ] <= activeStage\n ? 'active'\n : '',\n },\n ],\n };\n this.debtstageActive.push(data.children[0]);\n this.openApplication.push(data);\n } else if (element.tlx_leadfor == 9) {\n // managed investment\n const opprtunityName = element.name.split(' - ');\n const activeStage =\n managedInvestmentOpportunityStage[`${element._activestageid_value}`];\n const data = {\n name: opprtunityName[1] ? opprtunityName[1] : opprtunityName[0],\n // stage: element._activestageid_value_Formatted,\n children: [\n {\n name: opprtunityName[1] ? opprtunityName[1] : opprtunityName[0],\n showData: false,\n currentStage: element._activestageid_value,\n oppID: element.opportunityid,\n leadFor: element.tlx_leadfor,\n\n a: 'active',\n b:\n managedInvestmentOpportunityStage[\n '7a2e74cf-784e-4a40-a6d4-52a78cfaddb1'\n ] < activeStage\n ? 'active'\n : '',\n c:\n managedInvestmentOpportunityStage[\n '56b2b8c3-810b-4538-b3da-dcabd8b82a27'\n ] < activeStage\n ? 'active'\n : '',\n d:\n managedInvestmentOpportunityStage[\n '245e5731-0211-428d-aaf0-96bb04702f7d'\n ] < activeStage\n ? 'active'\n : '',\n e:\n managedInvestmentOpportunityStage[\n 'bf12435e-14a5-49b1-94ad-1587b1f50f66'\n ] < activeStage\n ? 'active'\n : '',\n\n f:\n managedInvestmentOpportunityStage[\n 'ad8aa40b-c284-4eb7-a0e4-644035d7cd6a'\n ] < activeStage\n ? 'active'\n : '',\n g:\n managedInvestmentOpportunityStage[\n '5ec99075-3775-4a62-9984-4a9c2f64cc9c'\n ] < activeStage\n ? 'active'\n : '',\n h:\n managedInvestmentOpportunityStage[\n '8f49837e-20bd-4909-a1bc-f7f55c0f0bb2'\n ] < activeStage\n ? 'active'\n : '',\n i:\n managedInvestmentOpportunityStage[\n 'a6f4e59d-8c3d-4b40-bace-b93e1ebed4a2'\n ] < activeStage\n ? 'active'\n : '',\n j:\n managedInvestmentOpportunityStage[\n '18101044-3c51-45f5-8b2b-4bc8405047c8'\n ] <= activeStage\n ? 'active'\n : '',\n },\n ],\n };\n this.debtstageActive.push(data.children[0]);\n this.openApplication.push(data);\n } else if (element.tlx_leadfor == 4) {\n // general insurance\n const opprtunityName = element.name.split(' - ');\n const activeStage =\n generalInsuranceOpportunityStage[`${element._activestageid_value}`];\n const data = {\n name: opprtunityName[1] ? opprtunityName[1] : opprtunityName[0],\n // stage: element._activestageid_value_Formatted,\n children: [\n {\n name: opprtunityName[1] ? opprtunityName[1] : opprtunityName[0],\n showData: false,\n currentStage: element._activestageid_value,\n oppID: element.opportunityid,\n leadFor: element.tlx_leadfor,\n\n a: 'active',\n b:\n generalInsuranceOpportunityStage[\n '3d2d49c7-17f7-4e61-be92-7aec9d824fe9'\n ] < activeStage\n ? 'active'\n : '',\n c:\n generalInsuranceOpportunityStage[\n '1e95aa1f-ce10-4a49-869f-73a17d4291cd'\n ] < activeStage\n ? 'active'\n : '',\n d:\n generalInsuranceOpportunityStage[\n 'daa80418-f805-49d1-a5ed-24d6b515529c'\n ] < activeStage\n ? 'active'\n : '',\n e:\n generalInsuranceOpportunityStage[\n '7297956a-c73c-4971-ae62-e32114e29182'\n ] < activeStage\n ? 'active'\n : '',\n\n f:\n generalInsuranceOpportunityStage[\n '06ddfd5e-8e72-47f5-b507-51534d4b62b3'\n ] < activeStage\n ? 'active'\n : '',\n g:\n generalInsuranceOpportunityStage[\n '81c266c2-9e8b-4dba-9e1f-93b7b92ef672'\n ] < activeStage\n ? 'active'\n : '',\n // h:\n // generalInsuranceOpportunityStage[\n // '8f49837e-20bd-4909-a1bc-f7f55c0f0bb2'\n // ] < activeStage\n // ? 'active'\n // : '',\n // i:\n // generalInsuranceOpportunityStage[\n // 'a6f4e59d-8c3d-4b40-bace-b93e1ebed4a2'\n // ] < activeStage\n // ? 'active'\n // : '',\n // j:\n // generalInsuranceOpportunityStage[\n // '18101044-3c51-45f5-8b2b-4bc8405047c8'\n // ] <= activeStage\n // ? 'active'\n // : '',\n },\n ],\n };\n this.debtstageActive.push(data.children[0]);\n this.openApplication.push(data);\n } else if (element.tlx_leadfor == 5) {\n // health insurance\n const opprtunityName = element.name.split(' - ');\n const activeStage =\n healthInsuranceOpportunityStage[`${element._activestageid_value}`];\n const data = {\n name: opprtunityName[1] ? opprtunityName[1] : opprtunityName[0],\n // stage: element._activestageid_value_Formatted,\n children: [\n {\n name: opprtunityName[1] ? opprtunityName[1] : opprtunityName[0],\n showData: false,\n currentStage: element._activestageid_value,\n oppID: element.opportunityid,\n leadFor: element.tlx_leadfor,\n\n a: 'active',\n b:\n healthInsuranceOpportunityStage[\n 'dd7d0688-38bc-484f-b3b6-00d974c00b3d'\n ] < activeStage\n ? 'active'\n : '',\n c:\n healthInsuranceOpportunityStage[\n 'a7e8150f-e667-4e32-a250-9f0e2aa4f1e9'\n ] < activeStage\n ? 'active'\n : '',\n d:\n healthInsuranceOpportunityStage[\n '7279b36d-eb5b-42d8-a413-00b20233209b'\n ] < activeStage\n ? 'active'\n : '',\n e:\n healthInsuranceOpportunityStage[\n '59b5f987-c91a-4f54-9171-7c1084a7f1cd'\n ] < activeStage\n ? 'active'\n : '',\n\n f:\n healthInsuranceOpportunityStage[\n '95c0ac62-c756-489a-a5ba-fd80097b3895'\n ] < activeStage\n ? 'active'\n : '',\n g:\n healthInsuranceOpportunityStage[\n 'cb3d67b2-d699-47bf-945d-4828c8be0e3e'\n ] < activeStage\n ? 'active'\n : '',\n // h:\n // generalInsuranceOpportunityStage[\n // '8f49837e-20bd-4909-a1bc-f7f55c0f0bb2'\n // ] < activeStage\n // ? 'active'\n // : '',\n // i:\n // generalInsuranceOpportunityStage[\n // 'a6f4e59d-8c3d-4b40-bace-b93e1ebed4a2'\n // ] < activeStage\n // ? 'active'\n // : '',\n // j:\n // generalInsuranceOpportunityStage[\n // '18101044-3c51-45f5-8b2b-4bc8405047c8'\n // ] <= activeStage\n // ? 'active'\n // : '',\n },\n ],\n };\n this.debtstageActive.push(data.children[0]);\n this.openApplication.push(data);\n } else if (element.tlx_leadfor == 6) {\n // Estate planning\n const opprtunityName = element.name.split(' - ');\n const activeStage =\n estatePlanningOpportunityStage[`${element._activestageid_value}`];\n const data = {\n name: opprtunityName[1] ? opprtunityName[1] : opprtunityName[0],\n // stage: element._activestageid_value_Formatted,\n children: [\n {\n name: opprtunityName[1] ? opprtunityName[1] : opprtunityName[0],\n showData: false,\n currentStage: element._activestageid_value,\n oppID: element.opportunityid,\n leadFor: element.tlx_leadfor,\n\n a: 'active',\n b:\n estatePlanningOpportunityStage[\n '860c244b-9214-48f4-942e-267926726fdb'\n ] < activeStage\n ? 'active'\n : '',\n c:\n estatePlanningOpportunityStage[\n 'd408967b-797a-48f2-9200-4233ff61d00d'\n ] < activeStage\n ? 'active'\n : '',\n d:\n estatePlanningOpportunityStage[\n 'c8d01d17-01f1-4e6e-9db9-545ffed1f890'\n ] < activeStage\n ? 'active'\n : '',\n e:\n estatePlanningOpportunityStage[\n '143a267d-bfe0-48bb-9d5c-109c2f6c17b1'\n ] < activeStage\n ? 'active'\n : '',\n\n f:\n estatePlanningOpportunityStage[\n 'b4878a2f-d020-4b70-82a6-25b3fecc6f00'\n ] < activeStage\n ? 'active'\n : '',\n g:\n estatePlanningOpportunityStage[\n 'dd752a5e-b234-4241-912f-a8937dab14ee'\n ] < activeStage\n ? 'active'\n : '',\n // h:\n // generalInsuranceOpportunityStage[\n // '8f49837e-20bd-4909-a1bc-f7f55c0f0bb2'\n // ] < activeStage\n // ? 'active'\n // : '',\n // i:\n // generalInsuranceOpportunityStage[\n // 'a6f4e59d-8c3d-4b40-bace-b93e1ebed4a2'\n // ] < activeStage\n // ? 'active'\n // : '',\n // j:\n // generalInsuranceOpportunityStage[\n // '18101044-3c51-45f5-8b2b-4bc8405047c8'\n // ] <= activeStage\n // ? 'active'\n // : '',\n },\n ],\n };\n this.debtstageActive.push(data.children[0]);\n this.openApplication.push(data);\n } else if (element.tlx_leadfor == 7) {\n // finnancial planning\n const opprtunityName = element.name.split(' - ');\n const activeStage =\n financialPlanningOpportunityStage[`${element._activestageid_value}`];\n const data = {\n name: opprtunityName[1] ? opprtunityName[1] : opprtunityName[0],\n // stage: element._activestageid_value_Formatted,\n children: [\n {\n name: opprtunityName[1] ? opprtunityName[1] : opprtunityName[0],\n showData: false,\n currentStage: element._activestageid_value,\n oppID: element.opportunityid,\n leadFor: element.tlx_leadfor,\n\n a: 'active',\n b:\n financialPlanningOpportunityStage[\n '97f16148-4f74-4ead-887d-c3546a6e8cf9'\n ] < activeStage\n ? 'active'\n : '',\n c:\n financialPlanningOpportunityStage[\n '05de9ac0-c6cb-458d-8ce9-7b15f27f20d3'\n ] < activeStage\n ? 'active'\n : '',\n d:\n financialPlanningOpportunityStage[\n '47153fb5-92e1-4256-97c9-19e17695e210'\n ] < activeStage\n ? 'active'\n : '',\n e:\n financialPlanningOpportunityStage[\n '761cd62f-cb3d-462c-86e9-d82be5aab55d'\n ] < activeStage\n ? 'active'\n : '',\n\n f:\n financialPlanningOpportunityStage[\n '274a2637-1ce8-414e-a870-1d581b726c89'\n ] < activeStage\n ? 'active'\n : '',\n g:\n financialPlanningOpportunityStage[\n '2533fab7-2fb0-4855-8a10-d55ece667f9b'\n ] < activeStage\n ? 'active'\n : '',\n h:\n financialPlanningOpportunityStage[\n '2d159854-8941-45c4-87df-9cfe05a27bee'\n ] < activeStage\n ? 'active'\n : '',\n i:\n financialPlanningOpportunityStage[\n 'ed46d589-c988-4fff-86da-a7cee673f375'\n ] < activeStage\n ? 'active'\n : '',\n j:\n financialPlanningOpportunityStage[\n 'ecd6e91a-2ed8-4222-b45c-b41ca49685b6'\n ] <= activeStage\n ? 'active'\n : '',\n },\n ],\n };\n this.debtstageActive.push(data.children[0]);\n this.openApplication.push(data);\n } else if (element.tlx_leadfor == 3) {\n // console.log(element);\n const opprtunityName = element.name.split(' - ');\n // const activeStage = opportunityStage[`${element._activestageid_value}`];\n\n const data = {\n name: opprtunityName[1] ? opprtunityName[1] : opprtunityName[0],\n // stage: element._activestageid_value_Formatted,\n children: [\n {\n showData: false,\n name: opprtunityName[1] ? opprtunityName[1] : opprtunityName[0],\n leadFor: element.tlx_leadfor,\n // currentStage: element._activestageid_value,\n oppID: element.opportunityid,\n },\n ],\n };\n this.debtstageActive.push(data.children[0]);\n this.openApplication.push(data);\n }\n });\n }\n showComingSoon() {\n this.auth.showSnackBarMsg('Coming Soon!');\n }\n\n disableOpportunity(oppID: string, leadFor: number) {\n console.log(oppID);\n this.ToggleSubnav('application');\n const dialogRef = this.dialog.open(WithdrawOpportunityPopupComponent, {\n width: '720px',\n position: { right: '0', bottom: '0' },\n data: { type: 'add', data: oppID, leadFor },\n });\n }\n\n ToggleSubnav(element) {\n if (element == 'dashboard') {\n this.auth.showSnackBarMsg('Coming Soon!');\n }\n if (this.activeNav !== element) {\n this.activeNav = element;\n } else {\n this.activeNav = '';\n }\n }\n\n closeSubnav() {\n this.activeNav = '';\n }\n goto(route: string) {\n this.redirectToURL(route);\n this.closeSubnav();\n }\n\n redirectToURL(url = '') {\n // this.router.navigate([url]);\n // window.scroll(0, 0);\n this.auth.gotoUrl(url);\n }\n\n gotoDebtCurrentStage(stage: string) {\n // console.log(stage);\n const url = this.auth.getDebtCurrentUrl(stage);\n // console.log('url');\n // console.log(url);\n this.closeSubnav();\n this.redirectToURL(url);\n }\n gotoSuperannuationCurrentStage(stage: string) {\n const url = this.auth.getSuperCurrentUrl(stage);\n this.closeSubnav();\n this.redirectToURL(url);\n }\n gotomanagedinvestmentCurrentStage(stage: string) {\n const url = this.auth.getmanagedInvestmentCurrentUrl(stage);\n this.closeSubnav();\n this.redirectToURL(url);\n }\n gotoGeneralInsuranceCurrentStage(stage: string) {\n const url = this.auth.getGeneralInsuranceCurrentUrl(stage);\n this.closeSubnav();\n this.redirectToURL(url);\n }\n gotoHealthInsuranceCurrentStage(stage: string) {\n const url = this.auth.getHealthInsuranceCurrentUrl(stage);\n this.closeSubnav();\n this.redirectToURL(url);\n }\n gotoEstatePlanningCurrentStage(stage: string) {\n const url = this.auth.getEstatePlanningCurrentUrl(stage);\n this.closeSubnav();\n this.redirectToURL(url);\n }\n\n gotoFinancialPlanningCurrentStage(stage: string) {\n const url = this.auth.getFinancialPlanningCurrentUrl(stage);\n this.closeSubnav();\n this.redirectToURL(url);\n }\n}\n","\n\n\n\n\n\n\n\n\n\n\n
\n
\n
\n
Family
\n \n close\n \n\n
\n
\n \n \n \n\n \n\n\n\n \n\n \n \n \n \n \n \n
\n
\n\n\n\n\n\n\n \n\n\n\n\n\n \n\n\n\n\n\n\n\n
\n
\n
\n
Application
\n \n close\n \n \n
\n
\n \n
0\">\n
\n \n \n credit_card\n \n \n
\n\n \n remove\n
\n
\n\n \n add \n \n
\n
\n \n
\n \n \n \n \n \n \n \n \n \n
\n \n\n
\n\n\n \n
\n \n \n \n \n
\n\n
\n\n\n\n\n\n","/**\n * Local storage names used in application\n */\nexport const LocalStorage = {\n userToken: 'USER_TOKEN',\n image: 'USER_IMAGE',\n opportunityid: 'OPPORTUNITY_ID',\n oppData: 'ALL_OPPORTUNITY',\n url: 'URL',\n url2: 'URL2',\n superOppId: 'SUPER_OPP_ID',\n investmentOppId: 'INVESTMENT_OPP_ID',\n healthOppId: 'HEALTH_OPP_ID',\n generalOppId: 'GENERAL_OPP_ID',\n estateOppId: 'ESTATE_OPP_ID',\n financialOppId: 'FINANCIAL_OPP_ID',\n lifeOppId: 'LIFE_OPP_ID',\n partnerId: 'PARTNER_ID',\n relatedMember: 'RELATED_MEMBER',\n insuranceProvider: 'INSURANCE_PROVIDER',\n decodedToken: 'DECODED_TOKEN',\n illionInstitute: 'ILLION_INSTITUTE',\n creditFileReviewFlag: 'CREDIT_FILE_REVIEW_FLAG',\n occupation: 'OCCUPATION',\n allCountries: 'ALL_COUNTRIES'\n};\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { MatMenuModule } from '@angular/material/menu';\n\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatAutocompleteModule } from '@angular/material/autocomplete';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatButtonToggleModule } from '@angular/material/button-toggle';\nimport { MatCardModule } from '@angular/material/card';\nimport { MatCheckboxModule } from '@angular/material/checkbox';\nimport { MatChipsModule } from '@angular/material/chips';\nimport { MatDatepickerModule } from '@angular/material/datepicker';\nimport { MAT_DATE_LOCALE } from '@angular/material/core';\nimport { MatDialogModule, MatDialogRef } from '@angular/material/dialog';\nimport { MatDividerModule } from '@angular/material/divider';\nimport { MatExpansionModule } from '@angular/material/expansion';\nimport { MatGridListModule } from '@angular/material/grid-list';\nimport { MatInputModule } from '@angular/material/input';\nimport { MatListModule } from '@angular/material/list';\nimport { MatPaginatorModule } from '@angular/material/paginator';\nimport { MatProgressBarModule } from '@angular/material/progress-bar';\nimport { MatProgressSpinnerModule } from '@angular/material/progress-spinner';\nimport { MatRadioModule } from '@angular/material/radio';\nimport { MatRippleModule } from '@angular/material/core';\nimport { MatSelectModule } from '@angular/material/select';\nimport { MatSidenavModule } from '@angular/material/sidenav';\nimport { MatSliderModule } from '@angular/material/slider';\nimport { MatSlideToggleModule } from '@angular/material/slide-toggle';\nimport { MatSnackBarModule } from '@angular/material/snack-bar';\nimport { MatSortModule } from '@angular/material/sort';\nimport { MatStepperModule } from '@angular/material/stepper';\nimport { MatTableModule } from '@angular/material/table';\nimport { MatTabsModule } from '@angular/material/tabs';\nimport { MatToolbarModule } from '@angular/material/toolbar';\nimport { MatTooltipModule } from '@angular/material/tooltip';\n// import {MatFileUploadModule } from 'angular-material-fileupload';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatNativeDateModule } from '@angular/material/core';\nimport { MatTreeModule } from '@angular/material/tree';\n\n@NgModule({\n imports: [\n CommonModule,\n MatAutocompleteModule,\n MatButtonModule,\n MatButtonToggleModule,\n MatCardModule,\n MatCheckboxModule,\n MatChipsModule,\n MatDatepickerModule,\n MatDialogModule,\n MatDividerModule,\n MatExpansionModule,\n MatGridListModule,\n MatIconModule,\n MatInputModule,\n MatListModule,\n MatMenuModule,\n MatPaginatorModule,\n MatProgressBarModule,\n MatProgressSpinnerModule,\n MatRadioModule,\n MatRippleModule,\n MatSelectModule,\n MatSidenavModule,\n MatSliderModule,\n MatSlideToggleModule,\n MatSnackBarModule,\n MatSortModule,\n MatStepperModule,\n MatTableModule,\n MatTabsModule,\n MatToolbarModule,\n MatTooltipModule,\n MatInputModule,\n MatPaginatorModule,\n MatProgressSpinnerModule,\n MatSortModule,\n MatTableModule,\n MatTreeModule,\n\n // MatFileUploadModule,\n MatNativeDateModule,\n MatFormFieldModule,\n ],\n declarations: [],\n exports: [\n MatButtonModule,\n MatButtonToggleModule,\n MatCardModule,\n MatCheckboxModule,\n MatChipsModule,\n MatDatepickerModule,\n MatDialogModule,\n MatDividerModule,\n MatExpansionModule,\n MatGridListModule,\n MatIconModule,\n MatInputModule,\n MatListModule,\n MatMenuModule,\n MatPaginatorModule,\n MatProgressBarModule,\n MatProgressSpinnerModule,\n MatRadioModule,\n MatRippleModule,\n MatSelectModule,\n MatSidenavModule,\n MatSliderModule,\n MatSlideToggleModule,\n MatSnackBarModule,\n MatSortModule,\n MatStepperModule,\n MatTableModule,\n MatTabsModule,\n MatToolbarModule,\n MatTooltipModule,\n MatInputModule,\n MatPaginatorModule,\n MatProgressSpinnerModule,\n MatSortModule,\n MatTableModule,\n MatAutocompleteModule,\n // MatFileUploadModule,\n MatNativeDateModule,\n MatFormFieldModule,\n ],\n providers: [\n {\n provide: MatDialogRef,\n useValue: {},\n },\n ],\n})\nexport class MaterialComponentsModule {}\n","import { EventEmitter, Injectable } from '@angular/core';\nimport { BehaviorSubject, Observable, Subject } from 'rxjs';\nimport { of as observableOf } from 'rxjs';\nimport { LocalStorage as SessionStorage } from '../constants/local-storage';\nimport jwt_decode from 'jwt-decode';\nimport { MatDialog } from '@angular/material/dialog';\nimport { AutoLogoutComponent } from '../components/auto-logout/auto-logout.component';\nimport { MatSnackBar } from '@angular/material/snack-bar';\nimport { Router } from '@angular/router';\n\nenum debtOpportunityStage {\n ConfirmLoanNeeds = 'ece3b3ec-e98a-4d95-8ce0-eff28d771b26',\n ConfirmPersonalDetails = '2d8c0501-6d5d-4f7e-a0c0-e9afe7c52164',\n GatherSupportingDocuments = '2eda2878-affb-4fb3-ae3a-7d86a737a786',\n ProductRecommendation = 'ba486328-0485-4273-b4ab-9a9faaa22423',\n SubmissionToLender = 'f041dfe1-8e90-430c-9eb8-85ced7da8386',\n LoanApproval = '9ffd96ef-b806-4871-bf37-1a77a7edafc0',\n Loan = '4cbe1585-4102-4ea1-bf17-a9e5328020d5',\n SettlementBooked = '5da0f5ec-d070-48cf-946e-b4977631459a',\n SettlementComplete = '16a09f15-0fef-4315-853b-83d47be3b241',\n}\nenum SuperOpportunityStage {\n ConfirmNeeds = 'a11f4588-28ec-8a7a-86f4-1d06dd4200cb',\n CompleteFactFind = '2ee1ba75-0b75-40c9-9a75-9106f4182f16',\n GatherDocuments = 'bf20f70a-8f44-4ef6-8e28-2de5fe2921c9',\n ProductAndStrategyRecommendations = 'df4ce430-ccee-4a24-b922-da984b27adb9',\n ComplianceReview = 'b43ca487-1cca-40a5-8fbd-de322210386f',\n ClientPresentation = '25e0e995-b9bd-4269-a68d-87df4a17b455',\n ProcessApplication = '49e1509f-5970-42bd-85ae-0763915eae08',\n SettleRolloversAndInvestments = 'b50c99a7-a462-4b92-b960-b3a28f3de9a8',\n OngoingReview = '86a29103-435a-4d13-bfcf-7509cdedd7d7',\n}\nexport enum managedInvestmentOpportunityStage {\n ConfirmInvestmentAccountNeeds = '7a2e74cf-784e-4a40-a6d4-52a78cfaddb1',\n CompleteFactFind = '56b2b8c3-810b-4538-b3da-dcabd8b82a27',\n GatherDocuments = '245e5731-0211-428d-aaf0-96bb04702f7d',\n ProductAndStrategyRecommendations = 'bf12435e-14a5-49b1-94ad-1587b1f50f66',\n ComplianceReview = 'ad8aa40b-c284-4eb7-a0e4-644035d7cd6a',\n ClientPresentation = '5ec99075-3775-4a62-9984-4a9c2f64cc9c',\n ProcessApplication = '8f49837e-20bd-4909-a1bc-f7f55c0f0bb2',\n SettleRolloversAndInvestments = 'a6f4e59d-8c3d-4b40-bace-b93e1ebed4a2',\n OngoingReview = '18101044-3c51-45f5-8b2b-4bc8405047c8',\n}\nexport enum generalInsuranceOpportunityStage {\n ConfirmGeneralInsuranceNeeds = '3d2d49c7-17f7-4e61-be92-7aec9d824fe9',\n CompleteFactFind = '1e95aa1f-ce10-4a49-869f-73a17d4291cd',\n GatherDocuments = 'daa80418-f805-49d1-a5ed-24d6b515529c',\n ReferToInsuranceProvider = '7297956a-c73c-4971-ae62-e32114e29182',\n ConfirmInsuranceIsInForce = '06ddfd5e-8e72-47f5-b507-51534d4b62b3',\n OngoingReview = '81c266c2-9e8b-4dba-9e1f-93b7b92ef672',\n}\nexport enum HealthInsuranceOpportunityStage {\n ConfirmHealthInsuranceNeeds = 'dd7d0688-38bc-484f-b3b6-00d974c00b3d',\n CompleteFactFind = 'a7e8150f-e667-4e32-a250-9f0e2aa4f1e9',\n GatherDocuments = '7279b36d-eb5b-42d8-a413-00b20233209b',\n ReferToInsuranceProvider = '59b5f987-c91a-4f54-9171-7c1084a7f1cd',\n ConfirmInsuranceIsInForce = '95c0ac62-c756-489a-a5ba-fd80097b3895',\n OngoingReview = 'cb3d67b2-d699-47bf-945d-4828c8be0e3e',\n}\nexport enum EstatePlanningOpportunityStage {\n ConfirmEstatePlanningNeeds = '860c244b-9214-48f4-942e-267926726fdb',\n CompleteFactFind = 'd408967b-797a-48f2-9200-4233ff61d00d',\n GatherDocuments = 'c8d01d17-01f1-4e6e-9db9-545ffed1f890',\n ReferToLawyer = '143a267d-bfe0-48bb-9d5c-109c2f6c17b1',\n ConfirmEstatePlanIsInPlace = 'b4878a2f-d020-4b70-82a6-25b3fecc6f00',\n OngoingReview = 'dd752a5e-b234-4241-912f-a8937dab14ee',\n}\nexport enum FinancialPlanningOpportunityStage {\n ConfirmFinancialPlanningNeeds = '97f16148-4f74-4ead-887d-c3546a6e8cf9',\n CompleteFactFind = '05de9ac0-c6cb-458d-8ce9-7b15f27f20d3',\n GatherDocuments = '47153fb5-92e1-4256-97c9-19e17695e210',\n ProductAndStrategyRecommendations = '761cd62f-cb3d-462c-86e9-d82be5aab55d',\n ComplianceReview = '274a2637-1ce8-414e-a870-1d581b726c89',\n ClientPresentation = '2533fab7-2fb0-4855-8a10-d55ece667f9b',\n ProcessApplication = '2d159854-8941-45c4-87df-9cfe05a27bee',\n SettleRolloversAndInvestments = 'ed46d589-c988-4fff-86da-a7cee673f375',\n OngoingReview = 'ecd6e91a-2ed8-4222-b45c-b41ca49685b6',\n}\nenum opportunityRouteBaseOnStage {\n 'ece3b3ec-e98a-4d95-8ce0-eff28d771b26' = '../financial-goal',\n '2d8c0501-6d5d-4f7e-a0c0-e9afe7c52164' = '/user/confirm-identity-and-income',\n '2eda2878-affb-4fb3-ae3a-7d86a737a786' = '/user/complete-review-outstanding-items',\n 'ba486328-0485-4273-b4ab-9a9faaa22423' = '/user/product-recommendation',\n 'f041dfe1-8e90-430c-9eb8-85ced7da8386' = '/user/submission-to-lender',\n '9ffd96ef-b806-4871-bf37-1a77a7edafc0' = '/user/loan-approval',\n '4cbe1585-4102-4ea1-bf17-a9e5328020d5' = '/user/loan-document',\n '5da0f5ec-d070-48cf-946e-b4977631459a' = '/user/settlement-booked',\n '16a09f15-0fef-4315-853b-83d47be3b241' = '/user/settlement-complete',\n}\nenum SuperOpportunityRouteBaseOnStage {\n 'a11f4588-28ec-8a7a-86f4-1d06dd4200cb' = '/superannuation',\n '2ee1ba75-0b75-40c9-9a75-9106f4182f16' = '/superannuation/confirm-identity-and-income',\n 'bf20f70a-8f44-4ef6-8e28-2de5fe2921c9' = '/superannuation/complete-review-outstanding-items',\n 'df4ce430-ccee-4a24-b922-da984b27adb9' = ' ',\n 'b43ca487-1cca-40a5-8fbd-de322210386f' = ' ',\n '25e0e995-b9bd-4269-a68d-87df4a17b455' = ' ',\n '49e1509f-5970-42bd-85ae-0763915eae08' = ' ',\n 'b50c99a7-a462-4b92-b960-b3a28f3de9a8' = ' ',\n '86a29103-435a-4d13-bfcf-7509cdedd7d7' = ' ',\n}\nenum managedInvestmentOpportunityRouteBaseOnStage {\n '7a2e74cf-784e-4a40-a6d4-52a78cfaddb1' = '/managed-account',\n '56b2b8c3-810b-4538-b3da-dcabd8b82a27' = '/managed-account/investment-risk-profile',\n '245e5731-0211-428d-aaf0-96bb04702f7d' = '/managed-account/complete-review-outstanding-items',\n 'bf12435e-14a5-49b1-94ad-1587b1f50f66' = '',\n 'ad8aa40b-c284-4eb7-a0e4-644035d7cd6a' = '',\n '5ec99075-3775-4a62-9984-4a9c2f64cc9c' = '',\n '8f49837e-20bd-4909-a1bc-f7f55c0f0bb2' = '',\n 'a6f4e59d-8c3d-4b40-bace-b93e1ebed4a2' = '',\n '18101044-3c51-45f5-8b2b-4bc8405047c8' = '',\n}\nenum GeneralInsuranceOpportunityRouteBaseOnStage {\n '3d2d49c7-17f7-4e61-be92-7aec9d824fe9' = '/general-insurance',\n '1e95aa1f-ce10-4a49-869f-73a17d4291cd' = '/general-insurance/insurance-advice',\n 'daa80418-f805-49d1-a5ed-24d6b515529c' = '/general-insurance/complete-review-outstanding-items',\n '7297956a-c73c-4971-ae62-e32114e29182' = '',\n '06ddfd5e-8e72-47f5-b507-51534d4b62b3' = '',\n '81c266c2-9e8b-4dba-9e1f-93b7b92ef672' = '',\n}\nenum HealthInsuranceOpportunityRouteBaseOnStage {\n 'dd7d0688-38bc-484f-b3b6-00d974c00b3d' = '/health-insurance',\n 'a7e8150f-e667-4e32-a250-9f0e2aa4f1e9' = '/health-insurance/insurance',\n '7279b36d-eb5b-42d8-a413-00b20233209b' = '/health-insurance/complete-review-outstanding-items',\n '59b5f987-c91a-4f54-9171-7c1084a7f1cd' = '',\n '95c0ac62-c756-489a-a5ba-fd80097b3895' = '',\n 'cb3d67b2-d699-47bf-945d-4828c8be0e3e' = '',\n}\nenum EstatePlanningOpportunityRouteBaseOnStage {\n '860c244b-9214-48f4-942e-267926726fdb' = '/estate-planning',\n 'd408967b-797a-48f2-9200-4233ff61d00d' = '/estate-planning/tell-us-about-your-family',\n 'c8d01d17-01f1-4e6e-9db9-545ffed1f890' = '/estate-planning/complete-review-outstanding-items',\n '143a267d-bfe0-48bb-9d5c-109c2f6c17b1' = '',\n 'b4878a2f-d020-4b70-82a6-25b3fecc6f00' = '',\n 'dd752a5e-b234-4241-912f-a8937dab14ee' = '',\n}\n\nenum FinancialPlanningOpportunityRouteBaseOnStage {\n '97f16148-4f74-4ead-887d-c3546a6e8cf9' = '/financial-planning',\n '05de9ac0-c6cb-458d-8ce9-7b15f27f20d3' = '/financial-planning/financial-goal',\n '47153fb5-92e1-4256-97c9-19e17695e210' = '/financial-planning/complete-review-outstanding-items',\n '761cd62f-cb3d-462c-86e9-d82be5aab55d' = '',\n '274a2637-1ce8-414e-a870-1d581b726c89' = '',\n '2533fab7-2fb0-4855-8a10-d55ece667f9b' = '',\n '2d159854-8941-45c4-87df-9cfe05a27bee' = '',\n 'ed46d589-c988-4fff-86da-a7cee673f375' = '',\n 'ecd6e91a-2ed8-4222-b45c-b41ca49685b6' = '',\n}\n/**\n * AuthenticationService\n * @description\n * This is auth service, responsible for managing the Authentication related task.\n */\n\nconst MINUTES_UNITL_AUTO_LOGOUT = 15; // in mins\nconst CHECK_INTERVAL = 15000; // in ms\nconst STORE_KEY = 'lastAction';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class AuthenticationService {\n isLoggedIn = false;\n triggerEmailDocumentFlow = false;\n resetUserForm = new EventEmitter();\n headerImage = new Subject();\n headerDetail = new Subject();\n userDetail = new Subject();\n TimeOutVariable: number;\n newOpportunity = new EventEmitter();\n disableOpp = new Subject();\n updateImage = new Subject();\n fetchingData = new Subject();\n updateclientData = new Subject();\n opportunityType = {\n 854500000: 'Refinance my debt',\n 854500001: 'Buy a property',\n 854500002: 'Buy a car or equipment',\n 854500003: 'Apply for cash out to invest or renovate',\n 854500004: 'Acquire a business or refinance business debts',\n 854500005: 'Borrow or refinance debt in my SMSF',\n };\n constructor(\n public dialog: MatDialog,\n private snackBar: MatSnackBar,\n private router: Router\n ) {\n this.check();\n this.initListener();\n this.initInterval();\n }\n\n // Auto logout functionality\n public getLastAction() {\n return parseInt(localStorage.getItem(STORE_KEY), 10);\n }\n public setLastAction(lastAction: number) {\n localStorage.setItem(STORE_KEY, lastAction.toString());\n }\n\n initListener() {\n document.body.addEventListener('click', () => this.reset());\n document.body.addEventListener('mouseover', () => this.reset());\n document.body.addEventListener('mouseout', () => this.reset());\n document.body.addEventListener('keydown', () => this.reset());\n document.body.addEventListener('keyup', () => this.reset());\n document.body.addEventListener('keypress', () => this.reset());\n }\n\n reset() {\n this.setLastAction(Date.now());\n }\n\n initInterval() {\n setInterval(() => {\n this.check();\n }, CHECK_INTERVAL);\n }\n\n check() {\n const now = Date.now();\n const timeleft =\n this.getLastAction() + MINUTES_UNITL_AUTO_LOGOUT * 60 * 1000;\n const diff = timeleft - now;\n const isTimeout = diff < 0;\n\n if (isTimeout) {\n if (this.getLoginUserId()) {\n const dialogRef = this.dialog.open(AutoLogoutComponent, {\n width: '530px',\n // data: { xreadId: id, type: typeInput }\n });\n\n dialogRef.afterClosed().subscribe((result) => {\n if (result) {\n if (result.logout) {\n this.dialog.closeAll();\n this.logout();\n }\n }\n this.reset();\n });\n\n // this.dialog.closeAll();\n // this.logout();\n localStorage.removeItem(STORE_KEY);\n localStorage.clear();\n }\n }\n }\n\n /**\n * Check if used is authenticated or not\n */\n IsAuthUser(): boolean {\n if (\n window.sessionStorage[SessionStorage.userToken] &&\n JSON.parse(window.sessionStorage[SessionStorage.userToken]).authToken\n ) {\n this.isLoggedIn = true;\n\n return true;\n } else {\n return false;\n }\n }\n IsAuthenticated() {\n const promise = new Promise((resolve, reject) => {\n resolve(this.IsAuthUser());\n });\n return promise;\n }\n\n /**\n * Update token\n * @param data token to update\n */\n updateLoginUserDetail(data: any) {\n if (window.sessionStorage[SessionStorage.userToken]) {\n const authObject = JSON.parse(\n window.sessionStorage[SessionStorage.userToken]\n );\n // Update the user details here\n window.sessionStorage[SessionStorage.userToken] =\n JSON.stringify(authObject);\n }\n }\n showSnackBarMsg(msg: string, time = 3000) {\n this.snackBar.open(msg, 'Done', {\n duration: time,\n });\n }\n getOpportunityById(id: string) {\n const allOpp = this.getAllOpportunity();\n const found = allOpp.find((el) => el.opportunityid == id);\n if (found.tlx_leadfor == 2) {\n const name = this.opportunityType[found.tlx_debtneedstransactiontype];\n return name;\n } else {\n const name = found.name.split('-');\n return name[1];\n }\n }\n\n /**\n * Get user access token in decoded form\n */\n getDecodedUserAccessToken() {\n if (this.IsAuthUser()) {\n return JSON.parse(window.sessionStorage[SessionStorage.decodedToken])\n .decodedToken;\n } else {\n return null;\n }\n }\n getUSerType() {\n const userData = this.getDecodedUserAccessToken();\n if (userData) {\n return userData.contactDetails[0].tlx_logintype;\n } else {\n return null;\n }\n }\n getUserGenderType() {\n const userData = this.getDecodedUserAccessToken();\n if (userData) {\n return userData.contactDetails[0].gendercode;\n } else {\n return null;\n }\n }\n setDecodedToken(decodedtoken: any) {\n const decodedData = { decodedToken: decodedtoken };\n window.sessionStorage[SessionStorage.decodedToken] =\n JSON.stringify(decodedData);\n\n this.userDetail.next(true);\n }\n\n // getUserDecodedToken() {\n // if (this.IsAuthUser()) {\n // return JSON.parse(window.sessionStorage[SessionStorage.decodedToken])\n // .decodedToken;\n // } else {\n // return null;\n // }\n // }\n /**\n * Get user access token from local storage\n */\n getUserAccessToken() {\n if (this.IsAuthUser()) {\n return JSON.parse(window.sessionStorage[SessionStorage.userToken])\n .authToken;\n } else {\n return null;\n }\n }\n\n /**\n * Save the logged in user detail to local storage\n * @param token token to store\n */\n setLoginUserDetail(token: any) {\n const tokenObj = { authToken: token };\n window.sessionStorage[SessionStorage.userToken] = JSON.stringify(tokenObj);\n this.isLoggedIn = true;\n this.setOpportunityinSession([]);\n this.setCreditFileFlag(true);\n this.setDecodedToken(jwt_decode(token));\n\n this.headerDetail.next(true);\n this.resetUserForm.emit(false);\n this.setPartnerid('');\n this.setAllRelatedMemberInSession([]);\n this.setAllOccupationInSession([]);\n this.setAllIllionInstatiteInSession([]);\n this.setAllInsuranceProviderInSession([]);\n this.setAllCountries([]);\n }\n\n /**\n * Get logged in user id from token\n */\n getLoginUserId() {\n const token = this.getDecodedUserAccessToken();\n if (token) {\n return token['contactId'];\n }\n return null;\n }\n /**\n * Get primary user id from token\n */\n getPrimaryUserId() {\n const token = this.getDecodedUserAccessToken();\n if (token) {\n return token['primaryContactId'];\n }\n return null;\n }\n\n getCurrentLoginUSerType() {\n if (this.getPrimaryUserId() == this.getLoginUserId()) {\n return 'primary';\n } else {\n return 'secondary';\n }\n }\n /**\n * Get employment Status from token\n */\n getEmploymentStatus() {\n const token = this.getDecodedUserAccessToken();\n if (token) {\n return token['contactDetails'][0].tlx_employmentstatus;\n }\n return null;\n }\n\n getFieldDataFromToken(fieldName: string) {\n const token = this.getDecodedUserAccessToken();\n if (token) {\n return token['contactDetails'][0][fieldName];\n }\n return null;\n }\n\n getPreservationAge() {\n const token = this.getDecodedUserAccessToken();\n if (token) {\n return token['contactDetails'][0].pepl_preservationage;\n }\n return null;\n }\n getRetirementAge() {\n const birthdayData = this.getFieldDataFromToken('birthdate');\n const birthday = new Date(birthdayData);\n birthday.setFullYear(birthday.getFullYear() + 67);\n return birthday;\n }\n getDebtCurrentUrl(currentStage: string): string {\n return opportunityRouteBaseOnStage[currentStage];\n }\n getSuperCurrentUrl(currentStage: string): string {\n return SuperOpportunityRouteBaseOnStage[currentStage];\n }\n getmanagedInvestmentCurrentUrl(currentStage: string): string {\n return managedInvestmentOpportunityRouteBaseOnStage[currentStage];\n }\n getGeneralInsuranceCurrentUrl(currentStage: string): string {\n return GeneralInsuranceOpportunityRouteBaseOnStage[currentStage];\n }\n getHealthInsuranceCurrentUrl(currentStage: string): string {\n return HealthInsuranceOpportunityRouteBaseOnStage[currentStage];\n }\n getEstatePlanningCurrentUrl(currentStage: string): string {\n return EstatePlanningOpportunityRouteBaseOnStage[currentStage];\n }\n getFinancialPlanningCurrentUrl(currentStage: string): string {\n return FinancialPlanningOpportunityRouteBaseOnStage[currentStage];\n }\n /**\n * Get logged in user email from token\n */\n getLoginUserEmail() {\n if (window.sessionStorage[SessionStorage.userToken]) {\n return JSON.parse(window.sessionStorage[SessionStorage.userToken]).Email;\n }\n }\n /**\n * Get logged in user email from token\n */\n getUserAccountId() {\n const token = this.getDecodedUserAccessToken();\n if (token) {\n return token['contactDetails'][0].accountId;\n }\n return null;\n }\n getNominationType() {\n const token = this.getDecodedUserAccessToken();\n if (token) {\n const tlx_nomination = token['contactDetails'][0].tlx_nomination + '';\n const tlx_nominationtype =\n token['contactDetails'][0].tlx_nominationtype + '';\n return { tlx_nomination, tlx_nominationtype };\n }\n return null;\n }\n setNominationType(tlx_nomination: string, tlx_nominationtype: string) {\n const userDataToken = this.getDecodedUserAccessToken();\n if (userDataToken) {\n userDataToken['contactDetails'][0].tlx_nomination = tlx_nomination;\n userDataToken['contactDetails'][0].tlx_nominationtype =\n tlx_nominationtype;\n this.setDecodedToken(userDataToken);\n }\n }\n getUserEmailId() {\n const token = this.getDecodedUserAccessToken();\n\n if (token) {\n return token['contactDetails'][0].emailaddress1;\n }\n return null;\n }\n /**\n * Gets login user name\n * @returns user name\n */\n getLoginUserName() {\n const token = this.getDecodedUserAccessToken();\n if (token) {\n return token['contactDetails'][0]['firstname'].replace(/\\s/g, '').trim();\n }\n return null;\n }\n getLoginUserFullName() {\n const token = this.getDecodedUserAccessToken();\n if (token) {\n const name = token['contactDetails'][0]['fullname'];\n return name;\n }\n return null;\n }\n /**\n * Save the logged in user image to local storage\n * @param token token to store\n */\n setLoginUserImage(image: any) {\n const tokenObj = { image: image };\n window.sessionStorage[SessionStorage.image] = JSON.stringify(tokenObj);\n this.headerImage.next(true);\n }\n\n deleteLoginUserImage() {\n const tokenObj = { image: null };\n window.sessionStorage[SessionStorage.image] = JSON.stringify(tokenObj);\n this.headerImage.next(true);\n }\n\n /**\n * Gets login image\n * @returns user image\n */\n getLoginImage() {\n if (this.IsAuthUser()) {\n return JSON.parse(window.sessionStorage[SessionStorage.image]).image;\n } else {\n return null;\n }\n }\n\n /**\n * Delete user access token\n * @param redirect Redirect url if required\n */\n deleteUserAccessToken(redirect: boolean = true) {\n window.sessionStorage.clear();\n\n // if (redirect === true) {\n // // this.router.navigate([\"/login\"]);\n // }\n }\n /**\n * Gets current opportunityId\n * @returns current opportunityId\n */\n getCurrentOpportunityId() {\n if (this.IsAuthUser()) {\n return JSON.parse(window.sessionStorage[SessionStorage.opportunityid])\n .currentOpportunityid;\n } else {\n return null;\n }\n }\n\n getCurrentSuperOpportunityId() {\n if (this.IsAuthUser()) {\n return JSON.parse(window.sessionStorage[SessionStorage.superOppId])\n ?.currentOpportunityid;\n } else {\n return null;\n }\n }\n getCurrentInvestmentAccountId(leadFor: number) {\n if (this.IsAuthUser()) {\n const allOpportunity = JSON.parse(\n window.sessionStorage[SessionStorage.oppData]\n ).oppData;\n let id;\n allOpportunity.forEach((element) => {\n if (element.tlx_leadfor == leadFor) {\n id = element._new_investmentaccount_value;\n }\n });\n return id;\n } else {\n return null;\n }\n }\n getOPPByLeadFor(leadFor: number) {\n if (this.IsAuthUser()) {\n const allOpportunity = JSON.parse(\n window.sessionStorage[SessionStorage.oppData]\n ).oppData;\n let id;\n allOpportunity.forEach((element) => {\n if (element.tlx_leadfor == leadFor) {\n id = element.opportunityid;\n }\n });\n return id;\n } else {\n return null;\n }\n }\n getDebtBusinessProcessId() {\n if (this.IsAuthUser()) {\n const allOpportunity = JSON.parse(\n window.sessionStorage[SessionStorage.oppData]\n ).oppData;\n let id;\n allOpportunity.forEach((element) => {\n if (element.tlx_leadfor == 2) {\n id = element.businessprocessflowinstanceid;\n }\n });\n return id;\n } else {\n return null;\n }\n }\n getDebtopportunity() {\n if (this.IsAuthUser()) {\n const allOpportunity = JSON.parse(\n window.sessionStorage[SessionStorage.oppData]\n ).oppData;\n let opp;\n allOpportunity.forEach((element) => {\n if (element.tlx_leadfor == 2) {\n opp = element;\n }\n });\n return opp;\n } else {\n return null;\n }\n }\n getCurrentInvestmentOpportunityId() {\n if (this.IsAuthUser()) {\n return JSON.parse(window.sessionStorage[SessionStorage.investmentOppId])\n ?.currentOpportunityid;\n } else {\n return null;\n }\n }\n getCurrentGeneralInsuranceOpportunityId() {\n if (this.IsAuthUser()) {\n return JSON.parse(window.sessionStorage[SessionStorage.generalOppId])\n ?.currentOpportunityid;\n } else {\n return null;\n }\n }\n getCurrentHealthInsuranceOpportunityId() {\n if (this.IsAuthUser()) {\n return JSON.parse(window.sessionStorage[SessionStorage.healthOppId])\n ?.currentOpportunityid;\n } else {\n return null;\n }\n }\n getCurrentEstatePlanningOpportunityId() {\n if (this.IsAuthUser()) {\n return JSON.parse(window.sessionStorage[SessionStorage.estateOppId])\n ?.currentOpportunityid;\n } else {\n return null;\n }\n }\n getCurrentFinancialPlanningOpportunityId() {\n if (this.IsAuthUser()) {\n return JSON.parse(window.sessionStorage[SessionStorage.financialOppId])\n ?.currentOpportunityid;\n } else {\n return null;\n }\n }\n\n /**\n * Gets current opportunityId\n * @returns current opportunityId\n */\n getAllOpportunity() {\n if (this.IsAuthUser()) {\n return JSON.parse(window.sessionStorage[SessionStorage.oppData]).oppData;\n } else {\n return null;\n }\n }\n\n /**\n * Save the opportunityId to local storage\n * @param token token to store\n */\n setOpportunityinSession(data) {\n const tokenObj = { oppData: data };\n window.sessionStorage[SessionStorage.oppData] = JSON.stringify(tokenObj);\n this.updateSideBar();\n }\n /**\n * Save the backurl to local storage\n * @param token token to store\n */\n setBackUrl(url) {\n const tokenObj = { backurl: url };\n window.sessionStorage[SessionStorage.url] = JSON.stringify(tokenObj);\n }\n\n /**\n * Save the credit file to local storage\n * @param token token to store\n */\n setCreditFileFlag(a: boolean) {\n const tokenObj = { flag: a };\n window.sessionStorage[SessionStorage.creditFileReviewFlag] =\n JSON.stringify(tokenObj);\n }\n /**\n * Gets credit file review url\n * @returns\n */\n getCreditFileFlag() {\n if (this.IsAuthUser()) {\n return JSON.parse(\n window.sessionStorage[SessionStorage.creditFileReviewFlag]\n ).flag;\n } else {\n return null;\n }\n }\n\n /**\n * Save the backurl to local storage for notification section\n * @param token token to store\n */\n setNotificationBackUrl(url) {\n const tokenObj = { backurl: url };\n window.sessionStorage[SessionStorage.url2] = JSON.stringify(tokenObj);\n }\n /**\n * Gets back url\n * @returns\n */\n getbackurl() {\n if (this.IsAuthUser()) {\n return JSON.parse(window.sessionStorage[SessionStorage.url]).backurl;\n } else {\n return null;\n }\n }\n /**\n * Gets back url\n * @returns\n */\n getbackNotificationurl() {\n if (this.IsAuthUser()) {\n return JSON.parse(window.sessionStorage[SessionStorage.url2]).backurl;\n } else {\n return null;\n }\n }\n\n updateSideBar() {\n this.newOpportunity.emit(true);\n }\n\n updtateOpportunityStage(value) {\n const currentOpportunityid = this.getCurrentOpportunityId();\n\n const allOpportunity = this.getAllOpportunity();\n\n const newOpportunity = [];\n allOpportunity.forEach((element) => {\n if (element._bpf_opportunityid_value === currentOpportunityid) {\n element._activestageid_value = debtOpportunityStage[`${value}`];\n element._activestageid_value_Formatted = value;\n }\n newOpportunity.push(element);\n });\n this.setOpportunityinSession(newOpportunity);\n // this.newOpportunity.emit(true);\n }\n updtateSuperOpportunityStage(value) {\n const currentOpportunityid = this.getCurrentSuperOpportunityId();\n\n const allOpportunity = this.getAllOpportunity();\n\n const newOpportunity = [];\n allOpportunity.forEach((element) => {\n if (element._bpf_opportunityid_value === currentOpportunityid) {\n element._activestageid_value = SuperOpportunityStage[`${value}`];\n element._activestageid_value_Formatted = value;\n }\n newOpportunity.push(element);\n });\n this.setOpportunityinSession(newOpportunity);\n // this.newOpportunity.emit(true);\n }\n updtatemanagedInvestmentOpportunityStage(value) {\n const currentOpportunityid = this.getCurrentInvestmentOpportunityId();\n\n const allOpportunity = this.getAllOpportunity();\n\n const newOpportunity = [];\n allOpportunity.forEach((element) => {\n if (element._bpf_opportunityid_value === currentOpportunityid) {\n element._activestageid_value =\n managedInvestmentOpportunityStage[`${value}`];\n element._activestageid_value_Formatted = value;\n }\n newOpportunity.push(element);\n });\n this.setOpportunityinSession(newOpportunity);\n // this.newOpportunity.emit(true);\n }\n updtateGeneralInsuranceOpportunityStage(value) {\n const currentOpportunityid = this.getCurrentGeneralInsuranceOpportunityId();\n\n const allOpportunity = this.getAllOpportunity();\n\n const newOpportunity = [];\n allOpportunity.forEach((element) => {\n if (element._bpf_opportunityid_value === currentOpportunityid) {\n element._activestageid_value =\n generalInsuranceOpportunityStage[`${value}`];\n element._activestageid_value_Formatted = value;\n }\n newOpportunity.push(element);\n });\n this.setOpportunityinSession(newOpportunity);\n // this.newOpportunity.emit(true);\n }\n\n updtateHealthInsuranceOpportunityStage(value) {\n const currentOpportunityid = this.getCurrentHealthInsuranceOpportunityId();\n\n const allOpportunity = this.getAllOpportunity();\n\n const newOpportunity = [];\n allOpportunity.forEach((element) => {\n if (element._bpf_opportunityid_value === currentOpportunityid) {\n element._activestageid_value =\n HealthInsuranceOpportunityStage[`${value}`];\n element._activestageid_value_Formatted = value;\n }\n newOpportunity.push(element);\n });\n this.setOpportunityinSession(newOpportunity);\n // this.newOpportunity.emit(true);\n }\n\n updtateEstatePlanningOpportunityStage(value) {\n const currentOpportunityid = this.getCurrentEstatePlanningOpportunityId();\n\n const allOpportunity = this.getAllOpportunity();\n\n const newOpportunity = [];\n allOpportunity.forEach((element) => {\n if (element._bpf_opportunityid_value === currentOpportunityid) {\n element._activestageid_value =\n EstatePlanningOpportunityStage[`${value}`];\n element._activestageid_value_Formatted = value;\n }\n newOpportunity.push(element);\n });\n this.setOpportunityinSession(newOpportunity);\n // this.newOpportunity.emit(true);\n }\n updtateFinancialPlanningOpportunityStage(value) {\n const currentOpportunityid =\n this.getCurrentFinancialPlanningOpportunityId();\n\n const allOpportunity = this.getAllOpportunity();\n\n const newOpportunity = [];\n allOpportunity.forEach((element) => {\n if (element._bpf_opportunityid_value === currentOpportunityid) {\n element._activestageid_value =\n FinancialPlanningOpportunityStage[`${value}`];\n element._activestageid_value_Formatted = value;\n }\n newOpportunity.push(element);\n });\n this.setOpportunityinSession(newOpportunity);\n // this.newOpportunity.emit(true);\n }\n /**\n * Save the current opportunityId to local storage\n * @param token token to store\n */\n setCurrentDebtOpportunityId(id: string) {\n const tokenObj = { currentOpportunityid: id };\n window.sessionStorage[SessionStorage.opportunityid] =\n JSON.stringify(tokenObj);\n }\n setCurrentSuperOpportunityId(id: string) {\n const tokenObj = { currentOpportunityid: id };\n window.sessionStorage[SessionStorage.superOppId] = JSON.stringify(tokenObj);\n }\n setCurrentInvestmentOpportunityId(id: string) {\n const tokenObj = { currentOpportunityid: id };\n window.sessionStorage[SessionStorage.investmentOppId] =\n JSON.stringify(tokenObj);\n }\n setCurrentHealthInsuranceOpportunityId(id: string) {\n const tokenObj = { currentOpportunityid: id };\n window.sessionStorage[SessionStorage.healthOppId] =\n JSON.stringify(tokenObj);\n }\n setCurrentGeneralInsuranceOpportunityId(id: string) {\n const tokenObj = { currentOpportunityid: id };\n window.sessionStorage[SessionStorage.generalOppId] =\n JSON.stringify(tokenObj);\n }\n setCurrentEstatePlanningOpportunityId(id: string) {\n const tokenObj = { currentOpportunityid: id };\n window.sessionStorage[SessionStorage.estateOppId] =\n JSON.stringify(tokenObj);\n }\n setCurrentFinancialPlanningOpportunityId(id: string) {\n const tokenObj = { currentOpportunityid: id };\n window.sessionStorage[SessionStorage.financialOppId] =\n JSON.stringify(tokenObj);\n }\n\n setCurrentLifeInsuranceOpportunityId(id: string) {\n const tokenObj = { currentOpportunityid: id };\n window.sessionStorage[SessionStorage.lifeOppId] = JSON.stringify(tokenObj);\n }\n getCurrentLifeInsuranceOpportunityId() {\n if (this.IsAuthUser()) {\n return JSON.parse(window.sessionStorage[SessionStorage.lifeOppId])\n ?.currentOpportunityid;\n } else {\n return null;\n }\n }\n\n setAllRelatedMemberInSession(data) {\n const tokenObj = { relatedMember: data };\n window.sessionStorage[SessionStorage.relatedMember] =\n JSON.stringify(tokenObj);\n }\n setAllOccupationInSession(data) {\n const tokenObj = { occupation: data };\n window.sessionStorage[SessionStorage.occupation] = JSON.stringify(tokenObj);\n }\n getAllOccupationFromSession() {\n if (this.IsAuthUser()) {\n return JSON.parse(window.sessionStorage[SessionStorage.occupation])\n ?.occupation;\n } else {\n return null;\n }\n }\n getAllRelatedMemberFromSession() {\n if (this.IsAuthUser()) {\n return JSON.parse(window.sessionStorage[SessionStorage.relatedMember])\n ?.relatedMember;\n } else {\n return null;\n }\n }\n\n setAllCountries(data) {\n const tokenObj = { allContries: data };\n window.sessionStorage[SessionStorage.allCountries] =\n JSON.stringify(tokenObj);\n }\n\n getAllCountries() {\n if (this.IsAuthUser()) {\n return JSON.parse(window.sessionStorage[SessionStorage.allCountries])\n ?.allContries;\n } else {\n return null;\n }\n }\n setAllIllionInstatiteInSession(data) {\n const tokenObj = { allInstitute: data };\n window.sessionStorage[SessionStorage.illionInstitute] =\n JSON.stringify(tokenObj);\n }\n getAllIllionInstatiteFromSession() {\n if (this.IsAuthUser()) {\n return JSON.parse(window.sessionStorage[SessionStorage.illionInstitute])\n ?.allInstitute;\n } else {\n return null;\n }\n }\n\n setAllInsuranceProviderInSession(data) {\n const tokenObj = { provider: data };\n window.sessionStorage[SessionStorage.insuranceProvider] =\n JSON.stringify(tokenObj);\n }\n getAllInsuranceProviderFromSession() {\n if (this.IsAuthUser()) {\n return JSON.parse(window.sessionStorage[SessionStorage.insuranceProvider])\n ?.provider;\n } else {\n return null;\n }\n }\n\n setPartnerid(id: string) {\n const tokenObj = { partnerid: id };\n window.sessionStorage[SessionStorage.partnerId] = JSON.stringify(tokenObj);\n }\n getPartnerId() {\n if (this.IsAuthUser()) {\n return JSON.parse(window.sessionStorage[SessionStorage.partnerId])\n ?.partnerid;\n } else {\n return null;\n }\n }\n logout() {\n this.dialog.closeAll();\n this.deleteUserAccessToken();\n this.isLoggedIn = false;\n this.headerDetail.next(false);\n this.resetUserForm.emit(true);\n this.headerImage.next(true);\n if (this.TimeOutVariable) {\n clearTimeout(this.TimeOutVariable);\n }\n this.router.navigate(['/']);\n window.scroll(0, 0);\n }\n\n autoLogout() {\n const userData = this.getDecodedUserAccessToken();\n if (userData) {\n const dateNow = new Date();\n const expiryTime = userData.exp;\n const currentTime = dateNow.getTime() / 1000;\n const expireDuration = expiryTime - currentTime;\n const expireAfter = expireDuration * 1000;\n\n console.log('expireAfter ', expireDuration, ' sec.');\n this.TimeOutVariable = setTimeout(() => {\n this.logout();\n this.showSnackBarMsg('Token Expired, Please Login Again!', 6000);\n }, expireAfter);\n }\n }\n\n gotoUrl(url, queryParamsValue?) {\n if (queryParamsValue) {\n this.router.navigate([url], {\n queryParams: queryParamsValue,\n });\n } else {\n this.router.navigate([url]);\n }\n window.scroll(0, 0);\n }\n\n getCurrentUrl(): string {\n return this.router.url.split('?')[0];\n }\n}\n","import { Injectable } from '@angular/core';\nimport { HttpClient, HttpParams, HttpHeaders } from '@angular/common/http';\nimport { throwError, Observable } from 'rxjs';\nimport { catchError } from 'rxjs/operators';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class HttpService {\n constructor(private http: HttpClient) {}\n\n /**\n * Gets headers\n * @param token Auth token\n * @returns Http headers\n */\n private getHeaders(token): HttpHeaders {\n const headersConfig = {\n 'Content-Type': 'application/json',\n Accept: 'application/json',\n Authorization: `Bearer ${token}`,\n // 'Cache-Control': 'no-cache', // Disable IE cache\n // 'Pragma': 'no-cache', // Disable IE cache,\n };\n return new HttpHeaders(headersConfig);\n }\n\n /**\n * Formats errors\n * @param error Error received in api response\n * @returns Throw error after some processing\n */\n private handleErrors(error: any) {\n return throwError(error);\n }\n\n /**\n * Gets http service\n * @template T Generic type template\n * @param token Auth token\n * @param path Api end point\n * @param [params] Http parameters\n * @param headers Http headers\n * @returns Api response with status codes\n */\n get(\n token: string,\n path: string,\n params: HttpParams = new HttpParams(),\n headers: HttpHeaders = this.getHeaders(token)\n ): Observable {\n return this.http\n .get(path, { headers, params })\n .pipe(catchError(this.handleErrors));\n }\n\n /**\n * Posts http service\n * @template T Generic type template\n * @param token Auth token\n * @param path Api end point\n * @param [body] Post data\n * @param headers Http headers\n * @returns api Response with status codes\n */\n post(\n token: string,\n path: string,\n body: Object = {},\n headers: HttpHeaders = this.getHeaders(token)\n ): Observable {\n const requestBody = body instanceof Blob ? body : JSON.stringify(body);\n return this.http\n .post(path, requestBody, { headers })\n .pipe(catchError(this.handleErrors));\n }\n\n /**\n * Puts http service\n * @template T Generic type template\n * @param token Auth token\n * @param path Api end point\n * @param [body] Post data\n * @param headers Http headers\n * @returns Api response with status codes\n */\n put(\n token: string,\n path: string,\n body: object = {},\n headers: HttpHeaders = this.getHeaders(token)\n ): Observable {\n const requestBody = body instanceof Blob ? body : JSON.stringify(body);\n return this.http\n .put(path, requestBody, { headers })\n .pipe(catchError(this.handleErrors));\n }\n\n /**\n * Patch http service\n * @template T Generic type template\n * @param token Auth token\n * @param path Api end point\n * @param [body] Post data\n * @param headers Http headers\n * @returns Api response with status codes\n */\n patch(\n token: string,\n path: string,\n body: object = {},\n headers: HttpHeaders = this.getHeaders(token)\n ): Observable {\n const requestBody = body instanceof Blob ? body : JSON.stringify(body);\n return this.http\n .patch(path, requestBody, { headers })\n .pipe(catchError(this.handleErrors));\n }\n\n /**\n * Deletes http service\n * @template T Generic type template\n * @param token Auth token\n * @param path Api end point\n * @param headers Http headers\n * @returns Api response with status codes\n */\n delete(\n token: string,\n path: string,\n headers: HttpHeaders = this.getHeaders(token)\n ): Observable {\n return this.http\n .delete(path, { headers })\n .pipe(catchError(this.handleErrors));\n }\n}\n","/**\n * Service\n * @name app.core.LoggerService\n *\n * This is logger service, responsible for logging the messages.\n */\nimport { Injectable } from '@angular/core';\nimport { Subject } from 'rxjs';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class LoadingService {\n public _loading = false;\n loadingStatus: Subject = new Subject();\n\n /**\n * Gets loading\n *\n * It is used to get loader value.\n */\n get loading(): boolean {\n return this._loading;\n }\n\n /**\n * Sets loading\n *\n * It is used for set loading value\n */\n set loading(value) {\n this._loading = value;\n this.loadingStatus.next(value);\n }\n\n /**\n * Start loading\n *\n * It is used for start loading\n */\n startLoading() {\n this.loading = true;\n }\n\n /**\n * Stops loading\n *\n * It is used for stop loading\n */\n stopLoading() {\n this.loading = false;\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { HeaderComponent } from './components/layouts/header/header.component';\nimport { FooterComponent } from './components/layouts/footer/footer.component';\nimport { LayoutComponent } from './components/layouts/layout/layout.component';\n\nimport { LoadingComponent } from './components/loader/loader.component';\nimport { HttpClientModule, HTTP_INTERCEPTORS } from '@angular/common/http';\nimport { RouterModule } from '@angular/router';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\n// Importing custom http interceptors\nimport { MaterialComponentsModule } from './material-components.module';\nimport { AuthenticationService } from './services/authentication.service';\nimport { SideBarComponent } from './components/side-bar/side-bar.component';\nimport { MatTreeModule } from '@angular/material/tree';\nimport { AutoLogoutComponent } from './components/auto-logout/auto-logout.component';\nimport { BottomNavBarComponent } from './components/layouts/bottom-nav-bar/bottom-nav-bar.component';\nimport { SubHeaderComponent } from './components/layouts/sub-header/sub-header.component';\nimport { ResumeOrStartPopupComponent } from './components/layouts/resume-or-start-popup/resume-or-start-popup.component';\nimport { LoaderInnerComponent } from './components/loader-inner/loader-inner.component';\nimport { NgxSkeletonLoaderModule } from 'ngx-skeleton-loader';\n\nconst COMPONENTS = [\n HeaderComponent,\n FooterComponent,\n LayoutComponent,\n LoadingComponent,\n SideBarComponent,\n SubHeaderComponent,\n LoaderInnerComponent,\n];\n// const providers = [AuthenticationService];\n\n@NgModule({\n declarations: [\n ...COMPONENTS,\n AutoLogoutComponent,\n BottomNavBarComponent,\n ResumeOrStartPopupComponent,\n ],\n imports: [\n CommonModule,\n HttpClientModule,\n RouterModule,\n FormsModule,\n ReactiveFormsModule,\n MaterialComponentsModule,\n MatTreeModule,\n NgxSkeletonLoaderModule,\n ],\n // providers: [providers],\n exports: [MaterialComponentsModule, ...COMPONENTS],\n})\nexport class ThemeModule {}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { MatMenuModule } from '@angular/material/menu';\n\nimport {MatIconModule } from '@angular/material/icon';\nimport {MatAutocompleteModule} from '@angular/material/autocomplete';\nimport {MatButtonModule} from '@angular/material/button';\nimport {MatButtonToggleModule} from '@angular/material/button-toggle';\nimport {MatCardModule} from '@angular/material/card';\nimport {MatCheckboxModule} from '@angular/material/checkbox';\nimport {MatChipsModule} from '@angular/material/chips';\nimport {MatDatepickerModule} from '@angular/material/datepicker';\nimport {MatDialogModule} from '@angular/material/dialog';\nimport {MatDividerModule} from '@angular/material/divider';\nimport {MatExpansionModule} from '@angular/material/expansion';\nimport {MatGridListModule} from '@angular/material/grid-list';\nimport {MatInputModule} from '@angular/material/input';\nimport {MatListModule} from '@angular/material/list';\nimport {MatPaginatorModule} from '@angular/material/paginator';\nimport {MatProgressBarModule} from '@angular/material/progress-bar';\nimport {MatProgressSpinnerModule} from '@angular/material/progress-spinner';\nimport {MatRadioModule} from '@angular/material/radio';\nimport {MatRippleModule} from '@angular/material/core';\nimport {MatSelectModule} from '@angular/material/select';\nimport {MatSidenavModule} from '@angular/material/sidenav';\nimport {MatSliderModule} from '@angular/material/slider';\nimport {MatSlideToggleModule} from '@angular/material/slide-toggle';\nimport {MatSnackBarModule} from '@angular/material/snack-bar';\nimport {MatSortModule} from '@angular/material/sort';\nimport {MatStepperModule} from '@angular/material/stepper';\nimport {MatTableModule} from '@angular/material/table';\nimport {MatTabsModule} from '@angular/material/tabs';\nimport {MatToolbarModule} from '@angular/material/toolbar';\nimport {MatTooltipModule} from '@angular/material/tooltip';\n// import {MatFileUploadModule } from 'angular-material-fileupload';\nimport {MatFormFieldModule} from '@angular/material/form-field';\nimport {MatNativeDateModule} from '@angular/material/core';\nimport { MatTreeModule } from '@angular/material/tree';\n\n@NgModule({\n imports: [\n CommonModule,\n MatAutocompleteModule,\n MatButtonModule,\n MatButtonToggleModule,\n MatCardModule,\n MatCheckboxModule,\n MatChipsModule,\n MatDatepickerModule,\n MatDialogModule,\n MatDividerModule,\n MatExpansionModule,\n MatGridListModule,\n MatIconModule,\n MatInputModule,\n MatListModule,\n MatMenuModule,\n MatPaginatorModule,\n MatProgressBarModule,\n MatProgressSpinnerModule,\n MatRadioModule,\n MatRippleModule,\n MatSelectModule,\n MatSidenavModule,\n MatSliderModule,\n MatSlideToggleModule,\n MatSnackBarModule,\n MatSortModule,\n MatStepperModule,\n MatTableModule,\n MatTabsModule,\n MatToolbarModule,\n MatTooltipModule,\n MatInputModule,\n MatPaginatorModule,\n MatProgressSpinnerModule,\n MatSortModule,\n MatTableModule,\n // MatFileUploadModule,\n MatNativeDateModule,\n MatFormFieldModule,\n MatTreeModule\n ],\n declarations: [],\n exports: [\n MatButtonModule,\n MatButtonToggleModule,\n MatCardModule,\n MatCheckboxModule,\n MatChipsModule,\n MatDatepickerModule,\n MatDialogModule,\n MatDividerModule,\n MatExpansionModule,\n MatGridListModule,\n MatIconModule,\n MatInputModule,\n MatListModule,\n MatMenuModule,\n MatPaginatorModule,\n MatProgressBarModule,\n MatProgressSpinnerModule,\n MatRadioModule,\n MatRippleModule,\n MatSelectModule,\n MatSidenavModule,\n MatSliderModule,\n MatSlideToggleModule,\n MatSnackBarModule,\n MatSortModule,\n MatStepperModule,\n MatTableModule,\n MatTabsModule,\n MatToolbarModule,\n MatTooltipModule,\n MatInputModule,\n MatPaginatorModule,\n MatProgressSpinnerModule,\n MatSortModule,\n MatTableModule,\n MatAutocompleteModule,\n // MatFileUploadModule,\n MatNativeDateModule,\n MatFormFieldModule,\n MatTreeModule\n ]\n})\nexport class MaterialComponentsModule { }\n","import { Component, OnInit } from '@angular/core';\nimport { AuthenticationService } from 'src/app/core/services/authentication.service';\nimport { LoadingService } from 'src/app/core/services/loader.service';\nimport { UsersService } from '../users/services/users.service';\n\n// const ELEMENT_DATA = [\n// {\n// type: 'test',\n// name: 'Refinance my debt',\n// amount: '200$',\n// date: '26/12/20',\n// status: 'won',\n// },\n// {\n// type: 'test',\n// name: 'Buy a car or equipment',\n// amount: '200$',\n// date: '26/12/20',\n// status: 'won',\n// },\n// {\n// type: 'test',\n// name: 'Acquire a business or refinance business debt',\n// amount: '2090$',\n// date: '26/12/20',\n// status: 'won',\n// },\n// {\n// type: 'test',\n// name: 'Refinance my debt',\n// amount: '200$',\n// date: '26/12/20',\n// status: 'won',\n// },\n// {\n// type: 'test',\n// name: 'Buy a car or equipment',\n// amount: '200$',\n// date: '26/12/20',\n// status: 'won',\n// },\n// {\n// type: 'test',\n// name: 'Acquire a business or refinance business debt',\n// amount: '2090$',\n// date: '26/12/20',\n// status: 'won',\n// },\n// ];\n\n@Component({\n selector: 'app-completed-opportunities',\n templateUrl: './completed-opportunities.component.html',\n styleUrls: ['./completed-opportunities.component.scss'],\n})\nexport class CompletedOpportunitiesComponent implements OnInit {\n displayedColumns: string[] = ['name', 'amount', 'date', 'status'];\n dataSourceTable = [];\n public token;\n contactId: string;\n noOpportunity = false;\n accountId: string;\n constructor(\n private userService: UsersService,\n private auth: AuthenticationService,\n private loadingService: LoadingService,\n ) {}\n\n ngOnInit(): void {\n this.contactId = this.auth.getPrimaryUserId();\n this.accountId = this.auth.getUserAccountId();\n this.token = this.auth.getUserAccessToken();\n this.getCompletedApplications();\n }\n\n getCompletedApplications() {\n this.loadingService.startLoading();\n this.userService\n .getCompletedOpportunity(this.token, this.accountId)\n .subscribe(\n (response) => {\n this.dataSourceTable = [];\n this.loadingService.stopLoading();\n // console.log(response);\n if (response) {\n if (response.data.length == 0) {\n this.noOpportunity = true;\n }\n response.data.forEach((element) => {\n const opprtunityName = element.name.split(' - ');\n const newData = {\n type: element.new_transactiontype_Formatted,\n name: opprtunityName[1],\n amount: element.budgetamount,\n date: element.createdon_Formatted,\n status: element.statecode_Formatted,\n };\n this.dataSourceTable.push(newData);\n });\n if (this.dataSourceTable.length == 0) {\n this.auth.showSnackBarMsg('Currently, there is no completed application.', 5000)\n }\n }\n },\n (error) => {\n console.log(error);\n this.loadingService.stopLoading();\n this.auth.showSnackBarMsg('Please Select a Valid Company!')\n }\n );\n }\n\n onBack() {\n const backUrl = this.auth.getbackurl();\n // console.log(backUrl);\n if (backUrl) {\n // this.router.navigate([`${backUrl}`]);\n this.auth.gotoUrl(`${backUrl}`);\n } else {\n this.auth.showSnackBarMsg('You can not go back, Please login again')\n }\n }\n}\n","\n\n\n\n\n
\n
\n \n\n
0 \">\n
\n

Total({{dataSourceTable.length}})

\n
\n\n
\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
Application Name {{element.name}} Amount {{element.amount}} Last Update {{element.date}} Status {{element.status}}
\n
\n
\n\n \n
\n

Currently, there is no completed application.

\n
\n \n \n\n \n\n
\n\n
\n","import { Injectable } from '@angular/core';\nimport { Observable, throwError } from 'rxjs';\nimport { catchError } from 'rxjs/operators';\nimport { HttpService } from '../../../core/services/http.service';\n\nimport { environment } from 'src/environments/environment';\nimport { AuthenticationService } from 'src/app/core/services/authentication.service';\n\n/**\n * common library services\n */\n\n@Injectable({\n providedIn: 'root',\n})\nexport class FinancialGoalService {\n constructor(\n private httpService: HttpService,\n private auth: AuthenticationService\n ) {}\n\n /**\n * Concatenate url with api end points for micro service\n *\n * @param url url to append with api end points\n *\n * @returns url\n */\n private composeUrl(url: string): string {\n return `${environment.host}/${url}`;\n }\n\n /**\n * To add new programs\n */\n saveFinancial(formData): Observable {\n return this.httpService\n .post('', `${this.composeUrl('financialGoals/opportunities')}`, formData)\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n\n /**\n * To add new programs\n */\n updateFinancial(formData): Observable {\n return this.httpService\n .put('', `${this.composeUrl('financialGoals/opportunities')}`, formData)\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n\n /// disable opportunity\n disableOpportunity(token, formData): Observable {\n return this.httpService\n .post(\n token,\n `${this.composeUrl('financialGoals/opportunities/disable')} `,\n formData\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n\n /**\n * To add new programs\n */\n // getFinancial(token, id): Observable {\n // return this.httpService\n // .get(\n // token,\n // `${this.composeUrl('financialGoals/opportunities?contactId=' + id)}`\n // )\n // .pipe(catchError(this.handleError('addNewProgram')));\n // }\n\n // getIncompleteOpportunity(token, id): Observable {\n // return this.httpService\n // .get(\n // token,\n // `${this.composeUrl(\n // 'financialGoals/incompleteopportunities?contactId=' + id\n // )}`\n // )\n // .pipe(catchError(this.handleError('addNewProgram')));\n // }\n\n /**\n * Handle error\n * @param string operation\n * @param T result\n */\n handleError(operation = 'operation', result?: T) {\n return (error: any): Observable => {\n const responseCode = error.status;\n if (error.status == '401' || error.statusText == 'Unauthorized') {\n this.auth.logout();\n }\n // if (ResponseCodes.unauthorized.indexOf(responseCode) > -1) {\n // this.customEventService.dispatchEvent('unAuthorizeEvent', 'logoutUser');\n // }\n\n return throwError(error);\n };\n }\n}\n","import { Component, HostListener, OnInit } from '@angular/core';\nimport { MatDialog } from '@angular/material/dialog';\nimport { Subject } from 'rxjs';\nimport { debounceTime, distinctUntilChanged } from 'rxjs/operators';\nimport { AuthenticationService } from 'src/app/core/services/authentication.service';\nimport { LoadingService } from 'src/app/core/services/loader.service';\nimport { UsersService } from '../users/services/users.service';\nimport { NewMessagePopupComponent } from './new-message-popup/new-message-popup.component';\n\n@Component({\n selector: 'app-message-portal',\n templateUrl: './message-portal.component.html',\n styleUrls: ['./message-portal.component.scss'],\n})\nexport class MessagePortalComponent implements OnInit {\n allNotification = [];\n filteredNotification = [];\n contactId: string;\n accountId: string;\n selectedNotification = [];\n currentThread = [];\n userFullName;\n userdata;\n currentIndex: number;\n // description: string;\n currentSubject: string;\n public token;\n searchSubject = new Subject();\n // header = 'Notifications';\n // currentStage = 0;\n // totalStage = 0;\n isSticky= false;\n @HostListener('window:scroll', ['$event'])\n checkScroll() {\n this.isSticky = window.pageYOffset >= 80;\n }\n constructor(\n private loadingService: LoadingService,\n private userService: UsersService,\n public auth: AuthenticationService,\n public dialog: MatDialog\n ) {}\n\n ngOnInit(): void {\n this.token = this.auth.getUserAccessToken();\n this.accountId = this.auth.getUserAccountId();\n this.contactId = this.auth.getPrimaryUserId();\n this.userdata = this.auth.getDecodedUserAccessToken();\n this.userFullName = this.userdata.contactDetails[0].fullname.split(' ');\n this.searchSubject\n .pipe(debounceTime(100), distinctUntilChanged())\n .subscribe((value: string) => {\n this._filterNotification(value);\n });\n this.getNotification();\n }\n getNotification() {\n this.selectedNotification = [];\n this.loadingService.startLoading();\n this.userService\n .getUserNotification(this.token, this.contactId, this.accountId)\n .subscribe(\n (response) => {\n // console.log('data we get');\n // console.log(response);\n this.allNotification = [];\n if (response.data && response.data.result2) {\n // const openNotifi = [];\n // const completeNotifi = [];\n const ungroupNotification = [];\n response.data.result2.forEach((element) => {\n const maskDetail = response.data.result.find((a) => {\n return a._activityid_value == element.activityid;\n });\n let createdBy = 'Cashel Developer';\n let createdBySlug = 'CD';\n if (maskDetail.participationtypemask == 1) {\n const created = maskDetail._partyid_value_Formatted.split(' ');\n // createdBy = maskDetail._partyid_value_Formatted\n createdBy = 'You';\n createdBySlug = created[0].charAt(0) + created[1].charAt(0);\n }\n\n const notification = {\n mask: maskDetail.participationtypemask,\n createdOn: element.createdon_Formatted,\n subject: element.subject,\n description: element.description,\n statecode: element.statecode,\n statuscode: element.statuscode,\n activityid: element.activityid,\n // createdBy: element._createdby_value_Formatted,\n // createdBySlug: createdBy[0].charAt(0) + createdBy[1].charAt(0),\n createdBy,\n createdBySlug,\n // regarding: element._regardingobjectid_value_Formatted,\n // regardingId: element._regardingobjectid_value,\n };\n ungroupNotification.push(notification);\n // if (notification.statecode == 0) {\n // openNotifi.push(notification);\n // } else {\n // completeNotifi.push(notification);\n // }\n // this.allNotification.push(notification);\n });\n // this.allNotification = [...openNotifi, ...completeNotifi];\n // console.log('ungroupNotification');\n // console.log(ungroupNotification);\n const groupedResult = ungroupNotification.reduce(function (r, a) {\n r[a.subject] = r[a.subject] || [];\n r[a.subject].push(a);\n return r;\n }, Object.create(null));\n // console.log('groupedResult');\n // console.log(groupedResult);\n // this.allNotification=groupedResult\n const notificationInArray = [];\n for (const notifi in groupedResult) {\n // //console.log(notifi);\n const a = [];\n groupedResult[notifi].forEach((element) => {\n // //console.log(element);\n a.push(element);\n });\n notificationInArray.push({ subject: a[0].subject, allnotifi: a });\n }\n // notificationInArray.reverse();\n this.allNotification = notificationInArray;\n this._filterNotification('');\n }\n // console.log('all notification');\n // console.log(this.allNotification);\n this.loadingService.stopLoading();\n },\n (err) => {\n this.loadingService.stopLoading();\n console.log('error', err);\n this.auth.showSnackBarMsg('Something Went Wrong!')\n }\n );\n }\n showfullNotifi(data, subject: string) {\n const i = this.allNotification.findIndex((a) => a.subject === subject);\n const newData = [...data];\n if (this.currentIndex == i) {\n this.currentThread = [];\n this.currentSubject = '';\n this.currentIndex = -1;\n } else {\n this.currentIndex = i;\n this.currentSubject = subject;\n this.currentThread = newData.reverse();\n }\n }\n\n sentMessage(description) {\n if (description.value.trim().length > 0) {\n const formdata = {\n description: description.value.trim(),\n subject: this.currentThread[0].subject,\n // regarding: this.currentThread[0].regardingId,\n contactId: this.contactId,\n accountId: this.accountId,\n };\n // console.log(formdata);\n this.loadingService.startLoading();\n this.userService.addNotification(this.token, formdata).subscribe(\n (data) => {\n this.loadingService.stopLoading();\n // console.log(data);\n description.value = '';\n // const created = this.auth.getLoginUserName();\n const notification = {\n mask: 1,\n createdOn: new Date().toLocaleString(),\n subject: formdata.subject,\n description: formdata.description,\n statecode: 0,\n statuscode: 1,\n activityid: data.data,\n // createdBy: element._createdby_value_Formatted,\n // createdBySlug: createdBy[0].charAt(0) + createdBy[1].charAt(0),\n createdBy: 'You',\n createdBySlug:\n this.userFullName[0].charAt(0) + this.userFullName[1].charAt(0),\n // regarding: element._regardingobjectid_value_Formatted,\n // regardingId: element._regardingobjectid_value,\n };\n // console.log('new notification', notification);\n this.currentThread.push(notification);\n // this.allNotification[this.currentIndex].push(notification);\n // this.allNotification[this.currentIndex].insert(0, notification);\n this.allNotification[this.currentIndex].allnotifi.splice(\n 0,\n 0,\n notification\n );\n },\n (error) => {\n console.log(error);\n this.loadingService.stopLoading();\n this.auth.showSnackBarMsg('Something went wrong!')\n }\n );\n } else {\n this.auth.showSnackBarMsg('Please write description!')\n return;\n }\n }\n searchNotification(value: string) {\n this.searchSubject.next(value);\n }\n onBack() {\n const backUrl = this.auth.getbackNotificationurl();\n // console.log(backUrl);\n if (backUrl) {\n // this.router.navigate([`${backUrl}`]);\n this.auth.gotoUrl(`${backUrl}`);\n } else {\n this.auth.showSnackBarMsg('You can not go back, Please login again')\n }\n }\n compose() {\n const dialogRef = this.dialog.open(NewMessagePopupComponent, {\n width: '720px',\n position: { right: '0', bottom: '0' },\n });\n dialogRef.afterClosed().subscribe((result) => {\n // console.log(`Dialog result: ${result}`);\n if (result) {\n this.getNotification();\n }\n });\n }\n private _filterNotification(value: string) {\n // console.log(value);\n const filterValue = value.toLowerCase();\n if (filterValue.trim().length > 0) {\n this.filteredNotification = [];\n this.allNotification.forEach((notifi) => {\n let flag;\n notifi.allnotifi.forEach((element) => {\n if (\n element.subject.toLowerCase().includes(filterValue) ||\n element.description.toLowerCase().includes(filterValue)\n ) {\n flag = true;\n }\n });\n if (flag == true) {\n this.filteredNotification.push(notifi);\n }\n });\n // console.log(this.filteredNotification);\n } else {\n this.filteredNotification = this.allNotification;\n }\n }\n}\n","
\n\n
\n
\n \n
\n

Messages

\n \n
\n
\n
\n \n \n \n \n \n
\n
\n \n \n
\n
\n
\n \n
\n
\n
\n
\n\n \n \n \n email Inboxkeyboard_arrow_down\n \n \n \n \n \n \n \n \n\n \n\n\n
\n
\n \n
\n \n \n
\n \n keyboard_arrow_down\n \n \n \n \n \n \n
\n \n
\n \n Fromkeyboard_arrow_down\n \n
\n
\n \n Messagekeyboard_arrow_down\n \n
\n
\n \n Date & Timekeyboard_arrow_down\n \n
\n
\n \n
\n
\n
\n AA\n
\n
\n \n
\n \n
\n \n
\n monday.com \n
4
\n \n
\n
\n Welcome! Onboard\n monday.​com is so flexible, you can manage just about everything with\n it\n \n
\n
\n Mon, Sep 20, 2:40 PM\n
\n \n
\n
\n \n
\n \n
\n \n \n \n \n
\n
\n
\n
\n
\n
\n
\n
\n AA\n
\n
\n \n
\n \n
\n \n
\n monday.com \n
4
\n \n
\n
\n Welcome! Onboard\n monday.​com is so flexible, you can manage just about everything with\n it\n \n
\n
\n Mon, Sep 20, 2:40 PM\n
\n \n
\n
\n \n
\n \n
\n \n \n \n \n
\n
\n
\n
\n
\n
\n
\n
\n AA\n
\n
\n \n
\n \n
\n \n
\n monday.com \n
4
\n \n
\n
\n Welcome! Onboard\n monday.​com is so flexible, you can manage just about everything with\n it\n \n
\n
\n Mon, Sep 20, 2:40 PM\n
\n \n
\n
\n \n
\n \n
\n \n \n \n \n
\n
\n
\n
\n
\n \n \n \n
\n
\n Showing 4 of 4 results\n
\n
\n \n \n 1\n \n \n
\n \n
\n Items per page\n \n 10keyboard_arrow_down\n \n \n \n \n \n \n \n
\n
\n
\n
\n\n\n\n\n\n\n\n\n\n\n\n\n\n","import { Component, OnInit } from '@angular/core';\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\nimport { MatDialogRef } from '@angular/material/dialog';\nimport { AuthenticationService } from 'src/app/core/services/authentication.service';\nimport { LoadingService } from 'src/app/core/services/loader.service';\nimport { UsersService } from '../../users/services/users.service';\n\n@Component({\n selector: 'app-new-message-popup',\n templateUrl: './new-message-popup.component.html',\n styleUrls: ['./new-message-popup.component.scss'],\n})\nexport class NewMessagePopupComponent implements OnInit {\n public token;\n accountId: string;\n contactId: string;\n applicationForm: FormGroup;\n constructor(\n private formBuilder: FormBuilder,\n public auth: AuthenticationService,\n private loadingService: LoadingService,\n private userService: UsersService,\n public dialogRef: MatDialogRef\n ) {}\n\n ngOnInit(): void {\n this.token = this.auth.getUserAccessToken();\n this.accountId = this.auth.getUserAccountId();\n this.contactId = this.auth.getPrimaryUserId();\n this.applicationForm = this.formBuilder.group({\n description: ['', Validators.required],\n subject: ['', Validators.required],\n contactId: [this.contactId, Validators.required],\n accountId: [this.accountId, Validators.required],\n });\n }\n onSubmit() {\n if (this.applicationForm.invalid) {\n this.auth.showSnackBarMsg('Please Fill All Options')\n return;\n }\n // console.log(this.applicationForm.value);\n this.loadingService.startLoading();\n this.userService\n .addNotification(this.token, this.applicationForm.value)\n .subscribe(\n (data) => {\n this.loadingService.stopLoading();\n this.dialogRef.close(true);\n },\n (error) => {\n console.log(error);\n this.loadingService.stopLoading();\n this.auth.showSnackBarMsg('Something went wrong!')\n }\n );\n }\n}\n","
\n
\n \n

\n

\n
\n\n
\n
\n \n
\n
\n

Send Message

\n
\n \n
\n Subject\n \n \n \n
\n
\n \n \n \n \n
\n \n \n \n \n \n \n
\n \n
\n \n
\n \n
\n
\n \n
\n \n\n \n
\n
\n\n
","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-selected-message',\n templateUrl: './selected-message.component.html',\n styleUrls: ['./selected-message.component.scss']\n})\nexport class SelectedMessageComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit(): void {\n }\n\n}\n"," \n\n
\n\n
\n
\n
\n\n \n \n \n \n \n \n \n \n \n \n \n
\n
\n \n \n
\n \n
\n\n
\n
\n Welcome Onboard!\n
\n \n inbox\n \n \n \n \n
\n \n\n
\n\n\n \n
\n
\n","import { Component, Inject, OnInit } from '@angular/core';\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\n\n@Component({\n selector: 'app-confirmation-prompt',\n templateUrl: './confirmation-prompt.component.html',\n styleUrls: ['./confirmation-prompt.component.scss']\n})\nexport class ConfirmationPromptComponent implements OnInit {\n\n constructor(\n public dialogRef: MatDialogRef,\n @Inject(MAT_DIALOG_DATA) public data: any,\n\n ) { }\n headline = 'Are you sure ?';\n\n ngOnInit(): void {\n if (this.data.tagline){\n this.headline = this.data.tagline;\n }\n \n }\n\n onSubmit(){\n this.dialogRef.close('OK');\n }\n\n}\n","
\n
\n

\n \n
\n \n\n
\n
\n

Confirm Deletion

\n {{headline}} You can't undo this action.\n \n
\n\n
\n \n \n
\n\n\n \n
","import {\n Component,\n OnInit,\n Output,\n EventEmitter,\n OnDestroy,\n ViewChild,\n ElementRef,\n Renderer2,\n} from '@angular/core';\nimport {\n FormBuilder,\n FormControl,\n FormGroup,\n Validators,\n} from '@angular/forms';\nimport { LoadingService } from './../../../core/services/loader.service';\nimport { MatDatepickerInputEvent } from '@angular/material/datepicker';\nimport { MatDialog } from '@angular/material/dialog';\nimport { AuthenticationService } from './../../../core/services/authentication.service';\nimport { ThemePalette, DateAdapter } from '@angular/material/core';\nimport {\n MatFormField,\n MatFormFieldControl,\n} from '@angular/material/form-field';\nimport { Subject, Subscription } from 'rxjs';\nimport {\n MyTel,\n TelInputComponent,\n} from '../../users/tel-input/tel-input.component';\nimport { UsersService } from '../../users/services/users.service';\nimport { LoginComponent } from '../../users/login/login.component';\nimport { THIS_EXPR } from '@angular/compiler/src/output/output_ast';\nimport { ForgotPasswordComponent } from '../../users/forgot-password/forgot-password.component';\nimport { LoginOtpComponent } from '../../users/login-otp/login-otp.component';\nimport { ConfirmationPopupComponent } from '../../users/confirmation-popup/confirmation-popup.component';\nimport { debounceTime, distinctUntilChanged } from 'rxjs/operators';\nimport { SuperAnnuationService } from '../../superannuation/services/superannuation.service';\nimport { HealthInsuranceService } from '../../health-insurance/services/health-insurance.service';\nimport { invalid } from 'moment';\n\nenum housingSituation {\n BOARDING = '1',\n CARAVAN = '2',\n OWN_HOME = '3',\n Own_Home_Mortgage = '4',\n RENTING = '5',\n WITH_PARENTS = '6',\n OTHER = '7',\n}\nenum eCitizenship {\n CITIZEN = '854500000',\n RESIDENT = '854500001',\n NON_RESIDENT = '854500002',\n}\n@Component({\n selector: 'app-user-form',\n templateUrl: './user-form.component.html',\n styleUrls: ['./user-form.component.scss'],\n providers: [{ provide: MatFormFieldControl, useExisting: TelInputComponent }],\n})\nexport class UserFormComponent implements OnInit, OnDestroy {\n selected = 'option2';\n\n minTab = 1;\n isLinear = false;\n citizenship: 'citizenship';\n resetFormSubscription: Subscription;\n applicationForm: FormGroup;\n addressForm: FormGroup;\n\n submitted = false;\n header = '';\n mobileTouched = false;\n currentStage = 1;\n totalStage = 10;\n addressSubmit: boolean;\n routeUrl: string;\n visibility = false;\n subscription: any;\n progInfoSubscription: any;\n todayDate: Date = new Date();\n housSituation = housingSituation;\n citizenShip = eCitizenship;\n isShowAddress = true;\n @Output() headerMenuEvent = new EventEmitter();\n\n monthTotal: any;\n addressId = false;\n addressdata: any;\n loading = false;\n isredColor = false;\n color: ThemePalette = 'accent';\n // isLogin = false;\n // phone = {\n // area: '',\n // exchange: '',\n // subscriber: '',\n // };\n emailSubject = new Subject();\n currentApplication = '';\n currenUrl = '';\n nextUrl = '';\n showMobileInput = false;\n constructor(\n private el: ElementRef,\n private formBuilder: FormBuilder,\n private userService: UsersService,\n public auth: AuthenticationService,\n private loadingService: LoadingService,\n public dialog: MatDialog // private dateAdapter: DateAdapter\n ) {}\n events: any;\n contactId: any;\n addEvent(type: string, event: MatDatepickerInputEvent) {\n if (event.value) {\n const date = Number(event.value.getMonth()) + 1;\n this.events =\n event.value.getFullYear() + '-' + date + '-' + event.value.getDate();\n }\n }\n getFormattedDate(date: Date) {\n const day = Number(date.getMonth()) + 1;\n return date.getFullYear() + '-' + day + '-' + date.getDate();\n }\n ngOnInit(): void {\n // this.isLogin = this.auth.isLoggedIn;\n this.checkCurrentUrl();\n const userData = this.auth.getDecodedUserAccessToken();\n\n this.contactId = this.auth.getLoginUserId();\n this.applicationForm = this.formBuilder.group({\n accountId: [''],\n firstname: ['', [Validators.required, Validators.maxLength(50)]],\n lastname: ['', [Validators.required, Validators.maxLength(50)]],\n mobilephone: ['', Validators.required],\n // mobilephone: new FormControl(new MyTel('', '', ''), Validators.required),\n birthdate: ['', Validators.required],\n // emailaddress1: ['',[Validators.required,Validators.pattern('^[a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+.[a-zA-Z0-9-.]+$'),],],\n emailaddress1: ['', [Validators.required, Validators.email]],\n\n gendercode: ['', Validators.required],\n tlx_residentialstatus: ['', Validators.required],\n tlx_australiantaxresident: ['', Validators.required],\n isAgree: ['', Validators.required],\n msdyn_portaltermsagreementdate: ['1994-04-30'],\n });\n this.addressForm = this.formBuilder.group({\n leadFor: [''],\n contactId: [''],\n firstname: [''],\n lastname: [''],\n birthdate: [''],\n gendercode: [''],\n pst_identityvoiresult: [''],\n new_creditscorelatestreportdate: [''],\n\n dateCommenced: ['', Validators.required],\n tlx_sameashomeaddress: ['true'],\n homeAddress: this.formBuilder.group({\n tlx_addresstype: ['854500000'],\n tlx_addressid: [''],\n tlx_street: [''],\n new_streetnumber: ['', Validators.required],\n tlx_streetaddress2: ['', Validators.required],\n new_streettype: [''],\n new_country: [\n '18952afd-55eb-ea11-a815-000d3a799a0d',\n Validators.required,\n ],\n new_state: ['', Validators.required],\n tlx_city: ['', Validators.required],\n tlx_postcode: ['', Validators.required],\n new_housingsituation: ['1', Validators.required],\n contactId: [this.contactId],\n }),\n previousAddress: this.formBuilder.group({\n tlx_addresstype: ['854500001'],\n tlx_addressid: [''],\n tlx_street: [''],\n new_streetnumber: ['', Validators.required],\n tlx_streetaddress2: ['', Validators.required],\n new_streettype: [''],\n new_country: [\n '18952afd-55eb-ea11-a815-000d3a799a0d',\n Validators.required,\n ],\n new_state: ['', Validators.required],\n tlx_city: ['', Validators.required],\n tlx_postcode: ['', Validators.required],\n new_housingsituation: ['1'],\n contactId: [this.contactId],\n }),\n postalAddress: this.formBuilder.group({\n tlx_addresstype: ['854500003'],\n tlx_addressid: [''],\n tlx_street: [''],\n new_streetnumber: [''],\n tlx_streetaddress2: [''],\n new_streettype: [''],\n new_country: ['18952afd-55eb-ea11-a815-000d3a799a0d'],\n new_state: [''],\n tlx_city: [''],\n tlx_postcode: [''],\n new_housingsituation: ['1'],\n contactId: [this.contactId],\n }),\n });\n\n this.addressForm.controls.dateCommenced.valueChanges.subscribe((change) => {\n const selectedDay = new Date();\n const today = new Date();\n const month = this.monthDiff(selectedDay, today);\n\n if (month > 23) {\n this.isShowAddress = false;\n this.addressForm.controls.previousAddress.disable();\n } else {\n this.isShowAddress = true;\n this.addressForm.controls.previousAddress.enable();\n }\n });\n // if (this.auth.isLoggedIn) {\n // this.getUserDetail();\n // }\n\n if (userData) {\n this.setformdata(userData);\n }\n\n if (this.resetFormSubscription) {\n this.resetFormSubscription.unsubscribe();\n }\n this.resetFormSubscription = this.auth.resetUserForm.subscribe((value) => {\n if (value) {\n this.applicationForm.reset();\n } else {\n const userdetail = this.auth.getDecodedUserAccessToken();\n if (userdetail) {\n this.setformdata(userdetail);\n // this.ngOnInit();\n window.scroll(0, 0);\n }\n }\n });\n if (!this.auth.isLoggedIn) {\n this.emailSubject\n .pipe(debounceTime(1000), distinctUntilChanged())\n .subscribe((value) => {\n this.checkEmail();\n });\n }\n }\n\n setformdata(data) {\n const userdata = {\n firstname: data.contactDetails[0].firstname,\n lastname: data.contactDetails[0].lastname,\n emailaddress1: data.contactDetails[0].emailaddress1,\n birthdate: new Date(data.contactDetails[0].birthdate),\n isAgree: true, ///////\n mobilephone: data.contactDetails[0].mobilephone,\n gendercode: data.contactDetails[0].gendercode + '', ///\n tlx_residentialstatus: data.contactDetails[0].tlx_residentialstatus + '', //////\n msdyn_portaltermsagreementdate: '1994-04-30', //////////\n tlx_australiantaxresident:\n data.contactDetails[0].tlx_australiantaxresident, ///\n };\n\n this.applicationForm.patchValue(userdata);\n this.showMobileInput = true;\n // if(data.contactDetails[0].emailaddress1) {\n // this.applicationForm.get('emailaddress1').disable()\n // }\n // // this.phone.area = data.contactDetails[0].mobilephone.substring(0, 4);\n // // this.phone.exchange = data.contactDetails[0].mobilephone.substring(4, 7);\n // // this.phone.subscriber = data.contactDetails[0].mobilephone.substring(7, 10);\n // // this.applicationForm.controls['mobilephone'].setValue(this.phone);\n }\n\n logout() {\n this.auth.logout();\n this.applicationForm.reset();\n }\n\n monthDiff(d1, d2) {\n let months;\n months = (d2.getFullYear() - d1.getFullYear()) * 12;\n months -= d1.getMonth();\n months += d2.getMonth();\n this.monthTotal = months;\n return months <= 0 ? 0 : months;\n }\n\n get applicationF() {\n return this.applicationForm.controls;\n }\n get addressFormControl() {\n return this.addressForm.controls;\n }\n\n ngOnDestroy() {\n this.resetFormSubscription.unsubscribe();\n this.emailSubject?.unsubscribe();\n this.loadingService.stopLoading();\n }\n\n checkPostalAddress(event) {\n if (event.value == 'true') {\n this.addressForm.get('tlx_sameashomeaddress').setValue('true');\n\n this.addressForm.get('postalAddress.new_streetnumber').clearValidators();\n this.addressForm\n .get('postalAddress.tlx_streetaddress2')\n .clearValidators();\n this.addressForm.get('postalAddress.new_streettype').clearValidators();\n\n this.addressForm.get('postalAddress.new_state').clearValidators();\n this.addressForm.get('postalAddress.tlx_city').clearValidators();\n this.addressForm.get('postalAddress.new_country').clearValidators();\n this.addressForm.get('postalAddress.tlx_postcode').clearValidators();\n\n this.addressForm\n .get('postalAddress.new_streetnumber')\n .updateValueAndValidity();\n this.addressForm\n .get('postalAddress.tlx_streetaddress2')\n .updateValueAndValidity();\n this.addressForm\n .get('postalAddress.new_streettype')\n .updateValueAndValidity();\n\n this.addressForm.get('postalAddress.new_state').updateValueAndValidity();\n this.addressForm.get('postalAddress.tlx_city').updateValueAndValidity();\n this.addressForm\n .get('postalAddress.new_country')\n .updateValueAndValidity();\n this.addressForm\n .get('postalAddress.tlx_postcode')\n .updateValueAndValidity();\n // this.addressForm.controls.postalAddress.setValue(\n // this.addressForm.controls.homeAddress.value\n // );\n // this.addressForm\n // .get('postalAddress.tlx_addresstype')\n // .setValue('854500003');\n\n // this.addressForm.controls.postalAddress.updateValueAndValidity();\n // this.addressForm.controls.postalAddress.disable();\n } else {\n this.addressForm.get('tlx_sameashomeaddress').setValue('false');\n this.addressForm\n .get('postalAddress.new_state')\n .setValidators(Validators.required);\n this.addressForm\n .get('postalAddress.tlx_city')\n .setValidators(Validators.required);\n this.addressForm\n .get('postalAddress.tlx_postcode')\n .setValidators(Validators.required);\n this.addressForm\n .get('postalAddress.new_streetnumber')\n .setValidators(Validators.required);\n this.addressForm\n .get('postalAddress.tlx_streetaddress2')\n .setValidators(Validators.required);\n // this.addressForm\n // .get('postalAddress.new_streettype')\n // .setValidators(Validators.required);\n\n this.addressForm\n .get('postalAddress.new_country')\n .setValidators(Validators.required);\n this.addressForm.get('postalAddress').updateValueAndValidity();\n // this.addressForm.controls.postalAddress.reset();\n // this.addressForm.controls.postalAddress.updateValueAndValidity();\n // this.addressForm.controls.postalAddress.enable();\n // this.addressForm\n // .get('postalAddress.tlx_addresstype')\n // .setValue('854500003');\n // this.addressForm.get('postalAddress.contactId').setValue(this.contactId);\n // this.addressForm.get('postalAddress.new_housingsituation').setValue('1');\n }\n }\n\n onSubmit() {\n this.isredColor = true;\n this.submitted = true;\n this.mobileTouched = true;\n if (this.applicationForm.invalid) {\n if (\n !this.applicationForm.get('firstname').invalid &&\n !this.applicationForm.get('lastname').invalid &&\n !this.applicationForm.get('emailaddress1').invalid &&\n !this.applicationForm.get('mobilephone').invalid &&\n this.applicationForm.get('birthdate').invalid\n ) {\n this.auth.showSnackBarMsg(\n 'Invalid Date : Please input date in form of DD/MM/YYYY.'\n );\n } else {\n if (this.applicationForm.get('emailaddress1').invalid) {\n this.auth.showSnackBarMsg('Invalid email : please fill valid email.');\n } else {\n this.auth.showSnackBarMsg('Please fill all details.');\n }\n }\n const invalidControl = document.getElementsByClassName('ng-invalid');\n const inputIndex = Array.from(invalidControl)?.findIndex(\n (el) => el.tagName == 'INPUT' || el.tagName == 'MAT-SELECT'\n );\n if (inputIndex >= 0) {\n (invalidControl[inputIndex] as HTMLElement).focus();\n }\n return;\n }\n if (\n this.applicationForm.value.isAgree == false &&\n this.applicationForm.value.isAgree == ''\n ) {\n this.auth.showSnackBarMsg('Please accept terms and privacy policy.');\n return;\n }\n const token = this.auth.getUserAccessToken();\n if (this.applicationForm.valid) {\n this.loadingService.startLoading();\n this.loading = true;\n if (this.auth.isLoggedIn) {\n delete this.applicationForm.value.isAgree;\n delete this.applicationForm.value.msdyn_portaltermsagreementdate;\n this.applicationForm.value.contactId = this.auth.getLoginUserId();\n this.applicationForm.value.accountId = this.auth.getUserAccountId();\n delete this.applicationForm.value.image;\n this.applicationForm.value.birthdate = this.events\n ? this.events\n : this.getFormattedDate(this.applicationForm.value.birthdate);\n\n if (this.applicationForm.dirty) {\n this.userService\n .updateApplication(token, this.applicationForm.value)\n .subscribe(\n (response) => {\n this.loadingService.stopLoading();\n this.loading = false;\n if (response.success) {\n // this.validateOpportunity();\n\n const userDataToken = this.auth.getDecodedUserAccessToken();\n userDataToken.contactDetails[0].firstname =\n this.applicationForm.value.firstname;\n userDataToken.contactDetails[0].lastname =\n this.applicationForm.value.lastname;\n userDataToken.contactDetails[0].emailaddress1 =\n this.applicationForm.value.emailaddress1;\n userDataToken.contactDetails[0].birthdate =\n this.applicationForm.value.birthdate;\n userDataToken.contactDetails[0].mobilephone =\n this.applicationForm.value.mobilephone;\n userDataToken.contactDetails[0].gendercode =\n +this.applicationForm.value.gendercode;\n userDataToken.contactDetails[0].tlx_residentialstatus =\n +this.applicationForm.value.tlx_residentialstatus;\n userDataToken.contactDetails[0].tlx_australiantaxresident =\n this.applicationForm.value.tlx_australiantaxresident;\n userDataToken.contactDetails[0].fullname =\n this.applicationForm.value.firstname +\n ' ' +\n this.applicationForm.value.lastname;\n this.auth.setDecodedToken(userDataToken);\n }\n },\n (err) => {\n console.log(err);\n this.loadingService.stopLoading();\n this.loading = false;\n // alert(err.message.message);\n this.auth.showSnackBarMsg(err.message.message);\n }\n );\n } else {\n this.loadingService.stopLoading();\n this.loading = false;\n\n this.userService\n .updatePrivacyConsentDate(token, {accountId: this.applicationForm.value.accountId})\n .subscribe((response) => { });\n }\n this.changeMinTab(this.minTab + 1);\n this.setAddress();\n this.contactId = this.auth.getLoginUserId();\n this.addressForm.value.homeAddress.contactId = this.contactId;\n this.addressForm.value.previousAddress.contactId =\n this.contactId;\n this.addressForm.value.postalAddress.contactId = this.contactId;\n this.addressdata = this.addressForm.value;\n } else {\n // this.applicationForm.value.tlx_portalcurrentpage = 1;\n this.applicationForm.value.birthdate = this.events\n ? this.events\n : this.getFormattedDate(this.applicationForm.value.birthdate);\n // this.applicationForm.value.mobilephone = `${this.phone.area}${this.phone.exchange}${this.phone.subscriber}`;\n this.userService.saveApplication(this.applicationForm.value).subscribe(\n (response) => {\n this.loadingService.stopLoading();\n this.loading = false;\n if (response.success) {\n this.auth.showSnackBarMsg(\n 'Your account has been created please check your mail box'\n );\n const email = this.applicationForm.get('emailaddress1').value;\n this.applicationForm.reset();\n const msg = `Your account has been created please check your ${email} mail box`;\n const header = 'Account Created.';\n\n this.openConfirmationPopup(email, header, msg);\n }\n },\n (err) => {\n this.loadingService.stopLoading();\n this.loading = false;\n console.log('error', err);\n if (err.error.message === 'Record already exist!') {\n this.auth.showSnackBarMsg(\n 'Your email already exist, Please Login!'\n );\n this.openDialog('Already a client?');\n } else if (err.error.message === 'check email') {\n const msg =\n 'As a first time applicant, an email has been sent to ' +\n this.applicationForm.get('emailaddress1').value +\n '. Please follow the prompts to create a password and to continue with the application.';\n const header = 'Create Password!';\n this.openConfirmationPopup(\n this.applicationForm.get('emailaddress1').value,\n header,\n msg\n );\n } else {\n // alert(err.error.message);\n this.auth.showSnackBarMsg(err.error.message);\n }\n }\n );\n }\n }\n }\n\n openConfirmationPopup(email, header: string, content: string) {\n const dialogRef = this.dialog.open(ConfirmationPopupComponent, {\n width: '500px',\n data: { email, header, content },\n });\n }\n\n onEmailKeyup() {\n const searchText = this.applicationForm.get('emailaddress1').value;\n this.emailSubject?.next(searchText);\n }\n checkEmail() {\n // this.loadingService.startLoading();\n const email = this.applicationForm.get('emailaddress1').value;\n if (email && this.validateEmail(email)) {\n this.userService.getUserByEmail(email).subscribe(\n (response) => {\n if (response.data == 'check email') {\n const msg =\n 'As a first time applicant, an email has been sent to ' +\n email +\n '. Please follow the prompts to create a password and to continue with the application.';\n const header = 'Create Password!';\n this.openConfirmationPopup(email, header, msg);\n } else if (response.data == 'user exist!') {\n this.auth.showSnackBarMsg(\n 'Your email already exist, Please Login!'\n );\n this.openDialog('Already a client?');\n }\n // this.loadingService.stopLoading()\n },\n (err) => {\n // this.loadingService.stopLoading()\n console.log('error', err);\n }\n );\n }\n }\n validateEmail(email) {\n return email.match(\n /^(([^<>()[\\]\\\\.,;:\\s@\\\"]+(\\.[^<>()[\\]\\\\.,;:\\s@\\\"]+)*)|(\\\".+\\\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/\n );\n }\n setAddress() {\n if (this.auth.isLoggedIn) {\n const token = this.auth.getUserAccessToken();\n const id = this.auth.getLoginUserId();\n this.loadingService.startLoading();\n this.userService.getAdress(token, id).subscribe(\n (response) => {\n if (response.data[0]?.tlx_addressid) {\n this.addressId = true;\n response.data.forEach((element) => {\n if (element.tlx_addresstype === '854500000') {\n this.addressForm.controls.homeAddress.patchValue(element);\n this.addressForm.controls.dateCommenced.patchValue(\n element.new_from\n );\n } else if (element.tlx_addresstype === '854500001') {\n this.addressForm.controls.previousAddress.patchValue(element);\n } else if (element.tlx_addresstype === '854500003') {\n if (element.tlx_sameashomeaddress) {\n this.checkPostalAddress({ value: 'true' });\n this.addressForm.controls.postalAddress.patchValue(element);\n } else {\n this.checkPostalAddress({ value: 'false' });\n this.addressForm.controls.postalAddress.patchValue(element);\n }\n }\n });\n\n // this.addressForm.value.homeAddress = response.data[0];\n // this.addressForm.value.previousAddress = response.data[1];\n // this.addressForm.value.postalAddress = response.data[2];\n this.addressdata = this.addressForm.value;\n }\n this.loadingService.stopLoading();\n this.loading = false;\n },\n (err) => {\n console.log(err);\n this.loadingService.stopLoading();\n this.loading = false;\n // alert(err.message.message);\n this.auth.showSnackBarMsg(err.message.message);\n }\n );\n }\n }\n\n goPrevious() {\n this.changeMinTab(this.minTab - 1);\n }\n changeMinTab(value: number) {\n this.minTab = value;\n if (this.currentApplication == 'debtapp') {\n if (value == 1) {\n this.header = 'Finance Application';\n this.totalStage = 10;\n this.currentStage = 1;\n // this.currentApplication = 'debtapp';\n }\n if (value == 2) {\n this.header = 'Confirm Your Address Details.';\n this.totalStage = 10;\n this.currentStage = 1;\n // this.currentApplication = 'debtapp';\n }\n }\n if (this.currentApplication == 'superannuation') {\n if (value == 1) {\n this.header = 'Join Cashel Super and Pension.';\n this.totalStage = 9;\n this.currentStage = 1;\n // this.currentApplication = 'superannuation';\n }\n if (value == 2) {\n this.header = 'Confirm Your Address Details.';\n this.totalStage = 9;\n this.currentStage = 2;\n // this.currentApplication = 'superannuation';\n }\n }\n if (this.currentApplication == 'managedAccount') {\n if (value == 1) {\n this.header = 'Apply for Cashel Managed Account';\n this.totalStage = 6;\n this.currentStage = 1;\n // this.currentApplication = 'debtapp';\n }\n if (value == 2) {\n this.header = 'Confirm Your Address Details.';\n this.totalStage = 6;\n this.currentStage = 2;\n // this.currentApplication = 'debtapp';\n }\n }\n if (this.currentApplication == 'generalInsurance') {\n if (value == 1) {\n this.header = 'Apply for General Insurance';\n this.totalStage = 4;\n this.currentStage = 1;\n // this.currentApplication = 'debtapp';\n }\n if (value == 2) {\n this.header = 'Confirm Your Address Details.';\n this.totalStage = 4;\n this.currentStage = 2;\n // this.currentApplication = 'debtapp';\n }\n }\n if (this.currentApplication == 'healthInsurance') {\n if (value == 1) {\n this.header = 'Apply for Health Insurance Review';\n this.totalStage = 4;\n this.currentStage = 1;\n // this.currentApplication = 'debtapp';\n }\n if (value == 2) {\n this.header = 'Confirm Your Address Details.';\n this.totalStage = 4;\n this.currentStage = 2;\n // this.currentApplication = 'debtapp';\n }\n }\n if (this.currentApplication == 'estatePlanning') {\n if (value == 1) {\n this.header = 'Obtain Estate Planning Assistance';\n this.totalStage = 10;\n this.currentStage = 1;\n // this.currentApplication = 'debtapp';\n }\n if (value == 2) {\n this.header = 'Confirm Your Address Details.';\n this.totalStage = 10;\n this.currentStage = 2;\n // this.currentApplication = 'debtapp';\n }\n }\n if (this.currentApplication == 'lifeInsurance') {\n if (value == 1) {\n this.header = 'Apply for Life and Personal Insurance.';\n this.totalStage = 12;\n this.currentStage = 1;\n // this.currentApplication = 'debtapp';\n }\n if (value == 2) {\n this.header = 'Confirm Your Address Details.';\n this.totalStage = 12;\n this.currentStage = 2;\n // this.currentApplication = 'debtapp';\n }\n }\n if (this.currentApplication == 'financialPlanning') {\n if (value == 1) {\n this.header = 'Obtain Financial Planning Advice.';\n this.totalStage = 12;\n this.currentStage = 1;\n // this.currentApplication = 'debtapp';\n }\n if (value == 2) {\n this.header = 'Confirm Your Address Details.';\n this.totalStage = 12;\n this.currentStage = 2;\n // this.currentApplication = 'debtapp';\n }\n }\n }\n onAddressSubmit() {\n this.loadingService.startLoading();\n this.addressSubmit = true;\n if (this.addressForm.invalid) {\n this.auth.showSnackBarMsg('Please Fill all Address!');\n const invalidControl = document.getElementsByClassName('ng-invalid');\n const inputIndex = Array.from(invalidControl)?.findIndex(\n (el) => el.tagName == 'INPUT' || el.tagName == 'MAT-SELECT'\n );\n if (inputIndex >= 0) {\n (invalidControl[inputIndex] as HTMLElement).focus();\n }\n\n // let foundInvalidControl = false;\n // for (const key of Object.keys(this.addressForm.controls)) {\n // if (\n // key != 'homeAddress' &&\n // key != 'previousAddress' &&\n // key != 'postalAddress'\n // ) {\n // if (this.addressForm.controls[key].invalid) {\n // const invalidControl = this.el.nativeElement.querySelector(\n // '[formcontrolname=\"' + key + '\"]'\n // );\n // invalidControl.focus();\n // foundInvalidControl = true;\n // break;\n // }\n // }\n // }\n // if(!foundInvalidControl){\n // for (const key of Object.keys(\n // this.addressForm.controls.homeAddress.value)){\n // if (this.addressForm.controls.homeAddress.get(key).invalid) {\n // let flag = false;\n // const invalidControl = this.el.nativeElement.querySelectorAll(\n // '[formcontrolname=\"' + key + '\"]'\n // );\n // invalidControl?.forEach((el) => {\n // if (!flag) {\n // const invalidInput = el.classList.value.includes('ng-invalid');\n // if (invalidInput) {\n // flag = true;\n // el.focus();\n // foundInvalidControl = true;\n // }\n // }\n // });\n // if (flag) {\n // break;\n // }\n // }\n // }\n // }\n // if(!foundInvalidControl){\n // for (const key of Object.keys(\n // this.addressForm.controls.previousAddress.value)){\n // if (this.addressForm.controls.previousAddress.get(key).invalid) {\n // let flag = false;\n // const invalidControl = this.el.nativeElement.querySelectorAll(\n // '[formcontrolname=\"' + key + '\"]'\n // );\n // invalidControl?.forEach((el) => {\n // if (!flag) {\n // const invalidInput = el.classList.value.includes('ng-invalid');\n // if (invalidInput) {\n // flag = true;\n // el.focus();\n // foundInvalidControl = true;\n // }\n // }\n // });\n // if (flag) {\n // break;\n // }\n // }\n // }\n // }\n // if(!foundInvalidControl){\n // for (const key of Object.keys(\n // this.addressForm.controls.postalAddress.value)) {\n // if (this.addressForm.controls.postalAddress.get(key).invalid) {\n // let flag = false;\n // const invalidControl = this.el.nativeElement.querySelectorAll(\n // '[formcontrolname=\"' + key + '\"]'\n // );\n // invalidControl?.forEach((el) => {\n // if (!flag) {\n // const invalidInput = el.classList.value.includes('ng-invalid');\n // if (invalidInput) {\n // flag = true;\n // el.focus();\n // foundInvalidControl = true;\n // }\n // }\n // });\n // if (flag) {\n // break;\n // }\n // }\n // }\n // }\n\n this.loadingService.stopLoading();\n return;\n }\n\n if (this.addressId) {\n if (this.currentApplication == 'superannuation') {\n const personalData = {\n contactId: this.contactId,\n leadFor: 1,\n firstname: this.applicationForm.get('firstname').value,\n lastname: this.applicationForm.get('lastname').value,\n birthdate: this.applicationForm.get('birthdate').value,\n gendercode: this.applicationForm.get('gendercode').value,\n pst_identityvoiresult: this.auth.getFieldDataFromToken(\n 'pst_identityvoiresult'\n ),\n new_creditscorelatestreportdate: this.auth.getFieldDataFromToken(\n 'new_creditscorelatestreportdate'\n ),\n };\n if (personalData.pst_identityvoiresult != true) {\n this.hitVOitrigger();\n }\n this.addressForm.patchValue(personalData);\n } else {\n if (!this.addressForm.dirty) {\n this.goNext();\n // this.loadingService.stopLoading();\n return;\n }\n }\n\n const formData = {\n ...this.addressForm.getRawValue(),\n needMailSystem: true,\n };\n const token = this.auth.getUserAccessToken();\n this.loading = true;\n this.userService\n .updateAddress(token, formData)\n .subscribe\n // (response) => {\n // this.loading = false;\n // this.goNext();\n // // this.loadingService.stopLoading();\n // },\n // (err) => {\n // this.loadingService.stopLoading();\n // this.loading = false;\n // console.log(err);\n // }\n ();\n this.loading = false;\n this.goNext();\n } else {\n if (this.currentApplication == 'superannuation') {\n const personalData = {\n contactId: this.contactId,\n leadFor: 1,\n firstname: this.applicationForm.get('firstname').value,\n lastname: this.applicationForm.get('lastname').value,\n birthdate: this.applicationForm.get('birthdate').value,\n gendercode: this.applicationForm.get('gendercode').value,\n pst_identityvoiresult: this.auth.getFieldDataFromToken(\n 'pst_identityvoiresult'\n ),\n new_creditscorelatestreportdate: this.auth.getFieldDataFromToken(\n 'new_creditscorelatestreportdate'\n ),\n };\n\n this.addressForm.patchValue(personalData);\n if (personalData.pst_identityvoiresult != true) {\n this.hitVOitrigger();\n }\n }\n this.loading = true;\n const formData = {\n ...this.addressForm.getRawValue(),\n needMailSystem: true,\n };\n const token = this.auth.getUserAccessToken();\n this.userService\n .saveAddress(token, formData)\n .subscribe\n // (response) => {\n // this.loading = false;\n // this.goNext();\n // this.loadingService.stopLoading();\n // },\n // (err) => {\n // this.loadingService.stopLoading();\n // this.loading = false;\n // console.log(err);\n // }\n ();\n this.loading = false;\n this.goNext();\n }\n }\n hitVOitrigger() {\n const token = this.auth.getUserAccessToken();\n const formdata = {\n contactId: this.auth.getLoginUserId(),\n };\n this.userService.rapidVOITrigger(token, formdata).subscribe(\n (data) => {},\n (error) => {\n // this.loadingService.stopLoading();\n console.log(error);\n this.auth.showSnackBarMsg('Something went wrong!');\n }\n );\n }\n\n goNext() {\n this.auth.gotoUrl(this.nextUrl);\n }\n // Dialog Box\n openDialog(headline: string) {\n const dialogRef = this.dialog.open(LoginComponent, {\n width: '500px',\n data: {\n headline,\n email: this.applicationForm.controls.emailaddress1.value,\n },\n });\n\n dialogRef.afterClosed().subscribe((result) => {\n if (result) {\n if (result == 'loggedIn') {\n } else if (result == 'forgotPassword') {\n this.openForgotDialog();\n } else if (result == 'otpLogin') {\n this.loginOtp();\n } else if (result == 'onRegister') {\n }\n }\n });\n }\n loginOtp() {\n const dialogRef = this.dialog.open(LoginOtpComponent, {\n width: '500px',\n data: {},\n });\n dialogRef.afterClosed().subscribe((result) => {\n if (result) {\n if (result == 'loggedIn') {\n const userData = this.auth.getDecodedUserAccessToken();\n if (userData) {\n this.setformdata(userData);\n // this.ngOnInit();\n window.scroll(0, 0);\n }\n } else if (result == 'backToLogin') {\n this.openDialog('LOGIN TO YOUR ACCOUNT');\n } else if (result == 'forgotPassword') {\n this.openForgotDialog();\n } else if (result == 'onRegister') {\n }\n }\n });\n }\n openForgotDialog() {\n const dialogRef = this.dialog.open(ForgotPasswordComponent, {\n width: '500px',\n });\n dialogRef.afterClosed().subscribe((result) => {\n if (result) {\n if (result == 'backToLogin') {\n this.openDialog('LOGIN TO YOUR ACCOUNT');\n }\n }\n });\n }\n checkCurrentUrl() {\n // const currentUrl = this.router.url.split('?')[0];\n const currentUrl = this.auth.getCurrentUrl();\n this.currenUrl = currentUrl;\n switch (currentUrl) {\n case '/debtapp': {\n this.header = 'Finance Application';\n this.totalStage = 10;\n this.currentApplication = 'debtapp';\n this.nextUrl = '/financial-goal';\n break;\n }\n case '/superannuation': {\n this.header = 'Join Cashel Super and Pension';\n this.totalStage = 9;\n this.currentApplication = 'superannuation'; //\n this.nextUrl = '/superannuation/confirm-identity-and-income';\n\n break;\n }\n case '/managed-account': {\n this.header = 'Apply for Cashel Managed Account';\n this.totalStage = 6;\n this.currentApplication = 'managedAccount'; //\n this.nextUrl = '/managed-account/investment-risk-profile';\n break;\n }\n case '/general-insurance': {\n this.header = 'Apply for General Insurance';\n this.totalStage = 4;\n this.currentApplication = 'generalInsurance'; //\n this.nextUrl = '/general-insurance/insurance-advice';\n break;\n }\n case '/health-insurance': {\n this.header = 'Apply for Health Insurance Review';\n this.totalStage = 4;\n this.currentApplication = 'healthInsurance'; //\n this.nextUrl = '/health-insurance/insurance';\n break;\n }\n case '/estate-planning': {\n this.header = 'Obtain Estate Planning Assistance';\n this.totalStage = 10;\n this.currentApplication = 'estatePlanning'; //\n this.nextUrl = 'estate-planning/tell-us-about-your-family';\n break;\n }\n case '/life-insurance': {\n this.header = 'Apply for Life and Personal Insurance.';\n this.totalStage = 12;\n this.currentApplication = 'lifeInsurance';\n this.nextUrl = 'life-insurance/confirm-identity-and-income';\n break;\n }\n case '/financial-planning': {\n this.header = 'Obtain Financial Planning Advice.';\n this.totalStage = 12;\n this.currentApplication = 'financialPlanning';\n this.nextUrl = 'financial-planning/financial-goal';\n break;\n }\n default: {\n // statements;\n break;\n }\n }\n }\n validateOpportunity() {\n const contactId = this.auth.getPrimaryUserId();\n const accountId = this.auth.getUserAccountId();\n const userData = this.auth.getDecodedUserAccessToken();\n const userFullName = userData.contactDetails[0].fullname;\n if (this.currentApplication == 'superannuation') {\n const currentSuperOppId = this.auth.getCurrentSuperOpportunityId();\n if (!currentSuperOppId) {\n this.addSuperOpportunity(contactId, accountId, userFullName);\n }\n } else if (this.currentApplication == 'managedAccount') {\n const currentInvestmentOppId =\n this.auth.getCurrentInvestmentOpportunityId();\n if (!currentInvestmentOppId) {\n this.addinvestmentOpportunity(contactId, accountId, userFullName);\n }\n } else if (this.currentApplication == 'estatePlanning') {\n const currentOpp = this.auth.getCurrentEstatePlanningOpportunityId();\n if (!currentOpp) {\n this.addEstatePlanningOpportunity(contactId, accountId, userFullName);\n }\n } else if (this.currentApplication == 'healthInsurance') {\n const currentOpp = this.auth.getCurrentHealthInsuranceOpportunityId();\n if (!currentOpp) {\n this.addHealthOpportunity(contactId, accountId, userFullName);\n }\n } else if (this.currentApplication == 'generalInsurance') {\n const currentgeneralInsuranceOppId =\n this.auth.getCurrentGeneralInsuranceOpportunityId();\n if (!currentgeneralInsuranceOppId) {\n this.addGenralOpportunity(contactId, accountId, userFullName);\n }\n } else if (this.currentApplication == 'lifeInsurance') {\n const currentOppId = this.auth.getCurrentLifeInsuranceOpportunityId();\n if (!currentOppId) {\n this.addlifeOpportunity(contactId, accountId, userFullName);\n }\n } else if (this.currentApplication == 'financialPlanning') {\n const currentOppId = this.auth.getCurrentFinancialPlanningOpportunityId();\n if (!currentOppId) {\n this.addfinanceOpportunity(contactId, accountId, userFullName);\n }\n }\n }\n\n addSuperOpportunity(\n contactId: string,\n accountId: string,\n userFullName: string\n ) {\n const formData = {\n userFullName,\n contactId,\n accountID: accountId,\n leadFor: 1,\n };\n this.loadingService.startLoading();\n this.userService.saveFinancial(formData).subscribe(\n (response) => {\n this.loadingService.stopLoading();\n if (response) {\n this.auth.setCurrentSuperOpportunityId(response.data.opportunityid);\n const newopp = {\n name: `${formData.userFullName} - Superannuation Application`,\n opportunityid: response.data.opportunityid,\n _bpf_opportunityid_value: response.data.opportunityid,\n // _new_investmentaccount_value: response.data.investmentid,\n tlx_leadfor: 1,\n businessprocessflowinstanceid:\n response.data.businessprocessflowinstanceid,\n _activestageid_value: '2ee1ba75-0b75-40c9-9a75-9106f4182f16',\n _activestageid_value_Formatted: 'Complete Fact Find',\n };\n const allOpportunity = this.auth.getAllOpportunity();\n const newData = [...allOpportunity, newopp];\n this.auth.setOpportunityinSession(newData);\n this.auth.updateSideBar();\n window.scroll(0, 0);\n }\n },\n (error) => {\n console.log(error);\n this.loadingService.stopLoading();\n this.auth.showSnackBarMsg(error.error.message);\n }\n );\n // }\n }\n addinvestmentOpportunity(\n contactId: string,\n accountId: string,\n userFullName: string\n ) {\n const formData = {\n userFullName,\n contactId,\n accountID: accountId,\n leadFor: 9,\n };\n this.loadingService.startLoading();\n this.userService.saveFinancial(formData).subscribe(\n (response) => {\n this.loadingService.stopLoading();\n if (response) {\n this.auth.setCurrentInvestmentOpportunityId(\n response.data.opportunityid\n );\n const newopp = {\n name: `${formData.userFullName} - Managed Investment Application`,\n opportunityid: response.data.opportunityid,\n _bpf_opportunityid_value: response.data.opportunityid,\n tlx_leadfor: 9,\n businessprocessflowinstanceid:\n response.data.businessprocessflowinstanceid,\n _activestageid_value: '56b2b8c3-810b-4538-b3da-dcabd8b82a27',\n _activestageid_value_Formatted: 'Complete Fact Find',\n };\n const allOpportunity = this.auth.getAllOpportunity();\n const newData = [...allOpportunity, newopp];\n this.auth.setOpportunityinSession(newData);\n this.auth.updateSideBar();\n window.scroll(0, 0);\n }\n },\n (error) => {\n console.log(error);\n this.loadingService.stopLoading();\n this.auth.showSnackBarMsg(error.error.message);\n }\n );\n // }\n }\n addEstatePlanningOpportunity(\n contactId: string,\n accountId: string,\n userFullName: string\n ) {\n const formData = {\n userFullName,\n contactId,\n accountID: accountId,\n leadFor: 6,\n };\n this.loadingService.startLoading();\n this.userService.saveFinancial(formData).subscribe(\n (response) => {\n this.loadingService.stopLoading();\n if (response) {\n this.auth.setCurrentHealthInsuranceOpportunityId(\n response.data.opportunityid\n );\n const newopp = {\n name: `${formData.userFullName} - Estate Planning Application`,\n opportunityid: response.data.opportunityid,\n _bpf_opportunityid_value: response.data.opportunityid,\n // _new_investmentaccount_value: response.data.investmentid,\n tlx_leadfor: 6,\n businessprocessflowinstanceid:\n response.data.businessprocessflowinstanceid,\n _activestageid_value: 'd408967b-797a-48f2-9200-4233ff61d00d',\n _activestageid_value_Formatted: 'Complete Fact Find',\n };\n const allOpportunity = this.auth.getAllOpportunity();\n const newData = [...allOpportunity, newopp];\n this.auth.setOpportunityinSession(newData);\n this.auth.updateSideBar();\n window.scroll(0, 0);\n }\n },\n (error) => {\n console.log(error);\n this.loadingService.stopLoading();\n this.auth.showSnackBarMsg(error.error.message);\n }\n );\n // }\n }\n addHealthOpportunity(\n contactId: string,\n accountId: string,\n userFullName: string\n ) {\n const formData = {\n userFullName,\n contactId,\n accountID: accountId,\n leadFor: 5,\n };\n this.loadingService.startLoading();\n this.userService.saveFinancial(formData).subscribe(\n (response) => {\n this.loadingService.stopLoading();\n if (response) {\n this.auth.setCurrentHealthInsuranceOpportunityId(\n response.data.opportunityid\n );\n\n const newopp = {\n name: `${formData.userFullName} - Health Insurance Application`,\n opportunityid: response.data.opportunityid,\n _bpf_opportunityid_value: response.data.opportunityid,\n // _new_investmentaccount_value: response.data.investmentid,\n tlx_leadfor: 5,\n businessprocessflowinstanceid:\n response.data.businessprocessflowinstanceid,\n _activestageid_value: 'a7e8150f-e667-4e32-a250-9f0e2aa4f1e9',\n _activestageid_value_Formatted: 'Complete Fact Find',\n };\n const allOpportunity = this.auth.getAllOpportunity();\n const newData = [...allOpportunity, newopp];\n this.auth.setOpportunityinSession(newData);\n this.auth.updateSideBar();\n window.scroll(0, 0);\n }\n },\n (error) => {\n console.log(error);\n this.loadingService.stopLoading();\n this.auth.showSnackBarMsg(error.error.message);\n }\n );\n // }\n }\n addGenralOpportunity(\n contactId: string,\n accountId: string,\n userFullName: string\n ) {\n const formData = {\n userFullName,\n contactId,\n accountID: accountId,\n leadFor: 4,\n };\n this.loadingService.startLoading();\n this.userService.saveFinancial(formData).subscribe(\n (response) => {\n this.loadingService.stopLoading();\n if (response) {\n this.auth.setCurrentGeneralInsuranceOpportunityId(\n response.data.opportunityid\n );\n const newopp = {\n name: `${formData.userFullName} - General Insurance Application`,\n opportunityid: response.data.opportunityid,\n _bpf_opportunityid_value: response.data.opportunityid,\n // _new_investmentaccount_value: response.data.investmentid,\n tlx_leadfor: 4,\n businessprocessflowinstanceid:\n response.data.businessprocessflowinstanceid,\n _activestageid_value: '1e95aa1f-ce10-4a49-869f-73a17d4291cd',\n _activestageid_value_Formatted: 'Complete Fact Find',\n };\n const allOpportunity = this.auth.getAllOpportunity();\n const newData = [...allOpportunity, newopp];\n this.auth.setOpportunityinSession(newData);\n this.auth.updateSideBar();\n\n this.loadingService.stopLoading();\n window.scroll(0, 0);\n }\n },\n (error) => {\n console.log(error);\n this.loadingService.stopLoading();\n this.auth.showSnackBarMsg(error.error.message);\n }\n );\n // }\n }\n addlifeOpportunity(\n contactId: string,\n accountId: string,\n userFullName: string\n ) {\n const formData = {\n userFullName,\n contactId,\n accountID: accountId,\n leadFor: 3,\n };\n this.loadingService.startLoading();\n this.userService.saveFinancial(formData).subscribe(\n (response) => {\n this.loadingService.stopLoading();\n if (response) {\n this.auth.setCurrentLifeInsuranceOpportunityId(\n response.data.opportunityid\n );\n const newopp = {\n name: `${formData.userFullName} - Life and Personal Insurance Application`,\n opportunityid: response.data.opportunityid,\n _bpf_opportunityid_value: response.data.opportunityid,\n // _new_investmentaccount_value: response.data.investmentid,\n tlx_leadfor: 3,\n // businessprocessflowinstanceid:\n // response.data.businessprocessflowinstanceid,\n // _activestageid_value: '1e95aa1f-ce10-4a49-869f-73a17d4291cd',\n // _activestageid_value_Formatted: 'Complete Fact Find',\n };\n const allOpportunity = this.auth.getAllOpportunity();\n const newData = [...allOpportunity, newopp];\n this.auth.setOpportunityinSession(newData);\n this.auth.updateSideBar();\n this.loadingService.stopLoading();\n window.scroll(0, 0);\n }\n },\n (error) => {\n console.log(error);\n this.loadingService.stopLoading();\n this.auth.showSnackBarMsg(error.error.message);\n }\n );\n // }\n }\n addfinanceOpportunity(\n contactId: string,\n accountId: string,\n userFullName: string\n ) {\n const formData = {\n userFullName,\n contactId,\n accountID: accountId,\n leadFor: 7,\n };\n this.loadingService.startLoading();\n this.userService.saveFinancial(formData).subscribe(\n (response) => {\n this.loadingService.stopLoading();\n if (response) {\n this.auth.setCurrentFinancialPlanningOpportunityId(\n response.data.opportunityid\n );\n const newopp = {\n name: `${formData.userFullName} - Financial Planning Application`,\n opportunityid: response.data.opportunityid,\n _bpf_opportunityid_value: response.data.opportunityid,\n // _new_investmentaccount_value: response.data.investmentid,\n tlx_leadfor: 7,\n businessprocessflowinstanceid:\n response.data.businessprocessflowinstanceid,\n _activestageid_value: '97f16148-4f74-4ead-887d-c3546a6e8cf9',\n _activestageid_value_Formatted: 'Confirm Financial Planning Needs',\n };\n const allOpportunity = this.auth.getAllOpportunity();\n const newData = [...allOpportunity, newopp];\n this.auth.setOpportunityinSession(newData);\n this.auth.updateSideBar();\n\n this.loadingService.stopLoading();\n window.scroll(0, 0);\n }\n },\n (error) => {\n console.log(error);\n this.loadingService.stopLoading();\n this.auth.showSnackBarMsg(error.error.message);\n }\n );\n // }\n }\n}\n","\n\n\n\n\n
\n
\n \n\n\n\n
\n \n \n\n\n\n\n

\n Already a Cashel Family Office Client?\n Log In\n

\n\n\n\n

\n Dear {{ auth.getLoginUserName()}},\n

\n \n \n
\n\n \n
\n
\n

Please enter your details below.

\n
\n
\n
\n
\n
\n First Name\n \n \n \n \n \n \n
\n
\n
\n
\n Family Name\n \n \n \n \n
\n
\n
\n
\n
\n
\n Mobile Phone\n \n \n \n \n \n \n phone\n \n\n
\n
\n
\n
\n Email\n \n \n email\n \n \n
\n
\n
\n
\n \n
\n
\n Date of Birth \n \n \n\n \n \n \n \n
\n
\n
\n
\n Gender\n \n Male\n Female\n \n \n
\n
\n
\n
\n\n\n
\n
\n Australian Residential Status:\n \n \n Citizen\n Resident\n Non-Resident\n \n \n \n
\n
\n\n
\n
\n Are you an Australian Tax resident?\n \n Yes   \n No\n \n \n
\n
\n
\n\n \n \n
\n \n \n   I agree and accept the Privacy Policy and acknowledge the\n \n Cashel Financial Services Guide,\n Cashel Credit Guide\n and\n Privacy Policy.\n \n \n
\n\n
\n\n \n\n
\n\n
\n \n \n \n
\n\n \n\n \n\n \n
\n \n
\n
\n

Current Home Address

\n
\n \n \n\n
\n
\n
\n Date commenced at this address\n \n \n\n \n \n \n
\n
\n
\n \n \n

Previous Home Address

\n
\n \n \n
\n

Postal Address

\n
\n
\n
\n
\n Is your current address the same as your postal address?\n \n \n Yes\n No\n \n
\n
\n
\n \n \n \n \n \n \n\n \n\n \n \n
\n
\n \n\n \n
\n \n \n \n \n \n \n Next\n \n
\n \n \n
\n\n","import { EventEmitter, Injectable } from '@angular/core';\nimport { Observable, Subject, throwError } from 'rxjs';\nimport { catchError } from 'rxjs/operators';\nimport { HttpService } from '../../../core/services/http.service';\n\nimport { environment } from '../../../../environments/environment';\nimport { HttpClient } from '@angular/common/http';\nimport { LocalStorage as SessionStorage } from '../../../core/constants/local-storage';\nimport { AuthenticationService } from 'src/app/core/services/authentication.service';\n\n/**\n * common library services\n */\n\n@Injectable({\n providedIn: 'root',\n})\nexport class SideNavService {\n constructor(\n private httpService: HttpService,\n private http: HttpClient,\n private auth: AuthenticationService\n ) {}\n\n /**\n * Concatenate url with api end points for micro service\n *\n * @param url url to append with api end points\n *\n * @returns url\n */\n private composeUrl(url: string): string {\n return `${environment.host}/${url}`;\n }\n\n getContactDetail(token, id): Observable {\n return this.httpService\n .get(token, `${this.composeUrl('family-profile?accountId=' + id)}`)\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n updateUserData(token, formData): Observable {\n return this.httpService\n .put(token, `${this.composeUrl('family-profile')}`, formData)\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n updateServiceLevel(token, formData): Observable {\n return this.httpService\n .put(token, `${this.composeUrl('billing/service-level')}`, formData)\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n addSecondaryUser(token, formData): Observable {\n return this.httpService\n .post(\n token,\n `${this.composeUrl('family-profile/add-secondary-user')}`,\n formData\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n\n changeUserPassword(token, formData): Observable {\n return this.httpService\n .put(token, `${this.composeUrl('user/change-password')}`, formData)\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n // deleteLiability(token, id): Observable {\n // return this.httpService\n // .delete(\n // token,\n // `${this.composeUrl('confirm-your-existing-liabilities/delete/' + id)}`\n // )\n // .pipe(catchError(this.handleError('addNewProgram')));\n // }\n deleteExpense(token, id): Observable {\n return this.httpService\n .delete(\n token,\n `${this.composeUrl('confirm-monthly-expense/delete/' + id)}`\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n // getAdress(token, id): Observable {\n // return this.httpService\n // .get(token, `${this.composeUrl('register/address?contactId=' + id)}`)\n // .pipe(catchError(this.handleError('addNewProgram')));\n // }\n\n // goals and concerns\n getGoals(token, id): Observable {\n return this.httpService\n .get(token, `${this.composeUrl('goals-and-concerns?accountId=' + id)}`)\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n deleteGoalAndConcerns(token, id): Observable {\n return this.httpService\n .delete(token, `${this.composeUrl('goals-and-concerns/' + id)}`)\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n\n postGoalAndConcerns(token, formData): Observable {\n return this.httpService\n .post(token, `${this.composeUrl('goals-and-concerns')}`, formData)\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n postAllGoalAndConcerns(token, formData): Observable {\n return this.httpService\n .post(\n token,\n `${this.composeUrl('goals-and-concerns/all-goals')}`,\n formData\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n postAllGoalAndConcernsPriority(token, formData): Observable {\n return this.httpService\n .post(\n token,\n `${this.composeUrl('goals-and-concerns/all-goals-priority')}`,\n formData\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n rapidVOITrigger(token, formData): Observable {\n return this.httpService\n .post(\n token,\n `${this.composeUrl('family-profile/rapid-id-voi-flow')}`,\n formData\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n getUserAllIncome(token, id): Observable {\n return this.httpService\n .get(\n token,\n `${this.composeUrl('income/user-income-by-id?accountId=' + id)}`\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n getMonthlyExpense(token, id): Observable {\n return this.httpService\n .get(\n token,\n `${this.composeUrl('confirm-monthly-expense?contactId=' + id)}`\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n\n getLiabilities(token, id): Observable {\n return this.httpService\n .get(\n token,\n `${this.composeUrl(\n 'confirm-your-existing-liabilities/?accountId=' + id\n )}`\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n\n /// financial planning componment\n\n // goals and concerns\n getClientStrategyRecommendation(token, id): Observable {\n return this.httpService\n .get(\n token,\n `${this.composeUrl(\n 'financial-planning/client-strategy-recommendation?accountId=' + id\n )}`\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n getStrategyRecommendation(token): Observable {\n return this.httpService\n .get(\n token,\n `${this.composeUrl('financial-planning/strategy-recommendation')}`\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n\n getClientProductRecommendation(token, id): Observable {\n return this.httpService\n .get(\n token,\n `${this.composeUrl(\n 'financial-planning/client-product-recommendation?accountId=' + id\n )}`\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n\n getFinancialForecasts(token, accountId, contactId): Observable {\n return this.httpService\n .get(\n token,\n `${this.composeUrl(\n `financial-planning/get-financial-forecasts?contactId=${contactId}&accountId=${accountId}`\n )}`\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n\n getNominatedBaneficary(token, id): Observable {\n return this.httpService\n .get(\n token,\n `${this.composeUrl(\n 'death-benefit-nomination/nominated-beneficary?' + id\n )}`\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n\n getInvestmentRiskProfile(token): Observable {\n return this.httpService\n .get(token, `${this.composeUrl('family-profile/risk-profile')}`)\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n\n postNominatedBeneficiaryStatus(token, formData): Observable {\n return this.httpService\n .post(\n token,\n `${this.composeUrl('family-profile/nominated-beneficiary-status')}`,\n formData\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n\n updateAddress(token, formData): Observable {\n return this.httpService\n .put(token, `${this.composeUrl('register/single-address')}`, formData)\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n uploadImage(token, formData, contactId): Observable {\n const requestData = { ...formData, contactId };\n console.log('request data from service', requestData);\n return this.httpService\n .put(\n token,\n `${this.composeUrl('family-profile/uploadImage')}`,\n requestData\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n\n deleteImage(token, id): Observable {\n return this.httpService\n .delete(token, `${this.composeUrl('family-profile/delete/' + id)}`)\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n\n // contact us\n getCashelTeam(token, id): Observable {\n return this.httpService\n .get(token, `${this.composeUrl('contact-us?accountId=' + id)}`)\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n // billing history\n getbillingHistory(token, id): Observable {\n return this.httpService\n .get(token, `${this.composeUrl('billing?accountId=' + id)}`)\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n getAccountAdvice(token, id): Observable {\n return this.httpService\n .get(\n token,\n `${this.composeUrl('billing/account-advice?accountId=' + id)}`\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n getInvestmentAccount(token, id): Observable {\n return this.httpService\n .get(\n token,\n `${this.composeUrl('billing/investment-account?accountId=' + id)}`\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n getInvestmentManager(token, id): Observable {\n return this.httpService\n .get(\n token,\n `${this.composeUrl(\n 'investment-and-superannuation/investment-manager?investmentId=' + id\n )}`\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n hitDocumentCorePack(token, contactId, accountId, type): Observable {\n return this.httpService\n .get(\n token,\n `${this.composeUrl(\n `investment-and-superannuation/document-core-pack-flow?contactId=${contactId}&accountId=${accountId}&type=${type}`\n )}`\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n getPerformanceAttribute(token, id): Observable {\n return this.httpService\n .get(\n token,\n `${this.composeUrl(\n 'investment-and-superannuation/performance-attribute?pepl_investmentid=' +\n id\n )}`\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n getTopTenHolding(token, id): Observable {\n return this.httpService\n .get(\n token,\n `${this.composeUrl(\n 'investment-and-superannuation/top-ten-holding?parentInvestmentId=' +\n id\n )}`\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n getGrowthSummary(token, id): Observable {\n return this.httpService\n .get(\n token,\n `${this.composeUrl(\n 'investment-and-superannuation/investment-historical-price?investmentId=' +\n id\n )}`\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n getInvestmentNews(token, id): Observable {\n return this.httpService\n .get(\n token,\n `${this.composeUrl(\n 'investment-and-superannuation/investment-news?investmentId=' + id\n )}`\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n\n getInvestmentbreakdown(token, id): Observable {\n return this.httpService\n .get(\n token,\n `${this.composeUrl(\n 'investment-and-superannuation/investment-breakdown?investmentId=' +\n id\n )}`\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n getTransactionData(token, id): Observable {\n return this.httpService\n .get(\n token,\n `${this.composeUrl(\n 'investment-and-superannuation/transaction?investmentAccountId=' + id\n )}`\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n\n getRiskMandateData(token, id): Observable {\n return this.httpService\n .get(\n token,\n `${this.composeUrl(\n 'investment-and-superannuation/risk-mandate?sltaaId=' + id\n )}`\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n\n getInvestRelatedData(token, id): Observable {\n return this.httpService\n .get(\n token,\n `${this.composeUrl(\n 'investment-and-superannuation/invest-related-data?accountId=' + id\n )}`\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n getSharePointDocument(token, link): Observable {\n return this.httpService\n .get(\n token,\n `${this.composeUrl(\n 'investment-and-superannuation/sharepoint-document?sharePointlink=' +\n link\n )}`\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n // getSharePointDocument(token, link): Observable {\n // return this.httpService\n // .get(token, link)\n // .pipe(catchError(this.handleError('addNewProgram')));\n // }\n // family profile , nominated beneficaries\n postNominatedBeneficary(token, formData): Observable {\n return this.httpService\n .post(\n token,\n `${this.composeUrl('death-benefit-nomination/nominated-beneficary')}`,\n formData\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n\n /**\n * Handle error\n * @param string operation\n * @param T result\n */\n handleError(operation = 'operation', result?: T) {\n return (error: any): Observable => {\n const responseCode = error.status;\n if (error.status == '401' || error.statusText == 'Unauthorized') {\n this.auth.logout();\n }\n // if (ResponseCodes.unauthorized.indexOf(responseCode) > -1) {\n // this.customEventService.dispatchEvent('unAuthorizeEvent', 'logoutUser');\n // }\n\n return throwError(error);\n };\n }\n}\n","import { Component, OnInit } from '@angular/core';\nimport { MatDialog } from '@angular/material/dialog';\nimport { ActivatedRoute } from '@angular/router';\nimport { ResumeOrStartPopupComponent } from 'src/app/core/components/layouts/resume-or-start-popup/resume-or-start-popup.component';\nimport { AuthenticationService } from 'src/app/core/services/authentication.service';\nimport { LoadingService } from 'src/app/core/services/loader.service';\nimport { FinancialGoalService } from '../financial-goal/services/financial-goal.service';\nimport { ForgotPasswordComponent } from '../users/forgot-password/forgot-password.component';\nimport { LoginOtpComponent } from '../users/login-otp/login-otp.component';\nimport { LoginComponent } from '../users/login/login.component';\nimport { UsersService } from '../users/services/users.service';\nimport { WithdrawOpportunityPopupComponent } from '../users/withdraw-opportunity-popup/withdraw-opportunity-popup.component';\n\n@Component({\n selector: 'app-start-application',\n templateUrl: './start-application.component.html',\n styleUrls: ['./start-application.component.scss'],\n})\nexport class StartApplicationComponent implements OnInit {\n // userLogedIn= false;\n userName = 'Adam';\n allOpportunity;\n public token;\n userData;\n contactId: string;\n userFullName: string;\n accountId: string;\n nextUrl: string;\n currentStage: string;\n currentStageUrl: string;\n currentOpportunityID: string;\n currentSelectedLeadFor: number;\n currentOppName: string;\n startNewUrl: string;\n constructor(\n public auth: AuthenticationService,\n public dialog: MatDialog,\n private loadingService: LoadingService,\n private financialGoalService: FinancialGoalService,\n private route: ActivatedRoute,\n private userService: UsersService\n ) {}\n\n ngOnInit(): void {\n const user = this.auth.getLoginUserName();\n if (user) {\n this.userName = user;\n }\n if (this.auth.isLoggedIn) {\n this.auth.fetchingData.next('/');\n }\n const queryParameter = this.route.snapshot.queryParams;\n if (\n queryParameter?.userid &&\n queryParameter.userid.trim().length > 0 &&\n !this.auth.isLoggedIn\n ) {\n this.getUserByID(queryParameter.userid);\n }\n }\n getUserByID(id: string) {\n this.loadingService.startLoading();\n this.userService.getUserByID(id).subscribe(\n (responseValue) => {\n this.loadingService.stopLoading();\n if (responseValue && responseValue.data) {\n if (responseValue.data.passwordCreated) {\n this.openDialog(\n 'LOGIN TO YOUR ACCOUNT',\n true,\n responseValue.data.emailaddress1\n );\n } else {\n this.auth.gotoUrl(\n `user/create-password/${responseValue.data.contactid}`,\n {\n oppid: this.route.snapshot.queryParams.oppid,\n email: responseValue.data.emailaddress1,\n }\n );\n this.auth.showSnackBarMsg(\n 'You have not created password yet. please create your password.',\n 9000\n );\n // this.router.navigate(\n // [`user/update-password/${responseValue.data.contactid}`],\n // {\n // queryParams: {\n // oppid: this.route.snapshot.queryParams.oppid,\n // },\n // }\n // );\n }\n }\n },\n (error) => {\n console.log(error);\n this.loadingService.stopLoading();\n this.auth.showSnackBarMsg(\n 'Something Went Wrong,Please Try again after some time'\n );\n }\n );\n }\n applicationSelection(route: string) {\n if (this.auth.isLoggedIn) {\n this.token = this.auth.getUserAccessToken();\n this.contactId = this.auth.getPrimaryUserId();\n this.accountId = this.auth.getUserAccountId();\n this.userData = this.auth.getDecodedUserAccessToken();\n this.userFullName = this.userData.contactDetails[0].fullname;\n this.allOpportunity = this.auth.getAllOpportunity();\n }\n switch (route) {\n case '/debtapp': {\n if (this.auth.isLoggedIn) {\n const currentOpp = this.auth.getCurrentOpportunityId();\n\n this.nextUrl = '/financial-goal';\n if (currentOpp) {\n this.resumeOrStart(2);\n } else {\n this.redirectToURL('/debtapp');\n }\n } else {\n this.redirectToURL('/debtapp');\n }\n break;\n }\n case '/superannuation': {\n if (this.auth.isLoggedIn) {\n const currentOpp = this.auth.getCurrentSuperOpportunityId();\n this.nextUrl = '/superannuation';\n if (currentOpp) {\n this.resumeOrStart(1);\n } else {\n this.addNewOpportunity(1);\n }\n } else {\n this.redirectToURL('/superannuation');\n }\n break;\n }\n case '/managed-account': {\n if (this.auth.isLoggedIn) {\n const currentOpp = this.auth.getCurrentInvestmentOpportunityId();\n this.nextUrl = '/managed-account';\n if (currentOpp) {\n this.resumeOrStart(9);\n } else {\n this.addNewOpportunity(9);\n }\n } else {\n this.redirectToURL('/managed-account');\n }\n break;\n }\n case '/general-insurance': {\n if (this.auth.isLoggedIn) {\n const currentOpp =\n this.auth.getCurrentGeneralInsuranceOpportunityId();\n this.nextUrl = '/general-insurance';\n if (currentOpp) {\n this.resumeOrStart(4);\n } else {\n this.addNewOpportunity(4);\n }\n } else {\n this.redirectToURL('/general-insurance');\n }\n break;\n }\n case '/health-insurance': {\n if (this.auth.isLoggedIn) {\n const currentOpp = this.auth.getCurrentHealthInsuranceOpportunityId();\n this.nextUrl = '/health-insurance';\n if (currentOpp) {\n this.resumeOrStart(5);\n } else {\n this.addNewOpportunity(5);\n }\n } else {\n this.redirectToURL('/health-insurance');\n }\n break;\n }\n case '/estate-planning': {\n if (this.auth.isLoggedIn) {\n const currentOpp = this.auth.getCurrentEstatePlanningOpportunityId();\n this.nextUrl = '/estate-planning';\n if (currentOpp) {\n this.resumeOrStart(6);\n } else {\n this.addNewOpportunity(6);\n }\n } else {\n this.redirectToURL('/estate-planning');\n }\n break;\n }\n case '/financial-planning': {\n if (this.auth.isLoggedIn) {\n const currentOpp =\n this.auth.getCurrentFinancialPlanningOpportunityId();\n this.nextUrl = '/financial-planning';\n if (currentOpp) {\n this.resumeOrStart(7);\n } else {\n this.addNewOpportunity(7);\n }\n } else {\n this.redirectToURL('/financial-planning');\n }\n break;\n }\n case '/life-insurance': {\n if (this.auth.isLoggedIn) {\n const currentOpp = this.auth.getCurrentLifeInsuranceOpportunityId();\n this.nextUrl = '/life-insurance';\n if (currentOpp) {\n this.redirectToURL('/life-insurance');\n } else {\n this.addNewOpportunity(3);\n }\n } else {\n this.redirectToURL('/life-insurance');\n }\n break;\n }\n default: {\n this.redirectToURL('/');\n break;\n }\n }\n }\n\n redirectToURL(url = '') {\n // this.router.navigate([url]);\n // window.scroll(0, 0);\n this.auth.gotoUrl(url);\n }\n setAllData(leadFor: number) {\n const selectedOpp = this.allOpportunity.find((element) => {\n return element.tlx_leadfor == leadFor;\n });\n\n if (selectedOpp) {\n this.currentStage = selectedOpp._activestageid_value;\n this.currentOpportunityID = selectedOpp.opportunityid;\n this.currentSelectedLeadFor = leadFor;\n const opprtunityName = selectedOpp.name.split(' - ');\n this.currentOppName = opprtunityName[1];\n this.startNewUrl = this.nextUrl;\n if (leadFor == 2) {\n // debt\n this.currentStageUrl = this.auth.getDebtCurrentUrl(this.currentStage);\n this.currentOppName =\n this.auth.opportunityType[selectedOpp.tlx_debtneedstransactiontype];\n } else if (leadFor == 1) {\n // superannuation\n this.currentStageUrl = this.auth.getSuperCurrentUrl(this.currentStage);\n } else if (leadFor == 9) {\n // managed account\n this.currentStageUrl = this.auth.getmanagedInvestmentCurrentUrl(\n this.currentStage\n );\n } else if (leadFor == 4) {\n // general insurance\n this.currentStageUrl = this.auth.getGeneralInsuranceCurrentUrl(\n this.currentStage\n );\n } else if (leadFor == 5) {\n // health insurance\n this.currentStageUrl = this.auth.getHealthInsuranceCurrentUrl(\n this.currentStage\n );\n } else if (leadFor == 6) {\n // estate planning\n this.currentStageUrl = this.auth.getEstatePlanningCurrentUrl(\n this.currentStage\n );\n } else if (leadFor == 7) {\n // financial planning\n this.currentStageUrl = this.auth.getFinancialPlanningCurrentUrl(\n this.currentStage\n );\n } else if (leadFor == 3) {\n // health and personal insurance\n this.currentStageUrl = this.auth.getHealthInsuranceCurrentUrl(\n this.currentStage\n );\n }\n }\n }\n resumeOrStart(leadfor: number) {\n this.setAllData(leadfor);\n const dialogRef = this.dialog.open(ResumeOrStartPopupComponent, {\n width: '400px',\n data: {\n name: this.currentOppName,\n },\n });\n dialogRef.afterClosed().subscribe((result) => {\n if (result) {\n if (result == 'resume') {\n this.redirectToURL(this.currentStageUrl);\n } else {\n this.auth.showSnackBarMsg(\n `Please withdraw current ${this.currentOppName} application.`,\n 9000\n );\n this.disableOpportunity(\n this.currentOpportunityID,\n this.currentSelectedLeadFor\n );\n // this.redirectToURL(this.startNewUrl);\n }\n }\n });\n }\n disableOpportunity(oppID: string, leadFor: number) {\n const dialogRef = this.dialog.open(WithdrawOpportunityPopupComponent, {\n width: '720px',\n position: { right: '0', bottom: '0' },\n data: { type: 'add', data: oppID, leadFor },\n });\n dialogRef.afterClosed().subscribe((result) => {\n if (result) {\n if (result.leadFor == 2) {\n this.redirectToURL(this.startNewUrl);\n } else {\n this.addNewOpportunity(leadFor);\n }\n }\n });\n }\n addNewOpportunity(leadFor: number) {\n const formData = {\n userFullName: this.userFullName,\n contactId: this.contactId,\n accountID: this.accountId,\n leadFor,\n };\n let oppName: string;\n this.loadingService.startLoading();\n this.financialGoalService.saveFinancial(formData).subscribe(\n (response) => {\n this.loadingService.stopLoading();\n if (response) {\n let newopp = {};\n\n if (leadFor == 1) {\n this.auth.setCurrentSuperOpportunityId(response.data.opportunityid);\n oppName = 'Superannuation Application';\n newopp = {\n ...newopp,\n businessprocessflowinstanceid:\n response.data.businessprocessflowinstanceid,\n _activestageid_value: 'a11f4588-28ec-8a7a-86f4-1d06dd4200cb',\n _activestageid_value_Formatted: 'Confirm Needs',\n };\n }\n if (leadFor == 9) {\n this.auth.setCurrentInvestmentOpportunityId(\n response.data.opportunityid\n );\n oppName = 'Managed Investment Application';\n newopp = {\n ...newopp,\n businessprocessflowinstanceid:\n response.data.businessprocessflowinstanceid,\n _activestageid_value: '7a2e74cf-784e-4a40-a6d4-52a78cfaddb1',\n _activestageid_value_Formatted:\n 'Confirm Investment Account Needs',\n };\n }\n if (leadFor == 4) {\n this.auth.setCurrentGeneralInsuranceOpportunityId(\n response.data.opportunityid\n );\n oppName = 'General Insurance Application';\n newopp = {\n ...newopp,\n businessprocessflowinstanceid:\n response.data.businessprocessflowinstanceid,\n _activestageid_value: '3d2d49c7-17f7-4e61-be92-7aec9d824fe9',\n _activestageid_value_Formatted: 'Confirm General Insurance Needs',\n };\n }\n if (leadFor == 5) {\n this.auth.setCurrentHealthInsuranceOpportunityId(\n response.data.opportunityid\n );\n oppName = 'Health Insurance Application';\n newopp = {\n ...newopp,\n businessprocessflowinstanceid:\n response.data.businessprocessflowinstanceid,\n _activestageid_value: 'dd7d0688-38bc-484f-b3b6-00d974c00b3d',\n _activestageid_value_Formatted: 'Confirm Health Insurance Needs',\n };\n }\n if (leadFor == 6) {\n this.auth.setCurrentEstatePlanningOpportunityId(\n response.data.opportunityid\n );\n oppName = 'Estate Planning Application';\n newopp = {\n ...newopp,\n businessprocessflowinstanceid:\n response.data.businessprocessflowinstanceid,\n _activestageid_value: '860c244b-9214-48f4-942e-267926726fdb',\n _activestageid_value_Formatted: 'Confirm Estate Planning Needs',\n };\n }\n\n if (leadFor == 7) {\n this.auth.setCurrentFinancialPlanningOpportunityId(\n response.data.opportunityid\n );\n oppName = 'Financial Planning Application';\n newopp = {\n ...newopp,\n businessprocessflowinstanceid:\n response.data.businessprocessflowinstanceid,\n _activestageid_value: '97f16148-4f74-4ead-887d-c3546a6e8cf9',\n _activestageid_value_Formatted:\n 'Confirm Financial Planning Needs',\n };\n }\n if (leadFor == 3) {\n this.auth.setCurrentLifeInsuranceOpportunityId(\n response.data.opportunityid\n );\n oppName = 'Life and Personal Insurance Application';\n }\n newopp = {\n ...newopp,\n name: `${formData.userFullName} - ${oppName}`,\n opportunityid: response.data.opportunityid,\n _bpf_opportunityid_value: response.data.opportunityid,\n // _new_investmentaccount_value: response.data.investmentid,\n tlx_leadfor: leadFor,\n };\n const allOpportunity = this.auth.getAllOpportunity();\n const newData = [...allOpportunity, newopp];\n this.auth.setOpportunityinSession(newData);\n this.auth.updateSideBar();\n window.scroll(0, 0);\n this.redirectToURL(this.nextUrl);\n // const allOpportunity = this.auth.getAllOpportunity();\n // const newData = [\n // ...allOpportunity,\n // {\n // _activestageid_value: 'ece3b3ec-e98a-4d95-8ce0-eff28d771b26',\n // _activestageid_value_Formatted: 'Confirm Loan Needs',\n // _bpf_opportunityid_value: response.data.opportunityid,\n // tlx_debtneedstransactiontype:\n // formData.tlx_debtneedstransactiontype,\n // },\n // ];\n // this.auth.setOpportunityinSession(newData);\n // this.auth.updateSideBar();\n }\n },\n (error) => {\n console.log(error);\n this.loadingService.stopLoading();\n this.auth.showSnackBarMsg(error.error.message);\n }\n );\n // }\n }\n // getDebtCurrentStage(): string {\n // const currentStage = this.allOpportunity[0]._activestageid_value;\n // return this.auth.getDebtCurrentUrl(currentStage);\n // }\n\n openDialog(headline: string, disableEmail = false, email?: string) {\n const dialogRef = this.dialog.open(LoginComponent, {\n width: '500px',\n data: {\n headline,\n disableEmail,\n email,\n },\n });\n\n dialogRef.afterClosed().subscribe((result) => {\n if (result) {\n if (result == 'forgotPassword') {\n this.openForgotDialog();\n } else if (result == 'otpLogin') {\n this.loginOtp();\n } else if (result == 'onRegister') {\n }\n }\n });\n }\n loginOtp() {\n const dialogRef = this.dialog.open(LoginOtpComponent, {\n width: '500px',\n data: {},\n });\n dialogRef.afterClosed().subscribe((result) => {\n if (result) {\n if (result == 'backToLogin') {\n this.openDialog('LOGIN TO YOUR ACCOUNT');\n } else if (result == 'forgotPassword') {\n this.openForgotDialog();\n } else if (result == 'onRegister') {\n }\n }\n });\n }\n openForgotDialog() {\n const dialogRef = this.dialog.open(ForgotPasswordComponent, {\n width: '500px',\n });\n dialogRef.afterClosed().subscribe((result) => {\n if (result) {\n if (result == 'backToLogin') {\n this.openDialog('LOGIN TO YOUR ACCOUNT');\n }\n }\n });\n }\n}\n","\n
\n \n
\n","import { Component, Inject, OnInit } from '@angular/core';\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\nimport { AuthenticationService } from 'src/app/core/services/authentication.service';\nimport { LoadingService } from 'src/app/core/services/loader.service';\nimport { SideNavService } from '../../side-nav-components/service/sidenav.service';\nimport { UsersService } from '../../users/services/users.service';\n\n@Component({\n selector: 'app-header-notification-popup',\n templateUrl: './header-notification-popup.component.html',\n styleUrls: ['./header-notification-popup.component.scss'],\n})\nexport class HeaderNotificationPopupComponent implements OnInit {\n token;\n allNotification = [];\n accountId: string;\n contactId: string;\n constructor(\n @Inject(MAT_DIALOG_DATA) public data: any,\n public dialogRef: MatDialogRef,\n public auth: AuthenticationService,\n private loadingService: LoadingService,\n private userService: UsersService,\n private sidenavService: SideNavService\n ) {}\n\n ngOnInit(): void {\n this.token = this.auth.getUserAccessToken();\n this.accountId = this.auth.getUserAccountId();\n this.contactId = this.auth.getPrimaryUserId();\n this.allNotification = this.data.allNotification;\n }\n // gotoNotificationPage() {\n // this.showComingSoon();\n // // this.dialogRef.close();\n // // // console.log(this.router.url);\n // // if (this.router.url !== '/notification') {\n // // this.auth.setNotificationBackUrl(this.router.url);\n // // }\n // // this.router.navigate(['/notification']);\n // }\n showComingSoon() {\n this.auth.showSnackBarMsg('Coming Soon!')\n }\n}\n","
\n
\n

\n \n
\n\n
\n
\n

Notification Center

\n
\n\n
\n \n \n \n Please Login to see your notification. \n \n \n\n
\n
\n \n\n
\n No Notifiction\n
\n
\n \n
\n
\n","import { Component, OnInit } from '@angular/core';\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\nimport { MatDialogRef } from '@angular/material/dialog';\nimport { AuthenticationService } from 'src/app/core/services/authentication.service';\nimport { LoadingService } from 'src/app/core/services/loader.service';\nimport { UsersService } from '../../users/services/users.service';\nimport { UserNotificationComponent } from '../user-notification.component';\n\n@Component({\n selector: 'app-user-notification-popup',\n templateUrl: './user-notification-popup.component.html',\n styleUrls: ['./user-notification-popup.component.scss'],\n})\nexport class UserNotificationPopupComponent implements OnInit {\n public token;\n accountId: string;\n contactId: string;\n applicationForm: FormGroup;\n constructor(\n private formBuilder: FormBuilder,\n public auth: AuthenticationService,\n private loadingService: LoadingService,\n private userService: UsersService,\n public dialogRef: MatDialogRef\n ) {}\n\n ngOnInit(): void {\n this.token = this.auth.getUserAccessToken();\n this.accountId = this.auth.getUserAccountId();\n this.contactId = this.auth.getPrimaryUserId();\n this.applicationForm = this.formBuilder.group({\n description: ['', Validators.required],\n subject: ['', Validators.required],\n contactId: [this.contactId, Validators.required],\n accountId: [this.accountId, Validators.required],\n });\n }\n onSubmit() {\n if (this.applicationForm.invalid) {\n this.auth.showSnackBarMsg('Please Fill All Options')\n return;\n }\n // console.log(this.applicationForm.value);\n this.loadingService.startLoading();\n this.userService\n .addNotification(this.token, this.applicationForm.value)\n .subscribe(\n (data) => {\n this.loadingService.stopLoading();\n this.dialogRef.close(true);\n },\n (error) => {\n console.log(error);\n this.loadingService.stopLoading();\n this.auth.showSnackBarMsg('Something went wrong!')\n }\n );\n }\n}\n","
\n
\n \n

\n

\n
\n\n
\n
\n \n
\n
\n

Send Message

\n
\n \n
\n Subject\n \n \n \n
\n
\n \n \n \n \n
\n \n \n \n \n \n \n \n \n \n
\n \n
\n \n
\n\n
\n\n
","import { Component, OnInit } from '@angular/core';\nimport { MatDialog } from '@angular/material/dialog';\nimport { GroupedObservable, Subject } from 'rxjs';\nimport { debounceTime, distinctUntilChanged, groupBy } from 'rxjs/operators';\nimport { AuthenticationService } from 'src/app/core/services/authentication.service';\nimport { LoadingService } from 'src/app/core/services/loader.service';\nimport { UsersService } from '../users/services/users.service';\nimport { UserNotificationPopupComponent } from './user-notification-popup/user-notification-popup.component';\n\n@Component({\n selector: 'app-user-notification',\n templateUrl: './user-notification.component.html',\n styleUrls: ['./user-notification.component.scss'],\n})\nexport class UserNotificationComponent implements OnInit {\n allNotification = [];\n filteredNotification = [];\n contactId: string;\n accountId: string;\n selectedNotification = [];\n currentThread = [];\n userFullName;\n userdata;\n currentIndex: number;\n // description: string;\n currentSubject: string;\n public token;\n searchSubject = new Subject();\n // header = 'Notifications';\n // currentStage = 0;\n // totalStage = 0;\n constructor(\n private loadingService: LoadingService,\n private userService: UsersService,\n public auth: AuthenticationService,\n public dialog: MatDialog\n ) {}\n\n ngOnInit(): void {\n this.token = this.auth.getUserAccessToken();\n this.accountId = this.auth.getUserAccountId();\n this.contactId = this.auth.getPrimaryUserId();\n this.userdata = this.auth.getDecodedUserAccessToken();\n this.userFullName = this.userdata.contactDetails[0].fullname.split(' ');\n this.searchSubject\n .pipe(debounceTime(100), distinctUntilChanged())\n .subscribe((value: string) => {\n this._filterNotification(value);\n });\n this.getNotification();\n }\n getNotification() {\n this.selectedNotification = [];\n this.loadingService.startLoading();\n this.userService\n .getUserNotification(this.token, this.contactId, this.accountId)\n .subscribe(\n (response) => {\n // console.log('data we get');\n // console.log(response);\n this.allNotification = [];\n if (response.data && response.data.result2) {\n // const openNotifi = [];\n // const completeNotifi = [];\n const ungroupNotification = [];\n response.data.result2.forEach((element) => {\n const maskDetail = response.data.result.find((a) => {\n return a._activityid_value == element.activityid;\n });\n let createdBy = 'Cashel Developer';\n let createdBySlug = 'CD';\n if (maskDetail.participationtypemask == 1) {\n const created = maskDetail._partyid_value_Formatted.split(' ');\n // createdBy = maskDetail._partyid_value_Formatted\n createdBy = 'You';\n createdBySlug = created[0].charAt(0) + created[1].charAt(0);\n }\n\n const notification = {\n mask: maskDetail.participationtypemask,\n createdOn: element.createdon_Formatted,\n subject: element.subject,\n description: element.description,\n statecode: element.statecode,\n statuscode: element.statuscode,\n activityid: element.activityid,\n // createdBy: element._createdby_value_Formatted,\n // createdBySlug: createdBy[0].charAt(0) + createdBy[1].charAt(0),\n createdBy,\n createdBySlug,\n // regarding: element._regardingobjectid_value_Formatted,\n // regardingId: element._regardingobjectid_value,\n };\n ungroupNotification.push(notification);\n // if (notification.statecode == 0) {\n // openNotifi.push(notification);\n // } else {\n // completeNotifi.push(notification);\n // }\n // this.allNotification.push(notification);\n });\n // this.allNotification = [...openNotifi, ...completeNotifi];\n // console.log('ungroupNotification');\n // console.log(ungroupNotification);\n const groupedResult = ungroupNotification.reduce(function (r, a) {\n r[a.subject] = r[a.subject] || [];\n r[a.subject].push(a);\n return r;\n }, Object.create(null));\n // console.log('groupedResult');\n // console.log(groupedResult);\n // this.allNotification=groupedResult\n const notificationInArray = [];\n for (const notifi in groupedResult) {\n // //console.log(notifi);\n const a = [];\n groupedResult[notifi].forEach((element) => {\n // //console.log(element);\n a.push(element);\n });\n notificationInArray.push({ subject: a[0].subject, allnotifi: a });\n }\n // notificationInArray.reverse();\n this.allNotification = notificationInArray;\n this._filterNotification('');\n }\n // console.log('all notification');\n // console.log(this.allNotification);\n this.loadingService.stopLoading();\n },\n (err) => {\n this.loadingService.stopLoading();\n console.log('error', err);\n this.auth.showSnackBarMsg('Something went wrong!')\n }\n );\n }\n showfullNotifi(data, subject: string) {\n const i = this.allNotification.findIndex((a) => a.subject === subject);\n const newData = [...data];\n if (this.currentIndex == i) {\n this.currentThread = [];\n this.currentSubject = '';\n this.currentIndex = -1;\n } else {\n this.currentIndex = i;\n this.currentSubject = subject;\n this.currentThread = newData.reverse();\n }\n }\n\n sentMessage(description) {\n if (description.value.trim().length > 0) {\n const formdata = {\n description: description.value.trim(),\n subject: this.currentThread[0].subject,\n // regarding: this.currentThread[0].regardingId,\n contactId: this.contactId,\n accountId: this.accountId,\n };\n // console.log(formdata);\n this.loadingService.startLoading();\n this.userService.addNotification(this.token, formdata).subscribe(\n (data) => {\n this.loadingService.stopLoading();\n // console.log(data);\n description.value = '';\n // const created = this.auth.getLoginUserName();\n const notification = {\n mask: 1,\n createdOn: new Date().toLocaleString(),\n subject: formdata.subject,\n description: formdata.description,\n statecode: 0,\n statuscode: 1,\n activityid: data.data,\n // createdBy: element._createdby_value_Formatted,\n // createdBySlug: createdBy[0].charAt(0) + createdBy[1].charAt(0),\n createdBy: 'You',\n createdBySlug:\n this.userFullName[0].charAt(0) + this.userFullName[1].charAt(0),\n // regarding: element._regardingobjectid_value_Formatted,\n // regardingId: element._regardingobjectid_value,\n };\n // console.log('new notification', notification);\n this.currentThread.push(notification);\n // this.allNotification[this.currentIndex].push(notification);\n // this.allNotification[this.currentIndex].insert(0, notification);\n this.allNotification[this.currentIndex].allnotifi.splice(\n 0,\n 0,\n notification\n );\n },\n (error) => {\n console.log(error);\n this.loadingService.stopLoading();\n this.auth.showSnackBarMsg('Something went wrong!')\n }\n );\n } else {\n this.auth.showSnackBarMsg('Please write description!')\n return;\n }\n }\n searchNotification(value: string) {\n this.searchSubject.next(value);\n }\n onBack() {\n const backUrl = this.auth.getbackNotificationurl();\n // console.log(backUrl);\n if (backUrl) {\n // this.router.navigate([`${backUrl}`]);\n this.auth.gotoUrl(`${backUrl}`);\n } else {\n this.auth.showSnackBarMsg('You can not go back, Please login again')\n }\n }\n compose() {\n const dialogRef = this.dialog.open(UserNotificationPopupComponent, {\n maxWidth: '600px',\n width: '100%',\n position: { right: '0', bottom: '0' },\n });\n dialogRef.afterClosed().subscribe((result) => {\n // console.log(`Dialog result: ${result}`);\n if (result) {\n this.getNotification();\n }\n });\n }\n private _filterNotification(value: string) {\n // console.log(value);\n const filterValue = value.toLowerCase();\n if (filterValue.trim().length > 0) {\n this.filteredNotification = [];\n this.allNotification.forEach((notifi) => {\n let flag;\n notifi.allnotifi.forEach((element) => {\n if (\n element.subject.toLowerCase().includes(filterValue) ||\n element.description.toLowerCase().includes(filterValue)\n ) {\n flag = true;\n }\n });\n if (flag == true) {\n this.filteredNotification.push(notifi);\n }\n });\n // console.log(this.filteredNotification);\n } else {\n this.filteredNotification = this.allNotification;\n }\n }\n}\n","\n\n\n
\n
\n \n \n\n\n\n \n\n \n \n\n \n\n\n\n\n\n\n\n\n \n\n
\n
\n \n \n \n \n \n \n Received\n \n 1\n \n \n
\n
\n
\n \n \n \n \n \n \n \n \n
\n \n
\n \n \n
\n Total Notifications ({{filteredNotification.length}})\n \n
\n \n \n \n
\n \n
\n
\n \n
\n \"\"\n \n
\n
\n
\n
\n {{element.allnotifi[0].createdBy}}\n
\n \n
\n
\n

{{element.allnotifi[0].createdOn}}

\n \n
\n
\n
\n \n {{element.allnotifi[0].subject| slice:0:50}}.....\n \n
\n \n
\n \n \n
\n \n \n \n \n \n \n
\n \n
\n \n \n \n \n \n \n Sent \n \n \n \n \n
\n \n \n \n \n \n\n\n\n\n
\n\n\n
\n
\n \n Subject : {{currentSubject}}\n \n\n \n\n
\n\n
\n\n
\n
\n
\n \"\"\n \n
\n
\n
\n
\n {{element.createdBy}}\n \n \n
\n
\n

{{element.createdOn}}

\n \n
\n
\n
\n \n {{element.description}}\n \n
\n \n
\n
\n \n \n \n\n \n
\n\n
\n
\n \n\n
\n
\n
\n Subject:\n \n

{{currentSubject}}

\n \n\n
\n\n
\n \n
\n\n\n
\n
\n \n
\n\n\n
\n\n
\n\n \n \n \n \n \n \n \n \n \n\n\n \n\n\n
\n
\n","import {\n Component,\n OnInit,\n Input,\n OnDestroy,\n Output,\n EventEmitter,\n SimpleChanges,\n OnChanges,\n ViewChild,\n} from '@angular/core';\nimport {\n FormGroup,\n FormBuilder,\n Validators,\n FormArray,\n FormControl,\n} from '@angular/forms';\nimport { HttpClient, HttpParams, HttpHeaders } from '@angular/common/http';\nimport {\n debounce,\n debounceTime,\n distinctUntilChanged,\n ignoreElements,\n map,\n} from 'rxjs/operators';\nimport { LoadingService } from 'src/app/core/services/loader.service';\nimport { UsersService } from '../services/users.service';\nimport { AuthenticationService } from 'src/app/core/services/authentication.service';\nimport { Observable, Subject } from 'rxjs';\nenum housingSituation {\n BOARDING = '1',\n CARAVAN = '2',\n OWN_HOME = '3',\n Own_Home_Mortgage = '4',\n RENTING = '5',\n WITH_PARENTS = '6',\n OTHER = '7',\n}\nenum eNewState {\n NSW = '854500000',\n VIC = '854500001',\n QLD = '854500002',\n WA = '854500003',\n SA = '854500004',\n TAS = '854500005',\n NT = '854500006',\n ACT = '854500007',\n OTHER = '854500008',\n}\nenum stateValue {\n 'New South Wales' = 'NSW',\n 'Victoria' = 'VIC',\n 'Queensland' = 'QLD',\n 'Western Australia' = 'WA',\n 'South Australia' = 'SA',\n 'Tasmania' = 'TAS',\n 'Northern Territory' = 'NT',\n 'Australian Capital Territory' = 'ACT',\n OTHER = 'OTHER',\n}\nenum eNewStreetType {\n '' = '100000198',\n Street = '100000000',\n Court = '100000001',\n Avenue = '100000002',\n Access = '100000003',\n Alley = '100000004',\n Alleyway = '100000005',\n Amble = '100000006',\n Anchorage = '100000007',\n Approach = '100000008',\n Arcade = '100000009',\n Artery = '100000010',\n Basin = '100000011',\n Beach = '100000012',\n Bend = '100000013',\n Block = '100000014',\n Boulevard = '100000015',\n Brace = '100000016',\n Brae = '100000017',\n Break = '100000018',\n Bridge = '100000019',\n Broadway = '100000020',\n Brow = '100000021',\n Bypass = '100000022',\n Byway = '100000023',\n Crescent = '100000024',\n Causeway = '100000025',\n Centre = '100000026',\n Centreway = '100000027',\n Chase = '100000028',\n Circle = '100000029',\n Circlet = '100000030',\n Circuit = ' 100000031',\n Circus = '100000032',\n Close = '100000033',\n Colonnade = '100000034',\n Common = '100000035',\n Concourse = '100000036',\n Copse = '100000037',\n Corner = '100000038',\n Corso = '100000039',\n Courtyard = '100000040',\n Cove = '100000041',\n Crest = '100000042',\n Cross = '100000043',\n Crossing = '100000044',\n Crossroad = '100000045',\n Crossway = '100000046',\n Cruiseway = '100000047',\n CulDeSac = '100000048',\n Cutting = '100000049',\n Drive = '100000050',\n Dale = '100000051',\n Dell = '100000052',\n Deviation = '100000053',\n Dip = '100000054',\n Distributor = '100000055',\n Driveway = '100000056',\n Edge = '100000057',\n Elbow = '100000058',\n End = '100000059',\n Entrance = '100000060',\n Esplanade = '100000061',\n Estate = '100000062',\n Expressway = '100000063',\n Fairway = '100000064',\n FireTrack = '100000065',\n Firetrail = '100000066',\n Flat = '100000067',\n Follow = '100000068',\n Footway = '100000069',\n Foreshore = '100000070',\n Formation = '100000071',\n Freeway = '100000072',\n Front = '100000073',\n Frontage = '100000074',\n Gap = '100000075',\n Garden = '100000076',\n Gardens = '100000077',\n Gate = '100000078',\n Gates = '100000079',\n Glade = '100000080',\n Glen = '100000081',\n Grange = '100000082',\n Green = '100000083',\n Ground = '100000084',\n Grove = '100000085',\n Gully = '100000086',\n Highway = '100000087',\n Heights = '100000088',\n Highroad = '100000089',\n Hill = '100000090',\n Interchange = '100000091',\n Intersection = '100000092',\n Junction = '100000093',\n Key = '100000094',\n Lane = '100000095',\n Line = '100000096',\n Landing = '100000097',\n Laneway = '100000098',\n Lees = '100000099',\n Link = '100000100',\n Little = '100000101',\n Lookout = '100000102',\n Loop = '100000103',\n Mall = '100000104',\n Meander = '100000105',\n Mew = '100000106',\n Mews = '100000107',\n Motorway = '100000108',\n Mount = '100000109',\n Nook = '100000110',\n Outlook = '100000111',\n Place = '100000112',\n Parade = '100000113',\n Park = '100000114',\n Parklands = '100000115',\n Parkway = '100000116',\n Part = '100000117',\n Pass = '100000118',\n Path = '100000119',\n Pathway = '100000120',\n Piazza = '100000121',\n Plateau = '100000122',\n Plaza = '100000123',\n Pocket = '100000124',\n Point = '100000125',\n Port = '100000126',\n Promenade = '100000127',\n Quad = '100000128',\n Quadrangle = '100000129',\n Quadrant = '100000130',\n Quay = '100000131',\n Quays = '100000132',\n Ramble = '100000133',\n Ramp = '100000134',\n Range = '100000135',\n Reach = '100000136',\n Reserve = '100000142',\n Rest = '100000143',\n Retreat = '100000144',\n Ride = '100000145',\n Ridge = '100000146',\n Ridgeway = '100000147',\n RightOfWay = '100000148',\n Ring = '100000149',\n Rise = '100000150',\n River = '100000151',\n Riverway = '100000137',\n Riviera = '100000138',\n Road = '100000139',\n Roadside = '100000140',\n Roadway = '100000141',\n Ronde = '100000152',\n Rosebowl = '100000153',\n Rotary = '100000154',\n Round = '100000155',\n Route = '100000156',\n Row = '100000157',\n Rue = '100000158',\n Run = '100000159',\n ServiceWay = '100000160',\n Siding = '100000161',\n Slope = '100000162',\n Sound = '100000163',\n Spur = '100000164',\n Square = '100000165',\n Stairs = '100000166',\n StateHighway = '100000167',\n Steps = '100000168',\n Strand = '100000169',\n Strip = '100000170',\n Subway = '100000171',\n Terrace = '100000172',\n Tarn = '100000173',\n Thoroughfare = '100000174',\n Tollway = '100000175',\n Top = '100000176',\n Tor = '100000177',\n Towers = '100000178',\n Track = '100000179',\n Trail = '100000180',\n Trailer = '100000181',\n Triangle = '100000182',\n Trunkway = '100000183',\n Turn = '100000184',\n Underpass = '100000185',\n Vale = '100000186',\n Viaduct = '100000187',\n View = '100000188',\n Villas = '100000189',\n Vista = '100000190',\n Way = '100000191',\n Wade = '100000192',\n Walk = '100000193',\n Walkway = '100000194',\n Wharf = '100000195',\n Wynd = '100000196',\n Yard = '100000197',\n}\n\n@Component({\n selector: 'app-address',\n templateUrl: './address.component.html',\n styleUrls: ['./address.component.scss'],\n})\nexport class AddressComponent implements OnInit {\n selected = 'option2';\n formNumber: any;\n public token;\n\n formSubmitData = false;\n housSituation = housingSituation;\n @Input() parentForm: FormGroup;\n @Input()\n set formSubmit(type: boolean) {\n if (type) {\n if(this.parentForm.get('new_streettype').invalid) {\n this.new_streettype_Formatted = ''\n this.isStreetValid = false;\n }\n\n if(this.parentForm.get('new_country').invalid) {\n this.new_country_Formated = '';\n this.isCountryValid = false;\n }\n\n this.formSubmitData = type;\n this.parentForm.markAllAsTouched();\n }\n }\n @Input()\n set number(type) {\n if (type) {\n this.formNumber = type;\n }\n }\n // countryKeys = [];\n countries = [];\n streetTypeKeys = [];\n streetTypes = eNewStreetType;\n filterStreetTypekeys = [];\n filteredCountries = [];\n new_streettype_Formatted = '';\n new_country_Formated = '';\n isCountryValid = true;\n isStreetValid = true;\n stateKeys = [];\n states = eNewState;\n allAddress = [];\n // results$: Observable\n searchInputData: HTMLInputElement;\n subject = new Subject();\n loading = false;\n constructor(\n private formBuilder: FormBuilder,\n private http: HttpClient,\n private loadingService: LoadingService,\n private userService: UsersService,\n public auth: AuthenticationService\n ) {\n // this.countryKeys = Object.keys(this.countries);\n this.streetTypeKeys = Object.keys(this.streetTypes);\n this.filterStreetTypekeys = this.streetTypeKeys;\n this.stateKeys = Object.keys(this.states);\n }\n\n ngOnInit() {\n const findStreetType = this.streetTypeKeys.find(key => this.streetTypes[key] === this.parentForm.value.new_streettype);\n this.new_streettype_Formatted = findStreetType || '';\n if (!findStreetType) {\n this.parentForm.get('new_streettype').setValue('100000198');\n }\n this.token = this.auth.getUserAccessToken();\n this.subject\n .pipe(debounceTime(1000), distinctUntilChanged())\n .subscribe((value) => {\n this.getAddress(this.searchInputData);\n });\n\n this.getContries();\n }\n getFilteredStreetType(event) {\n this.filterStreetTypekeys = this.streetTypeKeys.filter((text) => text.toLowerCase().includes(event.target.value.toLowerCase()));\n this.parentForm.get('new_streettype').setValue('');\n this.isStreetValid = true;\n }\n setFilteredStreetType(event) {\n this.isStreetValid = true;\n this.new_streettype_Formatted = event.option.value;\n this.parentForm.get('new_streettype').setValue(this.streetTypes[event.option.value]);\n }\n\n getFilteredCountries(event) {\n this.filteredCountries = this.countries.filter((text) => text.tlx_name.toLowerCase().includes(event.target.value.toLowerCase()));\n this.parentForm.get('new_country').setValue('');\n this.isCountryValid = true;\n }\n\n onFormInputTypeBlur(event, type: string) {\n if (type === 'streetType') {\n if (this.streetTypeKeys.find((text) => text.toLowerCase().includes(event.target.value.toLowerCase()))) {\n this.isCountryValid = true;\n this.parentForm.get('new_streettype').setValue(this.streetTypes[event.target.value]);\n }\n } else if (type === 'countryType') {\n const text = this.countries.find((text) => text.tlx_name.toLowerCase() === event.target.value.toLowerCase());\n if (text) {\n this.isCountryValid = true;\n this.parentForm.get('new_country').setValue(text.tlx_countryid);\n }\n }\n\n if (this.parentForm.get('new_streettype').invalid) {\n event.target.value = ''\n this.isStreetValid = false;\n }\n\n if (this.parentForm.get('new_country').invalid) {\n event.target.value = '';\n this.isCountryValid = false;\n }\n }\n\n setFilteredCountry(event) {\n const text = this.countries.find((text) => text.tlx_countryid === event.option.value);\n\n if(text) {\n this.isCountryValid = true;\n this.new_country_Formated = text.tlx_name;\n this.parentForm.get('new_country').setValue(text.tlx_countryid);\n }\n }\n\n search(data: HTMLInputElement) {\n this.searchInputData = data;\n const searchText = data.value;\n\n this.subject.next(searchText);\n }\n\n getContries() {\n // this.loadingService.startLoading();\n this.loading = true;\n const allContries = this.auth.getAllCountries();\n\n if (allContries && allContries?.length) {\n this.countries = [...allContries];\n this.new_country_Formated = this.countries.find(text => text.tlx_countryid === this.parentForm.value.new_country)?.tlx_name;\n this.loading = false;\n } else {\n this.userService\n .getCountries(this.token)\n .subscribe(\n (response) => {\n this.countries = [...response.data];\n this.new_country_Formated = this.countries.find(text => text.tlx_countryid === this.parentForm.value.new_country)?.tlx_name;\n this.auth.setAllCountries([...response.data]);\n\n // this.loadingService.stopLoading();\n this.loading = false;\n },\n (error) => {\n // this.loadingService.stopLoading();\n this.loading = false;\n this.auth.showSnackBarMsg('Something went wrong!.')\n }\n );\n }\n }\n\n getAddress(addressInput: HTMLInputElement) {\n if (addressInput.value.trim().length <= 0) {\n // console.log('Please add something to search');\n this.auth.showSnackBarMsg('Please add something to search')\n return;\n }\n // //console.log(addressInput.value.trim());\n // this.loadingService.startLoading();\n this.loading = true;\n this.userService\n .getBingAddress(this.token, addressInput.value.trim())\n .subscribe(\n (response) => {\n this.allAddress = [];\n //// console.log(response.data.value);\n response.data.value.map((address) => {\n this.allAddress.push(address.address);\n });\n // console.log(this.allAddress);\n // this.loadingService.stopLoading();\n this.loading = false;\n },\n (error) => {\n // this.loadingService.stopLoading();\n this.loading = false;\n this.auth.showSnackBarMsg('Something went wrong!.')\n }\n );\n }\n populateAddress(address) {\n let data = {};\n data = {\n new_addresssearch: address.formattedAddress,\n tlx_streetaddress2: address.streetName,\n tlx_city: address.locality,\n new_state: eNewState[stateValue[`${address.adminDistrict}`]],\n // new_country: this.country[`${address.countryRegion}`],\n new_country: this.countries.find(text => text.tlx_name === address.countryRegion)?.tlx_countryid,\n tlx_postcode: address.postalCode,\n };\n if (address.houseNumber) {\n if (address.houseNumber.includes('/')) {\n const splitaddress = address.houseNumber.split('/');\n data = {\n ...data,\n new_streetnumber: splitaddress[1],\n tlx_street: splitaddress[0],\n };\n } else {\n data = {\n ...data,\n new_streetnumber: address.houseNumber,\n };\n }\n }\n if (address.addressLine && address.addressLine.includes('Level')) {\n const splitaddress = address.addressLine.split(',');\n data = {\n ...data,\n new_streetnumber: splitaddress[1],\n tlx_street: splitaddress[0],\n };\n }\n console.log(data);\n this.parentForm.patchValue(data);\n // console.log(this.parentForm.value);\n }\n get addressFControl() {\n return this.parentForm.controls;\n }\n}\n","\n
\n
\n
\n
\n \n \n\n \"img\"\n \n\n \n loading...\n \n \n {{option.formattedAddress}}\n \n \n\n \n \n \n \n\n
\n
\n
\n
\n
\n Unit/Apartment\n \n \n \n
\n
\n Street Number\n \n \n \n\n
\n
\n\n Street Name\n \n \n \n\n
\n
\n
\n Street Type\n \n\n \n \n \n \n {{element}}\n \n \n \n
\n
\n\n
\n City\n \n \n \n \n\n
\n\n
\n
\n State\n \n \n \n {{element}}\n \n \n \n \n
\n
\n\n\n
\n
\n Country\n \n\n \n \n \n \n {{element.tlx_name}}\n \n \n \n
\n
\n\n\n
\n\n Zip/Postal Code\n \n \n \n \n\n
\n\n
\n
\n Address Status\n \n \n None\n Boarding\n Caravan \n Own Home \n Own Home Mortgage \n Renting \n With Parents \n Other \n \n \n \n
\n
\n
\n\n
\n
\n","import { Component, Inject, OnInit } from '@angular/core';\nimport {\n MatDialog,\n MatDialogRef,\n MAT_DIALOG_DATA,\n} from '@angular/material/dialog';\nimport { LoadingService } from 'src/app/core/services/loader.service';\n\n@Component({\n selector: 'app-confirmation-popup',\n templateUrl: './confirmation-popup.component.html',\n styleUrls: ['./confirmation-popup.component.scss'],\n})\nexport class ConfirmationPopupComponent implements OnInit {\n constructor(\n public dialogRef: MatDialogRef,\n private loadingService: LoadingService,\n public dialog: MatDialog,\n @Inject(MAT_DIALOG_DATA) public data: any\n ) {}\n header: string;\n content: string;\n ngOnInit(): void {\n this.header = this.data.header;\n this.content = this.data.content;\n // if (this.data.emailExist && this.data.emailExist == true) {\n // this.header = 'Email Already Exist!';\n // this.content =\n // 'As a first time applicant, an email has been sent to ' +\n // this.data.email +\n // '. Please follow the prompts to create a password and to continue with the application.';\n\n // if (this.data.headerData) {\n // this.header = this.data.headerData;\n // }\n // }\n // if (this.data.msg) {\n\n // }\n }\n}\n","
\n \n \n
\n
\n\n \"\"\n
\n\n \n
\n
\n
\n
{{header}}
\n
\n
\n {{content}}\n \n\n\n
\n
\n\n\n
\n \n
\n
\n
\n \n\n \n\n\n
\n","import { Injectable } from '@angular/core';\nimport { NativeDateAdapter } from '@angular/material/core';\n\n/** Adapts the native JS Date for use with cdk-based components that work with dates. */\n@Injectable({\n providedIn: 'root',\n})\nexport class CustomDateAdapter extends NativeDateAdapter {\n parse(value: any): Date | null {\n if (typeof value === 'string' && value.indexOf('/') > -1) {\n if (value.length == 10) {\n const str = value.split('/');\n const year = Number(str[2]);\n const month = Number(str[1]) - 1;\n const date = Number(str[0]);\n // //console.log('year');\n // //console.log(year);\n // //console.log('month');\n // //console.log(month);\n // //console.log('date');\n // //console.log(date);\n if (month > 12) {\n // console.log('Invalid Date');\n // snackbar.open('Invalid Date', 'Done', {\n // duration: 3000,\n // });\n return;\n }\n // console.log(year, '/', month, '/', date);\n return new Date(year, month, date);\n }\n }\n const timestamp = typeof value === 'number' ? value : Date.parse(value);\n return isNaN(timestamp) ? null : new Date(timestamp);\n }\n\n // retirar quando for feito o merge da data por mmalerba\n format(date: Date, displayFormat: Object): string {\n date = new Date(\n Date.UTC(\n date.getFullYear(),\n date.getMonth(),\n date.getDate(),\n date.getHours(),\n date.getMinutes(),\n date.getSeconds(),\n date.getMilliseconds()\n )\n );\n displayFormat = Object.assign({}, displayFormat, { timeZone: 'utc' });\n\n const dtf = new Intl.DateTimeFormat(this.locale, displayFormat);\n\n return dtf.format(date).replace(/[\\u200e\\u200f]/g, '');\n }\n}\n","import { Component, Inject, OnInit } from '@angular/core';\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\nimport {\n MatDialog,\n MatDialogRef,\n MAT_DIALOG_DATA,\n} from '@angular/material/dialog';\nimport { Observable } from 'rxjs';\nimport { map, startWith } from 'rxjs/operators';\nimport { AuthenticationService } from 'src/app/core/services/authentication.service';\nimport { LoadingService } from 'src/app/core/services/loader.service';\nimport { SideNavService } from '../../side-nav-components/service/sidenav.service';\nimport { UsersService } from '../services/users.service';\n\n@Component({\n selector: 'app-feedback-popup',\n templateUrl: './feedback-popup.component.html',\n styleUrls: ['./feedback-popup.component.scss'],\n})\nexport class FeedbackPopupComponent implements OnInit {\n token;\n applicationForm: FormGroup;\n popupType = 'feedback';\n accountId: string;\n contactId: string;\n teamsId = [];\n\n selectedData = [];\n constructor(\n @Inject(MAT_DIALOG_DATA) public data: any,\n public dialogRef: MatDialogRef,\n private formBuilder: FormBuilder,\n public dialog: MatDialog,\n private auth: AuthenticationService,\n private loadingService: LoadingService,\n private userService: UsersService,\n private sidenavService: SideNavService\n ) {}\n\n ngOnInit(): void {\n this.token = this.auth.getUserAccessToken();\n this.accountId = this.auth.getUserAccountId();\n this.contactId = this.auth.getPrimaryUserId();\n\n this.applicationForm = this.formBuilder.group({\n angusContactId: ['5b72a549-4bd2-ea11-a813-00224814f90e'],\n selectedTeamMember: [''],\n description: ['', Validators.required],\n subject: ['Feedback'],\n contactId: [this.contactId, Validators.required],\n accountId: [this.accountId, Validators.required],\n });\n this.popupType = this.data.type;\n if (this.popupType == 'messagetoTeam') {\n setTimeout(() => {\n this.getCashelTeam();\n }, 1);\n }\n }\n onSubmit() {\n console.log(this.applicationForm.value);\n if (this.applicationForm.invalid) {\n this.auth.showSnackBarMsg('Please Fill All Options')\n return;\n }\n this.loadingService.startLoading();\n let formdata = {};\n if (this.popupType == 'feedback') {\n formdata = {\n ...this.applicationForm.value,\n };\n } else {\n const allTeamsId = this.selectedData.map((el) => el.value);\n formdata = {\n ...this.applicationForm.value,\n teamid: allTeamsId,\n };\n }\n\n this.userService.addNotification(this.token, formdata).subscribe(\n (data) => {\n this.loadingService.stopLoading();\n this.dialogRef.close(true);\n },\n (error) => {\n console.log(error);\n this.loadingService.stopLoading();\n this.auth.showSnackBarMsg('Something went wrong!')\n }\n );\n }\n getCashelTeam() {\n this.loadingService.startLoading();\n this.sidenavService.getCashelTeam(this.token, this.accountId).subscribe(\n (response) => {\n this.loadingService.stopLoading();\n if (response && response.data && response.data[0]) {\n console.log(response);\n\n if (response.data[0].owninguser) {\n const data = {\n name: response.data[0].owninguser.fullname,\n value: response.data[0].owninguser.systemuserid,\n };\n this.teamsId.push(data);\n this.addDataInselectionArray({ value: data.value });\n }\n if (response.data[0].new_FinancialPlanner) {\n const data = {\n name: response.data[0].new_FinancialPlanner.fullname,\n value: response.data[0].new_FinancialPlanner.systemuserid,\n };\n this.teamsId.push(data);\n this.addDataInselectionArray({ value: data.value });\n }\n if (response.data[0].new_MortgageBroker) {\n const data = {\n name: response.data[0].new_MortgageBroker.fullname,\n value: response.data[0].new_MortgageBroker.systemuserid,\n };\n this.teamsId.push(data);\n this.addDataInselectionArray({ value: data.value });\n }\n if (response.data[0].new_Associate) {\n const data = {\n name: response.data[0].new_Associate.fullname,\n value: response.data[0].new_Associate.systemuserid,\n };\n this.teamsId.push(data);\n this.addDataInselectionArray({ value: data.value });\n }\n }\n },\n (error) => {\n this.loadingService.stopLoading();\n this.auth.showSnackBarMsg('Something Went Wrong, try again after some time.')\n console.log(error);\n }\n );\n }\n addDataInselectionArray(event) {\n const found = this.selectedData.findIndex((el) => {\n return el.value == event.value;\n });\n if (found == -1) {\n const teamdata = this.teamsId.find((el) => el.value == event.value);\n if (teamdata) {\n this.selectedData.push(teamdata);\n }\n }\n }\n saveTeamMemberId(event) {\n console.log('event');\n console.log(event);\n this.applicationForm.get('selectedTeamMember').setValue('');\n const found = this.selectedData.find((el) => {\n return el.value == event.value;\n });\n\n if (found) {\n this.auth.showSnackBarMsg('Already Selected')\n } else {\n const teamdata = this.teamsId.find((el) => el.value == event.value);\n if (teamdata) {\n this.selectedData.push(teamdata);\n }\n }\n }\n\n removeteamInUI(value: string) {\n const index = this.selectedData.findIndex((el) => el.value == value);\n if (index > -1) {\n this.selectedData.splice(index, 1);\n }\n }\n}\n","
\n \n
\n

\n \n
\n
\n
\n
\n

Send Feedback

\n

Send Message to your team

\n
\n\n As we continue to improve our website, please let us know your thoughts.\n \n
\n
\n
\n Select Recipient\n \n \n {{team.name}}\n \n \n
\n \n \n {{chip.name}}\n \n \n \n \n
\n
\n \n \n \n \n
\n \n \n
\n \n \n \n \n
\n
\n\n \n
\n \n\n \n
\n\n\n \n
\n \n \n
\n
\n
","import { Component, OnInit } from '@angular/core';\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\nimport { MatDialog, MatDialogRef } from '@angular/material/dialog';\nimport { AuthenticationService } from 'src/app/core/services/authentication.service';\nimport { LoadingService } from 'src/app/core/services/loader.service';\nimport { ConfirmationPopupComponent } from '../confirmation-popup/confirmation-popup.component';\nimport { UsersService } from '../services/users.service';\n\n@Component({\n selector: 'app-forgot-password',\n templateUrl: './forgot-password.component.html',\n styleUrls: ['./forgot-password.component.scss'],\n})\nexport class ForgotPasswordComponent implements OnInit {\n selected = 'option2';\n submitted = false;\n submitted2 = false;\n forgotForm: FormGroup;\n status = true;\n loginText = 'Send Reset Link';\n panelOpenState = false;\n clientForgotMail = '';\n\n constructor(\n public dialogRef: MatDialogRef,\n private _formBuilder: FormBuilder,\n private userService: UsersService,\n private auth: AuthenticationService,\n private loadingService: LoadingService,\n public dialog: MatDialog,\n ) {}\n\n ngOnInit(): void {\n this.forgotForm = this._formBuilder.group({\n username: ['', [Validators.required]],\n });\n }\n\n togglePanel() {\n this.panelOpenState = !this.panelOpenState;\n }\n\n openDialog(email, header: string, content: string) {\n this.dialogRef.close();\n const dialogRef = this.dialog.open(ConfirmationPopupComponent, {\n width: '500px',\n data: { email, header, content },\n });\n }\n\n /***\n * Forgot Password Implementation\n */\n forgotPassword() {\n this.submitted2 = true;\n if (this.forgotForm.invalid) {\n return;\n }\n this.loginText = 'Please Wait ...';\n this.loadingService.startLoading();\n // console.log(this.forgotForm.value);\n this.userService.forgotPass(this.forgotForm.value).subscribe(\n (response) => {\n // console.log(response);\n this.loadingService.stopLoading();\n if (response) {\n this.loginText = 'Send Reset Link';\n\n const msg =\n 'A confirmation e-mail has been sent to ' +\n this.forgotForm.controls.username.value +\n '. Check your inbox and click on the \"Confirm my email\" link to confirm your email address.';\n const header = 'Confirm your email address!';\n\n this.openDialog(this.forgotForm.controls.username.value, header, msg);\n // alert(\"To reset your password please check your mail box\");\n }\n },\n (error) => {\n this.loadingService.stopLoading();\n this.loginText = 'Login';\n this.submitted = false;\n // alert(\"Email is either incorrect or not registered.\");\n this.auth.showSnackBarMsg('Email is either incorrect or not registered.')\n }\n );\n }\n backToLogin() {\n this.dialogRef.close('backToLogin');\n }\n}\n","
\n \n \n \n \n \n\n\n
\n
\n
\n
\n
\n \n \n \n \n
\n
\n

Forgot Password?

\n
\n Please enter your registered email to reset your password\n
\n \n Email address*\n \n \n Email is required\n \n\n
\n \n \n \n
\n \n\n
\n \n
\n
\n\n
\n","import { Component, OnDestroy, OnInit } from '@angular/core';\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\nimport { MatDialogRef } from '@angular/material/dialog';\nimport { AuthenticationService } from 'src/app/core/services/authentication.service';\nimport { LoadingService } from 'src/app/core/services/loader.service';\nimport { UsersService } from '../services/users.service';\n\n@Component({\n selector: 'app-login-otp',\n templateUrl: './login-otp.component.html',\n styleUrls: ['./login-otp.component.scss'],\n})\nexport class LoginOtpComponent implements OnInit, OnDestroy {\n hide = true;\n SendOTPButton = 'Send OTP';\n Verifybutton = 'Verify';\n otpTried = 0;\n timer = 60;\n inerval;\n resendButton = false;\n applicationForm: FormGroup;\n constructor(\n public dialogRef: MatDialogRef,\n private formBuilder: FormBuilder,\n private userService: UsersService,\n private auth: AuthenticationService,\n private loadingService: LoadingService\n ) {}\n\n ngOnInit(): void {\n this.applicationForm = this.formBuilder.group({\n username: ['', [Validators.required]],\n password: ['', [Validators.required]],\n });\n }\n ngOnDestroy(): void {\n this.clearTimeInterval();\n }\n changeEmail() {\n this.otpTried = 0;\n this.applicationForm.get('username').enable();\n this.clearTimeInterval();\n }\n sendOtp() {\n if (this.otpTried < 5) {\n if (this.applicationForm.get('username').invalid) {\n this.auth.showSnackBarMsg('Username is required!.');\n return;\n }\n this.SendOTPButton = 'Please wait..';\n this.loadingService.startLoading();\n this.userService.sendOtp(this.applicationForm.getRawValue()).subscribe(\n (response) => {\n if (response) {\n this.otpTried++;\n this.applicationForm.get('username').disable();\n this.loadingService.stopLoading();\n this.auth.showSnackBarMsg('OTP sent successfully!.');\n\n this.timer = 60;\n this.resendButton = true;\n this.setTimeInterval();\n }\n },\n (err) => {\n console.log('error', err);\n if (err.error.message === 'Email not Found') {\n this.auth.showSnackBarMsg('Email Not Found!.');\n } else {\n this.auth.showSnackBarMsg('Something Went Wrong, try again!.');\n }\n this.SendOTPButton = 'Send OTP';\n this.loadingService.stopLoading();\n }\n );\n }\n }\n setTimeInterval() {\n if (this.inerval) {\n clearInterval(this.inerval);\n }\n this.inerval = setInterval(() => {\n console.log(this.timer);\n if (this.timer == 0) {\n this.resendButton = false;\n clearInterval(this.inerval);\n } else {\n this.timer--;\n }\n }, 1000);\n }\n verifyOtp() {\n if (this.applicationForm.invalid) {\n return;\n }\n this.Verifybutton = 'Please wait..';\n this.loadingService.startLoading();\n console.log(this.applicationForm.getRawValue());\n this.userService.loginWithOtp(this.applicationForm.getRawValue()).subscribe(\n (response) => {\n if (response) {\n this.clearTimeInterval();\n this.setToken(response.data.accessToken);\n this.setImage(response.data.image);\n this.auth.autoLogout();\n this.loadingService.stopLoading();\n this.auth.fetchingData.next(this.auth.getCurrentUrl());\n this.dialogRef.close('loggedIn');\n }\n },\n (err) => {\n if (err.error.message === 'otpNotMatch') {\n this.auth.showSnackBarMsg('OTP is incorrect!');\n } else if (err.error.message === 'expireOTP') {\n this.auth.showSnackBarMsg('OTP Expired!');\n } else {\n this.auth.showSnackBarMsg('OTP is incorrect.');\n }\n this.loadingService.stopLoading();\n this.Verifybutton = 'Verify';\n }\n );\n }\n clearTimeInterval() {\n if (this.inerval) {\n clearInterval(this.inerval);\n }\n }\n backToLogin() {\n this.dialogRef.close('backToLogin');\n }\n onRegister() {\n this.dialogRef.close('onRegister');\n }\n // forgotPassword() {\n // this.dialogRef.close('forgotPassword');\n // }\n\n /**\n * Sets token\n *\n * @param response User data\n */\n setToken(response) {\n this.auth.setLoginUserDetail(response);\n this.auth.isLoggedIn = true;\n }\n\n /**\n * Sets image\n *\n * @param response User data\n */\n setImage(response) {\n this.auth.setLoginUserImage(response);\n }\n}\n","
\n\n
\n
\n
\n
\n
\n \"\"\n
\n
\n

Login with One Time Password

\n \n
\n
\n \n Email\n \n \n

0\" (click)=\"changeEmail()\" class=\"change-email\">Change Email

\n \n\n
\n
0\" >\n \n Enter OTP \n \n \n \n \n \n \n\n
\n \n \n\n \n
\n
0 && otpTried<5\">\n

0\" class=\"margin0\">in {{timer}} sec.

\n \n\n
\n \n \n \n\n
\n \n
\n
\n\n
\n","import { Component, OnDestroy, OnInit } from '@angular/core';\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\nimport { MatDialog, MatDialogRef } from '@angular/material/dialog';\nimport { Subject } from 'rxjs';\nimport { AuthenticationService } from 'src/app/core/services/authentication.service';\nimport { LoadingService } from 'src/app/core/services/loader.service';\nimport { ConfirmationPopupComponent } from '../confirmation-popup/confirmation-popup.component';\nimport { LoginComponent } from '../login/login.component';\nimport { UsersService } from '../services/users.service';\nimport { debounceTime, distinctUntilChanged } from 'rxjs/operators';\nimport { ForgotPasswordComponent } from '../forgot-password/forgot-password.component';\nimport { registerLocaleData } from '@angular/common';\n\n@Component({\n selector: 'app-login-page',\n templateUrl: './login-page.component.html',\n styleUrls: ['./login-page.component.scss'],\n})\nexport class LoginPageComponent implements OnInit, OnDestroy {\n submitted = false;\n applicationForm: FormGroup;\n emailSubject = new Subject();\n status = true;\n loginText = 'Login';\n hide = true;\n public token;\n userData;\n\n constructor(\n public dialogRef: MatDialogRef,\n private formBuilder: FormBuilder,\n private loadingService: LoadingService,\n private userService: UsersService,\n public dialog: MatDialog,\n private auth: AuthenticationService\n ) {}\n\n ngOnInit(): void {\n this.applicationForm = this.formBuilder.group({\n username: ['', [Validators.required]],\n password: ['', [Validators.required]],\n });\n\n this.emailSubject\n .pipe(debounceTime(1000), distinctUntilChanged())\n .subscribe((value) => {\n this.checkEmail();\n });\n }\n ngOnDestroy(): void {\n this.emailSubject?.unsubscribe();\n }\n\n onSubmit() {\n this.status = false;\n this.submitted = true;\n if (this.applicationForm.invalid) {\n return;\n }\n this.loginText = 'Please wait..';\n this.loadingService.startLoading();\n console.log(this.applicationForm.getRawValue());\n this.userService.login(this.applicationForm.getRawValue()).subscribe(\n (response) => {\n if (response) {\n this.status = false;\n this.setToken(response.data.accessToken);\n this.token = response.data.accessToken;\n this.setImage(response.data.image);\n this.userData = this.auth.getDecodedUserAccessToken();\n this.auth.autoLogout();\n this.loadingService.stopLoading();\n this.auth.fetchingData.next(this.auth.getCurrentUrl());\n }\n },\n (err) => {\n console.log('error', err);\n if (err.error.message === 'check email') {\n this.openConfirmationPopup(\n this.applicationForm.get('username').value\n );\n } else {\n this.auth.showSnackBarMsg('Username and password is incorrect.');\n }\n this.loadingService.stopLoading();\n this.loginText = 'Login';\n this.submitted = false;\n }\n );\n }\n openConfirmationPopup(email) {\n const dialogRef = this.dialog.open(ConfirmationPopupComponent, {\n width: '500px',\n data: { email, emailExist: true, headerData: 'Create Password!' },\n });\n }\n onEmailKeyup() {\n const searchText = this.applicationForm.get('username').value;\n this.emailSubject?.next(searchText);\n }\n checkEmail() {\n // this.loadingService.startLoading();\n const email = this.applicationForm.get('username').value;\n if (email && this.validateEmail(email)) {\n this.userService.getUserByEmail(email).subscribe(\n (response) => {\n console.log(response);\n if (response.data == 'check email') {\n this.openConfirmationPopup(email);\n }\n // this.loadingService.stopLoading()\n },\n (err) => {\n // this.loadingService.stopLoading()\n console.log('error', err);\n }\n );\n }\n }\n validateEmail(email) {\n return email.match(\n /^(([^<>()[\\]\\\\.,;:\\s@\\\"]+(\\.[^<>()[\\]\\\\.,;:\\s@\\\"]+)*)|(\\\".+\\\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/\n );\n }\n\n setToken(response) {\n this.auth.setLoginUserDetail(response);\n this.auth.isLoggedIn = true;\n }\n setImage(response) {\n this.auth.setLoginUserImage(response);\n }\n get applicationF() {\n return this.applicationForm.controls;\n }\n\n forgotPassword() {\n const dialogRef = this.dialog.open(ForgotPasswordComponent, {\n width: '500px',\n });\n dialogRef.afterClosed().subscribe((result) => {\n if (result) {\n if (result == 'backToLogin') {\n //this.openDialog('LOGIN TO YOUR ACCOUNT');\n }\n }\n });\n }\n onRegister() {\n // this.router.navigate(['/']);\n this.auth.gotoUrl('/');\n }\n}\n","
\n
\n
\n \n \n

Client Login

\n\n \n
\n
\n \n Email address*\n \n \n Username is required\n \n \n
\n \n
\n \n Password* \n \n \n \n Password is required\n \n \n\n
\n \n \n\n \n \n
> \n
\n
\n
","import {\n Component,\n EventEmitter,\n Inject,\n OnDestroy,\n OnInit,\n} from '@angular/core';\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\n\nimport { LoadingService } from './../../../core/services/loader.service';\nimport { UsersService } from '../services/users.service';\nimport { AuthenticationService } from './../../../core/services/authentication.service';\nimport {\n MatDialog,\n MatDialogRef,\n MAT_DIALOG_DATA,\n} from '@angular/material/dialog';\nimport { CookieService } from 'ngx-cookie-service';\nimport { LoginOtpComponent } from '../login-otp/login-otp.component';\nimport { ConfirmationPopupComponent } from '../confirmation-popup/confirmation-popup.component';\nimport { debounceTime, distinctUntilChanged } from 'rxjs/operators';\nimport { Subject } from 'rxjs';\n\n@Component({\n selector: 'app-login',\n templateUrl: './login.component.html',\n styleUrls: ['./login.component.scss'],\n})\nexport class LoginComponent implements OnInit, OnDestroy {\n selected = 'option2';\n headline = 'LOGIN TO YOUR ACCOUNT';\n submitted = false;\n submitted2 = false;\n applicationForm: FormGroup;\n status = true;\n loginText = 'Login';\n panelOpenState = false;\n clientForgotMail = '';\n public token;\n hide = true;\n userData;\n // urlArray = [\n // '/debtapp',\n // '/financial-goal',\n // '/user/confirm-identity-and-income',\n // '/user/complete-review-outstanding-items',\n // '/user/product-recommendation',\n // '/user/submission-to-lender',\n // '/user/loan-approval',\n // '/user/loan-document',\n // '/user/settlement-booked',\n // '/user/settlement-complete',\n // ];\n emailSubject = new Subject();\n // public remember = false;\n constructor(\n public dialogRef: MatDialogRef,\n private formBuilder: FormBuilder,\n private userService: UsersService,\n private auth: AuthenticationService,\n private loadingService: LoadingService,\n public dialog: MatDialog,\n @Inject(MAT_DIALOG_DATA) public data: any,\n private cookieService: CookieService\n ) {}\n\n /*\n Initilization component\n */\n\n ngOnInit(): void {\n this.applicationForm = this.formBuilder.group({\n username: ['', [Validators.required]],\n password: ['', [Validators.required]],\n });\n if (this.data.headline) {\n this.headline = this.data.headline;\n if (this.data.email) {\n this.applicationForm.controls.username.setValue(this.data.email);\n }\n if (this.data.disableEmail && this.data.disableEmail == true) {\n this.applicationForm.get('username').disable();\n }\n }\n this.emailSubject\n .pipe(debounceTime(1000), distinctUntilChanged())\n .subscribe((value) => {\n this.checkEmail();\n });\n }\n\n ngOnDestroy(): void {\n this.emailSubject?.unsubscribe();\n }\n /*\n Form submit\n */\n\n onSubmit() {\n this.status = false;\n this.submitted = true;\n if (this.applicationForm.invalid) {\n return;\n }\n this.loginText = 'Please wait';\n this.loadingService.startLoading();\n this.userService.login(this.applicationForm.getRawValue()).subscribe(\n (response) => {\n // if (this.remember) {\n // this.cookieService.set('remember', 'Yes');\n // this.cookieService.set('username', this.applicationF.username.value);\n // this.cookieService.set('password', this.applicationF.password.value);\n // } else {\n // this.cookieService.set('remember', 'No');\n // this.cookieService.set('username', '');\n // this.cookieService.set('password', '');\n // }\n // this.loadingService.stopLoading();\n if (response) {\n // console.log('login time +++++');\n // console.log(response.data);\n\n this.status = false;\n this.setToken(response.data.accessToken);\n this.token = response.data.accessToken;\n this.setImage(response.data.image);\n this.userData = this.auth.getDecodedUserAccessToken();\n this.auth.autoLogout();\n this.loadingService.stopLoading();\n\n this.auth.fetchingData.next(this.auth.getCurrentUrl());\n this.dialogRef.close('loggedIn');\n }\n },\n (err) => {\n console.log('error', err);\n if (err.error.message === 'check email') {\n const msg =\n 'As a first time applicant, an email has been sent to ' +\n this.applicationForm.get('username').value +\n '. Please follow the prompts to create a password and to continue with the application.';\n const header = 'Create Password!';\n this.openConfirmationPopup(\n this.applicationForm.get('username').value,\n header,\n msg\n );\n } else {\n this.auth.showSnackBarMsg('Username and password is incorrect.');\n }\n this.loadingService.stopLoading();\n this.loginText = 'Login';\n this.submitted = false;\n }\n );\n }\n openConfirmationPopup(email, header: string, content: string) {\n this.dialogRef.close();\n const dialogRef = this.dialog.open(ConfirmationPopupComponent, {\n width: '500px',\n data: {\n email,\n header,\n content,\n // emailExist: true, headerData: 'Create Password!'\n },\n });\n }\n onEmailKeyup() {\n const searchText = this.applicationForm.get('username').value;\n this.emailSubject?.next(searchText);\n }\n // loginOtp() {\n // this.dialogRef.close('otpLogin');\n // }\n\n checkEmail() {\n // this.loadingService.startLoading();\n const email = this.applicationForm.get('username').value;\n if (email && this.validateEmail(email)) {\n this.userService.getUserByEmail(email).subscribe(\n (response) => {\n if (response.data == 'check email') {\n const msg =\n 'As a first time applicant, an email has been sent to ' +\n this.applicationForm.get('username').value +\n '. Please follow the prompts to create a password and to continue with the application.';\n const header = 'Create Password!';\n this.openConfirmationPopup(email, header, msg);\n }\n // this.loadingService.stopLoading()\n },\n (err) => {\n // this.loadingService.stopLoading()\n console.log('error', err);\n }\n );\n }\n }\n validateEmail(email) {\n return email.match(\n /^(([^<>()[\\]\\\\.,;:\\s@\\\"]+(\\.[^<>()[\\]\\\\.,;:\\s@\\\"]+)*)|(\\\".+\\\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/\n );\n }\n\n /**\n * Sets token\n *\n * @param response User data\n */\n setToken(response) {\n this.auth.setLoginUserDetail(response);\n this.auth.isLoggedIn = true;\n\n // let returnUrl = sessionStorage.getItem('returnUrl');\n // sessionStorage.removeItem('returnUrl');\n // if (returnUrl) {\n // this.redirectToURL(returnUrl);\n // } else {\n // this.redirectToURL();\n // }\n }\n\n /**\n * Sets image\n *\n * @param response User data\n */\n setImage(response) {\n this.auth.setLoginUserImage(response);\n }\n\n togglePanel() {\n this.panelOpenState = !this.panelOpenState;\n }\n forgotPassword() {\n this.dialogRef.close('forgotPassword');\n }\n\n /*\n get form control for validation\n */\n get applicationF() {\n return this.applicationForm.controls;\n }\n // onRegister() {\n // console.log('this.router.url');\n // console.log(this.router.url);\n // if (this.router.url == '/') {\n // this.snackBar.open('Select an Application.', 'Done', {\n // duration: 3000,\n // });\n // } else {\n // this.snackBar.open('Please Fill All Details.', 'Done', {\n // duration: 3000,\n // });\n // }\n // this.dialogRef.close('onRegister');\n // }\n}\n","
\n
\n
\n
\n
\n
\n \n \n \n
\n
\n

{{headline}}

\n \n
\n
\n \n Email address*\n \n \n Username is required\n \n\n
\n
\n \n Password* \n \n \n \n Password is required\n \n \n\n
\n \n
\n \n\n
\n \n
\n
\n\n
\n","import { CurrencyPipe, PercentPipe } from '@angular/common';\nimport {\n Directive,\n ElementRef,\n HostListener,\n Input,\n OnInit,\n} from '@angular/core';\n\n@Directive({\n selector: '[mobileInput]',\n})\nexport class MobileInputDirective implements OnInit {\n private el: HTMLInputElement;\n\n constructor(\n private elementRef: ElementRef) {\n this.el = this.elementRef.nativeElement;\n this.setRegex();\n }\n private digitRegex: RegExp;\n \n // variable to store last valid input\n private lastValid = '';\n\n private regexString(max?: number) {\n const maxStr = max ? `{0,${max}}` : `+`;\n return `^(\\\\d${maxStr}(\\\\.\\\\d{0,2})?|\\\\.\\\\d{0,2})$`;\n }\n private setRegex(maxDigits?: number) {\n this.digitRegex = new RegExp(this.regexString(maxDigits), 'g');\n }\n\n ngOnInit() {\n if (this.el.value) {\n this.el.value = this.styleMobile(this.el.value);\n }\n }\n @HostListener('focus', ['$event.target.value'])\n onFocus(value) {\n // on focus remove currency formatting\n this.el.value = value.replace(/[^0-9.]+/g, '');\n this.el.select();\n }\n @HostListener('blur', ['$event.target.value'])\n onBlur(value) {\n if (this.el.value) {\n this.el.value = this.styleMobile(this.el.value);\n }\n }\n @HostListener('keydown.control.z', ['$event.target.value'])\n onUndo(value) {\n this.el.value = '';\n }\n styleMobile(value): string {\n return ` ${value.substring(0, 4)} ${value.substring(\n 4,\n 7\n )} ${value.substring(7, 10)}`;\n }\n @HostListener('input', ['$event'])\n onInput(event) {\n // on input, run regex to only allow certain characters and format\n const cleanValue = (event.target.value.match(this.digitRegex) || []).join('');\n if (cleanValue || !event.target.value) {\n this.lastValid = cleanValue;\n }\n this.el.value = cleanValue || this.lastValid;\n }\n}\n","import { EventEmitter, Injectable } from '@angular/core';\nimport { Observable, Subject, throwError } from 'rxjs';\nimport { catchError } from 'rxjs/operators';\nimport { HttpService } from '../../../core/services/http.service';\n\nimport { environment } from 'src/environments/environment';\nimport { HttpClient } from '@angular/common/http';\nimport { LocalStorage as SessionStorage } from '../../../core/constants/local-storage';\nimport { AuthenticationService } from 'src/app/core/services/authentication.service';\n\n/**\n * common library services\n */\n\n@Injectable({\n providedIn: 'root',\n})\nexport class UsersService {\n IsMarried = false;\n toggleSideBar = new Subject();\n newbankInstituteAdded = new Subject();\n\n // private allOpportunity: [];\n // opportunityData = new EventEmitter();\n constructor(\n private httpService: HttpService,\n private http: HttpClient,\n private auth: AuthenticationService\n ) {}\n\n /**\n * Concatenate url with api end points for micro service\n *\n * @param url url to append with api end points\n *\n * @returns url\n */\n private composeUrl(url: string): string {\n return `${environment.host}/${url}`;\n }\n\n saveFinancial(formData): Observable {\n return this.httpService\n .post('', `${this.composeUrl('financialGoals/opportunities')}`, formData)\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n getWelcome(formData): Observable {\n // let data: any = new FormData();\n // data.append(\"formData\", formData);\n return this.httpService\n .get('', `${this.composeUrl('register/welcome')}`)\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n\n saveApplication(formData): Observable {\n // let data: any = new FormData();\n // data.append(\"formData\", formData);\n return this.httpService\n .post('', `${this.composeUrl('register/contact')}`, formData)\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n\n updateUserSetting(token, formData): Observable {\n return this.httpService\n .put(token, `${this.composeUrl('register/user-setting')}`, formData)\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n\n addNewUser(token, formData): Observable {\n return this.httpService\n .post(token, `${this.composeUrl('register/add-user')}`, formData)\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n addLead(token, formData): Observable {\n return this.httpService\n .post(token, `${this.composeUrl('client-portal/add-lead')}`, formData)\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n addNewClient(token, formData): Observable {\n return this.httpService\n .post(token, `${this.composeUrl('register/add-client')}`, formData)\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n addNewProfessionalAdvisors(token, formData): Observable {\n return this.httpService\n .post(\n token,\n `${this.composeUrl('register/add-professional-advisors')}`,\n formData\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n\n /**\n * To add new programs\n */\n updatePrivacyConsentDate(token, formData): Observable {\n return this.httpService\n .put(token, `${this.composeUrl('register/privacy-consent-date')}`, formData)\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n updateApplication(token, formData): Observable {\n return this.httpService\n .put(token, `${this.composeUrl('register/contact')}`, formData)\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n getContactDetail(token, id): Observable {\n return this.httpService\n .get(token, `${this.composeUrl('register/contact?contactId=' + id)}`)\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n getContactSetting(token, id): Observable {\n return this.httpService\n .get(token, `${this.composeUrl('register/user-setting?accountId=' + id)}`)\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n\n getallClientfromProfessionalAdvisors(token, id): Observable {\n return this.httpService\n .get(token, `${this.composeUrl('client-portal?contactId=' + id)}`)\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n getallClientfromAccount(token, id): Observable {\n return this.httpService\n .get(\n token,\n `${this.composeUrl('client-portal/from-account?contactId=' + id)}`\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n getSystemUserData(token, email): Observable {\n return this.httpService\n .get(\n token,\n `${this.composeUrl('client-portal/get-system-user?email=' + email)}`\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n getAdress(token, id): Observable {\n return this.httpService\n .get(token, `${this.composeUrl('register/address?contactId=' + id)}`)\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n\n // not required if we use flow start\n getAllInstitute(token): Observable {\n return this.httpService\n .get(token, `${this.composeUrl('confirm-bank-account/illion-institute')}`)\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n getAllAssetData(token, accountId, contactId): Observable {\n return this.httpService\n .get(\n token,\n `${this.composeUrl(\n 'confirm-current-assets/asset-related-data?accountId=' +\n accountId +\n '&contactId=' +\n contactId\n )}`\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n getAllRelatedInstitute(token, id): Observable {\n return this.httpService\n .get(\n token,\n `${this.composeUrl(\n 'confirm-bank-account/related-institute?contactId=' + id\n )}`\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n createCustomer(token, data): Observable {\n return this.httpService\n .post(\n token,\n `${this.composeUrl('confirm-bank-account/create-customer')}`,\n data\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n\n mfaAuthentication(token, data): Observable {\n return this.httpService\n .post(\n token,\n `${this.composeUrl('confirm-bank-account/mfa-authentication')}`,\n data\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n\n addBankFeed(token, data): Observable {\n return this.httpService\n .post(\n token,\n `${this.composeUrl('confirm-bank-account/add-bank-feed')}`,\n data\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n addRelatedInstitute(token, data): Observable {\n return this.httpService\n .post(\n token,\n `${this.composeUrl('confirm-bank-account/add-related-bank')}`,\n data\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n\n getCustomerData(token, data): Observable {\n return this.httpService\n .post(\n token,\n `${this.composeUrl('confirm-bank-account/customer-data')}`,\n data\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n\n // not required if we use flow end\n\n getGoals(token, id): Observable {\n return this.httpService\n .get(\n token,\n `${this.composeUrl('refinanceConsolidate/goals?opportunityId=' + id)}`\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n\n saveGoals(token, formData): Observable {\n return this.httpService\n .post(token, `${this.composeUrl('refinanceConsolidate/goals')}`, formData)\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n ///// liability page start /////\n getLiabilityTypes(token): Observable {\n return this.httpService\n .get(\n token,\n `${this.composeUrl(\n 'confirm-your-existing-liabilities/getLiabilityTypes'\n )}`\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n getLenders(token): Observable {\n return this.httpService\n .get(\n token,\n `${this.composeUrl('confirm-your-existing-liabilities/getLenders')}`\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n getLendersByName(token, name): Observable {\n return this.httpService\n .get(\n token,\n `${this.composeUrl(\n 'confirm-your-existing-liabilities/lenders-lookup?name=' + name\n )}`\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n\n deleteLiability(token, id): Observable {\n return this.httpService\n .delete(\n token,\n `${this.composeUrl('confirm-your-existing-liabilities/delete/' + id)}`\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n\n getLiabilities(token, id): Observable {\n return this.httpService\n .get(\n token,\n `${this.composeUrl(\n 'confirm-your-existing-liabilities/?accountId=' + id\n )}`\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n getAllLiabilityData(token, accountId, contactId): Observable {\n return this.httpService\n .get(\n token,\n `${this.composeUrl(\n 'confirm-your-existing-liabilities/liabilities-related-data?accountId=' +\n accountId +\n '&contactId=' +\n contactId\n )}`\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n saveLiability(token, formData): Observable {\n return this.httpService\n .post(\n token,\n `${this.composeUrl('confirm-your-existing-liabilities/liabilities')}`,\n formData\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n ///// liability page end /////\n\n hitBankFeedFlow(token, data): Observable {\n return this.httpService\n .post(\n token,\n `${this.composeUrl('confirm-bank-account/hit-bank-feed-flow')}`,\n data\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n\n // getBingAddressApi(addressInput): Observable {\n // var config = {\n // headers: {\n // 'Content-Type': 'application/json',\n // 'Access-Control-Allow-Origin': '*',\n // },\n // };\n // //console.log(config);\n // //console.log(\n // `http://dev.virtualearth.net/REST/v1/Autosuggest?query=${addressInput}&countryFilter=au&key=ApdTekiV8XSF2wBK01xq7a6f_3b18Muo6-FkUkewRHF006WlkUZ9714tDjI0RqsL`\n // );\n // return this.http\n // .get(\n // `http://dev.virtualearth.net/REST/v1/Autosuggest?query=${addressInput}&countryFilter=au&key=ApdTekiV8XSF2wBK01xq7a6f_3b18Muo6-FkUkewRHF006WlkUZ9714tDjI0RqsL`,\n // config\n // )\n // .pipe(catchError(this.handleError('addNewProgram')));\n // // ?query=94 the strand&maxResults=10&countryFilter=au&key=ApdTekiV8XSF2wBK01xq7a6f_3b18Muo6-FkUkewRHF006WlkUZ9714tDjI0RqsL\n // // return this.httpService\n // // .get(\n // // '',\n // // 'https://apitest.bankfeeds.com.au/v1/institutions',\n // // a,\n // // requestOptions\n // // )\n // // .pipe(catchError(this.handleError('addNewProgram')));\n // }\n\n getBingAddress(token, data): Observable {\n return this.httpService\n .get(token, `${this.composeUrl('register/bing-address?data=' + data)}`)\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n\n getCountries(token): Observable {\n return this.httpService\n .get(token, `${this.composeUrl('register/getCountries')}`)\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n\n hitDatiumApi(token, data): Observable {\n return this.httpService\n .post(token, `${this.composeUrl('confirm-current-assets/datium')}`, data)\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n\n /**\n * To add new programs\n */\n login(formData): Observable {\n return this.httpService\n .post('', `${this.composeUrl('auth/login')}`, formData)\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n loginWithOtp(formData): Observable {\n return this.httpService\n .post('', `${this.composeUrl('auth/login-otp')}`, formData)\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n\n // send otp\n sendOtp(formData): Observable {\n return this.httpService\n .post('', `${this.composeUrl('auth/send-otp')}`, formData)\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n /**\n * Forgot Password\n */\n forgotPass(formData): Observable {\n return this.httpService\n .put('', `${this.composeUrl('auth/forgot')}`, formData)\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n\n /**\n * To add new programs\n */\n saveAddress(token, formData): Observable {\n return this.httpService\n .post(token, `${this.composeUrl('register/address')}`, formData)\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n\n updateAddress(token, formData): Observable {\n return this.httpService\n .put(token, `${this.composeUrl('register/address')}`, formData)\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n rapidVOITrigger(token, formData): Observable {\n return this.httpService\n .post(\n token,\n `${this.composeUrl('family-profile/rapid-id-voi-flow')}`,\n formData\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n triggerEmailDocumentFlow(token, formData): Observable {\n return this.httpService\n .put(\n token,\n `${this.composeUrl('review-outstanding-items/document-email-flow')}`,\n formData\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n updatePasssword(formData): Observable {\n return this.httpService\n .post('', `${this.composeUrl('user/updatePassword')}`, formData)\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n getUserNotification(\n token,\n contactId: string,\n accountId: string,\n dataLength?: number\n ): Observable {\n return this.httpService\n .get(\n token,\n `${this.composeUrl(\n `user-notification?contactId=${contactId}&accountId=${accountId}&dataLength=${dataLength}`\n )}`\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n // updateNotification(token, formData): Observable {\n // return this.httpService\n // .put(token, `${this.composeUrl('user-notification')}`, formData)\n // .pipe(catchError(this.handleError('addNewProgram')));\n // }\n addNotification(token, formData): Observable {\n return this.httpService\n .post(token, `${this.composeUrl('user-notification')}`, formData)\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n\n /*************confirm debt features */\n\n getDebtFeatures(token, id): Observable {\n return this.httpService\n .get(token, `${this.composeUrl('debt-feature?opportunityid=' + id)}`)\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n\n saveDebtFeature(token, formData): Observable {\n return this.httpService\n .post(token, `${this.composeUrl('debt-feature')}`, formData)\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n\n /**************retirement plan page */\n saveRetirementPlan(token, formData): Observable {\n return this.httpService\n .post(token, `${this.composeUrl('retirement-plan')}`, formData)\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n getRetirementPlan(token, opportunityId): Observable {\n return this.httpService\n .get(\n token,\n `${this.composeUrl('retirement-plan?opportunityId=' + opportunityId)}`\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n\n // /**************Confirm Identity and Income old version */\n\n getJobRole(token): Observable {\n return this.httpService\n .get(token, `${this.composeUrl('income/occupation')}`)\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n getOccupation(token, name): Observable {\n return this.httpService\n .get(token, `${this.composeUrl('income/occupation-lookup?name=' + name)}`)\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n getIncomeRelatedData(token, id, contactId): Observable {\n return this.httpService\n .get(\n token,\n `${this.composeUrl(\n 'income/get-income-related-data?accountId=' +\n id +\n '&contactId=' +\n contactId\n )}`\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n getpartnerDetail(token, id): Observable {\n return this.httpService\n .get(token, `${this.composeUrl('income/partner?accountId=' + id)}`)\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n getidentityAndIncome(token, id): Observable {\n return this.httpService\n .get(\n token,\n `${this.composeUrl('income/identityandincome?contactId=' + id)}`\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n getUserAllIncome(token, contactid): Observable {\n return this.httpService\n .get(token, `${this.composeUrl('income/user-income?id=' + contactid)}`)\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n getPartnerEmploymentDetails(token, id): Observable {\n return this.httpService\n .get(\n token,\n `${this.composeUrl(\n 'income/partner-employment-details?contactId=' + id\n )}`\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n getPartnerIdentityAndIncome(token, id): Observable {\n return this.httpService\n .get(\n token,\n `${this.composeUrl('income/partner-identity-and-income?id=' + id)}`\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n\n getIncomeType(token): Observable {\n return this.httpService\n .get(token, `${this.composeUrl('income/incomeType')}`)\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n\n // abn lookup\n getCompanies(token, companyName): Observable {\n return this.httpService\n .get(\n token,\n `${this.composeUrl('income/companies?companyName=' + companyName)}`\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n // ownership structure lookup\n getCRMCompanies(token, companyName): Observable {\n return this.httpService\n .get(\n token,\n `${this.composeUrl(\n 'income/ownership-structure-companies?companyName=' + companyName\n )}`\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n getDocumentType(token, documentTypename): Observable {\n return this.httpService\n .get(\n token,\n `${this.composeUrl(\n 'review-outstanding-items/documentTypename?documentTypename=' +\n documentTypename\n )}`\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n // acn lookup\n // // getACNCompanies(token, companyName): Observable {\n // // return this.httpService\n // // .get(\n // // token,\n // // `${this.composeUrl('income/acn-companies?companyName=' + companyName)}`\n // // )\n // // .pipe(catchError(this.handleError('addNewProgram')));\n // // }\n\n getSuperannuation(token, name): Observable {\n return this.httpService\n .get(\n token,\n `${this.composeUrl(\n 'confirm-current-assets/superannuation?superannuation=' + name\n )}`\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n saveIdentityAndIncome(token, formData): Observable {\n return this.httpService\n .post(token, `${this.composeUrl('income')}`, formData)\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n addSecondaryUser(token, formData): Observable {\n return this.httpService\n .post(token, `${this.composeUrl('income/add-secondary-user')}`, formData)\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n saveIdentityAndIncomeForPopup(token, formData): Observable {\n return this.httpService\n .post(token, `${this.composeUrl('income/popup')}`, formData)\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n saveOtherIncome(token, formData): Observable {\n return this.httpService\n .post(token, `${this.composeUrl('income/otherIncome')}`, formData)\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n updateUserIncome(token, formData): Observable {\n return this.httpService\n .post(token, `${this.composeUrl('income/update-user-income')}`, formData)\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n\n saveSuperfund(token, formData): Observable {\n return this.httpService\n .post(\n token,\n `${this.composeUrl('confirm-current-assets/superfund')}`,\n formData\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n // saveIncomeToAsset(token, formData): Observable {\n // return this.httpService\n // .post(\n // token,\n // `${this.composeUrl('confirm-current-assets/income-to-asset')}`,\n // formData\n // )\n // .pipe(catchError(this.handleError('addNewProgram')));\n // }\n deleteIncome(token, id): Observable {\n return this.httpService\n .delete(\n token,\n `${this.composeUrl('confirm-current-assets/delete-income/' + id)}`\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n\n saveCompany(token, formData): Observable {\n return this.httpService\n .post(\n token,\n `${this.composeUrl('confirm-holding-structures/company')}`,\n formData\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n bindAssetToInsurance(token, formData): Observable {\n return this.httpService\n .post(\n token,\n `${this.composeUrl('confirm-current-assets/bind-insurance')}`,\n formData\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n\n savePartnerIdentityAndIncome(token, formData): Observable {\n return this.httpService\n .post(\n token,\n `${this.composeUrl('income/partner-identity-and-income')}`,\n formData\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n savePartnerIdentityAndIncomeForPopup(token, formData): Observable {\n return this.httpService\n .post(\n token,\n `${this.composeUrl('income/partner-identity-and-income/popup')}`,\n formData\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n deleteSalary(token, id): Observable {\n return this.httpService\n .delete(token, `${this.composeUrl('income/salary/' + id)}`)\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n\n saveFamilyRelationship(token, formData): Observable {\n // console.log('form, data in user service');\n // console.log(formData);\n return this.httpService\n .post(token, `${this.composeUrl('familyrelationship')}`, formData)\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n\n getFamilyRelationship(token, id): Observable {\n return this.httpService\n .get(token, `${this.composeUrl('familyrelationship?contactId=' + id)}`)\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n deleteFamilyRelationship(token, id): Observable {\n return this.httpService\n .delete(token, `${this.composeUrl('familyrelationship/' + id)}`)\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n\n getExistingLiabilities(token, id): Observable {\n return this.httpService\n .get(\n token,\n `${this.composeUrl('confirm-monthly-expense?contactId=' + id)}`\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n postExistingLiabilities(token, formData): Observable {\n return this.httpService\n .post(token, `${this.composeUrl('confirm-monthly-expense')}`, formData)\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n deleteExpense(token, id): Observable {\n return this.httpService\n .delete(\n token,\n `${this.composeUrl('confirm-monthly-expense/delete/' + id)}`\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n putExistingLiabilities(token, formData): Observable {\n return this.httpService\n .put(token, `${this.composeUrl('confirm-monthly-expense')}`, formData)\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n\n // postOtherExpenses(token, formData): Observable {\n // return this.httpService\n // .post(\n // token,\n // `${this.composeUrl('confirm-monthly-expense/other-expense')}`,\n // formData\n // )\n // .pipe(catchError(this.handleError('addNewProgram')));\n // }\n\n SaveOtherExpenses(token, formData): Observable {\n return this.httpService\n .post(token, `${this.composeUrl('confirm-other-expense')}`, formData)\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n updateOtherExpenses(token, formData): Observable {\n return this.httpService\n .put(token, `${this.composeUrl('confirm-other-expense')}`, formData)\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n getOtherExpenses(token, id): Observable {\n return this.httpService\n .get(token, `${this.composeUrl('confirm-other-expense?contactId=' + id)}`)\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n\n getLandingFlags(token, id): Observable {\n return this.httpService\n .get(\n token,\n `${this.composeUrl('credit-file-review/landing-flags?contactId=' + id)}`\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n // getCreditSummary(token, id): Observable {\n // return this.httpService\n // .get(token, `${this.composeUrl('debt/credit-summary?accountId=' + id)}`)\n // .pipe(catchError(this.handleError('addNewProgram')));\n // }\n\n getRecentCredit(token, id): Observable {\n return this.httpService\n .get(token, `${this.composeUrl('debt/credit-enquiries?accountId=' + id)}`)\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n getDebtStrategies(token, id): Observable {\n return this.httpService\n .get(token, `${this.composeUrl('debt/debt-Strategies?accountId=' + id)}`)\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n getRepaymentHistory(token, id): Observable {\n return this.httpService\n .get(\n token,\n `${this.composeUrl(\n 'credit-file-review/repayment-history?contactId=' + id\n )}`\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n\n postOtherExpensesInBulk(token, formData): Observable {\n return this.httpService\n .post(\n token,\n `${this.composeUrl('credit-file-review/other-expenses')}`,\n formData\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n\n deleteOtherExpense(token, id): Observable {\n // console.log('in service delete');\n // console.log(id);\n return this.httpService\n .delete(\n token,\n `${this.composeUrl('credit-file-review/other-expenses/' + id)}`\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n // deleteRepaymentHistory(token, id): Observable {\n // //console.log('in service delete');\n // //console.log(id);\n // return this.httpService\n // .delete(\n // token,\n // `${this.composeUrl('credit-file-review/repayment-history/' + id)}`\n // )\n // .pipe(catchError(this.handleError('addNewProgram')));\n // }\n // getLiabilities(token, id): Observable {\n // return this.httpService\n // .get(\n // token,\n // `${this.composeUrl('refinanceConsolidate/liabilities?contactId=' + id)}`\n // )\n // .pipe(catchError(this.handleError('addNewProgram')));\n // }\n getBankAccountDetail(token, id): Observable {\n return this.httpService\n .get(token, `${this.composeUrl('confirm-bank-account?accountId=' + id)}`)\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n getInvestmentAccount(token, id): Observable {\n return this.httpService\n .get(token, `${this.composeUrl('account-details?investmentId=' + id)}`)\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n getbankfeedUrlLink(token, id): Observable {\n return this.httpService\n .get(\n token,\n `${this.composeUrl(\n 'confirm-bank-account/get-bank-feed-link?contactId=' + id\n )}`\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n getAllOwner(token, id): Observable {\n return this.httpService\n .get(\n token,\n `${this.composeUrl(\n 'confirm-bank-account/get-all-owner?contactId=' + id\n )}`\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n getAllOwnerWithID(token, id): Observable {\n return this.httpService\n .get(\n token,\n `${this.composeUrl(\n 'confirm-bank-account/get-all-owner-with-id?contactId=' + id\n )}`\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n postBankAccountDetail(token, formData): Observable {\n return this.httpService\n .post(token, `${this.composeUrl('confirm-bank-account')}`, formData)\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n updateBankAccountDetail(token, formData): Observable {\n return this.httpService\n .put(token, `${this.composeUrl('confirm-bank-account')}`, formData)\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n\n unlinkBank(token, data): Observable {\n return this.httpService\n .post(\n token,\n `${this.composeUrl('confirm-bank-account/unlink-bank')}`,\n data\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n\n deleteLinkedBank(token, data): Observable {\n return this.httpService\n .post(\n token,\n `${this.composeUrl('confirm-bank-account/delete-linked-bank')}`,\n data\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n\n deleteRelatedInstitute(token, id): Observable {\n return this.httpService\n .delete(\n token,\n `${this.composeUrl('confirm-bank-account/delete-related-bank/' + id)}`\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n // getLenders(token): Observable {\n // return this.httpService\n // .get(token, `${this.composeUrl('refinanceConsolidate/getLenders')}`)\n // .pipe(catchError(this.handleError('addNewProgram')));\n // }\n\n updateBankAccountDetailInBulk(token, formData): Observable {\n return this.httpService\n .put(\n token,\n `${this.composeUrl('confirm-bank-account/in-bulk')}`,\n formData\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n deleteBankAccountDetail(token, id): Observable {\n return this.httpService\n .delete(token, `${this.composeUrl('confirm-bank-account/' + id)}`)\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n deleteBankInvitations(token, id): Observable {\n return this.httpService\n .delete(\n token,\n `${this.composeUrl('confirm-bank-account/bank-invitations/' + id)}`\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n\n getSareHolders(token, payload): Observable {\n return this.http\n .post(\n ` https://prod-20.australiasoutheast.logic.azure.com:443/workflows/c36efed0c5f3451f8aa99d34c0e88f34/triggers/manual/paths/invoke?api-version=2016-06-01&sp=%2Ftriggers%2Fmanual%2Frun&sv=1.0&sig=W-LJTRI027aEse-5ckj7buVLiJiU2c4XHH9IQBiAQsk`,\n payload\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n\n getInsuranceRelateddata(token, id): Observable {\n return this.httpService\n .get(\n token,\n `${this.composeUrl(\n 'confirm-your-insurance/insurance-releted-data?accountId=' + id\n )}`\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n\n getInsuranceProvider(token): Observable {\n return this.httpService\n .get(\n token,\n `${this.composeUrl('confirm-your-insurance/getInsuranceProvider')}`\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n getCurrentInsurance(token, id): Observable {\n return this.httpService\n .get(\n token,\n `${this.composeUrl('confirm-your-insurance?accountId=' + id)}`\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n postCurrentInsurance(token, formData): Observable {\n return this.httpService\n .post(token, `${this.composeUrl('confirm-your-insurance')}`, formData)\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n postSingleInsurance(token, formData): Observable {\n return this.httpService\n .post(\n token,\n `${this.composeUrl('confirm-your-insurance/single-insurance')}`,\n formData\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n deleteCurrentInsurance(token, id): Observable {\n return this.httpService\n .delete(token, `${this.composeUrl('confirm-your-insurance/' + id)}`)\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n\n getVehicleMaker(token, VehicleType): Observable {\n return this.httpService\n .get(\n token,\n `${this.composeUrl(\n 'confirm-current-assets/get-vehicle-maker?type=' + VehicleType\n )}`\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n getVehicleModel(token, VehicleType): Observable {\n // //console.log('coming into service getVehicleModel');\n return this.httpService\n .get(\n token,\n `${this.composeUrl(\n 'confirm-current-assets/get-vehicle-model?type=' + VehicleType\n )}`\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n getFundType(token): Observable {\n // //console.log('coming into service get fund type');\n return this.httpService\n .get(token, `${this.composeUrl('confirm-current-assets/get-fund-type')}`)\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n getInvestmentPlatform(token): Observable {\n // //console.log('coming into service get fund type');\n return this.httpService\n .get(\n token,\n `${this.composeUrl('confirm-current-assets/Investment-platform')}`\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n\n getExistingAsset(token, id): Observable {\n return this.httpService\n .get(token, `${this.composeUrl('confirm-current-assets?acountId=' + id)}`)\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n getInvestmentHoldings(token, id): Observable {\n return this.httpService\n .get(\n token,\n `${this.composeUrl(\n 'account-details/investment-holding?contactId=' + id\n )}`\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n getHoldingsByInvestmentAccountId(token, id): Observable {\n return this.httpService\n .post(\n token,\n `${this.composeUrl('investment-and-superannuation/holdings')}`,\n id\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n\n getBeneficiaryByInvestmentAccountId(token, id): Observable {\n return this.httpService\n .get(\n token,\n `${this.composeUrl(\n 'investment-and-superannuation/beneficiary?investmentAccountId=' + id\n )}`\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n\n getPerformanceChart(token, id, date): Observable {\n return this.httpService\n .post(\n token,\n `${this.composeUrl('investment-and-superannuation/performance-chart')}`,\n { id, date }\n )\n\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n getAnnualReportData(token, id): Observable {\n return this.httpService\n .post(\n token,\n `${this.composeUrl('investment-and-superannuation/annual-report')}`,\n id\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n deleteInvestmentHolding(token, id): Observable {\n return this.httpService\n .delete(\n token,\n `${this.composeUrl('account-details/investment-holding/' + id)}`\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n getAssetForInsurance(token, id): Observable {\n return this.httpService\n .get(\n token,\n `${this.composeUrl(\n 'confirm-current-assets/for-insurance-page?accountId=' + id\n )}`\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n postExistingAsset(token, formData): Observable {\n return this.httpService\n .post(token, `${this.composeUrl('confirm-current-assets')}`, formData)\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n postActualIncome(token, formData): Observable {\n return this.httpService\n .post(token, `${this.composeUrl('income/actual-income')}`, formData)\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n deleteExistingAsset(token, id): Observable {\n return this.httpService\n .delete(token, `${this.composeUrl('confirm-current-assets/' + id)}`)\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n saveAdvisor(token, data): Observable {\n return this.httpService\n .post(token, `${this.composeUrl('confirm-estate-planner/advisor')}`, data)\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n\n getAllAdvisors(token): Observable {\n return this.httpService\n .get(\n token,\n `${this.composeUrl('confirm-estate-planner/professional-advisor')}`\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n postEstatePlannerDetails(token, formData): Observable {\n return this.httpService\n .post(token, `${this.composeUrl('confirm-estate-planner')}`, formData)\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n getEstatePlannerDetails(token, id): Observable {\n return this.httpService\n .get(\n token,\n `${this.composeUrl('confirm-estate-planner?accountId=' + id)}`\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n\n postTaxAgentDetail(token, formData): Observable {\n return this.httpService\n .post(token, `${this.composeUrl('confirm-tax-agent-details')}`, formData)\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n getTaxAgentDetail(token, id): Observable {\n return this.httpService\n .get(\n token,\n `${this.composeUrl('confirm-tax-agent-details?accountId=' + id)}`\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n getTaxAgentDetailByOpportunity(token, id, contactId): Observable {\n return this.httpService\n .get(\n token,\n `${this.composeUrl(\n `confirm-tax-agent-details/specific-agent?oppId=${id}&contactId=${contactId}`\n )}`\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n\n getRenovationOrCashout(token, id, contactId): Observable {\n return this.httpService\n .get(\n token,\n `${this.composeUrl(\n `confirm-renovation-or-cashout?oppId=${id}&contactId=${contactId}`\n )}`\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n postRenovationOrCashout(token, formData): Observable {\n return this.httpService\n .post(\n token,\n `${this.composeUrl('confirm-renovation-or-cashout')}`,\n formData\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n\n /// Buy a property\n\n getOpportunity(token, id): Observable {\n return this.httpService\n .get(token, `${this.composeUrl('buy-a-property?opportunityId=' + id)}`)\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n getOpportunityIncome(token, id): Observable {\n return this.httpService\n .get(\n token,\n `${this.composeUrl('buy-a-property/income?opportunityId=' + id)}`\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n getIncompleteOpportunity(token, id): Observable {\n return this.httpService\n .get(\n token,\n `${this.composeUrl(\n 'financialGoals/incomplete-opportunities?accountId=' + id\n )}`\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n getUserByID(id: string) {\n return this.httpService\n .get('', `${this.composeUrl('auth/get-user-by-id?contactid=' + id)}`)\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n getUserByEmail(email: string) {\n return this.httpService\n .get('', `${this.composeUrl('auth/get-user-by-email?email=' + email)}`)\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n getOpportunityDetail(token, id): Observable {\n return this.httpService\n .get(\n token,\n `${this.composeUrl('financialGoals/opportunity?oppId=' + id)}`\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n getCompletedOpportunity(token, id): Observable {\n return this.httpService\n .get(\n token,\n `${this.composeUrl(\n 'financialGoals/completed-opportunities?accountId=' + id\n )}`\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n\n postBuyaProperty(token, formData): Observable {\n return this.httpService\n .post(token, `${this.composeUrl('buy-a-property')}`, formData)\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n\n // confirm-business-finance-need\n postbusinessProperty(token, formData): Observable {\n return this.httpService\n .post(\n token,\n `${this.composeUrl('confirm-business-finance-need')}`,\n formData\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n getbusinessProperty(token, id): Observable {\n return this.httpService\n .get(\n token,\n `${this.composeUrl(\n 'confirm-business-finance-need?opportunityId=' + id\n )}`\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n\n postSmsf(token, formData): Observable {\n return this.httpService\n .post(token, `${this.composeUrl('self-managed-super-fund')}`, formData)\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n getSmsf(token, id): Observable {\n return this.httpService\n .get(\n token,\n `${this.composeUrl('self-managed-super-fund?opportunityId=' + id)}`\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n getopportunityData(token, id): Observable {\n return this.httpService\n .get(\n token,\n `${this.composeUrl(\n 'self-managed-super-fund/opportunity?opportunityId=' + id\n )}`\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n\n /// Buy a car/equipment\n\n getcarEquipment(token, id): Observable {\n return this.httpService\n .get(token, `${this.composeUrl('buy-car-equipment?opportunityId=' + id)}`)\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n postCarEquipment(token, formData): Observable {\n return this.httpService\n .post(token, `${this.composeUrl('buy-car-equipment')}`, formData)\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n // complete review and outstanding\n getOutstandingItem(token, id): Observable {\n return this.httpService\n .get(token, `${this.composeUrl('review-outstanding-items?oppId=' + id)}`)\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n getAllDocumentData(token, oppId, accountId): Observable {\n return this.httpService\n .get(\n token,\n `${this.composeUrl(\n 'review-outstanding-items/document-related-data?oppId=' +\n oppId +\n '&accountId=' +\n accountId\n )}`\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n\n getAllOutstandingItem(token, allOppId: string[]): Observable {\n return this.httpService\n .post(\n token,\n `${this.composeUrl('review-outstanding-items/all-document')}`,\n allOppId\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n getAllCollectedItem(token, accountId: string): Observable {\n return this.httpService\n .get(\n token,\n `${this.composeUrl(\n 'review-outstanding-items/collected-document?accountId=' + accountId\n )}`\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n getclientAllOutstandingItem(token, accountId: string): Observable {\n return this.httpService\n .get(\n token,\n `${this.composeUrl(\n 'review-outstanding-items/client-document?accountId=' + accountId\n )}`\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n getWorkInProgress(token, accountId: string): Observable {\n return this.httpService\n .get(\n token,\n `${this.composeUrl(\n 'financialGoals/work-in-progress?accountId=' + accountId\n )}`\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n\n updateOutstandingItem(token, formData): Observable {\n return this.httpService\n .put(token, `${this.composeUrl('review-outstanding-items')}`, formData)\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n saveSelectedItems(token, data): Observable {\n return this.httpService\n .post(\n token,\n `${this.composeUrl('review-outstanding-items/selected-documents')}`,\n data\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n\n getDirectorship(token, id): Observable {\n return this.httpService\n .get(\n token,\n `${this.composeUrl(\n 'confirm-holding-structures/directorship?accountId=' + id\n )}`\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n\n getContactLookup(token, name): Observable {\n return this.httpService\n .get(\n token,\n `${this.composeUrl(\n 'confirm-holding-structures/contact-lookup?name=' + name\n )}`\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n\n getCompaniesRelationship(token, name): Observable {\n return this.httpService\n .get(\n token,\n `${this.composeUrl(\n 'confirm-holding-structures/company-relationship-lookup?name=' + name\n )}`\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n\n postDirectorship(token, formData): Observable {\n return this.httpService\n .post(\n token,\n `${this.composeUrl('confirm-holding-structures/directorship')}`,\n formData\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n\n addSecondaryDirectorship(token, formData): Observable {\n return this.httpService\n .post(\n token,\n `${this.composeUrl(\n 'confirm-holding-structures/secondary-directorship'\n )}`,\n formData\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n deleteDirectorship(token, id): Observable {\n return this.httpService\n .delete(token, `${this.composeUrl('confirm-holding-structures/' + id)}`)\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n deleteProfessionalAdvisor(token, id): Observable {\n return this.httpService\n .delete(\n token,\n `${this.composeUrl(\n 'confirm-tax-agent-details/professional-advisor/' + id\n )}`\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n\n getLiabilitiesWithCompanyID(token, companyId): Observable {\n return this.httpService\n .get(\n token,\n `${this.composeUrl(\n 'confirm-holding-structures/liabilities?companyId=' + companyId\n )}`\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n getFinancialStatements(token, companyId): Observable {\n return this.httpService\n .get(\n token,\n `${this.composeUrl(\n 'confirm-holding-structures/financial-statement?companyId=' +\n companyId\n )}`\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n postHoldingStructure(token, formData): Observable {\n return this.httpService\n .post(token, `${this.composeUrl('confirm-holding-structures')}`, formData)\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n inactivateDirectorship(token, formData): Observable {\n return this.httpService\n .post(\n token,\n `${this.composeUrl(\n 'confirm-holding-structures/inactivate-directorship'\n )}`,\n formData\n )\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n\n getCashelTeam(token, id): Observable {\n return this.httpService\n .get(token, `${this.composeUrl('contact-us?accountId=' + id)}`)\n .pipe(catchError(this.handleError('addNewProgram')));\n }\n /**\n * Handle error\n * @param string operation\n * @param T result\n */\n handleError(operation = 'operation', result?: T) {\n return (error: any): Observable => {\n const responseCode = error.status;\n if (error.status == '401' || error.statusText == 'Unauthorized') {\n this.auth.logout();\n }\n // if (ResponseCodes.unauthorized.indexOf(responseCode) > -1) {\n // this.customEventService.dispatchEvent('unAuthorizeEvent', 'logoutUser');\n // }\n\n return throwError(error);\n };\n }\n}\n","import { FocusMonitor } from '@angular/cdk/a11y';\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\nimport {\n Component,\n ElementRef,\n Inject,\n Input,\n OnChanges,\n OnDestroy,\n Optional,\n Self,\n SimpleChanges,\n ViewChild,\n} from '@angular/core';\nimport {\n AbstractControl,\n ControlValueAccessor,\n FormBuilder,\n FormControl,\n FormGroup,\n NgControl,\n Validators,\n} from '@angular/forms';\nimport {\n MAT_FORM_FIELD,\n MatFormField,\n MatFormFieldControl,\n} from '@angular/material/form-field';\nimport { Subject } from 'rxjs';\n\n// export class FormFieldCustomControlExample {\n// form: FormGroup = new FormGroup({\n// tel: new FormControl(new MyTel('', '', ''))\n// });\n// }\n\n/** Data structure for holding telephone number. */\nexport class MyTel {\n constructor(\n public area: string = '',\n public exchange: string = '',\n public subscriber: string = ''\n ) {}\n}\n\n@Component({\n selector: 'app-tel-input',\n templateUrl: './tel-input.component.html',\n styleUrls: ['./tel-input.component.scss'],\n providers: [{ provide: MatFormFieldControl, useExisting: TelInputComponent }],\n host: {\n '[class.example-floating]': 'shouldLabelFloat',\n '[id]': 'id',\n },\n})\nexport class TelInputComponent\n implements\n ControlValueAccessor,\n MatFormFieldControl,\n OnDestroy,\n OnChanges\n{\n\n get empty() {\n const {\n value: { area, exchange, subscriber },\n } = this.parts;\n\n return !area && !exchange && !subscriber;\n }\n\n get shouldLabelFloat() {\n return this.focused || !this.empty;\n }\n\n @Input()\n get placeholder(): string {\n return this._placeholder;\n }\n set placeholder(value: string) {\n this._placeholder = value;\n this.stateChanges.next();\n }\n\n @Input()\n get required(): boolean {\n return this._required;\n }\n set required(value: boolean) {\n this._required = coerceBooleanProperty(value);\n this.stateChanges.next();\n }\n\n @Input()\n get disabled(): boolean {\n return this._disabled;\n }\n set disabled(value: boolean) {\n this._disabled = coerceBooleanProperty(value);\n this._disabled ? this.parts.disable() : this.parts.enable();\n this.stateChanges.next();\n }\n\n @Input()\n get value(): MyTel | null {\n if (this.parts.valid) {\n const {\n value: { area, exchange, subscriber },\n } = this.parts;\n return new MyTel(area, exchange, subscriber);\n }\n return null;\n }\n set value(tel: MyTel | null) {\n const { area, exchange, subscriber } = tel || new MyTel('', '', '');\n this.parts.setValue({ area, exchange, subscriber });\n this.stateChanges.next();\n }\n\n get errorState(): boolean {\n // this.touched = true;\n return this.parts.invalid && this.touched;\n }\n\n constructor(\n formBuilder: FormBuilder,\n private _focusMonitor: FocusMonitor,\n private _elementRef: ElementRef,\n @Optional() @Inject(MAT_FORM_FIELD) public _formField: MatFormField,\n @Optional() @Self() public ngControl: NgControl\n ) {\n this.parts = formBuilder.group({\n area: [\n null,\n [Validators.required, Validators.minLength(4), Validators.maxLength(4)],\n ],\n exchange: [\n null,\n [Validators.required, Validators.minLength(3), Validators.maxLength(3)],\n ],\n subscriber: [\n null,\n [Validators.required, Validators.minLength(3), Validators.maxLength(3)],\n ],\n });\n\n if (this.ngControl != null) {\n this.ngControl.valueAccessor = this;\n }\n }\n static nextId = 0;\n\n static ngAcceptInputType_disabled: BooleanInput;\n static ngAcceptInputType_required: BooleanInput;\n @ViewChild('area') areaInput: HTMLInputElement;\n @ViewChild('exchange') exchangeInput: HTMLInputElement;\n @ViewChild('subscriber') subscriberInput: HTMLInputElement;\n @Input('mobileTouched') mobileTouched: boolean;\n parts: FormGroup;\n stateChanges = new Subject();\n focused = false;\n touched = false;\n controlType = 'example-tel-input';\n id = `example-tel-input-${TelInputComponent.nextId++}`;\n\n @Input('aria-describedby') userAriaDescribedBy: string;\n private _placeholder: string;\n private _required = false;\n private _disabled = false;\n onChange = (_: any) => {};\n onTouched = () => {};\n ngOnChanges(changes: SimpleChanges) {\n // console.log('changes.mobileTouched');\n // console.log(changes.mobileTouched.currentValue);\n if (changes.mobileTouched.currentValue) {\n // console.log('true');\n this.touched = true;\n }\n }\n\n ngOnDestroy() {\n this.stateChanges.complete();\n this._focusMonitor.stopMonitoring(this._elementRef);\n }\n\n onFocusIn(event: FocusEvent) {\n if (!this.focused) {\n this.focused = true;\n this.stateChanges.next();\n }\n }\n\n onFocusOut(event: FocusEvent) {\n if (\n !this._elementRef.nativeElement.contains(event.relatedTarget as Element)\n ) {\n this.touched = true;\n this.focused = false;\n this.onTouched();\n this.stateChanges.next();\n }\n }\n\n autoFocusNext(\n control: AbstractControl,\n nextElement?: HTMLInputElement\n ): void {\n if (!control.errors && nextElement) {\n this._focusMonitor.focusVia(nextElement, 'program');\n }\n }\n\n autoFocusPrev(control: AbstractControl, prevElement: HTMLInputElement): void {\n if (control.value.length < 1) {\n this._focusMonitor.focusVia(prevElement, 'program');\n }\n }\n\n setDescribedByIds(ids: string[]) {\n const controlElement = this._elementRef.nativeElement.querySelector(\n '.example-tel-input-container'\n )!;\n controlElement.setAttribute('aria-describedby', ids.join(' '));\n }\n\n onContainerClick() {\n if (this.parts.controls.subscriber.valid) {\n this._focusMonitor.focusVia(this.subscriberInput, 'program');\n } else if (this.parts.controls.exchange.valid) {\n this._focusMonitor.focusVia(this.subscriberInput, 'program');\n } else if (this.parts.controls.area.valid) {\n this._focusMonitor.focusVia(this.exchangeInput, 'program');\n } else {\n this._focusMonitor.focusVia(this.areaInput, 'program');\n }\n }\n\n writeValue(tel: MyTel | null): void {\n this.value = tel;\n }\n\n registerOnChange(fn: any): void {\n this.onChange = fn;\n }\n\n registerOnTouched(fn: any): void {\n this.onTouched = fn;\n }\n\n setDisabledState(isDisabled: boolean): void {\n this.disabled = isDisabled;\n }\n\n _handleInput(control: AbstractControl, nextElement?: HTMLInputElement): void {\n this.autoFocusNext(control, nextElement);\n this.onChange(this.value);\n }\n}\n","
\n (\n \n )\n \n \n \n
\n","import { Component, OnInit, Output, EventEmitter } from '@angular/core';\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\nimport { UsersService } from '../services/users.service';\nimport { LoadingService } from './../../../core/services/loader.service';\nimport { ActivatedRoute } from '@angular/router';\nimport { LoginComponent } from '../login/login.component';\nimport { MatDialog } from '@angular/material/dialog';\nimport { AuthenticationService } from 'src/app/core/services/authentication.service';\nimport { ForgotPasswordComponent } from '../forgot-password/forgot-password.component';\nimport { LoginOtpComponent } from '../login-otp/login-otp.component';\n\n@Component({\n selector: 'app-update-password',\n templateUrl: './update-password.component.html',\n styleUrls: ['./update-password.component.scss'],\n})\nexport class UpdatePasswordComponent implements OnInit {\n applicationForm: FormGroup;\n contactId: any;\n submitted = false;\n hide = true;\n hide2 = true;\n constructor(\n private formBuilder: FormBuilder,\n private userService: UsersService,\n private route: ActivatedRoute,\n private loadingService: LoadingService,\n public dialog: MatDialog,\n public auth: AuthenticationService\n ) {}\n headerStatus = 'Reset';\n ngOnInit(): void {\n this.checkCurrentURl();\n this.route.params.subscribe((params) => {\n this.contactId = params.contactId;\n });\n\n this.applicationForm = this.formBuilder.group(\n {\n password: ['', [Validators.required, Validators.maxLength(15)]],\n confirm_password: ['', [Validators.required, Validators.maxLength(15)]],\n },\n { validators: this.checkPasswords }\n );\n }\n checkCurrentURl() {\n // const currentUrl = this.router.url.split('?')[0];\n const currentUrl = this.auth.getCurrentUrl();\n\n if (currentUrl.includes('update-password')) {\n this.headerStatus = 'Reset';\n } else if (currentUrl.includes('create-password')) {\n this.headerStatus = 'Create';\n }\n }\n checkPasswords(group: FormGroup) {\n // here we have the 'passwords' group\n const password = group.get('password').value;\n const confirmPassword = group.get('confirm_password').value;\n\n return password === confirmPassword ? null : { notSame: true };\n }\n get applicationF() {\n return this.applicationForm.controls;\n }\n\n onSubmit() {\n this.submitted = true;\n\n if (this.applicationForm.invalid) {\n if (this.applicationForm.errors.notSame) {\n this.auth.showSnackBarMsg('Password did not match!');\n }\n return;\n }\n\n if (this.applicationForm.valid) {\n this.applicationForm.value.contactId = this.contactId;\n this.loadingService.startLoading();\n this.userService.updatePasssword(this.applicationForm.value).subscribe(\n (response) => {\n this.loadingService.stopLoading();\n\n if (response.success) {\n this.auth.showSnackBarMsg('Password Updated!');\n if (\n this.route.snapshot.queryParams.oppid &&\n this.route.snapshot.queryParams.email\n ) {\n // this.auth.gotoUrl(`/`, {\n // oppid: this.route.snapshot.queryParams.oppid,\n // });\n this.openDialog(\n 'LOGIN TO YOUR ACCOUNT',\n true,\n this.route.snapshot.queryParams.email\n );\n } else {\n // this.auth.gotoUrl('/');\n this.openDialog('LOGIN TO YOUR ACCOUNT');\n }\n window.scroll(0, 0);\n } else {\n }\n },\n (err) => {\n this.loadingService.stopLoading();\n console.log(err);\n }\n );\n }\n }\n\n openDialog(headline: string, disableEmail = false, email?: string) {\n const dialogRef = this.dialog.open(LoginComponent, {\n width: '500px',\n data: {\n headline,\n disableEmail,\n email,\n },\n });\n\n dialogRef.afterClosed().subscribe((result) => {\n if (result) {\n if (result == 'forgotPassword') {\n this.openForgotDialog();\n } else if (result == 'otpLogin') {\n this.loginOtp();\n } else if (result == 'onRegister') {\n }\n }\n });\n }\n\n loginOtp() {\n const dialogRef = this.dialog.open(LoginOtpComponent, {\n width: '500px',\n data: {},\n });\n dialogRef.afterClosed().subscribe((result) => {\n if (result) {\n if (result == 'backToLogin') {\n this.openDialog('LOGIN TO YOUR ACCOUNT');\n } else if (result == 'forgotPassword') {\n this.openForgotDialog();\n } else if (result == 'onRegister') {\n }\n }\n });\n }\n openForgotDialog() {\n const dialogRef = this.dialog.open(ForgotPasswordComponent, {\n width: '500px',\n });\n dialogRef.afterClosed().subscribe((result) => {\n if (result) {\n if (result == 'backToLogin') {\n this.openDialog('LOGIN TO YOUR ACCOUNT');\n }\n }\n });\n }\n}\n","
\n
\n \n\n\n\n\n
\n
\n
\n \n \n \n \n
\n
\n

{{headerStatus}} Password

\n \n
\n
\n\n \n New Password \n \n \n \n \n Password is required\n \n Password is less than 15 character\n \n \n \n \n \n Confirm Password \n \n \n \n \n Passwords do not match\n \n \n \n\n
\n \n\n
\n
\n\n
\n
\n\n\n\n\n\n","import { Component, Inject, OnInit } from '@angular/core';\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\nimport { MatDatepickerInputEvent } from '@angular/material/datepicker';\nimport {\n MatDialog,\n MatDialogRef,\n MAT_DIALOG_DATA,\n} from '@angular/material/dialog';\nimport { AuthenticationService } from 'src/app/core/services/authentication.service';\nimport { LoadingService } from 'src/app/core/services/loader.service';\nimport { FinancialGoalService } from '../../financial-goal/services/financial-goal.service';\nimport { ConfirmationPromptComponent } from '../../repetaed-component/confirmation-prompt/confirmation-prompt.component';\nimport { UsersService } from '../services/users.service';\n\n@Component({\n selector: 'app-withdraw-opportunity-popup',\n templateUrl: './withdraw-opportunity-popup.component.html',\n styleUrls: ['./withdraw-opportunity-popup.component.scss'],\n})\nexport class WithdrawOpportunityPopupComponent implements OnInit {\n headline =\n 'Provide the following information about why this opportunity is being closed.';\n applicationForm: FormGroup;\n events: any;\n todayDate: Date = new Date();\n statusCodes = [\n { id: 4, value: 'Application Declined' },\n { id: 5, value: 'Changed Mind' },\n { id: 955190000, value: 'Went to a Competitor' },\n { id: 955190001, value: 'Went direct to Bank' },\n // { id: 6, value: 'Went to a Competitor' },\n // { id: 7, value: 'Went direct to Bank' },\n // { id: 224400001, value: 'Went to a Competitor' },\n // { id: 224400002, value: 'Went direct to Bank' },\n ];\n public token;\n currentOppID: string;\n currentLeadFor: number;\n constructor(\n private _formBuilder: FormBuilder,\n private financeService: FinancialGoalService,\n private userService: UsersService,\n public auth: AuthenticationService,\n private loadingService: LoadingService,\n public dialog: MatDialog,\n public dialogRef: MatDialogRef,\n @Inject(MAT_DIALOG_DATA) public data: any\n ) {}\n ngOnInit(): void {\n this.token = this.auth.getUserAccessToken();\n this.currentOppID = this.data.data;\n this.currentLeadFor = this.data.leadFor;\n this.applicationForm = this._formBuilder.group({\n opportunityid: [this.currentOppID],\n opportunitystatuscode: ['', [Validators.required]],\n // actualrevenue: ['', [Validators.required]],\n // actualend: [\n // { value: this.todayDate, disabled: false },\n // [Validators.required],\n // ],\n description: [''],\n });\n }\n\n onSubmit() {\n if (this.applicationForm.invalid) {\n this.auth.showSnackBarMsg('Please fill all details.', 9000);\n return;\n }\n const heading = 'Are you sure to delete ?';\n const dialogRef = this.dialog.open(ConfirmationPromptComponent, {\n width: '480px',\n data: {\n tagline: heading,\n },\n });\n\n dialogRef.afterClosed().subscribe((result) => {\n if (result == 'OK') {\n this.loadingService.startLoading();\n this.financeService\n .disableOpportunity(this.token, this.applicationForm.value)\n .subscribe(\n (response) => {\n if (response.success) {\n this.removeOpportunityInUI(\n this.applicationForm.value.opportunityid\n );\n this.loadingService.stopLoading();\n this.auth.showSnackBarMsg(response.data, 9000);\n this.dialogRef.close({ leadFor: this.currentLeadFor });\n } else {\n this.auth.showSnackBarMsg('Something went wrong!', 9000);\n }\n },\n (error) => {\n console.log(error);\n if (error.error.message.includes('Does Not Exist')) {\n this.removeOpportunityInUI(\n this.applicationForm.value.opportunityid\n );\n this.auth.showSnackBarMsg(\n 'Opportunity withdrawn successfully.',\n 9000\n );\n this.dialogRef.close({ leadFor: this.currentLeadFor });\n } else {\n this.auth.showSnackBarMsg(error.error.message, 9000);\n }\n\n this.loadingService.stopLoading();\n }\n );\n }\n });\n }\n removeOpportunityInUI(oppId) {\n const allOpportunity = this.auth.getAllOpportunity();\n const oppafterRemove = [];\n allOpportunity.forEach((element) => {\n if (element.opportunityid !== oppId) {\n oppafterRemove.push(element);\n }\n });\n console.log('oppafterRemove');\n console.log(oppafterRemove);\n this.auth.setOpportunityinSession(oppafterRemove);\n if (this.currentLeadFor == 1) {\n this.auth.setCurrentSuperOpportunityId('');\n // this.router.navigate(['/']);\n this.auth.gotoUrl('/');\n }\n if (this.currentLeadFor == 2) {\n this.auth.setCurrentDebtOpportunityId('');\n // this.router.navigate(['financial-goal']);\n this.auth.gotoUrl('financial-goal');\n }\n if (this.currentLeadFor == 9) {\n this.auth.setCurrentInvestmentOpportunityId('');\n // this.router.navigate(['/']);\n this.auth.gotoUrl('/');\n }\n if (this.currentLeadFor == 4) {\n this.auth.setCurrentGeneralInsuranceOpportunityId('');\n // this.router.navigate(['/']);\n this.auth.gotoUrl('/');\n }\n if (this.currentLeadFor == 5) {\n this.auth.setCurrentHealthInsuranceOpportunityId('');\n // this.router.navigate(['/']);\n this.auth.gotoUrl('/');\n }\n if (this.currentLeadFor == 6) {\n this.auth.setCurrentEstatePlanningOpportunityId('');\n // this.router.navigate(['/']);\n this.auth.gotoUrl('/');\n }\n if (this.currentLeadFor == 7) {\n this.auth.setCurrentFinancialPlanningOpportunityId('');\n // this.router.navigate(['/']);\n this.auth.gotoUrl('/');\n }\n if (this.currentLeadFor == 3) {\n this.auth.setCurrentLifeInsuranceOpportunityId('');\n // this.router.navigate(['/']);\n this.auth.gotoUrl('/');\n }\n\n // this.auth.updateSideBar();\n this.auth.disableOpp.next(true);\n // this.currentOpportunity = '';\n // this.toggleData(this.targetDiv);\n }\n addEvent(type: string, event: MatDatepickerInputEvent) {\n const date = Number(event.value.getMonth()) + 1;\n this.events =\n event.value.getFullYear() + '-' + date + '-' + event.value.getDate();\n // console.log(this.events);\n }\n\n /*\n get form control for validation\n */\n get applicationF() {\n return this.applicationForm.controls;\n }\n}\n","
\n
\n

Withdraw Application

\n \n
\n\n
\n
\n
\n \n
\n
\n Why do you want to withdraw the application?\n \n \n {{element.value}}\n \n \n\n
\n \n \n\n \n\n \n\n \n\n\n
\n\n
\n
\n Comment\n \n \n \n\n
\n\n
\n
\n\n \n\n\n\n
\n\n \n \n\n \n \n \n Submit\n \n \n\n
\n\n
\n","import { Injectable } from '@angular/core';\nimport {\n ActivatedRouteSnapshot,\n CanActivate,\n Router,\n RouterStateSnapshot,\n UrlTree,\n} from '@angular/router';\nimport { Observable } from 'rxjs';\nimport { AuthenticationService } from '../core/services/authentication.service';\n@Injectable()\nexport class AuthGuard implements CanActivate {\n constructor(\n private authService: AuthenticationService,\n private router: Router\n ) {}\n uploaddocumentwithemail = false;\n queryUser = '';\n quryOppId = '';\n canActivate(\n route: ActivatedRouteSnapshot,\n state: RouterStateSnapshot\n ):\n | boolean\n | UrlTree\n | Observable\n | Promise {\n return this.authService.IsAuthenticated().then((auth: boolean) => {\n const currentUrlState = state.url;\n if (auth) {\n if (currentUrlState.includes('login')) {\n this.router.navigate(['/']);\n } else {\n return true;\n }\n } else {\n console.log(currentUrlState);\n if (currentUrlState.includes('user')) {\n this.router.navigate(['/debtapp']);\n } else if (currentUrlState.includes('life-insurance')) {\n this.router.navigate(['/life-insurance']);\n } else if (currentUrlState.includes('financial-planning')) {\n this.router.navigate(['/financial-planning']);\n } else if (currentUrlState.includes('superannuation')) {\n this.router.navigate(['/superannuation']);\n } else if (currentUrlState.includes('managed-account')) {\n this.router.navigate(['/managed-account']);\n } else if (currentUrlState.includes('general-insurance')) {\n this.router.navigate(['/general-insurance']);\n } else if (currentUrlState.includes('estate-planning')) {\n this.router.navigate(['/estate-planning']);\n } else if (currentUrlState.includes('health-insurance')) {\n this.router.navigate(['/health-insurance']);\n } else if (currentUrlState.includes('refinance-consolidation')) {\n this.router.navigate(['/debtapp']);\n } else if (currentUrlState.includes('financial-goal')) {\n this.router.navigate(['/debtapp']);\n } else if (currentUrlState.includes('login')) {\n return true;\n } else {\n this.router.navigate(['/']);\n }\n }\n });\n }\n}\n","import { Injectable } from '@angular/core';\nimport {\n ActivatedRouteSnapshot,\n CanActivate,\n RouterStateSnapshot,\n UrlTree,\n} from '@angular/router';\nimport { Observable } from 'rxjs';\nimport { AuthenticationService } from '../core/services/authentication.service';\n@Injectable()\nexport class IsOpportunityGuard implements CanActivate {\n constructor(private authService: AuthenticationService) {}\n canActivate(\n route: ActivatedRouteSnapshot,\n state: RouterStateSnapshot\n ):\n | boolean\n | UrlTree\n | Observable\n | Promise {\n return this.authService.IsAuthenticated().then((auth: boolean) => {\n if (auth) {\n const currentUrlState = state.url;\n let returnFlag = true;\n if (currentUrlState.includes('user')) {\n const opp = this.authService.getCurrentOpportunityId();\n if (!opp) {\n returnFlag = false;\n }\n } else if (currentUrlState.includes('life-insurance')) {\n const opp = this.authService.getCurrentLifeInsuranceOpportunityId();\n\n if (!opp) {\n returnFlag = false;\n }\n } else if (currentUrlState.includes('financial-planning')) {\n const opp =\n this.authService.getCurrentFinancialPlanningOpportunityId();\n if (!opp) {\n returnFlag = false;\n }\n } else if (currentUrlState.includes('superannuation')) {\n const opp = this.authService.getCurrentSuperOpportunityId();\n if (!opp) {\n returnFlag = false;\n }\n } else if (currentUrlState.includes('managed-account')) {\n const opp = this.authService.getCurrentInvestmentOpportunityId();\n if (!opp) {\n returnFlag = false;\n }\n } else if (currentUrlState.includes('general-insurance')) {\n const opp =\n this.authService.getCurrentGeneralInsuranceOpportunityId();\n if (!opp) {\n returnFlag = false;\n }\n } else if (currentUrlState.includes('estate-planning')) {\n const opp = this.authService.getCurrentEstatePlanningOpportunityId();\n if (!opp) {\n returnFlag = false;\n }\n } else if (currentUrlState.includes('health-insurance')) {\n const opp = this.authService.getCurrentHealthInsuranceOpportunityId();\n if (!opp) {\n returnFlag = false;\n }\n } else if (currentUrlState.includes('refinance-consolidation')) {\n const opp = this.authService.getCurrentOpportunityId();\n if (!opp) {\n returnFlag = false;\n }\n } else if (currentUrlState.includes('financial-goal')) {\n const opp = this.authService.getCurrentOpportunityId();\n if (!opp) {\n returnFlag = false;\n }\n } else {\n returnFlag = false;\n }\n if (returnFlag == false) {\n this.authService.showSnackBarMsg(\n 'You did not have this Opportunity yet, please create one'\n );\n this.authService.gotoUrl('/');\n } else {\n return true;\n }\n }\n });\n }\n}\n","// This file can be replaced during build by using the `fileReplacements` array.\n// `ng build --prod` replaces `environment.ts` with `environment.prod.ts`.\n// The list of file replacements can be found in `angular.json`.\n\nexport const environment = {\n usersnapGlobal: 'b5fb2517-7823-4e00-9202-4389438606e7',\n production: false,\n env: 'local',\n // development\n host: 'https://api.cashelfo.com/api/v1',\n // local\n // host: 'http://localhost:3000/api/v1',\n // test\n // host: 'https://test-api.cashelfo.com/api/v1',\n};\n\n/*\n * For easier debugging in development mode, you can import the following file\n * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`.\n *\n * This import should be commented out in production mode because it will have a negative impact\n * on performance if an error is thrown.\n */\n// import 'zone.js/dist/zone-error'; // Included with Angular CLI.\n","import { enableProdMode } from '@angular/core';\nimport { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\n\nimport { AppModule } from './app/app.module';\nimport { environment } from './environments/environment';\n\nif (environment.production) {\n enableProdMode();\n}\n\nplatformBrowserDynamic().bootstrapModule(AppModule)\n .catch(err => console.error(err));\n"],"sourceRoot":"webpack:///"}