{"version":3,"sources":["webpack:///./$_lazy_route_resource lazy namespace object","webpack:///./src/app/app.component.html","webpack:///./src/app/components/components.component.html","webpack:///./src/app/components/faq/faq.component.html","webpack:///./src/app/components/typography/typography.component.html","webpack:///./src/app/core/access-denied/access-denied.component.html","webpack:///./src/app/core/navbar/navbar.component.html","webpack:///./src/app/core/page-not-found/page-not-found.component.html","webpack:///./src/app/core/sidebar/sidebar.component.html","webpack:///./src/app/core/web-api-config/web-api-config.component.html","webpack:///./src/app/home/home.component.html","webpack:///./src/app/reschedule/reschedule.component.html","webpack:///./src/app/sample/add/sample-add.component.html","webpack:///./src/app/sample/edit/sample-edit.component.html","webpack:///./src/app/sample/list/sample-list.component.html","webpack:///./src/app/schedule/schedule.component.html","webpack:///./src/app/shared/components/accountverification/account-verification.component.html","webpack:///./src/app/shared/components/appointmentconfirmation/appointment-confirmation.component.html","webpack:///./src/app/shared/components/availability/availability-selection.component.html","webpack:///./src/app/shared/components/covidquestionnaire/covid-questionnaire.component.html","webpack:///./src/app/user/add/user-add.component.html","webpack:///./src/app/user/edit/user-edit.component.html","webpack:///./src/app/user/list/user-list.component.html","webpack:///./src/app/app-routing.module.ts","webpack:///./src/app/app.component.ts","webpack:///./src/app/app.module.ts","webpack:///./src/app/components/components.component.css","webpack:///./src/app/components/components.component.ts","webpack:///./src/app/components/components.module.ts","webpack:///./src/app/components/components.routing.ts","webpack:///./src/app/components/faq/faq.component.scss","webpack:///./src/app/components/faq/faq.component.ts","webpack:///./src/app/components/http.service.ts","webpack:///./src/app/components/typography/typography.component.ts","webpack:///./src/app/core/access-denied/access-denied.component.ts","webpack:///./src/app/core/authorization.service.ts","webpack:///./src/app/core/core.module.ts","webpack:///./src/app/core/navbar/http.service.ts","webpack:///./src/app/core/navbar/navbar.component.ts","webpack:///./src/app/core/page-not-found/page-not-found.component.ts","webpack:///./src/app/core/routes.ts","webpack:///./src/app/core/sidebar/sidebar.component.ts","webpack:///./src/app/core/sidebar/sidebar.service.ts","webpack:///./src/app/core/web-api-config/web-api-config.component.ts","webpack:///./src/app/core/web-api-config/web-api-config.service.ts","webpack:///./src/app/home/home.component.ts","webpack:///./src/app/home/home.module.ts","webpack:///./src/app/reschedule/reschedule-entities.ts","webpack:///./src/app/reschedule/reschedule.component.css","webpack:///./src/app/reschedule/reschedule.component.scss","webpack:///./src/app/reschedule/reschedule.component.ts","webpack:///./src/app/reschedule/reschedule.module.ts","webpack:///./src/app/reschedule/reschedule.routing.ts","webpack:///./src/app/reschedule/reschedule.service.ts","webpack:///./src/app/sample/add/sample-add.component.ts","webpack:///./src/app/sample/edit/sample-edit.component.ts","webpack:///./src/app/sample/list/sample-list.component.ts","webpack:///./src/app/sample/sample.module.ts","webpack:///./src/app/sample/sample.service.ts","webpack:///./src/app/sample/sample.ts","webpack:///./src/app/schedule/schedule-entities.ts","webpack:///./src/app/schedule/schedule.component.css","webpack:///./src/app/schedule/schedule.component.scss","webpack:///./src/app/schedule/schedule.component.ts","webpack:///./src/app/schedule/schedule.module.ts","webpack:///./src/app/schedule/schedule.routing.ts","webpack:///./src/app/schedule/schedule.service.ts","webpack:///./src/app/shared/components/accountverification/account-verification-entities.ts","webpack:///./src/app/shared/components/accountverification/account-verification.component.css","webpack:///./src/app/shared/components/accountverification/account-verification.component.ts","webpack:///./src/app/shared/components/accountverification/account-verification.module.ts","webpack:///./src/app/shared/components/accountverification/account-verification.service.ts","webpack:///./src/app/shared/components/appointmentconfirmation/appointment-confirmation-entities.ts","webpack:///./src/app/shared/components/appointmentconfirmation/appointment-confirmation.component.css","webpack:///./src/app/shared/components/appointmentconfirmation/appointment-confirmation.component.ts","webpack:///./src/app/shared/components/appointmentconfirmation/appointment-confirmation.module.ts","webpack:///./src/app/shared/components/availability/availability-selection-entities.ts","webpack:///./src/app/shared/components/availability/availability-selection.component.css","webpack:///./src/app/shared/components/availability/availability-selection.component.ts","webpack:///./src/app/shared/components/availability/availability-selection.module.ts","webpack:///./src/app/shared/components/availability/availability-selection.service.ts","webpack:///./src/app/shared/components/base/app-base.component.ts","webpack:///./src/app/shared/components/covidquestionnaire/covid-questionnaire-entities.ts","webpack:///./src/app/shared/components/covidquestionnaire/covid-questionnaire.component.css","webpack:///./src/app/shared/components/covidquestionnaire/covid-questionnaire.component.ts","webpack:///./src/app/shared/components/covidquestionnaire/covid-questionnaire.module.ts","webpack:///./src/app/shared/services/common/app-common.service.ts","webpack:///./src/app/shared/services/coolEmail/coolEmail-entities.ts","webpack:///./src/app/shared/services/coolEmail/coolEmail.service.ts","webpack:///./src/app/shared/services/dbTraceLog/dbTraceLog-entities.ts","webpack:///./src/app/shared/services/dbTraceLog/dbTraceLog.service.ts","webpack:///./src/app/user/add/user-add.component.ts","webpack:///./src/app/user/edit/user-edit.component.ts","webpack:///./src/app/user/list/user-list.component.ts","webpack:///./src/app/user/user.module.ts","webpack:///./src/app/user/user.service.ts","webpack:///./src/app/user/user.ts","webpack:///./src/assets/images/home.png","webpack:///./src/assets/images/truck.png","webpack:///./src/environments/environment.ts","webpack:///./src/main.ts"],"names":[],"mappings":";;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAE;AACF;AACA,4CAA4C,WAAW;AACvD;AACA;AACA,wE;;;;;;;;;;;ACZA,2EAA2E,oT;;;;;;;;;;;ACA3E,qiCAAqiC,6BAA6B,k3MAAk3M,6BAA6B,ywBAAywB,wMAAwM,kBAAkB,wPAAwP,mDAAmD,6HAA6H,oDAAoD,0CAA0C,qDAAqD,2UAA2U,eAAe,8QAA8Q,uBAAuB,0BAA0B,oBAAoB,cAAc,qBAAqB,yCAAyC,sBAAsB,4CAA4C,oBAAoB,slBAAslB,+CAA+C,MAAM,+PAA+P,6BAA6B,6NAA6N,gCAAgC,+EAA+E,gCAAgC,oXAAoX,sBAAsB,4TAA4T,WAAW,iUAAiU,QAAQ,82BAA82B,sBAAsB,4cAA4c,uMAAuM,kBAAkB,wPAAwP,mDAAmD,6HAA6H,oDAAoD,0CAA0C,qDAAqD,6UAA6U,eAAe,mgBAAmgB,uBAAuB,0BAA0B,oBAAoB,cAAc,qBAAqB,yCAAyC,sBAAsB,4CAA4C,oBAAoB,slBAAslB,+CAA+C,MAAM,+PAA+P,6BAA6B,6NAA6N,gCAAgC,+EAA+E,gCAAgC,oXAAoX,sBAAsB,4TAA4T,WAAW,+TAA+T,QAAQ,82BAA82B,sBAAsB,4cAA4c,kaAAka,KAAK,0KAA0K,+BAA+B,gXAAgX,OAAO,2IAA2I,gBAAgB,kFAAkF,iBAAiB,qBAAqB,cAAc,iBAAiB,iBAAiB,KAAK,+BAA+B,2XAA2X,+BAA+B,y8BAAy8B,mBAAmB,uIAAuI,gCAAgC,6hDAA6hD,mBAAmB,uIAAuI,gCAAgC,0lDAA0lD,+CAA+C,MAAM,+PAA+P,6BAA6B,6NAA6N,gCAAgC,+EAA+E,gCAAgC,maAAma,kBAAkB,wPAAwP,mDAAmD,6HAA6H,oDAAoD,0CAA0C,qDAAqD,iMAAiM,uBAAuB,0BAA0B,oBAAoB,cAAc,qBAAqB,yCAAyC,sBAAsB,4CAA4C,oBAAoB,kRAAkR,sBAAsB,4TAA4T,WAAW,8SAA8S,QAAQ,g4BAAg4B,sBAAsB,4cAA4c,uMAAuM,kBAAkB,wPAAwP,mDAAmD,6HAA6H,oDAAoD,0CAA0C,qDAAqD,iMAAiM,uBAAuB,0BAA0B,oBAAoB,cAAc,qBAAqB,yCAAyC,sBAAsB,4CAA4C,oBAAoB,0hBAA0hB,KAAK,uOAAuO,OAAO,2IAA2I,gBAAgB,kFAAkF,iBAAiB,qBAAqB,cAAc,iBAAiB,iBAAiB,KAAK,+BAA+B,2XAA2X,+BAA+B,g8BAAg8B,sBAAsB,4TAA4T,WAAW,+TAA+T,QAAQ,81BAA81B,sBAAsB,qnBAAqnB,6BAA6B,mfAAmf,6BAA6B,uCAAuC,2FAA2F,gCAAgC,0GAA0G,gCAAgC,kVAAkV,uMAAuM,kBAAkB,wPAAwP,mDAAmD,6HAA6H,oDAAoD,0CAA0C,qDAAqD,6UAA6U,eAAe,igBAAigB,uBAAuB,0BAA0B,oBAAoB,cAAc,qBAAqB,yCAAyC,sBAAsB,4CAA4C,oBAAoB,kRAAkR,sBAAsB,8TAA8T,WAAW,+TAA+T,QAAQ,82BAA82B,sBAAsB,4gBAA4gB,6BAA6B,qWAAqW,6BAA6B,iaAAia,yMAAyM,gBAAgB,yDAAyD,gCAAgC,gH;;;;;;;;;;;ACA5lzC,w6BAAw6B,2KAA2K,0JAA0J,cAAc,8IAA8I,YAAY,0KAA0K,oLAAoL,qKAAqK,cAAc,oJAAoJ,YAAY,sLAAsL,mLAAmL,qKAAqK,cAAc,oJAAoJ,YAAY,kFAAkF,qIAAqI,4KAA4K,qKAAqK,cAAc,oJAAoJ,YAAY,gHAAgH,6FAA6F,gCAAgC,qEAAqE,gCAAgC,4ZAA4Z,gBAAgB,wD;;;;;;;;;;;ACAttI,m4J;;;;;;;;;;;ACAA,6F;;;;;;;;;;;ACAA,kJAAkJ,+BAA+B,sO;;;;;;;;;;;ACAjL,8X;;;;;;;;;;;ACAA,qaAAqa,mBAAmB,qqBAAqqB,gBAAgB,+GAA+G,mBAAmB,mLAAmL,gBAAgB,2HAA2H,mBAAmB,iXAAiX,cAAc,sEAAsE,iBAAiB,0J;;;;;;;;;;;ACAthE,8gC;;;;;;;;;;;ACAA,qqDAAqqD,uaAAua,ybAAyb,uZAAuZ,woBAAwoB,ocAAoc,mbAAmb,uZAAuZ,+aAA+a,uQ;;;;;;;;;;;ACAjuK,qhCAAqhC,4eAA4e,4BAA4B,KAAK,4BAA4B,ufAAuf,6RAA6R,gBAAgB,KAAK,0BAA0B,0pFAA0pF,kBAAkB,4GAA4G,wBAAwB,40DAA40D,kBAAkB,4CAA4C,yBAAyB,2fAA2f,+BAA+B,MAAM,sGAAsG,wCAAwC,YAAY,ouCAAouC,yRAAyR,gBAAgB,yEAAyE,gCAAgC,0P;;;;;;;;;;;ACAp4S,m4B;;;;;;;;;;;ACAA,s/C;;;;;;;;;;;ACAA,moCAAmoC,oBAAoB,yCAAyC,mDAAmD,8uCAA8uC,qDAAqD,84C;;;;;;;;;;;ACAthF,63DAA63D,gBAAgB,KAAK,gBAAgB,meAAme,+RAA+R,gBAAgB,KAAK,0BAA0B,8lFAA8lF,4BAA4B,kCAAkC,oWAAoW,MAAM,gCAAgC,+wBAA+wB,mcAAmc,g1BAAg1B,gUAAgU,aAAa,oBAAoB,gBAAgB,KAAK,gBAAgB,yYAAyY,kCAAkC,oBAAoB,yCAAyC,KAAK,yCAAyC,oWAAoW,mmCAAmmC,aAAa,oBAAoB,gBAAgB,KAAK,gBAAgB,w1EAAw1E,kBAAkB,4GAA4G,wBAAwB,2jBAA2jB,2lFAA2lF,cAAc,2wBAA2wB,6BAA6B,s0BAAs0B,sBAAsB,m5DAAm5D,yMAAyM,gBAAgB,yDAAyD,gCAAgC,oH;;;;;;;;;;;ACA/pnB,krD;;;;;;;;;;;ACAA,iXAAiX,kBAAkB,wCAAwC,yBAAyB,mVAAmV,2BAA2B,MAAM,yGAAyG,eAAe,sF;;;;;;;;;;;ACAh7B,gQAAgQ,mBAAmB,qFAAqF,kdAAkd,kEAAkE,yBAAyB,qwBAAqwB,kkBAAkkB,0BAA0B,yGAAyG,yBAAyB,UAAU,0BAA0B,UAAU,qCAAqC,sYAAsY,iBAAiB,osBAAosB,unBAAunB,6UAA6U,KAAK,0BAA0B,gTAAgT,yBAAyB,sQAAsQ,0BAA0B,oF;;;;;;;;;;;ACAlnK,0SAA0S,kFAAkF,yBAAyB,oLAAoL,uBAAuB,sSAAsS,uBAAuB,gpB;;;;;;;;;;;ACA75B,s4B;;;;;;;;;;;ACAA,2gC;;;;;;;;;;;ACAA,ooCAAooC,gBAAgB,GAAG,eAAe,yCAAyC,UAAU,yCAAyC,mBAAmB,6hC;;;;;;;;;;;;;;;;;;;;;;ACArxC,0DAA0D;AACjB;AACc;AASiB;AACA;AACP;AACH;AAE9D,IAAM,MAAM,GAAW;IACnB;QACI,IAAI,EAAE,qBAAqB;QAC3B,SAAS,EAAE,oFAAmB;QAC9B,IAAI,EAAE;YACF,KAAK,EAAE,kBAAkB;SAC5B;KACJ;IACD;QACI,IAAI,EAAE,UAAU;QAChB,SAAS,EAAE,8EAAiB;QAC5B,IAAI,EAAE;YACF,KAAK,EAAE,gBAAgB;SAC1B;QACD,SAAS,EAAE,QAAQ;KACtB;IACD;QACI,IAAI,EAAE,0BAA0B;QAChC,SAAS,EAAE,8EAAiB;QAC5B,IAAI,EAAE;YACF,KAAK,EAAE,gBAAgB;SAC1B;KACJ;IACD,GAAG;IACH,mDAAmD;IACnD,mCAAmC;IACnC,aAAa;IACb,iCAAiC;IACjC,OAAO;IACP,IAAI;IACJ,GAAG;IACH,8DAA8D;IAC9D,mCAAmC;IACnC,aAAa;IACb,iCAAiC;IACjC,OAAO;IACP,IAAI;IACJ;QACI,IAAI,EAAE,QAAQ;QACf,SAAS,EAAE,0EAAY;KACzB;IACD;QACI,IAAI,EAAE,EAAE;QACT,SAAS,EAAE,oFAAmB;KAChC;IACD;QACI,IAAI,EAAE,QAAQ;QACd,SAAS,EAAE,oFAAmB;KACjC;IACD;QACI,IAAI,EAAE,IAAI;QACV,SAAS,EAAE,oFAAmB;KACjC;IACD;QACI,IAAI,EAAE,OAAO;QACb,SAAS,EAAE,0EAAY;KAC1B;CACJ,CAAC;AAMF;IAAA;IAAgC,CAAC;IAApB,gBAAgB;QAJ5B,8DAAQ,CAAC;YACN,OAAO,EAAE,CAAC,4DAAY,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;YACvC,OAAO,EAAE,CAAC,4DAAY,CAAC;SAC1B,CAAC;OACW,gBAAgB,CAAI;IAAD,uBAAC;CAAA;AAAJ;;;;;;;;;;;;;;;;;;;;;;;;AC/E7B,0DAA0D;AAC1D,8EAA8E;AAC5B;AACsB;AACtB;AACK;AAEvD,qEAAqE;AACrE,4FAA4F;AAC7B;AAC/D,0EAA0E;AAC7B;AAEsC;AAMnF;IAGI,sBACY,mBAAwC,EACxC,IAAqB,EACrB,MAAgC,EAChC,MAAc,EACd,cAA8B,EAC9B,YAAmB;QALnB,wBAAmB,GAAnB,mBAAmB,CAAqB;QACxC,SAAI,GAAJ,IAAI,CAAiB;QACrB,WAAM,GAAN,MAAM,CAA0B;QAChC,WAAM,GAAN,MAAM,CAAQ;QACd,mBAAc,GAAd,cAAc,CAAgB;QAC9B,iBAAY,GAAZ,YAAY,CAAO;QAR/B,aAAQ,GAAW,IAAI,CAAC;IASpB,CAAC;IAEL,+BAAQ,GAAR;QACI,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACxB,OAAO,CAAC,GAAG,CAAC,cAAc,GAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QACrD,wBAAwB;QAExB,qFAAqF;QACrF,IAAI,MAAM,CAAC,QAAQ,CAAC,QAAQ,KAAK,WAAW,EAAE;YAC1C,IAAI,CAAC,mBAAmB,CAAC,mBAAmB,EAAE,CAAC;YAC/C,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;SACzB;aAAM,IAAI,MAAM,CAAC,QAAQ,CAAC,QAAQ,KAAK,uBAAuB,EAAE;YAC7D,IAAI,CAAC,mBAAmB,CAAC,mBAAmB,EAAE,CAAC;SAClD;aAAM,IAAI,MAAM,CAAC,QAAQ,CAAC,QAAQ,KAAK,uBAAuB,EAAE;YAC7D,IAAI,CAAC,mBAAmB,CAAC,mBAAmB,EAAE,CAAC;SAClD;aAAM,IAAI,MAAM,CAAC,QAAQ,CAAC,QAAQ,KAAK,oBAAoB,EAAE;YAC1D,IAAI,CAAC,mBAAmB,CAAC,mBAAmB,EAAE,CAAC;SAClD;aAAM,IAAI,MAAM,CAAC,QAAQ,CAAC,QAAQ,KAAK,uBAAuB,EAAE;YAC7D,IAAI,CAAC,mBAAmB,CAAC,mBAAmB,EAAE,CAAC;SAClD;aACI;YACD,IAAI,CAAC,MAAM,CAAC,aAAa,GAAG,+CAA+C,CAAC;YAC5E,IAAI,CAAC,MAAM,CAAC,WAAW,GAAG,WAAW,CAAC;YACtC,IAAI,CAAC,MAAM,CAAC,iBAAiB,GAAG,WAAW,CAAC;YAC5C,IAAI,CAAC,mBAAmB,CAAC,mBAAmB,EAAE,CAAC;SAClD;IACL,CAAC;IAEO,iCAAU,GAAlB,UAAmB,uBAAgC;QAAnD,iBA0BC;QAzBG,0EAA0E;QAC1E,IAAI,CAAC,IAAI,CAAC,GAAG,CAAM;YACf,GAAG,EAAE,UAAU;YACf,uBAAuB,EAAE,uBAAuB;SACnD,CAAC,CAAC,SAAS,CAAC,gBAAM;YACf,4FAA4F;YAC5F,KAAI,CAAC,MAAM,CAAC,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC;QACvC,CAAC,EAAE,gBAAM;YACL,2FAA2F;YAC3F,4FAA4F;YAC5F,sFAAsF;YACtF,IAAI,uBAAuB,IAAI,MAAM,CAAC,QAAQ,CAAC,QAAQ,KAAK,WAAW,EAAE;gBACrE,KAAI,CAAC,mBAAmB,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;aAC9C;QACL,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,IAAI,CAAC,GAAG,CAAM;YACf,GAAG,EAAE,SAAS;SACjB,CAAC,CAAC,SAAS,CAAC,gBAAM;YACf,KAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC;YAErC,4FAA4F;YAC5F,KAAI,CAAC,MAAM,CAAC,UAAU,CAAC,UAAU,EAAE,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YACzD,KAAI,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACvD,CAAC,CAAC,CAAC;IACP,CAAC;IAEO,uCAAgB,GAAxB;QAAA,iBAcC;QAbG,IAAM,WAAW,GAAG,mBAAmB,CAAC;QAExC,4EAA4E;QAC5E,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CACnB,6DAAM,CAAC,UAAC,KAAK,IAAK,YAAK,YAAY,6DAAa,EAA9B,CAA8B,CAAC,EACjD,0DAAG,CAAC;YACA,IAAI,KAAK,GAAG,KAAI,CAAC,cAAc,CAAC;YAChC,OAAO,KAAK,CAAC,UAAU,EAAE;gBAAE,KAAK,GAAG,KAAK,CAAC,UAAU,CAAC;aAAE;YACtD,OAAO,KAAK,CAAC;QACjB,CAAC,CAAC,EACF,6DAAM,CAAC,UAAC,KAAK,IAAK,YAAK,CAAC,MAAM,KAAK,SAAS,EAA1B,CAA0B,CAAC,EAC7C,+DAAQ,CAAC,UAAC,KAAK,IAAK,YAAK,CAAC,IAAI,EAAV,CAAU,CAAC,CAAC;aAC/B,SAAS,CAAC,UAAC,KAAK,IAAK,YAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,KAAK,GAAG,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,EAA/F,CAA+F,CAAC,CAAC;IAC/H,CAAC;;gBA5EgC,+FAAmB;gBAClC,0DAAe;gBACb,4EAAwB;gBACxB,sDAAM;gBACE,8DAAc;gBAChB,+DAAK;;IATtB,YAAY;QAJxB,+DAAS,CAAC;YACP,QAAQ,EAAE,QAAQ;YAClB,uIAAiC;SACpC,CAAC;+EAKmC,+FAAmB;YAClC,0DAAe;YACb,4EAAwB;YACxB,sDAAM;YACE,8DAAc;YAChB,+DAAK;OATtB,YAAY,CAiFxB;IAAD,mBAAC;CAAA;AAjFwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACnBzB,kBAAkB;AAClB,0DAA0D;AACjB;AACiB;AACqB;AACb;AACV;AACxD,sDAAsD;AAEtD,eAAe;AAC+B;AACE;AACc;AAClB;AACE;AACF;AACE;AACK;AAEnD,cAAc;AACkC;AACkB;AAClB;AACM;AACN;AACkB;AACN;AAE5D,4BAA4B;AACmB;AACS;AAwCxD;IAAA;IAAyB,CAAC;IAAb,SAAS;QAtCrB,8DAAQ,CAAC;YACN,OAAO,EAAE;gBACL,kBAAkB;gBAClB,uEAAa;gBACb,4FAAuB;gBACvB,0DAAW;gBACX,kEAAmB;gBACnB,qEAAgB;gBAChB,iBAAiB;gBAEjB,eAAe;gBACf,2DAAe;gBACf,6DAAgB;gBAChB,2EAAuB;gBACvB,yDAAc;gBACd,4DAAe;gBACf,0DAAc;gBACd,4DAAe;gBACf,iEAAiB;gBAEjB,cAAc;gBACd,6DAAU;gBACV,+EAAgB;gBAChB,6DAAU;gBACV,mEAAY;gBACZ,6DAAU;gBACV,+EAAgB;gBAChB,yEAAc;gBAEd,iBAAiB;gBACjB,qEAAgB;aAEnB;YACD,YAAY,EAAE;gBACV,4DAAY;aACf;YACD,SAAS,EAAE,CAAC,4DAAY,CAAC;SAC5B,CAAC;OACW,SAAS,CAAI;IAAD,gBAAC;CAAA;AAAJ;;;;;;;;;;;;ACtEtB,2BAA2B,6BAA6B,GAAG,gBAAgB,iCAAiC,GAAG,qBAAqB,yBAAyB,kBAAkB,wBAAwB,wBAAwB,iCAAiC,MAAM,yBAAyB,eAAe,eAAe,uBAAuB,yBAAyB,sBAAsB,MAAM,+CAA+C,YAAY,mCAAmC,KAAK,qBAAqB,iBAAiB,KAAK,GAAG,WAAW,qDAAqD,4CAA4C,kBAAkB,GAAG,WAAW,8BAA8B,iCAAiC,GAAG,eAAe,qCAAqC,2BAA2B,GAAG,aAAa,uBAAuB,mBAAmB,GAAG,oBAAoB,gCAAgC,GAAG,kBAAkB,2BAA2B,GAAG,uBAAuB,kCAAkC,GAAG,oBAAoB,wBAAwB,GAAG,iBAAiB,wBAAwB,sBAAsB,GAAG,yBAAyB,kCAAkC,iBAAiB,GAAG,OAAO,kCAAkC,qBAAqB,GAAG,YAAY,oBAAoB,4BAA4B,GAAG,aAAa,oBAAoB,kBAAkB,GAAG,WAAW,oBAAoB,gBAAgB,GAAG,gBAAgB,kBAAkB,GAAG,cAAc,uBAAuB,0BAA0B,oCAAoC,GAAG,2BAA2B,uBAAuB,iBAAiB,2BAA2B,gBAAgB,uBAAuB,uBAAuB,mBAAmB,uBAAuB,eAAe,iBAAiB,cAAc,uBAAuB,eAAe,6BAA6B,GAAG,kCAAkC,kBAAkB,uBAAuB,cAAc,cAAc,sBAAsB,sBAAsB,wBAAwB,2DAA2D,GAAG,iCAAiC,wBAAwB,eAAe,GAAG,qBAAqB,yBAAyB,kBAAkB,0BAA0B,0BAA0B,8BAA8B,GAAG,yBAAyB,8BAA8B,gBAAgB,iBAAiB,uBAAuB,sBAAsB,oBAAoB,GAAG,+BAA+B,mBAAmB,gBAAgB,wBAAwB,uBAAuB,GAAG,0BAA0B,wBAAwB,uBAAuB,wBAAwB,sBAAsB,uBAAuB,oBAAoB,gBAAgB,sBAAsB,GAAG,kDAAkD,gBAAgB,mBAAmB,uBAAuB,cAAc,cAAc,2BAA2B,gBAAgB,gBAAgB,GAAG,sCAAsC,0BAA0B,6BAA6B,gCAAgC,0BAA0B,mBAAmB,kBAAkB,yBAAyB,gBAAgB,gBAAgB,yBAAyB,GAAG,0CAA0C,8BAA8B,GAAG,2CAA2C,0BAA0B,8BAA8B,GAAG,gDAAgD,6BAA6B,wBAAwB,GAAG,6CAA6C,qBAAqB,+DAA+D,kEAAkE,8DAA8D,sHAAsH,GAAG,4CAA4C,uBAAuB,GAAG,yBAAyB,mBAAmB,gBAAgB,wBAAwB,uBAAuB,GAAG,4BAA4B,wBAAwB,uBAAuB,wBAAwB,sBAAsB,uBAAuB,oBAAoB,iBAAiB,sBAAsB,GAAG,oDAAoD,gBAAgB,mBAAmB,uBAAuB,cAAc,cAAc,8BAA8B,gBAAgB,gBAAgB,mBAAmB,GAAG,kCAAkC,0BAA0B,8BAA8B,mCAAmC,wBAAwB,4BAA4B,oBAAoB,gBAAgB,uBAAuB,cAAc,cAAc,uBAAuB,mBAAmB,GAAG,4CAA4C,8BAA8B,mBAAmB,GAAG,2CAA2C,0BAA0B,8BAA8B,mBAAmB,GAAG,yCAAyC,0BAA0B,8BAA8B,mBAAmB,GAAG,+CAA+C,8BAA8B,GAAG,8CAA8C,0BAA0B,8BAA8B,GAAG,uCAAuC,0BAA0B,GAAG,sCAAsC,sBAAsB,0BAA0B,GAAG,6CAA6C,6BAA6B,wBAAwB,iCAAiC,GAAG,kDAAkD,6BAA6B,wBAAwB,kCAAkC,GAAG,qDAAqD,6BAA6B,wBAAwB,GAAG,gDAAgD,6BAA6B,wBAAwB,GAAG,+CAA+C,mBAAmB,wBAAwB,yFAAyF,mFAAmF,kHAAkH,GAAG,0CAA0C,0FAA0F,qFAAqF,4BAA4B,GAAG,yCAAyC,0BAA0B,GAAG,8CAA8C,0BAA0B,GAAG,eAAe,yCAAyC,GAAG,aAAa,iBAAiB,eAAe,GAAG,kBAAkB,iBAAiB,eAAe,GAAG,oBAAoB,8BAA8B,sBAAsB,GAAG,eAAe,oBAAoB,uBAAuB,sBAAsB,sBAAsB,mCAAmC,GAAG,uBAAuB,oBAAoB,sBAAsB,GAAG,WAAW,wBAAwB,oBAAoB,8BAA8B,oBAAoB,oBAAoB,uBAAuB,GAAG,YAAY,iBAAiB,eAAe,GAAG,sBAAsB,8BAA8B,GAAG,wBAAwB,oBAAoB,qBAAqB,gCAAgC,kBAAkB,wCAAwC,GAAG,kBAAkB,8BAA8B,GAAG,qBAAqB,qBAAqB,GAAG,oBAAoB,oBAAoB,qBAAqB,iBAAiB,sBAAsB,GAAG,iBAAiB,oBAAoB,qBAAqB,iBAAiB,oBAAoB,GAAG,gBAAgB,oBAAoB,sBAAsB,iBAAiB,oBAAoB,GAAG,iBAAiB,iBAAiB,oBAAoB,uBAAuB,oBAAoB,GAAG,cAAc,yCAAyC,GAAG,cAAc,uBAAuB,mBAAmB,sBAAsB,oBAAoB,GAAG,eAAe,uBAAuB,qBAAqB,wBAAwB,iBAAiB,oBAAoB,oBAAoB,GAAG,UAAU,iBAAiB,qBAAqB,wBAAwB,oBAAoB,oBAAoB,mBAAmB,0BAA0B,GAAG,gBAAgB,iBAAiB,qBAAqB,wBAAwB,oBAAoB,oBAAoB,0BAA0B,GAAG,kBAAkB,oBAAoB,uBAAuB,GAAG,cAAc,oBAAoB,uBAAuB,gCAAgC,WAAW,qBAAqB,GAAG,sBAAsB,iCAAiC,sBAAsB,oBAAoB,GAAG,kBAAkB,8BAA8B,GAAG,eAAe,eAAe,iBAAiB,GAAG,cAAc,oBAAoB,uBAAuB,gCAAgC,oBAAoB,sBAAsB,cAAc,oBAAoB,qBAAqB,sBAAsB,8BAA8B,GAAG,aAAa,oBAAoB,YAAY,cAAc,gBAAgB,0BAA0B,iBAAiB,kCAAkC,mCAAmC,GAAG,eAAe,eAAe,iBAAiB,GAAG,qBAAqB,iBAAiB,eAAe,GAAG,WAAW,+BAA+B,iCAAiC,GAAG,WAAW,oBAAoB,GAAG,uBAAuB,+BAA+B,gCAAgC,+BAA+B,mCAAmC,GAAG,sBAAsB,oCAAoC,GAAG,2BAA2B,gCAAgC,4CAA4C,GAAG,WAAW,8BAA8B,GAAG,uCAAuC,4BAA4B,GAAG,6CAA6C,2vmB;;;;;;;;;;;;;;;;;;;;;;;;;;;ACA7kU,6EAA6E;AACW;AAE9C;AAGG;AACA;AACwC;AACH;AACF;AACE;AAGvC;AACiB;AAC4B;AAER;AAOhF;IAAyC,6EAAgB;IA+ErD,6BAAmB,WAAwB,EAAU,KAAqB,EAAU,MAAc,EAAS,QAAkB,EAClH,QAAyB,EAAS,iBAAoC,EAAS,aAAoC,EACnH,gBAAkC,EAAU,gBAAkC;QAFzF;QAII,iCAAiC;QACjC,kBAAM,QAAQ,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,aAAa,CAAC,SAgCtE;QArCkB,iBAAW,GAAX,WAAW,CAAa;QAAU,WAAK,GAAL,KAAK,CAAgB;QAAU,YAAM,GAAN,MAAM,CAAQ;QAAS,cAAQ,GAAR,QAAQ,CAAU;QAClH,cAAQ,GAAR,QAAQ,CAAiB;QAAS,uBAAiB,GAAjB,iBAAiB,CAAmB;QAAS,mBAAa,GAAb,aAAa,CAAuB;QACnH,sBAAgB,GAAhB,gBAAgB,CAAkB;QAAU,sBAAgB,GAAhB,gBAAgB,CAAkB;QA/ElF,YAAM,GAAW,EAAE,CAAC;QAUpB,aAAO,GAAG,SAAS,CAAC;QAI3B,wBAAkB,GAAG,EAAE,CAAC;QAejB,SAAG,GAAW,EAAE,CAAC;QA6BjB,eAAS,GAAW,EAAE,CAAC;QACvB,iBAAW,GAAW,EAAE,CAAC;QACzB,gBAAU,GAAG,IAAI,CAAC;QAElB,oBAAc,GAAW,EAAE,CAAC;QAE5B,oBAAc,GAAS,KAAK,CAAC;QAE7B,8BAAwB,GAAgC,EAAE,CAAC;QAE3D,0BAAoB,GAAU,EAAE,CAAC;QACjC,eAAS,GAAU,EAAE,CAAC;QAC7B,wBAAkB,GAAG,KAAK,CAAC;QACpB,0BAAoB,GAAW,EAAE,CAAC;QAG/B,kBAAY,GAAG,IAAI,0DAAY,EAAU,CAAC;QAUhD,KAAI,CAAC,MAAM,CAAC,kBAAkB,CAAC,gBAAgB,GAAG;YAC9C,OAAO,KAAK,CAAC;QACjB,CAAC,CAAC;QACF,KAAI,CAAC,cAAc,GAAG,KAAI,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,UAAC,KAAK;YACrD,IAAI,KAAK,YAAY,6DAAa,EAAE;gBAChC,0EAA0E;gBAC1E,KAAI,CAAC,MAAM,CAAC,SAAS,GAAG,KAAK,CAAC;aACjC;QACL,CAAC,CAAC,CAAC;QAEH,KAAI,CAAC,MAAM,GAAG,KAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAE9C,KAAI,CAAC,cAAc,GAAG,KAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,EAAE,EAAE,gBAAgB,CAAC,CAAC;QAC5E,KAAI,CAAC,gBAAgB,CAAC,wFAAO,CAAC,IAAI,EAAE,kDAAkD,CAAC,CAAC;QAExF,sBAAsB;QACtB,2DAA2D;QAE3D,oCAAoC;QACpC,4IAA4I;QAC5I,KAAK;QAEL,sBAAsB;QACtB,uBAAuB;QACvB,KAAI,CAAC,8BAA8B,EAAE,CAAC;QACtC,IAAI,OAAO,GAAG,CAAC,CAAC;QAChB,KAAI,CAAC,QAAQ,GAAG,WAAW,CAAC;YACxB,KAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QAC1B,CAAC,EAAE,KAAK,CAAC,CAAC;;IAEd,CAAC;IAAA,CAAC;IAGF,sCAAQ,GAAR;QAEI,mBAAmB;QACnB,uDAAuD;QAEvD,4DAA4D;QAC5D,+EAA+E;QAC/E,MAAM;QACN,wFAAwF;IAC5F,CAAC;IAED,uCAAS,GAAT,UAAU,aAAsB;QAAhC,iBAwCC;QAtCG,iCAAiC;QACjC,IAAI;YACA,IAAG,CAAC,IAAI,CAAC,cAAc,EACvB;gBACI,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,mBAAS;oBAErD,IAAI,SAAS,IAAI,IAAI,IAAI,SAAS,CAAC,UAAU,IAAI,GAAG,EAAE;wBAClD,KAAI,CAAC,MAAM,GAAG,KAAK,CAAC;wBACpB,KAAI,CAAC,eAAe,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;qBAClD;yBACI,IAAI,aAAa,EAAE;wBACpB,KAAI,CAAC,gBAAgB,CAAC,wFAAO,CAAC,KAAK,EAAE,uFAAuF,CAAC,CAAC;wBAC9H,KAAI,CAAC,kBAAkB,GAAG,KAAK,CAAC;qBACnC;oBACD,IAAG,SAAS,IAAI,IAAI,IAAI,SAAS,CAAC,UAAU,IAAE,GAAG,EAAC;wBAC9C,KAAI,CAAC,cAAc,GAAC,IAAI,CAAC;qBAC5B;gBACL,CAAC,EACD,mBAAS;oBAEL,IAAG,SAAS,IAAI,IAAI,IAAI,SAAS,CAAC,UAAU,IAAE,GAAG,EAAC;wBAC9C,KAAI,CAAC,cAAc,GAAC,IAAI,CAAC;qBAC5B;oBACD,IAAI,aAAa,IAAI,CAAC,KAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,SAAS,CAAC,IAAI,KAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,SAAS,CAAC,IAAI,KAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC,EAAE;wBACnJ,KAAI,CAAC,MAAM,GAAG,IAAI,CAAC;wBACnB,KAAI,CAAC,gBAAgB,CAAC,wFAAO,CAAC,KAAK,EAAE,kEAAkE,CAAC,CAAC;wBACzG,KAAI,CAAC,kBAAkB,GAAG,KAAK,CAAC;qBACnC;gBACT,CAAC,CAAC,CAAC;aACN;YAEG,IAAI,CAAC,aAAa,GAAG,UAAU,GAAG,MAAM,CAAC,QAAQ,CAAC,QAAQ,GAAG,cAAc,GAAG,IAAI,CAAC,MAAM,CAAC;YAC1F,IAAI,CAAC,MAAM,GAAG,UAAU,GAAG,MAAM,CAAC,QAAQ,CAAC,QAAQ,GAAG,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC;SAC/E;QACD,OAAO,CAAC,EAAE;YACN,IAAI,CAAC,gBAAgB,CAAC,wFAAO,CAAC,KAAK,EAAE,yDAAyD,GAAG,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;SACjI;IAEL,CAAC;IAED,4DAA8B,GAA9B;QAAA,iBAoCC;QAnCG,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC;QAC/B,IAAI;YAEA,IAAI,CAAC,gBAAgB,CAAC,qBAAqB,EAAE,CAAC,SAAS,CAAC,mBAAS;gBAC7D,IAAI,SAAS,CAAC,IAAI,IAAI,IAAI,EAAE;oBAExB,KAAI,CAAC,gBAAgB,CAAC,wFAAO,CAAC,IAAI,EAAE,0CAA0C,CAAC,CAAC;oBAEhF,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,oBAAU;wBAC7B,KAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;oBACnD,CAAC,CAAC,CAAC;oBAEH,KAAI,CAAC,WAAW,GAAG,KAAI,CAAC,wBAAwB,CAAC,MAAM,CAAC,cAAI,IAAI,QAAC,IAAI,CAAC,gBAAgB,IAAI,SAAS,CAAC,EAApC,CAAoC,CAAC;yBAChG,GAAG,CAAC,YAAE,IAAI,SAAE,CAAC,kBAAkB,EAArB,CAAqB,CAAC,CAAC,CAAC,CAAC,CAAC;oBAEzC,mBAAmB;oBACnB,KAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;iBACxB;qBACI;oBACD,KAAI,CAAC,gBAAgB,CAAC,wFAAO,CAAC,KAAK,EAAE,sEAAsE,CAAC,CAAC;oBAC7G,KAAI,CAAC,kBAAkB,GAAG,KAAK,CAAC;iBACnC;YAEL,CAAC,EAAE,mBAAS;gBACR,eAAe;gBACf,IAAI,KAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,SAAS,CAAC,IAAI,KAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,SAAS,CAAC,IAAI,KAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,SAAS,CAAC,EAAE;oBAChI,KAAI,CAAC,gBAAgB,CAAC,wFAAO,CAAC,KAAK,EAAE,kDAAkD,CAAC,CAAC;iBAC5F;YACL,CAAC,CAAC,CAAC;SAEN;QACD,OAAO,CAAC,EAAE;YACN,IAAI,CAAC,gBAAgB,CAAC,wFAAO,CAAC,KAAK,EAAE,+DAA+D,GAAG,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;SACvI;IAEL,CAAC;IAED,6CAAe,GAAf,UAAgB,SAAc,EAAE,aAAsB;QAClD,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC;QAC1B,IAAI,IAAI,CAAC,QAAQ,CAAC,UAAU,KAAK,GAAG,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,EAAE;YAErE,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;SAC5B;aAAM,IAAI,IAAI,CAAC,QAAQ,CAAC,UAAU,IAAI,GAAG,EAAG;YACzC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;SACtB;QACD,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE;YACrC,IAAI,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;YAC9B,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC,oBAAoB,CAAC;YACtD,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;YAChC,IAAI,CAAC,IAAI,CAAC,gBAAgB,IAAI,EAAE,IAAI,IAAI,CAAC,gBAAgB,IAAI,IAAI,IAAI,IAAI,CAAC,gBAAgB,IAAI,SAAS,CAAC;gBACpG,CAAC,IAAI,CAAC,OAAO,IAAI,EAAE,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,IAAI,IAAI,CAAC,OAAO,IAAI,SAAS,CAAC;gBACzE,CAAC,IAAI,CAAC,YAAY,IAAI,EAAE,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI,IAAI,IAAI,CAAC,YAAY,IAAI,SAAS,CAAC;gBACxF,CAAC,IAAI,CAAC,aAAa,IAAI,EAAE,IAAI,IAAI,CAAC,aAAa,IAAI,IAAI,IAAI,IAAI,CAAC,aAAa,IAAI,SAAS,CAAC;gBAC3F,CAAC,IAAI,CAAC,WAAW,IAAI,EAAE,IAAI,IAAI,CAAC,WAAW,IAAI,IAAI,IAAI,IAAI,CAAC,WAAW,IAAI,SAAS,CAAC;gBACrF,CAAC,IAAI,CAAC,aAAa,IAAI,EAAE,IAAI,IAAI,CAAC,aAAa,IAAI,IAAI,IAAI,IAAI,CAAC,aAAa,IAAI,SAAS,CAAC;gBAC3F,CAAC,IAAI,CAAC,WAAW,IAAI,EAAE,IAAI,IAAI,CAAC,WAAW,IAAI,IAAI,IAAI,IAAI,CAAC,WAAW,IAAI,SAAS,CAAC,EAAE;gBACvF,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;aACtB;iBAAM;gBACH,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;aACvB;SACJ;QAED,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC;QAClC,IAAI,CAAC,gBAAgB,GAAG,qBAAqB,CAAC;QAC9C,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,KAAK,GAAG,EAAE;YACxC,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,IAAI,WAAW,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,IAAI,MAAM,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,IAAI,EAAE,EAAE;gBACzI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,GAAG,wKAAwK,CAAC;aAC/M;SACJ;QACD,IAAI,IAAI,CAAC,GAAG,KAAK,MAAM,EAAE;YACrB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;YACjB,IAAI,CAAC,cAAc,GAAG,iCAAiC,CAAC;YACxD,IAAI,CAAC,oBAAoB,GAAG,kDAAkD,CAAC;YAC/E,6DAA6D;SAChE;aACI,IAAI,IAAI,CAAC,GAAG,KAAK,IAAI,EAAE;YACxB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;YAClB,IAAI,CAAC,cAAc,GAAG,gCAAgC,CAAC;YACvD,IAAI,CAAC,oBAAoB,GAAG,+CAA+C,CAAC;YAC5E,6DAA6D;SAChE;aACI,IAAI,IAAI,CAAC,GAAG,KAAK,KAAK,EAAE;YACzB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;YACpB,IAAI,CAAC,cAAc,GAAG,iCAAiC,CAAC;YACxD,IAAI,CAAC,oBAAoB,GAAG,qDAAqD,CAAC;YAClF,6DAA6D;SAChE;aACI,IAAI,IAAI,CAAC,GAAG,KAAK,KAAK,EAAE;YACzB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;YACxB,IAAI,CAAC,cAAc,GAAG,iCAAiC,CAAC;YACxD,IAAI,CAAC,oBAAoB,GAAG,iDAAiD,CAAC;YAC9E,6DAA6D;SAChE;QAED,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE;YACzB,IAAI,CAAC,IAAI,GAAG,IAAI;SACnB;;YAAM,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC;QAGzB,yFAAyF;QACzF,IAAI,CAAC,8BAA8B,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAEjD,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,IAAI,SAAS,EAAE;YAC/C,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;SAC7B;;YAAM,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;QAElC,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,IAAI,QAAQ;eACzC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,IAAI,mBAAmB;eACvD,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,IAAI,iBAAiB;eACrD,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,IAAI,WAAW,EAAE;YACpD,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;SAC5B;;YAAM,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;QAEjC,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC;QAEhD,IAAI,IAAI,CAAC,UAAU,IAAI,EAAE,IAAI,IAAI,CAAC,UAAU,IAAI,MAAM,IAAI,IAAI,CAAC,UAAU,IAAI,SAAS,EAAE;YACpF,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;SACxB;;YAAM,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QAE3B,IAAI,CAAC,YAAY,GAAG,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;QAEtE,IAAI,IAAI,CAAC,YAAY,EAAE;YACnB,IAAI,IAAI,CAAC,YAAY,GAAG,CAAC,IAAI,IAAI,CAAC,YAAY,IAAI,GAAG,EAAE;gBACnD,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;aACzB;iBAAM,IAAI,IAAI,CAAC,YAAY,GAAG,GAAG,IAAI,IAAI,CAAC,YAAY,IAAI,CAAC,EAAE;gBAC1D,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;aACzB;iBAAM,IAAI,IAAI,CAAC,YAAY,GAAG,CAAC,IAAI,IAAI,CAAC,YAAY,IAAI,CAAC,EAAE;gBACxD,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;aACzB;iBAAM,IAAI,IAAI,CAAC,YAAY,GAAG,CAAC,IAAI,IAAI,CAAC,YAAY,IAAI,CAAC,EAAE;gBACxD,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;aACzB;iBACI,IAAI,IAAI,CAAC,YAAY,GAAG,CAAC,IAAI,IAAI,CAAC,YAAY,IAAI,EAAE,EAAE;gBACvD,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;aACvB;iBAAM,IAAI,IAAI,CAAC,YAAY,GAAG,EAAE,IAAI,IAAI,CAAC,YAAY,IAAI,EAAE,EAAE;gBAC1D,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC;aACtB;iBACI,IAAI,IAAI,CAAC,YAAY,GAAG,EAAE,IAAI,IAAI,CAAC,YAAY,IAAI,EAAE,EAAE;gBACxD,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC;aACtB;iBAAM,IAAI,IAAI,CAAC,YAAY,GAAG,EAAE,IAAI,IAAI,CAAC,YAAY,IAAI,GAAG,EAAE;gBAC3D,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC;aACtB;iBAAM,IAAI,IAAI,CAAC,YAAY,GAAG,GAAG,IAAI,IAAI,CAAC,YAAY,IAAI,GAAG,EAAE;gBAC5D,IAAI,CAAC,SAAS,GAAG,GAAG,CAAC;aACxB;iBAAM,IAAI,IAAI,CAAC,YAAY,GAAG,GAAG,EAAE;gBAChC,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC;aACtB;SACJ;;YAAM,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC;QAE1B,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,KAAK,GAAG,EAAE;YACxC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;SACxB;aAAM;YAAE,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;SAAE;QAEjC,IAAI,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE;YACrC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;SACrB;;YAAM,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QAE1B,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,KAAK,GAAG,EAAE;YACxC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;YACnB,IAAI,CAAC,gBAAgB,GAAG,sBAAsB,CAAC;SAClD;aAAM;YAAE,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;SAAE;QAE/B,IAAI,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE;YACnC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;SACrB;;YAAM,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QAE1B,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,KAAK,GAAG,EAAE;YACxC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;SACvB;aAAM;YAAE,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;SAAE;QAEhC,IAAI,IAAI,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE;YACpC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;SACrB;;YAAM,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QAE1B,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,KAAK,GAAG,EAAE;YACxC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;YACrB,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;SAC5B;aAAM;YAAE,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;SAAE;QAEjC,IAAI,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE;YACrC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;SACrB;;YAAM,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QAE1B,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,KAAK,WAAW,EAAE;YAClD,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;SAE3B;aAAM;YAAE,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;SAAE;QAEpC,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,KAAK,KAAK,EAAE;YAC5C,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;SAEvB;aAAM;YAAE,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;SAAE;QAEhC,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,KAAK,QAAQ,EAAE;YAC/C,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;SACzB;;YAAM,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;QAE9B,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE;YACtC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;SACrB;;YAAM,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QAG1B,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,OAAO,EAAE;YAC9D,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;SAC5B;QACD,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,OAAO,EAAE;YAC/C,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;SAC3B;QAED,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;YACjC,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;YAC3B,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;SACpC;aAAM;YAAE,IAAI,CAAC,YAAY,GAAG,UAAU;SAAE;QAEzC,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,KAAK,KAAK,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,KAAK,WAAW,EAAE;YAChG,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;SAC7B;;YAAM,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;QAElC,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,eAAe,EAAE;YAEpC,IAAI,CAAC,KAAK,GAAG,wBAAwB,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,eAAe,CAAC;YAC3E,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;SAEzB;aAAM;YACH,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;YACrB,sDAAsD;SACzD;QAED,IAAI,aAAa,GAAG,KAAK,CAAC;QAC1B,IAAI,WAAW,GAAG,KAAK,CAAC;QAExB,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC;YAC7D,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,IAAI,EAAE,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,IAAI,EAAE,CAAC,EAAE;YAE3E,IAAI,CAAC,gBAAgB,GAAG,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAChE,IAAI,CAAC,iBAAiB,GAAG,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAElE,IAAI,IAAI,CAAC,gBAAgB,GAAG,CAAC,EAAG;gBAC5B,WAAW,GAAG,IAAI,CAAC;aACtB;SACJ;QAED,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,kBAAkB,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAE;YACtF,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,kBAAkB,IAAI,EAAE,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,mBAAmB,IAAI,EAAE,CAAC;YACzF,WAAW,EAAE;YAEb,IAAI,CAAC,kBAAkB,GAAG,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;YAC5E,IAAI,CAAC,mBAAmB,GAAG,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;YAE9E,IAAI,IAAI,CAAC,kBAAkB,GAAG,CAAC,EAAE;gBAC7B,aAAa,GAAG,IAAI,CAAC;aACxB;SAEJ;QAED,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC;QAClC,IAAI,CAAC,aAAa,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,GAAG,IAAI,IAAI,IAAI,IAAI,CAAC,GAAG,IAAI,EAAE,EAAE;YACtE,IAAI,CAAC,GAAG,GAAG,2DAA2D,CAAC;SAC1E;QAGD,IAAI,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,kBAAkB,CAAC;QAEjD,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,EAAE,IAAI,IAAI,IAAI,MAAM,EAAE;YAC9D,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;SACvB;;YAAM,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;QAE1B,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,cAAc;QAC1E,IAAI,CAAC,YAAY,GAAG,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,gBAAgB;QAC9E,IAAI,CAAC,gBAAgB,GAAG,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,cAAc;QAC/E,IAAI,CAAC,iBAAiB,GAAG,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,cAAc;QAEjF,IAAI,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,oBAAoB,CAAC;QAClD,IAAI,CAAC,kBAAkB,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAGzC,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,KAAK,GAAG,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,KAAK,GAAG,EAAE;YAClF,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;SAChC;QAED,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,IAAI,IAAI;YACvC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC;QAErD,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,oBAAoB,IAAI,IAAI;YAC/C,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,GAAG,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,oBAAoB,CAAC;QAEpF,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,gBAAgB,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,CAAC;QAE1G,2EAA2E;QAC3E,IAAI,aAAa;YACb,IAAI,CAAC,gBAAgB,CAAC,wFAAO,CAAC,IAAI,EAAE,oCAAoC,CAAC,CAAC;QAE9E,IAAI,CAAC,kBAAkB,GAAG,KAAK,CAAC;IACpC,CAAC;IAED,+CAAiB,GAAjB;QACI,OAAO,mBAAO,CAAC,kEAA8B,CAAC,CAAC;IACnD,CAAC;IAED,gDAAkB,GAAlB;QACI,OAAO,mBAAO,CAAC,oEAA+B,CAAC,CAAC;IACpD,CAAC;IAGD,yCAAW,GAAX;QACI,IAAI,IAAI,CAAC,cAAc,EAAE;YACrB,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;SACrC;IACL,CAAC;IAED,4DAA8B,GAA9B,UAA+B,OAAe;QAA9C,iBA8BC;QA7BG,IAAI,CAAC,WAAW,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,mBAAS;YAE5D,IAAI,SAAS,IAAI,IAAI,IAAI,SAAS,CAAC,IAAI,IAAI,IAAI,IAAI,SAAS,CAAC,IAAI,CAAC,oBAAoB,EAAE;gBACpF,IACI,KAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,KAAK,UAAU;oBAC7D,KAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,KAAK,KAAK;oBACxD,KAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,KAAK,SAAS;oBAC5D,KAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,KAAK,QAAQ;oBAC3D,KAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,KAAK,WAAW;oBAC9D,KAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,KAAK,gBAAgB;oBACnE,KAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,KAAK,iBAAiB;oBACpE,KAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,KAAK,QAAQ;oBAC3D,KAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,KAAK,eAAe;oBAClE,KAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,KAAK,YAAY;oBAC/D,KAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,KAAK,UAAU;oBAC7D,KAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,KAAK,eAAe;oBAClE,KAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,KAAK,SAAS;oBAC5D,KAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,KAAK,mBAAmB,EACxE;oBACE,KAAI,CAAC,UAAU,GAAG,KAAK,CAAC;iBAC3B;qBACI;oBACD,KAAI,CAAC,UAAU,GAAG,IAAI,CAAC;iBAC1B;aACJ;iBACI;gBACD,KAAI,CAAC,UAAU,GAAG,KAAK,CAAC;aAC3B;QACL,CAAC,CAAC,CAAC;IACP,CAAC;IAEO,8CAAgB,GAAxB,UAAyB,OAAe,EAAE,UAAkB;QAExD,IAAI,CAAC,UAAU,GAAG,IAAI,2FAAU,EAAE,CAAC;QAEnC,IAAI,CAAC,UAAU,CAAC,YAAY,GAAG,CAAC,CAAC,CAAC,iBAAiB;QACnD,IAAI,CAAC,UAAU,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC;QAC/B,IAAI,CAAC,UAAU,CAAC,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC;QACzC,IAAI,CAAC,UAAU,CAAC,gBAAgB,GAAG,IAAI,CAAC,WAAW,CAAC;QACpD,IAAI,CAAC,UAAU,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;QAC3C,IAAI,CAAC,UAAU,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC;QACrD,IAAI,CAAC,UAAU,CAAC,OAAO,GAAG,OAAO,CAAC;QAClC,IAAI,CAAC,UAAU,CAAC,UAAU,GAAG,UAAU,CAAC;QACxC,IAAI,CAAC,UAAU,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;QAE/C,iBAAM,wBAAwB,YAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACpD,CAAC;;gBAjc+B,yDAAW;gBAAiB,8DAAc;gBAAkB,sDAAM;gBAAmB,wDAAQ;gBACxG,0DAAe;gBAA4B,gGAAiB;gBAAwB,yEAAqB;gBACjG,6FAAgB;gBAA4B,2FAAgB;;IAnEpD;QAApC,+DAAS,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;;4DAAkB;IA8D5C;QAAT,4DAAM,EAAE;;6DAA2C;IA5E3C,mBAAmB;QAL/B,+DAAS,CAAC;YACP,gKAAwC;YAExC,SAAS,EAAE,CAAC,yDAAW,EAAE,wDAAQ,EAAE,gGAAiB,EAAE,6FAAgB,EAAE,2FAAgB,CAAC;;SAC5F,CAAC;+EAgFkC,yDAAW,EAAiB,8DAAc,EAAkB,sDAAM,EAAmB,wDAAQ;YACxG,0DAAe,EAA4B,gGAAiB,EAAwB,yEAAqB;YACjG,6FAAgB,EAA4B,2FAAgB;OAjFhF,mBAAmB,CAihB/B;IAAD,0BAAC;CAAA,CAjhBwC,4FAAgB,GAihBxD;AAjhB+B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACzBhC,iBAAiB;AACjB,yDAAyD;AAChB;AACM;AACA;AACmB;AAElE,cAAc;AACgC;AACA;AACA;AACK;AAEnD,aAAa;AACoC;AAEjD,YAAY;AACZ,6EAA6E;AAChB;AACW;AAChB;AACd;AACG;AACM;AACS;AAmC5D;IAAA;IAAgC,CAAC;IAApB,gBAAgB;QAhC5B,8DAAQ,CAAC;YACN,OAAO,EAAE;gBACL,iBAAiB;gBACjB,4DAAY;gBACZ,4DAAY,CAAC,QAAQ,CAAC,qEAAgB,CAAC;gBACvC,0DAAW;gBACX,kEAAmB;gBACnB,wDAAa,CAAC,OAAO,CAAC;oBAClB,MAAM,EAAE,yCAAyC;iBAClD,CAAC;gBAEJ,cAAc;gBACd,2DAAe;gBACf,2DAAe;gBACf,2DAAe;gBACf,gEAAiB;gBAEjB,aAAa;gBACb,4DAAU;aAEb;YACD,OAAO,EAAE,CAAC,0EAAmB,CAAC;YAC9B,YAAY,EAAE;gBACV,0EAAmB;gBACnB,qFAAmB;gBACnB,gEAAY;aACf;YACD,SAAS,EAAE;gBACP,0DAAW,EAAE,0EAAqB;aACnC;SACN,CAAC;OAEW,gBAAgB,CAAI;IAAD,uBAAC;CAAA;AAAJ;;;;;;;;;;;;;AC1D7B;AAAA;AAAA;AAAA;AAAA;AAA6D;AACW;AACrB;AAE5C,IAAM,gBAAgB,GAAW;IACpC;QACI,IAAI,EAAE,KAAK;QACX,SAAS,EAAE,+DAAY;QACvB,IAAI,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE;KAC3B;IACD;QACI,IAAI,EAAE,SAAS;QACf,SAAS,EAAE,+DAAY;QACvB,IAAI,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE;KAC3B;IACD;QACI,IAAI,EAAE,YAAY;QAClB,SAAS,EAAE,yEAAmB;QAC9B,QAAQ,EAAE;YACN;gBACI,IAAI,EAAE,YAAY;gBAClB,SAAS,EAAE,oFAAmB;gBAC9B,IAAI,EAAE,EAAE,KAAK,EAAE,YAAY,EAAE;aAChC;SACJ;KACJ;CACJ,CAAC;;;;;;;;;;;;AC3BF,2BAA2B,6BAA6B,EAAE,qBAAqB,yBAAyB,kBAAkB,wBAAwB,wBAAwB,iCAAiC,KAAK,2BAA2B,eAAe,eAAe,uBAAuB,yBAAyB,sBAAsB,KAAK,+CAA+C,YAAY,mCAAmC,EAAE,qBAAqB,iBAAiB,EAAE,EAAE,WAAW,qDAAqD,4CAA4C,kBAAkB,EAAE,WAAW,8BAA8B,iCAAiC,EAAE,eAAe,qCAAqC,2BAA2B,EAAE,aAAa,uBAAuB,mBAAmB,EAAE,oBAAoB,gCAAgC,EAAE,kBAAkB,2BAA2B,EAAE,oBAAoB,wBAAwB,EAAE,iBAAiB,wBAAwB,sBAAsB,EAAE,yBAAyB,yBAAyB,iBAAiB,EAAE,OAAO,wBAAwB,qBAAqB,EAAE,YAAY,oBAAoB,mBAAmB,EAAE,aAAa,oBAAoB,kBAAkB,EAAE,WAAW,oBAAoB,gBAAgB,EAAE,gBAAgB,kBAAkB,EAAE,cAAc,uBAAuB,0BAA0B,oCAAoC,EAAE,2BAA2B,uBAAuB,iBAAiB,2BAA2B,gBAAgB,uBAAuB,uBAAuB,mBAAmB,uBAAuB,eAAe,iBAAiB,cAAc,uBAAuB,eAAe,6BAA6B,EAAE,kCAAkC,kBAAkB,uBAAuB,cAAc,cAAc,sBAAsB,sBAAsB,wBAAwB,2DAA2D,EAAE,iCAAiC,wBAAwB,eAAe,EAAE,qBAAqB,yBAAyB,kBAAkB,0BAA0B,0BAA0B,8BAA8B,EAAE,2BAA2B,8BAA8B,gBAAgB,iBAAiB,uBAAuB,sBAAsB,oBAAoB,EAAE,+BAA+B,mBAAmB,gBAAgB,wBAAwB,uBAAuB,GAAG,0BAA0B,wBAAwB,uBAAuB,wBAAwB,sBAAsB,uBAAuB,oBAAoB,gBAAgB,sBAAsB,GAAG,kDAAkD,gBAAgB,mBAAmB,uBAAuB,cAAc,cAAc,2BAA2B,gBAAgB,gBAAgB,GAAG,sCAAsC,0BAA0B,6BAA6B,gCAAgC,0BAA0B,mBAAmB,kBAAkB,yBAAyB,gBAAgB,gBAAgB,yBAAyB,GAAG,0CAA0C,8BAA8B,GAAG,2CAA2C,0BAA0B,8BAA8B,GAAG,gDAAgD,6BAA6B,wBAAwB,GAAG,6CAA6C,qBAAqB,+DAA+D,kEAAkE,8DAA8D,sHAAsH,GAAG,4CAA4C,uBAAuB,GAAG,aAAa,4BAA4B,yBAAyB,EAAE,sBAAsB,mBAAmB,gBAAgB,wBAAwB,uBAAuB,EAAE,4BAA4B,wBAAwB,uBAAuB,wBAAwB,sBAAsB,uBAAuB,oBAAoB,iBAAiB,sBAAsB,EAAE,oDAAoD,gBAAgB,mBAAmB,uBAAuB,cAAc,cAAc,8BAA8B,gBAAgB,gBAAgB,EAAE,kCAAkC,0BAA0B,8BAA8B,mCAAmC,wBAAwB,4BAA4B,oBAAoB,gBAAgB,uBAAuB,cAAc,cAAc,uBAAuB,EAAE,4CAA4C,8BAA8B,mBAAmB,EAAE,0CAA0C,0FAA0F,qFAAqF,4BAA4B,EAAE,2CAA2C,0BAA0B,8BAA8B,mBAAmB,EAAE,yCAAyC,0BAA0B,8BAA8B,mBAAmB,EAAE,+CAA+C,8BAA8B,EAAE,8CAA8C,0BAA0B,8BAA8B,EAAE,uCAAuC,0BAA0B,EAAE,sCAAsC,sBAAsB,0BAA0B,EAAE,6CAA6C,6BAA6B,wBAAwB,iCAAiC,EAAE,kDAAkD,6BAA6B,wBAAwB,kCAAkC,EAAE,gDAAgD,6BAA6B,wBAAwB,kCAAkC,EAAE,qDAAqD,6BAA6B,wBAAwB,EAAE,+CAA+C,wBAAwB,yFAAyF,mFAAmF,kHAAkH,EAAE,8CAA8C,0BAA0B,EAAE,uBAAuB,+BAA+B,gCAAgC,+BAA+B,mCAAmC,EAAE,eAAe,yCAAyC,EAAE,aAAa,iBAAiB,eAAe,EAAE,kBAAkB,iBAAiB,eAAe,EAAE,oBAAoB,8BAA8B,sBAAsB,EAAE,eAAe,oBAAoB,uBAAuB,sBAAsB,sBAAsB,mCAAmC,EAAE,oBAAoB,8BAA8B,oBAAoB,oBAAoB,uBAAuB,EAAE,oBAAoB,oBAAoB,sBAAsB,iBAAiB,oBAAoB,EAAE,iBAAiB,oBAAoB,sBAAsB,iBAAiB,oBAAoB,EAAE,gBAAgB,oBAAoB,sBAAsB,iBAAiB,oBAAoB,EAAE,iBAAiB,iBAAiB,oBAAoB,uBAAuB,oBAAoB,EAAE,cAAc,yCAAyC,EAAE,cAAc,uBAAuB,mBAAmB,oBAAoB,EAAE,eAAe,uBAAuB,qBAAqB,wBAAwB,iBAAiB,oBAAoB,oBAAoB,EAAE,cAAc,oBAAoB,uBAAuB,8BAA8B,EAAE,WAAW,qBAAqB,EAAE,sBAAsB,iCAAiC,sBAAsB,oBAAoB,EAAE,kBAAkB,8BAA8B,EAAE,eAAe,eAAe,iBAAiB,EAAE,gBAAgB,uBAAuB,qBAAqB,mBAAmB,EAAE,oBAAoB,2BAA2B,EAAE,UAAU,iBAAiB,qBAAqB,wBAAwB,oBAAoB,oBAAoB,mBAAmB,0BAA0B,EAAE,gBAAgB,iBAAiB,qBAAqB,wBAAwB,oBAAoB,oBAAoB,0BAA0B,EAAE,yBAAyB,uBAAuB,cAAc,sBAAsB,2DAA2D,8DAA8D,eAAe,kBAAkB,EAAE,WAAW,iBAAiB,iBAAiB,4BAA4B,sBAAsB,uBAAuB,oBAAoB,iBAAiB,oBAAoB,0BAA0B,uBAAuB,8BAA8B,EAAE,oBAAoB,wBAAwB,EAAE,iBAAiB,wBAAwB,sBAAsB,EAAE,iBAAiB,kBAAkB,uBAAuB,YAAY,cAAc,aAAa,cAAc,mCAAmC,wCAAwC,yCAAyC,EAAE,WAAW,gCAAgC,EAAE,YAAY,gBAAgB,qBAAqB,wBAAwB,oBAAoB,EAAE,eAAe,oBAAoB,YAAY,cAAc,gBAAgB,4BAA4B,4BAA4B,kCAAkC,EAAE,oBAAoB,uCAAuC,+BAA+B,gCAAgC,EAAE,aAAa,+BAA+B,uCAAuC,gCAAgC,EAAE,WAAW,sBAAsB,EAAE,eAAe,oBAAoB,EAAE,8BAA8B,sBAAsB,EAAE,0CAA0C,8BAA8B,yBAAyB,EAAE,EAAE,+CAA+C,2qjC;;;;;;;;;;;;;;;;;;;;;;;;;;;ACAjkU;AACJ;AACoC;AACrC;AAC2C;AACH;AACF;AACxC;AACiB;AAC+B;AAER;AAQnF;IAAkC,sEAAgB;IAmB9C,sBAAmB,WAAwB,EAAU,KAAqB,EAAU,MAAc,EAAS,QAAkB,EAClH,QAAyB,EAAS,iBAAoC,EAAS,aAAoC,EACnH,gBAAkC,EAAU,gBAAkC;QAFzF;QAII,gCAAgC;QAChC,kBAAM,QAAQ,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,aAAa,CAAC,SAkBtE;QAvBkB,iBAAW,GAAX,WAAW,CAAa;QAAU,WAAK,GAAL,KAAK,CAAgB;QAAU,YAAM,GAAN,MAAM,CAAQ;QAAS,cAAQ,GAAR,QAAQ,CAAU;QAClH,cAAQ,GAAR,QAAQ,CAAiB;QAAS,uBAAiB,GAAjB,iBAAiB,CAAmB;QAAS,mBAAa,GAAb,aAAa,CAAuB;QACnH,sBAAgB,GAAhB,gBAAgB,CAAkB;QAAU,sBAAgB,GAAhB,gBAAgB,CAAkB;QApBpF,WAAK,GAAQ,EAAE,CAAC;QAIhB,cAAQ,GAAe,EAAE,CAAC;QAC1B,cAAQ,GAAe,EAAE,CAAC;QAC1B,cAAQ,GAAe,EAAE,CAAC;QAC1B,cAAQ,GAAe,EAAE,CAAC;QAC1B,SAAG,GAAW,EAAE,CAAC;QAEf,eAAS,GAAW,EAAE,CAAC;QACvB,iBAAW,GAAW,EAAE,CAAC;QACzB,gBAAU,GAAG,IAAI,CAAC;QAElB,oBAAc,GAAW,EAAE,CAAC;QAC5B,8BAAwB,GAAgC,EAAE,CAAC;QAU9D,KAAI,CAAC,KAAK,GAAG,KAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAE7C,KAAI,CAAC,cAAc,GAAG,KAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,EAAE,EAAE,gBAAgB,CAAC,CAAC;QAC5E,KAAI,CAAC,gBAAgB,CAAC,wFAAO,CAAC,IAAI,EAAE,sCAAsC,CAAC,CAAC;;QAE5E,+DAA+D;QAC/D,8CAA8C;QAC9C,gCAAgC;QAChC,6BAA6B;QAC7B,sCAAsC;QACtC,wCAAwC;QACxC,wBAAwB;QACxB,sBAAsB;QACtB,OAAO;QACP,KAAK;IAET,CAAC;IAAA,CAAC;IAEF,+BAAQ,GAAR;QACI,IACA;YACI,IAAI,CAAC,wBAAwB,EAAE,CAAC;SACnC;QACD,OAAO,CAAC,EAAE;YACN,IAAI,CAAC,gBAAgB,CAAC,wFAAO,CAAC,KAAK,EAAE,mDAAmD,GAAG,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;SAC3H;IACL,CAAC;IAGD,+CAAwB,GAAxB;QAAA,iBAmCC;QAlCG,IAAI;YAEA,IAAI,CAAC,gBAAgB,CAAC,qBAAqB,EAAE,CAAC,SAAS,CAAC,mBAAS;gBAE7D,IAAI,SAAS,CAAC,IAAI,IAAI,IAAI,EAAE;oBAExB,KAAI,CAAC,gBAAgB,CAAC,wFAAO,CAAC,IAAI,EAAE,0CAA0C,CAAC,CAAC;oBAEhF,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,oBAAU;wBAC7B,KAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;oBACnD,CAAC,CAAC,CAAC;oBAEH,KAAI,CAAC,WAAW,GAAG,KAAI,CAAC,wBAAwB,CAAC,MAAM,CAAC,cAAI,IAAI,QAAC,IAAI,CAAC,gBAAgB,IAAI,SAAS,CAAC,EAApC,CAAoC,CAAC;yBAChG,GAAG,CAAC,YAAE,IAAI,SAAE,CAAC,kBAAkB,EAArB,CAAqB,CAAC,CAAC,CAAC,CAAC,CAAC;oBAEzC,gBAAgB;oBAChB,KAAI,CAAC,UAAU,EAAE,CAAC;iBAErB;qBACI;oBACD,KAAI,CAAC,gBAAgB,CAAC,wFAAO,CAAC,KAAK,EAAE,sEAAsE,CAAC,CAAC;iBAChH;YAEL,CAAC,EAAE,mBAAS;gBACR,eAAe;gBACf,IAAI,KAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,SAAS,CAAC,IAAI,KAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,SAAS,CAAC,IAAI,KAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,SAAS,CAAC,EAAE;oBAChI,KAAI,CAAC,gBAAgB,CAAC,wFAAO,CAAC,KAAK,EAAE,kDAAkD,CAAC,CAAC;iBAC5F;YACL,CAAC,CAAC,CAAC;SAEN;QACD,OAAO,CAAC,EAAE;YACN,IAAI,CAAC,gBAAgB,CAAC,wFAAO,CAAC,KAAK,EAAE,+DAA+D,GAAG,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;SACvI;IACL,CAAC;IAED,iCAAU,GAAV;QAAA,iBA8BC;QA7BG,IAAI;YAEA,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC,mBAAS;gBAEpD,KAAI,CAAC,QAAQ,GAAG,SAAS,CAAC;gBAE1B,IAAI,SAAS,IAAI,IAAI,IAAI,SAAS,CAAC,UAAU,IAAI,GAAG,EAAE;oBAClD,IAAI,KAAI,CAAC,QAAQ,CAAC,IAAI,EAAE;wBACpB,IAAI,CAAC,GAAG,KAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC;wBAChC,KAAI,CAAC,GAAG,GAAG,KAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC;wBAClC,KAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;wBAClB,KAAI,CAAC,GAAG,GAAG,IAAI,CAAC;wBAEhB,KAAI,CAAC,gBAAgB,CAAC,wFAAO,CAAC,IAAI,EAAE,8BAA8B,CAAC,CAAC;qBACvE;iBACJ;qBACI;oBACD,KAAI,CAAC,gBAAgB,CAAC,wFAAO,CAAC,KAAK,EAAE,iFAAiF,CAAC,CAAC;iBAC3H;YACL,CAAC,EAAE,mBAAS;gBACR,IAAI,KAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,SAAS,CAAC,IAAI,KAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,SAAS,CAAC,IAAI,KAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,SAAS,CAAC,EAAE;oBAChI,KAAI,CAAC,gBAAgB,CAAC,wFAAO,CAAC,KAAK,EAAE,4DAA4D,CAAC,CAAC;iBACtG;YACL,CAAC,CAAC,CAAC;SAEN;QACD,OAAO,CAAC,EAAE;YACN,IAAI,CAAC,gBAAgB,CAAC,wFAAO,CAAC,KAAK,EAAE,mDAAmD,GAAG,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;SAC3H;IACL,CAAC;IAIH,gCAAS,GAAT,UAAU,CAAC;QACT,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YAC/B,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE;gBACnC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;aAC5B;iBAAK,IAAG,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAC;gBACvC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;aAC5B;iBAAK,IAAG,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAC;gBACvC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;aAC5B;iBAAK;gBACF,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;aAC5B;SACJ;QACD,6CAA6C;QAC7C,6CAA6C;QAC7C,6CAA6C;QAC7C,6CAA6C;IAC7C,CAAC;IAGO,uCAAgB,GAAxB,UAAyB,OAAe,EAAE,UAAkB;QAExD,IAAI,CAAC,UAAU,GAAG,IAAI,2FAAU,EAAE,CAAC;QAEnC,IAAI,CAAC,UAAU,CAAC,YAAY,GAAG,CAAC,CAAC,CAAC,iBAAiB;QACnD,IAAI,CAAC,UAAU,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC;QAC/B,IAAI,CAAC,UAAU,CAAC,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC;QACxC,IAAI,CAAC,UAAU,CAAC,gBAAgB,GAAG,IAAI,CAAC,WAAW,CAAC;QACpD,IAAI,CAAC,UAAU,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;QAC3C,IAAI,CAAC,UAAU,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC;QACrD,IAAI,CAAC,UAAU,CAAC,OAAO,GAAG,OAAO,CAAC;QAClC,IAAI,CAAC,UAAU,CAAC,UAAU,GAAG,UAAU,CAAC;QACxC,IAAI,CAAC,UAAU,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;QAE/C,iBAAM,wBAAwB,YAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACpD,CAAC;;gBA7I+B,yDAAW;gBAAiB,8DAAc;gBAAkB,sDAAM;gBAAmB,wDAAQ;gBACxG,0DAAe;gBAA4B,gGAAiB;gBAAwB,yEAAqB;gBACjG,6FAAgB;gBAA4B,2FAAgB;;IArBhF,YAAY;QANxB,+DAAS,CAAC;YACT,QAAQ,EAAE,SAAS;YACnB,sJAAmC;YAEjC,SAAS,EAAE,CAAC,yDAAW,EAAE,wDAAQ,EAAE,gGAAiB,EAAE,6FAAgB,EAAE,2FAAgB,CAAC;;SAC5F,CAAC;+EAoBkC,yDAAW,EAAiB,8DAAc,EAAkB,sDAAM,EAAmB,wDAAQ;YACxG,0DAAe,EAA4B,gGAAiB,EAAwB,yEAAqB;YACjG,6FAAgB,EAA4B,2FAAgB;OArBhF,YAAY,CAiKxB;IAAD,mBAAC;CAAA,CAjKiC,4FAAgB,GAiKjD;AAjKwB;;;;;;;;;;;;;;;;;;;;;ACnBkB;AAEO;AAIL;AACkB;AAO/D;IAME,wFAAwF;IAExF,qBAAoB,IAAqB,EAAU,MAAkB,EAAU,MAAgC;QAA3F,SAAI,GAAJ,IAAI,CAAiB;QAAU,WAAM,GAAN,MAAM,CAAY;QAAU,WAAM,GAAN,MAAM,CAA0B;QANtG,YAAO,GAAG,gBAAgB,CAAC;QAC3B,sBAAiB,GAAG,cAAc,CAAC;QACnC,YAAO,GAAQ,EAAE,CAAC;IAIwF,CAAC;IAGpH,sFAAsF;IACtF,gIAAgI;IAChI,iCAAiC;IACjC,wBAAwB;IACxB,gDAAgD;IAChD,mFAAmF;IACnF,4DAA4D;IAC5D,wBAAwB;IACxB,YAAY;IACZ,SAAS;IACT,IAAI;IAEJ,EAAE;IACF,6BAAO,GAAP,UAAQ,EAAU,EAAE,OAAgB;QAClC,sFAAsF;QACtF,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAM;YACxB,GAAG,EAAE,IAAI,CAAC,OAAO,GAAG,EAAE;SACvB,CAAC,CAAC;IACH,CAAC;IAED,wCAAkB,GAAlB,UAAmB,OAAe;QAC9B,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAM;YACtB,GAAG,EAAE,IAAI,CAAC,iBAAiB,GAAG,qBAAqB,GAAG,OAAO;SAChE,CAAC,CAAC;IACP,CAAC;IAEH,wEAAwE;IACxE,gFAAgF;IAChF,qFAAqF;IACrF,kCAAkC;IAClC,+DAA+D;IAC/D,8BAA8B;IAC9B,2BAA2B;IAC3B,UAAU;IACV,IAAI;IAEI,gCAAU,GAAlB,UAAmB,IAAS;QAC1B,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;QACjC,IAAI,CAAC,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;QAC5B,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE;YAC7F,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,aAAa,IAAI,GAAG,CAAC;SAC3C;QACD,IAAI,CAAC,MAAM,CAAC,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC;QAC3D,IAAI,CAAC,MAAM,CAAC,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC;QAC/D,IAAI,CAAC,MAAM,CAAC,iBAAiB,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,iBAAiB,CAAC;IACzE,CAAC;IAED,2BAA2B;IAC3B,+BAA+B;IAC/B,iCAAiC;IACjC,uCAAuC;IACvC,MAAM;IAEN,2BAA2B;IAC3B,kCAAkC;IAClC,MAAM;IAEN,wCAAwC;IACxC,iDAAiD;IACjD,iCAAiC;IACjC,oCAAoC;IACpC,gCAAgC;IAChC,4EAA4E;IAC5E,4BAA4B;IAC5B,oCAAoC;IACpC,MAAM;IAEN,2BAA2B;IAC3B,wDAAwD;IACxD,iHAAiH;IACjH,kGAAkG;IAElG,4CAA4C;IAC5C,2BAA2B;IAC3B,kCAAkC;IAClC,MAAM;IAEN,qCAAqC;IAC7B,iCAAW,GAAnB,UAAoB,KAAU;QAE5B,mDAAmD;QACnD,6EAA6E;QAC7E,mCAAmC;IACrC,CAAC;;gBAtFyB,0DAAe;gBAAkB,+DAAU;gBAAkB,4EAAwB;;IARpG,WAAW;QADvB,gEAAU,EAAE;+EASe,0DAAe,EAAkB,+DAAU,EAAkB,4EAAwB;OARpG,WAAW,CAgGvB;IAAD,kBAAC;CAAA;AAhGuB;;;;;;;;;;;;;;;;;;ACdkB;AAO1C;IAAA;IAAkC,CAAC;IAAtB,mBAAmB;QAL/B,+DAAS,CAAC;YACP,QAAQ,EAAE,oBAAoB;YAC9B,2KAAwC;SAC3C,CAAC;OAEW,mBAAmB,CAAG;IAAD,0BAAC;CAAA;AAAH;;;;;;;;;;;;;;;;;;ACPhC,0DAA0D;AAC1D,8EAA8E;AACpC;AAM1C;IAAA;IAAqC,CAAC;IAAzB,qBAAqB;QAJjC,+DAAS,CAAC;YACP,QAAQ,EAAE,eAAe;YACzB,8KAA2C;SAC9C,CAAC;OACW,qBAAqB,CAAI;IAAD,4BAAC;CAAA;AAAJ;;;;;;;;;;;;;;;;;;;;;ACRS;AACM;AACZ;AAErC,2FAA2F;AAC5B;AAM/D;IAKI,8BACY,MAAgC;QAAhC,WAAM,GAAN,MAAM,CAA0B;QAL5C,UAAK,GAAQ,IAAI,CAAC;QACV,uBAAkB,GAAG,IAAI,kDAAa,EAAY,CAAC;QAC3D,iBAAY,GAAG,IAAI,CAAC,kBAAkB,CAAC,YAAY,EAAE,CAAC;IAIlD,CAAC;IAEL,4CAAa,GAAb;QACI,OAAO,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;IACxC,CAAC;IAED,4CAAa,GAAb;QACI,OAAO,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;IACxC,CAAC;IAED,6CAAc,GAAd;QACI,OAAO,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC;IACzC,CAAC;IAED,uCAAQ,GAAR,UAAS,QAAgB;QACrB,OAAO,IAAI,CAAC,oBAAoB,EAAE,CAAC,IAAI,CAAC,0DAAG,CAAC,eAAK;YAC7C,OAAO,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;QACxC,CAAC,CAAC,CAAC,CAAC;IACR,CAAC;IAED,mDAAoB,GAApB;QAAA,iBAiBC;QAhBG,+EAA+E;QAC/E,IAAI,IAAI,CAAC,KAAK,EAAE;YACZ,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACzC,OAAO,IAAI,CAAC,YAAY,CAAC;SAC5B;QAED,wCAAwC;QACxC,IAAI,gBAAgB,GAAG,OAAO,CAAC;QAC/B,IAAI,CAAC,MAAM,CAAC,UAAU,CAAW,gBAAgB,CAAC,CAAC,SAAS,CAAC,eAAK;YAC9D,KAAI,CAAC,KAAK,GAAG,KAAK,CAAC;YACnB,KAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,KAAI,CAAC,KAAK,CAAC,CAAC;QAC7C,CAAC,CAAC,CAAC;QAEH,mGAAmG;QACnG,0CAA0C;QAC1C,OAAO,IAAI,CAAC,YAAY,CAAC;IAC7B,CAAC;;gBAtCmB,4EAAwB;;IANnC,oBAAoB;QAHhC,gEAAU,CAAC;YACR,UAAU,EAAE,MAAM;SACrB,CAAC;+EAOsB,4EAAwB;OANnC,oBAAoB,CA6ChC;IAAD,2BAAC;CAAA;AA7CgC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACXjC,kBAAkB;AAClB,0DAA0D;AACjB;AACM;AACA;AAE/C,eAAe;AACiC;AACc;AAChB;AAE9C,aAAa;AACb,8EAA8E;AAClB;AACG;AACiB;AACE;AACA;AAC9B;AAEpD,IAAM,iBAAiB,GAAG;IACtB,wEAAe;IACf,2EAAgB;IAChB,4FAAqB;IACrB,+FAAqB;IACrB,+FAAqB;CACxB,CAAC;AAiBF;IAAA;IAA0B,CAAC;IAAd,UAAU;QAftB,8DAAQ,CAAC;YACN,OAAO,EAAE;gBACL,kBAAkB;gBAClB,4DAAY;gBACZ,4DAAY;gBAEZ,eAAe;gBACf,6DAAgB;gBAChB,2EAAuB;gBACvB,2DAAe;aAClB;YACD,SAAS,EAAE,CAAC,iEAAW,CAAC;YACxB,OAAO,EAAE,iBAAiB;YAC1B,YAAY,EAAE,iBAAiB;SAClC,CAAC;OACW,UAAU,CAAI;IAAD,iBAAC;CAAA;AAAJ;;;;;;;;;;;;;;;;;;;;;;AC3CoB;AAEO;AAIL;AACkB;AAIN;AAGzD;IAME,wFAAwF;IAExF,qBAAoB,IAAqB,EAAS,MAAa,EAAU,MAAkB,EAAU,MAAgC,EAAU,KAAqB;QAApK,iBAMC;QANmB,SAAI,GAAJ,IAAI,CAAiB;QAAS,WAAM,GAAN,MAAM,CAAO;QAAU,WAAM,GAAN,MAAM,CAAY;QAAU,WAAM,GAAN,MAAM,CAA0B;QAAU,UAAK,GAAL,KAAK,CAAgB;QAN7J,YAAO,GAAG,eAAe,CAAC;QAC1B,YAAO,GAAQ,EAAE,CAAC;QAMvB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC,MAAM,CAAC;QACxD,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,WAAW;aACnC,SAAS,CAAC,cAAI;YACX,KAAI,CAAC,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC;QACvC,CAAC,CAAC,CAAC;IACL,CAAC;IAGD,sFAAsF;IACtF,gIAAgI;IAChI,iCAAiC;IACjC,wBAAwB;IACxB,gDAAgD;IAChD,mFAAmF;IACnF,4DAA4D;IAC5D,wBAAwB;IACxB,YAAY;IACZ,SAAS;IACT,IAAI;IAEJ,EAAE;IACF,6BAAO,GAAP,UAAQ,EAAU,EAAE,OAAgB;QAClC,sFAAsF;QACtF,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAM;YACxB,GAAG,EAAE,IAAI,CAAC,OAAO,GAAG,EAAE;SACvB,CAAC,CAAC;IACL,CAAC;IAED,wEAAwE;IACxE,gFAAgF;IAChF,qFAAqF;IACrF,kCAAkC;IAClC,+DAA+D;IAC/D,8BAA8B;IAC9B,2BAA2B;IAC3B,UAAU;IACV,IAAI;IAEI,gCAAU,GAAlB,UAAmB,IAAS;QAC1B,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;QACjC,IAAI,CAAC,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;QAC5B,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE;YAC7F,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,aAAa,IAAI,GAAG,CAAC;SAC3C;QACD,IAAI,CAAC,MAAM,CAAC,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC;QAC3D,IAAI,CAAC,MAAM,CAAC,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC;QAC/D,IAAI,CAAC,MAAM,CAAC,iBAAiB,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,iBAAiB,CAAC;IACzE,CAAC;IAED,2BAA2B;IAC3B,+BAA+B;IAC/B,iCAAiC;IACjC,uCAAuC;IACvC,MAAM;IAEN,2BAA2B;IAC3B,kCAAkC;IAClC,MAAM;IAEN,wCAAwC;IACxC,iDAAiD;IACjD,iCAAiC;IACjC,oCAAoC;IACpC,gCAAgC;IAChC,4EAA4E;IAC5E,4BAA4B;IAC5B,oCAAoC;IACpC,MAAM;IAEN,2BAA2B;IAC3B,wDAAwD;IACxD,iHAAiH;IACjH,kGAAkG;IAElG,4CAA4C;IAC5C,2BAA2B;IAC3B,kCAAkC;IAClC,MAAM;IAEN,qCAAqC;IAC7B,iCAAW,GAAnB,UAAoB,KAAU;QAE5B,mDAAmD;QACnD,6EAA6E;QAC7E,mCAAmC;IACrC,CAAC;;gBAtFyB,0DAAe;gBAAgB,sDAAM;gBAAkB,+DAAU;gBAAkB,4EAAwB;gBAAiB,8DAAc;;IARzJ,WAAW;QADvB,gEAAU,EAAE;+EASe,0DAAe,EAAgB,sDAAM,EAAkB,+DAAU,EAAkB,4EAAwB,EAAiB,8DAAc;OARzJ,WAAW,CAgGvB;IAAD,kBAAC;CAAA;AAhGuB;;;;;;;;;;;;;;;;;;;;;;;;;;ACdiD;AACD;AAC7B;AACQ;AAEnD,oEAAoE;AACpE,2FAA2F;AAC5B;AAEC;AACJ;AACzB;AACU;AAM7C;IASI,yBACY,OAAmB,EACnB,MAAc,EACd,MAAgC,EAChC,oBAA0C,EAC1C,cAA8B,EAC/B,WAAwB,EAAU,KAAqB;QALtD,YAAO,GAAP,OAAO,CAAY;QACnB,WAAM,GAAN,MAAM,CAAQ;QACd,WAAM,GAAN,MAAM,CAA0B;QAChC,yBAAoB,GAApB,oBAAoB,CAAsB;QAC1C,mBAAc,GAAd,cAAc,CAAgB;QAC/B,gBAAW,GAAX,WAAW,CAAa;QAAU,UAAK,GAAL,KAAK,CAAgB;QAV1D,iBAAY,GAAG,IAAI,4CAAO,EAAQ,CAAC;QAavC,qCAAqC;QACrC,wDAAwD;QACxD,2CAA2C;QAC3C,iEAAiE;QACjE,+BAA+B;QAC/B,MAAM;IACV,CAAC;IAED,kCAAQ,GAAR;QAAA,iBA2BC;QAzBG,IAAM,MAAM,GAAgB,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC;QACvD,IAAI,CAAC,YAAY,GAAG,MAAM,CAAC,sBAAsB,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC;QAEvE,4EAA4E;QAC5E,wFAAwF;QAExF,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,6DAAM,CAAC,eAAK,IAAI,YAAK,YAAY,6DAAa,EAA9B,CAA8B,CAAC,CAAC;aACnE,IAAI,CAAC,gEAAS,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;aAClC,SAAS,CAAC,UAAC,KAAoB;YAC5B,uDAAuD;YACvD,8BAA8B;YAC/B,6BAA6B;QAChC,CAAC,CAAC,CAAC;QAEP,2FAA2F;QAC3F,IAAI,mBAAmB,GAAG,UAAU,CAAC;QACrC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,UAAU,CAAS,mBAAmB,CAAC,CAAC;QAErE,kCAAkC;QAClC,IAAI,CAAC,oBAAoB,CAAC,oBAAoB,EAAE;aAC3C,IAAI,CAAC,gEAAS,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;aAClC,SAAS,CAAC,eAAK;YAChB,0FAA0F;YAC1F,KAAI,CAAC,SAAS,GAAG,8CAAM,CAAC,MAAM,CAAC,kBAAQ,IAAI,YAAK,CAAC,IAAI,CAAC,cAAI,IAAI,QAAC,QAAQ,CAAC,KAAK,IAAI,QAAQ,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,EAA7E,CAA6E,CAAC,EAAjG,CAAiG,CAAC,CAAC;QAClJ,CAAC,CAAC,CAAC;IACP,CAAC;IAED,qCAAW,GAAX;QACI,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;QACzB,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC;IACjC,CAAC;IAED,+GAA+G;IAC/G,gBAAgB;IAChB,+GAA+G;IAC/G,uCAAa,GAAb;QACI,wDAAwD;IAC5D,CAAC;;gBAvDoB,wDAAU;gBACX,sDAAM;gBACN,4EAAwB;gBACV,2EAAoB;gBAC1B,uEAAc;gBAClB,yDAAW;gBAAiB,8DAAc;;IAfzD,eAAe;QAJ3B,+DAAS,CAAC;YACP,QAAQ,EAAE,QAAQ;YAClB,yJAAoC;SACvC,CAAC;+EAWuB,wDAAU;YACX,sDAAM;YACN,4EAAwB;YACV,2EAAoB;YAC1B,uEAAc;YAClB,yDAAW,EAAiB,8DAAc;OAfzD,eAAe,CAkE3B;IAAD,sBAAC;CAAA;AAlE2B;;;;;;;;;;;;;;;;;;AClB5B,0DAA0D;AAC1D,8EAA8E;AACpC;AAK1C;IAAA;IAAqC,CAAC;IAAzB,qBAAqB;QAHjC,+DAAS,CAAC;YACP,iLAA4C;SAC/C,CAAC;OACW,qBAAqB,CAAI;IAAD,4BAAC;CAAA;AAAJ;;;;;;;;;;;;;ACUlC;AAAA;AAAA,YAAY;AACL,IAAM,MAAM,GAAgB,CAAC;QAChC,IAAI,EAAE,OAAO;QACb,KAAK,EAAE,MAAM;QACb,IAAI,EAAE,MAAM;QACZ,IAAI,EAAE,aAAa;KACtB,EAAE;QACC,IAAI,EAAE,aAAa;QACnB,KAAK,EAAE,eAAe;QACtB,IAAI,EAAE,KAAK;QACX,IAAI,EAAE,gBAAgB;QACtB,QAAQ,EAAE,YAAY;QACtB,QAAQ,EAAE;YACN,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE,EAAE,GAAG,EAAE;YAC9C,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,EAAE,EAAE,GAAG,EAAE;YAChD,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,EAAE,GAAG,EAAE;YAC1C,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,EAAE,GAAG,EAAE;YAC1C,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,EAAE,GAAG,EAAE;YAC5C,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,EAAE,GAAG,EAAE;YAC5C,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE,EAAE,EAAE,GAAG,EAAE;YAChD,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE,EAAE,EAAE,IAAI,EAAE;YAChD,EAAE,IAAI,EAAE,YAAY,EAAE,KAAK,EAAE,YAAY,EAAE,EAAE,EAAE,GAAG,EAAE;SACvD;KACA,EAAE;QACC,IAAI,EAAE,QAAQ;QACd,KAAK,EAAE,OAAO;QACd,IAAI,EAAE,KAAK;QACX,IAAI,EAAE,aAAa;QACnB,QAAQ,EAAE,OAAO;QACjB,QAAQ,EAAE;YACN,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,EAAE,GAAG,EAAE;YAC5C,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,EAAE,GAAG,EAAE;YAC1C,EAAE,IAAI,EAAE,YAAY,EAAE,KAAK,EAAE,YAAY,EAAE,EAAE,EAAE,GAAG,EAAE;YACpD,EAAE,IAAI,EAAE,YAAY,EAAE,KAAK,EAAE,YAAY,EAAE,EAAE,EAAE,GAAG,EAAE;YACpD,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,YAAY,EAAE,EAAE,EAAE,IAAI,EAAE;SACvD;KACJ,EAAE;QACC,IAAI,EAAE,SAAS;QACf,KAAK,EAAE,aAAa;QACpB,IAAI,EAAE,MAAM;QACZ,IAAI,EAAE,cAAc;QACpB,KAAK,EAAE,CAAC,cAAc,EAAE,aAAa,EAAE,aAAa,CAAC;KACxD,EAAE;QACC,IAAI,EAAE,OAAO;QACb,KAAK,EAAE,WAAW;QAClB,IAAI,EAAE,MAAM;QACZ,IAAI,EAAE,cAAc;QACpB,KAAK,EAAE,CAAC,aAAa,CAAC;KACzB;CACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;AClEgD;AACP;AACA;AAEM;AAEjD,oEAAoE;AACpE,2FAA2F;AAC5B;AAEC;AAC7B;AAOnC;IAMI,0BACY,oBAA0C,EAC1C,MAAgC;QADhC,yBAAoB,GAApB,oBAAoB,CAAsB;QAC1C,WAAM,GAAN,MAAM,CAA0B;QAJpC,iBAAY,GAAG,IAAI,4CAAO,EAAQ,CAAC;IAKvC,CAAC;IAEL,mCAAQ,GAAR;QAAA,iBAYC;QAXG,2FAA2F;QAC3F,IAAI,mBAAmB,GAAG,UAAU,CAAC;QACrC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,UAAU,CAAS,mBAAmB,CAAC,CAAC;QAErE,kCAAkC;QAClC,IAAI,CAAC,oBAAoB,CAAC,oBAAoB,EAAE;aAC3C,IAAI,CAAC,gEAAS,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;aAClC,SAAS,CAAC,eAAK;YACZ,0FAA0F;YAC1F,KAAI,CAAC,SAAS,GAAG,8CAAM,CAAC,MAAM,CAAC,kBAAQ,IAAI,YAAK,CAAC,IAAI,CAAC,cAAI,IAAI,QAAC,QAAQ,CAAC,KAAK,IAAI,QAAQ,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,EAA7E,CAA6E,CAAC,EAAjG,CAAiG,CAAC,CAAC;QAClJ,CAAC,CAAC,CAAC;IACX,CAAC;IAED,sCAAW,GAAX;QACI,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;QACzB,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC;IACjC,CAAC;IAED,+GAA+G;IAC/G,gBAAgB;IAChB,+GAA+G;IAC/G,mCAAQ,GAAR;QACI,IAAI,MAAM,CAAC,UAAU,CAAC,oBAAoB,CAAC,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,EAAE;YAClE,IAAM,WAAW,GAAgB,QAAQ,CAAC,aAAa,CAAC,2BAA2B,CAAC,CAAC;YACrF,IAAI,EAAE,GAAG,IAAI,yDAAgB,CAAC,WAAW,EAAE,EAAE,UAAU,EAAE,CAAC,EAAE,eAAe,EAAE,IAAI,EAAE,CAAC,CAAC;SACxF;IACL,CAAC;IAED,+GAA+G;IAC/G,kBAAkB;IAClB,+GAA+G;IAC/G,gCAAK,GAAL;QACI,IAAI,IAAI,GAAG,KAAK,CAAC;QACjB,IAAI,SAAS,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,SAAS,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE;YAC/G,IAAI,GAAG,IAAI,CAAC;SACf;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;;gBA1CiC,2EAAoB;gBAClC,4EAAwB;;IARnC,gBAAgB;QAL5B,+DAAS,CAAC;YACP,QAAQ,EAAE,SAAS;YACnB,4JAAqC;SACxC,CAAC;+EASoC,2EAAoB;YAClC,4EAAwB;OARnC,gBAAgB,CAkD5B;IAAD,uBAAC;CAAA;AAlD4B;;;;;;;;;;;;;;;;;;AClBc;AAK3C;IAHA;QAIY,mBAAc,GAAY,KAAK,CAAC;QAExC,+CAA+C;QAC/C,2CAA2C;QAC3C,0CAA0C;QAC1C,eAAe;QACf,2CAA2C;QAC3C,QAAQ;QACR,IAAI;QAEJ,6CAA6C;QAC7C,6DAA6D;QAC7D,+BAA+B;QAC/B,iDAAiD;QACjD,eAAe;QACf,sCAAsC;QACtC,kCAAkC;QAClC,IAAI;QAEJ,8CAA8C;QAC9C,6DAA6D;QAC7D,gDAAgD;QAChD,mCAAmC;QACnC,yCAAyC;QACzC,IAAI;IACR,CAAC;IA1BY,cAAc;QAH1B,gEAAU,CAAC;YACR,UAAU,EAAE,MAAM;SACrB,CAAC;OACW,cAAc,CA0B1B;IAAD,qBAAC;CAAA;AA1B0B;;;;;;;;;;;;;;;;;;;;;;;ACL3B,0DAA0D;AAC1D,8EAA8E;AACjB;AACL;AACzB;AACY;AAE3C,4EAA4E;AAC7B;AAEgB;AAM/D;IAOI,+BACY,mBAAwC,EACxC,gBAAkC,EAClC,WAAwB;QAFxB,wBAAmB,GAAnB,mBAAmB,CAAqB;QACxC,qBAAgB,GAAhB,gBAAgB,CAAkB;QAClC,gBAAW,GAAX,WAAW,CAAa;QATpC,YAAO,GAAG,sBAAsB,CAAC;QACjC,YAAO,GAAG,sBAAsB,CAAC;QAGzB,iBAAY,GAAG,IAAI,4CAAO,EAAQ,CAAC;IAMvC,CAAC;IAEL,wCAAQ,GAAR;QAAA,iBAQC;QAPG,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,YAAY,EAAE,CAAC,CAAC;QAEvD,IAAI,CAAC,mBAAmB,CAAC,UAAU;aAC9B,IAAI,CAAC,gEAAS,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;aAClC,SAAS,CAAC;YACP,KAAI,CAAC,SAAS,EAAE,CAAC;QACrB,CAAC,CAAC,CAAC;IACX,CAAC;IAED,2CAAW,GAAX;QACI,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;QACzB,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC;IACjC,CAAC;IAED,yCAAS,GAAT;QACI,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,QAAQ,CAAC,cAAc,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC;QAEjF,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC;YACvB,EAAE,EAAE,IAAI,CAAC,OAAO;SACnB,CAAC,CAAC;IACP,CAAC;IAED,6CAAa,GAAb,UAAc,YAA0B;QACpC,YAAY,CAAC,aAAa,IAAI,YAAY,CAAC,aAAa,CAAC,YAAY,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;QACnH,cAAc,CAAC,OAAO,CAAC,eAAe,EAAE,YAAY,CAAC,aAAa,CAAC,CAAC;QACpE,cAAc,CAAC,OAAO,CAAC,aAAa,EAAE,YAAY,CAAC,WAAW,CAAC,CAAC;QAChE,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;IAC7B,CAAC;;gBAjCgC,2EAAmB;gBACtB,4DAAgB;gBACrB,0DAAW;;IAV3B,qBAAqB;QAJjC,+DAAS,CAAC;YACP,QAAQ,EAAE,gBAAgB;YAC1B,iLAA4C;SAC/C,CAAC;+EASmC,2EAAmB;YACtB,4DAAgB;YACrB,0DAAW;OAV3B,qBAAqB,CA0CjC;IAAD,4BAAC;CAAA;AA1CiC;AA4ClC;IAAA;QACI,kBAAa,GAAG,EAAE,CAAC;QACnB,gBAAW,GAAG,EAAE,CAAC;IACrB,CAAC;IAAD,mBAAC;AAAD,CAAC;;;;;;;;;;;;;;;;;;;;AC/D0C;AACZ;AAE/B,4FAA4F;AAC7B;AAO/D;IASI,6BACY,MAAgC;QAAhC,WAAM,GAAN,MAAM,CAA0B;QATpC,oBAAe,GAAG,IAAI,4CAAO,EAAE,CAAC;QAChC,qBAAgB,GAAG,IAAI,4CAAO,EAAE,CAAC;QAEzC,eAAU,GAAG,IAAI,CAAC,eAAe,CAAC,YAAY,EAAE,CAAC;QACjD,gBAAW,GAAG,IAAI,CAAC,gBAAgB,CAAC,YAAY,EAAE,CAAC;IAM/C,CAAC;IAEL,iDAAmB,GAAnB;QACI,IAAI,MAAM,CAAC,QAAQ,CAAC,QAAQ,KAAK,uBAAuB,EAAE;YACrD,IAAI,CAAC,aAAa,GAAG,+CAA+C,CAAC;YACrE,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;YAC/B,IAAI,CAAC,MAAM,CAAC,iBAAiB,GAAG,WAAW,CAAC;SAEhD;aAAM,IAAI,MAAM,CAAC,QAAQ,CAAC,QAAQ,KAAK,uBAAuB,EAAE;YAC7D,IAAI,CAAC,aAAa,GAAG,+CAA+C,CAAC;YACrE,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;YAC/B,IAAI,CAAC,MAAM,CAAC,iBAAiB,GAAG,WAAW,CAAC;SAE/C;aAAM,IAAI,MAAM,CAAC,QAAQ,CAAC,QAAQ,KAAK,oBAAoB,EAAE;YAC1D,IAAI,CAAC,aAAa,GAAG,4CAA4C,CAAC;YAClE,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;YAC/B,IAAI,CAAC,MAAM,CAAC,iBAAiB,GAAG,WAAW,CAAC;SAE/C;aAAM,IAAI,MAAM,CAAC,QAAQ,CAAC,QAAQ,KAAK,uBAAuB,EAAE;YAC7D,IAAI,CAAC,aAAa,GAAG,+CAA+C,CAAC;YACrE,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;YAC/B,IAAI,CAAC,MAAM,CAAC,iBAAiB,GAAG,WAAW,CAAC;SAE/C;aAAM;YACF,uEAAuE;YACxE,IAAI,CAAC,aAAa,GAAG,6BAA6B,CAAC;YAClD,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;YAC/B,IAAI,CAAC,MAAM,CAAC,iBAAiB,GAAG,WAAW,CAAC;SAChD;QAED,IAAI,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,WAAW,EAAE;YACxC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,eAAe,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;YAC5D,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,aAAa,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;SAC3D;IAEL,CAAC;IAED,uCAAS,GAAT,UAAU,MAAsB;QAC5B,6DAA6D;QAC7D,IAAI,MAAM,CAAC,UAAU,KAAK,GAAG,EAAE;YAC3B,cAAc,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;SAC5C;QAED,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE,CAAC;IAChC,CAAC;;gBA7CmB,4EAAwB;;IAVnC,mBAAmB;QAH/B,gEAAU,CAAC;YACR,UAAU,EAAE,MAAM;SACrB,CAAC;+EAWsB,4EAAwB;OAVnC,mBAAmB,CAwD/B;IAAD,0BAAC;CAAA;AAxD+B;;;;;;;;;;;;;;;;;;ACXhC,6EAA6E;AACnC;AAK1C;IAAA;IACA,CAAC;IADY,aAAa;QAHzB,+DAAS,CAAC;YACP,8IAAkC;SACrC,CAAC;OACW,aAAa,CACzB;IAAD,oBAAC;CAAA;AADyB;;;;;;;;;;;;;;;;;;;;;;ACN1B,iBAAiB;AACjB,yDAAyD;AAChB;AACiB;AACX;AAE/C,cAAc;AACqC;AAEnD,YAAY;AACZ,6EAA6E;AAC5B;AAEjD,IAAM,iBAAiB,GAAG;IACtB,6DAAa;CAChB,CAAC;AAcF;IAAA;IAA0B,CAAC;IAAd,UAAU;QAZtB,8DAAQ,CAAC;YACN,OAAO,EAAE;gBACL,iBAAiB;gBACjB,uEAAa;gBACb,4DAAY;gBAEZ,cAAc;gBACd,gEAAiB;aACpB;YACD,OAAO,EAAE,iBAAiB;YAC1B,YAAY,EAAE,iBAAiB;SAClC,CAAC;OACW,UAAU,CAAI;IAAD,iBAAC;CAAA;AAAJ;;;;;;;;;;;;;AC7BvB;AAAA;AAAA;AAAA;IAAA;QACQ,cAAS,GAAW,CAAC,CAAC;QACtB,sBAAiB,GAAW,EAAE,CAAC;QAC/B,QAAG,GAAW,EAAE,CAAC;QACjB,iBAAY,GAAW,EAAE,CAAC;QAC1B,gBAAW,GAAW,EAAE,CAAC;QACzB,eAAU,GAAY,KAAK,CAAC;QAC5B,yBAAoB,GAAY,KAAK,CAAC;QACtC,iBAAY,GAAW,EAAE,CAAC;QAC1B,oBAAe,GAAW,EAAE,CAAC;QAC7B,mBAAc,GAAW,EAAE,CAAC;QAC5B,YAAO,GAAW,EAAE,CAAC;IAC7B,CAAC;IAAD,sBAAC;AAAD,CAAC;;AAED;IAAA;QACI,QAAG,GAAW,EAAE,CAAC;QACjB,gBAAW,GAAW,EAAE,CAAC;QACzB,iBAAY,GAAW,EAAE,CAAC;QAC1B,mBAAc,GAAW,EAAE,CAAC;QAC5B,sBAAiB,GAAW,EAAE,CAAC;QAC/B,mBAAc,GAAW,EAAE,CAAC;QAC5B,qBAAgB,GAAW,EAAE,CAAC;QAC9B,mBAAc,GAAW,EAAE,CAAC;QAC5B,aAAQ,GAAW,EAAE,CAAC;IAC1B,CAAC;IAAD,iBAAC;AAAD,CAAC;;AAED,qCAAqC;AACrC,oCAAoC;AACpC,sCAAsC;AACtC,qCAAqC;AACrC,sCAAsC;AACtC,+BAA+B;AAC/B,uBAAuB;AACvB,GAAG;;;;;;;;;;;;ACjCH,2BAA2B,6BAA6B,GAAG,eAAe,iCAAiC,GAAG,qBAAqB,yBAAyB,kBAAkB,wBAAwB,wBAAwB,iCAAiC,MAAM,yBAAyB,eAAe,eAAe,uBAAuB,yBAAyB,sBAAsB,MAAM,+CAA+C,YAAY,mCAAmC,KAAK,oBAAoB,iBAAiB,KAAK,GAAG,WAAW,qDAAqD,4CAA4C,kBAAkB,GAAG,UAAU,8BAA8B,iCAAiC,GAAG,eAAe,qCAAqC,2BAA2B,GAAG,aAAa,uBAAuB,mBAAmB,GAAG,mBAAmB,8BAA8B,GAAG,iBAAiB,yBAAyB,GAAG,sBAAsB,kCAAkC,GAAG,sBAAsB,wBAAwB,KAAK,mBAAmB,wBAAwB,sBAAsB,GAAG,kBAAkB,0BAA0B,sBAAsB,uBAAuB,GAAG,2BAA2B,0BAA0B,sBAAsB,uBAAuB,qBAAqB,GAAG,wBAAwB,kCAAkC,iBAAiB,GAAG,OAAO,kCAAkC,qBAAqB,GAAG,YAAY,mBAAmB,2BAA2B,GAAG,aAAa,mBAAmB,iBAAiB,GAAG,WAAW,iBAAiB,cAAc,GAAG,gBAAgB,kBAAkB,GAAG,cAAc,uBAAuB,0BAA0B,oCAAoC,GAAG,2BAA2B,uBAAuB,iBAAiB,2BAA2B,gBAAgB,uBAAuB,uBAAuB,mBAAmB,uBAAuB,eAAe,iBAAiB,cAAc,uBAAuB,eAAe,6BAA6B,GAAG,kCAAkC,kBAAkB,uBAAuB,cAAc,cAAc,sBAAsB,sBAAsB,wBAAwB,2DAA2D,GAAG,iCAAiC,wBAAwB,eAAe,GAAG,qBAAqB,yBAAyB,kBAAkB,0BAA0B,0BAA0B,8BAA8B,GAAG,2BAA2B,8BAA8B,gBAAgB,iBAAiB,uBAAuB,sBAAsB,oBAAoB,GAAG,sBAAsB,mBAAmB,gBAAgB,wBAAwB,uBAAuB,GAAG,4BAA4B,wBAAwB,uBAAuB,wBAAwB,sBAAsB,uBAAuB,oBAAoB,iBAAiB,sBAAsB,GAAG,oDAAoD,gBAAgB,mBAAmB,uBAAuB,cAAc,cAAc,8BAA8B,gBAAgB,gBAAgB,mBAAmB,GAAG,kCAAkC,0BAA0B,8BAA8B,mCAAmC,wBAAwB,4BAA4B,oBAAoB,gBAAgB,uBAAuB,cAAc,cAAc,uBAAuB,mBAAmB,GAAG,4CAA4C,8BAA8B,mBAAmB,GAAG,2CAA2C,0BAA0B,6BAA6B,mBAAmB,GAAG,yCAAyC,0BAA0B,6BAA6B,mBAAmB,GAAG,+CAA+C,8BAA8B,GAAG,8CAA8C,0BAA0B,6BAA6B,GAAG,uCAAuC,0BAA0B,GAAG,sCAAsC,sBAAsB,yBAAyB,GAAG,6CAA6C,6BAA6B,wBAAwB,iCAAiC,GAAG,kDAAkD,6BAA6B,wBAAwB,kCAAkC,GAAG,qDAAqD,6BAA6B,wBAAwB,GAAG,gDAAgD,6BAA6B,wBAAwB,GAAG,+CAA+C,mBAAmB,wBAAwB,yFAAyF,mFAAmF,sHAAsH,GAAG,0CAA0C,0FAA0F,qFAAqF,4BAA4B,GAAG,yCAAyC,0BAA0B,GAAG,8CAA8C,0BAA0B,GAAG,cAAc,yCAAyC,GAAG,YAAY,iBAAiB,eAAe,GAAG,iBAAiB,iBAAiB,gBAAgB,GAAG,yBAAyB,8BAA8B,sBAAsB,GAAG,cAAc,oBAAoB,uBAAuB,uBAAuB,uBAAuB,oCAAoC,GAAG,sBAAsB,qBAAqB,uBAAuB,GAAG,UAAU,wBAAwB,mBAAmB,8BAA8B,oBAAoB,oBAAoB,uBAAuB,GAAG,WAAW,iBAAiB,gBAAgB,GAAG,qBAAqB,8BAA8B,GAAG,uBAAuB,mBAAmB,qBAAqB,+BAA+B,iBAAiB,wCAAwC,GAAG,iBAAiB,8BAA8B,GAAG,oBAAoB,qBAAqB,GAAG,mBAAmB,oBAAoB,qBAAqB,iBAAiB,oBAAoB,GAAG,gBAAgB,oBAAoB,qBAAqB,iBAAiB,oBAAoB,GAAG,eAAe,oBAAoB,sBAAsB,iBAAiB,oBAAoB,GAAG,gBAAgB,iBAAiB,oBAAoB,uBAAuB,oBAAoB,GAAG,aAAa,yCAAyC,GAAG,aAAa,uBAAuB,mBAAmB,sBAAsB,oBAAoB,GAAG,cAAc,sBAAsB,qBAAqB,wBAAwB,iBAAiB,oBAAoB,oBAAoB,GAAG,SAAS,iBAAiB,qBAAqB,wBAAwB,oBAAoB,oBAAoB,mBAAmB,0BAA0B,GAAG,eAAe,iBAAiB,qBAAqB,wBAAwB,oBAAoB,oBAAoB,0BAA0B,GAAG,iBAAiB,mBAAmB,uBAAuB,GAAG,aAAa,mBAAmB,uBAAuB,iCAAiC,UAAU,qBAAqB,GAAG,qBAAqB,iCAAiC,sBAAsB,oBAAoB,GAAG,iBAAiB,8BAA8B,GAAG,oBAAoB,kCAAkC,GAAG,cAAc,eAAe,iBAAiB,GAAG,aAAa,mBAAmB,uBAAuB,gCAAgC,mBAAmB,sBAAsB,aAAa,oBAAoB,qBAAqB,sBAAsB,8BAA8B,GAAG,YAAY,oBAAoB,YAAY,cAAc,gBAAgB,0BAA0B,iBAAiB,kCAAkC,mCAAmC,GAAG,cAAc,eAAe,iBAAiB,GAAG,oBAAoB,iBAAiB,eAAe,GAAG,UAAU,+BAA+B,iCAAiC,KAAK,UAAU,oBAAoB,GAAG,yCAAyC,gCAAgC,iCAAiC,qCAAqC,GAAG,gCAAgC,kDAAkD,iCAAiC,qCAAqC,GAAG,oCAAoC,gCAAgC,iCAAiC,qCAAqC,GAAG,qCAAqC,gCAAgC,iCAAiC,qCAAqC,GAAG,2BAA2B,gCAAgC,iCAAiC,qCAAqC,GAAG,0BAA0B,2BAA2B,6BAA6B,0BAA0B,uBAAuB,wBAAwB,uBAAuB,4BAA4B,qBAAqB,4CAA4C,6BAA6B,oCAAoC,qCAAqC,sCAAsC,GAAG,kBAAkB,uCAAuC,gCAAgC,GAAG,sBAAsB,8BAA8B,+BAA+B,qCAAqC,gCAAgC,oCAAoC,oBAAoB,GAAG,qBAAqB,kBAAkB,mBAAmB,wBAAwB,4EAA4E,KAAK,kBAAkB,kCAAkC,qCAAqC,gCAAgC,8BAA8B,gCAAgC,uCAAuC,GAAG,0BAA0B,2CAA2C,sCAAsC,gCAAgC,qCAAqC,mCAAmC,8BAA8B,sBAAsB,0BAA0B,2BAA2B,sBAAsB,GAAG,8BAA8B,2CAA2C,sCAAsC,gCAAgC,qCAAqC,mCAAmC,8BAA8B,sBAAsB,GAAG,uBAAuB,8BAA8B,2CAA2C,GAAG,yBAAyB,2CAA2C,sCAAsC,kCAAkC,mCAAmC,mCAAmC,8BAA8B,sBAAsB,2BAA2B,sBAAsB,GAAG,iFAAiF,sCAAsC,GAAG,2BAA2B,iCAAiC,uBAAuB,GAAG,2BAA2B,qBAAqB,0BAA0B,kBAAkB,yBAAyB,GAAG,sBAAsB,6BAA6B,yBAAyB,qCAAqC,2BAA2B,sDAAsD,2BAA2B,kBAAkB,qCAAqC,kBAAkB,GAAG,kBAAkB,uBAAuB,kCAAkC,oBAAoB,GAAG,8BAA8B,+BAA+B,8BAA8B,mBAAmB,wBAAwB,mCAAmC,sBAAsB,kBAAkB,8BAA8B,GAAG,2BAA2B,qCAAqC,iBAAiB,6BAA6B,OAAO,2BAA2B,qBAAqB,sBAAsB,GAAG,6BAA6B,qBAAqB,sBAAsB,GAAG,sFAAsF,iCAAiC,OAAO,uDAAuD,4BAA4B,GAAG,oCAAoC,iCAAiC,GAAG,2BAA2B,yBAAyB,eAAe,gBAAgB,2DAA2D,mDAAmD,GAAG,4BAA4B,mBAAmB,kBAAkB,6CAA6C,kBAAkB,aAAa,cAAc,yBAAyB,GAAG,mBAAmB,gCAAgC,yCAAyC,6BAA6B,8BAA8B,sBAAsB,GAAG,sBAAsB,wBAAwB,uBAAuB,yBAAyB,wCAAwC,4BAA4B,8BAA8B,qBAAqB,0BAA0B,qBAAqB,GAAG,4CAA4C,gCAAgC,qBAAqB,sBAAsB,yBAAyB,0BAA0B,GAAG,4CAA4C,gCAAgC,mBAAmB,oBAAoB,GAAG,mCAAmC,6CAA6C,GAAG,qBAAqB,2CAA2C,gCAAgC,iCAAiC,oCAAoC,qCAAqC,GAAG,yCAAyC,2CAA2C,8BAA8B,+BAA+B,GAAG,mCAAmC,6CAA6C,GAAG,uBAAuB,kDAAkD,wHAAwH,qBAAqB,0BAA0B,GAAG,qBAAqB,kDAAkD,wHAAwH,uBAAuB,0BAA0B,GAAG,iBAAiB,oBAAoB,mBAAmB,kBAAkB,+BAA+B,sBAAsB,oBAAoB,yBAAyB,0BAA0B,0BAA0B,GAAG,2BAA2B,6BAA6B,kBAAkB,2BAA2B,eAAe,oBAAoB,kBAAkB,mBAAmB,uCAAuC,GAAG,qBAAqB,0BAA0B,wBAAwB,uBAAuB,uBAAuB,GAAG,2BAA2B,2CAA2C,sCAAsC,gCAAgC,qCAAqC,mCAAmC,8BAA8B,sBAAsB,4BAA4B,wCAAwC,sBAAsB,GAAG,kBAAkB,qBAAqB,oBAAoB,sBAAsB,2BAA2B,GAAG,qCAAqC,oBAAoB,kCAAkC,kBAAkB,GAAG,2CAA2C,wDAAwD,gCAAgC,GAAG,2CAA2C,gCAAgC,gCAAgC,GAAG,wBAAwB,qBAAqB,oBAAoB,sBAAsB,2BAA2B,GAAG,2CAA2C,oBAAoB,kCAAkC,iBAAiB,GAAG,iDAAiD,wDAAwD,gCAAgC,GAAG,iDAAiD,gCAAgC,gCAAgC,GAAG,6CAA6C,sBAAsB,0BAA0B,yBAAyB,wBAAwB,yBAAyB,4BAA4B,qBAAqB,4CAA4C,6BAA6B,oCAAoC,qCAAqC,sCAAsC,GAAG,0BAA0B,sBAAsB,uBAAuB,qBAAqB,sBAAsB,2BAA2B,eAAe,oBAAoB,kBAAkB,mBAAmB,uCAAuC,GAAG,wBAAwB,kCAAkC,qBAAqB,wBAAwB,yBAAyB,2BAA2B,yBAAyB,GAAG,4BAA4B,gBAAgB,2BAA2B,qBAAqB,sBAAsB,GAAG,gBAAgB,8BAA8B,8BAA8B,oCAAoC,gCAAgC,oCAAoC,wBAAwB,GAAG,iBAAiB,yBAAyB,6BAA6B,8BAA8B,mBAAmB,yBAAyB,eAAe,qCAAqC,oCAAoC,sBAAsB,GAAG,oBAAoB,uBAAuB,GAAG,YAAY,mCAAmC,GAAG,6CAA6C,+ulC;;;;;;;;;;;ACAzhkB,4CAA4C,0BAA0B,gBAAgB,EAAE,0CAA0C,0BAA0B,EAAE,+CAA+C,2mB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACA7M,6EAA6E;AACoD;AAE3E;AAEa;AAEX;AAEb;AACc;AAC4B;AACH;AACF;AAGjD;AACyD;AAE3C;AACU;AACK;AAC8D;AACmC;AAC7E;AACnC;AAO7C;IAAyC,6EAAgB;IA2ErD,YAAY;IAEZ,6BAAmB,iBAAoC,EAAU,KAAqB,EAAU,WAAwB,EAC7G,QAAkB,EAAS,IAAqB,EAAS,iBAAoC,EAC7F,aAAoC,EAAS,gBAAkC,EAC9E,gBAAkC,EAAU,MAAuB;QAH/E;QAKI,gCAAgC;QAChC,kBAAM,IAAI,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,aAAa,CAAC,SAoBlE;QA1BkB,uBAAiB,GAAjB,iBAAiB,CAAmB;QAAU,WAAK,GAAL,KAAK,CAAgB;QAAU,iBAAW,GAAX,WAAW,CAAa;QAC7G,cAAQ,GAAR,QAAQ,CAAU;QAAS,UAAI,GAAJ,IAAI,CAAiB;QAAS,uBAAiB,GAAjB,iBAAiB,CAAmB;QAC7F,mBAAa,GAAb,aAAa,CAAuB;QAAS,sBAAgB,GAAhB,gBAAgB,CAAkB;QAC9E,sBAAgB,GAAhB,gBAAgB,CAAkB;QAAU,YAAM,GAAN,MAAM,CAAiB;QA7E/E,+FAA+F;QAE/F,mBAAmB;QACZ,SAAG,GAAW,EAAE,CAAC;QAGjB,iBAAW,GAAW,EAAE,CAAC;QACzB,mBAAa,GAAW,EAAE,CAAC;QAC3B,kBAAY,GAAW,EAAE,CAAC;QAG1B,2BAAqB,GAAG,EAAE,CAAC;QAC3B,eAAS,GAAG,EAAE,CAAC;QACf,uBAAiB,GAAG,EAAE,CAAC;QACvB,sBAAgB,GAAW,EAAE,CAAC;QAE9B,4BAAsB,GAAW,EAAE,CAAC;QACpC,4BAAsB,GAAW,EAAE,CAAC;QAIpC,qBAAe,GAAY,KAAK,CAAC;QACjC,iBAAW,GAAY,IAAI,CAAC;QAC5B,eAAS,GAAY,KAAK,CAAC;QAE3B,gCAA0B,GAAY,KAAK,CAAC;QAC5C,wBAAkB,GAAY,KAAK,CAAC;QAM3C,cAAQ,GAAG,KAAK,CAAC;QAMV,gCAA0B,GAAW,EAAE,CAAC;QACxC,uBAAiB,GAAW,EAAE,CAAC;QAC/B,6BAAuB,GAAW,EAAE,CAAC;QACrC,gCAA0B,GAAW,EAAE,CAAC;QACxC,8BAAwB,GAAW,CAAC,CAAC;QACrC,eAAS,GAAW,EAAE,CAAC;QACvB,cAAQ,GAAW,EAAE,CAAC;QACtB,8BAAwB,GAAW,EAAE,CAAC;QACtC,6BAAuB,GAAW,EAAE,CAAC;QACrC,mBAAa,GAAY,IAAI,CAAC;QAC9B,8BAAwB,GAAgC,EAAE,CAAC;QAC3D,8BAAwB,GAAG,EAAE,CAAC;QAC9B,gBAAU,GAAW,EAAE,CAAC;QACxB,oBAAc,GAAW,EAAE,CAAC;QAC5B,kBAAY,GAAW,EAAE,CAAC;QAC1B,wBAAkB,GAAY,KAAK,CAAC;QACpC,gBAAU,GAAY,KAAK,CAAC;QAC5B,gBAAU,GAAG,IAAI,CAAC;QAElB,oBAAc,GAAW,EAAE,CAAC;QAC5B,kBAAY,GAAW,EAAE,CAAC;QAC1B,6BAAuB,GAAW,EAAE,CAAC;QAMrC,8BAAwB,GAAW,EAAE,CAAC;QACtC,oBAAc,GAAY,IAAI,CAAC;QAC/B,mBAAa,GAAW,IAAI,CAAC;QAC7B,oBAAc,GAAW,EAAE,CAAC;QAianC,kBAAY,GAAG;YACX,KAAI,CAAC,cAAc,EAAE,CAAC;YACtB,KAAI,CAAC,cAAc,GAAG,IAAI,CAAC;YAC3B,KAAI,CAAC,wBAAwB,GAAG,EAAE,CAAC;QACvC,CAAC;QAvZG,IAAI;YACA,0EAA0E;YAC1E,IAAI,KAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC;gBAClC,KAAI,CAAC,OAAO,GAAG,KAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;YACnD,0CAA0C;YAE1C,KAAI,CAAC,iBAAiB,GAAG,IAAI,kHAAiB,EAAE,CAAC;YACjD,KAAI,CAAC,kBAAkB,GAAG,IAAI,mHAAkB,EAAE,CAAC;YAEnD,KAAI,CAAC,4BAA4B,GAAG,IAAI,0IAA4B,EAAE,CAAC;YAEvE,KAAI,CAAC,cAAc,GAAG,KAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,EAAE,EAAE,gBAAgB,CAAC,CAAC;YAC5E,KAAI,CAAC,gBAAgB,CAAC,wFAAO,CAAC,IAAI,EAAE,6CAA6C,CAAC,CAAC;SAEtF;QACD,OAAO,CAAC,EAAE;YACN,KAAI,CAAC,gBAAgB,CAAC,wFAAO,CAAC,KAAK,EAAE,iEAAiE,GAAG,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;SACzI;;IACL,CAAC;IAAA,CAAC;IAEF,sCAAQ,GAAR;QACI,IAAI;YACA,sCAAsC;YACtC,CAAC,CAAC,0CAA0C,CAAC,CAAC,IAAI,EAAE,CAAC;YACrD,8EAA8E;YAC9E,CAAC,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;YACxC,8DAA8D;YAC9D,CAAC,CAAC,aAAa,CAAC,CAAC,GAAG,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;YAE7C,wBAAwB;YACxB,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YAChD,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YAC/C,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YAC9C,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YAE9C,+DAA+D;YAC/D,IAAI,CAAC,wBAAwB,GAAG,EAAE,CAAC;YAEnC,uCAAuC;YACvC,gDAAgD;YAChD,QAAQ;YAER,6EAA6E;YAC7E,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;SAEzC;QACD,OAAO,CAAC,EAAE;YACN,IAAI,CAAC,gBAAgB,CAAC,wFAAO,CAAC,KAAK,EAAE,mDAAmD,GAAG,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;SAC3H;IACL,CAAC;IAED,uBAAuB;IAEvB,gDAAkB,GAAlB,UAAmB,OAAe;QAAlC,iBAkEC;QAjEG,IAAI;YACA,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC;YAE/B,IAAI,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,mBAAS;gBAElE,6EAA6E;gBAE7E,IAAI,SAAS,CAAC,IAAI,IAAI,IAAI,EAAE;oBACxB,KAAI,CAAC,gBAAgB,CAAC,wFAAO,CAAC,IAAI,EAAE,uCAAuC,CAAC,CAAC;oBAE7E,mDAAmD;oBACnD,IAAI,SAAS,CAAC,IAAI,CAAC,cAAc,IAAI,IAAI,IAAI,SAAS,CAAC,IAAI,CAAC,cAAc,IAAI,EAAE,EAAE;wBAC9E,KAAI,CAAC,0BAA0B,GAAG,KAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,IAAI,CAAC,cAAc,CAAC;qBAC1F;oBAED,IAAI,SAAS,CAAC,IAAI,CAAC,GAAG,IAAI,IAAI,IAAI,SAAS,CAAC,IAAI,CAAC,GAAG,IAAI,EAAE;wBACtD,SAAS,CAAC,IAAI,CAAC,iBAAiB,IAAI,IAAI,IAAI,SAAS,CAAC,IAAI,CAAC,iBAAiB,IAAI,EAAE;wBAClF,SAAS,CAAC,IAAI,CAAC,oBAAoB,EAAE;wBACrC,8BAA8B;wBAC9B,KAAI,CAAC,GAAG,GAAG,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC;wBAC9B,KAAI,CAAC,WAAW,GAAG,SAAS,CAAC,IAAI,CAAC,iBAAiB,CAAC;wBACpD,KAAI,CAAC,SAAS,GAAG,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC;wBAC1C,KAAI,CAAC,QAAQ,GAAG,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC;wBACxC,KAAI,CAAC,YAAY,GAAG,SAAS,CAAC,IAAI,CAAC,oBAAoB,CAAC;wBACxD,KAAI,CAAC,uBAAuB,GAAG,SAAS,CAAC,IAAI,CAAC,2BAA2B,CAAC,2CAA0C;wBAEpH,kEAAkE;wBAClE,IAAI,KAAI,CAAC,GAAG,IAAI,MAAM;4BAClB,KAAI,CAAC,aAAa,GAAG,SAAS,CAAC,IAAI,CAAC,cAAc,CAAC;6BAClD;4BACD,KAAI,CAAC,aAAa,GAAG,EAAE,CAAC;4BACxB,KAAI,CAAC,YAAY,GAAG,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC;yBACnD;wBAED,yBAAyB;wBACzB,KAAI,CAAC,qBAAqB,EAAE,CAAC;wBAE7B,kDAAkD;wBAClD,+DAA+D;qBAClE;yBACI;wBACD,KAAI,CAAC,gBAAgB,CAAC,wFAAO,CAAC,IAAI,EAAE,+DAA+D,CAAC,CAAC;wBACrG,KAAI,CAAC,YAAY,EAAE,CAAC;qBACvB;iBACJ;qBACI;oBACD,KAAI,CAAC,gBAAgB,CAAC,wFAAO,CAAC,KAAK,EAAE,mEAAmE,CAAC,CAAC;oBAC1G,KAAI,CAAC,YAAY,EAAE,CAAC;iBACvB;YAEL,CAAC,EAAE,mBAAS;gBACR,eAAe;gBACf,IAAI,KAAI,CAAC,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,IAAI,KAAI,CAAC,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,IAAI,KAAI,CAAC,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,EAAE;oBACpH,IAAI,SAAS,CAAC,IAAI,IAAI,IAAI,IAAI,SAAS,CAAC,IAAI,CAAC,cAAc,IAAI,EAAE;wBAC7D,KAAI,CAAC,0BAA0B,GAAG,KAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;oBAE5F,KAAI,CAAC,gBAAgB,CAAC,wFAAO,CAAC,KAAK,EAAE,+CAA+C,CAAC,CAAC;oBACtF,KAAI,CAAC,YAAY,EAAE,CAAC;iBACvB;YACL,CAAC,CAAC,CAAC;SACN;QACD,OAAO,CAAC,EAAE;YACN,IAAI,CAAC,gBAAgB,CAAC,wFAAO,CAAC,KAAK,EAAE,4DAA4D,GAAG,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;SACpI;IAEL,CAAC;IAED,mDAAqB,GAArB;QAAA,iBA4DC;QA3DG,IAAI;YACA,iCAAiC;YAEjC,IAAI,CAAC,gBAAgB,CAAC,qBAAqB,EAAE,CAAC,SAAS,CAAC,mBAAS;gBAE7D,2EAA2E;gBAE3E,IAAI,SAAS,CAAC,IAAI,IAAI,IAAI,EAAE;oBAExB,KAAI,CAAC,gBAAgB,CAAC,wFAAO,CAAC,IAAI,EAAE,0CAA0C,CAAC,CAAC;oBAEhF,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,oBAAU;wBAC7B,KAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;oBACnD,CAAC,CAAC,CAAC;oBAEH,kCAAkC;oBAClC,KAAI,CAAC,wBAAwB,GAAG,KAAI,CAAC,wBAAwB,CAAC,MAAM,CAAC,cAAI,IAAI,WAAI,CAAC,iBAAiB,IAAI,4BAA4B,EAAtD,CAAsD,CAAC;yBAC/H,GAAG,CAAC,YAAE,IAAI,SAAE,CAAC,kBAAkB,EAArB,CAAqB,CAAC,CAAC;oBAEtC,KAAI,CAAC,WAAW,GAAG,KAAI,CAAC,wBAAwB,CAAC,MAAM,CAAC,cAAI,IAAI,QAAC,IAAI,CAAC,gBAAgB,IAAI,SAAS,CAAC,EAApC,CAAoC,CAAC;yBAChG,GAAG,CAAC,YAAE,IAAI,SAAE,CAAC,kBAAkB,EAArB,CAAqB,CAAC,CAAC,CAAC,CAAC,CAAC;oBAEzC,KAAI,CAAC,aAAa,GAAG,MAAM,CAAC,KAAI,CAAC,wBAAwB,CAAC,MAAM,CAAC,cAAI,IAAI,WAAI,CAAC,gBAAgB,IAAI,gBAAgB,EAAzC,CAAyC,CAAC;yBAC9G,GAAG,CAAC,YAAE,IAAI,SAAE,CAAC,kBAAkB,EAArB,CAAqB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;oBAE1C,KAAI,CAAC,cAAc,GAAG,MAAM,CAAC,KAAI,CAAC,wBAAwB,CAAC,MAAM,CAAC,cAAI,IAAI,WAAI,CAAC,gBAAgB,IAAI,uBAAuB,EAAhD,CAAgD,CAAC;yBACtH,GAAG,CAAC,YAAE,IAAI,SAAE,CAAC,kBAAkB,EAArB,CAAqB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;oBAE1C,0BAA0B;oBAC1B,KAAI,CAAC,yBAAyB,EAAE,CAAC;oBACjC,KAAI,CAAC,cAAc,EAAE,CAAC;oBAEtB,0CAA0C;oBAC1C,KAAI,CAAC,cAAc,EAAE,CAAC;oBAEtB,0EAA0E;oBAC1E,KAAI,CAAC,wBAAwB,EAAE,CAAC;oBAEhC,8BAA8B;oBAC9B,KAAI,CAAC,kBAAkB,GAAG,KAAK,CAAC;iBACnC;qBACI;oBACD,KAAI,CAAC,gBAAgB,CAAC,wFAAO,CAAC,KAAK,EAAE,sEAAsE,CAAC,CAAC;oBAC7G,KAAI,CAAC,YAAY,EAAE,CAAC;iBACvB;YAEL,CAAC,EAAE,mBAAS;gBACR,eAAe;gBACf,IAAI,KAAI,CAAC,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,IAAI,KAAI,CAAC,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,IAAI,KAAI,CAAC,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,EAAE;oBAEpH,KAAI,CAAC,gBAAgB,CAAC,wFAAO,CAAC,KAAK,EAAE,kDAAkD,CAAC,CAAC;oBACzF,KAAI,CAAC,YAAY,EAAE,CAAC;iBACvB;YACL,CAAC,CAAC,CAAC;SAEN;QACD,OAAO,CAAC,EAAE;YACN,IAAI,CAAC,gBAAgB,CAAC,wFAAO,CAAC,KAAK,EAAE,+DAA+D,GAAG,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;SACvI;IACL,CAAC;IAED,aAAa;IAEb,sBAAsB;IAEd,wCAAU,GAAlB,UAAmB,iBAAyB,EAAE,OAAmB;QAAjE,iBAyEC;QAxEG,IAAI;YAEA,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC;YAC/B,IAAI,wBAAwB,GAAW,EAAE,CAAC;YAC1C,IAAI,iBAAiB,IAAI,EAAE;gBACvB,iBAAiB,GAAG,iBAAiB,GAAG,IAAI,CAAC;YAEhD,wBAAwB,GAAG,iBAAiB,CAAC;YAE9C,IAAI,CAAC,UAAU,GAAG,IAAI,+DAAU,EAAE,CAAC;YACnC,IAAI,CAAC,UAAU,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC;YAC/B,IAAI,CAAC,UAAU,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;YAC/C,IAAI,CAAC,UAAU,CAAC,iBAAiB,GAAG,wBAAwB,CAAC,CAAC,oBAAoB;YAElF,sBAAsB;YACtB,IAAI,CAAC,UAAU,CAAC,YAAY,GAAG,IAAI,CAAC,mBAAmB,CAAC;YACxD,IAAI,CAAC,UAAU,CAAC,cAAc,GAAG,IAAI,CAAC,sBAAsB,CAAC;YAE7D,qBAAqB;YACrB,IAAI,CAAC,UAAU,CAAC,cAAc,GAAG,IAAI,CAAC,aAAa,CAAC;YACpD,IAAI,CAAC,UAAU,CAAC,gBAAgB,GAAG,IAAI,CAAC,mBAAmB,CAAC;YAC5D,IAAI,CAAC,UAAU,CAAC,cAAc,GAAG,IAAI,CAAC,iBAAiB,CAAC;YACxD,IAAI,CAAC,UAAU,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;YAEzC,IAAI,IAAI,CAAC,GAAG,KAAK,MAAM;gBACnB,IAAI,CAAC,gBAAgB,CAAC,wFAAO,CAAC,IAAI,EAAE,iDAAiD,GAAG,IAAI,CAAC,mBAAmB,GAAG,qBAAqB,GAAG,IAAI,CAAC,sBAAsB,CAAC,CAAC;;gBAExK,IAAI,CAAC,gBAAgB,CAAC,wFAAO,CAAC,IAAI,EAAE,8CAA8C,GAAG,IAAI,CAAC,mBAAmB,GAAG,cAAc,GAAG,IAAI,CAAC,iBAAiB,CAAC,CAAC;YAE7J,4FAA4F;YAE5F,IAAI,CAAC,iBAAiB,CAAC,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,SAAS,CAAC,mBAAS;gBAElE,qDAAqD;gBACrD,IAAI,SAAS,IAAI,IAAI,IAAI,SAAS,CAAC,UAAU,IAAI,GAAG,EAAE;oBAElD,IAAI,KAAI,CAAC,GAAG,KAAK,MAAM;wBACnB,KAAI,CAAC,gBAAgB,CAAC,wFAAO,CAAC,IAAI,EAAE,mDAAmD,GAAG,KAAI,CAAC,mBAAmB,GAAG,qBAAqB,GAAG,KAAI,CAAC,sBAAsB,CAAC,CAAC;;wBAE1K,KAAI,CAAC,gBAAgB,CAAC,wFAAO,CAAC,IAAI,EAAE,gDAAgD,GAAG,KAAI,CAAC,mBAAmB,GAAG,cAAc,GAAG,KAAI,CAAC,iBAAiB,CAAC,CAAC;oBAE/J,2BAA2B;oBAC3B,8HAA8H;oBAC9H,KAAI,CAAC,UAAU,GAAG,KAAK,CAAC;oBACxB,6EAA6E;oBAC7E,KAAI,CAAC,cAAc,GAAG,IAAI,CAAC;oBAE3B,uBAAuB;oBACvB,KAAI,CAAC,kBAAkB,GAAG,KAAK,CAAC;oBAChC,OAAO,CAAC,IAAI,EAAE,CAAC;iBAClB;qBACI;oBAED,KAAI,CAAC,gBAAgB,CAAC,wFAAO,CAAC,KAAK,EAAE,6EAA6E,CAAC,CAAC;oBAEpH,KAAI,CAAC,kBAAkB,GAAG,KAAK,CAAC;oBAChC,KAAI,CAAC,YAAY,EAAE,CAAC;iBACvB;YAEL,CAAC,EAAE,mBAAS;gBACR,IAAI,KAAI,CAAC,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,IAAI,KAAI,CAAC,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,IAAI,KAAI,CAAC,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,EAAE;oBACpH,KAAI,CAAC,gBAAgB,CAAC,wFAAO,CAAC,KAAK,EAAE,2DAA2D,CAAC,CAAC;oBAElG,KAAI,CAAC,kBAAkB,GAAG,KAAK,CAAC;oBAChC,KAAI,CAAC,YAAY,EAAE,CAAC;iBACvB;YACL,CAAC,CAAC,CAAC;SAEN;QACD,OAAO,CAAC,EAAE;YACN,IAAI,CAAC,gBAAgB,CAAC,wFAAO,CAAC,KAAK,EAAE,iDAAiD,GAAG,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;SACzH;IACL,CAAC;IAED,iBAAiB;IAEjB,2BAA2B;IAE3B,4CAAc,GAAd;QAEI,IAAI,CAAC,mBAAmB,CAAC,aAAa,GAAG,CAAC,CAAC;QAC3C,IAAI,CAAC,gBAAgB,CAAC,wFAAO,CAAC,IAAI,EAAE,0BAA0B,CAAC,CAAC;IACpE,CAAC;IAED,aAAa;IAGb,yBAAyB;IAEzB,0CAAY,GAAZ;QACI,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACtB,kCAAkC;QAClC,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;QACzB,IAAI,CAAC,0BAA0B,GAAG,KAAK,CAAC;QACxC,IAAI,CAAC,kBAAkB,GAAG,KAAK,CAAC;QAChC,IAAI,CAAC,kBAAkB,GAAG,KAAK,CAAC;QAChC,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;QACxB,oCAAoC;QACpC,CAAC,CAAC,kBAAkB,CAAC,CAAC,IAAI,EAAE,CAAC;IAEjC,CAAC;IAEO,mDAAqB,GAA7B,UAA8B,MAAM;QAChC,IAAI,CAAC,YAAY,EAAE,CAAC;IACxB,CAAC;IAEO,+CAAiB,GAAzB,UAA0B,iBAAyB;QAE/C,IAAI,iBAAiB,CAAC,MAAM,IAAI,EAAE,EAAE;YAChC,kCAAkC;YAClC,OAAO,iBAAiB,CAAC,OAAO,CAAC,uBAAuB,EAAE,UAAU,CAAC,CAAC;SACzE;QACD,OAAO,iBAAiB;IAC5B,CAAC;IAEM,uDAAyB,GAAhC;QAAA,iBAeC;QAbG,IAAI,IAAI,CAAC,GAAG,IAAI,MAAM,EAAE;YACpB,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,wBAAwB,CAAC,MAAM,CAAC,cAAI,IAAI,QAAC,IAAI,CAAC,GAAG,IAAI,KAAI,CAAC,GAAG,IAAI,IAAI,CAAC,iBAAiB,IAAI,sBAAsB,CAAC,EAA1E,CAA0E,CAAC;iBACzI,GAAG,CAAC,YAAE,IAAI,SAAE,CAAC,kBAAkB,EAArB,CAAqB,CAAC,CAAC,CAAC,CAAC,CAAC;YAEzC,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,wBAAwB,CAAC,MAAM,CAAC,cAAI,IAAI,QAAC,IAAI,CAAC,GAAG,IAAI,KAAI,CAAC,GAAG,IAAI,IAAI,CAAC,iBAAiB,IAAI,eAAe,CAAC,EAAnE,CAAmE,CAAC;iBAChI,GAAG,CAAC,YAAE,IAAI,SAAE,CAAC,kBAAkB,EAArB,CAAqB,CAAC,CAAC,CAAC,CAAC,CAAC;SAC5C;aACI;YACD,sBAAsB;YACtB,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,0BAA0B,CAAC;YACtD,IAAI,CAAC,YAAY,GAAG,uBAAuB,CAAC;SAC/C;IAEL,CAAC;IAEO,4CAAc,GAAtB;QACI,IAAI,IAAI,CAAC,GAAG,KAAK,IAAI,IAAI,IAAI,CAAC,GAAG,KAAK,IAAI;YACtC,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;aAC9B,IAAI,IAAI,CAAC,GAAG,KAAK,KAAK;YACvB,IAAI,CAAC,WAAW,GAAG,sBAAsB,CAAC;aACzC,IAAI,IAAI,CAAC,GAAG,KAAK,KAAK;YACvB,IAAI,CAAC,WAAW,GAAG,iBAAiB,CAAC;aACpC,IAAI,IAAI,CAAC,GAAG,KAAK,MAAM;YACxB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,YAAY,CAAC;IAC7C,CAAC;IAEO,8CAAgB,GAAxB,UAAyB,OAAe,EAAE,UAAkB;QAExD,IAAI,CAAC,UAAU,GAAG,IAAI,2FAAU,EAAE,CAAC;QAEnC,IAAI,CAAC,UAAU,CAAC,YAAY,GAAG,CAAC,CAAC,CAAC,mBAAmB;QACrD,IAAI,CAAC,UAAU,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC;QAC/B,IAAI,CAAC,UAAU,CAAC,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC;QAC1C,IAAI,CAAC,UAAU,CAAC,gBAAgB,GAAG,IAAI,CAAC,WAAW,CAAC;QACpD,IAAI,CAAC,UAAU,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;QAC3C,IAAI,CAAC,UAAU,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC;QACrD,IAAI,CAAC,UAAU,CAAC,OAAO,GAAG,OAAO,CAAC;QAClC,IAAI,CAAC,UAAU,CAAC,UAAU,GAAG,UAAU,CAAC;QACxC,IAAI,CAAC,UAAU,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;QAE/C,iBAAM,wBAAwB,YAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAEpD,CAAC;IAEO,sDAAwB,GAAhC;QAEI,IAAI,CAAC,iBAAiB,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC;QACtC,IAAI,CAAC,iBAAiB,CAAC,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC;QACjD,IAAI,CAAC,iBAAiB,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;QACtD,IAAI,CAAC,iBAAiB,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;QAClD,IAAI,CAAC,iBAAiB,CAAC,cAAc,GAAG,IAAI,CAAC,aAAa,CAAC;QAC3D,IAAI,CAAC,iBAAiB,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC;QAC5D,IAAI,CAAC,iBAAiB,CAAC,YAAY,GAAG,CAAC,CAAC,CAAC,YAAY;QACrD,IAAI,CAAC,iBAAiB,CAAC,uBAAuB,GAAG,IAAI,CAAC,uBAAuB,CAAC;QAC9E,IAAI,CAAC,iBAAiB,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;QACtD,IAAI,CAAC,iBAAiB,CAAC,eAAe,GAAG,OAAO,CAAC;QACjD,IAAI,CAAC,iBAAiB,CAAC,sBAAsB,GAAG,OAAO,CAAC;IAC5D,CAAC;IAEO,0DAA4B,GAApC,UAAqC,MAAM;QACvC,IAAI,CAAC,kBAAkB,GAAG,MAAM,CAAC;QAEjC,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,kBAAkB,CAAC,gBAAgB,CAAC;QACjE,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC,kBAAkB,CAAC,sBAAsB,CAAC;QAC7E,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,kBAAkB,CAAC,oBAAoB,CAAC;QACxE,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC,kBAAkB,CAAC,sBAAsB,CAAC;QAC7E,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,kBAAkB,CAAC,mBAAmB,CAAC;QACvE,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,kBAAkB,CAAC,iBAAiB,CAAC;QAEnE,mDAAmD;QACnD,IAAI,CAAC,mCAAmC,EAAE,CAAC;IAC/C,CAAC;IAEO,iEAAmC,GAA3C;QAEI,IAAI,CAAC,4BAA4B,CAAC,gBAAgB,GAAG,IAAI,CAAC,gBAAgB,CAAC;QAC3E,IAAI,CAAC,4BAA4B,CAAC,sBAAsB,GAAG,IAAI,CAAC,sBAAsB,CAAC;QACvF,IAAI,CAAC,4BAA4B,CAAC,wBAAwB,GAAG,IAAI,CAAC,wBAAwB,CAAC;QAC3F,IAAI,CAAC,4BAA4B,CAAC,aAAa,GAAG,EAAE,CAAC,CAAC,6BAA6B;QACnF,IAAI,CAAC,4BAA4B,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC;QACjD,IAAI,CAAC,4BAA4B,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC;QACvE,IAAI,CAAC,4BAA4B,CAAC,YAAY,GAAG,CAAC,CAAC,CAAC,oBAAoB;QACxE,IAAI,CAAC,4BAA4B,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;IACrE,CAAC;IAED,yBAAyB;IAEjB,4CAAc,GAAtB;QAAA,iBASC;QARG,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,cAAc,CAAC,CAAC,SAAS,CAAC,UAAC,GAAG;YAC9E,IAAI,GAAG,IAAI,CAAC,KAAI,CAAC,cAAc,EAAE;gBAC7B,iBAAiB;gBACjB,KAAI,CAAC,cAAc,CAAC,KAAI,CAAC,cAAc,CAAC,CAAC;gBACzC,uCAAuC;gBACvC,KAAI,CAAC,YAAY,GAAG,UAAU,CAAC,KAAI,CAAC,YAAY,CAAC,IAAI,CAAC,KAAI,CAAC,EAAE,KAAI,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC;aAC5F;QACL,CAAC,CAAC;IACN,CAAC;IAQO,4CAAc,GAAtB,UAAuB,OAAO;QAA9B,iBAYC;QAXG,IAAI,OAAO,GAAG,OAAO,CAAC;QAEtB,IAAI,CAAC,QAAQ,GAAG,WAAW,CAAC;YACxB,KAAI,CAAC,wBAAwB,GAAG,sBAAsB,GAAG,OAAO,CAAC;YACjE,OAAO,EAAE,CAAC;YAEV,IAAI,OAAO,GAAG,CAAC,EAAE;gBACb,aAAa,CAAC,KAAI,CAAC,QAAQ,CAAC,CAAC;gBAC7B,KAAI,CAAC,wBAAwB,GAAG,EAAE,CAAC;aACtC;QACL,CAAC,EAAE,IAAI,CAAC,CAAC;IACb,CAAC;IAED,iCAAiC;IAKjC,qCAAO,GAAP,UAAQ,KAAK;QACT,IAAI,IAAI,CAAC,wBAAwB,IAAI,EAAE,EAAE;YACrC,YAAY,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YAChC,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAC7B,IAAI,CAAC,wBAAwB,GAAG,EAAE,CAAC;SACtC;IACL,CAAC;;gBA1bqC,qEAAiB;gBAAiB,8DAAc;gBAAuB,0DAAW;gBACnG,wDAAQ;gBAAe,2DAAe;gBAA4B,gGAAiB;gBAC9E,0EAAqB;gBAA2B,6FAAgB;gBAC5D,2FAAgB;gBAAkB,2DAAe;;IA9ErC;QAAzC,+DAAS,CAAC,qEAAU,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;wEAAsB,qEAAU;oEAAC;IA+f1E;QAJC,kEAAY,CAAC,kBAAkB,EAAE,CAAC,QAAQ,CAAC,CAAC;QAC5C,kEAAY,CAAC,kBAAkB,EAAE,CAAC,QAAQ,CAAC,CAAC;QAC5C,kEAAY,CAAC,cAAc,EAAE,CAAC,QAAQ,CAAC,CAAC;QACxC,kEAAY,CAAC,YAAY,EAAE,CAAC,QAAQ,CAAC,CAAC;;;;sDAOtC;IAvgBQ,mBAAmB;QAL/B,+DAAS,CAAC;YACP,gKAAwC;YAExC,SAAS,EAAE,CAAC,wDAAQ,EAAE,qEAAiB,EAAE,gGAAiB,EAAE,6FAAgB,EAAE,2FAAgB,CAAC;;SAClG,CAAC;+EA8EwC,qEAAiB,EAAiB,8DAAc,EAAuB,0DAAW;YACnG,wDAAQ,EAAe,2DAAe,EAA4B,gGAAiB;YAC9E,0EAAqB,EAA2B,6FAAgB;YAC5D,2FAAgB,EAAkB,2DAAe;OAhFtE,mBAAmB,CA8gB/B;IAAD,0BAAC;CAAA,CA9gBwC,4FAAgB,GA8gBxD;AA9gB+B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AChChC,iBAAiB;AACjB,yDAAyD;AAChB;AACM;AACA;AACmB;AAClE,cAAc;AACgC;AACA;AACA;AACK;AAEnD,aAAa;AACoC;AAEjD,YAAY;AACZ,6EAA6E;AAEhB;AACL;AACd;AAC2D;AACS;AACe;AAChF;AAC7C,4EAA4E;AAmC5E;IAAA;IAAgC,CAAC;IAApB,gBAAgB;QAhC5B,8DAAQ,CAAC;YACN,OAAO,EAAE;gBACL,iBAAiB;gBACjB,4DAAY;gBACZ,4DAAY,CAAC,QAAQ,CAAC,qEAAgB,CAAC;gBACvC,0DAAW;gBACX,kEAAmB;gBACnB,wDAAa,CAAC,OAAO,CAAC;oBAClB,MAAM,EAAE,yCAAyC;iBAClD,CAAC;gBAEJ,sBAAsB;gBACtB,gEAAiB;gBACjB,2DAAe;gBACf,2DAAe;gBACf,2DAAe;gBAEf,aAAa;gBACb,4DAAU;gBACV,iHAAkB;gBAClB,0HAAwB;gBACxB,yIAA6B;gBAC7B,eAAe;aAElB;YACD,OAAO,EAAE,CAAC,0EAAmB,CAAC;YAC9B,YAAY,EAAE;gBACV,0EAAmB;aACtB;YACD,SAAS,EAAE,CAAC,2DAAe,CAAC;SAC/B,CAAC;OAEW,gBAAgB,CAAI;IAAD,uBAAC;CAAA;AAAJ;;;;;;;;;;;;;ACzD7B;AAAA;AAAA;AAA6D;AACtD,IAAM,gBAAgB,GAAW;IACpC;QACI,IAAI,EAAE,YAAY;QAClB,SAAS,EAAE,yEAAmB;KACjC;CACJ,CAAC;;;;;;;;;;;;;;;;;;;;;ACTyC;AAEO;AAIL;AACkB;AAQ/D;IAMI,wBAAwB;IAGxB,2BAAoB,IAAqB,EAAU,MAAkB,EAAU,MAAgC;QAA3F,SAAI,GAAJ,IAAI,CAAiB;QAAU,WAAM,GAAN,MAAM,CAAY;QAAU,WAAM,GAAN,MAAM,CAA0B;QAPxG,YAAO,GAAG,cAAc,CAAC;QACzB,mBAAc,GAAG,WAAW,CAAC;QAC7B,kBAAa,GAAG,cAAc,CAAC;QAC/B,YAAO,GAAQ,EAAE,CAAC;IAI0F,CAAC;IAEpH,8CAAkB,GAAlB,UAAmB,OAAe;QAC9B,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAM;YACtB,GAAG,EAAE,IAAI,CAAC,OAAO,GAAG,qBAAqB,GAAG,OAAO;SACtD,CAAC,CAAC;IACP,CAAC;IAED,sCAAU,GAAV,UAAW,UAAsB;QAE7B,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAM;YACvB,GAAG,EAAE,IAAI,CAAC,OAAO,GAAG,YAAY;YAChC,IAAI,EAAE,UAAU;YAChB,mBAAmB;YACnB,yBAAyB,EAAE,IAAI;YAC/B,yBAAyB,EAAE,GAAG;SACjC,CAAC,CAAC;IACP,CAAC;IAGD,qCAAqC;IAC7B,uCAAW,GAAnB,UAAoB,KAAU;QAE1B,mDAAmD;QACnD,6EAA6E;QAC7E,mCAAmC;IACvC,CAAC;;gBA1ByB,0DAAe;gBAAkB,+DAAU;gBAAkB,4EAAwB;;IATtG,iBAAiB;QAD7B,gEAAU,EAAE;+EAUiB,0DAAe,EAAkB,+DAAU,EAAkB,4EAAwB;OATtG,iBAAiB,CAqC7B;IAAD,wBAAC;CAAA;AArC6B;;;;;;;;;;;;;;;;;;;;;;;;ACf0C;AAChB;AAExD,yEAAyE;AAC3B;AAC9C,yEAAyE;AAC5B;AAC7C,2EAA2E;AAC5B;AAEG;AACf;AAMnC;IAMI,yEAAyE;IACzE,2EAA2E;IAC3E,4BAAoB,aAA4B,EAAU,eAAgC,EAAU,IAAqB,EAAU,gBAAkC,EAAU,WAAwB;QAAnL,kBAAa,GAAb,aAAa,CAAe;QAAU,oBAAe,GAAf,eAAe,CAAiB;QAAU,SAAI,GAAJ,IAAI,CAAiB;QAAU,qBAAgB,GAAhB,gBAAgB,CAAkB;QAAU,gBAAW,GAAX,WAAW,CAAa;QAPvM,YAAO,GAAW,kBAAkB,CAAC;QACrC,YAAO,GAAW,kBAAkB,CAAC;QAE3B,oBAAe,GAAG,IAAI,0DAAY,EAAE,CAAC;IAI4J,CAAC;IAE5M,qCAAQ,GAAR;QACI,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,8CAAM,EAAE,CAAC,CAAC;IACrD,CAAC;IAED,+GAA+G;IAC/G,gBAAgB;IAChB,+GAA+G;IAC/G,0CAAa,GAAb,UAAc,MAAc;QACxB,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACrB,CAAC;IAED,iCAAI,GAAJ;QAAA,iBAYC;QAXG,4DAA4D;QAC5D,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,8CAAM,EAAE,CAAC,CAAC;QAEjD,gBAAgB;QAChB,2EAA2E;QAC3E,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC;YACvB,EAAE,EAAE,IAAI,CAAC,OAAO;YAChB,OAAO,EAAE;gBACL,KAAI,CAAC,eAAe,CAAC,IAAI,EAAE,CAAC;YAChC,CAAC;SACJ,CAAC,CAAC;IACP,CAAC;IAED,+GAA+G;IAC/G,aAAa;IACb,+GAA+G;IACvG,gCAAG,GAAX,UAAY,MAAc;QAA1B,iBAWC;QAVG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,gBAAM;YACzD,2EAA2E;YAC3E,KAAI,CAAC,gBAAgB,CAAC,IAAI,EAAE,CAAC,CAAC,gFAAgF;QAClH,CAAC,EAAE,gBAAM;YACL,yEAAyE;YACzE,+DAA+D;YAC/D,IAAI,KAAI,CAAC,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,EAAE;gBACnC,KAAI,CAAC,IAAI,GAAG,KAAI,CAAC,eAAe,CAAC,cAAc,CAAC,KAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;aACtE;QACL,CAAC,CAAC,CAAC;IACP,CAAC;;gBAzCkC,6DAAa;gBAA2B,2DAAe;gBAAgB,0DAAe;gBAA4B,4DAAgB;gBAAuB,0DAAW;;IAJ7L;QAAT,4DAAM,EAAE;;+DAAsC;IAJtC,kBAAkB;QAJ9B,+DAAS,CAAC;YACP,QAAQ,EAAE,YAAY;YACtB,gKAAwC;SAC3C,CAAC;+EASqC,6DAAa,EAA2B,2DAAe,EAAgB,0DAAe,EAA4B,4DAAgB,EAAuB,0DAAW;OAR9L,kBAAkB,CAkD9B;IAAD,yBAAC;CAAA;AAlD8B;;;;;;;;;;;;;;;;;;;;;;;;;ACjByC;AAChB;AAIxD,2EAA2E;AAC5B;AAC/C,yEAAyE;AAC3B;AAC9C,yEAAyE;AAC5B;AAC7C,2EAA2E;AAC5B;AAEG;AACf;AAMnC;IAMI,2EAA2E;IAC3E,yEAAyE;IACzE,2EAA2E;IAC3E,6BAAoB,aAA4B,EAAU,gBAAkC,EAAU,eAAgC,EAAU,IAAqB,EAAU,gBAAkC,EAAU,WAAwB;QAA/N,kBAAa,GAAb,aAAa,CAAe;QAAU,qBAAgB,GAAhB,gBAAgB,CAAkB;QAAU,oBAAe,GAAf,eAAe,CAAiB;QAAU,SAAI,GAAJ,IAAI,CAAiB;QAAU,qBAAgB,GAAhB,gBAAgB,CAAkB;QAAU,gBAAW,GAAX,WAAW,CAAa;QARnP,YAAO,GAAW,mBAAmB,CAAC;QACtC,YAAO,GAAW,mBAAmB,CAAC;QAE5B,qBAAgB,GAAG,IAAI,0DAAY,EAAE,CAAC;IAKuM,CAAC;IAExP,sCAAQ,GAAR;QACI,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,8CAAM,EAAE,CAAC,CAAC;IACrD,CAAC;IAED,+GAA+G;IAC/G,gBAAgB;IAChB,+GAA+G;IAC/G,2CAAa,GAAb,UAAc,MAAc;QACxB,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACxB,CAAC;IAED,2CAAa,GAAb,UAAc,MAAc;QACxB,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IACxB,CAAC;IAED,kCAAI,GAAJ,UAAK,EAAU;QACX,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IACrB,CAAC;IAED,+GAA+G;IAC/G,aAAa;IACb,+GAA+G;IACvG,qCAAO,GAAf,UAAgB,EAAU;QAA1B,iBAgBC;QAfG,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,gBAAM;YAC3C,0BAA0B;YAC1B,KAAI,CAAC,IAAI,GAAG,KAAI,CAAC,WAAW,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YAEhD,gBAAgB;YAChB,2EAA2E;YAC3E,KAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC;gBACvB,EAAE,EAAE,KAAI,CAAC,OAAO;gBAChB,OAAO,EAAE;oBACL,KAAI,CAAC,gBAAgB,CAAC,IAAI,EAAE,CAAC;gBACjC,CAAC;aACJ,CAAC,CAAC;QACP,CAAC,EAAE,gBAAM;YACL,aAAa;QACjB,CAAC,CAAC,CAAC;IACP,CAAC;IAEO,oCAAM,GAAd,UAAe,MAAc;QAA7B,iBAWC;QAVG,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,gBAAM;YAC5D,2EAA2E;YAC3E,KAAI,CAAC,gBAAgB,CAAC,IAAI,EAAE,CAAC,CAAC,gFAAgF;QAClH,CAAC,EAAE,gBAAM;YACL,yEAAyE;YACzE,+DAA+D;YAC/D,IAAI,KAAI,CAAC,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,EAAE;gBACnC,KAAI,CAAC,IAAI,GAAG,KAAI,CAAC,eAAe,CAAC,cAAc,CAAC,KAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;aACtE;QACL,CAAC,CAAC,CAAC;IACP,CAAC;IAEO,iCAAG,GAAX,UAAY,EAAU;QAAtB,iBAUC;QATG,2DAA2D;QAC3D,2EAA2E;QAC3E,IAAI,CAAC,gBAAgB,CAAC,IAAI,EAAE,CAAC;QAE7B,QAAQ;QACR,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,gBAAM;YACrD,2EAA2E;YAC3E,KAAI,CAAC,gBAAgB,CAAC,IAAI,EAAE,CAAC,CAAC,gFAAgF;QAClH,CAAC,CAAC,CAAC;IACP,CAAC;;gBAjEkC,6DAAa;gBAA4B,4DAAgB;gBAA2B,2DAAe;gBAAgB,0DAAe;gBAA4B,4DAAgB;gBAAuB,0DAAW;;IALzO;QAAT,4DAAM,EAAE;;iEAAuC;IAJvC,mBAAmB;QAJ/B,+DAAS,CAAC;YACP,QAAQ,EAAE,aAAa;YACvB,mKAAyC;SAC5C,CAAC;+EAUqC,6DAAa,EAA4B,4DAAgB,EAA2B,2DAAe,EAAgB,0DAAe,EAA4B,4DAAgB,EAAuB,0DAAW;OAT1O,mBAAmB,CA2E/B;IAAD,0BAAC;CAAA;AA3E+B;;;;;;;;;;;;;;;;;;;;;;;;;;ACrBwC;AACzC;AACY;AAE3C,2FAA2F;AAC5B;AAC/D,2EAA2E;AAC5B;AAGkB;AACG;AAClB;AACsB;AAMxE;IAWI,6BACY,aAA4B,EAC5B,oBAA0C,EAC1C,MAAgC,EAChC,gBAAkC;QAHlC,kBAAa,GAAb,aAAa,CAAe;QAC5B,yBAAoB,GAApB,oBAAoB,CAAsB;QAC1C,WAAM,GAAN,MAAM,CAA0B;QAChC,qBAAgB,GAAhB,gBAAgB,CAAkB;QAd9C,cAAS,GAAY,IAAI,CAAC;QAC1B,YAAO,GAAa,EAAE,CAAC;QACvB,sBAAiB,GAAW,IAAI,CAAC;QACjC,kBAAa,GAAY,KAAK,CAAC;QAEvB,iBAAY,GAAG,IAAI,4CAAO,EAAQ,CAAC;IAUvC,CAAC;IAEL,sCAAQ,GAAR;QAAA,iBAoBC;QAnBG,IAAI,CAAC,MAAM,EAAE,CAAC;QAEd,iGAAiG;QACjG,oFAAoF;QACpF,IAAI,CAAC,oBAAoB,CAAC,aAAa,EAAE;aACpC,IAAI,CAAC,gEAAS,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;aAClC,SAAS,CAAC,uBAAa;YACpB,KAAI,CAAC,aAAa,GAAG,aAAa,CAAC;QACvC,CAAC,CAAC,CAAC;QAEP,gFAAgF;QAChF,2FAA2F;QAC3F,IAAI,4BAA4B,GAAG,mBAAmB,CAAC;QACvD,IAAI,CAAC,MAAM,CAAC,UAAU,CAAS,4BAA4B,CAAC;QACxD,iCAAiC;QACjC,mCAAmC;QACnC,iDAAiD;QACjD,+EAA+E;QAC/E,KAAK;IACb,CAAC;IAED,yCAAW,GAAX;QACI,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;QACzB,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC;IACjC,CAAC;IAED,+GAA+G;IAC/G,gBAAgB;IAChB,+GAA+G;IAC/G,iCAAG,GAAH;QACI,IAAI,CAAC,kBAAkB,CAAC,IAAI,EAAE,CAAC;IACnC,CAAC;IAED,kCAAI,GAAJ,UAAK,EAAU;QACX,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACtC,CAAC;IAED,oCAAM,GAAN,UAAO,MAAc;QAArB,iBAeC;QAdG,2EAA2E;QAC3E,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC;YAC1B,KAAK,EAAE,SAAS;YAChB,IAAI,EAAE,6CAA6C;YACnD,iBAAiB,EAAE,IAAI;YACvB,oBAAoB,EAAE,UAAC,SAAkB;gBACrC,IAAI,SAAS,EAAE;oBACX,KAAI,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;iBACvB;qBACI;oBACD,KAAI,CAAC,gBAAgB,CAAC,IAAI,EAAE,CAAC;iBAChC;YACL,CAAC;SACJ,CAAC,CAAC;IACP,CAAC;IAED,6CAAe,GAAf;QACI,IAAI,CAAC,MAAM,EAAE,CAAC;IAClB,CAAC;IAED,8CAAgB,GAAhB;QACI,IAAI,CAAC,MAAM,EAAE,CAAC;IAClB,CAAC;IAED,+GAA+G;IAC/G,aAAa;IACb,+GAA+G;IACvG,oCAAM,GAAd;QAAA,iBAMC;QALG,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACtB,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,gBAAM;YACxC,KAAI,CAAC,SAAS,GAAG,KAAK,CAAC;YACvB,KAAI,CAAC,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC;QAC/B,CAAC,CAAC,CAAC;IACP,CAAC;IAEO,iCAAG,GAAX,UAAY,EAAU;QAAtB,iBAMC;QALG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,gBAAM;YACvC,2EAA2E;YAC3E,KAAI,CAAC,gBAAgB,CAAC,IAAI,EAAE,CAAC;YAC7B,KAAI,CAAC,MAAM,EAAE,CAAC;QAClB,CAAC,CAAC,CAAC;IACP,CAAC;;gBAtF0B,6DAAa;gBACN,gFAAoB;gBAClC,4EAAwB;gBACd,4DAAgB;;IAPI;QAAjD,+DAAS,CAAC,4EAAkB,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;wEAAqB,4EAAkB;mEAAC;IACtC;QAAlD,+DAAS,CAAC,+EAAmB,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;wEAAsB,+EAAmB;oEAAC;IATnF,mBAAmB;QAJ/B,+DAAS,CAAC;YACP,QAAQ,EAAE,aAAa;YACvB,mKAAyC;SAC5C,CAAC;+EAa6B,6DAAa;YACN,gFAAoB;YAClC,4EAAwB;YACd,4DAAgB;OAfrC,mBAAmB,CAmG/B;IAAD,0BAAC;CAAA;AAnG+B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACnBhC,iBAAiB;AACjB,yDAAyD;AAChB;AACiB;AACF;AACU;AAElE,cAAc;AACgC;AACE;AACc;AAClB;AACE;AACF;AACE;AAE9C,eAAe;AACf,sFAAsF;AACtF,4DAA4D;AAE5D,SAAS;AACwC;AAEjD,YAAY;AACZ,6EAA6E;AACb;AACG;AACA;AAEnE,IAAM,iBAAiB,GAAG;IACtB,6EAAkB;IAClB,gFAAmB;IACnB,gFAAmB;CACtB,CAAC;AA4BF;IAAA;IAA4B,CAAC;IAAhB,YAAY;QA1BxB,8DAAQ,CAAC;YACN,OAAO,EAAE;gBACL,iBAAiB;gBACjB,uEAAa;gBACb,0DAAW;gBACX,qEAAgB;gBAChB,kEAAmB;gBAEnB,cAAc;gBACd,2DAAe;gBACf,6DAAgB;gBAChB,2EAAuB;gBACvB,yDAAc;gBACd,2DAAe;gBACf,0DAAc;gBACd,4DAAe;gBAEf,eAAe;gBACf,aAAa;gBAEb,aAAa;gBACb,6DAAU;aACb;YACD,OAAO,EAAE,iBAAiB;YAC1B,YAAY,EAAE,iBAAiB;SAClC,CAAC;OACW,YAAY,CAAI;IAAD,mBAAC;CAAA;AAAJ;;;;;;;;;;;;;;;;;;;AC7DkB;AAK3C,yEAAyE;AAC5B;AAO7C;IAGI,uBACY,IAAqB;QAArB,SAAI,GAAJ,IAAI,CAAiB;QAHzB,YAAO,GAAG,QAAQ,CAAC;IAIvB,CAAC;IAEL;;;OAGG;IACH,8BAAM,GAAN,UAAO,OAAgB;QACnB,yEAAyE;QACzE,8EAA8E;QAC9E,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAW;YAC3B,GAAG,EAAE,IAAI,CAAC,OAAO;YACjB,OAAO,EAAE,OAAO;SACnB,CAAC,CAAC;IACP,CAAC;IAED;;;;OAIG;IACH,+BAAO,GAAP,UAAQ,EAAU,EAAE,OAAgB;QAChC,yEAAyE;QACzE,8EAA8E;QAC9E,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAS;YACzB,GAAG,EAAE,IAAI,CAAC,OAAO,GAAG,UAAU;YAC9B,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE;YAClB,OAAO,EAAE,OAAO;SACnB,CAAC,CAAC;IACP,CAAC;IAED;;;;OAIG;IACH,2BAAG,GAAH,UAAI,MAAc,EAAE,OAAgB;QAChC,yEAAyE;QACzE,8EAA8E;QAC9E,+DAA+D;QAC/D,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAS;YAC1B,GAAG,EAAE,IAAI,CAAC,OAAO;YACjB,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,OAAO;YAChB,yBAAyB,EAAE,IAAI;YAC/B,yBAAyB,EAAE,GAAG;SACjC,CAAC,CAAC;IACP,CAAC;IAED;;;;OAIG;IACH,8BAAM,GAAN,UAAO,MAAc,EAAE,OAAgB;QACnC,yEAAyE;QACzE,8EAA8E;QAC9E,+DAA+D;QAC/D,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAS;YACzB,GAAG,EAAE,IAAI,CAAC,OAAO;YACjB,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,OAAO;YAChB,yBAAyB,EAAE,IAAI;YAC/B,yBAAyB,EAAE,GAAG;SACjC,CAAC,CAAC;IACP,CAAC;IAED;;;;OAIG;IACH,2BAAG,GAAH,UAAI,EAAU,EAAE,OAAgB;QAC5B,yEAAyE;QACzE,8EAA8E;QAC9E,+DAA+D;QAC/D,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAS;YACzB,GAAG,EAAE,IAAI,CAAC,OAAO;YACjB,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE;YAClB,OAAO,EAAE,OAAO;YAChB,yBAAyB,EAAE,GAAG;SACjC,CAAC,CAAC;IACP,CAAC;;gBAlFiB,0DAAe;;IAJxB,aAAa;QAHzB,gEAAU,CAAC;YACR,UAAU,EAAE,MAAM;SACrB,CAAC;+EAKoB,0DAAe;OAJxB,aAAa,CAuFzB;IAAD,oBAAC;CAAA;AAvFyB;;;;;;;;;;;;;ACb1B;AAAA;AAAA,+DAA+D;AAC/D;IAAA;QACI,OAAE,GAAW,CAAC,CAAC;QACf,gBAAW,GAAW,EAAE,CAAC;QACzB,iBAAY,GAAS,IAAI,IAAI,EAAE,CAAC;IACpC,CAAC;IAAD,aAAC;AAAD,CAAC;;;;;;;;;;;;;;ACLD;AAAA;AAAA;AAAA;AAAA;AAAA;IAAA;QACI,QAAG,GAAW,EAAE,CAAC;QACjB,gBAAW,GAAW,EAAE,CAAC;QACzB,iBAAY,GAAW,EAAE,CAAC;QAC1B,mBAAc,GAAW,EAAE,CAAC;QAC5B,sBAAiB,GAAW,EAAE,CAAC;QAC/B,mBAAc,GAAW,EAAE,CAAC;QAC5B,qBAAgB,GAAW,EAAE,CAAC;QAC9B,mBAAc,GAAW,EAAE,CAAC;QAC5B,aAAQ,GAAW,EAAE,CAAC;QACtB,kBAAa,GAAY,KAAK,CAAC;QAC/B,iBAAY,GAAY,KAAK,CAAC;QAC9B,mBAAc,GAAW,EAAE,CAAC;IAChC,CAAC;IAAD,oBAAC;AAAD,CAAC;;AAED;IAAA;QACI,kBAAa,GAAW,EAAE,CAAC;QAC3B,2BAAsB,GAAW,EAAE,CAAC;QACpC,iBAAY,GAAW,EAAE,CAAC;QAC1B,yBAAoB,GAAW,EAAE,CAAC;QAClC,sBAAiB,GAAW,EAAE,CAAC;QAC/B,aAAQ,GAAW,EAAE,CAAC;QACtB,uBAAkB,GAAW,EAAE,CAAC;QAChC,yBAAoB,GAAY,KAAK,CAAC;QACtC,qBAAgB,GAAY,KAAK,CAAC;QAClC,iBAAY,GAAY,KAAK,CAAC;QAC9B,wBAAmB,GAAW,EAAE,CAAC;QACjC,kBAAa,GAAW,EAAE,CAAC;QAC3B,kBAAa,GAAW,EAAE,CAAC;QAC3B,mBAAc,GAAW,EAAE,CAAC;QAC5B,0BAAqB,GAAW,EAAE,CAAC;QACnC,0BAAqB,GAAW,EAAE,CAAC;QACnC,0BAAqB,GAAW,EAAE,CAAC;QACnC,0BAAqB,GAAW,EAAE,CAAC;QACnC,0BAAqB,GAAW,EAAE,CAAC;QACnC,0BAAqB,GAAW,EAAE,CAAC;QACnC,iBAAY,GAAW,EAAE,CAAC;QAC1B,iBAAY,GAAW,EAAE,CAAC;QAC1B,mBAAc,GAAW,EAAE,CAAC;QAC5B,qBAAgB,GAAW,EAAE,CAAC;QAC9B,gCAA2B,GAAW,EAAE,CAAC;QACzC,2BAAsB,GAAW,EAAE,CAAC;QACpC,6BAAwB,GAAW,CAAC,CAAC;QACrC,wBAAmB,GAAW,EAAE,CAAC;QACjC,oBAAe,GAAW,EAAE,CAAC;IACjC,CAAC;IAAD,wBAAC;AAAD,CAAC;;AAED,IAAY,uBAIX;AAJD,WAAY,uBAAuB;IAC/B,kDAAuB;IACvB,6CAAkB;IAClB,6CAAkB;AACtB,CAAC,EAJW,uBAAuB,KAAvB,uBAAuB,QAIlC;AAED,IAAY,qBAKX;AALD,WAAY,qBAAqB;IAC7B,kCAAS;IACT,oCAAW;IACX,oCAAW;IACX,sCAAa;AACjB,CAAC,EALW,qBAAqB,KAArB,qBAAqB,QAKhC;AAED,+BAA+B;AAC/B,sCAAsC;AACtC,kDAAkD;AAClD,gCAAgC;AAChC,iCAAiC;AACjC,4BAA4B;AAC5B,2BAA2B;AAC3B,iCAAiC;AACjC,mCAAmC;AACnC,oCAAoC;AACpC,iCAAiC;AACjC,qCAAqC;AACrC,iCAAiC;AACjC,gCAAgC;AAChC,+BAA+B;AAC/B,qCAAqC;AACrC,gCAAgC;AAChC,uCAAuC;AACvC,GAAG;AAEH,qCAAqC;AACrC,oCAAoC;AACpC,sCAAsC;AACtC,qCAAqC;AACrC,sCAAsC;AACtC,+BAA+B;AAC/B,uBAAuB;AACvB,GAAG;;;;;;;;;;;;ACvFH,2BAA2B,6BAA6B,GAAG,eAAe,iCAAiC,GAAG,qBAAqB,yBAAyB,kBAAkB,wBAAwB,wBAAwB,iCAAiC,MAAM,yBAAyB,eAAe,eAAe,uBAAuB,yBAAyB,sBAAsB,MAAM,+CAA+C,YAAY,mCAAmC,KAAK,oBAAoB,iBAAiB,KAAK,GAAG,WAAW,qDAAqD,4CAA4C,kBAAkB,GAAG,UAAU,8BAA8B,iCAAiC,GAAG,eAAe,qCAAqC,2BAA2B,GAAG,aAAa,uBAAuB,mBAAmB,GAAG,mBAAmB,8BAA8B,GAAG,iBAAiB,yBAAyB,GAAG,sBAAsB,kCAAkC,GAAG,sBAAsB,wBAAwB,KAAK,mBAAmB,wBAAwB,sBAAsB,GAAG,kBAAkB,0BAA0B,sBAAsB,uBAAuB,GAAG,2BAA2B,0BAA0B,sBAAsB,uBAAuB,qBAAqB,GAAG,wBAAwB,kCAAkC,iBAAiB,GAAG,OAAO,kCAAkC,qBAAqB,GAAG,YAAY,mBAAmB,2BAA2B,GAAG,aAAa,mBAAmB,iBAAiB,GAAG,WAAW,iBAAiB,cAAc,GAAG,gBAAgB,kBAAkB,GAAG,cAAc,uBAAuB,0BAA0B,oCAAoC,GAAG,2BAA2B,uBAAuB,iBAAiB,2BAA2B,gBAAgB,uBAAuB,uBAAuB,mBAAmB,uBAAuB,eAAe,iBAAiB,cAAc,uBAAuB,eAAe,6BAA6B,GAAG,kCAAkC,kBAAkB,uBAAuB,cAAc,cAAc,sBAAsB,sBAAsB,wBAAwB,2DAA2D,GAAG,iCAAiC,wBAAwB,eAAe,GAAG,qBAAqB,yBAAyB,kBAAkB,0BAA0B,0BAA0B,8BAA8B,GAAG,2BAA2B,8BAA8B,gBAAgB,iBAAiB,uBAAuB,sBAAsB,oBAAoB,GAAG,sBAAsB,mBAAmB,gBAAgB,wBAAwB,uBAAuB,GAAG,4BAA4B,wBAAwB,uBAAuB,wBAAwB,sBAAsB,uBAAuB,oBAAoB,iBAAiB,sBAAsB,GAAG,oDAAoD,gBAAgB,mBAAmB,uBAAuB,cAAc,cAAc,8BAA8B,gBAAgB,gBAAgB,mBAAmB,GAAG,kCAAkC,0BAA0B,8BAA8B,mCAAmC,wBAAwB,4BAA4B,oBAAoB,gBAAgB,uBAAuB,cAAc,cAAc,uBAAuB,mBAAmB,GAAG,4CAA4C,8BAA8B,mBAAmB,GAAG,2CAA2C,0BAA0B,6BAA6B,mBAAmB,GAAG,yCAAyC,0BAA0B,6BAA6B,mBAAmB,GAAG,+CAA+C,8BAA8B,GAAG,8CAA8C,0BAA0B,6BAA6B,GAAG,uCAAuC,0BAA0B,GAAG,sCAAsC,sBAAsB,yBAAyB,GAAG,6CAA6C,6BAA6B,wBAAwB,iCAAiC,GAAG,kDAAkD,6BAA6B,wBAAwB,kCAAkC,GAAG,qDAAqD,6BAA6B,wBAAwB,GAAG,gDAAgD,6BAA6B,wBAAwB,GAAG,+CAA+C,mBAAmB,wBAAwB,yFAAyF,mFAAmF,sHAAsH,GAAG,0CAA0C,0FAA0F,qFAAqF,4BAA4B,GAAG,yCAAyC,0BAA0B,GAAG,8CAA8C,0BAA0B,GAAG,cAAc,yCAAyC,GAAG,YAAY,iBAAiB,eAAe,GAAG,iBAAiB,iBAAiB,gBAAgB,GAAG,yBAAyB,8BAA8B,sBAAsB,GAAG,cAAc,oBAAoB,uBAAuB,uBAAuB,uBAAuB,oCAAoC,GAAG,sBAAsB,qBAAqB,uBAAuB,GAAG,UAAU,wBAAwB,mBAAmB,8BAA8B,oBAAoB,oBAAoB,uBAAuB,GAAG,WAAW,iBAAiB,gBAAgB,GAAG,qBAAqB,8BAA8B,GAAG,uBAAuB,mBAAmB,qBAAqB,+BAA+B,iBAAiB,wCAAwC,GAAG,iBAAiB,8BAA8B,GAAG,oBAAoB,qBAAqB,GAAG,mBAAmB,oBAAoB,qBAAqB,iBAAiB,oBAAoB,GAAG,gBAAgB,oBAAoB,qBAAqB,iBAAiB,oBAAoB,GAAG,eAAe,oBAAoB,sBAAsB,iBAAiB,oBAAoB,GAAG,gBAAgB,iBAAiB,oBAAoB,uBAAuB,oBAAoB,GAAG,aAAa,yCAAyC,GAAG,aAAa,uBAAuB,mBAAmB,sBAAsB,oBAAoB,GAAG,cAAc,sBAAsB,qBAAqB,wBAAwB,iBAAiB,oBAAoB,oBAAoB,GAAG,SAAS,iBAAiB,qBAAqB,wBAAwB,oBAAoB,oBAAoB,mBAAmB,0BAA0B,GAAG,eAAe,iBAAiB,qBAAqB,wBAAwB,oBAAoB,oBAAoB,0BAA0B,GAAG,iBAAiB,mBAAmB,uBAAuB,GAAG,aAAa,mBAAmB,uBAAuB,iCAAiC,UAAU,qBAAqB,GAAG,qBAAqB,iCAAiC,sBAAsB,oBAAoB,GAAG,iBAAiB,8BAA8B,GAAG,oBAAoB,kCAAkC,GAAG,cAAc,eAAe,iBAAiB,GAAG,aAAa,mBAAmB,uBAAuB,gCAAgC,mBAAmB,sBAAsB,aAAa,oBAAoB,qBAAqB,sBAAsB,8BAA8B,GAAG,YAAY,oBAAoB,YAAY,cAAc,gBAAgB,0BAA0B,iBAAiB,kCAAkC,mCAAmC,GAAG,cAAc,eAAe,iBAAiB,GAAG,oBAAoB,iBAAiB,eAAe,GAAG,UAAU,+BAA+B,iCAAiC,KAAK,UAAU,oBAAoB,GAAG,yCAAyC,gCAAgC,iCAAiC,qCAAqC,GAAG,gCAAgC,kDAAkD,iCAAiC,qCAAqC,GAAG,oCAAoC,gCAAgC,iCAAiC,qCAAqC,GAAG,qCAAqC,gCAAgC,iCAAiC,qCAAqC,GAAG,2BAA2B,gCAAgC,iCAAiC,qCAAqC,GAAG,0BAA0B,2BAA2B,6BAA6B,0BAA0B,uBAAuB,wBAAwB,uBAAuB,4BAA4B,qBAAqB,4CAA4C,6BAA6B,oCAAoC,qCAAqC,sCAAsC,GAAG,kBAAkB,uCAAuC,gCAAgC,GAAG,sBAAsB,8BAA8B,+BAA+B,qCAAqC,gCAAgC,oCAAoC,oBAAoB,GAAG,qBAAqB,kBAAkB,mBAAmB,wBAAwB,4EAA4E,KAAK,6CAA6C,0BAA0B,0BAA0B,yBAAyB,wBAAwB,yBAAyB,4BAA4B,qBAAqB,4CAA4C,6BAA6B,oCAAoC,qCAAqC,sCAAsC,GAAG,kBAAkB,kCAAkC,qCAAqC,gCAAgC,8BAA8B,gCAAgC,uCAAuC,GAAG,0BAA0B,2CAA2C,sCAAsC,gCAAgC,qCAAqC,mCAAmC,8BAA8B,sBAAsB,0BAA0B,2BAA2B,sBAAsB,GAAG,8BAA8B,2CAA2C,sCAAsC,gCAAgC,qCAAqC,mCAAmC,8BAA8B,sBAAsB,GAAG,uBAAuB,8BAA8B,2CAA2C,GAAG,yBAAyB,2CAA2C,sCAAsC,kCAAkC,mCAAmC,mCAAmC,8BAA8B,sBAAsB,2BAA2B,sBAAsB,OAAO,iFAAiF,sCAAsC,GAAG,2BAA2B,iCAAiC,uBAAuB,GAAG,2BAA2B,qBAAqB,0BAA0B,kBAAkB,yBAAyB,GAAG,sBAAsB,6BAA6B,yBAAyB,qCAAqC,2BAA2B,sDAAsD,2BAA2B,kBAAkB,qCAAqC,kBAAkB,GAAG,kBAAkB,uBAAuB,kCAAkC,oBAAoB,GAAG,8BAA8B,+BAA+B,8BAA8B,mBAAmB,wBAAwB,mCAAmC,sBAAsB,kBAAkB,8BAA8B,GAAG,2BAA2B,qCAAqC,iBAAiB,6BAA6B,8BAA8B,GAAG,2BAA2B,qBAAqB,sBAAsB,GAAG,6BAA6B,qBAAqB,sBAAsB,GAAG,sFAAsF,iCAAiC,OAAO,uDAAuD,4BAA4B,GAAG,oCAAoC,iCAAiC,GAAG,2BAA2B,yBAAyB,eAAe,gBAAgB,2DAA2D,mDAAmD,GAAG,4BAA4B,mBAAmB,kBAAkB,6CAA6C,kBAAkB,aAAa,cAAc,yBAAyB,GAAG,mBAAmB,gCAAgC,yCAAyC,6BAA6B,8BAA8B,sBAAsB,GAAG,sBAAsB,wBAAwB,uBAAuB,yBAAyB,wCAAwC,4BAA4B,8BAA8B,qBAAqB,0BAA0B,qBAAqB,GAAG,4CAA4C,gCAAgC,qBAAqB,sBAAsB,yBAAyB,0BAA0B,GAAG,4CAA4C,gCAAgC,mBAAmB,oBAAoB,GAAG,mCAAmC,6CAA6C,GAAG,qBAAqB,2CAA2C,gCAAgC,iCAAiC,oCAAoC,qCAAqC,GAAG,yCAAyC,2CAA2C,8BAA8B,+BAA+B,GAAG,mCAAmC,6CAA6C,GAAG,yBAAyB,2CAA2C,sCAAsC,gCAAgC,qCAAqC,mCAAmC,8BAA8B,sBAAsB,yBAAyB,2BAA2B,qBAAqB,GAAG,iCAAiC,2CAA2C,sCAAsC,gCAAgC,qCAAqC,mCAAmC,6BAA6B,sBAAsB,yBAAyB,2BAA2B,sBAAsB,GAAG,kBAAkB,qBAAqB,oBAAoB,sBAAsB,2BAA2B,GAAG,qCAAqC,oBAAoB,kCAAkC,kBAAkB,GAAG,2CAA2C,wDAAwD,gCAAgC,GAAG,2CAA2C,gCAAgC,gCAAgC,GAAG,6BAA6B,2CAA2C,sCAAsC,kCAAkC,mCAAmC,mCAAmC,8BAA8B,sBAAsB,sCAAsC,sBAAsB,GAAG,2BAA2B,2CAA2C,sCAAsC,gCAAgC,qCAAqC,mCAAmC,8BAA8B,sBAAsB,4BAA4B,wCAAwC,sBAAsB,GAAG,wBAAwB,qBAAqB,oBAAoB,sBAAsB,2BAA2B,GAAG,2CAA2C,wBAAwB,sCAAsC,qBAAqB,OAAO,iDAAiD,4DAA4D,oCAAoC,OAAO,iDAAiD,oCAAoC,oCAAoC,OAAO,gBAAgB,oBAAoB,mBAAmB,0DAA0D,qBAAqB,kBAAkB,6BAA6B,GAAG,yBAAyB,4BAA4B,uFAAuF,+DAA+D,GAAG,kBAAkB,6BAA6B,mBAAmB,2BAA2B,oBAAoB,yBAAyB,wBAAwB,4BAA4B,mBAAmB,GAAG,uBAAuB,kCAAkC,qBAAqB,wBAAwB,6BAA6B,2BAA2B,yBAAyB,GAAG,mCAAmC,0BAA0B,yBAAyB,yBAAyB,wBAAwB,GAAG,+BAA+B,6BAA6B,6BAA6B,yBAAyB,yBAAyB,0BAA0B,mBAAmB,GAAG,uBAAuB,oBAAoB,mBAAmB,gDAAgD,sBAAsB,8BAA8B,GAAG,uBAAuB,kDAAkD,wHAAwH,qBAAqB,0BAA0B,GAAG,qBAAqB,kDAAkD,wHAAwH,uBAAuB,0BAA0B,GAAG,iBAAiB,oBAAoB,mBAAmB,kBAAkB,+BAA+B,sBAAsB,oBAAoB,yBAAyB,0BAA0B,0BAA0B,GAAG,2BAA2B,6BAA6B,kBAAkB,2BAA2B,eAAe,oBAAoB,kBAAkB,mBAAmB,uCAAuC,GAAG,0BAA0B,sBAAsB,uBAAuB,qBAAqB,sBAAsB,2BAA2B,qBAAqB,0BAA0B,wBAAwB,uBAAuB,uBAAuB,GAAG,wBAAwB,sBAAsB,0BAA0B,sBAAsB,yBAAyB,uBAAuB,0BAA0B,qBAAqB,yCAAyC,yCAAyC,GAAG,6BAA6B,iBAAiB,4BAA4B,sBAAsB,uBAAuB,GAAG,gBAAgB,8BAA8B,8BAA8B,oCAAoC,gCAAgC,oCAAoC,wBAAwB,GAAG,oBAAoB,wCAAwC,wCAAwC,oCAAoC,oCAAoC,4BAA4B,GAAG,iBAAiB,yBAAyB,6BAA6B,8BAA8B,mBAAmB,yBAAyB,eAAe,qCAAqC,oCAAoC,sBAAsB,GAAG,mBAAmB,uBAAuB,GAAG,sCAAsC,gCAAgC,iCAAiC,qCAAqC,GAAG,6BAA6B,kDAAkD,iCAAiC,qCAAqC,GAAG,iCAAiC,gCAAgC,iCAAiC,qCAAqC,GAAG,kCAAkC,gCAAgC,iCAAiC,qCAAqC,GAAG,wBAAwB,gCAAgC,iCAAiC,qCAAqC,GAAG,WAAW,kCAAkC,GAAG,6CAA6C,28wC;;;;;;;;;;;ACAzsqB,4CAA4C,0BAA0B,gBAAgB,EAAE,0CAA0C,0BAA0B,EAAE,+CAA+C,2lB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACA7M,6EAA6E;AAC+D;AAIzE;AAEc;AAEtC;AACU;AACgC;AACH;AACF;AAGnD;AAC2D;AAE3C;AACU;AACK;AAC8D;AACmC;AACA;AAC7E;AACnC;AAQ7C;IAAuC,2EAAgB;IAsFnD,YAAY;IAEZ,2BAAmB,eAAgC,EAAU,KAAqB,EAAU,WAAwB,EACzG,QAAkB,EAAS,IAAqB,EAAS,aAAoC,EAC7F,iBAAoC,EAAS,gBAAkC,EAAU,gBAAkC,EAC1H,MAAuB;QAHnC;QAKI,iCAAiC;QACjC,kBAAM,IAAI,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,aAAa,CAAC,SA0BlE;QAhCkB,qBAAe,GAAf,eAAe,CAAiB;QAAU,WAAK,GAAL,KAAK,CAAgB;QAAU,iBAAW,GAAX,WAAW,CAAa;QACzG,cAAQ,GAAR,QAAQ,CAAU;QAAS,UAAI,GAAJ,IAAI,CAAiB;QAAS,mBAAa,GAAb,aAAa,CAAuB;QAC7F,uBAAiB,GAAjB,iBAAiB,CAAmB;QAAS,sBAAgB,GAAhB,gBAAgB,CAAkB;QAAU,sBAAgB,GAAhB,gBAAgB,CAAkB;QAC1H,YAAM,GAAN,MAAM,CAAiB;QAxFnC,+FAA+F;QAE/F,mBAAmB;QACZ,SAAG,GAAQ,EAAE,CAAC;QAGd,sBAAgB,GAAW,EAAE,CAAC;QAE9B,4BAAsB,GAAW,EAAE,CAAC;QAI3C,mBAAmB;QACZ,qBAAe,GAAY,KAAK,CAAC;QACjC,iCAA2B,GAAY,KAAK,CAAC;QAC7C,wBAAkB,GAAY,KAAK,CAAC;QACpC,iBAAW,GAAY,KAAK,CAAC;QAC7B,eAAS,GAAY,KAAK,CAAC;QAC3B,gCAA0B,GAAY,KAAK,CAAC;QAC5C,wBAAkB,GAAY,KAAK,CAAC;QACpC,gBAAU,GAAY,KAAK,CAAC;QAC5B,uBAAiB,GAAW,EAAE,CAAC;QAC/B,mBAAa,GAAW,EAAE,CAAC;QAC3B,cAAQ,GAAW,EAAE,CAAC;QACtB,wBAAkB,GAAW,EAAE,CAAC;QAChC,qBAAe,GAAW,EAAE,CAAC;QAQpC,kCAAkC;QAClC,cAAQ,GAAG,KAAK,CAAC;QAKV,8BAAwB,GAAgC,EAAE,CAAC;QAC3D,gCAA0B,GAAW,EAAE,CAAC;QACxC,8BAAwB,GAAW,CAAC,CAAC;QACrC,eAAS,GAAQ,EAAE,CAAC;QACpB,kBAAY,GAAW,EAAE,CAAC;QAC1B,qBAAe,GAAY,KAAK,CAAC;QACjC,sBAAgB,GAAY,KAAK,CAAC;QAEzC,kFAAkF;QAE3E,oBAAc,GAAW,EAAE,CAAC;QAC5B,aAAO,GAAG,CAAC,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;QAC9F,8BAAwB,GAAG,EAAE,CAAC;QAC9B,oBAAc,GAAW,EAAE,CAAC;QAC5B,kBAAY,GAAW,EAAE,CAAC;QAC1B,gCAA0B,GAAY,KAAK,CAAC;QAC5C,iCAA2B,GAAW,EAAE,CAAC;QACzC,0BAAoB,GAAW,EAAE,CAAC;QAClC,2BAAqB,GAAY,IAAI,CAAC;QACtC,uBAAiB,GAAG,EAAE,CAAC;QACvB,+BAAyB,GAAG,EAAE,CAAC;QAC/B,uBAAiB,GAAY,KAAK,CAAC;QACnC,mCAA6B,GAAG,IAAI,CAAC;QACrC,gBAAU,GAAG,IAAI,CAAC;QAElB,oBAAc,GAAW,EAAE,CAAC;QAC5B,6BAAuB,GAAW,EAAE,CAAC;QACrC,mBAAa,GAAW,EAAE,CAAC;QAO3B,mBAAa,GAAW,EAAE,CAAC;QAC3B,uBAAiB,GAAW,EAAE,CAAC;QAC/B,eAAS,GAAW,EAAE,CAAC;QACvB,8BAAwB,GAAW,EAAE,CAAC;QACtC,oBAAc,GAAY,IAAI,CAAC;QAC/B,mBAAa,GAAW,IAAI,CAAC;QAC7B,oBAAc,GAAW,EAAE,CAAC;QAG5B,gCAA0B,GAAY,IAAI,CAAC;QAgtBlD,kBAAY,GAAG;YACX,iCAAiC;YACjC,KAAI,CAAC,6BAA6B,EAAE,CAAC;YAErC,mCAAmC;YACnC,KAAI,CAAC,cAAc,GAAG,IAAI,CAAC;YAC3B,KAAI,CAAC,wBAAwB,GAAG,EAAE,CAAC;QACvC,CAAC;QA5sBG,IAAI;YAEA,oEAAoE;YAEpE,KAAI,CAAC,kBAAkB,EAAE,CAAC;YAE1B,KAAI,CAAC,iBAAiB,GAAG,IAAI,kHAAiB,EAAE,CAAC;YACjD,KAAI,CAAC,kBAAkB,GAAG,IAAI,mHAAkB,EAAE,CAAC;YACnD,KAAI,CAAC,wBAAwB,GAAG,IAAI,8HAAwB,EAAE,CAAC;YAC/D,KAAI,CAAC,yBAAyB,GAAG,IAAI,+HAAyB,EAAE,CAAC;YACjE,KAAI,CAAC,4BAA4B,GAAG,IAAI,0IAA4B,EAAE,CAAC;YAEvE,KAAI,CAAC,cAAc,GAAG,IAAI,oHAAc,EAAE,CAAC;YAC3C,KAAI,CAAC,cAAc,GAAG,KAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,EAAE,EAAE,gBAAgB,CAAC,CAAC;YAE5E,IAAI,KAAI,CAAC,SAAS,IAAI,EAAE;gBACpB,KAAI,CAAC,gBAAgB,CAAC,wFAAO,CAAC,IAAI,EAAE,2DAA2D,GAAG,KAAI,CAAC,SAAS,CAAC,CAAC;;gBAElH,KAAI,CAAC,gBAAgB,CAAC,wFAAO,CAAC,IAAI,EAAE,6CAA6C,CAAC,CAAC;SAE1F;QACD,OAAO,CAAC,EAAE;YACN,KAAI,CAAC,gBAAgB,CAAC,wFAAO,CAAC,KAAK,EAAE,iEAAiE,GAAG,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;SACzI;;IACL,CAAC;IAAA,CAAC;IAEF,oCAAQ,GAAR;QACI,IAAI;YACA,wBAAwB;YACxB,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YACnD,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YACpD,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YAChD,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YAC/C,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YAC9C,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YAE9C,IAAI,MAAM,CAAC,MAAM,CAAC,0EAAuB,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;gBACpF,MAAM,CAAC,MAAM,CAAC,wEAAqB,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,EAChF;gBACI,mEAAmE;gBACnE,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBACxB,IAAI,CAAC,eAAe,EAAE,CAAC;aAC1B;iBACI;gBACD,IAAI,CAAC,gBAAgB,CAAC,wFAAO,CAAC,KAAK,EAAE,sBAAsB,CAAC,CAAC;gBAC7D,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;gBAC5B,CAAC,CAAC,gBAAgB,CAAC,CAAC,IAAI,EAAE,CAAC;aAC9B;SACJ;QACD,OAAO,CAAC,EAAE;YACN,IAAI,CAAC,gBAAgB,CAAC,wFAAO,CAAC,KAAK,EAAE,mDAAmD,GAAG,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;SAC3H;IAEL,CAAC;IAED,sBAAsB;IACf,2CAAe,GAAtB;QACI,IAAI;YACA,2BAA2B;YAC3B,iCAAiC;YAEjC,0BAA0B;YAC1B,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC;YAC/B,IAAI,CAAC,qBAAqB,EAAE,CAAC;YAE7B,uBAAuB;YACvB,IAAI,CAAC,yBAAyB,EAAE,CAAC;SAEpC;QACD,OAAO,CAAC,EAAE;YACN,IAAI,CAAC,gBAAgB,CAAC,wFAAO,CAAC,KAAK,EAAE,uDAAuD,GAAG,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;SAC/H;IACL,CAAC;IAEM,4CAAgB,GAAvB;QAEI,sCAAsC;QACtC,CAAC,CAAC,0CAA0C,CAAC,CAAC,IAAI,EAAE,CAAC;QAErD,8EAA8E;QAC9E,CAAC,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;QAExC,8DAA8D;QAC9D,CAAC,CAAC,aAAa,CAAC,CAAC,GAAG,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;QAE7C,+DAA+D;QAC/D,IAAI,CAAC,wBAAwB,GAAG,EAAE,CAAC;QACnC,IAAI,CAAC,uBAAuB,GAAG,uEAAuE,CAAC;IAC3G,CAAC;IAED,YAAY;IAGZ,yBAAyB;IACzB,gDAAoB,GAApB;QACI,IAAI;YACA,wCAAwC;YACxC,wEAAwE;YAExE,IAAI,IAAI,CAAC,cAAc,CAAC,yBAAyB,EAAE;gBAC/C,wHAAwH;gBACxH,gEAAgE;gBAEhE,IAAI,CAAC,gBAAgB,CAAC,wFAAO,CAAC,IAAI,EAAE,kEAAkE,CAAC,CAAC;gBAExG,IAAI,CAAC,iBAAiB,CAAC,aAAa,GAAG,CAAC,CAAC;gBAEzC,IAAI,CAAC,qBAAqB,GAAG,KAAK,CAAC;gBAEnC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;gBACxB,oEAAoE;gBAEpE,4BAA4B;gBAC5B,IAAI,CAAC,wBAAwB,EAAE,CAAC;gBAEhC,4CAA4C;aAE/C;iBACI,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,yBAAyB,EAAE;gBACrD,wDAAwD;gBACxD,IAAI,CAAC,iBAAiB,CAAC,aAAa,GAAG,CAAC,CAAC;aAC5C;SACJ;QACD,OAAO,CAAC,EAAE;YACN,IAAI,CAAC,gBAAgB,CAAC,wFAAO,CAAC,KAAK,EAAE,qDAAqD,GAAG,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;SAC7H;IACL,CAAC;IAED,YAAY;IAEZ,4BAA4B;IAE5B,iDAAqB,GAArB;QAAA,iBA+EC;QA9EG,IAAI;YACA,IAAI,CAAC,gBAAgB,CAAC,qBAAqB,EAAE,CAAC,SAAS,CAAC,mBAAS;gBAE7D,2EAA2E;gBAE3E,IAAI,SAAS,CAAC,IAAI,IAAI,IAAI,EAAE;oBAExB,qDAAqD;oBAErD,KAAI,CAAC,gBAAgB,CAAC,wFAAO,CAAC,IAAI,EAAE,0CAA0C,CAAC,CAAC;oBAEhF,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,oBAAU;wBAC7B,KAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;oBACnD,CAAC,CAAC,CAAC;oBAEH,gCAAgC;oBAChC,KAAI,CAAC,wBAAwB,GAAG,KAAI,CAAC,wBAAwB,CAAC,MAAM,CAAC,cAAI,IAAI,WAAI,CAAC,iBAAiB,IAAI,4BAA4B,EAAtD,CAAsD,CAAC;yBAC/H,GAAG,CAAC,YAAE,IAAI,SAAE,CAAC,kBAAkB,EAArB,CAAqB,CAAC,CAAC;oBAEtC,qCAAqC;oBACrC,KAAI,CAAC,YAAY,GAAG,KAAI,CAAC,wBAAwB,CAAC,MAAM,CAAC,cAAI,IAAI,QAAC,IAAI,CAAC,GAAG,IAAI,CAAC,KAAI,CAAC,GAAG,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAI,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,iBAAiB,IAAI,kBAAkB,IAAI,IAAI,CAAC,gBAAgB,CAAC,WAAW,EAAE,IAAI,KAAI,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC,EAA5K,CAA4K,CAAC;yBACzO,GAAG,CAAC,YAAE,IAAI,SAAE,CAAC,kBAAkB,EAArB,CAAqB,CAAC,CAAC,CAAC,CAAC,CAAC;oBAEzC,KAAI,CAAC,WAAW,GAAG,KAAI,CAAC,wBAAwB,CAAC,MAAM,CAAC,cAAI,IAAI,QAAC,IAAI,CAAC,gBAAgB,IAAI,SAAS,CAAC,EAApC,CAAoC,CAAC;yBAChG,GAAG,CAAC,YAAE,IAAI,SAAE,CAAC,kBAAkB,EAArB,CAAqB,CAAC,CAAC,CAAC,CAAC,CAAC;oBAEzC,KAAI,CAAC,aAAa,GAAG,MAAM,CAAC,KAAI,CAAC,wBAAwB,CAAC,MAAM,CAAC,cAAI,IAAI,WAAI,CAAC,gBAAgB,IAAI,gBAAgB,EAAzC,CAAyC,CAAC;yBAC9G,GAAG,CAAC,YAAE,IAAI,SAAE,CAAC,kBAAkB,EAArB,CAAqB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;oBAE1C,KAAI,CAAC,cAAc,GAAG,MAAM,CAAC,KAAI,CAAC,wBAAwB,CAAC,MAAM,CAAC,cAAI,IAAI,WAAI,CAAC,gBAAgB,IAAI,uBAAuB,EAAhD,CAAgD,CAAC;yBACtH,GAAG,CAAC,YAAE,IAAI,SAAE,CAAC,kBAAkB,EAArB,CAAqB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;oBAE1C,IAAI,KAAI,CAAC,wBAAwB,CAAC,MAAM,CAAC,cAAI,IAAI,QAAC,IAAI,CAAC,GAAG,IAAI,KAAI,CAAC,GAAG,IAAI,IAAI,CAAC,gBAAgB,IAAI,4BAA4B,CAAC,EAA/E,CAA+E,CAAC;yBAC5H,GAAG,CAAC,YAAE,IAAI,SAAE,CAAC,kBAAkB,EAArB,CAAqB,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE;wBAC9C,KAAI,CAAC,0BAA0B;4BAC3B,IAAI,CAAC,KAAK,CAAC,KAAI,CAAC,wBAAwB,CAAC,MAAM,CAAC,cAAI,IAAI,QAAC,IAAI,CAAC,GAAG,IAAI,KAAI,CAAC,GAAG,IAAI,IAAI,CAAC,gBAAgB,IAAI,4BAA4B,CAAC,EAA/E,CAA+E,CAAC;iCACnI,GAAG,CAAC,YAAE,IAAI,SAAE,CAAC,kBAAkB,EAArB,CAAqB,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;wBAE5D,4CAA4C;wBAC5C,IAAI,KAAI,CAAC,GAAG,KAAK,MAAM,IAAI,CAAC,KAAI,CAAC,0BAA0B,EAAE;4BAAE,KAAI,CAAC,eAAe,GAAG,IAAI,CAAC;4BAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,IAAI,EAAE,CAAC;yBAAE;wBAEzH,uHAAuH;wBACvH,yHAAyH;wBACzH,IAAI,KAAI,CAAC,GAAG,KAAK,MAAM,IAAI,KAAI,CAAC,SAAS,CAAC,WAAW,EAAE,IAAI,WAAW,EAAE;4BAAE,KAAI,CAAC,eAAe,GAAG,IAAI,CAAC;4BAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,IAAI,EAAE,CAAC;yBAAE;qBACvI;oBAED,0BAA0B;oBAC1B,KAAI,CAAC,yBAAyB,EAAE,CAAC;oBACjC,KAAI,CAAC,cAAc,EAAE,CAAC;oBAEtB,KAAI,CAAC,+BAA+B,EAAE,CAAC;oBAEvC,0CAA0C;oBAC1C,KAAI,CAAC,cAAc,EAAE,CAAC;oBAEtB,KAAI,CAAC,eAAe,GAAG,IAAI,CAAC;oBAC5B,KAAI,CAAC,kBAAkB,GAAG,KAAK,CAAC;oBAChC,iDAAiD;iBAEpD;qBACI;oBACD,KAAI,CAAC,gBAAgB,CAAC,wFAAO,CAAC,KAAK,EAAE,qEAAqE,CAAC,CAAC;oBAC5G,KAAI,CAAC,YAAY,EAAE,CAAC;iBACvB;YAEL,CAAC,EAAE,mBAAS;gBACR,eAAe;gBACf,IAAI,KAAI,CAAC,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,IAAI,KAAI,CAAC,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,IAAI,KAAI,CAAC,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,EAAE;oBACpH,KAAI,CAAC,gBAAgB,CAAC,wFAAO,CAAC,KAAK,EAAE,wEAAwE,CAAC,CAAC;oBAC/G,KAAI,CAAC,YAAY,EAAE,CAAC;iBACvB;YACL,CAAC,CAAC,CAAC;SAEN;QACD,OAAO,CAAC,EAAE;YACN,IAAI,CAAC,gBAAgB,CAAC,wFAAO,CAAC,KAAK,EAAE,+DAA+D,GAAG,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;SACvI;IAEL,CAAC;IAED,YAAY;IAEZ,yBAAyB;IAEjB,yCAAa,GAArB,UAAsB,OAAmB;QACrC,IAAI,IAAI,CAAC,GAAG,IAAI,MAAM;YAClB,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;;YAE/B,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;IACxC,CAAC;IAEO,4CAAgB,GAAxB,UAAyB,OAAmB;QAA5C,iBAyFC;QAvFG,IAAI;YACA,gDAAgD;YAChD,IAAI,mBAAmB,GAAW,EAAE,CAAC;YACrC,IAAI,wBAAwB,GAAW,EAAE,CAAC;YAE1C,IAAI,IAAI,CAAC,cAAc,IAAI,EAAE;gBACzB,mBAAmB,GAAG,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;YAEtE,IAAI,mBAAmB,IAAI,EAAE,EAAE;gBAC3B,IAAI,mBAAmB,KAAK,EAAE,IAAI,CAAC,mBAAmB,IAAI,EAAE,IAAI,mBAAmB,CAAC,MAAM,KAAK,EAAE,CAAC;oBAC9F,IAAI,CAAC,2BAA2B,GAAG,EAAE,CAAC;;oBAEtC,IAAI,CAAC,2BAA2B,GAAG,sBAAsB,CAAC;aACjE;iBACI;gBACD,IAAI,CAAC,2BAA2B,GAAG,0BAA0B,CAAC;aACjE;YAED,IAAI,IAAI,CAAC,2BAA2B,KAAK,EAAE,EAAE;gBAEzC,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC;gBAE/B,IAAI,CAAC,IAAI,CAAC,iBAAiB,IAAI,CAAC,IAAI,CAAC,qBAAqB,EAAE;oBACxD,IAAI,IAAI,CAAC,iBAAiB,IAAI,EAAE;wBAC5B,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC;oBAE3D,wBAAwB,GAAG,IAAI,CAAC,iBAAiB,GAAG,aAAa,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,IAAI,EAAE,EAAE,YAAY,CAAC,CAAC;iBACzH;;oBAEG,wBAAwB,GAAG,IAAI,CAAC,iBAAiB,CAAC;gBAEtD,IAAI,CAAC,aAAa,GAAG,IAAI,gEAAa,EAAE,CAAC;gBACzC,IAAI,CAAC,aAAa,CAAC,GAAG,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC;gBACjD,IAAI,CAAC,aAAa,CAAC,WAAW,GAAG,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC;gBACjE,IAAI,CAAC,aAAa,CAAC,iBAAiB,GAAG,wBAAwB,CAAC,CAAC,yBAAyB;gBAE1F,sBAAsB;gBACtB,IAAI,CAAC,aAAa,CAAC,YAAY,GAAG,IAAI,CAAC,mBAAmB,CAAC;gBAC3D,IAAI,CAAC,aAAa,CAAC,cAAc,GAAG,IAAI,CAAC,sBAAsB,CAAC;gBAEhE,qBAAqB;gBACrB,IAAI,CAAC,aAAa,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC;gBACtE,IAAI,CAAC,aAAa,CAAC,gBAAgB,GAAG,IAAI,CAAC,mBAAmB,CAAC;gBAC/D,IAAI,CAAC,aAAa,CAAC,cAAc,GAAG,IAAI,CAAC,iBAAiB,CAAC;gBAC3D,IAAI,CAAC,aAAa,CAAC,QAAQ,GAAG,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC;gBAC3D,IAAI,CAAC,aAAa,CAAC,aAAa,GAAG,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC;gBACrE,IAAI,CAAC,aAAa,CAAC,YAAY,GAAG,IAAI,CAAC,gBAAgB,CAAC;gBACxD,IAAI,CAAC,aAAa,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC;gBAExD,IAAI,IAAI,CAAC,GAAG,KAAK,MAAM;oBACnB,IAAI,CAAC,gBAAgB,CAAC,wFAAO,CAAC,IAAI,EAAE,+CAA+C,GAAG,IAAI,CAAC,mBAAmB,GAAG,qBAAqB,GAAG,IAAI,CAAC,sBAAsB,CAAC,CAAC;;oBAEtK,IAAI,CAAC,gBAAgB,CAAC,wFAAO,CAAC,IAAI,EAAE,4CAA4C,GAAG,IAAI,CAAC,mBAAmB,GAAG,cAAc,GAAG,IAAI,CAAC,iBAAiB,CAAC,CAAC;gBAE3J,IAAI,CAAC,gBAAgB,CAAC,wFAAO,CAAC,IAAI,EAAE,mCAAmC,GAAG,IAAI,CAAC,gBAAgB,GAAG,eAAe,GAAG,IAAI,CAAC,cAAc,CAAC,CAAC;gBAEzI,qBAAqB;gBACrB,IAAI,CAAC,eAAe,CAAC,aAAa,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,SAAS,CAAC,mBAAS;oBACtE,IAAI,SAAS,IAAI,IAAI,IAAI,SAAS,CAAC,UAAU,IAAI,GAAG,EAAE;wBAElD,IAAI,KAAI,CAAC,GAAG,KAAK,MAAM;4BACnB,KAAI,CAAC,gBAAgB,CAAC,wFAAO,CAAC,IAAI,EAAE,4DAA4D,GAAG,KAAI,CAAC,mBAAmB,GAAG,qBAAqB,GAAG,KAAI,CAAC,sBAAsB,CAAC,CAAC;;4BAEnL,KAAI,CAAC,gBAAgB,CAAC,wFAAO,CAAC,IAAI,EAAE,yDAAyD,GAAG,KAAI,CAAC,mBAAmB,GAAG,cAAc,GAAG,KAAI,CAAC,iBAAiB,CAAC,CAAC;wBAExK,uBAAuB;wBACvB,KAAI,CAAC,kBAAkB,GAAG,KAAK,CAAC;wBAChC,OAAO,CAAC,IAAI,EAAE,CAAC;qBAClB;yBACI;wBACD,KAAI,CAAC,gBAAgB,CAAC,wFAAO,CAAC,KAAK,EAAE,4DAA4D,CAAC,CAAC;wBACnG,KAAI,CAAC,kBAAkB,GAAG,KAAK,CAAC;wBAChC,KAAI,CAAC,YAAY,EAAE,CAAC;qBACvB;gBAEL,CAAC,EAAE,mBAAS;oBACR,IAAI,KAAI,CAAC,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,IAAI,KAAI,CAAC,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,IAAI,KAAI,CAAC,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,EAAE;wBACpH,KAAI,CAAC,gBAAgB,CAAC,wFAAO,CAAC,KAAK,EAAE,4DAA4D,CAAC,CAAC;wBACnG,KAAI,CAAC,kBAAkB,GAAG,KAAK,CAAC;wBAChC,KAAI,CAAC,YAAY,EAAE,CAAC;qBACvB;gBACL,CAAC,CAAC,CAAC;aACN;SACJ;QACD,OAAO,CAAC,EAAE;YACN,IAAI,CAAC,gBAAgB,CAAC,wFAAO,CAAC,KAAK,EAAE,mDAAmD,GAAG,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;SAC3H;IACL,CAAC;IAEO,6CAAiB,GAAzB,UAA0B,OAAmB;QAA7C,iBAoGC;QAlGG,IAAI;YACA,gDAAgD;YAChD,IAAI,mBAAmB,GAAW,EAAE,CAAC;YACrC,IAAI,wBAAwB,GAAW,EAAE,CAAC;YAE1C,IAAI,IAAI,CAAC,cAAc,IAAI,EAAE;gBACzB,mBAAmB,GAAG,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;YAEtE,IAAI,mBAAmB,IAAI,EAAE,EAAE;gBAC3B,IAAI,mBAAmB,KAAK,EAAE,IAAI,CAAC,mBAAmB,IAAI,EAAE,IAAI,mBAAmB,CAAC,MAAM,KAAK,EAAE,CAAC;oBAC9F,IAAI,CAAC,2BAA2B,GAAG,EAAE,CAAC;;oBAEtC,IAAI,CAAC,2BAA2B,GAAG,sBAAsB,CAAC;aACjE;iBACI;gBACD,IAAI,CAAC,2BAA2B,GAAG,0BAA0B,CAAC;aACjE;YAED,IAAI,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,KAAK,EAAE;gBAChC,IAAI,CAAC,oBAAoB,GAAG,4BAA4B,CAAC;;gBAEzD,IAAI,CAAC,oBAAoB,GAAG,EAAE,CAAC;YAEnC,IAAI,IAAI,CAAC,2BAA2B,KAAK,EAAE,IAAI,IAAI,CAAC,oBAAoB,KAAK,EAAE,EAAE;gBAE7E,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC;gBAE/B,IAAI,IAAI,CAAC,iBAAiB,IAAI,EAAE;oBACxB,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC;gBAC3D,wBAAwB,GAAG,IAAI,CAAC,iBAAiB,CAAC;gBAEtD,IAAI,CAAC,iBAAiB,GAAG,IAAI,oEAAiB,EAAE,CAAC;gBAEjD,IAAI,CAAC,iBAAiB,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC;gBAC1D,IAAI,CAAC,iBAAiB,CAAC,sBAAsB,GAAG,EAAE,CAAC;gBACnD,IAAI,CAAC,iBAAiB,CAAC,YAAY,GAAG,GAAG,CAAC;gBAC1C,IAAI,CAAC,iBAAiB,CAAC,oBAAoB,GAAG,iBAAiB,CAAC;gBAChE,IAAI,CAAC,iBAAiB,CAAC,iBAAiB,GAAG,wBAAwB,CAAC;gBACpE,IAAI,CAAC,iBAAiB,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;gBAChD,IAAI,CAAC,iBAAiB,CAAC,kBAAkB,GAAG,IAAI,CAAC,kBAAkB,CAAC;gBACpE,IAAI,CAAC,iBAAiB,CAAC,oBAAoB,GAAG,KAAK,CAAC;gBACpD,IAAI,CAAC,iBAAiB,CAAC,gBAAgB,GAAG,KAAK,CAAC;gBAChD,IAAI,CAAC,iBAAiB,CAAC,YAAY,GAAG,IAAI,CAAC,gBAAgB,CAAC;gBAC5D,IAAI,CAAC,iBAAiB,CAAC,mBAAmB,GAAG,EAAE,CAAC;gBAChD,IAAI,CAAC,iBAAiB,CAAC,aAAa,GAAG,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC;gBACzE,IAAI,CAAC,iBAAiB,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC;gBAC1D,IAAI,CAAC,iBAAiB,CAAC,cAAc,GAAG,mBAAmB,CAAC;gBAC5D,IAAI,CAAC,iBAAiB,CAAC,qBAAqB,GAAG,IAAI,CAAC;gBACpD,IAAI,CAAC,iBAAiB,CAAC,qBAAqB,GAAG,IAAI,CAAC;gBACpD,IAAI,CAAC,iBAAiB,CAAC,qBAAqB,GAAG,IAAI,CAAC;gBACpD,IAAI,CAAC,iBAAiB,CAAC,qBAAqB,GAAG,EAAE,CAAC;gBAClD,IAAI,CAAC,iBAAiB,CAAC,qBAAqB,GAAG,EAAE,CAAC;gBAClD,IAAI,CAAC,iBAAiB,CAAC,qBAAqB,GAAG,EAAE,CAAC;gBAClD,IAAI,CAAC,iBAAiB,CAAC,YAAY,GAAG,IAAI,CAAC,mBAAmB,CAAC;gBAC/D,IAAI,CAAC,iBAAiB,CAAC,YAAY,GAAG,EAAE,CAAC;gBACzC,IAAI,CAAC,iBAAiB,CAAC,cAAc,GAAG,IAAI,CAAC,sBAAsB,CAAC;gBACpE,IAAI,CAAC,iBAAiB,CAAC,gBAAgB,GAAG,IAAI,CAAC,YAAY,CAAC;gBAC5D,IAAI,CAAC,iBAAiB,CAAC,2BAA2B,GAAG,EAAE,CAAC;gBACxD,IAAI,CAAC,iBAAiB,CAAC,sBAAsB,GAAG,IAAI,CAAC,4BAA4B,EAAE,CAAC;gBACpF,IAAI,CAAC,iBAAiB,CAAC,wBAAwB,GAAG,CAAC,CAAC;gBACpD,IAAI,CAAC,iBAAiB,CAAC,mBAAmB,GAAG,EAAE,CAAC;gBAChD,IAAI,CAAC,iBAAiB,CAAC,eAAe,GAAG,IAAI,CAAC,eAAe,CAAC;gBAG9D,IAAI,CAAC,gBAAgB,CAAC,wFAAO,CAAC,IAAI,EAAE,+CAA+C,GAAG,IAAI,CAAC,mBAAmB,GAAG,qBAAqB,GAAG,IAAI,CAAC,sBAAsB,CAAC,CAAC;gBACtK,IAAI,CAAC,gBAAgB,CAAC,wFAAO,CAAC,IAAI,EAAE,mCAAmC,GAAG,IAAI,CAAC,gBAAgB,GAAG,eAAe,GAAG,IAAI,CAAC,cAAc,CAAC,CAAC;gBAGzI,qBAAqB;gBACrB,IAAI,CAAC,eAAe,CAAC,iBAAiB,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,SAAS,CAAC,mBAAS;oBAC9E,qDAAqD;oBACrD,IAAI,SAAS,IAAI,IAAI,IAAI,SAAS,CAAC,UAAU,IAAI,GAAG,EAAE;wBAElD,6DAA6D;wBAC7D,KAAI,CAAC,gBAAgB,CAAC,wFAAO,CAAC,IAAI,EAAE,4DAA4D,GAAG,KAAI,CAAC,mBAAmB,GAAG,qBAAqB,GAAG,KAAI,CAAC,sBAAsB,CAAC,CAAC;wBAEnL,uBAAuB;wBACvB,KAAI,CAAC,kBAAkB,GAAG,KAAK,CAAC;wBAChC,OAAO,CAAC,IAAI,EAAE,CAAC;qBAClB;yBACI;wBACD,KAAI,CAAC,gBAAgB,CAAC,wFAAO,CAAC,KAAK,EAAE,4DAA4D,CAAC,CAAC;wBACnG,KAAI,CAAC,kBAAkB,GAAG,KAAK,CAAC;wBAChC,KAAI,CAAC,YAAY,EAAE,CAAC;qBACvB;gBAEL,CAAC,EAAE,mBAAS;oBACR,IAAI,KAAI,CAAC,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,IAAI,KAAI,CAAC,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,IAAI,KAAI,CAAC,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,EAAE;wBACpH,KAAI,CAAC,gBAAgB,CAAC,wFAAO,CAAC,KAAK,EAAE,4DAA4D,CAAC,CAAC;wBACnG,KAAI,CAAC,kBAAkB,GAAG,KAAK,CAAC;wBAChC,KAAI,CAAC,YAAY,EAAE,CAAC;qBACvB;gBACL,CAAC,CAAC,CAAC;aACN;SACJ;QACD,OAAO,CAAC,EAAE;YACN,IAAI,CAAC,gBAAgB,CAAC,wFAAO,CAAC,KAAK,EAAE,mDAAmD,GAAG,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;SAC3H;IACL,CAAC;IAED,kCAAkC;IAE5B,yDAA6B,GAApC;QACK,IAAI;YACA,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;YACxB,IAAI,CAAC,iBAAiB,CAAC,aAAa,GAAG,CAAC,CAAC;YAEzC,8CAA8C;YAC9C,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACnG,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;YAC5B,IAAI,CAAC,2BAA2B,GAAG,KAAK,CAAC;YACzC,IAAI,CAAC,kBAAkB,GAAG,KAAK,CAAC;YAChC,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;YACzB,IAAI,CAAC,iBAAiB,GAAG,EAAE,CAAC;YAC5B,IAAI,CAAC,cAAc,GAAG,EAAE,CAAC;YACzB,IAAI,CAAC,gBAAgB,GAAG,KAAK,CAAC;YAC9B,IAAI,CAAC,0BAA0B,GAAG,KAAK,CAAC;YACxC,yCAAyC;YACzC,IAAI,CAAC,2BAA2B,GAAG,EAAE,CAAC;YACtC,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC;YAC7B,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;YACvB,IAAI,CAAC,6BAA6B,GAAG,IAAI,CAAC;YAE1C,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC;YAElC,mCAAmC;YACnC,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;YAC3B,IAAI,CAAC,wBAAwB,GAAG,EAAE,CAAC;YAEnC,CAAC,CAAC,gBAAgB,CAAC,CAAC,IAAI,EAAE,CAAC;YAE3B,sCAAsC;YACtC,IAAI,CAAC,gBAAgB,CAAC,wFAAO,CAAC,IAAI,EAAE,0BAA0B,CAAC,CAAC;SACnE;QACD,OAAO,CAAC,EAAE;YACN,IAAI,CAAC,gBAAgB,CAAC,wFAAO,CAAC,KAAK,EAAE,0EAA0E,GAAG,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;SAClJ;IACL,CAAC;IAGD,0EAA8C,GAA9C,UAA+C,MAAM;QACjD,IAAI;YAEA,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,CAAC;YAC9B,+CAA+C;YAC/C,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;YACvB,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;YAEzB,sBAAsB;YACtB,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC;SAC/B;QACD,OAAO,CAAC,EAAE;YACN,IAAI,CAAC,gBAAgB,CAAC,wFAAO,CAAC,KAAK,EAAE,kFAAkF,GAAG,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;SAC1J;IAEL,CAAC;IAED,aAAa;IAEb,yBAAyB;IAEzB,wCAAY,GAAZ;QACI,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACtB,IAAI,CAAC,kBAAkB,GAAG,KAAK,CAAC;QAChC,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;QACzB,IAAI,CAAC,0BAA0B,GAAG,KAAK,CAAC;QACxC,IAAI,CAAC,kBAAkB,GAAG,KAAK,CAAC;QAEhC,mCAAmC;QACnC,CAAC,CAAC,gBAAgB,CAAC,CAAC,IAAI,EAAE,CAAC;QAC3B,gDAAgD;IACpD,CAAC;IAEO,iDAAqB,GAA7B,UAA8B,MAAM;QAChC,IAAI,CAAC,YAAY,EAAE,CAAC;IACxB,CAAC;IAEO,6CAAiB,GAAzB,UAA0B,iBAAyB;QAC/C,IAAI,iBAAiB,CAAC,MAAM,IAAI,EAAE,EAAE;YAChC,kCAAkC;YAClC,OAAO,iBAAiB,CAAC,OAAO,CAAC,uBAAuB,EAAE,UAAU,CAAC,CAAC;SACzE;QACD,OAAO,iBAAiB;IAC5B,CAAC;IAEO,8CAAkB,GAA1B;QAAA,iBA8BC;QA7BG,IAAI,eAAe,GAAG,KAAK,CAAC;QAE5B,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,SAAS,CAAC,gBAAM;YACnC,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE;gBACtB,eAAe,GAAG,IAAI,CAAC;gBACvB,IAAI,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;gBACnC,IAAI,OAAO,GAAG,IAAI,GAAG,CAAC,uBAAuB,GAAG,SAAS,CAAC,CAAC,YAAY;gBACvE,KAAI,CAAC,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC;gBAC3C,KAAI,CAAC,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC;gBACjD,KAAI,CAAC,iBAAiB,GAAG,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC;gBACzD,KAAI,CAAC,SAAS,GAAG,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;aACtC;QACL,CAAC,CAAC,CAAC;QAEH,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,eAAe,EAAE;YAExD,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;YAChE,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;YAExD,gCAAgC;YAChC,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC;gBAClC,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;YAC7D,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,EAAE,8BAA8B;gBAClE,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;SACxD;QAED,uCAAuC;QACvC,IAAI,IAAI,CAAC,GAAG,KAAK,IAAI;YACjB,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC;IACxB,CAAC;IAEM,qDAAyB,GAAhC;QAAA,iBAOC;QALG,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,wBAAwB,CAAC,MAAM,CAAC,cAAI,IAAI,QAAC,IAAI,CAAC,GAAG,IAAI,KAAI,CAAC,GAAG,IAAI,IAAI,CAAC,iBAAiB,IAAI,sBAAsB,CAAC,EAA1E,CAA0E,CAAC;aACzI,GAAG,CAAC,YAAE,IAAI,SAAE,CAAC,kBAAkB,EAArB,CAAqB,CAAC,CAAC,CAAC,CAAC,CAAC;QAEzC,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,wBAAwB,CAAC,MAAM,CAAC,cAAI,IAAI,QAAC,IAAI,CAAC,GAAG,IAAI,KAAI,CAAC,GAAG,IAAI,IAAI,CAAC,iBAAiB,IAAI,eAAe,CAAC,EAAnE,CAAmE,CAAC;aAChI,GAAG,CAAC,YAAE,IAAI,SAAE,CAAC,kBAAkB,EAArB,CAAqB,CAAC,CAAC,CAAC,CAAC,CAAC;IAC7C,CAAC;IAEM,6CAAiB,GAAxB,UAAyB,GAAG;QACxB,OAAO,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IACnC,CAAC;IAEO,0CAAc,GAAtB;QACI,IAAI,IAAI,CAAC,GAAG,KAAK,IAAI,IAAI,IAAI,CAAC,GAAG,KAAK,IAAI;YACtC,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;aAC9B,IAAI,IAAI,CAAC,GAAG,KAAK,KAAK;YACvB,IAAI,CAAC,WAAW,GAAG,sBAAsB,CAAC;aACzC,IAAI,IAAI,CAAC,GAAG,KAAK,KAAK;YACvB,IAAI,CAAC,WAAW,GAAG,iBAAiB,CAAC;aACpC,IAAI,IAAI,CAAC,GAAG,KAAK,MAAM;YACxB,IAAI,CAAC,WAAW,GAAG,sBAAsB,CAAC;IAClD,CAAC;IAEM,iDAAqB,GAA5B,UAA6B,OAAe;QACxC,IAAI,OAAO,IAAI,EAAE;YACb,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC;;YAE7B,IAAI,CAAC,gBAAgB,GAAG,KAAK,CAAC;IACtC,CAAC;IAGO,qDAAyB,GAAjC;QACI,IAAI;YAEA,QAAQ,IAAI,CAAC,SAAS,CAAC,iBAAiB,EAAE,EAAE;gBACxC,KAAK,WAAW;oBACZ,IAAI,CAAC,aAAa,GAAG,4BAA4B,CAAC;oBAClD,MAAM;gBAEV,OAAO,CAAC,CAAC;oBACL,IAAI,CAAC,aAAa,GAAG,EAAE,CAAC;oBACxB,MAAM;iBACT;aACJ;SACJ;QACD,OAAO,CAAC,EAAE;YACN,IAAI,CAAC,gBAAgB,CAAC,wFAAO,CAAC,KAAK,EAAE,iEAAiE,GAAG,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;SAC1I;IACL,CAAC;IAEO,4CAAgB,GAAxB,UAAyB,OAAe,EAAE,UAAkB;QAExD,IAAI,CAAC,UAAU,GAAG,IAAI,2FAAU,EAAE,CAAC;QAEnC,IAAI,CAAC,UAAU,CAAC,YAAY,GAAG,CAAC,CAAC,CAAC,mBAAmB;QACrD,IAAI,CAAC,UAAU,CAAC,GAAG,GAAG,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;QACvF,IAAI,CAAC,UAAU,CAAC,UAAU,GAAG,EAAE,CAAC;QAChC,IAAI,CAAC,UAAU,CAAC,gBAAgB,GAAG,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC;QACtG,IAAI,CAAC,UAAU,CAAC,SAAS,GAAG,IAAI,CAAC,YAAY,CAAC;QAC9C,IAAI,CAAC,UAAU,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC;QACrD,IAAI,CAAC,UAAU,CAAC,OAAO,GAAG,OAAO,CAAC;QAClC,IAAI,CAAC,UAAU,CAAC,UAAU,GAAG,UAAU,CAAC;QACxC,IAAI,CAAC,UAAU,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;QAE/C,iBAAM,wBAAwB,YAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACpD,CAAC;IAEO,oDAAwB,GAAhC;QAEI,IAAI,CAAC,iBAAiB,CAAC,GAAG,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC;QACrD,IAAI,CAAC,iBAAiB,CAAC,UAAU,GAAG,EAAE,CAAC;QACvC,IAAI,CAAC,iBAAiB,CAAC,WAAW,GAAG,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC;QACrE,IAAI,CAAC,iBAAiB,CAAC,SAAS,GAAG,IAAI,CAAC,YAAY,CAAC;QACrD,IAAI,CAAC,iBAAiB,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC;QAC1E,IAAI,IAAI,CAAC,cAAc,CAAC,GAAG,IAAI,MAAM;YACjC,IAAI,CAAC,iBAAiB,CAAC,uBAAuB,GAAG,MAAM,CAAC;;YAExD,IAAI,CAAC,iBAAiB,CAAC,uBAAuB,GAAG,gBAAgB,CAAC;QACtE,IAAI,CAAC,iBAAiB,CAAC,0BAA0B,GAAG,2BAA2B,CAAC;QAChF,IAAI,CAAC,iBAAiB,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC;QAC5D,IAAI,CAAC,iBAAiB,CAAC,YAAY,GAAG,CAAC,CAAC,CAAC,UAAU;QACnD,IAAI,CAAC,iBAAiB,CAAC,uBAAuB,GAAG,IAAI,CAAC,uBAAuB,CAAC;QAC9E,IAAI,CAAC,iBAAiB,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;QACtD,IAAI,CAAC,iBAAiB,CAAC,eAAe,GAAG,OAAO,CAAC;QAEjD,IAAI,CAAC,iBAAiB,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC;QAC1D,IAAI,CAAC,iBAAiB,CAAC,qBAAqB,GAAG,EAAE,CAAC,CAAC,0DAA0D;QAC7G,IAAI,CAAC,iBAAiB,CAAC,UAAU,GAAG,KAAK,CAAC;QAC1C,IAAI,CAAC,iBAAiB,CAAC,aAAa,GAAG,EAAE,CAAC,CAAC,0DAA0D;QACrG,IAAI,CAAC,iBAAiB,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC;QAC1E,IAAI,CAAC,iBAAiB,CAAC,sBAAsB,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,iBAAiB,CAAC,kBAAkB,GAAG,kBAAkB,CAAC;QAC/D,IAAI,CAAC,iBAAiB,CAAC,gBAAgB,GAAG,IAAI,CAAC,YAAY,CAAC;QAC5D,IAAI,CAAC,iBAAiB,CAAC,iBAAiB,GAAG,MAAM,CAAC;IACtD,CAAC;IAEO,wDAA4B,GAApC,UAAqC,MAAM;QACvC,IAAI,CAAC,kBAAkB,GAAG,MAAM,CAAC;QAEjC,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,kBAAkB,CAAC,gBAAgB,CAAC;QACjE,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC,kBAAkB,CAAC,sBAAsB,CAAC;QAC7E,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,kBAAkB,CAAC,oBAAoB,CAAC;QACxE,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC,kBAAkB,CAAC,sBAAsB,CAAC;QAC7E,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,kBAAkB,CAAC,mBAAmB,CAAC;QACvE,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,kBAAkB,CAAC,iBAAiB,CAAC;QAEnE,mDAAmD;QACnD,IAAI,CAAC,mCAAmC,EAAE,CAAC;IAC/C,CAAC;IAEO,2DAA+B,GAAvC;QAEI,IAAI,CAAC,wBAAwB,CAAC,iBAAiB,GAAG,IAAI,CAAC,iBAAiB,CAAC;QACzE,IAAI,CAAC,wBAAwB,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC;QAC/D,IAAI,CAAC,wBAAwB,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC;QAC7C,IAAI,CAAC,wBAAwB,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC;QACnE,IAAI,CAAC,wBAAwB,CAAC,YAAY,GAAG,CAAC,CAAC,CAAC,kBAAkB;QAClE,IAAI,CAAC,wBAAwB,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;QAC7D,IAAI,CAAC,wBAAwB,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC;QAC/D,IAAI,CAAC,wBAAwB,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC;IACvE,CAAC;IACO,4DAAgC,GAAxC,UAAyC,MAAM;QAC3C,IAAI,CAAC,yBAAyB,GAAG,MAAM,CAAC;QAExC,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,yBAAyB,CAAC,cAAc,CAAC;QACpE,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,yBAAyB,CAAC,aAAa,CAAC;QAClE,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,yBAAyB,CAAC,cAAc,CAAC,GAAG,CAAC;QAE7D,IAAI,CAAC,8CAA8C,CAAC,MAAM,CAAC,CAAC;IAChE,CAAC;IAEO,+DAAmC,GAA3C;QAEI,IAAI,CAAC,4BAA4B,CAAC,gBAAgB,GAAG,IAAI,CAAC,gBAAgB,CAAC;QAC3E,IAAI,CAAC,4BAA4B,CAAC,sBAAsB,GAAG,IAAI,CAAC,sBAAsB,CAAC;QACvF,IAAI,CAAC,4BAA4B,CAAC,wBAAwB,GAAG,IAAI,CAAC,wBAAwB,CAAC;QAC3F,IAAI,CAAC,4BAA4B,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC;QACrE,IAAI,CAAC,4BAA4B,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC;QACjD,IAAI,CAAC,4BAA4B,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC;QACvE,IAAI,CAAC,4BAA4B,CAAC,YAAY,GAAG,CAAC,CAAC,CAAC,kBAAkB;QACtE,IAAI,CAAC,4BAA4B,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;IACrE,CAAC;IAEO,wDAA4B,GAApC;QACI,IAAI,UAAU,GAAG,EAAE,CAAC;QACpB,QAAQ,IAAI,CAAC,SAAS,CAAC,iBAAiB,EAAE,EAAE;YACxC,KAAK,WAAW;gBACZ,UAAU,GAAG,kBAAkB,CAAC;gBAChC,MAAM;YAEV,OAAO,CAAC,CAAC;gBACL,UAAU,GAAG,EAAE,CAAC;gBAChB,MAAM;aACT;SACJ;QAED,OAAO,UAAU,CAAC;IAEtB,CAAC;IAED,yBAAyB;IAEjB,0CAAc,GAAtB;QAAA,iBAUC;QARG,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,cAAc,CAAC,CAAC,SAAS,CAAC,UAAC,GAAG;YAC9E,IAAI,GAAG,IAAI,CAAC,KAAI,CAAC,cAAc,EAAE;gBAC7B,iBAAiB;gBACjB,KAAI,CAAC,cAAc,CAAC,KAAI,CAAC,cAAc,CAAC,CAAC;gBACzC,uCAAuC;gBACvC,KAAI,CAAC,YAAY,GAAG,UAAU,CAAC,KAAI,CAAC,YAAY,CAAC,IAAI,CAAC,KAAI,CAAC,EAAE,KAAI,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC;aAC5F;QACL,CAAC,CAAC;IACN,CAAC;IAWO,0CAAc,GAAtB,UAAuB,OAAO;QAA9B,iBAYC;QAXG,IAAI,OAAO,GAAG,OAAO,CAAC;QAEtB,IAAI,CAAC,QAAQ,GAAG,WAAW,CAAC;YACxB,KAAI,CAAC,wBAAwB,GAAG,sBAAsB,GAAG,OAAO,CAAC;YACjE,OAAO,EAAE,CAAC;YAEV,IAAI,OAAO,GAAG,CAAC,EAAE;gBACb,aAAa,CAAC,KAAI,CAAC,QAAQ,CAAC,CAAC;gBAC7B,KAAI,CAAC,wBAAwB,GAAG,EAAE,CAAC;aACtC;QACL,CAAC,EAAE,IAAI,CAAC,CAAC;IACb,CAAC;IAED,iCAAiC;IAKjC,mCAAO,GAAP,UAAQ,KAAK;QACT,IAAI,IAAI,CAAC,wBAAwB,IAAI,EAAE,EAAE;YACrC,YAAY,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YAChC,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAC7B,IAAI,CAAC,wBAAwB,GAAG,EAAE,CAAC;SACtC;IACL,CAAC;;gBA/uBmC,iEAAe;gBAAiB,8DAAc;gBAAuB,0DAAW;gBAC/F,wDAAQ;gBAAe,2DAAe;gBAAwB,0EAAqB;gBAC1E,gGAAiB;gBAA2B,6FAAgB;gBAA4B,2FAAgB;gBAClH,2DAAe;;IAzFO;QAAzC,+DAAS,CAAC,qEAAU,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;wEAAoB,qEAAU;gEAAC;IA+zBxE;QAJC,kEAAY,CAAC,kBAAkB,EAAE,CAAC,QAAQ,CAAC,CAAC;QAC5C,kEAAY,CAAC,kBAAkB,EAAE,CAAC,QAAQ,CAAC,CAAC;QAC5C,kEAAY,CAAC,cAAc,EAAE,CAAC,QAAQ,CAAC,CAAC;QACxC,kEAAY,CAAC,YAAY,EAAE,CAAC,QAAQ,CAAC,CAAC;;;;oDAOtC;IAv0BQ,iBAAiB;QAL7B,+DAAS,CAAC;YACP,0JAAsC;YAEtC,SAAS,EAAE,CAAC,wDAAQ,EAAE,iEAAe,EAAE,gGAAiB,EAAE,6FAAgB,EAAE,2FAAgB,CAAC;;SAChG,CAAC;+EAyFsC,iEAAe,EAAiB,8DAAc,EAAuB,0DAAW;YAC/F,wDAAQ,EAAe,2DAAe,EAAwB,0EAAqB;YAC1E,gGAAiB,EAA2B,6FAAgB,EAA4B,2FAAgB;YAClH,2DAAe;OA3F1B,iBAAiB,CA60B7B;IAAD,wBAAC;CAAA,CA70BsC,4FAAgB,GA60BtD;AA70B6B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AClC9B,iBAAiB;AACjB,yDAAyD;AAChB;AACM;AACA;AACmB;AACd;AACpD,cAAc;AACgC;AACA;AACA;AACK;AAEnD,aAAa;AACoC;AAEjD,YAAY;AACZ,6EAA6E;AAEpB;AACL;AACV;AACkB;AACyC;AACS;AACG;AACY;AAChF;AAC7C,6DAA6D;AAoC7D;IAAA;IAA8B,CAAC;IAAlB,cAAc;QAlC1B,8DAAQ,CAAC;YACN,OAAO,EAAE;gBACL,iBAAiB;gBACjB,4DAAY;gBACZ,4DAAY,CAAC,QAAQ,CAAC,iEAAc,CAAC;gBACrC,0DAAW;gBACX,kEAAmB;gBACnB,iEAAc;gBACd,wDAAa,CAAC,OAAO,CAAC;oBAClB,MAAM,EAAE,yCAAyC;iBAClD,CAAC;gBAEJ,sBAAsB;gBACtB,gEAAiB;gBACjB,2DAAe;gBACf,2DAAe;gBACf,2DAAe;gBAEf,aAAa;gBACb,6DAAU;gBACV,0EAAe;gBACf,iHAAkB;gBAClB,0HAAwB;gBACxB,6HAAyB;gBACzB,yIAA6B;gBAC7B,sBAAsB;aACzB;YACD,OAAO,EAAE,CAAC,sEAAiB,CAAC;YAC5B,YAAY,EAAE;gBACV,sEAAiB;aACpB;YACD,SAAS,EAAE,CAAC,2DAAe,CAAC;SAC/B,CAAC;OAEW,cAAc,CAAI;IAAD,qBAAC;CAAA;AAAJ;;;;;;;;;;;;;AC7D3B;AAAA;AAAA;AAAyD;AAClD,IAAM,cAAc,GAAW;IAClC;QACI,IAAI,EAAE,YAAY;QAClB,SAAS,EAAE,qEAAiB;KAC/B;CACJ,CAAC;;;;;;;;;;;;;;;;;;;;;ACTyC;AAEO;AAIL;AACkB;AAQ/D;IAMI,wBAAwB;IAGxB,yBAAoB,IAAqB,EAAU,MAAkB,EAAU,MAAgC;QAA3F,SAAI,GAAJ,IAAI,CAAiB;QAAU,WAAM,GAAN,MAAM,CAAY;QAAU,WAAM,GAAN,MAAM,CAA0B;QAPxG,sBAAiB,GAAG,cAAc,CAAC;QACnC,mBAAc,GAAG,WAAW,CAAC;QAC7B,oBAAe,GAAG,aAAa,CAAC;QAChC,YAAO,GAAQ,EAAE,CAAC;IAI0F,CAAC;IAEpH,uCAAa,GAAb,UAAc,aAA4B;QAEtC,mDAAmD;QAEnD,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAM;YACvB,GAAG,EAAE,IAAI,CAAC,eAAe,GAAG,kBAAkB;YAC9C,IAAI,EAAE,aAAa;YACnB,mBAAmB;YACnB,yBAAyB,EAAE,IAAI;YAC/B,yBAAyB,EAAE,GAAG;SACjC,CAAC,CAAC;IACP,CAAC;IAED,2CAAiB,GAAjB,UAAkB,iBAAoC;QAElD,wDAAwD;QAExD,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAM;YACvB,GAAG,EAAE,IAAI,CAAC,eAAe,GAAG,mBAAmB;YAC/C,IAAI,EAAE,iBAAiB;YACvB,mBAAmB;YACnB,yBAAyB,EAAE,IAAI;YAC/B,yBAAyB,EAAE,GAAG;SACjC,CAAC,CAAC;IACP,CAAC;IAED,wDAA8B,GAA9B,UAA+B,GAAW,EAAE,SAAiB,EAAE,aAAqB,EAAE,cAAsB;QACxG,IAAI,MAAM,GAAW,EAAE,CAAC;QAExB,MAAM,GAAG,GAAG,GAAG,GAAG,GAAG,SAAS,GAAG,GAAG,GAAG,aAAa,GAAG,GAAG,GAAG,cAAc,CAAC;QAE5E,iDAAiD;QAEjD,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAM;YACtB,GAAG,EAAE,IAAI,CAAC,eAAe,GAAG,mCAAmC,GAAG,MAAM;SAC3E,CAAC,CAAC;IACP,CAAC;IAED,qCAAqC;IAC7B,qCAAW,GAAnB,UAAoB,KAAU;QAE1B,mDAAmD;QACnD,6EAA6E;QAC7E,mCAAmC;IACvC,CAAC;;gBA9CyB,0DAAe;gBAAkB,+DAAU;gBAAkB,4EAAwB;;IATtG,eAAe;QAD3B,gEAAU,EAAE;+EAUiB,0DAAe,EAAkB,+DAAU,EAAkB,4EAAwB;OATtG,eAAe,CAyD3B;IAAD,sBAAC;CAAA;AAzD2B;;;;;;;;;;;;;ACf5B;AAAA;AAAA;AAAA;AAAA,8BAA8B;AAC9B,4BAA4B;AAC5B,0BAA0B;AAC1B,GAAG;AAEH;;;;;;;;;;;;;;;;EAgBE;AAEF;IAAA;QACI,QAAG,GAAW,EAAE,CAAC;QACjB,iBAAY,GAAW,EAAE,CAAC;QAC1B,sBAAiB,GAAW,EAAE,CAAC;QAC/B,mBAAc,GAAW,EAAE,CAAC;QAC5B,iBAAY,GAAW,CAAC,CAAC;QACzB,gBAAW,GAAW,EAAE,CAAC;QACzB,mBAAc,GAAW,EAAE,CAAC;QAC5B,iBAAY,GAAW,EAAE,CAAC;IAC9B,CAAC;IAAD,+BAAC;AAAD,CAAC;;AACD;IAAA;QAEI,kBAAa,GAAW,EAAE,CAAC;IAC/B,CAAC;IAAD,gCAAC;AAAD,CAAC;;AAED;IAAA;QACI,mBAAc,GAAY,KAAK,CAAC;QAChC,8BAAyB,GAAY,KAAK,CAAC;QAC3C,gBAAW,GAAW,EAAE,CAAC;QACzB,kBAAa,GAAW,EAAE,CAAC;QAC3B,aAAQ,GAAW,EAAE,CAAC;QACtB,QAAG,GAAW,EAAE,CAAC;QACjB,kBAAa,GAAW,EAAE,CAAC;QAC3B,mBAAc,GAAW,EAAE,CAAC;QAC5B,oBAAe,GAAW,EAAE,CAAC;QAC7B,iBAAY,GAAW,EAAE,CAAC;QAC1B,sBAAiB,GAAW,EAAE,CAAC;QAC/B,iBAAY,GAAW,EAAE,CAAC;QAC1B,gBAAW,GAAW,EAAE,CAAC;QACzB,gBAAW,GAAW,EAAE,CAAC;QACzB,kBAAa,GAAY,KAAK,CAAC;QAC/B,iBAAY,GAAW,EAAE,CAAC;QAC1B,wBAAmB,GAAW,EAAE,CAAC;IACrC,CAAC;IAAD,qBAAC;AAAD,CAAC;;;;;;;;;;;;;ACxDD,2BAA2B,+BAA+B,GAAG,gBAAgB,mCAAmC,GAAG,qBAAqB,2BAA2B,oBAAoB,0BAA0B,0BAA0B,mCAAmC,MAAM,2BAA2B,qBAAqB,qBAAqB,6BAA6B,+BAA+B,sBAAsB,UAAU,+CAA+C,cAAc,uCAAuC,OAAO,yBAAyB,qBAAqB,OAAO,GAAG,WAAW,uDAAuD,gDAAgD,oBAAoB,GAAG,WAAW,gCAAgC,mCAAmC,GAAG,eAAe,yCAAyC,+BAA+B,GAAG,aAAa,yBAAyB,qBAAqB,GAAG,oBAAoB,kCAAkC,GAAG,kBAAkB,6BAA6B,GAAG,uBAAuB,oCAAoC,GAAG,oBAAoB,0BAA0B,GAAG,iBAAiB,0BAA0B,wBAAwB,GAAG,kBAAkB,0BAA0B,sBAAsB,uBAAuB,GAAG,2BAA2B,0BAA0B,sBAAsB,uBAAuB,qBAAqB,GAAG,yBAAyB,oCAAoC,mBAAmB,GAAG,OAAO,oCAAoC,uBAAuB,GAAG,YAAY,sBAAsB,8BAA8B,GAAG,aAAa,sBAAsB,oBAAoB,GAAG,WAAW,sBAAsB,kBAAkB,GAAG,gBAAgB,oBAAoB,GAAG,cAAc,yBAAyB,4BAA4B,sCAAsC,GAAG,2BAA2B,6BAA6B,uBAAuB,iCAAiC,sBAAsB,6BAA6B,6BAA6B,yBAAyB,6BAA6B,qBAAqB,uBAAuB,oBAAoB,6BAA6B,qBAAqB,mCAAmC,OAAO,kCAAkC,4BAA4B,iCAAiC,wBAAwB,wBAAwB,gCAAgC,gCAAgC,kCAAkC,qEAAqE,WAAW,iCAAiC,8BAA8B,qBAAqB,OAAO,qBAAqB,2BAA2B,oBAAoB,4BAA4B,4BAA4B,gCAAgC,GAAG,2BAA2B,oCAAoC,sBAAsB,uBAAuB,6BAA6B,4BAA4B,0BAA0B,OAAO,sBAAsB,qBAAqB,kBAAkB,0BAA0B,yBAAyB,GAAG,4BAA4B,8BAA8B,6BAA6B,8BAA8B,4BAA4B,6BAA6B,0BAA0B,uBAAuB,4BAA4B,OAAO,oDAAoD,0BAA0B,6BAA6B,iCAAiC,wBAAwB,wBAAwB,wCAAwC,0BAA0B,0BAA0B,6BAA6B,WAAW,kCAAkC,oCAAoC,wCAAwC,6CAA6C,kCAAkC,sCAAsC,8BAA8B,0BAA0B,iCAAiC,wBAAwB,wBAAwB,iCAAiC,6BAA6B,WAAW,4CAA4C,wCAAwC,6BAA6B,WAAW,2CAA2C,oCAAoC,wCAAwC,6BAA6B,WAAW,yCAAyC,oCAAoC,wCAAwC,6BAA6B,WAAW,+CAA+C,wCAAwC,WAAW,8CAA8C,oCAAoC,wCAAwC,WAAW,uCAAuC,oCAAoC,WAAW,sCAAsC,gCAAgC,oCAAoC,WAAW,6CAA6C,2CAA2C,sCAAsC,+CAA+C,eAAe,kDAAkD,uCAAuC,kCAAkC,4CAA4C,WAAW,qDAAqD,uCAAuC,kCAAkC,WAAW,gDAAgD,uCAAuC,kCAAkC,WAAW,+CAA+C,6BAA6B,kCAAkC,mGAAmG,6FAA6F,4HAA4H,WAAW,0CAA0C,oGAAoG,+FAA+F,sCAAsC,WAAW,yCAAyC,oCAAoC,WAAW,8CAA8C,oCAAoC,WAAW,eAAe,2CAA2C,GAAG,aAAa,mBAAmB,iBAAiB,GAAG,kBAAkB,mBAAmB,iBAAiB,GAAG,0BAA0B,gCAAgC,wBAAwB,GAAG,eAAe,sBAAsB,yBAAyB,wBAAwB,wBAAwB,qCAAqC,GAAG,uBAAuB,sBAAsB,wBAAwB,GAAG,WAAW,0BAA0B,oBAAoB,gCAAgC,sBAAsB,sBAAsB,yBAAyB,GAAG,YAAY,mBAAmB,iBAAiB,GAAG,sBAAsB,gCAAgC,GAAG,wBAAwB,sBAAsB,uBAAuB,kCAAkC,kBAAkB,2CAA2C,GAAG,kBAAkB,gCAAgC,GAAG,qBAAqB,uBAAuB,GAAG,oBAAoB,sBAAsB,uBAAuB,mBAAmB,sBAAsB,GAAG,iBAAiB,sBAAsB,uBAAuB,mBAAmB,sBAAsB,GAAG,gBAAgB,sBAAsB,wBAAwB,mBAAmB,sBAAsB,GAAG,iBAAiB,mBAAmB,sBAAsB,yBAAyB,sBAAsB,GAAG,cAAc,2CAA2C,GAAG,cAAc,yBAAyB,qBAAqB,wBAAwB,sBAAsB,GAAG,eAAe,yBAAyB,uBAAuB,0BAA0B,mBAAmB,sBAAsB,sBAAsB,GAAG,UAAU,mBAAmB,uBAAuB,0BAA0B,sBAAsB,sBAAsB,qBAAqB,4BAA4B,GAAG,gBAAgB,mBAAmB,uBAAuB,0BAA0B,sBAAsB,sBAAsB,4BAA4B,GAAG,kBAAkB,sBAAsB,yBAAyB,GAAG,cAAc,sBAAsB,yBAAyB,kCAAkC,WAAW,uBAAuB,GAAG,sBAAsB,mCAAmC,wBAAwB,sBAAsB,GAAG,kBAAkB,gCAAgC,GAAG,oBAAoB,kCAAkC,GAAG,eAAe,iBAAiB,mBAAmB,GAAG,cAAc,sBAAsB,yBAAyB,kCAAkC,oBAAoB,wBAAwB,cAAc,sBAAsB,uBAAuB,wBAAwB,gCAAgC,GAAG,aAAa,sBAAsB,cAAc,gBAAgB,kBAAkB,4BAA4B,mBAAmB,oCAAoC,qCAAqC,GAAG,eAAe,iBAAiB,mBAAmB,GAAG,qBAAqB,mBAAmB,iBAAiB,GAAG,WAAW,iCAAiC,mCAAmC,GAAG,WAAW,sBAAsB,GAAG,yCAAyC,gCAAgC,iCAAiC,qCAAqC,GAAG,gCAAgC,kDAAkD,iCAAiC,qCAAqC,GAAG,oCAAoC,gCAAgC,iCAAiC,qCAAqC,GAAG,qCAAqC,gCAAgC,iCAAiC,qCAAqC,GAAG,2BAA2B,gCAAgC,iCAAiC,qCAAqC,GAAG,0BAA0B,2BAA2B,wBAAwB,0BAA0B,uBAAuB,wBAAwB,uBAAuB,4BAA4B,qBAAqB,4CAA4C,6BAA6B,oCAAoC,qCAAqC,sCAAsC,GAAG,kBAAkB,uCAAuC,gCAAgC,GAAG,sBAAsB,8BAA8B,+BAA+B,qCAAqC,gCAAgC,oCAAoC,oBAAoB,GAAG,qBAAqB,kBAAkB,mBAAmB,wBAAwB,wEAAwE,KAAK,6CAA6C,sBAAsB,0BAA0B,yBAAyB,wBAAwB,yBAAyB,4BAA4B,qBAAqB,4CAA4C,6BAA6B,oCAAoC,qCAAqC,sCAAsC,GAAG,kBAAkB,kCAAkC,qCAAqC,gCAAgC,8BAA8B,gCAAgC,uCAAuC,GAAG,0BAA0B,2CAA2C,sCAAsC,gCAAgC,qCAAqC,mCAAmC,8BAA8B,sBAAsB,0BAA0B,2BAA2B,sBAAsB,GAAG,8BAA8B,2CAA2C,sCAAsC,gCAAgC,qCAAqC,mCAAmC,8BAA8B,sBAAsB,GAAG,uBAAuB,8BAA8B,2CAA2C,GAAG,yBAAyB,2CAA2C,sCAAsC,kCAAkC,mCAAmC,mCAAmC,8BAA8B,sBAAsB,2BAA2B,sBAAsB,GAAG,iFAAiF,sCAAsC,GAAG,2BAA2B,iCAAiC,uBAAuB,GAAG,2BAA2B,qBAAqB,0BAA0B,kBAAkB,yBAAyB,GAAG,sBAAsB,6BAA6B,yBAAyB,qCAAqC,4BAA4B,sDAAsD,2BAA2B,kBAAkB,qCAAqC,iBAAiB,GAAG,kBAAkB,uBAAuB,kCAAkC,oBAAoB,GAAG,8BAA8B,+BAA+B,8BAA8B,mBAAmB,oBAAoB,mCAAmC,sBAAsB,kBAAkB,8BAA8B,GAAG,2BAA2B,qCAAqC,iBAAiB,6BAA6B,2BAA2B,GAAG,2BAA2B,qBAAqB,sBAAsB,GAAG,6BAA6B,qBAAqB,sBAAsB,GAAG,sFAAsF,iCAAiC,GAAG,uDAAuD,4BAA4B,GAAG,oCAAoC,iCAAiC,GAAG,2BAA2B,yBAAyB,eAAe,gBAAgB,2DAA2D,mDAAmD,GAAG,4BAA4B,mBAAmB,kBAAkB,6CAA6C,kBAAkB,aAAa,cAAc,yBAAyB,GAAG,mBAAmB,gCAAgC,yCAAyC,6BAA6B,8BAA8B,sBAAsB,GAAG,sBAAsB,wBAAwB,uBAAuB,yBAAyB,wCAAwC,4BAA4B,8BAA8B,qBAAqB,0BAA0B,sBAAsB,GAAG,4CAA4C,gCAAgC,qBAAqB,sBAAsB,yBAAyB,0BAA0B,GAAG,4CAA4C,gCAAgC,mBAAmB,oBAAoB,GAAG,mCAAmC,6CAA6C,GAAG,qBAAqB,2CAA2C,gCAAgC,iCAAiC,oCAAoC,qCAAqC,GAAG,yCAAyC,2CAA2C,8BAA8B,+BAA+B,GAAG,mCAAmC,6CAA6C,GAAG,yBAAyB,2CAA2C,sCAAsC,gCAAgC,qCAAqC,mCAAmC,8BAA8B,sBAAsB,yBAAyB,2BAA2B,sBAAsB,GAAG,iCAAiC,2CAA2C,sCAAsC,gCAAgC,qCAAqC,mCAAmC,6BAA6B,sBAAsB,yBAAyB,2BAA2B,sBAAsB,GAAG,kBAAkB,qBAAqB,oBAAoB,sBAAsB,2BAA2B,GAAG,qCAAqC,wBAAwB,sCAAsC,sBAAsB,OAAO,2CAA2C,4DAA4D,oCAAoC,OAAO,2CAA2C,oCAAoC,oCAAoC,OAAO,6BAA6B,2CAA2C,sCAAsC,kCAAkC,mCAAmC,mCAAmC,8BAA8B,sBAAsB,sCAAsC,sBAAsB,GAAG,2BAA2B,2CAA2C,sCAAsC,gCAAgC,qCAAqC,mCAAmC,8BAA8B,sBAAsB,4BAA4B,wCAAwC,sBAAsB,GAAG,wBAAwB,qBAAqB,oBAAoB,sBAAsB,2BAA2B,GAAG,2CAA2C,wBAAwB,sCAAsC,qBAAqB,OAAO,iDAAiD,4DAA4D,oCAAoC,OAAO,iDAAiD,oCAAoC,oCAAoC,OAAO,gBAAgB,oBAAoB,mBAAmB,0DAA0D,qBAAqB,kBAAkB,6BAA6B,GAAG,yBAAyB,4BAA4B,uFAAuF,+DAA+D,GAAG,kBAAkB,6BAA6B,mBAAmB,2BAA2B,oBAAoB,yBAAyB,wBAAwB,4BAA4B,mBAAmB,GAAG,wBAAwB,kCAAkC,qBAAqB,wBAAwB,yBAAyB,2BAA2B,yBAAyB,GAAG,mCAAmC,0BAA0B,yBAAyB,yBAAyB,wBAAwB,GAAG,+BAA+B,6BAA6B,6BAA6B,yBAAyB,yBAAyB,0BAA0B,mBAAmB,GAAG,uBAAuB,oBAAoB,mBAAmB,gDAAgD,sBAAsB,8BAA8B,GAAG,uBAAuB,kDAAkD,wHAAwH,qBAAqB,0BAA0B,GAAG,qBAAqB,kDAAkD,wHAAwH,uBAAuB,0BAA0B,GAAG,iBAAiB,oBAAoB,mBAAmB,kBAAkB,+BAA+B,sBAAsB,oBAAoB,yBAAyB,0BAA0B,0BAA0B,GAAG,2BAA2B,6BAA6B,kBAAkB,2BAA2B,eAAe,oBAAoB,kBAAkB,mBAAmB,uCAAuC,GAAG,0BAA0B,sBAAsB,uBAAuB,qBAAqB,sBAAsB,2BAA2B,qBAAqB,0BAA0B,wBAAwB,uBAAuB,uBAAuB,GAAG,wBAAwB,sBAAsB,0BAA0B,sBAAsB,yBAAyB,uBAAuB,2BAA2B,sBAAsB,0CAA0C,0CAA0C,GAAG,6BAA6B,iBAAiB,4BAA4B,sBAAsB,uBAAuB,GAAG,gBAAgB,8BAA8B,8BAA8B,oCAAoC,gCAAgC,oCAAoC,wBAAwB,GAAG,oBAAoB,wCAAwC,wCAAwC,oCAAoC,oCAAoC,4BAA4B,GAAG,iBAAiB,yBAAyB,6BAA6B,8BAA8B,mBAAmB,yBAAyB,eAAe,qCAAqC,oCAAoC,sBAAsB,GAAG,oBAAoB,uBAAuB,GAAG,sCAAsC,gCAAgC,iCAAiC,qCAAqC,GAAG,6BAA6B,kDAAkD,iCAAiC,qCAAqC,GAAG,iCAAiC,gCAAgC,iCAAiC,qCAAqC,GAAG,kCAAkC,gCAAgC,iCAAiC,qCAAqC,GAAG,wBAAwB,gCAAgC,iCAAiC,qCAAqC,GAAG,YAAY,mCAAmC,GAAG,+CAA+C,uy1C;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACArktB,6EAA6E;AACoD;AAEjI,wDAAwD;AACb;AACE;AACoC;AACA;AACH;AACiC;AAC0C;AAC7E;AAChB;AACwB;AAEtB;AAQ9D;IAAkD,sFAAgB;IAgC9D,YAAY;IAEZ,sCAAmB,QAAkB,EAAS,IAAqB,EACxD,iBAAoC,EAAS,aAAoC,EAAS,gBAAkC,EAC3H,gBAAkC,EAAS,0BAAsD;QAF7G;QAII,iCAAiC;QACjC,kBAAM,IAAI,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,aAAa,CAAC,SAIlE;QATkB,cAAQ,GAAR,QAAQ,CAAU;QAAS,UAAI,GAAJ,IAAI,CAAiB;QACxD,uBAAiB,GAAjB,iBAAiB,CAAmB;QAAS,mBAAa,GAAb,aAAa,CAAuB;QAAS,sBAAgB,GAAhB,gBAAgB,CAAkB;QAC3H,sBAAgB,GAAhB,gBAAgB,CAAkB;QAAS,gCAA0B,GAA1B,0BAA0B,CAA4B;QAlC7G,mBAAmB;QACZ,SAAG,GAAW,EAAE,CAAC;QACjB,iBAAW,GAAW,EAAE,CAAC;QACzB,mBAAa,GAAW,EAAE,CAAC;QAG3B,eAAS,GAAW,EAAE,CAAC;QACvB,cAAQ,GAAW,EAAE,CAAC;QACtB,8BAAwB,GAAgC,EAAE,CAAC;QAC3D,gBAAU,GAAG,IAAI,CAAC;QAElB,oBAAc,GAAW,EAAE,CAAC;QAC5B,kBAAY,GAAW,CAAC,CAAC;QAIzB,kBAAY,GAAW,EAAE,CAAC;QAE1B,oBAAc,GAAW,EAAE,CAAC;QAC5B,kBAAY,GAAW,EAAE,CAAC;QAE1B,iBAAW,GAAY,KAAK,CAAC;QAC7B,gCAA0B,GAAY,KAAK,CAAC;QAC5C,uBAAiB,GAAW,EAAE,CAAC;QAI5B,oCAA8B,GAAG,IAAI,0DAAY,EAA6B,CAAC;QAC/E,uBAAiB,GAAG,IAAI,0DAAY,EAAE,CAAC;QAW7C,KAAI,CAAC,cAAc,GAAG,IAAI,4GAAc,EAAE,CAAC;QAC3C,KAAI,CAAC,yBAAyB,GAAG,IAAI,uHAAyB,EAAE,CAAC;;IACrE,CAAC;IAAA,CAAC;IAGF,+CAAQ,GAAR;QACI,IAAI;YACA,0CAA0C;YAC1C,IAAI,CAAC,2BAA2B,EAAE,CAAC;YAEnC,IAAI,CAAC,oBAAoB,GAAG,IAAI,wDAAS,CAAC;gBACtC,aAAa,EAAE,IAAI,0DAAW,CAAC,EAAE,EAAE,CAAC,yDAAU,CAAC,QAAQ,CAAC,CAAC;gBACzD,OAAO,EAAE,IAAI,0DAAW,CAAC,EAAE,EAAE,CAAC,yDAAU,CAAC,QAAQ,CAAC,CAAC;aACtD,CAAC,CAAC;YAEH,gDAAgD;YAChD,IAAI,IAAI,CAAC,iBAAiB,IAAI,EAAE,EAAE;gBAC9B,qDAAqD;gBACrD,IAAI,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,EAAE;oBACtC,IAAI,CAAC,oBAAoB,CAAC,UAAU,CAAC;wBACjC,aAAa,EAAE,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,iBAAiB,CAAC;qBACrE,CAAC,CAAC;iBACN;aACJ;SAEJ;QACD,OAAO,CAAC,EAAE;YACN,IAAI,CAAC,gBAAgB,CAAC,iFAAO,CAAC,KAAK,EAAE,mDAAmD,GAAG,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;SAC3H;IAEL,CAAC;IAGD,sBAAW,uDAAa;QADxB,kDAAkD;aAClD;YACI,IAAI,IAAI,CAAC,iBAAiB,IAAI,EAAE,IAAI,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC,aAAa,CAAC,QAAQ,CAAC,GAAG,CAAC;gBAC3F,OAAO,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,CAAC;;gBAErC,OAAO,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC,aAAa,CAAC;QAC7D,CAAC;;;OAAA;IAED,sBAAW,iDAAO;aAAlB;YACI,OAAO,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC,OAAO,CAAC;QACnD,CAAC;;;OAAA;IAED,yEAAkC,GAAlC;QACI,IAAI;YACA,kDAAkD;YAClD,0CAA0C;YAE1C,IAAI,CAAC,oBAAoB,CAAC,gBAAgB,EAAE,CAAC;YAE7C,0BAA0B;YAC1B,IAAI,CAAC,0BAA0B,GAAG,IAAI,CAAC;YAEvC,IAAI,IAAI,CAAC,oBAAoB,CAAC,KAAK,EAAE;gBACjC,qBAAqB;gBACrB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;gBACxB,IAAI,CAAC,gBAAgB,CAAC,iFAAO,CAAC,IAAI,EAAE,oDAAkD,IAAI,CAAC,GAAG,wBAAmB,IAAI,CAAC,YAAY,oBAAe,IAAI,CAAC,aAAa,mBAAc,IAAI,CAAC,OAAS,CAAC,CAAC;gBACjM,IAAI,CAAC,gCAAgC,EAAE,CAAC;aAC3C;YAED,sBAAsB;YACtB,sCAAsC;SACzC;QACD,OAAO,CAAC,EAAE;YACN,IAAI,CAAC,gBAAgB,CAAC,iFAAO,CAAC,KAAK,EAAE,2EAA2E,GAAG,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;SACnJ;IACL,CAAC;IAED,8DAA8D;IAC9D,uEAAgC,GAAhC;QAAA,iBA0EC;QAzEG,IAAI;YACA,IAAI,CAAC,0BAA0B,CAAC,8BAA8B,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,mBAAS;gBAE7I,IAAI,SAAS,CAAC,IAAI,IAAI,IAAI,EAAE;oBACxB,6DAA6D;oBAE7D,IAAI,SAAS,CAAC,UAAU,KAAK,GAAG,IAAI,SAAS,CAAC,IAAI,CAAC,OAAO,GAAG,CAAC,EAAE;wBAC5D,KAAI,CAAC,cAAc,CAAC,cAAc,GAAG,SAAS,CAAC,IAAI,CAAC,cAAc,CAAC;wBACnE,KAAI,CAAC,cAAc,CAAC,yBAAyB,GAAG,SAAS,CAAC,IAAI,CAAC,yBAAyB,CAAC;wBACzF,KAAI,CAAC,cAAc,CAAC,WAAW,GAAG,SAAS,CAAC,IAAI,CAAC,eAAe,CAAC;wBACjE,KAAI,CAAC,cAAc,CAAC,aAAa,GAAG,SAAS,CAAC,IAAI,CAAC,cAAc,CAAC;wBAClE,KAAI,CAAC,cAAc,CAAC,QAAQ,GAAG,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC;wBACvD,KAAI,CAAC,cAAc,CAAC,GAAG,GAAG,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC;wBAC7C,KAAI,CAAC,cAAc,CAAC,aAAa,GAAG,SAAS,CAAC,IAAI,CAAC,aAAa,CAAC;wBACjE,KAAI,CAAC,cAAc,CAAC,cAAc,GAAG,SAAS,CAAC,IAAI,CAAC,cAAc,CAAC;wBACnE,KAAI,CAAC,cAAc,CAAC,eAAe,GAAG,KAAI,CAAC,wBAAwB,CAAC,SAAS,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;wBACpG,KAAI,CAAC,cAAc,CAAC,YAAY,GAAG,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC;wBAC/D,KAAI,CAAC,cAAc,CAAC,YAAY,GAAG,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC;wBAC/D,KAAI,CAAC,cAAc,CAAC,WAAW,GAAG,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC;wBAC7D,KAAI,CAAC,cAAc,CAAC,WAAW,GAAG,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC;wBAC7D,KAAI,CAAC,cAAc,CAAC,aAAa,GAAG,SAAS,CAAC,IAAI,CAAC,aAAa,CAAC;wBACjE,KAAI,CAAC,cAAc,CAAC,YAAY,GAAG,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC;wBAC/D,KAAI,CAAC,cAAc,CAAC,mBAAmB,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC,mBAAmB,IAAI,EAAE,IAAI,SAAS,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,KAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;wBAE7L,IAAI,SAAS,CAAC,IAAI,CAAC,cAAc;4BAC7B,KAAI,CAAC,cAAc,CAAC,iBAAiB,GAAG,KAAI,CAAC,oBAAoB,CAAC,SAAS,CAAC,IAAI,CAAC,WAAW,EAAE,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;;4BAE3H,KAAI,CAAC,cAAc,CAAC,iBAAiB,GAAG,EAAE,CAAC;wBAE/C,wDAAwD;wBAExD,0EAA0E;wBAC1E,KAAI,CAAC,GAAG,GAAG,KAAI,CAAC,cAAc,CAAC,GAAG,CAAC;wBACnC,0DAA0D;wBAC1D,KAAI,CAAC,yBAAyB,EAAE,CAAC;wBACjC,KAAI,CAAC,cAAc,EAAE,CAAC;wBAEtB,IAAI,KAAI,CAAC,cAAc,CAAC,yBAAyB;4BAC7C,KAAI,CAAC,gBAAgB,CAAC,iFAAO,CAAC,IAAI,EAAE,sFAAsF,CAAC,CAAC;;4BAE5H,KAAI,CAAC,gBAAgB,CAAC,iFAAO,CAAC,IAAI,EAAE,0FAA0F,CAAC,CAAC;wBAEpI,kDAAkD;wBAClD,iBAAiB;wBAEjB,iDAAiD;wBACjD,yBAAyB;wBAEzB,KAAI,CAAC,WAAW,GAAG,KAAK,CAAC;wBAEzB,qDAAqD;wBACrD,KAAI,CAAC,kBAAkB,EAAE,CAAC;qBAC7B;yBACI;wBACD,KAAI,CAAC,gBAAgB,CAAC,iFAAO,CAAC,KAAK,EAAE,yFAAyF,CAAC,CAAC;wBAChI,KAAI,CAAC,YAAY,EAAE,CAAC;qBACvB;iBACJ;qBACI;oBACD,KAAI,CAAC,gBAAgB,CAAC,iFAAO,CAAC,KAAK,EAAE,+EAA+E,CAAC,CAAC;oBACtH,KAAI,CAAC,YAAY,EAAE,CAAC;iBACvB;YAEL,CAAC,EAAE,mBAAS;gBACR,IAAI,KAAI,CAAC,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,IAAI,KAAI,CAAC,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,IAAI,KAAI,CAAC,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,EAAE;oBACpH,KAAI,CAAC,gBAAgB,CAAC,iFAAO,CAAC,KAAK,EAAE,kFAAkF,CAAC,CAAC;oBACzH,KAAI,CAAC,YAAY,EAAE,CAAC;iBACvB;YACL,CAAC,CAAC,CAAC;SACN;QACD,OAAO,CAAC,EAAE;YACN,IAAI,CAAC,gBAAgB,CAAC,iFAAO,CAAC,KAAK,EAAE,uEAAuE,GAAG,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;SAC/I;IACL,CAAC;IAED,YAAY;IAEZ,yBAAyB;IAEjB,wDAAiB,GAAzB,UAA0B,iBAAyB;QAC/C,IAAI,iBAAiB,CAAC,MAAM,IAAI,EAAE,EAAE;YAChC,kCAAkC;YAClC,OAAO,iBAAiB,CAAC,OAAO,CAAC,uBAAuB,EAAE,UAAU,CAAC,CAAC;SACzE;QACD,OAAO,iBAAiB;IAC5B,CAAC;IACO,+DAAwB,GAAhC,UAAiC,cAAsB;QACnD,IAAI,kBAAkB,GAAW,cAAc,CAAC;QAEhD,IAAI,cAAc,IAAI,IAAI,IAAI,cAAc,IAAI,EAAE,IAAI,cAAc,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC;YACjF,kBAAkB,GAAG,cAAc,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;QAE3D,OAAO,kBAAkB,CAAC;IAC9B,CAAC;IAEO,2DAAoB,GAA5B,UAA6B,WAAmB,EAAE,YAAoB;QAClE,IAAI,aAAa,GAAW,YAAY,CAAC;QAEzC,IAAI,IAAI,CAAC,GAAG,IAAI,MAAM,EAAE;YACpB,IAAI,CAAC,WAAW,CAAC,WAAW,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,IAAI,WAAW,CAAC,WAAW,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,IAAI,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;gBACtI,aAAa,GAAG,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;aACrD;SACJ;QAED,gDAAgD;QAChD,OAAO,aAAa,CAAC;IACzB,CAAC;IAEM,gEAAyB,GAAhC;QAAA,iBAOC;QALG,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,wBAAwB,CAAC,MAAM,CAAC,cAAI,IAAI,QAAC,IAAI,CAAC,GAAG,IAAI,KAAI,CAAC,GAAG,IAAI,IAAI,CAAC,iBAAiB,IAAI,sBAAsB,CAAC,EAA1E,CAA0E,CAAC;aACzI,GAAG,CAAC,YAAE,IAAI,SAAE,CAAC,kBAAkB,EAArB,CAAqB,CAAC,CAAC,CAAC,CAAC,CAAC;QAEzC,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,wBAAwB,CAAC,MAAM,CAAC,cAAI,IAAI,QAAC,IAAI,CAAC,GAAG,IAAI,KAAI,CAAC,GAAG,IAAI,IAAI,CAAC,iBAAiB,IAAI,eAAe,CAAC,EAAnE,CAAmE,CAAC;aAChI,GAAG,CAAC,YAAE,IAAI,SAAE,CAAC,kBAAkB,EAArB,CAAqB,CAAC,CAAC,CAAC,CAAC,CAAC;IAC7C,CAAC;IAEO,qDAAc,GAAtB;QACI,IAAI,IAAI,CAAC,GAAG,KAAK,IAAI,IAAI,IAAI,CAAC,GAAG,KAAK,IAAI;YACtC,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;aAC9B,IAAI,IAAI,CAAC,GAAG,KAAK,KAAK;YACvB,IAAI,CAAC,WAAW,GAAG,sBAAsB,CAAC;aACzC,IAAI,IAAI,CAAC,GAAG,KAAK,KAAK;YACvB,IAAI,CAAC,WAAW,GAAG,iBAAiB,CAAC;aACpC,IAAI,IAAI,CAAC,GAAG,KAAK,MAAM;YACxB,IAAI,CAAC,WAAW,GAAG,sBAAsB,CAAC;IAClD,CAAC;IAEO,6DAAsB,GAA9B,UAA+B,aAAqB;QAChD,IAAI,GAAG,GAAW,EAAE,CAAC;QAErB,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE;YAC1B,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC,EAAE,aAAa,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;YAC9E,GAAG,GAAG,GAAG,GAAG,aAAa,CAAC,MAAM,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;SAC9D;QAED,OAAO,GAAG,CAAC;IACf,CAAC;IAEO,uDAAgB,GAAxB,UAAyB,OAAe,EAAE,UAAkB;QAExD,IAAI,CAAC,UAAU,GAAG,IAAI,oFAAU,EAAE,CAAC;QAEnC,IAAI,CAAC,UAAU,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC,aAAa;QAC/D,IAAI,CAAC,UAAU,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC;QAC/B,IAAI,CAAC,UAAU,CAAC,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC;QAC1C,IAAI,CAAC,UAAU,CAAC,gBAAgB,GAAG,IAAI,CAAC,WAAW,CAAC;QACpD,IAAI,CAAC,UAAU,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;QAC3C,IAAI,CAAC,UAAU,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC;QACrD,IAAI,CAAC,UAAU,CAAC,OAAO,GAAG,OAAO,CAAC;QAClC,IAAI,CAAC,UAAU,CAAC,UAAU,GAAG,UAAU,CAAC;QACxC,IAAI,CAAC,UAAU,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;QAE/C,iBAAM,wBAAwB,YAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACpD,CAAC;IAED,mDAAY,GAAZ;QACI,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,CAAC;IAClC,CAAC;IAEO,kEAA2B,GAAnC;QAEI,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,wBAAwB,CAAC,iBAAiB,CAAC;QACzE,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,wBAAwB,CAAC,YAAY,CAAC;QAC/D,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,wBAAwB,CAAC,WAAW,CAAC;QAC7D,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,wBAAwB,CAAC,GAAG,CAAC;QAC7C,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,wBAAwB,CAAC,cAAc,CAAC;QACnE,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,wBAAwB,CAAC,YAAY,CAAC;QAC/D,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,wBAAwB,CAAC,YAAY,CAAC;QAC/D,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,wBAAwB,CAAC,cAAc,CAAC;IACvE,CAAC;IAEO,yDAAkB,GAA1B;QAEI,IAAI,CAAC,yBAAyB,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC;QACpE,IAAI,CAAC,yBAAyB,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC;QAElE,IAAI,CAAC,8BAA8B,CAAC,IAAI,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;IAC7E,CAAC;;gBAhQ4B,wDAAQ;gBAAe,0DAAe;gBACrC,yFAAiB;gBAAwB,0EAAqB;gBAA2B,sFAAgB;gBACzG,oFAAgB;gBAAqC,uHAA0B;;IARpG;QAAR,2DAAK,EAAE;wEAA2B,sHAAwB;kFAAC;IAClD;QAAT,4DAAM,EAAE;;wFAAgF;IAC/E;QAAT,4DAAM,EAAE;;2EAAwC;IA9BxC,4BAA4B;QANxC,+DAAS,CAAC;YACP,QAAQ,EAAE,sBAAsB;YAChC,+MAAkD;YAElD,SAAS,EAAE,CAAC,wDAAQ,EAAE,yFAAiB,EAAE,oFAAgB,EAAE,uHAA0B,CAAC;;SACzF,CAAC;+EAmC+B,wDAAQ,EAAe,0DAAe;YACrC,yFAAiB,EAAwB,0EAAqB,EAA2B,sFAAgB;YACzG,oFAAgB,EAAqC,uHAA0B;OApCpG,4BAA4B,CAsSxC;IAAD,mCAAC;CAAA,CAtSiD,0EAAgB,GAsSjE;AAtSwC;;;;;;;;;;;;;;;;;;;;;;;;;;;ACvBzC,iBAAiB;AACjB,yDAAyD;AAChB;AAEM;AACmB;AAClE,cAAc;AACgC;AACA;AACA;AACK;AAEnD,aAAa;AAC0C;AAEvD,YAAY;AACZ,6EAA6E;AAEnC;AACsC;AA6BhF;IAAA;IAAyC,CAAC;IAA7B,yBAAyB;QA3BrC,8DAAQ,CAAC;YACN,OAAO,EAAE;gBACL,iBAAiB;gBACjB,4DAAY;gBACZ,0CAA0C;gBAC1C,0DAAW;gBACX,kEAAmB;gBACnB,uDAAa,CAAC,OAAO,CAAC;oBAClB,MAAM,EAAE,yCAAyC;iBAClD,CAAC;gBAEJ,sBAAsB;gBACtB,gEAAiB;gBACjB,2DAAe;gBACf,2DAAe;gBACf,2DAAe;gBAEf,aAAa;gBACb,4DAAU;aAEb;YACD,OAAO,EAAE,CAAC,6FAA4B,CAAC;YACvC,YAAY,EAAE;gBACV,6FAA4B;aAC/B;SACJ,CAAC;OAEW,yBAAyB,CAAI;IAAD,gCAAC;CAAA;AAAJ;;;;;;;;;;;;;;;;;;;;;AChDK;AAEO;AAIL;AACkB;AAI/D,2EAA2E;AAG3E;IAOI,oCAAoB,IAAqB,EAAU,MAAkB,EAAU,MAAgC;QAA3F,SAAI,GAAJ,IAAI,CAAiB;QAAU,WAAM,GAAN,MAAM,CAAY;QAAU,WAAM,GAAN,MAAM,CAA0B;QAL/G,kCAAkC;QAClC,sCAAsC;QAC/B,oBAAe,GAAG,aAAa,CAAC;QAChC,YAAO,GAAQ,EAAE,CAAC;IAE0F,CAAC;IAEpH,mEAA8B,GAA9B,UAA+B,GAAW,EAAE,SAAiB,EAAE,aAAqB,EAAE,cAAsB;QACxG,IAAI,MAAM,GAAW,EAAE,CAAC;QAExB,MAAM,GAAG,GAAG,GAAG,GAAG,GAAG,SAAS,GAAG,GAAG,GAAG,aAAa,GAAG,GAAG,GAAG,cAAc,CAAC;QAE5E,iDAAiD;QAEjD,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAM;YACtB,GAAG,EAAE,IAAI,CAAC,eAAe,GAAG,mCAAmC,GAAG,MAAM;SAC3E,CAAC,CAAC;IACP,CAAC;IAED,qCAAqC;IAC7B,gDAAW,GAAnB,UAAoB,KAAU;QAE1B,mDAAmD;QACnD,6EAA6E;QAC7E,mCAAmC;IACvC,CAAC;;gBApByB,0DAAe;gBAAkB,+DAAU;gBAAkB,4EAAwB;;IAPtG,0BAA0B;QADtC,gEAAU,EAAE;+EAQiB,0DAAe,EAAkB,+DAAU,EAAkB,4EAAwB;OAPtG,0BAA0B,CA6BtC;IAAD,iCAAC;CAAA;AA7BsC;;;;;;;;;;;;;ACbvC;AAAA;AAAA;AAAA;IAAA;QACI,QAAG,GAAW,EAAE,CAAC;QAEjB,qBAAgB,GAAW,EAAE,CAAC;QAC9B,2BAAsB,GAAW,EAAE,CAAC;QACpC,6BAAwB,GAAa,EAAE,CAAC;QACxC,kBAAa,GAAW,EAAE,CAAC;QAC3B,mBAAc,GAAW,EAAE,CAAC;QAC5B,iBAAY,GAAW,CAAC,CAAC;QACzB,gBAAW,GAAW,EAAE,CAAC;IAC7B,CAAC;IAAD,mCAAC;AAAD,CAAC;;AACD;IAAA;IAEA,CAAC;IAAD,oCAAC;AAAD,CAAC;;;;;;;;;;;;;ACdD,yBAAyB,gCAAgC,mCAAmC,GAAG,iBAAiB,yBAAyB,6BAA6B,8BAA8B,mBAAmB,yBAAyB,qBAAqB,kBAAkB,mBAAmB,wBAAwB,wEAAwE,KAAK,kBAAkB,0BAA0B,sBAAsB,uBAAuB,GAAG,0BAA0B,sBAAsB,uBAAuB,qBAAqB,sBAAsB,2BAA2B,eAAe,oBAAoB,kBAAkB,mBAAmB,uCAAuC,GAAG,gBAAgB,mCAAmC,GAAG,+CAA+C,uxD;;;;;;;;;;;;;;;;;;;;;;;;;;ACA/0B,6EAA6E;AACoD;AAEjI,wDAAwD;AACb;AACE;AACoC;AACH;AAC2E;AAC7E;AAChB;AACwB;AAEtB;AAQ9D;IAAsD,0FAAgB;IA0BlE,YAAY;IAEZ,0CAAmB,QAAkB,EAAS,IAAqB,EACxD,iBAAoC,EACpC,aAAoC,EACpC,gBAAkC,EACjC,gBAAkC;QAJ9C;QAMI,iCAAiC;QACjC,kBAAM,IAAI,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,aAAa,CAAC,SAGlE;QAVkB,cAAQ,GAAR,QAAQ,CAAU;QAAS,UAAI,GAAJ,IAAI,CAAiB;QACxD,uBAAiB,GAAjB,iBAAiB,CAAmB;QACpC,mBAAa,GAAb,aAAa,CAAuB;QACpC,sBAAgB,GAAhB,gBAAgB,CAAkB;QACjC,sBAAgB,GAAhB,gBAAgB,CAAkB;QA9B9C,mBAAmB;QACZ,SAAG,GAAW,EAAE,CAAC;QACjB,iBAAW,GAAW,EAAE,CAAC;QACzB,mBAAa,GAAW,EAAE,CAAC;QAG3B,eAAS,GAAW,EAAE,CAAC;QACvB,cAAQ,GAAW,EAAE,CAAC;QACtB,8BAAwB,GAAgC,EAAE,CAAC;QAC3D,gBAAU,GAAG,IAAI,CAAC;QAElB,oBAAc,GAAW,EAAE,CAAC;QAC5B,kBAAY,GAAW,CAAC,CAAC;QAGzB,mBAAa,GAAW,EAAE,CAAC;QAC3B,sBAAgB,GAAW,EAAE,CAAC;QAC9B,4BAAsB,GAAW,EAAE,CAAC;QACpC,8BAAwB,GAAa,EAAE,CAAC;QAG/C,mGAAmG;QACzF,uBAAiB,GAAG,IAAI,0DAAY,EAAE,CAAC;QAa7C,KAAI,CAAC,6BAA6B,GAAG,IAAI,mIAA6B,EAAE,CAAC;;IAC7E,CAAC;IAAA,CAAC;IAGF,mDAAQ,GAAR;QACI,IAAI;YACA,yCAAyC;YACzC,IAAI,CAAC,8BAA8B,EAAE,CAAC;SAEzC;QACD,OAAO,CAAC,EAAE;YACN,IAAI,CAAC,gBAAgB,CAAC,gFAAO,CAAC,KAAK,EAAE,mDAAmD,GAAG,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;SAC3H;IAEL,CAAC;IAED,yBAAyB;IAEjB,2DAAgB,GAAxB,UAAyB,OAAe,EAAE,UAAkB;QAExD,IAAI,CAAC,UAAU,GAAG,IAAI,mFAAU,EAAE,CAAC;QAEnC,IAAI,CAAC,UAAU,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC,aAAa;QAC/D,IAAI,CAAC,UAAU,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC;QAC/B,IAAI,CAAC,UAAU,CAAC,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC;QAC1C,IAAI,CAAC,UAAU,CAAC,gBAAgB,GAAG,IAAI,CAAC,WAAW,CAAC;QACpD,IAAI,CAAC,UAAU,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;QAC3C,IAAI,CAAC,UAAU,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC;QACrD,IAAI,CAAC,UAAU,CAAC,OAAO,GAAG,OAAO,CAAC;QAClC,IAAI,CAAC,UAAU,CAAC,UAAU,GAAG,UAAU,CAAC;QACxC,IAAI,CAAC,UAAU,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;QAE/C,iBAAM,wBAAwB,YAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACpD,CAAC;IAED,uDAAY,GAAZ;QACI,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,CAAC;IAClC,CAAC;IAEO,yEAA8B,GAAtC;QAEI,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,4BAA4B,CAAC,gBAAgB,CAAC;QAC3E,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC,4BAA4B,CAAC,sBAAsB,CAAC;QACvF,IAAI,CAAC,wBAAwB,GAAG,IAAI,CAAC,4BAA4B,CAAC,wBAAwB,CAAC;QAC3F,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,4BAA4B,CAAC,aAAa,CAAC;QACrE,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,4BAA4B,CAAC,WAAW,CAAC;QACjE,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,4BAA4B,CAAC,GAAG,CAAC;QACjD,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,4BAA4B,CAAC,cAAc,CAAC;QACvE,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,4BAA4B,CAAC,YAAY,CAAC;IACvE,CAAC;;gBA1D4B,wDAAQ;gBAAe,0DAAe;gBACrC,yFAAiB;gBACrB,yEAAqB;gBAClB,sFAAgB;gBACf,oFAAgB;;IAVrC;QAAR,2DAAK,EAAE;wEAA+B,kIAA4B;0FAAC;IAE1D;QAAT,4DAAM,EAAE;;+EAAwC;IAxBxC,gCAAgC;QAN5C,+DAAS,CAAC;YACP,QAAQ,EAAE,0BAA0B;YACpC,2NAAsD;YAEtD,SAAS,EAAE,CAAC,wDAAQ,EAAE,yFAAiB,EAAE,oFAAgB,CAAC;;SAC7D,CAAC;+EA6B+B,wDAAQ,EAAe,0DAAe;YACrC,yFAAiB;YACrB,yEAAqB;YAClB,sFAAgB;YACf,oFAAgB;OAhCrC,gCAAgC,CAyF5C;IAAD,uCAAC;CAAA,CAzFqD,0EAAgB,GAyFrE;AAzF4C;;;;;;;;;;;;;;;;;;;;;;;;;;;ACrB7C,iBAAiB;AACjB,yDAAyD;AAChB;AAEM;AACmB;AAClE,cAAc;AACgC;AACA;AACA;AACK;AAEnD,aAAa;AAC0C;AAEvD,YAAY;AACZ,6EAA6E;AAEnC;AAC8C;AA6BxF;IAAA;IAA6C,CAAC;IAAjC,6BAA6B;QA3BzC,8DAAQ,CAAC;YACN,OAAO,EAAE;gBACL,iBAAiB;gBACjB,4DAAY;gBACZ,0CAA0C;gBAC1C,0DAAW;gBACX,kEAAmB;gBACnB,uDAAa,CAAC,OAAO,CAAC;oBAClB,MAAM,EAAE,yCAAyC;iBAClD,CAAC;gBAEJ,sBAAsB;gBACtB,gEAAiB;gBACjB,2DAAe;gBACf,2DAAe;gBACf,2DAAe;gBAEf,aAAa;gBACb,4DAAU;aAEb;YACD,OAAO,EAAE,CAAC,qGAAgC,CAAC;YAC3C,YAAY,EAAE;gBACV,qGAAgC;aACnC;SACJ,CAAC;OAEW,6BAA6B,CAAI;IAAD,oCAAC;CAAA;AAAJ;;;;;;;;;;;;;AChD1C;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;IAAA;QACI,YAAO,GAAW,CAAC,CAAC;QACpB,YAAO,GAAW,EAAE,CAAC;QACrB,yBAAoB,GAAY,KAAK,CAAC;IAG1C,CAAC;IAAD,4BAAC;AAAD,CAAC;;AAED;IAAA;QACI,QAAG,GAAW,EAAE,CAAC;QACjB,gBAAW,GAAW,EAAE,CAAC;QACzB,aAAQ,GAAW,EAAE,CAAC;QACtB,mBAAc,GAAW,EAAE,CAAC;QAC5B,4BAAuB,GAAW,EAAE,CAAC;QACrC,+BAA0B,GAAW,EAAE,CAAC;QAExC,kBAAa,GAAW,EAAE,CAAC;QAC3B,0BAAqB,GAAW,EAAE,CAAC;QACnC,eAAU,GAAY,KAAK,CAAC;QAC5B,kBAAa,GAAW,EAAE,CAAC;QAC3B,2BAAsB,GAAW,EAAE,CAAC;QACpC,uBAAkB,GAAW,EAAE,CAAC;QAChC,qBAAgB,GAAW,EAAE,CAAC;QAC9B,sBAAiB,GAAW,EAAE,CAAC;IACnC,CAAC;IAAD,0BAAC;AAAD,CAAC;;AAED;IAAA;QACI,kBAAa,GAAW,EAAE,CAAC;QAC3B,eAAU,GAAW,EAAE,CAAC;QACxB,gBAAW,GAAW,EAAE,CAAC;QACzB,YAAO,GAAY,KAAK,CAAC;IAC7B,CAAC;IAAD,wBAAC;AAAD,CAAC;;AAED,IAAY,oBAWX;AAXD,WAAY,oBAAoB;IAC5B,gFAAwD;IACxD,6EAAqD;IACrD,8EAAsD;IACtD,wEAAgD;IAChD,8FAAsE;IACtE,qEAA6C;IAC7C,2EAAmD;IACnD,kFAA0D;IAC1D,+EAAuD;IACvD,uDAA+B;AACnC,CAAC,EAXW,oBAAoB,KAApB,oBAAoB,QAW/B;AAED;IAAA;QACI,QAAG,GAAW,EAAE,CAAC;QACjB,eAAU,GAAW,EAAE,CAAC;QACxB,gBAAW,GAAW,EAAE,CAAC;QACzB,cAAS,GAAW,EAAE,CAAC;QACvB,mBAAc,GAAW,EAAE,CAAC;QAC5B,4BAAuB,GAAW,EAAE,CAAC;QACrC,+BAA0B,GAAW,EAAE,CAAC;QACxC,mBAAc,GAAW,EAAE,CAAC;QAC5B,iBAAY,GAAW,CAAC,CAAC;QACzB,4BAAuB,GAAW,EAAE,CAAC;QACrC,gBAAW,GAAW,EAAE,CAAC;QACzB,oBAAe,GAAW,EAAE,CAAC;QAE7B,kBAAa,GAAW,EAAE,CAAC;QAC3B,0BAAqB,GAAW,EAAE,CAAC;QACnC,eAAU,GAAY,KAAK,CAAC;QAC5B,kBAAa,GAAW,EAAE,CAAC;QAC3B,2BAAsB,GAAW,EAAE,CAAC;QACpC,uBAAkB,GAAW,EAAE,CAAC;QAChC,qBAAgB,GAAW,EAAE,CAAC;QAC9B,sBAAiB,GAAW,EAAE,CAAC;IACnC,CAAC;IAAD,wBAAC;AAAD,CAAC;;AACD;IAAA;QACI,qBAAgB,GAAW,EAAE,CAAC;QAC9B,yBAAoB,GAAW,EAAE,CAAC;QAClC,2BAAsB,GAAW,EAAE,CAAC;QACpC,2BAAsB,GAAW,EAAE,CAAC;QACpC,wBAAmB,GAAW,EAAE,CAAC;QACjC,sBAAiB,GAAW,EAAE,CAAC;IACnC,CAAC;IAAD,yBAAC;AAAD,CAAC;;;;;;;;;;;;;AC5ED,2BAA2B,+BAA+B,GAAG,gBAAgB,mCAAmC,GAAG,qBAAqB,2BAA2B,oBAAoB,0BAA0B,0BAA0B,mCAAmC,MAAM,2BAA2B,qBAAqB,qBAAqB,6BAA6B,+BAA+B,sBAAsB,UAAU,+CAA+C,cAAc,uCAAuC,OAAO,yBAAyB,qBAAqB,OAAO,GAAG,WAAW,uDAAuD,gDAAgD,oBAAoB,GAAG,WAAW,gCAAgC,mCAAmC,GAAG,eAAe,yCAAyC,+BAA+B,GAAG,aAAa,yBAAyB,qBAAqB,GAAG,oBAAoB,kCAAkC,GAAG,kBAAkB,6BAA6B,GAAG,uBAAuB,oCAAoC,GAAG,oBAAoB,0BAA0B,GAAG,iBAAiB,0BAA0B,wBAAwB,GAAG,kBAAkB,0BAA0B,sBAAsB,uBAAuB,GAAG,2BAA2B,0BAA0B,sBAAsB,uBAAuB,qBAAqB,GAAG,yBAAyB,oCAAoC,mBAAmB,GAAG,OAAO,oCAAoC,uBAAuB,GAAG,YAAY,sBAAsB,8BAA8B,GAAG,aAAa,sBAAsB,oBAAoB,GAAG,WAAW,sBAAsB,kBAAkB,GAAG,gBAAgB,oBAAoB,GAAG,cAAc,yBAAyB,4BAA4B,sCAAsC,GAAG,2BAA2B,6BAA6B,uBAAuB,iCAAiC,sBAAsB,6BAA6B,6BAA6B,yBAAyB,6BAA6B,qBAAqB,uBAAuB,oBAAoB,6BAA6B,qBAAqB,mCAAmC,OAAO,kCAAkC,4BAA4B,iCAAiC,wBAAwB,wBAAwB,gCAAgC,gCAAgC,kCAAkC,qEAAqE,WAAW,iCAAiC,8BAA8B,qBAAqB,OAAO,qBAAqB,2BAA2B,oBAAoB,4BAA4B,4BAA4B,gCAAgC,GAAG,2BAA2B,oCAAoC,sBAAsB,uBAAuB,6BAA6B,4BAA4B,0BAA0B,OAAO,sBAAsB,qBAAqB,kBAAkB,0BAA0B,yBAAyB,GAAG,4BAA4B,8BAA8B,6BAA6B,8BAA8B,4BAA4B,6BAA6B,0BAA0B,uBAAuB,4BAA4B,OAAO,oDAAoD,0BAA0B,6BAA6B,iCAAiC,wBAAwB,wBAAwB,wCAAwC,0BAA0B,0BAA0B,6BAA6B,WAAW,kCAAkC,oCAAoC,wCAAwC,6CAA6C,kCAAkC,sCAAsC,8BAA8B,0BAA0B,iCAAiC,wBAAwB,wBAAwB,iCAAiC,6BAA6B,WAAW,4CAA4C,wCAAwC,6BAA6B,WAAW,2CAA2C,oCAAoC,wCAAwC,6BAA6B,WAAW,yCAAyC,oCAAoC,wCAAwC,6BAA6B,WAAW,+CAA+C,wCAAwC,WAAW,8CAA8C,oCAAoC,wCAAwC,WAAW,uCAAuC,oCAAoC,WAAW,sCAAsC,gCAAgC,oCAAoC,WAAW,6CAA6C,2CAA2C,sCAAsC,+CAA+C,eAAe,kDAAkD,uCAAuC,kCAAkC,4CAA4C,WAAW,qDAAqD,uCAAuC,kCAAkC,WAAW,gDAAgD,uCAAuC,kCAAkC,WAAW,+CAA+C,6BAA6B,kCAAkC,mGAAmG,6FAA6F,4HAA4H,WAAW,0CAA0C,oGAAoG,+FAA+F,sCAAsC,WAAW,yCAAyC,oCAAoC,WAAW,8CAA8C,oCAAoC,WAAW,eAAe,2CAA2C,GAAG,aAAa,mBAAmB,iBAAiB,GAAG,kBAAkB,mBAAmB,iBAAiB,GAAG,0BAA0B,gCAAgC,wBAAwB,GAAG,eAAe,sBAAsB,yBAAyB,wBAAwB,wBAAwB,qCAAqC,GAAG,uBAAuB,sBAAsB,wBAAwB,GAAG,WAAW,0BAA0B,oBAAoB,gCAAgC,sBAAsB,sBAAsB,yBAAyB,GAAG,YAAY,mBAAmB,iBAAiB,GAAG,sBAAsB,gCAAgC,GAAG,wBAAwB,sBAAsB,uBAAuB,kCAAkC,kBAAkB,2CAA2C,GAAG,kBAAkB,gCAAgC,GAAG,qBAAqB,uBAAuB,GAAG,oBAAoB,sBAAsB,uBAAuB,mBAAmB,sBAAsB,GAAG,iBAAiB,sBAAsB,uBAAuB,mBAAmB,sBAAsB,GAAG,gBAAgB,sBAAsB,wBAAwB,mBAAmB,sBAAsB,GAAG,iBAAiB,mBAAmB,sBAAsB,yBAAyB,sBAAsB,GAAG,cAAc,2CAA2C,GAAG,cAAc,yBAAyB,qBAAqB,wBAAwB,sBAAsB,GAAG,eAAe,yBAAyB,uBAAuB,0BAA0B,mBAAmB,sBAAsB,sBAAsB,GAAG,UAAU,mBAAmB,uBAAuB,0BAA0B,sBAAsB,sBAAsB,qBAAqB,4BAA4B,GAAG,gBAAgB,mBAAmB,uBAAuB,0BAA0B,sBAAsB,sBAAsB,4BAA4B,GAAG,kBAAkB,sBAAsB,yBAAyB,GAAG,cAAc,sBAAsB,yBAAyB,kCAAkC,WAAW,uBAAuB,GAAG,sBAAsB,mCAAmC,wBAAwB,sBAAsB,GAAG,kBAAkB,gCAAgC,GAAG,oBAAoB,kCAAkC,GAAG,eAAe,iBAAiB,mBAAmB,GAAG,cAAc,sBAAsB,yBAAyB,kCAAkC,oBAAoB,wBAAwB,cAAc,sBAAsB,uBAAuB,wBAAwB,gCAAgC,GAAG,aAAa,sBAAsB,cAAc,gBAAgB,kBAAkB,4BAA4B,mBAAmB,oCAAoC,qCAAqC,GAAG,eAAe,iBAAiB,mBAAmB,GAAG,qBAAqB,mBAAmB,iBAAiB,GAAG,WAAW,iCAAiC,mCAAmC,GAAG,WAAW,sBAAsB,GAAG,yCAAyC,gCAAgC,iCAAiC,qCAAqC,GAAG,gCAAgC,kDAAkD,iCAAiC,qCAAqC,GAAG,oCAAoC,gCAAgC,iCAAiC,qCAAqC,GAAG,qCAAqC,gCAAgC,iCAAiC,qCAAqC,GAAG,2BAA2B,gCAAgC,iCAAiC,qCAAqC,GAAG,0BAA0B,2BAA2B,wBAAwB,0BAA0B,uBAAuB,wBAAwB,uBAAuB,4BAA4B,qBAAqB,4CAA4C,6BAA6B,oCAAoC,qCAAqC,sCAAsC,GAAG,kBAAkB,uCAAuC,gCAAgC,GAAG,sBAAsB,8BAA8B,+BAA+B,qCAAqC,gCAAgC,oCAAoC,oBAAoB,GAAG,qBAAqB,kBAAkB,mBAAmB,wBAAwB,wEAAwE,KAAK,kBAAkB,kCAAkC,qCAAqC,gCAAgC,8BAA8B,gCAAgC,uCAAuC,GAAG,0BAA0B,2CAA2C,sCAAsC,gCAAgC,qCAAqC,mCAAmC,8BAA8B,sBAAsB,0BAA0B,2BAA2B,sBAAsB,GAAG,8BAA8B,2CAA2C,sCAAsC,gCAAgC,qCAAqC,mCAAmC,8BAA8B,sBAAsB,GAAG,uBAAuB,8BAA8B,2CAA2C,GAAG,yBAAyB,2CAA2C,sCAAsC,kCAAkC,mCAAmC,mCAAmC,8BAA8B,sBAAsB,2BAA2B,sBAAsB,GAAG,iFAAiF,sCAAsC,GAAG,2BAA2B,iCAAiC,uBAAuB,GAAG,2BAA2B,qBAAqB,0BAA0B,kBAAkB,yBAAyB,GAAG,sBAAsB,6BAA6B,yBAAyB,qCAAqC,4BAA4B,sDAAsD,2BAA2B,kBAAkB,qCAAqC,iBAAiB,GAAG,kBAAkB,uBAAuB,kCAAkC,oBAAoB,GAAG,8BAA8B,+BAA+B,8BAA8B,mBAAmB,oBAAoB,mCAAmC,sBAAsB,kBAAkB,8BAA8B,GAAG,2BAA2B,qCAAqC,iBAAiB,6BAA6B,GAAG,2BAA2B,qBAAqB,sBAAsB,GAAG,6BAA6B,qBAAqB,sBAAsB,GAAG,sFAAsF,iCAAiC,GAAG,uDAAuD,4BAA4B,GAAG,oCAAoC,iCAAiC,GAAG,2BAA2B,yBAAyB,eAAe,gBAAgB,2DAA2D,mDAAmD,GAAG,4BAA4B,mBAAmB,kBAAkB,6CAA6C,kBAAkB,aAAa,cAAc,yBAAyB,GAAG,mBAAmB,gCAAgC,yCAAyC,6BAA6B,8BAA8B,sBAAsB,GAAG,sBAAsB,wBAAwB,uBAAuB,yBAAyB,wCAAwC,4BAA4B,8BAA8B,qBAAqB,0BAA0B,sBAAsB,GAAG,4CAA4C,gCAAgC,qBAAqB,sBAAsB,yBAAyB,0BAA0B,GAAG,4CAA4C,gCAAgC,mBAAmB,oBAAoB,GAAG,mCAAmC,6CAA6C,GAAG,qBAAqB,2CAA2C,gCAAgC,iCAAiC,oCAAoC,qCAAqC,GAAG,yCAAyC,2CAA2C,8BAA8B,+BAA+B,GAAG,mCAAmC,6CAA6C,GAAG,uBAAuB,kDAAkD,wHAAwH,qBAAqB,0BAA0B,GAAG,qBAAqB,kDAAkD,wHAAwH,uBAAuB,0BAA0B,GAAG,iBAAiB,oBAAoB,mBAAmB,kBAAkB,+BAA+B,sBAAsB,oBAAoB,yBAAyB,0BAA0B,0BAA0B,GAAG,2BAA2B,6BAA6B,kBAAkB,2BAA2B,eAAe,oBAAoB,kBAAkB,mBAAmB,uCAAuC,GAAG,qBAAqB,0BAA0B,wBAAwB,uBAAuB,uBAAuB,GAAG,2BAA2B,2CAA2C,sCAAsC,gCAAgC,qCAAqC,mCAAmC,8BAA8B,sBAAsB,4BAA4B,wCAAwC,sBAAsB,GAAG,kBAAkB,qBAAqB,oBAAoB,sBAAsB,2BAA2B,GAAG,qCAAqC,wBAAwB,sCAAsC,sBAAsB,OAAO,2CAA2C,4DAA4D,oCAAoC,OAAO,2CAA2C,oCAAoC,oCAAoC,OAAO,wBAAwB,qBAAqB,oBAAoB,sBAAsB,2BAA2B,GAAG,2CAA2C,wBAAwB,sCAAsC,qBAAqB,OAAO,iDAAiD,4DAA4D,oCAAoC,OAAO,iDAAiD,oCAAoC,oCAAoC,OAAO,6CAA6C,sBAAsB,0BAA0B,yBAAyB,wBAAwB,yBAAyB,4BAA4B,qBAAqB,4CAA4C,6BAA6B,oCAAoC,qCAAqC,sCAAsC,GAAG,0BAA0B,sBAAsB,uBAAuB,qBAAqB,sBAAsB,2BAA2B,eAAe,oBAAoB,kBAAkB,mBAAmB,uCAAuC,GAAG,wBAAwB,kCAAkC,qBAAqB,wBAAwB,yBAAyB,2BAA2B,yBAAyB,GAAG,6BAA6B,iBAAiB,4BAA4B,sBAAsB,uBAAuB,GAAG,+CAA+C,2koC;;;;;;;;;;;;;;;;;;;;;;;;;;;ACAn5lB,6EAA6E;AACoD;AAEjI,wDAAwD;AACb;AACE;AACoC;AACH;AACF;AACL;AACX;AAGjB;AACyC;AAEM;AAC5B;AAS9D;IAA2C,+EAAgB;IAsDvD,YAAY;IAEZ,+BAAmB,mBAAwC,EAChD,QAAkB,EAAS,IAAqB,EAChD,iBAAoC,EACpC,aAAoC,EACpC,gBAAkC,EACjC,gBAAkC;QAL9C;QAOI,iCAAiC;QACjC,kBAAM,IAAI,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,aAAa,CAAC,SAGlE;QAXkB,yBAAmB,GAAnB,mBAAmB,CAAqB;QAChD,cAAQ,GAAR,QAAQ,CAAU;QAAS,UAAI,GAAJ,IAAI,CAAiB;QAChD,uBAAiB,GAAjB,iBAAiB,CAAmB;QACpC,mBAAa,GAAb,aAAa,CAAuB;QACpC,sBAAgB,GAAhB,gBAAgB,CAAkB;QACjC,sBAAgB,GAAhB,gBAAgB,CAAkB;QA3D9C,mBAAmB;QACZ,SAAG,GAAW,EAAE,CAAC;QAEjB,iBAAW,GAAW,EAAE,CAAC;QACzB,mBAAa,GAAW,EAAE,CAAC;QAG3B,2BAAqB,GAAG,EAAE,CAAC;QAC3B,eAAS,GAAG,EAAE,CAAC;QACf,uBAAiB,GAAG,EAAE,CAAC;QAQvB,qBAAe,GAAY,KAAK,CAAC;QACjC,iBAAW,GAAY,IAAI,CAAC;QAE5B,gCAA0B,GAAY,KAAK,CAAC;QAG5C,uBAAiB,GAA6B,EAAE,CAAC;QAEjD,gCAA0B,GAAW,EAAE,CAAC;QACxC,8BAAwB,GAAW,CAAC,CAAC;QACrC,eAAS,GAAQ,EAAE,CAAC;QACpB,cAAQ,GAAW,EAAE,CAAC;QACtB,8BAAwB,GAAW,EAAE,CAAC;QACtC,6BAAuB,GAAW,EAAE,CAAC;QACrC,mBAAa,GAAY,IAAI,CAAC;QAC9B,8BAAwB,GAAgC,EAAE,CAAC;QAI3D,oBAAc,GAAW,EAAE,CAAC;QAC5B,kBAAY,GAAW,EAAE,CAAC;QAE1B,gBAAU,GAAG,IAAI,CAAC;QAElB,oBAAc,GAAW,EAAE,CAAC;QAC5B,6BAAuB,GAAW,EAAE,CAAC;QACrC,kBAAY,GAAW,CAAC,CAAC;QAGzB,qBAAe,GAAW,EAAE,CAAC;QAG1B,gCAA0B,GAAG,IAAI,0DAAY,EAAsB,CAAC;QACpE,uBAAiB,GAAG,IAAI,0DAAY,EAAE,CAAC;QAc7C,KAAI,CAAC,kBAAkB,GAAG,IAAI,mFAAkB,EAAE,CAAC;;IACvD,CAAC;IAAA,CAAC;IAEF,wCAAQ,GAAR;QAEI,+DAA+D;QAC/D,IAAI,CAAC,wBAAwB,GAAG,EAAE,CAAC;QAEnC,oCAAoC;QACpC,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAE5B,mBAAmB;QACnB,IAAI,IAAI,CAAC,eAAe,KAAK,OAAO,EAAE;YAClC,yEAAyE;YACzE,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,EAAE,EAAE,YAAY,CAAC,CAAC;YAClE,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;SAC7C;aACI;YACD,oJAAoJ;YACpJ,IAAI,CAAC,iCAAiC,EAAE,CAAC;SAC5C;IACL,CAAC;IAED,oCAAoC;IAEpC,mDAAmD;IACnD,+CAAe,GAAf,UAAgB,QAAgB,EAAE,aAAsB;QAAxD,iBA6EC;QA5EG,IAAI;YACA,IAAI,CAAC,mBAAmB,GAAG,IAAI,oFAAmB,EAAE,CAAC;YAErD,IAAI,CAAC,mBAAmB,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC;YACxC,IAAI,CAAC,mBAAmB,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;YACxD,IAAI,CAAC,mBAAmB,CAAC,cAAc,GAAG,IAAI,CAAC,aAAa,CAAC;YAC7D,IAAI,CAAC,mBAAmB,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;YAClF,IAAI,CAAC,mBAAmB,CAAC,uBAAuB,GAAG,IAAI,CAAC,iBAAiB,CAAC,uBAAuB,CAAC;YAClG,IAAI,CAAC,mBAAmB,CAAC,0BAA0B,GAAG,IAAI,CAAC,iBAAiB,CAAC,0BAA0B,CAAC;YAExG,IAAI,CAAC,mBAAmB,CAAC,aAAa,GAAG,IAAI,CAAC,iBAAiB,CAAC,aAAa,CAAC;YAC9E,IAAI,CAAC,mBAAmB,CAAC,qBAAqB,GAAG,IAAI,CAAC,iBAAiB,CAAC,qBAAqB,CAAC;YAC9F,IAAI,CAAC,mBAAmB,CAAC,UAAU,GAAG,KAAK,CAAC;YAC5C,IAAI,CAAC,mBAAmB,CAAC,aAAa,GAAG,IAAI,CAAC,iBAAiB,CAAC,aAAa,CAAC;YAC9E,IAAI,CAAC,mBAAmB,CAAC,sBAAsB,GAAG,IAAI,CAAC,iBAAiB,CAAC,sBAAsB,CAAC;YAChG,IAAI,CAAC,mBAAmB,CAAC,kBAAkB,GAAG,IAAI,CAAC,iBAAiB,CAAC,kBAAkB,CAAC;YACxF,IAAI,CAAC,mBAAmB,CAAC,gBAAgB,GAAG,IAAI,CAAC,iBAAiB,CAAC,gBAAgB,CAAC;YACpF,IAAI,CAAC,mBAAmB,CAAC,iBAAiB,GAAG,IAAI,CAAC,iBAAiB,CAAC,iBAAiB,CAAC;YAEtF,IAAI,CAAC,gBAAgB,CAAC,iFAAO,CAAC,IAAI,EAAE,8CAA8C,GAAG,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC;YAExH,IAAI,CAAC,mBAAmB,CAAC,eAAe,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,SAAS,CAAC,mBAAS;gBAE9E,IAAI,SAAS,CAAC,IAAI,IAAI,IAAI,IAAI,SAAS,CAAC,UAAU,IAAI,GAAG,EAAE;oBAE3D,KAAI,CAAC,gBAAgB,CAAC,iFAAO,CAAC,IAAI,EAAE,mDAAmD,GAAG,KAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC;oBAE7H,KAAI,CAAC,oBAAoB,GAAG,SAAS,CAAC;oBAEtC,qCAAqC;oBACrC,KAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,sBAAY;wBAE7D,iFAAiF;wBACjF,IAAI,KAAI,CAAC,qBAAqB,CAAC,MAAM,IAAI,CAAC;4BACtC,CAAC,KAAI,CAAC,qBAAqB,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,KAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,UAAC,EAAE,IAAK,SAAE,CAAC,aAAa,IAAI,KAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,YAAY,CAAC,aAAa,EAAE,YAAY,CAAC,EAArF,CAAqF,CAAC,CAAC,EAAE;4BAC5K,yCAAyC;4BACzC,YAAY,CAAC,aAAa,GAAG,KAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,YAAY,CAAC,aAAa,EAAE,YAAY,CAAC,CAAC;4BAC/F,KAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;yBACjD;oBACL,CAAC,CAAC,CAAC;oBAGH,KAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,kBAAQ;wBACrD,KAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;oBAClC,CAAC,CAAC,CAAC;oBAEH,yBAAyB;oBACzB,IAAI,aAAa,IAAI,KAAI,CAAC,qBAAqB,CAAC,MAAM,GAAG,CAAC,EAAE;wBACxD,KAAI,CAAC,wBAAwB,CAAC,IAAI,EAAE,KAAI,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC,CAAC;qBACtE;oBAED,IAAI,KAAI,CAAC,qBAAqB,CAAC,MAAM,KAAK,CAAC;wBACvC,KAAI,CAAC,gBAAgB,CAAC,iFAAO,CAAC,IAAI,EAAE,wCAAwC,GAAG,KAAI,CAAC,mBAAmB,CAAC,QAAQ,GAAG,qCAAqC,CAAC,CAAC;oBAE9J,KAAI,CAAC,eAAe,GAAG,IAAI,CAAC,CAAC,+DAA+D;oBAC5F,KAAI,CAAC,WAAW,GAAG,KAAK,CAAC,CAAC,0CAA0C;oBACpE,IAAI,KAAI,CAAC,0BAA0B;wBAAE,KAAI,CAAC,0BAA0B,GAAG,KAAK,CAAC,CAAC,uCAAuC;iBACxH;qBACI;oBACD,KAAI,CAAC,gBAAgB,CAAC,iFAAO,CAAC,KAAK,EAAE,wGAAwG,GAAG,KAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC;oBACnL,KAAI,CAAC,YAAY,EAAE,CAAC;iBACvB;YAEL,CAAC,EAAE,mBAAS;gBACR,IAAI,KAAI,CAAC,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,IAAI,KAAI,CAAC,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,IAAI,KAAI,CAAC,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,EAAE;oBACpH,oFAAoF;oBACpF,KAAI,CAAC,gBAAgB,CAAC,iFAAO,CAAC,KAAK,EAAE,+EAA+E,GAAG,KAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC;oBAC1J,KAAI,CAAC,YAAY,EAAE,CAAC;iBACvB;YACL,CAAC,CAAC,CAAC;SAEN;QACD,OAAO,CAAC,EAAE;YACN,IAAI,CAAC,gBAAgB,CAAC,iFAAO,CAAC,IAAI,EAAE,gEAAgE,GAAG,IAAI,CAAC,mBAAmB,CAAC,QAAQ,GAAG,WAAW,GAAG,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;SACzL;IAEL,CAAC;IAED,8IAA8I;IAC9I,sEAAsC,GAAtC,UAAuC,YAAiB;QAAxD,iBA2CC;QAzCG,IAAI;YACA,IAAI,eAAe,GAAW,EAAE,CAAC;YAEjC,IAAI,YAAY,IAAI,IAAI,IAAI,YAAY,IAAI,EAAE;gBAC1C,eAAe,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;YAExE,8FAA8F;YAC9F,IAAI,CAAC,mBAAmB,CAAC,wBAAwB,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,aAAa,EAAE,eAAe,CAAC,CAAC,SAAS,CAAC,mBAAS;gBAElI,IAAI,SAAS,CAAC,IAAI,IAAI,IAAI,EAAE;oBACxB,mDAAmD;oBACnD,KAAI,CAAC,wBAAwB,GAAG,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC;oBACvD,KAAI,CAAC,uBAAuB,GAAG,SAAS,CAAC,IAAI,CAAC,uBAAuB,CAAC;oBAEtE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,oBAAoB,IAAI,KAAI,CAAC,uBAAuB,IAAI,IAAI,EAAE;wBAC9E,KAAI,CAAC,gBAAgB,CAAC,iFAAO,CAAC,IAAI,EAAE,yDAAyD,GAAG,eAAe,CAAC,CAAC;wBACjH,KAAI,CAAC,aAAa,GAAG,KAAK,CAAC;qBAC9B;yBACI;wBACD,KAAI,CAAC,gBAAgB,CAAC,iFAAO,CAAC,IAAI,EAAE,qDAAqD,GAAG,eAAe,CAAC,CAAC;wBAC7G,KAAI,CAAC,aAAa,GAAG,IAAI,CAAC;wBAC1B,KAAI,CAAC,qBAAqB,CAAC,YAAY,CAAC,CAAC;qBAC5C;oBAED,IAAI,KAAI,CAAC,0BAA0B;wBAAE,KAAI,CAAC,0BAA0B,GAAG,KAAK,CAAC,CAAC,sCAAsC;iBACvH;qBACI;oBACD,KAAI,CAAC,YAAY,EAAE,CAAC;iBACvB;YAEL,CAAC,EAAE,mBAAS;gBACR,IAAI,KAAI,CAAC,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,IAAI,KAAI,CAAC,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,IAAI,KAAI,CAAC,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,EAAE;oBACpH,KAAI,CAAC,gBAAgB,CAAC,iFAAO,CAAC,KAAK,EAAE,yEAAyE,GAAG,eAAe,CAAC,CAAC;oBAClI,KAAI,CAAC,YAAY,EAAE,CAAC;iBACvB;YACL,CAAC,CAAC,CAAC;SAEN;QACD,OAAO,CAAC,EAAE;YACN,IAAI,CAAC,gBAAgB,CAAC,iFAAO,CAAC,KAAK,EAAE,mFAAmF,GAAG,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;SAC3J;IACL,CAAC;IAED,yDAAyD;IACzD,iEAAiC,GAAjC;QAAA,iBA0CC;QAzCG,IAAI;YAEA,IAAI,CAAC,mBAAmB,CAAC,wBAAwB,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,mBAAS;gBAErH,IAAI,SAAS,CAAC,IAAI,IAAI,IAAI,EAAE;oBACxB,OAAO,CAAC,GAAG,CAAC,0BAA0B,EAAE,SAAS,CAAC,IAAI,CAAC,CAAC;oBAExD,mDAAmD;oBACnD,KAAI,CAAC,wBAAwB,GAAG,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC;oBACvD,KAAI,CAAC,uBAAuB,GAAG,SAAS,CAAC,IAAI,CAAC,uBAAuB,CAAC;oBAEtE,IAAI,SAAS,CAAC,IAAI,CAAC,oBAAoB,IAAI,KAAI,CAAC,uBAAuB,IAAI,IAAI,EAAE;wBAC7E,2BAA2B;wBAC3B,yFAAyF;wBACzF,KAAI,CAAC,gBAAgB,CAAC,iFAAO,CAAC,IAAI,EAAE,4CAA4C,CAAC,CAAC;wBAClF,KAAI,CAAC,QAAQ,GAAG,KAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,EAAE,EAAE,YAAY,CAAC,CAAC;wBAClE,KAAI,CAAC,eAAe,CAAC,KAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;qBAC7C;yBACI;wBACD,wDAAwD;wBACxD,KAAI,CAAC,gBAAgB,CAAC,iFAAO,CAAC,IAAI,EAAE,gDAAgD,CAAC,CAAC;wBACtF,KAAI,CAAC,YAAY,EAAE,CAAC;qBACvB;iBACJ;qBACI;oBACD,KAAI,CAAC,gBAAgB,CAAC,iFAAO,CAAC,KAAK,EAAE,oFAAoF,CAAC,CAAC;oBAC3H,KAAI,CAAC,YAAY,EAAE,CAAC;iBACvB;YAEL,CAAC,EAAE,mBAAS;gBACR,IAAI,KAAI,CAAC,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,IAAI,KAAI,CAAC,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,IAAI,KAAI,CAAC,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,EAAE;oBACpH,KAAI,CAAC,gBAAgB,CAAC,iFAAO,CAAC,KAAK,EAAE,gEAAgE,CAAC,CAAC;oBACvG,KAAI,CAAC,YAAY,EAAE,CAAC;iBACvB;YACL,CAAC,CAAC,CAAC;SAEN;QACD,OAAO,CAAC,EAAE;YACN,IAAI,CAAC,gBAAgB,CAAC,iFAAO,CAAC,KAAK,EAAE,6EAA6E,GAAG,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;SACrJ;IAEL,CAAC;IAED,aAAa;IAEb,oBAAoB;IAEpB,oEAAoE;IAC7D,8CAAc,GAArB,UAAsB,KAAK,EAAE,gBAAgB,EAAE,SAAS,EAAE,UAAU,EAAE,cAAc;QAChF,IAAI;YACA,IAAI,MAAM,GAAG,gBAAgB,CAAC,SAAS,CAAC,CAAC,EAAE,gBAAgB,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;YACjF,IAAI,QAAQ,GAAG,EAAE,CAAC;YAClB,IAAI,YAAY,GAAG,EAAE,CAAC;YACtB,IAAI,UAAU,GAAG,EAAE,CAAC;YAEpB,IAAI,gBAAgB,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC;gBACjC,QAAQ,GAAG,gBAAgB,CAAC,SAAS,CAAC,gBAAgB,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,gBAAgB,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;;gBAE/G,QAAQ,GAAG,gBAAgB,CAAC,SAAS,CAAC,gBAAgB,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;YAEpF,IAAI,QAAQ,IAAI,EAAE,IAAI,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;gBAC7C,YAAY,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;gBAC7C,UAAU,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;gBAE3C,IAAI,YAAY,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC,CAAC;oBAC/B,YAAY,GAAG,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;gBAE7C,IAAI,UAAU,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC,CAAC;oBAC7B,UAAU,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;gBAEzC,QAAQ,GAAG,YAAY,GAAG,KAAK,GAAG,UAAU,CAAC;aAChD;YAED,IAAI,IAAI,GAAG,CAAC,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,WAAW,EAAE,UAAU,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAC;YAC1F,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,MAAM,CAAC,CAAC;YACzB,IAAI,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;YAE/B,IAAI,CAAC,gBAAgB,GAAG,OAAO,GAAG,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;YACzF,IAAI,CAAC,sBAAsB,GAAG,QAAQ,CAAC;YACvC,IAAI,CAAC,mBAAmB,GAAG,SAAS,CAAC;YACrC,IAAI,CAAC,sBAAsB,GAAG,cAAc,CAAC;YAC7C,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;YACnI,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,UAAU,EAAE,YAAY,CAAC,GAAG,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;YAEnI,qDAAqD;YACrD,IAAI,CAAC,kBAAkB,EAAE,CAAC;YAE1B,IAAI,CAAC,gBAAgB,CAAC,iFAAO,CAAC,IAAI,EAAE,wBAAwB,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,MAAM,EAAE,UAAU,CAAC,GAAG,IAAI,GAAG,QAAQ,CAAC,CAAC;SACjI;QACD,OAAO,CAAC,EAAE;YACN,IAAI,CAAC,gBAAgB,CAAC,iFAAO,CAAC,KAAK,EAAE,sDAAsD,GAAG,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;SAC9H;IACL,CAAC;IAEM,wDAAwB,GAA/B,UAAgC,KAAK,EAAE,oBAAoB;QACvD,IAAI;YACA,IAAI,YAAY,GAAG,oBAAoB,CAAC,aAAa,CAAC;YAEtD,IAAI,CAAC,0BAA0B,GAAG,YAAY,CAAC;YAE/C,mCAAmC;YACnC,IAAI,KAAK,IAAI,IAAI,EAAE;gBACf,uEAAuE;gBACvE,IAAI,MAAM,GAAG,KAAK,CAAC,aAAa,CAAC;gBAEjC,mDAAmD;gBACnD,IAAI,oBAAoB,IAAI,IAAI,IAAa,oBAAoB,CAAC,OAAO;oBACrE,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,yCAAyC,CAAC,CAAC;gBAE5E,2CAA2C;gBAC3C,CAAC,CAAC,kBAAkB,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC;oBAE1C,sCAAsC;oBAEtC,+GAA+G;oBAC/G,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAuB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,cAAc,EAAE;wBAC7H,CAAC,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC;wBACtB,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,wBAAwB,CAAC,CAAC;qBAC9C;gBAEL,CAAC,CAAC,CAAC;aACN;YACD,iCAAiC;YAEjC,8JAA8J;YAC9J,IAAI,IAAI,CAAC,uBAAuB,IAAI,IAAI,IAAI,IAAI,CAAC,GAAG,KAAK,MAAM,IAAI,IAAI,CAAC,eAAe,IAAG,OAAO,EAAE;gBAC/F,IAAI,CAAC,0BAA0B,GAAG,IAAI,CAAC;gBACvC,IAAI,CAAC,sCAAsC,CAAC,YAAY,CAAC,CAAC;aAC7D;;gBAEG,IAAI,CAAC,qBAAqB,CAAC,YAAY,CAAC,CAAC;SAChD;QACD,OAAO,CAAC,EAAE;YACN,IAAI,CAAC,gBAAgB,CAAC,iFAAO,CAAC,KAAK,EAAE,qEAAqE,GAAG,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;SAC7I;IACL,CAAC;IAEM,qDAAqB,GAA5B,UAA6B,YAAY;QAAzC,iBAuCC;QAtCG,IAAI;YAEA,IAAI,YAAY,GAAG,EAAE,CAAC;YACtB,IAAI,UAAU,GAAG,EAAE,CAAC;YAEpB,uCAAuC;YACvC,IAAI,CAAC,iBAAiB,GAAG,EAAE,CAAC;YAC5B,IAAI,CAAC,qBAAqB,CAAC,OAAO,CAAC,sBAAY;gBAC3C,IAAI,YAAY,CAAC,aAAa,IAAI,KAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,YAAY,EAAE,YAAY,CAAC,EAAE;oBACnF,YAAY,CAAC,SAAS,CAAC,OAAO,CAAC,kBAAQ;wBAEnC,8CAA8C;wBAC9C,IAAI,KAAI,CAAC,iBAAiB,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,KAAI,CAAC,iBAAiB,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,KAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,UAAC,EAAE,IAAK,SAAE,CAAC,eAAe,IAAI,QAAQ,CAAC,eAAe,EAA9C,CAA8C,CAAC,CAAC;4BAEjK,+CAA+C;4BAC/C,IAAI,QAAQ,CAAC,eAAe,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;gCAC3C,YAAY,GAAG,QAAQ,CAAC,eAAe,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;gCAC7D,UAAU,GAAG,QAAQ,CAAC,eAAe,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;gCAE3D,IAAI,YAAY,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC,CAAC;oCAC/B,YAAY,GAAG,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;gCAE7C,IAAI,UAAU,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC,CAAC;oCAC7B,UAAU,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;gCAEzC,QAAQ,CAAC,eAAe,GAAG,YAAY,GAAG,KAAK,GAAG,UAAU,CAAC;6BAChE;wBAEL,KAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;oBAC1C,CAAC,CAAC,CAAC;iBAEN;YACL,CAAC,CAAC,CAAC;SAEN;QACD,OAAO,CAAC,EAAE;YACN,IAAI,CAAC,gBAAgB,CAAC,iFAAO,CAAC,KAAK,EAAE,sDAAsD,GAAG,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;SAC9H;IACL,CAAC;IAED,YAAY;IAEZ,iCAAiC;IAE1B,wDAAwB,GAA/B;QAEI,+CAA+C;QAC/C,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;QAE7B,IAAI,SAAS,GAAG,QAAQ,CAAC,cAAc,CAAC,iBAAiB,CAAC,CAAC;QAC3D,IAAI,YAAY,GAAG,CAAC,CAAC;QACrB,IAAI,UAAU,GAAG,WAAW,CAAC;YACzB,SAAS,CAAC,UAAU,IAAI,CAAC,CAAC;YAC1B,YAAY,IAAI,CAAC,CAAC;YAClB,IAAI,YAAY,IAAI,GAAG,EAAE;gBACrB,aAAa,CAAC,UAAU,CAAC,CAAC;aAC7B;QACL,CAAC,EAAE,EAAE,CAAC,CAAC;QAGP,IAAI,MAAM,GAAG,SAAS,CAAC,WAAW,CAAC;QACnC,IAAI,YAAY,GAAG,SAAS,CAAC,WAAW,CAAC;QACzC,IAAI,WAAW,GAAG,CAAC,CAAC;QAGpB,IAAI,SAAS,CAAC,UAAU,IAAI,CAAC;YACzB,WAAW,GAAG,SAAS,CAAC,UAAU,GAAG,GAAG,CAAC;;YAEzC,WAAW,GAAG,SAAS,CAAC,UAAU,CAAC;QAEvC,IAAI,WAAW,IAAI,CAAC,EAAE;YAClB,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;SAC9B;IAEL,CAAC;IAEM,oDAAoB,GAA3B;QAEI,wFAAwF;QACxF,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;QAE5B,iBAAiB;QACjB,IAAI,SAAS,GAAG,QAAQ,CAAC,cAAc,CAAC,iBAAiB,CAAC,CAAC;QAC3D,IAAI,YAAY,GAAG,CAAC,CAAC;QACrB,IAAI,UAAU,GAAG,WAAW,CAAC;YACzB,SAAS,CAAC,UAAU,IAAI,CAAC,CAAC;YAC1B,YAAY,IAAI,CAAC,CAAC;YAClB,IAAI,YAAY,IAAI,GAAG,EAAE;gBACrB,aAAa,CAAC,UAAU,CAAC,CAAC;aAC7B;QACL,CAAC,EAAE,EAAE,CAAC,CAAC;QAGP,mDAAmD;QACnD,IAAI,MAAM,GAAG,SAAS,CAAC,WAAW,GAAG,EAAE,CAAC;QACxC,IAAI,YAAY,GAAG,SAAS,CAAC,WAAW,CAAC;QACzC,IAAI,WAAW,GAAG,SAAS,CAAC,UAAU,CAAC;QAEvC,IAAI,YAAY,GAAG,MAAM,KAAK,WAAW,EAAE;YACvC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;SAC/B;IAEL,CAAC;IAED,0EAA0E;IAC1E,wCAAQ,GAAR,UAAS,KAAY;QACjB,wDAAwD;QACxD,IAAI,SAAS,GAAG,QAAQ,CAAC,cAAc,CAAC,iBAAiB,CAAC,CAAC;QAC3D,IAAI,eAAe,GAAG,KAAK,CAAC,MAAM,CAAC;QAEnC,IAAI,MAAM,GAAG,SAAS,CAAC,WAAW,CAAC;QACnC,IAAI,YAAY,GAAG,SAAS,CAAC,WAAW,CAAC;QACzC,IAAI,WAAW,GAAG,SAAS,CAAC,UAAU,CAAC;QAEvC,IAAI,YAAY,GAAG,MAAM,KAAK,WAAW,EAAE;YAEvC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;SAC/B;aACI,IAAI,WAAW,IAAI,CAAC,EAAE;YACvB,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;SAC9B;aACI;YAED,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;YAC5B,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;SAChC;IACL,CAAC;IAED,+CAAe,GAAf,UAAgB,OAAgB;QAE5B,IAAI,OAAO,EAAE;YACR,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,CAAuB,CAAC,QAAQ,GAAG,IAAI,CAAC;YAC3D,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,CAAuB,CAAC,SAAS,GAAG,kGAAkG,CAAC;SAC9J;aACI;YACA,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,CAAuB,CAAC,QAAQ,GAAG,KAAK,CAAC;YAC5D,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,CAAuB,CAAC,SAAS,GAAG,mGAAmG,CAAC;SAC/J;IACL,CAAC;IAED,gDAAgB,GAAhB,UAAiB,OAAgB;QAE7B,IAAI,OAAO,EAAE;YACR,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAuB,CAAC,QAAQ,GAAG,IAAI,CAAC;YAC5D,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAuB,CAAC,SAAS,GAAG,oGAAoG,CAAC;SACjK;aACI;YACA,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAuB,CAAC,QAAQ,GAAG,KAAK,CAAC;YAC7D,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAuB,CAAC,SAAS,GAAG,oGAAoG,CAAC;SACjK;IACL,CAAC;IAED,6CAAa,GAAb;QACI,IAAI;YACA,IAAI,oBAA0B,CAAC;YAC/B,IAAI,wBAAwB,CAAC;YAE7B,IAAI,IAAI,CAAC,qBAAqB,CAAC,MAAM,GAAG,CAAC,EAAE;gBACvC,wBAAwB,GAAG,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,qBAAqB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,aAAa,CAAC;gBAE3G,0DAA0D;gBAC1D,oBAAoB,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,wBAAwB,EAAE,YAAY,CAAC,CAAC,CAAC;gBAEjG,6DAA6D;gBAC7D,IAAI,IAAI,CAAC,GAAG,KAAK,MAAM,IAAI,MAAM,CAAC,MAAM,CAAC,qFAAoB,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAC,IAAI,CAAC,EAAE;oBAC1F,oBAAoB,GAAG,IAAI,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,oBAAoB,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;iBACrG;gBAED,IAAI,CAAC,0BAA0B,GAAG,IAAI,CAAC;gBAEvC,IAAI,CAAC,gBAAgB,CAAC,iFAAO,CAAC,IAAI,EAAE,8CAA8C,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,oBAAoB,EAAE,UAAU,CAAC,CAAC,CAAC;gBAEhJ,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,oBAAoB,EAAE,YAAY,CAAC,EAAE,KAAK,CAAC,CAAC;aAC5F;SAEJ;QACD,OAAO,CAAC,EAAE;YACN,IAAI,CAAC,gBAAgB,CAAC,iFAAO,CAAC,KAAK,EAAE,qDAAqD,GAAG,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;SAC7H;IACL,CAAC;IAED,YAAY;IAEZ,gCAAgC;IAExB,oDAAoB,GAA5B;QAEI,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC;QACtC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,iBAAiB,CAAC,UAAU,CAAC;QACjD,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,iBAAiB,CAAC,WAAW,CAAC;QACtD,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC;QAClD,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,iBAAiB,CAAC,cAAc,CAAC;QAC3D,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC;QACxD,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,iBAAiB,CAAC,cAAc,CAAC;QAC5D,IAAI,CAAC,uBAAuB,GAAG,IAAI,CAAC,iBAAiB,CAAC,uBAAuB,CAAC;QAC9E,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,iBAAiB,CAAC,WAAW,CAAC;QACtD,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,iBAAiB,CAAC,eAAe,CAAC;IAClE,CAAC;IAEO,kDAAkB,GAA1B;QAEI,IAAI,CAAC,kBAAkB,CAAC,gBAAgB,GAAG,IAAI,CAAC,gBAAgB,CAAC;QACjE,IAAI,CAAC,kBAAkB,CAAC,sBAAsB,GAAG,IAAI,CAAC,sBAAsB,CAAC;QAC7E,IAAI,CAAC,kBAAkB,CAAC,oBAAoB,GAAG,IAAI,CAAC,mBAAmB,CAAC;QACxE,IAAI,CAAC,kBAAkB,CAAC,sBAAsB,GAAG,IAAI,CAAC,sBAAsB,CAAC;QAC7E,IAAI,CAAC,kBAAkB,CAAC,mBAAmB,GAAG,IAAI,CAAC,mBAAmB,CAAC;QACvE,IAAI,CAAC,kBAAkB,CAAC,iBAAiB,GAAG,IAAI,CAAC,iBAAiB,CAAC;QAEnE,IAAI,CAAC,0BAA0B,CAAC,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;IAClE,CAAC;IAEO,gDAAgB,GAAxB,UAAyB,OAAe,EAAE,UAAkB;QAExD,IAAI,CAAC,UAAU,GAAG,IAAI,oFAAU,EAAE,CAAC;QAEnC,IAAI,CAAC,UAAU,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC,aAAa;QAC/D,IAAI,CAAC,UAAU,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC;QAC/B,IAAI,CAAC,UAAU,CAAC,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC;QAC1C,IAAI,CAAC,UAAU,CAAC,gBAAgB,GAAG,IAAI,CAAC,WAAW,CAAC;QACpD,IAAI,CAAC,UAAU,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;QAC3C,IAAI,CAAC,UAAU,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC;QACrD,IAAI,CAAC,UAAU,CAAC,OAAO,GAAG,OAAO,CAAC;QAClC,IAAI,CAAC,UAAU,CAAC,UAAU,GAAG,UAAU,CAAC;QACxC,IAAI,CAAC,UAAU,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;QAE/C,iBAAM,wBAAwB,YAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACpD,CAAC;IAED,4CAAY,GAAZ;QACI,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;QACzB,IAAI,CAAC,0BAA0B,GAAG,KAAK,CAAC;QAExC,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,CAAC;IAElC,CAAC;;gBAvhBuC,mFAAmB;gBACtC,wDAAQ;gBAAe,0DAAe;gBAC7B,yFAAiB;gBACrB,yEAAqB;gBAClB,sFAAgB;gBACf,oFAAgB;;IAXrC;QAAR,2DAAK,EAAE;wEAAoB,kFAAiB;oEAAC;IACpC;QAAT,4DAAM,EAAE;;6EAAqE;IACpE;QAAT,4DAAM,EAAE;;oEAAwC;IApDxC,qBAAqB;QANjC,+DAAS,CAAC;YACP,QAAQ,EAAE,wBAAwB;YAClC,4MAAoD;YAEpD,SAAS,EAAE,CAAC,wDAAQ,EAAE,mFAAmB,EAAE,yFAAiB,EAAE,oFAAgB,CAAC;;SAClF,CAAC;+EAyD0C,mFAAmB;YACtC,wDAAQ,EAAe,0DAAe;YAC7B,yFAAiB;YACrB,yEAAqB;YAClB,sFAAgB;YACf,oFAAgB;OA7DrC,qBAAqB,CAmlBjC;IAAD,4BAAC;CAAA,CAnlB0C,0EAAgB,GAmlB1D;AAnlBiC;;;;;;;;;;;;;;;;;;;;;;;;;;;AC1BlC,iBAAiB;AACjB,yDAAyD;AAChB;AAEM;AACmB;AAClE,cAAc;AACgC;AACA;AACA;AACK;AAEnD,aAAa;AAC0C;AAEvD,YAAY;AACZ,6EAA6E;AAEnC;AACiC;AA6B3E;IAAA;IAAkC,CAAC;IAAtB,kBAAkB;QA3B9B,8DAAQ,CAAC;YACN,OAAO,EAAE;gBACL,iBAAiB;gBACjB,4DAAY;gBACZ,0CAA0C;gBAC1C,0DAAW;gBACX,kEAAmB;gBACnB,uDAAa,CAAC,OAAO,CAAC;oBAClB,MAAM,EAAE,yCAAyC;iBAClD,CAAC;gBAEJ,sBAAsB;gBACtB,gEAAiB;gBACjB,2DAAe;gBACf,2DAAe;gBACf,2DAAe;gBAEf,aAAa;gBACb,4DAAU;aAEb;YACD,OAAO,EAAE,CAAC,wFAAqB,CAAC;YAChC,YAAY,EAAE;gBACV,wFAAqB;aACxB;SACJ,CAAC;OAEW,kBAAkB,CAAI;IAAD,yBAAC;CAAA;AAAJ;;;;;;;;;;;;;;;;;;;;;AChDY;AAEO;AAIL;AACkB;AAO/D;IAMI,6BAAoB,IAAqB,EAAU,MAAkB,EAAU,MAAgC;QAA3F,SAAI,GAAJ,IAAI,CAAiB;QAAU,WAAM,GAAN,MAAM,CAAY;QAAU,WAAM,GAAN,MAAM,CAA0B;QAJxG,YAAO,GAAG,cAAc,CAAC;QACzB,mBAAc,GAAG,WAAW,CAAC;QAC7B,YAAO,GAAQ,EAAE,CAAC;IAE0F,CAAC;IAEpH,6CAAe,GAAf,UAAgB,mBAAwC;QAEpD,6DAA6D;QAE7D,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAM;YACvB,GAAG,EAAE,IAAI,CAAC,OAAO,GAAG,2BAA2B;YAC/C,IAAI,EAAE,mBAAmB;YACzB,yBAAyB,EAAE,IAAI;YAC/B,yBAAyB,EAAE,GAAG;SACjC,CAAC,CAAC;IACP,CAAC;IAED,sDAAwB,GAAxB,UAAyB,GAAW,EAAE,WAAmB,EAAE,cAAsB,EAAE,YAAoB;QACnG,IAAI,MAAM,GAAU,EAAE,CAAC;QAEvB,IAAI,YAAY,IAAI,IAAI,IAAI,YAAY,IAAI,EAAE;YAC1C,YAAY,GAAG,IAAI,CAAC;QAExB,IAAI,WAAW,IAAI,IAAI,IAAI,WAAW,IAAI,EAAE;YACxC,MAAM,GAAG,GAAG,GAAG,GAAG,GAAG,WAAW,GAAG,GAAG,GAAG,YAAY,CAAC;QAE1D,IAAI,cAAc,IAAI,IAAI,IAAI,cAAc,IAAI,EAAE;YAC9C,MAAM,GAAG,MAAM,GAAG,GAAG,GAAG,cAAc;QAE1C,+CAA+C;QAE/C,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAM;YACtB,GAAG,EAAE,IAAI,CAAC,OAAO,GAAG,2BAA2B,GAAG,MAAM;SAC3D,CAAC,CAAC;IACP,CAAC;IAED,qCAAqC;IAC7B,yCAAW,GAAnB,UAAoB,KAAU;QAE1B,mDAAmD;QACnD,6EAA6E;QAC7E,mCAAmC;IACvC,CAAC;;gBAvCyB,0DAAe;gBAAkB,+DAAU;gBAAkB,4EAAwB;;IANtG,mBAAmB;QAD/B,gEAAU,EAAE;+EAOiB,0DAAe,EAAkB,+DAAU,EAAkB,4EAAwB;OANtG,mBAAmB,CA+C/B;IAAD,0BAAC;CAAA;AA/C+B;;;;;;;;;;;;;;;;;;;;;;;ACdhC,6EAA6E;AACoD;AAIpF;AAC7C,sDAAsD;AAC2B;AAEH;AACE;AACpB;AAO5D;IAKI,kCAAkC;IAClC,qEAAqE;IAErE,YAAY;IAEZ,0BAAmB,IAAqB,EAC7B,iBAAoC,EACpC,gBAAkC,EAClC,aAAoC;QAE3C,8EAA8E;QAC9E,uDAAuD;QANxC,SAAI,GAAJ,IAAI,CAAiB;QAC7B,sBAAiB,GAAjB,iBAAiB,CAAmB;QACpC,qBAAgB,GAAhB,gBAAgB,CAAkB;QAClC,kBAAa,GAAb,aAAa,CAAuB;IAK/C,CAAC;IAAA,CAAC;IAEF,mCAAQ,GAAR;IAEA,CAAC;IAED,0CAA0C;IAC1C,yEAAyE;IACzE,6DAA6D;IAE7D,uEAAuE;IAEvE,0EAA0E;IAE1E,uCAAuC;IAEvC,oDAAoD;IACpD,iEAAiE;IACjE,iBAAiB;IACjB,WAAW;IAEX,SAAS;IAET,6CAA6C;IAC7C,iDAAiD;IACjD,GAAG;IAEI,mDAAwB,GAA/B,UAAgC,UAAsB;QAAtD,iBAuBC;QArBG,IAAI,UAAU,GAAG,IAAI,CAAC,aAAa,CAAC,aAAa,EAAE,CAAC;QAEpD,IAAI,UAAU,IAAI,IAAI,EAAE;YACpB,UAAU,CAAC,QAAQ,GAAG,UAAU,CAAC,EAAE,GAAG,GAAG,GAAG,UAAU,CAAC,UAAU,CAAC;YAClE,UAAU,CAAC,aAAa,GAAG,UAAU,CAAC,OAAO,GAAG,GAAG,GAAG,UAAU,CAAC,eAAe,CAAC;SACpF;QACD,UAAU,CAAC,UAAU,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC;QAE7C,IAAI,CAAC,iBAAiB,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC,SAAS,CAAC,mBAAS;YAC9D,IAAI,SAAS,IAAI,IAAI,IAAI,SAAS,CAAC,UAAU,IAAI,GAAG,EAAE;gBAClD,2DAA2D;aAC9D;iBACI;gBACD,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;aACpC;YAED,qCAAqC;YACrC,IAAI,UAAU,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,OAAO,EAAE;gBAC9C,KAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;aAC9B;QACL,CAAC,CAAC,CAAC;IACP,CAAC;IAID,yBAAyB;IAEjB,oCAAS,GAAjB,UAAkB,UAAsB;QAEpC,IAAI,CAAC,iBAAiB,GAAG,IAAI,wFAAiB,EAAE,CAAC;QAEjD,IAAI,CAAC,iBAAiB,CAAC,IAAI,GAAG,IAAI,CAAC,kBAAkB,CAAC,UAAU,CAAC,CAAC;QAClE,IAAI,CAAC,iBAAiB,CAAC,OAAO,GAAG,cAAc,GAAG,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;QACjG,IAAI,CAAC,iBAAiB,CAAC,EAAE,GAAG,UAAU,CAAC,WAAW,CAAC;QAEnD,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,SAAS,CAAC,mBAAS;YACvE,IAAI,SAAS,IAAI,IAAI,IAAI,SAAS,CAAC,UAAU,IAAI,GAAG,EAAE;gBAClD,mDAAmD;aACtD;;gBAEG,OAAO,CAAC,GAAG,CAAC,mCAAmC,CAAC,CAAC;QACzD,CAAC,CAAC,CAAC;IACP,CAAC;IAEO,6CAAkB,GAA1B,UAA2B,UAAsB;QAC7C,IAAI,SAAS,GAAG,EAAE,CAAC;QAEnB,SAAS,GAAG,yQAMsC,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,YAAY,CAAC,qQAI/C,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,qNAI5B,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,gBAAgB,CAAC,mNAIzC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,kNAIlC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,UAAU,CAAC,oNAInC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,UAAU,CAAC,mNAInC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,cAAc,CAAC,qPAIpE,CAAC;QAGrB,OAAO,SAAS,CAAC;IACrB,CAAC;IAEO,2CAAgB,GAAxB,UAAyB,YAAoB;QAEzC,IAAI,GAAG,GAAW,EAAE,CAAC;QAErB,QAAQ,YAAY,EAAE;YAClB,KAAK,CAAC,CAAC,CAAC;gBAAE,GAAG,GAAG,iBAAiB,CAAC;gBAAC,MAAM;aAAE;YAC3C,KAAK,CAAC,CAAC,CAAC;gBAAE,GAAG,GAAG,qBAAqB,CAAC;gBAAC,MAAM;aAAE;YAC/C,KAAK,CAAC,CAAC,CAAC;gBAAE,GAAG,GAAG,mBAAmB,CAAC;gBAAC,MAAM;aAAE;YAE7C,OAAO,CAAC,CAAC;gBAAE,GAAG,GAAG,WAAW,CAAC;gBAAC,MAAM;aAAE;SACzC;QAED,OAAO,GAAG,CAAC;IACf,CAAC;IAEO,kCAAO,GAAf,UAAgB,GAAG;QACf,IAAI,GAAG,KAAK,IAAI,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,GAAG;YACxC,OAAO,IAAI;;YAEX,OAAO,GAAG,CAAC;IACnB,CAAC;IAED,YAAY;IAEZ,qBAAqB;IAEd,wCAAa,GAApB;QAEI,IAAI,UAAU,GAAG,WAAW,CAAC;QAE7B,IAAI,IAAI,CAAC,aAAa,IAAI,IAAI,EAAE;YAC5B,IAAI,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE;gBAC7B,UAAU,GAAG,QAAQ,CAAC;iBACrB,IAAI,IAAI,CAAC,aAAa,CAAC,SAAS,EAAE;gBACnC,UAAU,GAAG,SAAS,CAAC;iBACtB,IAAI,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE;gBAClC,UAAU,GAAG,QAAQ,CAAC;;gBAEtB,UAAU,GAAG,WAAW,CAAC;SAChC;QAED,OAAO,UAAU,CAAC;IACtB,CAAC;;gBAtKwB,0DAAe;gBACV,yFAAiB;gBAClB,sFAAgB;gBACnB,yEAAqB;;IAbtC,gBAAgB;QAL5B,+DAAS,CAAC;YACP,QAAQ,EAAE,UAAU;YACpB,QAAQ,EAAE,EAAE;YACZ,SAAS,EAAE,CAAC,yFAAiB,EAAE,sFAAgB,EAAE,yEAAqB,CAAC;SAC1E,CAAC;+EAW2B,0DAAe;YACV,yFAAiB;YAClB,sFAAgB;YACnB,yEAAqB;OAbtC,gBAAgB,CAoL5B;IAAD,uBAAC;CAAA;AApL4B;;;;;;;;;;;;;AClB7B;AAAA;AAAA;AAAA;AAAA;IAAA;QACI,aAAQ,GAAW,EAAE,CAAC;QACtB,WAAM,GAAW,EAAE,CAAC;IACxB,CAAC;IAAD,oBAAC;AAAD,CAAC;;AAED;IAAA;QACI,sBAAiB,GAAG,EAAE,CAAC;QACvB,QAAG,GAAW,EAAE,CAAC;QACjB,eAAU,GAAW,EAAE,CAAC;QACxB,gBAAW,GAAW,EAAE,CAAC;QACzB,cAAS,GAAW,EAAE,CAAC;QACvB,mBAAc,GAAW,EAAE,CAAC;QAC5B,mBAAc,GAAW,EAAE,CAAC;QAC5B,iBAAY,GAAW,CAAC,CAAC;QACzB,gBAAW,GAAW,EAAE,CAAC;IAC7B,CAAC;IAAD,8BAAC;AAAD,CAAC;;AACD;IAAA;QACI,0BAAqB,GAAY,KAAK,CAAC;QACvC,8BAAyB,GAAG,EAAE,CAAC;IACnC,CAAC;IAAD,+BAAC;AAAD,CAAC;;;;;;;;;;;;;ACnBD,kCAAkC,0BAA0B,sBAAsB,uBAAuB,GAAG,2BAA2B,0BAA0B,sBAAsB,uBAAuB,qBAAqB,GAAG,2BAA2B,2CAA2C,sCAAsC,gCAAgC,qCAAqC,mCAAmC,8BAA8B,sBAAsB,4BAA4B,wCAAwC,sBAAsB,GAAG,uBAAuB,kDAAkD,wHAAwH,qBAAqB,0BAA0B,GAAG,iBAAiB,oBAAoB,mBAAmB,kBAAkB,+BAA+B,sBAAsB,oBAAoB,yBAAyB,0BAA0B,0BAA0B,GAAG,2BAA2B,6BAA6B,kBAAkB,2BAA2B,6CAA6C,+4E;;;;;;;;;;;;;;;;;;;;;;;;;;ACAnrC,6EAA6E;AACoD;AAEjI,wDAAwD;AACb;AACE;AACoC;AACH;AACF;AAChB;AAGpB;AAC4C;AAEtB;AAQ9D;IAAiD,qFAAgB;IA2B7D,YAAY;IAEZ,qCAAmB,QAAkB,EAAS,IAAqB,EACxD,iBAAoC,EAAS,aAAoC,EAAS,gBAAkC,EAC3H,gBAAkC;QAF9C;QAII,iCAAiC;QACjC,kBAAM,IAAI,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,aAAa,CAAC,SAGlE;QARkB,cAAQ,GAAR,QAAQ,CAAU;QAAS,UAAI,GAAJ,IAAI,CAAiB;QACxD,uBAAiB,GAAjB,iBAAiB,CAAmB;QAAS,mBAAa,GAAb,aAAa,CAAuB;QAAS,sBAAgB,GAAhB,gBAAgB,CAAkB;QAC3H,sBAAgB,GAAhB,gBAAgB,CAAkB;QA7B9C,mBAAmB;QACZ,SAAG,GAAW,EAAE,CAAC;QACjB,iBAAW,GAAW,EAAE,CAAC;QACzB,mBAAa,GAAW,EAAE,CAAC;QAG3B,eAAS,GAAW,EAAE,CAAC;QACvB,cAAQ,GAAW,EAAE,CAAC;QACtB,8BAAwB,GAAgC,EAAE,CAAC;QAC3D,gBAAU,GAAG,IAAI,CAAC;QAElB,oBAAc,GAAW,EAAE,CAAC;QAC5B,kBAAY,GAAW,CAAC,CAAC;QACzB,gCAA0B,GAAY,KAAK,CAAC;QAC5C,2BAAqB,GAAY,IAAI,CAAC;QACtC,uBAAiB,GAAG,EAAE,CAAC;QACvB,+BAAyB,GAAG,EAAE,CAAC;QAM5B,mCAA6B,GAAG,IAAI,0DAAY,EAA4B,CAAC;QAC7E,uBAAiB,GAAG,IAAI,0DAAY,EAAE,CAAC;QAW7C,KAAI,CAAC,wBAAwB,GAAG,IAAI,sFAAwB,EAAE,CAAC;;IACnE,CAAC;IAAA,CAAC;IAGF,8CAAQ,GAAR;QACI,IAAI;YACA,iCAAiC;YACjC,IAAI,CAAC,0BAA0B,EAAE,CAAC;SAErC;QACD,OAAO,CAAC,EAAE;YACN,IAAI,CAAC,gBAAgB,CAAC,gFAAO,CAAC,KAAK,EAAE,mDAAmD,GAAG,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;SAC3H;IAEL,CAAC;IAED,gCAAgC;IAEhC,8DAAwB,GAAxB;QACI,IAAI;YACA,IAAI,CAAC,0BAA0B,GAAG,IAAI,CAAC;YAEvC,8CAA8C;YAC9C,IAAI,IAAI,CAAC,yBAAyB,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,UAAC,EAAE,IAAK,SAAE,CAAC,MAAM,CAAC,WAAW,EAAE,IAAI,KAAK,EAAhC,CAAgC,CAAC;gBAC1H,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC;iBACjC,IAAI,IAAI,CAAC,yBAAyB,CAAC,MAAM,KAAK,IAAI,CAAC,iBAAiB,CAAC,MAAM;gBAC5E,IAAI,CAAC,qBAAqB,GAAG,KAAK,CAAC;YAEvC,qDAAqD;YACrD,IAAI,CAAC,kBAAkB,EAAE,CAAC;YAC1B,+CAA+C;SAClD;QACD,OAAO,CAAC,EAAE;YACN,IAAI,CAAC,gBAAgB,CAAC,gFAAO,CAAC,KAAK,EAAE,2EAA2E,GAAG,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;SACnJ;IAEL,CAAC;IAED,aAAa;IAEb,yBAAyB;IAElB,2DAAqB,GAA5B,UAA6B,KAAK;QAC9B,IAAI;YACA,IAAI,CAAC,aAAa,GAAG,IAAI,2EAAa,EAAE,CAAC;YAEzC,IAAI,CAAC,aAAa,CAAC,QAAQ,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC;YAChD,IAAI,CAAC,aAAa,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC;YAE/C,uGAAuG;YACvG,IAAI,IAAI,CAAC,yBAAyB,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,UAAC,EAAE,IAAK,SAAE,CAAC,QAAQ,IAAI,KAAK,CAAC,MAAM,CAAC,IAAI,EAAhC,CAAgC,CAAC,EAAE;gBAC5H,IAAI,CAAC,yBAAyB,CAAC,MAAM,CAAC,IAAI,CAAC,yBAAyB,CAAC,SAAS,CAAC,WAAC,IAAI,QAAC,CAAC,QAAQ,KAAK,KAAK,CAAC,MAAM,CAAC,IAAI,EAAhC,CAAgC,CAAC,EAAE,CAAC,CAAC,CAAC;aAC7H;YAED,2BAA2B;YAC3B,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;SAC3D;QACD,OAAO,CAAC,EAAE;YACN,IAAI,CAAC,gBAAgB,CAAC,gFAAO,CAAC,KAAK,EAAE,iEAAiE,GAAG,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;SACzI;IACL,CAAC;IAEO,sDAAgB,GAAxB,UAAyB,OAAe,EAAE,UAAkB;QAExD,IAAI,CAAC,UAAU,GAAG,IAAI,mFAAU,EAAE,CAAC;QAEnC,IAAI,CAAC,UAAU,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC,aAAa;QAC/D,IAAI,CAAC,UAAU,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC;QAC/B,IAAI,CAAC,UAAU,CAAC,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC;QAC1C,IAAI,CAAC,UAAU,CAAC,gBAAgB,GAAG,IAAI,CAAC,WAAW,CAAC;QACpD,IAAI,CAAC,UAAU,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;QAC3C,IAAI,CAAC,UAAU,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC;QACrD,IAAI,CAAC,UAAU,CAAC,OAAO,GAAG,OAAO,CAAC;QAClC,IAAI,CAAC,UAAU,CAAC,UAAU,GAAG,UAAU,CAAC;QACxC,IAAI,CAAC,UAAU,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;QAE/C,iBAAM,wBAAwB,YAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACpD,CAAC;IAED,kDAAY,GAAZ;QACI,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,CAAC;IAClC,CAAC;IAEO,gEAA0B,GAAlC;QAEI,yEAAyE;QAEzE,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,uBAAuB,CAAC,iBAAiB,CAAC;QACxE,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,uBAAuB,CAAC,UAAU,CAAC;QACvD,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,uBAAuB,CAAC,WAAW,CAAC;QAC5D,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,uBAAuB,CAAC,SAAS,CAAC;QACxD,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,uBAAuB,CAAC,cAAc,CAAC;QACjE,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,uBAAuB,CAAC,YAAY,CAAC;QAC9D,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,uBAAuB,CAAC,cAAc,CAAC;QAClE,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,uBAAuB,CAAC,WAAW,CAAC;IAChE,CAAC;IAEO,wDAAkB,GAA1B;QACI,IAAI,CAAC,wBAAwB,CAAC,qBAAqB,GAAG,IAAI,CAAC,qBAAqB,CAAC;QACjF,IAAI,CAAC,wBAAwB,CAAC,yBAAyB,GAAG,IAAI,CAAC,yBAAyB,CAAC;QAEzF,8CAA8C;QAC9C,IAAI,IAAI,CAAC,iBAAiB,CAAC,MAAM,KAAK,IAAI,CAAC,yBAAyB,CAAC,MAAM,EAAE;YACzE,IAAI,CAAC,0BAA0B,GAAG,KAAK,CAAC;YACxC,IAAI,CAAC,yBAAyB,GAAG,EAAE,CAAC;SACvC;QACD,IAAI,CAAC,6BAA6B,CAAC,IAAI,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;IAC3E,CAAC;;gBAlH4B,wDAAQ;gBAAe,0DAAe;gBACrC,yFAAiB;gBAAwB,yEAAqB;gBAA2B,sFAAgB;gBACzG,oFAAgB;;IARrC;QAAR,2DAAK,EAAE;wEAA0B,qFAAuB;gFAAC;IAChD;QAAT,4DAAM,EAAE;;sFAA8E;IAC7E;QAAT,4DAAM,EAAE;;0EAAwC;IAzBxC,2BAA2B;QANvC,+DAAS,CAAC;YACP,QAAQ,EAAE,qBAAqB;YAC/B,4MAAiD;YAEjD,SAAS,EAAE,CAAC,wDAAQ,EAAE,yFAAiB,EAAE,oFAAgB,CAAC;;SAC7D,CAAC;+EA8B+B,wDAAQ,EAAe,0DAAe;YACrC,yFAAiB,EAAwB,yEAAqB,EAA2B,sFAAgB;YACzG,oFAAgB;OA/BrC,2BAA2B,CAmJvC;IAAD,kCAAC;CAAA,CAnJgD,0EAAgB,GAmJhE;AAnJuC;;;;;;;;;;;;;;;;;;;;;;;;;;;ACvBxC,iBAAiB;AACjB,yDAAyD;AAChB;AAEM;AACmB;AAClE,cAAc;AACgC;AACA;AACA;AACK;AAEnD,aAAa;AAC0C;AAEvD,YAAY;AACZ,6EAA6E;AAEnC;AACoC;AA6B9E;IAAA;IAAwC,CAAC;IAA5B,wBAAwB;QA3BpC,8DAAQ,CAAC;YACN,OAAO,EAAE;gBACL,iBAAiB;gBACjB,4DAAY;gBACZ,0CAA0C;gBAC1C,0DAAW;gBACX,kEAAmB;gBACnB,uDAAa,CAAC,OAAO,CAAC;oBAClB,MAAM,EAAE,yCAAyC;iBAClD,CAAC;gBAEJ,sBAAsB;gBACtB,gEAAiB;gBACjB,2DAAe;gBACf,2DAAe;gBACf,2DAAe;gBAEf,aAAa;gBACb,4DAAU;aAEb;YACD,OAAO,EAAE,CAAC,2FAA2B,CAAC;YACtC,YAAY,EAAE;gBACV,2FAA2B;aAC9B;SACJ,CAAC;OAEW,wBAAwB,CAAI;IAAD,+BAAC;CAAA;AAAJ;;;;;;;;;;;;;;;;;;;;;AChDM;AAEO;AAGL;AACkB;AAO/D;IAII,0BAAoB,IAAqB,EAAU,MAAkB,EAAU,MAAgC;QAA3F,SAAI,GAAJ,IAAI,CAAiB;QAAU,WAAM,GAAN,MAAM,CAAY;QAAU,WAAM,GAAN,MAAM,CAA0B;QAFxG,mBAAc,GAAG,WAAW,CAAC;IAE+E,CAAC;IAEpH,gDAAqB,GAArB;QAEI,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAM;YACtB,GAAG,EAAE,IAAI,CAAC,cAAc,GAAG,sBAAsB;SACpD,CAAC,CAAC;IACP,CAAC;;gBAPyB,0DAAe;gBAAkB,+DAAU;gBAAkB,4EAAwB;;IAJtG,gBAAgB;QAD5B,gEAAU,EAAE;+EAKiB,0DAAe,EAAkB,+DAAU,EAAkB,4EAAwB;OAJtG,gBAAgB,CAY5B;IAAD,uBAAC;CAAA;AAZ4B;;;;;;;;;;;;;ACV7B;AAAA;AAAA;IAAA;QAEI,OAAE,GAAW,EAAE,CAAC;QAChB,YAAO,GAAW,EAAE,CAAC;QACrB,SAAI,GAAW,EAAE,CAAC;IACtB,CAAC;IAAD,wBAAC;AAAD,CAAC;;;;;;;;;;;;;;;;;;;;;;ACR0C;AAEO;AAGL;AACkB;AAS/D;IAMI,0BAAoB,IAAqB,EAAU,MAAkB,EAAU,MAAgC;QAA3F,SAAI,GAAJ,IAAI,CAAiB;QAAU,WAAM,GAAN,MAAM,CAAY;QAAU,WAAM,GAAN,MAAM,CAA0B;QAJxG,YAAO,GAAG,aAAa,CAAC;QACxB,mBAAc,GAAG,WAAW,CAAC;IAG+E,CAAC;IAEpH,oCAAS,GAAT,UAAU,iBAAoC;QAE1C,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAM;YACvB,GAAG,EAAE,IAAI,CAAC,OAAO,GAAG,WAAW;YAC/B,IAAI,EAAE,iBAAiB;YACvB,mBAAmB;YACnB,yBAAyB,EAAE,IAAI;YAC/B,yBAAyB,EAAE,GAAG;SACjC,CAAC,CAAC;IACP,CAAC;;gBAXyB,0DAAe;gBAAkB,+DAAU;gBAAkB,4EAAwB;;IANtG,gBAAgB;QAD5B,gEAAU,EAAE;+EAOiB,0DAAe,EAAkB,+DAAU,EAAkB,4EAAwB;OANtG,gBAAgB,CAmB5B;IAAD,uBAAC;CAAA;AAnB4B;;;;;;;;;;;;;ACZ7B;AAAA;AAAA;AAAA;IAAA;QAEI,iBAAY,GAAW,CAAC,CAAC;QACzB,QAAG,GAAW,EAAE,CAAC;QACjB,eAAU,GAAW,EAAE,CAAC;QACxB,qBAAgB,GAAW,EAAE,CAAC;QAC9B,cAAS,GAAW,EAAE,CAAC;QACvB,mBAAc,GAAW,EAAE,CAAC;QAC5B,YAAO,GAAW,EAAE,CAAC;QACrB,eAAU,GAAW,EAAE,CAAC;QACxB,eAAU,GAAW,EAAE,CAAC;QACxB,aAAQ,GAAW,EAAE,CAAC;QACtB,kBAAa,GAAW,EAAE,CAAC;QAC3B,gBAAW,GAAW,EAAE,CAAC;IAC7B,CAAC;IAAD,iBAAC;AAAD,CAAC;;AAED,IAAY,OAIX;AAJD,WAAY,OAAO;IACf,wBAAa;IACb,0BAAe;IACf,8BAAmB;AACvB,CAAC,EAJW,OAAO,KAAP,OAAO,QAIlB;;;;;;;;;;;;;;;;;;;ACvB0C;AAME;AAS7C;IAKI,2BAAmB,IAAqB;QAArB,SAAI,GAAJ,IAAI,CAAiB;QAHjC,YAAO,GAAG,kBAAkB,CAAC;IAGQ,CAAC;IAE7C,uCAAW,GAAX,UAAY,UAAsB;QAE9B,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAM;YACvB,GAAG,EAAE,IAAI,CAAC,OAAO,GAAG,sBAAsB;YAC1C,IAAI,EAAE,UAAU;YAChB,mBAAmB;YACnB,yBAAyB,EAAE,IAAI;YAC/B,yBAAyB,EAAE,GAAG;SACjC,CAAC,CAAC;IACP,CAAC;;gBAXwB,0DAAe;;IAL/B,iBAAiB;QAD7B,gEAAU,EAAE;+EAMgB,0DAAe;OAL/B,iBAAiB,CAiB7B;IAAD,wBAAC;CAAA;AAjB6B;;;;;;;;;;;;;;;;;;;;;;;;ACf0C;AAChB;AAExD,yEAAyE;AAC3B;AAC9C,yEAAyE;AAC5B;AAC7C,2EAA2E;AAC5B;AAED;AACf;AAM/B;IAMI,0BACY,WAAwB;IAChC,yEAAyE;IACjE,eAAgC;IACxC,yEAAyE;IACjE,IAAqB;IAC7B,2EAA2E;IACnE,gBAAkC,EAClC,WAAwB;QAPxB,gBAAW,GAAX,WAAW,CAAa;QAExB,oBAAe,GAAf,eAAe,CAAiB;QAEhC,SAAI,GAAJ,IAAI,CAAiB;QAErB,qBAAgB,GAAhB,gBAAgB,CAAkB;QAClC,gBAAW,GAAX,WAAW,CAAa;QAbpC,YAAO,GAAW,gBAAgB,CAAC;QACnC,YAAO,GAAW,gBAAgB,CAAC;QAEzB,kBAAa,GAAG,IAAI,0DAAY,EAAE,CAAC;IAWzC,CAAC;IAEL,mCAAQ,GAAR;QACI,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,0CAAI,EAAE,CAAC,CAAC;IACnD,CAAC;IAED,+GAA+G;IAC/G,gBAAgB;IAChB,+GAA+G;IAC/G,wCAAa,GAAb,UAAc,IAAU;QACpB,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACnB,CAAC;IAED,+BAAI,GAAJ;QAAA,iBAYC;QAXG,4DAA4D;QAC5D,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,0CAAI,EAAE,CAAC,CAAC;QAE/C,gBAAgB;QAChB,2EAA2E;QAC3E,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC;YACvB,EAAE,EAAE,IAAI,CAAC,OAAO;YAChB,OAAO,EAAE;gBACL,KAAI,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC;YAC9B,CAAC;SACJ,CAAC,CAAC;IACP,CAAC;IAED,+GAA+G;IAC/G,aAAa;IACb,+GAA+G;IACvG,8BAAG,GAAX,UAAY,IAAU;QAAtB,iBAWC;QAVG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,gBAAM;YACrD,2EAA2E;YAC3E,KAAI,CAAC,gBAAgB,CAAC,IAAI,EAAE,CAAC,CAAC,gFAAgF;QAClH,CAAC,EAAE,gBAAM;YACL,yEAAyE;YACzE,+DAA+D;YAC/D,IAAI,KAAI,CAAC,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,EAAE;gBACnC,KAAI,CAAC,IAAI,GAAG,KAAI,CAAC,eAAe,CAAC,cAAc,CAAC,KAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;aACtE;QACL,CAAC,CAAC,CAAC;IACP,CAAC;;gBAjDwB,yDAAW;gBAEP,2DAAe;gBAE1B,0DAAe;gBAEH,4DAAgB;gBACrB,0DAAW;;IAV1B;QAAT,4DAAM,EAAE;;2DAAoC;IAJpC,gBAAgB;QAJ5B,+DAAS,CAAC;YACP,QAAQ,EAAE,UAAU;YACpB,0JAAsC;SACzC,CAAC;+EAQ2B,yDAAW;YAEP,2DAAe;YAE1B,0DAAe;YAEH,4DAAgB;YACrB,0DAAW;OAd3B,gBAAgB,CAyD5B;IAAD,uBAAC;CAAA;AAzD4B;;;;;;;;;;;;;;;;;;;;;;;;;ACjB2C;AAChB;AAIxD,2EAA2E;AAC5B;AAC/C,yEAAyE;AAC3B;AAC9C,yEAAyE;AAC5B;AAC7C,2EAA2E;AAC5B;AAED;AACf;AAM/B;IAMI,2BACY,WAAwB;IAChC,2EAA2E;IACnE,gBAAkC;IAC1C,yEAAyE;IACjE,eAAgC;IACxC,2EAA2E;IACnE,gBAAkC,EAClC,IAAqB,EACrB,WAAwB;QARxB,gBAAW,GAAX,WAAW,CAAa;QAExB,qBAAgB,GAAhB,gBAAgB,CAAkB;QAElC,oBAAe,GAAf,eAAe,CAAiB;QAEhC,qBAAgB,GAAhB,gBAAgB,CAAkB;QAClC,SAAI,GAAJ,IAAI,CAAiB;QACrB,gBAAW,GAAX,WAAW,CAAa;QAdpC,YAAO,GAAW,iBAAiB,CAAC;QACpC,YAAO,GAAW,iBAAiB,CAAC;QAE1B,mBAAc,GAAG,IAAI,0DAAY,EAAE,CAAC;IAY1C,CAAC;IAEL,oCAAQ,GAAR;QACI,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,0CAAI,EAAE,CAAC,CAAC;IACnD,CAAC;IAED,+GAA+G;IAC/G,gBAAgB;IAChB,+GAA+G;IAC/G,yCAAa,GAAb,UAAc,IAAU;QACpB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACtB,CAAC;IAED,yCAAa,GAAb,UAAc,IAAU;QACpB,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACtB,CAAC;IAED,gCAAI,GAAJ,UAAK,EAAU;QACX,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IACrB,CAAC;IAED,+GAA+G;IAC/G,aAAa;IACb,+GAA+G;IACvG,mCAAO,GAAf,UAAgB,EAAU;QAA1B,iBAgBC;QAfG,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,gBAAM;YACzC,0BAA0B;YAC1B,KAAI,CAAC,IAAI,GAAG,KAAI,CAAC,WAAW,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YAEhD,gBAAgB;YAChB,2EAA2E;YAC3E,KAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC;gBACvB,EAAE,EAAE,KAAI,CAAC,OAAO;gBAChB,OAAO,EAAE;oBACL,KAAI,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC;gBAC/B,CAAC;aACJ,CAAC,CAAC;QACP,CAAC,EAAE,gBAAM;YACL,aAAa;QACjB,CAAC,CAAC,CAAC;IACP,CAAC;IAEO,kCAAM,GAAd,UAAe,IAAU;QAAzB,iBAWC;QAVG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,gBAAM;YACxD,2EAA2E;YAC3E,KAAI,CAAC,gBAAgB,CAAC,IAAI,EAAE,CAAC,CAAC,gFAAgF;QAClH,CAAC,EAAE,gBAAM;YACL,yEAAyE;YACzE,+DAA+D;YAC/D,IAAI,KAAI,CAAC,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,EAAE;gBACnC,KAAI,CAAC,IAAI,GAAG,KAAI,CAAC,eAAe,CAAC,cAAc,CAAC,KAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;aACtE;QACL,CAAC,CAAC,CAAC;IACP,CAAC;IAEO,+BAAG,GAAX,UAAY,EAAU;QAAtB,iBAUC;QATG,2DAA2D;QAC3D,2EAA2E;QAC3E,IAAI,CAAC,gBAAgB,CAAC,IAAI,EAAE,CAAC;QAE7B,QAAQ;QACR,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,gBAAM;YACnD,2EAA2E;YAC3E,KAAI,CAAC,gBAAgB,CAAC,IAAI,EAAE,CAAC,CAAC,gFAAgF;QAClH,CAAC,CAAC,CAAC;IACP,CAAC;;gBA1EwB,yDAAW;gBAEN,4DAAgB;gBAEjB,2DAAe;gBAEd,4DAAgB;gBAC5B,0DAAe;gBACR,0DAAW;;IAX1B;QAAT,4DAAM,EAAE;;6DAAqC;IAJrC,iBAAiB;QAJ7B,+DAAS,CAAC;YACP,QAAQ,EAAE,WAAW;YACrB,6JAAuC;SAC1C,CAAC;+EAQ2B,yDAAW;YAEN,4DAAgB;YAEjB,2DAAe;YAEd,4DAAgB;YAC5B,0DAAe;YACR,0DAAW;OAf3B,iBAAiB,CAkF7B;IAAD,wBAAC;CAAA;AAlF6B;;;;;;;;;;;;;;;;;;;;;;ACrB+B;AAE7D,2EAA2E;AAC5B;AAED;AAEe;AACG;AAMhE;IAOI,2FAA2F;IAC3F,2EAA2E;IAC3E,2BAAoB,WAAwB,EAAU,gBAAkC;QAApE,gBAAW,GAAX,WAAW,CAAa;QAAU,qBAAgB,GAAhB,gBAAgB,CAAkB;QARxF,cAAS,GAAY,IAAI,CAAC;QAC1B,UAAK,GAAW,EAAE,CAAC;IAOyE,CAAC;IAE7F,oCAAQ,GAAR;QACI,IAAI,CAAC,MAAM,EAAE,CAAC;IAClB,CAAC;IAED,+GAA+G;IAC/G,gBAAgB;IAChB,+GAA+G;IAC/G,+BAAG,GAAH;QACI,IAAI,CAAC,gBAAgB,CAAC,IAAI,EAAE,CAAC;IACjC,CAAC;IAED,gCAAI,GAAJ,UAAK,EAAU;QACX,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACpC,CAAC;IAED,kCAAM,GAAN,UAAO,IAAU;QAAjB,iBAeC;QAdG,2EAA2E;QAC3E,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC;YAC1B,KAAK,EAAE,SAAS;YAChB,IAAI,EAAE,2CAA2C;YACjD,iBAAiB,EAAE,IAAI;YACvB,oBAAoB,EAAE,UAAC,SAAkB;gBACrC,IAAI,SAAS,EAAE;oBACX,KAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;iBACrB;qBACI;oBACD,KAAI,CAAC,gBAAgB,CAAC,IAAI,EAAE,CAAC;iBAChC;YACL,CAAC;SACJ,CAAC,CAAC;IACP,CAAC;IAED,yCAAa,GAAb;QACI,IAAI,CAAC,MAAM,EAAE,CAAC;IAClB,CAAC;IAED,0CAAc,GAAd;QACI,IAAI,CAAC,MAAM,EAAE,CAAC;IAClB,CAAC;IAED,+GAA+G;IAC/G,aAAa;IACb,+GAA+G;IACvG,kCAAM,GAAd;QAAA,iBAMC;QALG,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACtB,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,gBAAM;YACtC,KAAI,CAAC,SAAS,GAAG,KAAK,CAAC;YACvB,KAAI,CAAC,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC;QAC7B,CAAC,CAAC,CAAC;IACP,CAAC;IAEO,+BAAG,GAAX,UAAY,EAAU;QAAtB,iBAMC;QALG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,gBAAM;YACrC,2EAA2E;YAC3E,KAAI,CAAC,gBAAgB,CAAC,IAAI,EAAE,CAAC;YAC7B,KAAI,CAAC,MAAM,EAAE,CAAC;QAClB,CAAC,CAAC,CAAC;IACP,CAAC;;gBA3DgC,yDAAW;gBAA4B,4DAAgB;;IALxC;QAA/C,+DAAS,CAAC,wEAAgB,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;wEAAmB,wEAAgB;+DAAC;IACnC;QAA/C,+DAAS,CAAC,2EAAiB,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;wEAAmB,2EAAiB;gEAAC;IAL5E,iBAAiB;QAJ7B,+DAAS,CAAC;YACP,QAAQ,EAAE,WAAW;YACrB,6JAAuC;SAC1C,CAAC;+EAUmC,yDAAW,EAA4B,4DAAgB;OAT/E,iBAAiB,CAqE7B;IAAD,wBAAC;CAAA;AArE6B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACd9B,iBAAiB;AACjB,yDAAyD;AAChB;AACiB;AACF;AACU;AAElE,cAAc;AACgC;AACE;AACc;AAClB;AACE;AACF;AACE;AAE9C,YAAY;AACZ,6EAA6E;AACjB;AACG;AACA;AAE/D,IAAM,iBAAiB,GAAG;IACtB,yEAAgB;IAChB,4EAAiB;IACjB,4EAAiB;CACpB,CAAC;AAsBF;IAAA;IAA0B,CAAC;IAAd,UAAU;QApBtB,8DAAQ,CAAC;YACN,OAAO,EAAE;gBACL,iBAAiB;gBACjB,uEAAa;gBACb,0DAAW;gBACX,qEAAgB;gBAChB,kEAAmB;gBAEnB,cAAc;gBACd,2DAAe;gBACf,6DAAgB;gBAChB,2EAAuB;gBACvB,yDAAc;gBACd,2DAAe;gBACf,0DAAc;gBACd,4DAAe;aAClB;YACD,OAAO,EAAE,iBAAiB;YAC1B,YAAY,EAAE,iBAAiB;SAClC,CAAC;OACW,UAAU,CAAI;IAAD,iBAAC;CAAA;AAAJ;;;;;;;;;;;;;;;;;;;AChDoB;AAK3C,yEAAyE;AAC5B;AAO7C;IAGI,yEAAyE;IACzE,qBAAoB,IAAqB;QAArB,SAAI,GAAJ,IAAI,CAAiB;QAHjC,YAAO,GAAG,MAAM,CAAC;IAGoB,CAAC;IAE9C;;;OAGG;IACH,4BAAM,GAAN,UAAO,OAAgB;QACnB,yEAAyE;QACzE,8EAA8E;QAC9E,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAS;YACzB,GAAG,EAAE,IAAI,CAAC,OAAO;YACjB,OAAO,EAAE,OAAO;SACnB,CAAC,CAAC;IACP,CAAC;IAED;;;;OAIG;IACH,6BAAO,GAAP,UAAQ,EAAU,EAAE,OAAgB;QAChC,yEAAyE;QACzE,8EAA8E;QAC9E,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAO;YACvB,GAAG,EAAE,IAAI,CAAC,OAAO,GAAG,UAAU;YAC9B,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE;YAClB,OAAO,EAAE,OAAO;SACnB,CAAC,CAAC;IACP,CAAC;IAED;;;;OAIG;IACH,yBAAG,GAAH,UAAI,IAAU,EAAE,OAAgB;QAC5B,yEAAyE;QACzE,8EAA8E;QAC9E,+DAA+D;QAC/D,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAO;YACxB,GAAG,EAAE,IAAI,CAAC,OAAO;YACjB,IAAI,EAAE,IAAI;YACV,OAAO,EAAE,OAAO;YAChB,yBAAyB,EAAE,IAAI;YAC/B,yBAAyB,EAAE,GAAG;SACjC,CAAC,CAAC;IACP,CAAC;IAED;;;;OAIG;IACH,4BAAM,GAAN,UAAO,IAAU,EAAE,OAAgB;QAC/B,yEAAyE;QACzE,8EAA8E;QAC9E,+DAA+D;QAC/D,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAO;YACvB,GAAG,EAAE,IAAI,CAAC,OAAO;YACjB,IAAI,EAAE,IAAI;YACV,OAAO,EAAE,OAAO;YAChB,yBAAyB,EAAE,IAAI;YAC/B,yBAAyB,EAAE,GAAG;SACjC,CAAC,CAAC;IACP,CAAC;IAED;;;;OAIG;IACH,yBAAG,GAAH,UAAI,EAAU,EAAE,OAAgB;QAC5B,yEAAyE;QACzE,8EAA8E;QAC9E,+DAA+D;QAC/D,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAO;YACvB,GAAG,EAAE,IAAI,CAAC,OAAO;YACjB,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE;YAClB,OAAO,EAAE,OAAO;YAChB,yBAAyB,EAAE,GAAG;SACjC,CAAC,CAAC;IACP,CAAC;;gBAjFyB,0DAAe;;IAJhC,WAAW;QAHvB,gEAAU,CAAC;YACR,UAAU,EAAE,MAAM;SACrB,CAAC;+EAK4B,0DAAe;OAJhC,WAAW,CAsFvB;IAAD,kBAAC;CAAA;AAtFuB;;;;;;;;;;;;;ACbxB;AAAA;AAAA,+DAA+D;AAC/D;IAAA;QACI,OAAE,GAAW,CAAC,CAAC;QACf,QAAG,GAAW,EAAE,CAAC;QACjB,cAAS,GAAW,EAAE,CAAC;QACvB,aAAQ,GAAW,EAAE,CAAC;QACtB,iBAAY,GAAW,EAAE,CAAC;QAC1B,aAAQ,GAAW,EAAE,CAAC;IAC1B,CAAC;IAAD,WAAC;AAAD,CAAC;;;;;;;;;;;;;ACRD,iBAAiB,qBAAuB,c;;;;;;;;;;;ACAxC,iBAAiB,qBAAuB,e;;;;;;;;;;;;ACAxC;AAAA;AAAA,gFAAgF;AAChF,0EAA0E;AAC1E,gEAAgE;AAEzD,IAAM,WAAW,GAAG;IACzB,UAAU,EAAE,KAAK;CAClB,CAAC;AAEF;;;;;;GAMG;AACH,mEAAmE;;;;;;;;;;;;;ACfnE;AAAA;AAAA;AAAA;AAAA;AAAA,0DAA0D;AACiB;AAC5B;AAEF;AACY;AAEzD,IAAI,qEAAW,CAAC,UAAU,EAAE;IACxB,oEAAc,EAAE,CAAC;CACpB;AAED,gGAAsB,EAAE,CAAC,eAAe,CAAC,yDAAS,CAAC;KAC9C,KAAK,CAAC,aAAG,IAAI,cAAO,CAAC,KAAK,CAAC,GAAG,CAAC,EAAlB,CAAkB,CAAC,CAAC","file":"main-es5.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\";","module.exports = \"
\\n
\\n \\n\\n
\\n \\n
\\n
\\n
\\n\\n\\n\\n\"","module.exports = \"\\n\\n
\\n

\\n Order Status\\n

\\n
\\n\\n
\\n
\\n
\\n
\\n We’re sorry. The page you’re\\n trying to access is no longer available.\\n
\\n
\\n
\\n
\\n\\n\\n\\n
\\n \\n

Loading...

\\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
\\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
\\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
\\n
\\n
\\n\\n
\\n\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n \\n \\n The technician assigned to your appointment is no longer on the way. We are\\n currently working to send someone to your property. Expect to receive new\\n information soon via a text or phone.\\n \\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n

{{AppointmentTitle}}

\\n
\\n
\\n\\n
APPOINTMENT:
\\n {{response?.data.appointmentStart | date:'fullDate'}}\\n
\\n \\n {{response?.data.appointmentStart | date:'shortTime'}} -\\n {{response?.data.appointmentFinish | date:'shortTime'}}\\n \\n
\\n
\\n \\n
\\n
LOCATION:
\\n

\\n {{response?.data.street}}
{{response?.data.city}},\\n {{response?.data.state}}\\n
{{response?.data.zip}}.\\n

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

Please Remember:

\\n
\\n
\\n
    \\n
  • \\n {{item}}\\n
  • \\n
  • \\n To cancel or reschedule your appointment, please contact\\n \\n
    \\n \\n
  • \\n
\\n
\\n
\\n
\\n \\n \\n\\n \\n \\n \\n
\\n
\\n
\\n\\n
\\n
\\n
\\n
\\n
\\n

{{AppointmentTitle}}

\\n
\\n
\\n\\n
APPOINTMENT:
\\n {{response?.data.appointmentStart | date:'fullDate'}}\\n
\\n \\n {{response?.data.appointmentStart | date:'shortTime'}} -\\n {{response?.data.appointmentFinish | date:'shortTime'}}\\n \\n
\\n\\n
\\n \\n \\n\\n
\\n\\n\\n
LOCATION:
\\n

\\n {{response?.data.street}}
{{response?.data.city}},\\n {{response?.data.state}}\\n
{{response?.data.zip}}.\\n

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

Please Remember:

\\n
\\n
\\n
    \\n
  • \\n {{item}}\\n
  • \\n
  • \\n To cancel or reschedule your appointment, please contact\\n \\n
    \\n \\n
  • \\n
\\n
\\n
\\n
\\n \\n \\n \\n \\n \\n
\\n
\\n
\\n\\n
\\n
\\n
\\n
\\n
\\n

Your Technician

\\n \\n \\n \\n \\n
\\n
\\n \\\"Card\\n \\\"\\\"\\n {{response?.data.technicianName}}\\n
\\n
\\n
\\n \\\"Card\\n {{response?.data.technicianName}}\\n
\\n
\\n

\\n \\n \\n Assigned technician could change. You'll receive a text\\n message if the\\n assigned\\n technician\\n changes.\\n \\n

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

\\n \\n \\n This map displays the approximate\\n location of field technician at time of en route status and will not update upon\\n refresh.\\n \\n

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

\\n \\n \\n This map displays the approximate\\n location of field technician at time of en route status and will not update upon\\n refresh.\\n \\n

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

Please Remember:

\\n
\\n
\\n
    \\n
  • \\n {{item}}\\n
  • \\n
  • \\n To cancel or reschedule your appointment, please contact\\n \\n
    \\n \\n
  • \\n
\\n
\\n
\\n
\\n
\\n
\\n

{{AppointmentTitle}}

\\n
\\n
\\n\\n
APPOINTMENT:
\\n {{response?.data.appointmentStart | date:'fullDate'}}\\n
\\n \\n {{response?.data.appointmentStart | date:'shortTime'}} -\\n {{response?.data.appointmentFinish | date:'shortTime'}}\\n \\n\\n
LOCATION:
\\n

\\n {{response?.data.street}}
{{response?.data.city}},\\n {{response?.data.state}}\\n
{{response?.data.zip}}.\\n

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

{{AppointmentTitle}}

\\n
\\n
\\n\\n
APPOINTMENT:
\\n {{response?.data.appointmentStart | date:'fullDate'}}\\n
\\n \\n {{response?.data.appointmentStart | date:'shortTime'}} -\\n {{response?.data.appointmentFinish | date:'shortTime'}}\\n \\n\\n
LOCATION:
\\n

\\n {{response?.data.street}}
{{response?.data.city}},\\n {{response?.data.state}}\\n
{{response?.data.zip}}.\\n

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

Your Technician

\\n \\n \\n
\\n
\\n \\\"Card\\n \\\"\\\"\\n {{response?.data.technicianName}}\\n
\\n
\\n
\\n \\\"Card\\n {{response?.data.technicianName}}\\n
\\n
\\n

\\n \\n \\n Assigned technician could change. You'll receive a text\\n message if the\\n assigned\\n technician\\n changes.\\n \\n

\\n
\\n
\\n
\\n \\n \\n \\n \\n \\n
\\n
\\n
\\n\\n
\\n
\\n
\\n
\\n
\\n
\\n \\n \\n We arrived at your property. However, we were unable to complete work for your\\n appointment.\\n Call\\n {{response?.data.marketerName}} at {{response?.data.marketerContact}} to reschedule\\n your\\n appointment.\\n \\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n

{{AppointmentTitle}}

\\n
\\n
\\n\\n
APPOINTMENT:
\\n {{response?.data.appointmentStart | date:'fullDate'}}\\n
\\n \\n {{response?.data.appointmentStart | date:'shortTime'}} -\\n {{response?.data.appointmentFinish | date:'shortTime'}}\\n \\n
\\n\\n
\\n \\n \\n\\n
\\n\\n
LOCATION:
\\n

\\n {{response?.data.street}}
{{response?.data.city}},\\n {{response?.data.state}}\\n
{{response?.data.zip}}.\\n

\\n
\\n
\\n
\\n \\n\\n \\n \\n \\n \\n
\\n
\\n
\\n\\n
\\n
\\n\\n
\\n
\\n
\\n
\\n There are no details about\\n this appointment, which has been canceled per your request.\\n
\\n
\\n
\\n
\\n\\n
\\n
\\n
\\n
\\n We’re having technical difficulties with displaying your appointment information and are actively working on a fix. Please try to access this portal again later.\\n
\\n
\\n
\\n
\\n\\n\\n
\\n
\\n
\\n
\\n

\\n \\n 2020 Southern Company\\n

\\n
\\n
\\n
\\n
\"","module.exports = \"\\n\\n
\\n

\\n Frequently Asked Question's\\n

\\n
\\n\\n
\\n \\n
\\n\\n
\\n
\\n
\\n {{obj.question}} \\n
\\n
\\n {{obj.answer}}\\n
\\n
\\n
\\n\\n
\\n
\\n \\n
\\n\\n
\\n
\\n
\\n {{obj.question}} \\n
\\n
\\n {{obj.answer}}\\n
\\n
\\n
\\n
\\n\\n
\\n
\\n \\n
\\n\\n
\\n
\\n
\\n {{obj.question}} \\n
\\n
\\n {{obj.answer}}\\n
\\n
\\n
\\n
\\n\\n\\n
\\n
\\n \\n
\\n\\n
\\n
\\n
\\n {{obj.question}} \\n
\\n
\\n {{obj.answer}}\\n
\\n
\\n
\\n
\\n\\n\\n\\n\\n\\n
\\n
\\n \\n
\\n\\n\\n\\n
\\n Click here for Terms & Conditions\\n
\\n
\\n\\n\\n
\\n \\n \\n
\"","module.exports = \"

Typography

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

\\n Header 1The Life of Southern UI\\n

\\n
\\n
\\n

\\n Header 2The Life of Southern UI\\n

\\n
\\n
\\n

\\n Header 3The Life of Southern UI\\n

\\n
\\n
\\n

\\n Header 4The Life of Southern UI\\n

\\n
\\n
\\n
\\n Header 5The Life of Southern UI\\n
\\n
\\n
\\n
\\n Header 6The Life of Southern UI\\n
\\n
\\n
\\n

\\n Paragraph\\n I will be the leader of a company that ends up being worth billions of dollars, because I got the answers. I understand culture. I am the nucleus. I think that???s a responsibility that I have, to push possibilities, to show people, this is the level that things could be at.\\n

\\n
\\n
\\n Quote\\n
\\n

\\n I will be the leader of a company that ends up being worth billions of dollars, because I got the answers. I understand culture. I am the nucleus. I think that???s a responsibility that I have, to push possibilities, to show people, this is the level that things could be at.\\n

\\n \\n Kanye West, Musician\\n \\n
\\n
\\n
\\n Muted Text\\n

\\n I will be the leader of a company that ends up being worth billions of dollars, because I got the answers...\\n

\\n
\\n
\\n Primary Text\\n

\\n I will be the leader of a company that ends up being worth billions of dollars, because I got the answers...\\n

\\n
\\n
\\n Info Text\\n

\\n I will be the leader of a company that ends up being worth billions of dollars, because I got the answers...\\n

\\n
\\n
\\n Success Text\\n

\\n I will be the leader of a company that ends up being worth billions of dollars, because I got the answers...\\n

\\n
\\n
\\n Warning Text\\n

\\n I will be the leader of a company that ends up being worth billions of dollars, because I got the answers...\\n

\\n
\\n
\\n Danger Text\\n

\\n I will be the leader of a company that ends up being worth billions of dollars, because I got the answers...\\n

\\n
\\n
\\n

\\n Small Tag\\n Header with small subtitle\\n
\\n Use \\\"small\\\" tag for the headers\\n

\\n
\\n
\\n
\\n
\\n
\\n\\n\"","module.exports = \"\\n\"","module.exports = \"
\\n \\n
\\n\"","module.exports = \"
\\n \\\"404\\\"\\n

Page Not Found

\\n

Sorry, the page you are looking for has moved or no longer exists.

\\n Return Home\\n
\\n\"","module.exports = \"
\\n \\n
\\n KMICustomerPortal\\n
\\n
\\n\\n\\n\\n\\n\"","module.exports = \"\\n\\n \\n \\n\\n \\n \\n\\n \\n \\n\\n \\n\\n \\n \\n\\n\\n\"","module.exports = \"
\\n
\\n
\\n
\\n
\\n

KMICustomerPortal

\\n

Project Template

\\n

\\n This template is created with the ASP.NET Core web framework, Angular 7, and other common technologies suitable for most web applications.\\n

\\n

\\n We've included samples of our UI component library, forms, and CRUD grid.\\n You'll find Southern Company's brand standards\\n reflected in the design choices, but extended to include concepts pertinent to a functional UI.\\n

\\n
\\n \\n Get Started\\n \\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n

Front-End Stack

\\n
\\n
\\n \\\"Angular\\\"\\n

Angular 8

\\n

Application Framework

\\n Documentation\\n
\\n
\\n \\\"Angular\\n

Angular Material

\\n

Material Design components

\\n Documentation\\n
\\n
\\n \\\"Bootstrap\\n

Bootstrap 4

\\n

CSS Framework

\\n Documentation\\n
\\n
\\n \\\"Sass\\\"\\n

Sass

\\n

CSS Preprocessor

\\n Documentation\\n
\\n
\\n
\\n
\\n
\\n
\\n

Back-End Stack

\\n
\\n
\\n \\\"ASP.Net\\n

ASP.NET Core

\\n

Web Framework

\\n Documentation\\n
\\n
\\n \\\"Entity\\n

Entity Framework

\\n

Mapping Framework

\\n Documentation\\n
\\n
\\n \\\"Xunit\\\"\\n

Xunit

\\n

Unit Testing

\\n Documentation\\n
\\n
\\n \\\"Devart\\\"\\n

Devart

\\n

Data Access

\\n Documentation\\n
\\n
\\n \\\"NuGet\\\"\\n

NuGet

\\n

Package Manager

\\n Documentation\\n
\\n
\\n
\\n
\\n
\\n\\n\"","module.exports = \"\\n\\n
\\n
\\n

\\n Order - Rescheduling\\n

\\n
\\n
\\n \\n
\\n
\\n\\n
\\n
\\n
\\n
\\n \\n We’re unable to process your request at this time. Please call\\n {{errorMessageContactPhoneNo}} \\n to reschedule your appointment.\\n \\n\\n \\n We’re unable to process your request at this time. Please call your gas utility company to reschedule your appointment.\\n \\n\\n
\\n
\\n
\\n
\\n\\n
\\n
\\n
\\n
\\n \\n {{sessionTimeoutWarningMsg}}\\n \\n
\\n
\\n \\n \\n Schedule\\n\\n \\n \\n \\n\\n
\\n \\n

Loading...

\\n
\\n\\n
\\n \\n \\n \\n
\\n\\n
\\n
\\n
\\n
\\n\\n \\n Confirm\\n\\n \\n \\n \\n\\n
\\n\\n
\\n
\\n \\n
\\n
\\n\\n
\\n
\\n {{selectedTimeSlot}}
\\n {{selectedTimeSlotWindow}}\\n

Please provide any special entrance instructions for our technician.

\\n
\\n
\\n
\\n
\\n
\\n
\\n \\n
\\n
\\n
\\n
\\n
\\n
\\n \\n Completed\\n\\n \\n \\n \\n \\n
\\n \\n \\n
\\n
\\n
\\n
\\n
\\n\\n
\\n
\\n
\\n
\\n
\\n

\\n \\n 2020 Southern Company\\n

\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n\"","module.exports = \"\\n\\n\\n \\n \\n\\n \\n \\n\\n \\n\\n \\n \\n\\n\\n\\n\\n\"","module.exports = \"\\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\"","module.exports = \"\\n\\n\\n
\\n

Sample Grid

\\n\\n
\\n
\\n \\n \\n\\n
0\\\" class=\\\"table-responsive\\\">\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
DescriptionLast Modified
{{sample.description}}{{sample.lastModified | date: 'MM/dd/yyyy hh:mm:ss'}}\\n \\n \\n
\\n
\\n\\n \\n \\n \\n\\n \\n \\n
\\n
\\n
\\n\\n\\n\\n\\n\\n\"","module.exports = \"\\n\\n
\\n
\\n

\\n Order - Scheduling\\n

\\n
\\n
\\n \\n
\\n
\\n\\n
\\n
\\n
\\n
\\n \\n Incorrect url detected, Please correct and try again !\\n \\n
\\n
\\n
\\n
\\n\\n
\\n
\\n
\\n
\\n \\n We’re unable to process your request at this time. Please call\\n {{contactPhoneNo}} \\n to schedule your appointment.\\n \\n\\n \\n We’re unable to process your request at this time. Please call your gas utility company to schedule your appointment.\\n \\n
\\n
\\n
\\n
\\n\\n
\\n
\\n
\\n\\n
\\n \\n {{sessionTimeoutWarningMsg}}\\n \\n
\\n\\n\\n
\\n \\n \\n Verification\\n\\n \\n \\n \\n
\\n
\\n
\\n \\n

Loading...

\\n
\\n\\n
\\n \\n \\n \\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n\\n \\n Verify Address\\n\\n \\n \\n \\n\\n
\\n
\\n \\n

To get started, please confirm your address.

\\n

Is the below service address correct?

\\n

{{accountDetails.premisesAddress}}

\\n
\\n
\\n
\\n \\n
\\n
\\n\\n
\\n
\\n \\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n\\n \\n Questions\\n\\n \\n \\n \\n\\n
\\n
\\n \\n \\n
\\n
\\n
\\n
\\n
\\n\\n
\\n
\\n
\\n
\\n\\n \\n Schedule\\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 Confirm\\n\\n \\n \\n \\n\\n
\\n
\\n
\\n \\n
\\n
\\n
\\n
\\n {{selectedTimeSlot}}
\\n {{selectedTimeSlotWindow}}\\n

Please provide any special entrance instructions for our technician.

\\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 Sign up for appointment reminder texts\\n \\n

Message and Data Rates Apply

\\n
\\n
\\n\\n
\\n
\\n
\\n
\\n \\n \\n
\\n
\\n
\\n *\\n
\\n
\\n {{kmiPhoneNumberValidationMsg}}\\n
\\n\\n
\\n
\\n
\\n \\n *\\n
\\n
\\n {{reqNameValidationMsg}}\\n
\\n\\n
\\n
\\n
\\n \\n
\\n
\\n
\\n
\\n
\\n
\\n \\n Complete\\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 2020 Southern Company\\n

\\n
\\n
\\n
\\n
\\n\\n\"","module.exports = \"
\\n\\n
\\n
\\n \\n
\\n
\\n\\n
\\n

Thank you for choosing to schedule your service appointment through our online portal.

\\n\\n \\n

Start My Appointment Request

\\n
\\n \\n \\n
\\n\\n
\\n \\n \\n
\\n\\n
\\n Please enter valid account number and ZIP code!\\n
\\n\\n
\\n \\n
\\n
\\n
\\n\"","module.exports = \"
\\n
\\n \\\"completed\\\"\\n
\\n\\n

You have successfully scheduled your appointment window for :

\\n\\n {{selectedTimeSlot}}\\n {{selectedTimeSlotWindow }}\\n\\n
\\n
\\n
Important Appointment Information
\\n
\\n
\\n
    \\n
  • \\n {{item}}\\n
  • \\n
  • \\n {{specialFeeMsg}}\\n
  • \\n
\\n
\\n
\\n
\"","module.exports = \"
\\n
\\n \\n

Loading...

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

Available Appointments

\\n
Select a date
\\n
\\n
\\n \\n IMPORTANT\\n : {{entranceCodeReminderMsg}}\\n \\n
\\n
\\n
\\n
\\n \\n
\\n
\\n
\\n \\n \\n
\\n
\\n
\\n \\n
\\n
\\n
\\n
\\n
\\n \\n\\n
\\n
Select a time slot
\\n\\n
\\n
\\n \\n
\\n
\\n\\n
\\n\\n
\\n \\n We’re unable to schedule an appointment for the selected date.

\\n {{eligibilityReturnMessage}}\\n
\\n
\\n \\n
\\n
\\n
\\n
\"","module.exports = \"
\\n
Your safety, as well as the safety of our community and employees, is our highest priority. Please answer the following questions :
\\n \\n\\n
\\n Please answer all the questions!\\n
\\n\\n
\\n
\\n
\\n
\"","module.exports = \"\\n \\n \\n \\n \\n \\n \\n \\n \\n\\n\\n\\n\\n\"","module.exports = \"\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n\\n\\n\"","module.exports = \"\\n\\n\\n
\\n

User Grid

\\n\\n
\\n
\\n \\n \\n\\n
0\\\" class=\\\"table-responsive\\\">\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
NameSIDEmail Address
{{user.firstName}} {{user.lastName}}{{user.sid}}{{user.emailAddress}}\\n \\n \\n
\\n
\\n\\n \\n \\n
\\n
\\n
\\n\\n\\n\\n\\n\\n\\n\"","// DSS Documentation on Angular - http://tiny.sc/cgangular\nimport { NgModule } from '@angular/core';\nimport { Routes, RouterModule } from '@angular/router';\n\nimport { AppGuard } from './app-guard.service';\n\nimport { AccessDeniedComponent } from './core/access-denied/access-denied.component';\nimport { HomeComponent } from './home/home.component';\nimport { SampleListComponent } from './sample/list/sample-list.component';\nimport { UserListComponent } from './user/list/user-list.component';\nimport { PageNotFoundComponent } from './core/page-not-found/page-not-found.component';\nimport { ComponentsComponent } from './components/components.component';\nimport { RescheduleComponent } from './reschedule/reschedule.component';\nimport { ScheduleComponent} from './schedule/schedule.component';\nimport { FaqComponent } from './components/faq/faq.component';\n\nconst routes: Routes = [\n {\n path: 'reschedule/:urlcode',\n component: RescheduleComponent,\n data: {\n title: 'Order Reschedule'\n }\n },\n {\n path: 'schedule',\n component: ScheduleComponent,\n data: {\n title: 'Order Schedule'\n },\n pathMatch: 'prefix'\n },\n {\n path: 'schedule/:ldc/:ordertype',\n component: ScheduleComponent,\n data: {\n title: 'Order Schedule'\n }\n },\n //{\n // path: 'schedule/:ldc/:ordertype/:acntnumber',\n // component: ScheduleComponent,\n // data: {\n // title: 'Order Schedule'\n // }\n //},\n //{\n // path: 'schedule/:ldc/:ordertype/:acntnumber/:urlsource',\n // component: ScheduleComponent,\n // data: {\n // title: 'Order Schedule'\n // }\n //},\n {\n path: 'faq/**',\n component: FaqComponent\n },\n {\n path: '',\n component: ComponentsComponent\n },\n {\n path: '**/:id',\n component: ComponentsComponent\n },\n {\n path: '**',\n component: ComponentsComponent\n },\n {\n path: '**/**',\n component: FaqComponent\n }\n];\n\n@NgModule({\n imports: [RouterModule.forRoot(routes)],\n exports: [RouterModule]\n})\nexport class AppRoutingModule { }\n\n","// DSS Documentation on Angular - http://tiny.sc/cgangular\n// DSS Documentation on Angular Components - http://tiny.sc/cgangularcomponent\nimport { Component, OnInit } from '@angular/core';\nimport { Router, NavigationEnd, ActivatedRoute } from '@angular/router';\nimport { Title } from '@angular/platform-browser';\nimport { mergeMap, map, filter } from 'rxjs/operators';\n\n// DSS Documentation on Angular Reuse - http://tiny.sc/cgangularreuse\n// DSS Documentation on SocoConfigurationService - http://tiny.sc/cgsococonfigurationservice\nimport { SocoConfigurationService } from '@soco/configuration';\n// DSS Documentation on SocoHttpService - http://tiny.sc/cgSocoHttpService\nimport { SocoHttpService } from '@soco/http';\n\nimport { WebApiConfigService } from './core/web-api-config/web-api-config.service';\n\n@Component({\n selector: 'my-app',\n templateUrl: 'app.component.html'\n})\nexport class AppComponent implements OnInit {\n username: string = null;\n\n constructor(\n private webApiConfigService: WebApiConfigService,\n private http: SocoHttpService,\n private config: SocoConfigurationService,\n private router: Router,\n private activatedRoute: ActivatedRoute,\n private titleService: Title,\n ) { }\n\n ngOnInit(): void {\n this.setDocumentTitle();\n console.log(\"hostname--->\"+window.location.hostname);\n // dv-kmi.southernco.com\n\n // If running locally, load the Web API information from sessionStorage if available.\n if (window.location.hostname === 'localhost') {\n this.webApiConfigService.setConfigWebApiInfo();\n this.initialize(true);\n } else if (window.location.hostname === 'dv-kmi.southernco.com') {\n this.webApiConfigService.setConfigWebApiInfo();\n } else if (window.location.hostname === 'ua-kmi.southernco.com') {\n this.webApiConfigService.setConfigWebApiInfo();\n } else if (window.location.hostname === 'kmi.southernco.com') {\n this.webApiConfigService.setConfigWebApiInfo();\n } else if (window.location.hostname === 'qa-kmi.southernco.com') {\n this.webApiConfigService.setConfigWebApiInfo();\n }\n else {\n this.config.webApiBaseUrl = 'https://ua-kmi.southernco.com/webservices/api';\n this.config.webApiToken = 'ANONYMOUS';\n this.config.coolSecurityToken = 'ANONYMOUS';\n this.webApiConfigService.setConfigWebApiInfo();\n }\n }\n\n private initialize(shouldIgnoreErrorResult: boolean): void {\n // DSS Documentation on SocoHttpService - http://tiny.sc/cgSocoHttpService\n this.http.get({\n url: 'Settings',\n shouldIgnoreErrorResult: shouldIgnoreErrorResult\n }).subscribe(result => {\n // DSS Documentation on SocoConfigurationService - http://tiny.sc/cgsococonfigurationservice\n this.config.settings = result.data;\n }, result => {\n // if we are running locally outside of Visual Studio we won't have a cookie from our login\n // so SocoHttpService won't be able to get our token or the base URL for our Web API. Show a\n // modal to the developer prompting them for a token and the base URL for the Web API.\n if (shouldIgnoreErrorResult && window.location.hostname === 'localhost') {\n this.webApiConfigService.openModal(result);\n }\n });\n\n this.http.get({\n url: 'Account'\n }).subscribe(result => {\n this.username = result.data.username;\n\n // DSS Documentation on SocoConfigurationService - http://tiny.sc/cgsococonfigurationservice\n this.config.setSetting('Username', result.data.username);\n this.config.setSetting('Roles', result.data.roles);\n });\n }\n\n private setDocumentTitle(): void {\n const titleSuffix = 'KMICustomerPortal';\n\n // Update document title using data.title property from the route definition\n this.router.events.pipe(\n filter((event) => event instanceof NavigationEnd),\n map(() => {\n let route = this.activatedRoute;\n while (route.firstChild) { route = route.firstChild; }\n return route;\n }),\n filter((route) => route.outlet === 'primary'),\n mergeMap((route) => route.data))\n .subscribe((event) => this.titleService.setTitle(event['title'] ? event['title'] + ' - ' + titleSuffix : titleSuffix));\n }\n}\n\n","// angular modules\n// DSS Documentation on Angular - http://tiny.sc/cgangular\nimport { NgModule } from '@angular/core';\nimport { BrowserModule } from '@angular/platform-browser';\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { HttpClientModule } from '@angular/common/http';\n//import { TextMaskModule } from 'angular2-text-mask';\n\n// soco modules\nimport { SocoAlertModule } from '@soco/alert';\nimport { SocoCommonModule } from '@soco/common';\nimport { SocoConfigurationModule } from '@soco/configuration';\nimport { SocoCoreModule } from '@soco/core';\nimport { SocoFormsModule } from '@soco/forms';\nimport { SocoHttpModule } from '@soco/http';\nimport { SocoModalModule } from '@soco/modal';\nimport { SocoUIThemeModule } from '@soco/ui-theme';\n\n// app modules\nimport { CoreModule } from './core/core.module';\nimport { ComponentsModule } from './components/components.module';\nimport { HomeModule } from './home/home.module';\nimport { SampleModule } from './sample/sample.module';\nimport { UserModule } from './user/user.module';\nimport { RescheduleModule } from './reschedule/reschedule.module';\nimport { ScheduleModule } from './schedule/schedule.module';\n\n// app component and routing\nimport { AppComponent } from './app.component';\nimport { AppRoutingModule } from './app-routing.module';\n\n@NgModule({\n imports: [\n // angular modules\n BrowserModule,\n BrowserAnimationsModule,\n FormsModule,\n ReactiveFormsModule,\n HttpClientModule, \n //TextMaskModule,\n\n // soco modules\n SocoAlertModule,\n SocoCommonModule,\n SocoConfigurationModule,\n SocoCoreModule,\n SocoFormsModule,\n SocoHttpModule,\n SocoModalModule,\n SocoUIThemeModule,\n\n // app modules\n CoreModule,\n ComponentsModule,\n HomeModule,\n SampleModule,\n UserModule,\n RescheduleModule,\n ScheduleModule,\n\n // routing module\n AppRoutingModule\n\n ],\n declarations: [\n AppComponent\n ],\n bootstrap: [AppComponent]\n})\nexport class AppModule { }\n\n","module.exports = \"agm-map {\\n height: 300px !important;\\n}\\n\\n.container {\\n background: white !important;\\n}\\n\\n.flex-container {\\n display: -ms-flexbox;\\n display: flex;\\n -ms-flex-wrap: wrap;\\n flex-wrap: wrap;\\n /* background-color: #cccfd2; */\\n}\\n\\n.flex-container>div {\\n width: 23%;\\n margin: 1%;\\n text-align: center;\\n /* line-height: 75px;\\n font-size: 30px; */\\n}\\n\\n@media only screen and (min-width: 760px) {\\n .h-400 {\\n min-height: 444px !important;\\n }\\n .flex-container {\\n width: 50%;\\n }\\n}\\n\\n.main {\\n /* background: linear-gradient(#fffcfc, #f6b6b6); */\\n /* Safari */\\n display: -ms-flexbox;\\n display: flex;\\n}\\n\\n.card {\\n border: 1px solid #d6cccc;\\n margin-bottom: 0% !important;\\n}\\n\\n.main div {\\n /* Safari 6.1+ */\\n -ms-flex: 1;\\n /* IE 10 */\\n flex: 1;\\n}\\n\\n.main i {\\n text-align: center;\\n display: block;\\n}\\n\\n.example-class {\\n background-color: aliceblue;\\n}\\n\\n.other-class {\\n background-color: aqua;\\n}\\n\\n.BerninaSanslight {\\n font-family: jaf-bernina-sans;\\n}\\n\\n.AdelleRegular {\\n font-family: Adelle;\\n}\\n\\n.AdelleBold {\\n font-family: Adelle;\\n font-weight: bold;\\n}\\n\\nspan, p, strong, li {\\n font-family: jaf-bernina-sans;\\n color: black;\\n}\\n\\nb {\\n font-family: jaf-bernina-sans;\\n color: lightgray;\\n}\\n\\n.green {\\n font-size: 50px;\\n color: rgb(37, 160, 37);\\n}\\n\\n.orange {\\n font-size: 50px;\\n color: orange;\\n}\\n\\n.gray {\\n font-size: 50px;\\n color: gray;\\n}\\n\\n.gmnoprint {\\n display: none;\\n}\\n\\n.tooltip {\\n position: relative;\\n display: inline-block;\\n border-bottom: 1px dotted black;\\n}\\n\\n.tooltip .tooltiptext {\\n visibility: hidden;\\n width: 120px;\\n background-color: #555;\\n color: #fff;\\n text-align: center;\\n border-radius: 6px;\\n padding: 5px 0;\\n position: absolute;\\n z-index: 1;\\n bottom: 125%;\\n left: 50%;\\n margin-left: -60px;\\n opacity: 0;\\n transition: opacity 0.3s;\\n}\\n\\n.tooltip .tooltiptext::after {\\n content: \\\"\\\";\\n position: absolute;\\n top: 100%;\\n left: 50%;\\n margin-left: -5px;\\n border-width: 5px;\\n border-style: solid;\\n border-color: #555 transparent transparent transparent;\\n}\\n\\n.tooltip:hover .tooltiptext {\\n visibility: visible;\\n opacity: 1;\\n}\\n\\n.flex-container {\\n display: -ms-flexbox;\\n display: flex;\\n -ms-flex-wrap: nowrap;\\n flex-wrap: nowrap;\\n background-color: #eef8f9;\\n}\\n\\n.flex-container>div {\\n background-color: #eef8f9;\\n width: 100%;\\n margin: 10px;\\n text-align: center;\\n line-height: 75px;\\n font-size: 30px;\\n}\\n\\n/* \\n\\n\\n.wizard-progress {\\n display: table;\\n width: 100%;\\n table-layout: fixed;\\n position: relative;\\n}\\n.wizard-progress .step {\\n display: table-cell;\\n text-align: center;\\n vertical-align: top;\\n overflow: visible;\\n position: relative;\\n font-size: 14px;\\n color: #fff;\\n font-weight: bold;\\n}\\n.wizard-progress .step:not(:last-child):before {\\n content: '';\\n display: block;\\n position: absolute;\\n left: 50%;\\n top: 37px;\\n background-color: #fff;\\n height: 6px;\\n width: 100%;\\n}\\n\\n\\n\\n.wizard-progress .step .node {\\n display: inline-block;\\n border: 0px solid #fff;\\n background-color: #b39595;\\n border-radius: 18px;\\n height: 19px;\\n width: 18px;\\n position: absolute;\\n top: 29px;\\n left: 50%;\\n margin-left: -16px;\\n}\\n.wizard-progress .step.complete:before {\\n background-color: #66a753;\\n}\\n\\n.wizard-progress .step.complete .node {\\n border-color: #ffffff;\\n background-color: #66a753;\\n}\\n.wizard-progress .step.complete .node:before {\\n font-family: FontAwesome;\\n content: \\\"\\\\f00c\\\";\\n}\\n.wizard-progress .step.in-progress:before {\\n background: #07c;\\n background: -moz-linear-gradient(left, #07c 0%, #fff 100%);\\n background: -webkit-linear-gradient(left, #07c 0%, #fff 100%);\\n background: linear-gradient(to right, #07c 0%, #fff 100%);\\n filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#07c', endColorstr='#fff',GradientType=1 );\\n}\\n.wizard-progress .step.in-progress .node {\\n border-color: #07c;\\n} */\\n\\n.wizard-progress {\\n display: table;\\n width: 100%;\\n table-layout: fixed;\\n position: relative;\\n}\\n\\n.wizard-progress .step {\\n display: table-cell;\\n text-align: center;\\n vertical-align: top;\\n overflow: visible;\\n position: relative;\\n font-size: 14px;\\n color: white;\\n font-weight: bold;\\n}\\n\\n.wizard-progress .step:not(:last-child):before {\\n content: '';\\n display: block;\\n position: absolute;\\n left: 50%;\\n top: 32px;\\n background-color: #e0dddd;\\n height: 6px;\\n width: 100%;\\n margin-top: 0%;\\n}\\n\\n.wizard-progress .step .node {\\n display: inline-block;\\n /* border: 6px solid #fff; */\\n background-color: lightgray;\\n border-radius: 18px;\\n /* border-color: black; */\\n height: 25px;\\n width: 24px;\\n position: absolute;\\n top: 23px;\\n left: 50%;\\n margin-left: -18px;\\n margin-top: 0%;\\n}\\n\\n.wizard-progress .step.complete:before {\\n background-color: #b2d235;\\n margin-top: 0%;\\n}\\n\\n.wizard-progress .step.complete .node {\\n border-color: #b2d235;\\n background-color: #b2d235;\\n margin-top: 0%;\\n}\\n\\n.wizard-progress .step.active .node {\\n border-color: #b2d235;\\n background-color: #b2d235;\\n margin-top: 0%;\\n}\\n\\n.wizard-progress .step.in-progress:before {\\n background-color: #b2d235;\\n}\\n\\n.wizard-progress .step.in-progress .node {\\n border-color: #b2d235;\\n background-color: #b2d235;\\n}\\n\\n.wizard-progress .step.cgi:before {\\n background-color: red;\\n}\\n\\n.wizard-progress .step.cgi .node {\\n border-color: red;\\n background-color: red;\\n}\\n\\n.wizard-progress .step.cgi .node:before {\\n font-family: FontAwesome;\\n content: \\\"\\\\f00d\\\";\\n margin-bottom: 0% !important;\\n}\\n\\n.wizard-progress .step.complete .node:before {\\n font-family: FontAwesome;\\n content: \\\"\\\\f00c\\\";\\n margin-bottom: 1px !important;\\n}\\n\\n.wizard-progress .step.in-progress .node:before {\\n font-family: FontAwesome;\\n content: \\\"\\\\f00c\\\";\\n}\\n\\n.wizard-progress .step.active .node:before {\\n font-family: FontAwesome;\\n content: \\\"\\\\f00c\\\";\\n}\\n\\n.wizard-progress .step.in-progress:before {\\n margin-top: 0%;\\n background: #b2d235;\\n background-image: linear-gradient(to right, #b2d235 43%, lightgray 21%, #ec1c24 46%);\\n background: linear-gradient(to right, #b2d235 43%, lightgray 21%, #ec1c24 46%);\\n filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#07c', endColorstr='#fff', GradientType=1);\\n}\\n\\n.wizard-progress .step.active:before {\\n background-image: linear-gradient(to right, #b2d235 50%, lightgray 4%, lightgray 46%);\\n background: linear-gradient(to right, #b2d235 43%, lightgray 21%, lightgray 46%);\\n background-color: black;\\n}\\n\\n.wizard-progress .step.active .node {\\n border-color: #b2d235;\\n}\\n\\n.wizard-progress .step.in-progress .node {\\n border-color: #b2d235;\\n}\\n\\n.navbarBG {\\n background-color: #003a5d !important;\\n}\\n\\n.logoHW {\\n height: 100%;\\n width: 50%;\\n}\\n\\n.NicorlogoHW {\\n height: 100%;\\n width: 50%;\\n}\\n\\n.orderStatusBG {\\n background-color: #00bcf1;\\n margin-bottom: 0%;\\n}\\n\\n.ldcStyle {\\n margin-left: 5%;\\n padding-bottom: 1%;\\n margin-bottom: 2%;\\n color: whitesmoke;\\n font-family: Adelle !important;\\n}\\n\\n.orderStatusColor {\\n margin-left: 5%;\\n color: whitesmoke;\\n}\\n\\n.bold {\\n font-weight: bold\\n}\\n\\n.orderStatusSB {\\n background-color: #ffffff;\\n margin-top: -2%;\\n padding-top: 2%;\\n padding-bottom: 3%;\\n}\\n\\n.imgHW {\\n height: 100%;\\n width: 97%;\\n}\\n\\n.statusMessageBG {\\n color: #bdbdbd !important;\\n}\\n\\n.statusMessageIcon {\\n font-size: 24px;\\n padding-left: 1%;\\n color: #ff9800 !important\\n}\\n\\n.cardTitleBG {\\n background-color: #ffffff!important;\\n}\\n\\n.mapTextIcon {\\n color: #bdbdbd !important;\\n}\\n\\n.padding-left-3 {\\n padding-left: 3%;\\n}\\n\\n.appointmentSB {\\n padding-top: 0%;\\n padding-left: 2%;\\n color: black;\\n font-size: 10.5px;\\n}\\n\\n.reminderSB {\\n padding-top: 0%;\\n padding-left: 5%;\\n color: black;\\n font-size: 11px;\\n}\\n\\n.enrouteSB {\\n padding-top: 0%;\\n padding-right: 0%;\\n color: black;\\n font-size: 11px;\\n}\\n\\n.completeSB {\\n color: black;\\n padding-top: 0%;\\n padding-right: 12%;\\n font-size: 11px;\\n}\\n\\n.whiteBG {\\n background-color: #ffffff !important;\\n}\\n\\n.techImg {\\n border-radius: 50%;\\n margin-top: 5%;\\n margin-bottom: 3%;\\n margin-left: 9%;\\n}\\n\\n.techName {\\n text-align: center;\\n font-weight: 700;\\n font-family: Adelle;\\n color: black;\\n margin-left: 7%;\\n font-size: 20px;\\n}\\n\\n.eta {\\n color: black;\\n font-weight: 600;\\n font-family: Adelle;\\n font-size: 20px;\\n margin-left: 5%;\\n margin-top: 3%;\\n padding: 0 !important;\\n}\\n\\n.etaWindow {\\n color: black;\\n font-weight: 600;\\n font-family: Adelle;\\n font-size: 20px;\\n margin-left: 5%;\\n padding: 0 !important;\\n}\\n\\n.techWarning {\\n font-size: 24px;\\n padding-right: 5px;\\n}\\n\\n.mapText {\\n font-size: 24px;\\n padding-right: 5px;\\n color: #bdbdbd !important\\n}\\n\\n.pl-3 {\\n padding-left: 3%;\\n}\\n\\n.marketerContact {\\n color: whitesmoke !important;\\n font-weight: bold;\\n font-size: 16px;\\n}\\n\\n.marginTop-7 {\\n margin-top: 7% !important;\\n}\\n\\n.techText {\\n width: 85%;\\n float: right;\\n}\\n\\n.mapInfo {\\n font-size: 24px;\\n padding-right: 5px;\\n color: #bdbdbd !important\\n}\\n\\n.margin-left-5 {\\n margin-left: 5%\\n}\\n\\n.cardPad {\\n padding-top: 3%;\\n padding-left: 3%;\\n padding-right: 3%;\\n background-color: #ffffff;\\n}\\n\\n.sticky {\\n position: fixed;\\n left: 0;\\n bottom: 0;\\n width: 100%;\\n background-color: red;\\n color: white;\\n text-align: center !important;\\n font-family: Adelle !important;\\n}\\n\\n.alertPad {\\n width: 87%;\\n float: right;\\n}\\n\\n.statusMsgWidth {\\n float: right;\\n width: 90%;\\n}\\n\\n.pt-3 {\\n padding-top: 3% !important;\\n margin-bottom: 3% !important;\\n}\\n\\n.pt-2 {\\n padding-top: 2%;\\n}\\n\\n.rescheduleButton {\\n margin-top: 10% !important;\\n font-weight: 900 !important;\\n margin-left: 5% !important;\\n border-radius: 25px !important;\\n}\\n\\n.noTextTransform {\\n text-transform: none !important;\\n}\\n\\n.subHeadingHyperlinks {\\n color: #006bc6 !important;\\n text-decoration: underline !important;\\n}\\n\\n.white{\\n color: #eef8f9 !important;\\n}\\n\\nstrong.subHeadingHyperlinks:hover {\\n color: red !important;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvY29tcG9uZW50cy9jb21wb25lbnRzLmNvbXBvbmVudC5jc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7RUFDRSx3QkFBd0I7QUFDMUI7O0FBRUE7RUFDRSw0QkFBNEI7QUFDOUI7O0FBRUE7RUFDRSxvQkFBYTtFQUFiLGFBQWE7RUFDYixtQkFBZTtNQUFmLGVBQWU7RUFDZiwrQkFBK0I7QUFDakM7O0FBRUE7RUFDRSxVQUFVO0VBQ1YsVUFBVTtFQUNWLGtCQUFrQjtFQUNsQjtzQkFDb0I7QUFDdEI7O0FBRUE7RUFDRTtJQUNFLDRCQUE0QjtFQUM5QjtFQUNBO0lBQ0UsVUFBVTtFQUNaO0FBQ0Y7O0FBRUE7RUFFRSxtREFBbUQ7RUFDbkQsV0FBVztFQUNYLG9CQUFhO0VBQWIsYUFBYTtBQUNmOztBQUVBO0VBQ0UseUJBQXlCO0VBQ3pCLDRCQUE0QjtBQUM5Qjs7QUFFQTtFQUVFLGdCQUFnQjtFQUNoQixXQUFXO0VBQ1gsVUFBVTtFQUNWLE9BQU87QUFDVDs7QUFFQTtFQUNFLGtCQUFrQjtFQUNsQixjQUFjO0FBQ2hCOztBQUVBO0VBQ0UsMkJBQTJCO0FBQzdCOztBQUVBO0VBQ0Usc0JBQXNCO0FBQ3hCOztBQUVBO0VBQ0UsNkJBQTZCO0FBQy9COztBQUVBO0VBQ0UsbUJBQW1CO0FBQ3JCOztBQUVBO0VBQ0UsbUJBQW1CO0VBQ25CLGlCQUFpQjtBQUNuQjs7QUFFQTtFQUNFLDZCQUE2QjtFQUM3QixZQUFZO0FBQ2Q7O0FBRUE7RUFDRSw2QkFBNkI7RUFDN0IsZ0JBQWdCO0FBQ2xCOztBQUVBO0VBQ0UsZUFBZTtFQUNmLHVCQUF1QjtBQUN6Qjs7QUFFQTtFQUNFLGVBQWU7RUFDZixhQUFhO0FBQ2Y7O0FBRUE7RUFDRSxlQUFlO0VBQ2YsV0FBVztBQUNiOztBQUVBO0VBQ0UsYUFBYTtBQUNmOztBQUVBO0VBQ0Usa0JBQWtCO0VBQ2xCLHFCQUFxQjtFQUNyQiwrQkFBK0I7QUFDakM7O0FBRUE7RUFDRSxrQkFBa0I7RUFDbEIsWUFBWTtFQUNaLHNCQUFzQjtFQUN0QixXQUFXO0VBQ1gsa0JBQWtCO0VBQ2xCLGtCQUFrQjtFQUNsQixjQUFjO0VBQ2Qsa0JBQWtCO0VBQ2xCLFVBQVU7RUFDVixZQUFZO0VBQ1osU0FBUztFQUNULGtCQUFrQjtFQUNsQixVQUFVO0VBQ1Ysd0JBQXdCO0FBQzFCOztBQUVBO0VBQ0UsV0FBVztFQUNYLGtCQUFrQjtFQUNsQixTQUFTO0VBQ1QsU0FBUztFQUNULGlCQUFpQjtFQUNqQixpQkFBaUI7RUFDakIsbUJBQW1CO0VBQ25CLHNEQUFzRDtBQUN4RDs7QUFFQTtFQUNFLG1CQUFtQjtFQUNuQixVQUFVO0FBQ1o7O0FBRUE7RUFDRSxvQkFBYTtFQUFiLGFBQWE7RUFDYixxQkFBaUI7TUFBakIsaUJBQWlCO0VBQ2pCLHlCQUF5QjtBQUMzQjs7QUFFQTtFQUNFLHlCQUF5QjtFQUN6QixXQUFXO0VBQ1gsWUFBWTtFQUNaLGtCQUFrQjtFQUNsQixpQkFBaUI7RUFDakIsZUFBZTtBQUNqQjs7QUFFQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FpRUc7O0FBRUg7RUFDRSxjQUFjO0VBQ2QsV0FBVztFQUNYLG1CQUFtQjtFQUNuQixrQkFBa0I7QUFDcEI7O0FBRUE7RUFDRSxtQkFBbUI7RUFDbkIsa0JBQWtCO0VBQ2xCLG1CQUFtQjtFQUNuQixpQkFBaUI7RUFDakIsa0JBQWtCO0VBQ2xCLGVBQWU7RUFDZixZQUFZO0VBQ1osaUJBQWlCO0FBQ25COztBQUVBO0VBQ0UsV0FBVztFQUNYLGNBQWM7RUFDZCxrQkFBa0I7RUFDbEIsU0FBUztFQUNULFNBQVM7RUFDVCx5QkFBeUI7RUFDekIsV0FBVztFQUNYLFdBQVc7RUFDWCxjQUFjO0FBQ2hCOztBQUVBO0VBQ0UscUJBQXFCO0VBQ3JCLDRCQUE0QjtFQUM1QiwyQkFBMkI7RUFDM0IsbUJBQW1CO0VBQ25CLDBCQUEwQjtFQUMxQixZQUFZO0VBQ1osV0FBVztFQUNYLGtCQUFrQjtFQUNsQixTQUFTO0VBQ1QsU0FBUztFQUNULGtCQUFrQjtFQUNsQixjQUFjO0FBQ2hCOztBQUVBO0VBQ0UseUJBQXlCO0VBQ3pCLGNBQWM7QUFDaEI7O0FBRUE7RUFDRSxxQkFBcUI7RUFDckIseUJBQXlCO0VBQ3pCLGNBQWM7QUFDaEI7O0FBRUE7RUFDRSxxQkFBcUI7RUFDckIseUJBQXlCO0VBQ3pCLGNBQWM7QUFDaEI7O0FBRUE7RUFDRSx5QkFBeUI7QUFDM0I7O0FBRUE7RUFDRSxxQkFBcUI7RUFDckIseUJBQXlCO0FBQzNCOztBQUVBO0VBQ0UscUJBQXFCO0FBQ3ZCOztBQUVBO0VBQ0UsaUJBQWlCO0VBQ2pCLHFCQUFxQjtBQUN2Qjs7QUFFQTtFQUNFLHdCQUF3QjtFQUN4QixnQkFBZ0I7RUFDaEIsNEJBQTRCO0FBQzlCOztBQUVBO0VBQ0Usd0JBQXdCO0VBQ3hCLGdCQUFnQjtFQUNoQiw2QkFBNkI7QUFDL0I7O0FBRUE7RUFDRSx3QkFBd0I7RUFDeEIsZ0JBQWdCO0FBQ2xCOztBQUVBO0VBQ0Usd0JBQXdCO0VBQ3hCLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGNBQWM7RUFDZCxtQkFBbUI7RUFDbkIsb0ZBQW9GO0VBR3BGLDhFQUE4RTtFQUM5RSw2R0FBNkc7QUFDL0c7O0FBRUE7RUFDRSxxRkFBcUY7RUFHckYsZ0ZBQWdGO0VBQ2hGLHVCQUF1QjtBQUN6Qjs7QUFFQTtFQUNFLHFCQUFxQjtBQUN2Qjs7QUFFQTtFQUNFLHFCQUFxQjtBQUN2Qjs7QUFFQTtFQUNFLG9DQUFvQztBQUN0Qzs7QUFFQTtFQUNFLFlBQVk7RUFDWixVQUFVO0FBQ1o7O0FBRUE7RUFDRSxZQUFZO0VBQ1osVUFBVTtBQUNaOztBQUVBO0VBQ0UseUJBQXlCO0VBQ3pCLGlCQUFpQjtBQUNuQjs7QUFFQTtFQUNFLGVBQWU7RUFDZixrQkFBa0I7RUFDbEIsaUJBQWlCO0VBQ2pCLGlCQUFpQjtFQUNqQiw4QkFBOEI7QUFDaEM7O0FBRUE7RUFDRSxlQUFlO0VBQ2YsaUJBQWlCO0FBQ25COztBQUVBO0VBQ0U7QUFDRjs7QUFFQTtFQUNFLHlCQUF5QjtFQUN6QixlQUFlO0VBQ2YsZUFBZTtFQUNmLGtCQUFrQjtBQUNwQjs7QUFFQTtFQUNFLFlBQVk7RUFDWixVQUFVO0FBQ1o7O0FBRUE7RUFDRSx5QkFBeUI7QUFDM0I7O0FBRUE7RUFDRSxlQUFlO0VBQ2YsZ0JBQWdCO0VBQ2hCO0FBQ0Y7O0FBRUE7RUFDRSxtQ0FBbUM7QUFDckM7O0FBRUE7RUFDRSx5QkFBeUI7QUFDM0I7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxlQUFlO0VBQ2YsZ0JBQWdCO0VBQ2hCLFlBQVk7RUFDWixpQkFBaUI7QUFDbkI7O0FBRUE7RUFDRSxlQUFlO0VBQ2YsZ0JBQWdCO0VBQ2hCLFlBQVk7RUFDWixlQUFlO0FBQ2pCOztBQUVBO0VBQ0UsZUFBZTtFQUNmLGlCQUFpQjtFQUNqQixZQUFZO0VBQ1osZUFBZTtBQUNqQjs7QUFFQTtFQUNFLFlBQVk7RUFDWixlQUFlO0VBQ2Ysa0JBQWtCO0VBQ2xCLGVBQWU7QUFDakI7O0FBRUE7RUFDRSxvQ0FBb0M7QUFDdEM7O0FBRUE7RUFDRSxrQkFBa0I7RUFDbEIsY0FBYztFQUNkLGlCQUFpQjtFQUNqQixlQUFlO0FBQ2pCOztBQUVBO0VBQ0Usa0JBQWtCO0VBQ2xCLGdCQUFnQjtFQUNoQixtQkFBbUI7RUFDbkIsWUFBWTtFQUNaLGVBQWU7RUFDZixlQUFlO0FBQ2pCOztBQUVBO0VBQ0UsWUFBWTtFQUNaLGdCQUFnQjtFQUNoQixtQkFBbUI7RUFDbkIsZUFBZTtFQUNmLGVBQWU7RUFDZixjQUFjO0VBQ2QscUJBQXFCO0FBQ3ZCOztBQUVBO0VBQ0UsWUFBWTtFQUNaLGdCQUFnQjtFQUNoQixtQkFBbUI7RUFDbkIsZUFBZTtFQUNmLGVBQWU7RUFDZixxQkFBcUI7QUFDdkI7O0FBRUE7RUFDRSxlQUFlO0VBQ2Ysa0JBQWtCO0FBQ3BCOztBQUVBO0VBQ0UsZUFBZTtFQUNmLGtCQUFrQjtFQUNsQjtBQUNGOztBQUVBO0VBQ0UsZ0JBQWdCO0FBQ2xCOztBQUVBO0VBQ0UsNEJBQTRCO0VBQzVCLGlCQUFpQjtFQUNqQixlQUFlO0FBQ2pCOztBQUVBO0VBQ0UseUJBQXlCO0FBQzNCOztBQUVBO0VBQ0UsVUFBVTtFQUNWLFlBQVk7QUFDZDs7QUFFQTtFQUNFLGVBQWU7RUFDZixrQkFBa0I7RUFDbEI7QUFDRjs7QUFFQTtFQUNFO0FBQ0Y7O0FBRUE7RUFDRSxlQUFlO0VBQ2YsZ0JBQWdCO0VBQ2hCLGlCQUFpQjtFQUNqQix5QkFBeUI7QUFDM0I7O0FBRUE7RUFDRSxlQUFlO0VBQ2YsT0FBTztFQUNQLFNBQVM7RUFDVCxXQUFXO0VBQ1gscUJBQXFCO0VBQ3JCLFlBQVk7RUFDWiw2QkFBNkI7RUFDN0IsOEJBQThCO0FBQ2hDOztBQUVBO0VBQ0UsVUFBVTtFQUNWLFlBQVk7QUFDZDs7QUFFQTtFQUNFLFlBQVk7RUFDWixVQUFVO0FBQ1o7O0FBRUE7RUFDRSwwQkFBMEI7RUFDMUIsNEJBQTRCO0FBQzlCOztBQUVBO0VBQ0UsZUFBZTtBQUNqQjs7QUFFQTtFQUNFLDBCQUEwQjtFQUMxQiwyQkFBMkI7RUFDM0IsMEJBQTBCO0VBQzFCLDhCQUE4QjtBQUNoQzs7QUFFQTtFQUNFLCtCQUErQjtBQUNqQzs7QUFFQTtJQUNJLHlCQUF5QjtJQUN6QixxQ0FBcUM7QUFDekM7O0FBRUE7RUFDRSx5QkFBeUI7QUFDM0I7O0FBR0E7SUFDSSxxQkFBcUI7QUFDekIiLCJmaWxlIjoic3JjL2FwcC9jb21wb25lbnRzL2NvbXBvbmVudHMuY29tcG9uZW50LmNzcyIsInNvdXJjZXNDb250ZW50IjpbImFnbS1tYXAge1xuICBoZWlnaHQ6IDMwMHB4ICFpbXBvcnRhbnQ7XG59XG5cbi5jb250YWluZXIge1xuICBiYWNrZ3JvdW5kOiB3aGl0ZSAhaW1wb3J0YW50O1xufVxuXG4uZmxleC1jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIC8qIGJhY2tncm91bmQtY29sb3I6ICNjY2NmZDI7ICovXG59XG5cbi5mbGV4LWNvbnRhaW5lcj5kaXYge1xuICB3aWR0aDogMjMlO1xuICBtYXJnaW46IDElO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIC8qIGxpbmUtaGVpZ2h0OiA3NXB4O1xuICAgIGZvbnQtc2l6ZTogMzBweDsgKi9cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjBweCkge1xuICAuaC00MDAge1xuICAgIG1pbi1oZWlnaHQ6IDQ0NHB4ICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmZsZXgtY29udGFpbmVyIHtcbiAgICB3aWR0aDogNTAlO1xuICB9XG59XG5cbi5tYWluIHtcbiAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICAvKiBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoI2ZmZmNmYywgI2Y2YjZiNik7ICovXG4gIC8qIFNhZmFyaSAqL1xuICBkaXNwbGF5OiBmbGV4O1xufVxuXG4uY2FyZCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkNmNjY2M7XG4gIG1hcmdpbi1ib3R0b206IDAlICFpbXBvcnRhbnQ7XG59XG5cbi5tYWluIGRpdiB7XG4gIC13ZWJraXQtZmxleDogMTtcbiAgLyogU2FmYXJpIDYuMSsgKi9cbiAgLW1zLWZsZXg6IDE7XG4gIC8qIElFIDEwICovXG4gIGZsZXg6IDE7XG59XG5cbi5tYWluIGkge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uZXhhbXBsZS1jbGFzcyB7XG4gIGJhY2tncm91bmQtY29sb3I6IGFsaWNlYmx1ZTtcbn1cblxuLm90aGVyLWNsYXNzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogYXF1YTtcbn1cblxuLkJlcm5pbmFTYW5zbGlnaHQge1xuICBmb250LWZhbWlseTogamFmLWJlcm5pbmEtc2Fucztcbn1cblxuLkFkZWxsZVJlZ3VsYXIge1xuICBmb250LWZhbWlseTogQWRlbGxlO1xufVxuXG4uQWRlbGxlQm9sZCB7XG4gIGZvbnQtZmFtaWx5OiBBZGVsbGU7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG5zcGFuLCBwLCBzdHJvbmcsIGxpIHtcbiAgZm9udC1mYW1pbHk6IGphZi1iZXJuaW5hLXNhbnM7XG4gIGNvbG9yOiBibGFjaztcbn1cblxuYiB7XG4gIGZvbnQtZmFtaWx5OiBqYWYtYmVybmluYS1zYW5zO1xuICBjb2xvcjogbGlnaHRncmF5O1xufVxuXG4uZ3JlZW4ge1xuICBmb250LXNpemU6IDUwcHg7XG4gIGNvbG9yOiByZ2IoMzcsIDE2MCwgMzcpO1xufVxuXG4ub3JhbmdlIHtcbiAgZm9udC1zaXplOiA1MHB4O1xuICBjb2xvcjogb3JhbmdlO1xufVxuXG4uZ3JheSB7XG4gIGZvbnQtc2l6ZTogNTBweDtcbiAgY29sb3I6IGdyYXk7XG59XG5cbi5nbW5vcHJpbnQge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4udG9vbHRpcCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBib3JkZXItYm90dG9tOiAxcHggZG90dGVkIGJsYWNrO1xufVxuXG4udG9vbHRpcCAudG9vbHRpcHRleHQge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHdpZHRoOiAxMjBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU1NTtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYm9yZGVyLXJhZGl1czogNnB4O1xuICBwYWRkaW5nOiA1cHggMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxO1xuICBib3R0b206IDEyNSU7XG4gIGxlZnQ6IDUwJTtcbiAgbWFyZ2luLWxlZnQ6IC02MHB4O1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3M7XG59XG5cbi50b29sdGlwIC50b29sdGlwdGV4dDo6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMTAwJTtcbiAgbGVmdDogNTAlO1xuICBtYXJnaW4tbGVmdDogLTVweDtcbiAgYm9yZGVyLXdpZHRoOiA1cHg7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci1jb2xvcjogIzU1NSB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbn1cblxuLnRvb2x0aXA6aG92ZXIgLnRvb2x0aXB0ZXh0IHtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgb3BhY2l0eTogMTtcbn1cblxuLmZsZXgtY29udGFpbmVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiBub3dyYXA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlZWY4Zjk7XG59XG5cbi5mbGV4LWNvbnRhaW5lcj5kaXYge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVmOGY5O1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAxMHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGxpbmUtaGVpZ2h0OiA3NXB4O1xuICBmb250LXNpemU6IDMwcHg7XG59XG5cbi8qIFxuXG5cbi53aXphcmQtcHJvZ3Jlc3Mge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgd2lkdGg6IDEwMCU7XG4gIHRhYmxlLWxheW91dDogZml4ZWQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi53aXphcmQtcHJvZ3Jlc3MgLnN0ZXAge1xuICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgY29sb3I6ICNmZmY7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuLndpemFyZC1wcm9ncmVzcyAuc3RlcDpub3QoOmxhc3QtY2hpbGQpOmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICcnO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiA1MCU7XG4gIHRvcDogMzdweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgaGVpZ2h0OiA2cHg7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG5cblxuLndpemFyZC1wcm9ncmVzcyAuc3RlcCAubm9kZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBib3JkZXI6IDBweCBzb2xpZCAjZmZmO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNiMzk1OTU7XG4gICAgYm9yZGVyLXJhZGl1czogMThweDtcbiAgICBoZWlnaHQ6IDE5cHg7XG4gICAgd2lkdGg6IDE4cHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMjlweDtcbiAgICBsZWZ0OiA1MCU7XG4gICAgbWFyZ2luLWxlZnQ6IC0xNnB4O1xufVxuLndpemFyZC1wcm9ncmVzcyAuc3RlcC5jb21wbGV0ZTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjZhNzUzO1xufVxuXG4ud2l6YXJkLXByb2dyZXNzIC5zdGVwLmNvbXBsZXRlIC5ub2RlIHtcbiAgYm9yZGVyLWNvbG9yOiAjZmZmZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjZhNzUzO1xufVxuLndpemFyZC1wcm9ncmVzcyAuc3RlcC5jb21wbGV0ZSAubm9kZTpiZWZvcmUge1xuICBmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XG4gIGNvbnRlbnQ6IFwiXFxmMDBjXCI7XG59XG4ud2l6YXJkLXByb2dyZXNzIC5zdGVwLmluLXByb2dyZXNzOmJlZm9yZSB7XG4gIGJhY2tncm91bmQ6ICMwN2M7XG4gIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KGxlZnQsICMwN2MgMCUsICNmZmYgMTAwJSk7XG4gIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KGxlZnQsICMwN2MgMCUsICNmZmYgMTAwJSk7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgIzA3YyAwJSwgI2ZmZiAxMDAlKTtcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoICAgICBzdGFydENvbG9yc3RyPScjMDdjJywgZW5kQ29sb3JzdHI9JyNmZmYnLEdyYWRpZW50VHlwZT0xICk7XG59XG4ud2l6YXJkLXByb2dyZXNzIC5zdGVwLmluLXByb2dyZXNzIC5ub2RlIHtcbiAgYm9yZGVyLWNvbG9yOiAjMDdjO1xufSAqL1xuXG4ud2l6YXJkLXByb2dyZXNzIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIHdpZHRoOiAxMDAlO1xuICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi53aXphcmQtcHJvZ3Jlc3MgLnN0ZXAge1xuICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgY29sb3I6IHdoaXRlO1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLndpemFyZC1wcm9ncmVzcyAuc3RlcDpub3QoOmxhc3QtY2hpbGQpOmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICcnO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiA1MCU7XG4gIHRvcDogMzJweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2UwZGRkZDtcbiAgaGVpZ2h0OiA2cHg7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tdG9wOiAwJTtcbn1cblxuLndpemFyZC1wcm9ncmVzcyAuc3RlcCAubm9kZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgLyogYm9yZGVyOiA2cHggc29saWQgI2ZmZjsgKi9cbiAgYmFja2dyb3VuZC1jb2xvcjogbGlnaHRncmF5O1xuICBib3JkZXItcmFkaXVzOiAxOHB4O1xuICAvKiBib3JkZXItY29sb3I6ICBibGFjazsgKi9cbiAgaGVpZ2h0OiAyNXB4O1xuICB3aWR0aDogMjRweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDIzcHg7XG4gIGxlZnQ6IDUwJTtcbiAgbWFyZ2luLWxlZnQ6IC0xOHB4O1xuICBtYXJnaW4tdG9wOiAwJTtcbn1cblxuLndpemFyZC1wcm9ncmVzcyAuc3RlcC5jb21wbGV0ZTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYjJkMjM1O1xuICBtYXJnaW4tdG9wOiAwJTtcbn1cblxuLndpemFyZC1wcm9ncmVzcyAuc3RlcC5jb21wbGV0ZSAubm9kZSB7XG4gIGJvcmRlci1jb2xvcjogI2IyZDIzNTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2IyZDIzNTtcbiAgbWFyZ2luLXRvcDogMCU7XG59XG5cbi53aXphcmQtcHJvZ3Jlc3MgLnN0ZXAuYWN0aXZlIC5ub2RlIHtcbiAgYm9yZGVyLWNvbG9yOiAjYjJkMjM1O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYjJkMjM1O1xuICBtYXJnaW4tdG9wOiAwJTtcbn1cblxuLndpemFyZC1wcm9ncmVzcyAuc3RlcC5pbi1wcm9ncmVzczpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYjJkMjM1O1xufVxuXG4ud2l6YXJkLXByb2dyZXNzIC5zdGVwLmluLXByb2dyZXNzIC5ub2RlIHtcbiAgYm9yZGVyLWNvbG9yOiAjYjJkMjM1O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYjJkMjM1O1xufVxuXG4ud2l6YXJkLXByb2dyZXNzIC5zdGVwLmNnaTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZWQ7XG59XG5cbi53aXphcmQtcHJvZ3Jlc3MgLnN0ZXAuY2dpIC5ub2RlIHtcbiAgYm9yZGVyLWNvbG9yOiByZWQ7XG4gIGJhY2tncm91bmQtY29sb3I6IHJlZDtcbn1cblxuLndpemFyZC1wcm9ncmVzcyAuc3RlcC5jZ2kgLm5vZGU6YmVmb3JlIHtcbiAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xuICBjb250ZW50OiBcIlxcZjAwZFwiO1xuICBtYXJnaW4tYm90dG9tOiAwJSAhaW1wb3J0YW50O1xufVxuXG4ud2l6YXJkLXByb2dyZXNzIC5zdGVwLmNvbXBsZXRlIC5ub2RlOmJlZm9yZSB7XG4gIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcbiAgY29udGVudDogXCJcXGYwMGNcIjtcbiAgbWFyZ2luLWJvdHRvbTogMXB4ICFpbXBvcnRhbnQ7XG59XG5cbi53aXphcmQtcHJvZ3Jlc3MgLnN0ZXAuaW4tcHJvZ3Jlc3MgLm5vZGU6YmVmb3JlIHtcbiAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xuICBjb250ZW50OiBcIlxcZjAwY1wiO1xufVxuXG4ud2l6YXJkLXByb2dyZXNzIC5zdGVwLmFjdGl2ZSAubm9kZTpiZWZvcmUge1xuICBmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XG4gIGNvbnRlbnQ6IFwiXFxmMDBjXCI7XG59XG5cbi53aXphcmQtcHJvZ3Jlc3MgLnN0ZXAuaW4tcHJvZ3Jlc3M6YmVmb3JlIHtcbiAgbWFyZ2luLXRvcDogMCU7XG4gIGJhY2tncm91bmQ6ICNiMmQyMzU7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgI2IyZDIzNSA0MyUsIGxpZ2h0Z3JheSAyMSUsICNlYzFjMjQgNDYlKTtcbiAgYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICNiMmQyMzUgMCUsIGxpZ2h0Z3JheSAyMSUsICNlYzFjMjQgNDYlKTtcbiAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICNiMmQyMzUgMCUsIGxpZ2h0Z3JheSAyMSUsICNlYzFjMjQgNDYlKTtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAjYjJkMjM1IDQzJSwgbGlnaHRncmF5IDIxJSwgI2VjMWMyNCA0NiUpO1xuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudCggc3RhcnRDb2xvcnN0cj0nIzA3YycsIGVuZENvbG9yc3RyPScjZmZmJywgR3JhZGllbnRUeXBlPTEpO1xufVxuXG4ud2l6YXJkLXByb2dyZXNzIC5zdGVwLmFjdGl2ZTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICNiMmQyMzUgNTAlLCBsaWdodGdyYXkgNCUsIGxpZ2h0Z3JheSA0NiUpO1xuICBiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudCh0byByaWdodCwgI2IyZDIzNSAwJSwgbGlnaHRncmF5IDIxJSwgbGlnaHRncmF5IDQ2JSk7XG4gIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAjYjJkMjM1IDAlLCBsaWdodGdyYXkgMjElLCBsaWdodGdyYXkgNDYlKTtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAjYjJkMjM1IDQzJSwgbGlnaHRncmF5IDIxJSwgbGlnaHRncmF5IDQ2JSk7XG4gIGJhY2tncm91bmQtY29sb3I6IGJsYWNrO1xufVxuXG4ud2l6YXJkLXByb2dyZXNzIC5zdGVwLmFjdGl2ZSAubm9kZSB7XG4gIGJvcmRlci1jb2xvcjogI2IyZDIzNTtcbn1cblxuLndpemFyZC1wcm9ncmVzcyAuc3RlcC5pbi1wcm9ncmVzcyAubm9kZSB7XG4gIGJvcmRlci1jb2xvcjogI2IyZDIzNTtcbn1cblxuLm5hdmJhckJHIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwM2E1ZCAhaW1wb3J0YW50O1xufVxuXG4ubG9nb0hXIHtcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogNTAlO1xufVxuXG4uTmljb3Jsb2dvSFcge1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiA1MCU7XG59XG5cbi5vcmRlclN0YXR1c0JHIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwYmNmMTtcbiAgbWFyZ2luLWJvdHRvbTogMCU7XG59XG5cbi5sZGNTdHlsZSB7XG4gIG1hcmdpbi1sZWZ0OiA1JTtcbiAgcGFkZGluZy1ib3R0b206IDElO1xuICBtYXJnaW4tYm90dG9tOiAyJTtcbiAgY29sb3I6IHdoaXRlc21va2U7XG4gIGZvbnQtZmFtaWx5OiBBZGVsbGUgIWltcG9ydGFudDtcbn1cblxuLm9yZGVyU3RhdHVzQ29sb3Ige1xuICBtYXJnaW4tbGVmdDogNSU7XG4gIGNvbG9yOiB3aGl0ZXNtb2tlO1xufVxuXG4uYm9sZCB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkXG59XG5cbi5vcmRlclN0YXR1c1NCIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgbWFyZ2luLXRvcDogLTIlO1xuICBwYWRkaW5nLXRvcDogMiU7XG4gIHBhZGRpbmctYm90dG9tOiAzJTtcbn1cblxuLmltZ0hXIHtcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogOTclO1xufVxuXG4uc3RhdHVzTWVzc2FnZUJHIHtcbiAgY29sb3I6ICNiZGJkYmQgIWltcG9ydGFudDtcbn1cblxuLnN0YXR1c01lc3NhZ2VJY29uIHtcbiAgZm9udC1zaXplOiAyNHB4O1xuICBwYWRkaW5nLWxlZnQ6IDElO1xuICBjb2xvcjogI2ZmOTgwMCAhaW1wb3J0YW50XG59XG5cbi5jYXJkVGl0bGVCRyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmYhaW1wb3J0YW50O1xufVxuXG4ubWFwVGV4dEljb24ge1xuICBjb2xvcjogI2JkYmRiZCAhaW1wb3J0YW50O1xufVxuXG4ucGFkZGluZy1sZWZ0LTMge1xuICBwYWRkaW5nLWxlZnQ6IDMlO1xufVxuXG4uYXBwb2ludG1lbnRTQiB7XG4gIHBhZGRpbmctdG9wOiAwJTtcbiAgcGFkZGluZy1sZWZ0OiAyJTtcbiAgY29sb3I6IGJsYWNrO1xuICBmb250LXNpemU6IDEwLjVweDtcbn1cblxuLnJlbWluZGVyU0Ige1xuICBwYWRkaW5nLXRvcDogMCU7XG4gIHBhZGRpbmctbGVmdDogNSU7XG4gIGNvbG9yOiBibGFjaztcbiAgZm9udC1zaXplOiAxMXB4O1xufVxuXG4uZW5yb3V0ZVNCIHtcbiAgcGFkZGluZy10b3A6IDAlO1xuICBwYWRkaW5nLXJpZ2h0OiAwJTtcbiAgY29sb3I6IGJsYWNrO1xuICBmb250LXNpemU6IDExcHg7XG59XG5cbi5jb21wbGV0ZVNCIHtcbiAgY29sb3I6IGJsYWNrO1xuICBwYWRkaW5nLXRvcDogMCU7XG4gIHBhZGRpbmctcmlnaHQ6IDEyJTtcbiAgZm9udC1zaXplOiAxMXB4O1xufVxuXG4ud2hpdGVCRyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmYgIWltcG9ydGFudDtcbn1cblxuLnRlY2hJbWcge1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIG1hcmdpbi10b3A6IDUlO1xuICBtYXJnaW4tYm90dG9tOiAzJTtcbiAgbWFyZ2luLWxlZnQ6IDklO1xufVxuXG4udGVjaE5hbWUge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGZvbnQtZmFtaWx5OiBBZGVsbGU7XG4gIGNvbG9yOiBibGFjaztcbiAgbWFyZ2luLWxlZnQ6IDclO1xuICBmb250LXNpemU6IDIwcHg7XG59XG5cbi5ldGEge1xuICBjb2xvcjogYmxhY2s7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGZvbnQtZmFtaWx5OiBBZGVsbGU7XG4gIGZvbnQtc2l6ZTogMjBweDtcbiAgbWFyZ2luLWxlZnQ6IDUlO1xuICBtYXJnaW4tdG9wOiAzJTtcbiAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xufVxuXG4uZXRhV2luZG93IHtcbiAgY29sb3I6IGJsYWNrO1xuICBmb250LXdlaWdodDogNjAwO1xuICBmb250LWZhbWlseTogQWRlbGxlO1xuICBmb250LXNpemU6IDIwcHg7XG4gIG1hcmdpbi1sZWZ0OiA1JTtcbiAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xufVxuXG4udGVjaFdhcm5pbmcge1xuICBmb250LXNpemU6IDI0cHg7XG4gIHBhZGRpbmctcmlnaHQ6IDVweDtcbn1cblxuLm1hcFRleHQge1xuICBmb250LXNpemU6IDI0cHg7XG4gIHBhZGRpbmctcmlnaHQ6IDVweDtcbiAgY29sb3I6ICNiZGJkYmQgIWltcG9ydGFudFxufVxuXG4ucGwtMyB7XG4gIHBhZGRpbmctbGVmdDogMyU7XG59XG5cbi5tYXJrZXRlckNvbnRhY3Qge1xuICBjb2xvcjogd2hpdGVzbW9rZSAhaW1wb3J0YW50O1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgZm9udC1zaXplOiAxNnB4O1xufVxuXG4ubWFyZ2luVG9wLTcge1xuICBtYXJnaW4tdG9wOiA3JSAhaW1wb3J0YW50O1xufVxuXG4udGVjaFRleHQge1xuICB3aWR0aDogODUlO1xuICBmbG9hdDogcmlnaHQ7XG59XG5cbi5tYXBJbmZvIHtcbiAgZm9udC1zaXplOiAyNHB4O1xuICBwYWRkaW5nLXJpZ2h0OiA1cHg7XG4gIGNvbG9yOiAjYmRiZGJkICFpbXBvcnRhbnRcbn1cblxuLm1hcmdpbi1sZWZ0LTUge1xuICBtYXJnaW4tbGVmdDogNSVcbn1cblxuLmNhcmRQYWQge1xuICBwYWRkaW5nLXRvcDogMyU7XG4gIHBhZGRpbmctbGVmdDogMyU7XG4gIHBhZGRpbmctcmlnaHQ6IDMlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xufVxuXG4uc3RpY2t5IHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBsZWZ0OiAwO1xuICBib3R0b206IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZWQ7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7XG4gIGZvbnQtZmFtaWx5OiBBZGVsbGUgIWltcG9ydGFudDtcbn1cblxuLmFsZXJ0UGFkIHtcbiAgd2lkdGg6IDg3JTtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG4uc3RhdHVzTXNnV2lkdGgge1xuICBmbG9hdDogcmlnaHQ7XG4gIHdpZHRoOiA5MCU7XG59XG5cbi5wdC0zIHtcbiAgcGFkZGluZy10b3A6IDMlICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1ib3R0b206IDMlICFpbXBvcnRhbnQ7XG59XG5cbi5wdC0yIHtcbiAgcGFkZGluZy10b3A6IDIlO1xufVxuXG4ucmVzY2hlZHVsZUJ1dHRvbiB7XG4gIG1hcmdpbi10b3A6IDEwJSAhaW1wb3J0YW50O1xuICBmb250LXdlaWdodDogOTAwICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1sZWZ0OiA1JSAhaW1wb3J0YW50O1xuICBib3JkZXItcmFkaXVzOiAyNXB4ICFpbXBvcnRhbnQ7XG59XG5cbi5ub1RleHRUcmFuc2Zvcm0ge1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4uc3ViSGVhZGluZ0h5cGVybGlua3Mge1xuICAgIGNvbG9yOiAjMDA2YmM2ICFpbXBvcnRhbnQ7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgIWltcG9ydGFudDtcbn1cblxuLndoaXRle1xuICBjb2xvcjogI2VlZjhmOSAhaW1wb3J0YW50O1xufVxuXG5cbnN0cm9uZy5zdWJIZWFkaW5nSHlwZXJsaW5rczpob3ZlciB7XG4gICAgY29sb3I6IHJlZCAhaW1wb3J0YW50O1xufSJdfQ== */\"","//DSS Documentation on Angular Components - http://tiny.sc/cgangularcomponent\nimport { Component, EventEmitter, OnInit, AfterViewInit, Output, } from '@angular/core';\nimport { NgModule } from '@angular/core';\nimport { ViewChild } from '@angular/core';\nimport { } from 'googlemaps';\nimport { func } from 'prop-types';\nimport { HttpService } from './http.service';\nimport { SocoHttpService } from '@soco/http';\nimport { DBTraceLogService } from '../shared/services/dbTraceLog/dbTraceLog.service';\nimport { CoolEmailService } from '../shared/services/coolEmail/coolEmail.service';\nimport { AppCommonService } from '../shared/services/common/app-common.service';\nimport { Router, ActivatedRoute, NavigationEnd, ParamMap } from '@angular/router';\nimport { ApiResult } from '@soco/core';\nimport { promise } from 'selenium-webdriver';\nimport { DatePipe } from '@angular/common';\nimport { DeviceDetectorService } from 'ngx-device-detector';\nimport { DBTraceLog, LogType } from '../shared/services/dbTraceLog/dbTraceLog-entities';\nimport { AppConfigurationData } from '../shared/services/common/app-common-entities';\nimport { AppBaseComponent } from '../shared/components/base/app-base.component';\n\n@Component({\n templateUrl: 'components.component.html',\n styleUrls: ['components.component.css'],\n providers: [HttpService, DatePipe, DBTraceLogService, CoolEmailService, AppCommonService]\n})\nexport class ComponentsComponent extends AppBaseComponent implements OnInit {\n\n public param1: string = '';\n public ETA: any;\n public ApiResp: any;\n public MyResult: any;\n public MapLatitude: any;\n public MapLongitude: any;\n public Customerlatitude: any;\n public Customerlongitude: any;\n public Technicianlatitude: any;\n public Technicianlongitude: any;\n public mapType = 'mapType';\n public response: any;\n @ViewChild(\"gmap\", { static: true }) gmapElement: any;\n map: google.maps.Map;\n entraceInstuctions = [];\n public data: any;\n public InReview: boolean;\n public Enroute: boolean;\n public Onsite: boolean;\n public Complete: boolean;\n public enrouteFlag: boolean;\n public reminderFlag: boolean;\n public completeFlag: boolean;\n public CGIFlag: boolean;\n public incompleteFlag: boolean;\n public completeText: string;\n public image: string;\n public waterMarkImage: string;\n public unit: boolean;\n public ldc: string = '';\n public ErrorMessage: boolean;\n public showIcon: boolean;\n public AppointmentTitle: string;\n public statusMessage: boolean;\n public case0: boolean;\n public case1: boolean;\n public case2: boolean;\n public case3: boolean;\n public case4: boolean;\n public case5: boolean;\n public Aglc: boolean;\n public Nicor: boolean;\n public Virgina: boolean;\n public Chattanooga: boolean;\n public OrderVoid: boolean;\n public TechDistance: any;\n public ZoomLevel: any;\n public GeoLoc: boolean;\n public SuspendFlag: boolean;\n public statusEnroute: boolean;\n public statusOnsite: boolean;\n public arrival: boolean;\n public onsiteTime: any;\n public reschedule: boolean;\n public RescheduleUrl: string;\n public faqUrl: any;\n public callBack: any;\n public covidvideo: any;\n public orderType: string = '';\n public orderNumber: string = '';\n public deviceInfo = null;\n public dbTraceLog: DBTraceLog;\n public logReferenceID: string = '';\n public NoData: boolean;\n public apiResponse400:boolean=false;\n mySubscription: any;\n public appConfigurationDataList: Array = [];\n public emailToList: string;\n public energyEfficiencyLink:string = '';\n public NoDiggity:string = '';\n showInitialSpinner = false;\n public energyAssistanceLink: string = '';\n\n\n @Output() messageEvent = new EventEmitter();\n\n\n constructor(public httpService: HttpService, private route: ActivatedRoute, private router: Router, public datepipe: DatePipe,\n public socoHttp: SocoHttpService, public dbTraceLogService: DBTraceLogService, public deviceService: DeviceDetectorService,\n public coolEmailService: CoolEmailService, private appCommonService: AppCommonService) {\n\n //Parent component initialization\n super(socoHttp, dbTraceLogService, coolEmailService, deviceService);\n\n this.router.routeReuseStrategy.shouldReuseRoute = function () {\n return false;\n };\n this.mySubscription = this.router.events.subscribe((event) => {\n if (event instanceof NavigationEnd) {\n // Trick the Router into believing it's last link wasn't previously loaded\n this.router.navigated = false;\n }\n });\n\n this.param1 = this.route.snapshot.url[0].path;\n\n this.logReferenceID = this.datepipe.transform(Date.now(), \"MMddyyyyHHmmss\");\n this.insertDBTraceLog(LogType.Info, 'Customer portal component initiated successfully');\n\n //To capture public ip\n //this.httpT.get('https://jsonip.com/').subscribe(data => {\n\n // var ip = JSON.stringify(data);\n // this.insertDBTraceLog(LogType.Info, `Customer portal component initiated successfully - ${window.location.href} , ${ip}`); \n //});\n\n // this.NoData = true;\n //this.FetchData(true);\n this.FetchInitialDataWithAppConfigs();\n let counter = 0;\n this.callBack = setInterval(() => {\n this.FetchData(false);\n }, 25000);\n \n };\n\n\n ngOnInit() {\n\n ////Get device Info\n //this.deviceInfo = this.deviceService.getDeviceInfo();\n\n //if (this.deviceInfo != null && this.deviceService != null)\n // this.insertDBTraceLog(LogType.Info, 'Device Info captured successfully');\n //else\n // this.insertDBTraceLog(LogType.Error, 'Error occured while capturing Device Info');\n }\n\n FetchData(isInitialLoad: boolean) {\n\n //this.showInitialSpinner = true;\n try {\n if(!this.apiResponse400)\n {\n this.httpService.getData(this.param1).subscribe(ApiResult => {\n \n if (ApiResult != null && ApiResult.statusCode == 200) {\n this.NoData = false;\n this.GetOrderDetails(ApiResult, isInitialLoad);\n }\n else if (isInitialLoad) {\n this.insertDBTraceLog(LogType.Error, 'Error occured while fetching order details, APIResult is null or APIResult is not 200');\n this.showInitialSpinner = false;\n }\n if(ApiResult != null && ApiResult.statusCode!=200){\n this.apiResponse400=true;\n }\n },\n ApiResult => { \n\n if(ApiResult != null && ApiResult.statusCode!=200){\n this.apiResponse400=true;\n }\n if (isInitialLoad && (this.socoHttp.isInvalidResult(ApiResult) || this.socoHttp.isErrorResult(ApiResult) || this.socoHttp.isFailureResult(ApiResult))) {\n this.NoData = true;\n this.insertDBTraceLog(LogType.Error, 'Error occured while fetching order details, APIResult is invalid');\n this.showInitialSpinner = false;\n }\n });\n }\n\n this.RescheduleUrl = 'https://' + window.location.hostname + '/reschedule/' + this.param1;\n this.faqUrl = 'https://' + window.location.hostname + '/faq/' + this.param1;\n }\n catch (e) {\n this.insertDBTraceLog(LogType.Error, 'Exception occured while fetching order details, Error: ' + e.message.substring(0, 500));\n }\n \n }\n\n FetchInitialDataWithAppConfigs() {\n this.showInitialSpinner = true;\n try {\n\n this.appCommonService.getApplicationConfigs().subscribe(ApiResult => {\n if (ApiResult.data != null) {\n\n this.insertDBTraceLog(LogType.Info, 'Application configs fetched successfully');\n\n ApiResult.data.forEach(configData => {\n this.appConfigurationDataList.push(configData);\n });\n\n this.emailToList = this.appConfigurationDataList.filter(item => (item.configurationKey == 'EmailTo'))\n .map(cv => cv.configurationValue)[0];\n\n //Load Initial data\n this.FetchData(true); \n }\n else {\n this.insertDBTraceLog(LogType.Error, 'Error occured while fetching application configs, API Result is Null');\n this.showInitialSpinner = false;\n }\n\n }, ApiResult => {\n //capture error\n if (this.socoHttp.isInvalidResult(ApiResult) || this.socoHttp.isErrorResult(ApiResult) || this.socoHttp.isFailureResult(ApiResult)) {\n this.insertDBTraceLog(LogType.Error, 'Error occured while fetching application configs');\n }\n });\n\n }\n catch (e) {\n this.insertDBTraceLog(LogType.Error, 'Exception occured while fetching application configs, Error: ' + e.message.substring(0, 500));\n }\n\n } \n\n GetOrderDetails(ApiResult: any, isInitialLoad: boolean) {\n this.response = ApiResult;\n if (this.response.statusCode !== 200 || this.response.data.isUrlExpired) {\n\n this.ErrorMessage = true;\n } else if (this.response.statusCode == 404 ) {\n this.NoData = true;\n }\n if (this.response && this.response.data) {\n let data = this.response.data;\n this.energyEfficiencyLink = data.energyEfficiencyLink;\n this.NoDiggity = data.noDiggity;\n if ((data.appointmentStart == '' || data.appointmentStart == null || data.appointmentStart == undefined) &&\n (data.address == '' || data.address == null || data.address == undefined) &&\n (data.activityType == '' || data.activityType == null || data.activityType == undefined) &&\n (data.activityGroup == '' || data.activityGroup == null || data.activityGroup == undefined) &&\n (data.orderStatus == '' || data.orderStatus == null || data.orderStatus == undefined) &&\n (data.orderStatusCd == '' || data.orderStatusCd == null || data.orderStatusCd == undefined) &&\n (data.serviceArea == '' || data.serviceArea == null || data.serviceArea == undefined)) {\n this.NoData = true;\n } else {\n this.NoData = false;\n }\n }\n\n this.ldc = this.response.data.ldc;\n this.AppointmentTitle = 'Appointment Details';\n if (this.response.data.orderStatus === '4') {\n if (this.response.data.statusMessage == 'undefined' || this.response.data.statusMessage == 'null' || this.response.data.statusMessage == '') {\n this.response.data.statusMessage = 'We arrived at your property. However, we were unable to complete work for your appointment. Call Georgia Natural Gas at 1.877.850.6200 to reschedule your appointment.';\n }\n }\n if (this.ldc === 'AGLC') {\n this.Aglc = true;\n this.waterMarkImage = '../../assets/images/AGL_rev.png';\n this.energyAssistanceLink = 'https://www.atlantagaslight.com/energyassistance';\n //this.covidvideo = 'https://vimeo.com/443234585/0bd98e0a44';\n }\n else if (this.ldc === 'NG') {\n this.Nicor = true;\n this.waterMarkImage = '../../assets/images/NG_rev.png';\n this.energyAssistanceLink = 'https://www.nicorgas.com/energyassistanceinfo';\n //this.covidvideo = 'https://vimeo.com/443235074/197b149ce7';\n }\n else if (this.ldc === 'VNG') {\n this.Virgina = true;\n this.waterMarkImage = '../../assets/images/VNG_rev.png';\n this.energyAssistanceLink = 'https://www.virginianaturalgas.com/energyassistance';\n //this.covidvideo = 'https://vimeo.com/443235285/384974ef32';\n }\n else if (this.ldc === 'CGC') {\n this.Chattanooga = true;\n this.waterMarkImage = '../../assets/images/CGC_rev.png';\n this.energyAssistanceLink = 'https://www.chattanoogagas.com/energyassistance';\n //this.covidvideo = 'https://vimeo.com/443234820/f10ec21ea9';\n }\n\n if (this.response.data.unit) {\n this.unit = true\n } else this.unit = false;\n\n\n //Fetch Reschedule Eligibility from KMIOrderLogs (Biztalk) to determine button visibility\n this.determineRescheduleEligibility(this.param1);\n\n if (this.response.data.orderStatusCd == 'Enroute') {\n this.statusEnroute = true;\n } else this.statusEnroute = false;\n\n if (this.response.data.orderStatusCd == \"OnSite\"\n || this.response.data.orderStatusCd == \"DocumentationOnly\"\n || this.response.data.orderStatusCd == \"PartialComplete\"\n || this.response.data.orderStatusCd == \"Reporting\") {\n this.statusOnsite = true;\n } else this.statusOnsite = false;\n\n this.onsiteTime = this.response.data.onsiteTime;\n\n if (this.onsiteTime == '' || this.onsiteTime == 'NULL' || this.onsiteTime == undefined) {\n this.arrival = false;\n } else this.arrival = true;\n\n this.TechDistance = parseFloat(this.response.data.technicianDistance);\n\n if (this.TechDistance) {\n if (this.TechDistance > 0 && this.TechDistance <= 0.5) {\n this.ZoomLevel = 14.5;\n } else if (this.TechDistance > 0.5 && this.TechDistance <= 1) {\n this.ZoomLevel = 13.2;\n } else if (this.TechDistance > 1 && this.TechDistance <= 2) {\n this.ZoomLevel = 12.7;\n } else if (this.TechDistance > 2 && this.TechDistance <= 5) {\n this.ZoomLevel = 11.2;\n }\n else if (this.TechDistance > 5 && this.TechDistance <= 10) {\n this.ZoomLevel = 10;\n } else if (this.TechDistance > 10 && this.TechDistance <= 20) {\n this.ZoomLevel = 9;\n }\n else if (this.TechDistance > 20 && this.TechDistance <= 50) {\n this.ZoomLevel = 8;\n } else if (this.TechDistance > 50 && this.TechDistance <= 100) {\n this.ZoomLevel = 7;\n } else if (this.TechDistance > 100 && this.TechDistance <= 200) {\n this.ZoomLevel = 6.5;\n } else if (this.TechDistance > 200) {\n this.ZoomLevel = 5;\n }\n } else this.ZoomLevel = 7;\n\n if (this.response.data.orderStatus === '0') {\n this.InReview = true;\n } else { this.InReview = false; }\n\n if (this.InReview && !this.ErrorMessage) {\n this.case0 = true;\n } else this.case0 = false;\n\n if (this.response.data.orderStatus === '1') {\n this.Onsite = true;\n this.AppointmentTitle = 'Appointment Reminder';\n } else { this.Onsite = false; }\n\n if (this.Onsite && !this.ErrorMessage) {\n this.case1 = true;\n } else this.case1 = false;\n\n if (this.response.data.orderStatus === '2') {\n this.Enroute = true;\n } else { this.Enroute = false; }\n\n if (this.Enroute && !this.ErrorMessage) {\n this.case2 = true;\n } else this.case2 = false;\n\n if (this.response.data.orderStatus === '3') {\n this.Complete = true;\n this.completeFlag = true;\n } else { this.Complete = false; }\n\n if (this.Complete && !this.ErrorMessage) {\n this.case3 = true;\n } else this.case3 = false;\n\n if (this.response.data.orderStatusCd === 'Suspended') {\n this.SuspendFlag = true;\n\n } else { this.SuspendFlag = false; }\n\n if (this.response.data.orderStatusCd === 'CGI') {\n this.CGIFlag = true;\n\n } else { this.CGIFlag = false; }\n\n if (this.response.data.orderStatusCd === 'Voided') {\n this.OrderVoid = true;\n } else this.OrderVoid = false;\n\n if ((this.CGIFlag) && !this.ErrorMessage) {\n this.case4 = true;\n } else this.case4 = false;\n\n\n if (this.Enroute || this.Onsite || this.Complete || this.CGIFlag) {\n this.reminderFlag = true;\n }\n if (this.Enroute || this.Complete || this.CGIFlag) {\n this.enrouteFlag = true;\n }\n\n if (!this.CGIFlag && !this.Complete) {\n this.incompleteFlag = true;\n this.completeText = 'Incomplete';\n } else { this.completeText = 'Complete' }\n\n if (this.response.data.orderStatusCd === 'CGI' || this.response.data.orderStatusCd === 'Suspended') {\n this.statusMessage = true;\n } else this.statusMessage = false;\n\n if (this.response.data.technicianImage) {\n\n this.image = 'data:image/png;base64,' + this.response.data.technicianImage;\n this.showIcon = false;\n\n } else {\n this.showIcon = true;\n // this.image = '../../assets/images/Fleet-photo.jpg';\n }\n\n var displayETAMsg = false;\n var customerGeo = false;\n\n if ((this.response.data.latitude && this.response.data.longitude) &&\n (this.response.data.latitude != '' && this.response.data.longitude != '')) {\n\n this.Customerlatitude = parseFloat(this.response.data.latitude);\n this.Customerlongitude = parseFloat(this.response.data.longitude);\n\n if (this.Customerlatitude > 0 ) {\n customerGeo = true;\n }\n }\n\n if ((this.response.data.technicianLatitude && this.response.data.technicianLongitude )&&\n (this.response.data.technicianLatitude != '' && this.response.data.technicianLongitude != '')&&\n customerGeo) {\n\n this.Technicianlatitude = parseFloat(this.response.data.technicianLatitude);\n this.Technicianlongitude = parseFloat(this.response.data.technicianLongitude);\n\n if (this.Technicianlatitude > 0) {\n displayETAMsg = true;\n }\n\n } \n\n this.ETA = this.response.data.eta;\n if (!displayETAMsg || !customerGeo || this.ETA == null || this.ETA == '') {\n this.ETA = 'The estimated time of arrival is currently not available.';\n }\n\n\n let dist = this.response.data.technicianDistance;\n\n if (dist == '-1' || dist == null || dist == '' || dist == 'NULL') {\n this.GeoLoc = false;\n } else this.GeoLoc = true;\n\n this.MapLatitude = parseFloat(this.response.data.latitude); //33.7490; // \n this.MapLongitude = parseFloat(this.response.data.longitude); // -84.3880; // \n this.Customerlatitude = parseFloat(this.response.data.latitude); //33.7490; // \n this.Customerlongitude = parseFloat(this.response.data.longitude); // -84.3880;//\n\n var str = this.response.data.entranceInstructions;\n this.entraceInstuctions = str.split('|');\n\n \n if (this.response.data.orderStatus === '3' || this.response.data.orderStatus === '4') {\n clearInterval(this.callBack);\n }\n\n if (this.response.data.activityType != null)\n this.orderType = this.response.data.activityType;\n\n if (this.response.data.descriptionAttribute != null)\n this.orderType = this.orderType + '#' + this.response.data.descriptionAttribute;\n\n this.orderNumber = this.response.data.externalOrderNum != null ? this.response.data.externalOrderNum : '';\n\n //Perform logging for initial load, avoid logging in subsequent auto loads.\n if (isInitialLoad)\n this.insertDBTraceLog(LogType.Info, 'Order details fetched successfully');\n\n this.showInitialSpinner = false;\n }\n\n markerHomeIconUrl() {\n return require('../../assets/images/home.png');\n }\n\n markerTruckIconUrl() {\n return require('../../assets/images/truck.png');\n }\n\n\n ngOnDestroy() {\n if (this.mySubscription) {\n this.mySubscription.unsubscribe();\n }\n }\n\n determineRescheduleEligibility(urlCode: string) {\n this.httpService.getOrderAttributes(urlCode).subscribe(ApiResult => {\n\n if (ApiResult != null && ApiResult.data != null && ApiResult.data.isRescheduleEligible) {\n if (\n this.response.data.orderStatusCd.toUpperCase() === 'COMPLETE' ||\n this.response.data.orderStatusCd.toUpperCase() === 'CGI' ||\n this.response.data.orderStatusCd.toUpperCase() === 'BUNDLED' ||\n this.response.data.orderStatusCd.toUpperCase() === 'VOIDED' ||\n this.response.data.orderStatusCd.toUpperCase() === 'REPORTING' ||\n this.response.data.orderStatusCd.toUpperCase() === 'READY2SCHEDULE' ||\n this.response.data.orderStatusCd.toUpperCase() === 'PARTIALCOMPLETE' ||\n this.response.data.orderStatusCd.toUpperCase() === 'ONSITE' ||\n this.response.data.orderStatusCd.toUpperCase() === 'NEEDSAPPROVAL' ||\n this.response.data.orderStatusCd.toUpperCase() === 'INJEOPARDY' ||\n this.response.data.orderStatusCd.toUpperCase() === 'HOLDSONP' ||\n this.response.data.orderStatusCd.toUpperCase() === 'FIELDCOMPLETE' ||\n this.response.data.orderStatusCd.toUpperCase() === 'ENROUTE' ||\n this.response.data.orderStatusCd.toUpperCase() === 'DOCUMENTATIONONLY'\n ) {\n this.reschedule = false;\n }\n else {\n this.reschedule = true;\n }\n }\n else {\n this.reschedule = false;\n }\n });\n }\n\n private insertDBTraceLog(logType: string, logMessage: string) {\n\n this.dbTraceLog = new DBTraceLog();\n\n this.dbTraceLog.portalTypeID = 1; //Customer Portal\n this.dbTraceLog.ldc = this.ldc;\n this.dbTraceLog.kmiUrlCode = this.param1;\n this.dbTraceLog.issuingApOrderID = this.orderNumber;\n this.dbTraceLog.orderType = this.orderType;\n this.dbTraceLog.logReferenceID = this.logReferenceID;\n this.dbTraceLog.logType = logType;\n this.dbTraceLog.logMessage = logMessage; \n this.dbTraceLog.emailToList = this.emailToList;\n\n super.InsertDBTraceLogThruBase(this.dbTraceLog);\n }\n}\n\n","//angular modules\n//DSS Documentation on Angular - http://tiny.sc/cgangular\nimport { NgModule } from '@angular/core';\nimport { RouterModule } from '@angular/router';\nimport { CommonModule } from '@angular/common';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\n\n//soco modules\nimport { SocoAlertModule } from '@soco/alert';\nimport { SocoFormsModule } from '@soco/forms';\nimport { SocoModalModule } from '@soco/modal';\nimport { SocoUIThemeModule } from '@soco/ui-theme';\n\n//app modules\nimport { CoreModule } from '../core/core.module';\n\n//components\n//DSS Documentation on Angular Components - http://tiny.sc/cgangularcomponent\nimport { ComponentsComponent } from './components.component';\nimport { TypographyComponent } from './typography/typography.component';\nimport { ComponentsRoutes } from './components.routing';\nimport { AgmCoreModule } from '@agm/core';\nimport { HttpService } from './http.service';\nimport { FaqComponent } from './faq/faq.component';\nimport { DeviceDetectorService } from 'ngx-device-detector';\n\n\n@NgModule({\n imports: [\n //angular modules\n CommonModule,\n RouterModule.forChild(ComponentsRoutes),\n FormsModule,\n ReactiveFormsModule,\n AgmCoreModule.forRoot({\n apiKey: 'AIzaSyBcLYsBQdhvhsdRoDKPzt3STCHmIXsXCNU'\n }),\n\n //soco modules\n SocoAlertModule,\n SocoFormsModule,\n SocoModalModule,\n SocoUIThemeModule,\n\n //app modules\n CoreModule\n \n ],\n exports: [ComponentsComponent],\n declarations: [\n ComponentsComponent,\n TypographyComponent,\n FaqComponent\n ],\n providers: [\n HttpService, DeviceDetectorService\n ]\n})\n\nexport class ComponentsModule { }\n\n","import { Routes } from '@angular/router';\nimport { ComponentsComponent } from './components.component';\nimport { TypographyComponent } from './typography/typography.component';\nimport { FaqComponent } from './faq/faq.component';\n\nexport const ComponentsRoutes: Routes = [\n {\n path: 'faq',\n component: FaqComponent,\n data: { title: \"FAQ's\" }\n },\n {\n path: 'faq/:id',\n component: FaqComponent,\n data: { title: \"FAQ's\" }\n },\n {\n path: 'components',\n component: ComponentsComponent,\n children: [\n {\n path: 'typography',\n component: TypographyComponent,\n data: { title: 'Typography' }\n }\n ]\n }\n];\n\n","module.exports = \"agm-map {\\n height: 300px !important; }\\n\\n.flex-container {\\n display: -ms-flexbox;\\n display: flex;\\n -ms-flex-wrap: wrap;\\n flex-wrap: wrap;\\n /* background-color: #cccfd2; */ }\\n\\n.flex-container > div {\\n width: 23%;\\n margin: 1%;\\n text-align: center;\\n /* line-height: 75px;\\n font-size: 30px; */ }\\n\\n@media only screen and (min-width: 760px) {\\n .h-400 {\\n min-height: 444px !important; }\\n .flex-container {\\n width: 50%; } }\\n\\n.main {\\n /* background: linear-gradient(#fffcfc, #f6b6b6); */\\n /* Safari */\\n display: -ms-flexbox;\\n display: flex; }\\n\\n.card {\\n border: 1px solid #d6cccc;\\n margin-bottom: 0% !important; }\\n\\n.main div {\\n /* Safari 6.1+ */\\n -ms-flex: 1;\\n /* IE 10 */\\n flex: 1; }\\n\\n.main i {\\n text-align: center;\\n display: block; }\\n\\n.example-class {\\n background-color: aliceblue; }\\n\\n.other-class {\\n background-color: aqua; }\\n\\n.AdelleRegular {\\n font-family: Adelle; }\\n\\n.AdelleBold {\\n font-family: Adelle;\\n font-weight: bold; }\\n\\nspan, p, strong, li {\\n font-family: Bernina;\\n color: black; }\\n\\nb {\\n font-family: Adelle;\\n color: lightgray; }\\n\\n.green {\\n font-size: 50px;\\n color: #25a025; }\\n\\n.orange {\\n font-size: 50px;\\n color: orange; }\\n\\n.gray {\\n font-size: 50px;\\n color: gray; }\\n\\n.gmnoprint {\\n display: none; }\\n\\n.tooltip {\\n position: relative;\\n display: inline-block;\\n border-bottom: 1px dotted black; }\\n\\n.tooltip .tooltiptext {\\n visibility: hidden;\\n width: 120px;\\n background-color: #555;\\n color: #fff;\\n text-align: center;\\n border-radius: 6px;\\n padding: 5px 0;\\n position: absolute;\\n z-index: 1;\\n bottom: 125%;\\n left: 50%;\\n margin-left: -60px;\\n opacity: 0;\\n transition: opacity 0.3s; }\\n\\n.tooltip .tooltiptext::after {\\n content: \\\"\\\";\\n position: absolute;\\n top: 100%;\\n left: 50%;\\n margin-left: -5px;\\n border-width: 5px;\\n border-style: solid;\\n border-color: #555 transparent transparent transparent; }\\n\\n.tooltip:hover .tooltiptext {\\n visibility: visible;\\n opacity: 1; }\\n\\n.flex-container {\\n display: -ms-flexbox;\\n display: flex;\\n -ms-flex-wrap: nowrap;\\n flex-wrap: nowrap;\\n background-color: #eef8f9; }\\n\\n.flex-container > div {\\n background-color: #eef8f9;\\n width: 100%;\\n margin: 10px;\\n text-align: center;\\n line-height: 75px;\\n font-size: 30px; }\\n\\n/* \\n\\n\\n.wizard-progress {\\n display: table;\\n width: 100%;\\n table-layout: fixed;\\n position: relative;\\n}\\n.wizard-progress .step {\\n display: table-cell;\\n text-align: center;\\n vertical-align: top;\\n overflow: visible;\\n position: relative;\\n font-size: 14px;\\n color: #fff;\\n font-weight: bold;\\n}\\n.wizard-progress .step:not(:last-child):before {\\n content: '';\\n display: block;\\n position: absolute;\\n left: 50%;\\n top: 37px;\\n background-color: #fff;\\n height: 6px;\\n width: 100%;\\n}\\n\\n\\n\\n.wizard-progress .step .node {\\n display: inline-block;\\n border: 0px solid #fff;\\n background-color: #b39595;\\n border-radius: 18px;\\n height: 19px;\\n width: 18px;\\n position: absolute;\\n top: 29px;\\n left: 50%;\\n margin-left: -16px;\\n}\\n.wizard-progress .step.complete:before {\\n background-color: #66a753;\\n}\\n\\n.wizard-progress .step.complete .node {\\n border-color: #ffffff;\\n background-color: #66a753;\\n}\\n.wizard-progress .step.complete .node:before {\\n font-family: FontAwesome;\\n content: \\\"\\\\f00c\\\";\\n}\\n.wizard-progress .step.in-progress:before {\\n background: #07c;\\n background: -moz-linear-gradient(left, #07c 0%, #fff 100%);\\n background: -webkit-linear-gradient(left, #07c 0%, #fff 100%);\\n background: linear-gradient(to right, #07c 0%, #fff 100%);\\n filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#07c', endColorstr='#fff',GradientType=1 );\\n}\\n.wizard-progress .step.in-progress .node {\\n border-color: #07c;\\n} */\\n\\nbody {\\n background-color: black;\\n font-family: Bernina; }\\n\\n.wizard-progress {\\n display: table;\\n width: 100%;\\n table-layout: fixed;\\n position: relative; }\\n\\n.wizard-progress .step {\\n display: table-cell;\\n text-align: center;\\n vertical-align: top;\\n overflow: visible;\\n position: relative;\\n font-size: 14px;\\n color: white;\\n font-weight: bold; }\\n\\n.wizard-progress .step:not(:last-child):before {\\n content: '';\\n display: block;\\n position: absolute;\\n left: 50%;\\n top: 32px;\\n background-color: #e0dddd;\\n height: 6px;\\n width: 100%; }\\n\\n.wizard-progress .step .node {\\n display: inline-block;\\n /* border: 6px solid #fff; */\\n background-color: lightgray;\\n border-radius: 18px;\\n /* border-color: black; */\\n height: 25px;\\n width: 24px;\\n position: absolute;\\n top: 23px;\\n left: 50%;\\n margin-left: -18px; }\\n\\n.wizard-progress .step.complete:before {\\n background-color: #b2d235;\\n margin-top: 5%; }\\n\\n.wizard-progress .step.active:before {\\n background-image: linear-gradient(to right, #b2d235 50%, lightgray 4%, lightgray 46%);\\n background: linear-gradient(to right, #b2d235 43%, lightgray 21%, lightgray 46%);\\n background-color: black; }\\n\\n.wizard-progress .step.complete .node {\\n border-color: #b2d235;\\n background-color: #b2d235;\\n margin-top: 3%; }\\n\\n.wizard-progress .step.active .node {\\n border-color: #b2d235;\\n background-color: #b2d235;\\n margin-top: 3%; }\\n\\n.wizard-progress .step.in-progress:before {\\n background-color: #b2d235; }\\n\\n.wizard-progress .step.in-progress .node {\\n border-color: #b2d235;\\n background-color: #b2d235; }\\n\\n.wizard-progress .step.cgi:before {\\n background-color: red; }\\n\\n.wizard-progress .step.cgi .node {\\n border-color: red;\\n background-color: red; }\\n\\n.wizard-progress .step.cgi .node:before {\\n font-family: FontAwesome;\\n content: \\\"\\\\f00d\\\";\\n margin-bottom: 0% !important; }\\n\\n.wizard-progress .step.complete .node:before {\\n font-family: FontAwesome;\\n content: \\\"\\\\f00c\\\";\\n margin-bottom: 1px !important; }\\n\\n.wizard-progress .step.active .node:before {\\n font-family: FontAwesome;\\n content: \\\"\\\\f00c\\\";\\n margin-bottom: 1px !important; }\\n\\n.wizard-progress .step.in-progress .node:before {\\n font-family: FontAwesome;\\n content: \\\"\\\\f00c\\\"; }\\n\\n.wizard-progress .step.in-progress:before {\\n background: #b2d235;\\n background-image: linear-gradient(to right, #b2d235 43%, lightgray 21%, #ec1c24 46%);\\n background: linear-gradient(to right, #b2d235 43%, lightgray 21%, #ec1c24 46%);\\n filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#07c', endColorstr='#fff', GradientType=1); }\\n\\n.wizard-progress .step.in-progress .node {\\n border-color: #b2d235; }\\n\\n.rescheduleButton {\\n margin-top: 10% !important;\\n font-weight: 900 !important;\\n margin-left: 5% !important;\\n border-radius: 25px !important; }\\n\\n.navbarBG {\\n background-color: #003a5d !important; }\\n\\n.logoHW {\\n height: 100%;\\n width: 50%; }\\n\\n.NicorlogoHW {\\n height: 100%;\\n width: 50%; }\\n\\n.orderStatusBG {\\n background-color: #00bcf1;\\n margin-bottom: 0%; }\\n\\n.ldcStyle {\\n margin-left: 5%;\\n padding-bottom: 1%;\\n margin-bottom: 2%;\\n color: whitesmoke;\\n font-family: Adelle !important; }\\n\\n.orderStatusSB {\\n background-color: #ffffff;\\n margin-top: -2%;\\n padding-top: 2%;\\n padding-bottom: 3%; }\\n\\n.appointmentSB {\\n padding-top: 0%;\\n padding-left: 19%;\\n color: black;\\n font-size: 10px; }\\n\\n.reminderSB {\\n padding-top: 0%;\\n padding-left: 11%;\\n color: black;\\n font-size: 11px; }\\n\\n.enrouteSB {\\n padding-top: 0%;\\n padding-right: 0%;\\n color: black;\\n font-size: 11px; }\\n\\n.completeSB {\\n color: black;\\n padding-top: 0%;\\n padding-right: 12%;\\n font-size: 11px; }\\n\\n.whiteBG {\\n background-color: #ffffff !important; }\\n\\n.techImg {\\n border-radius: 50%;\\n margin-top: 5%;\\n margin-left: 9%; }\\n\\n.techName {\\n text-align: center;\\n font-weight: 700;\\n font-family: adelle;\\n color: black;\\n margin-left: 7%;\\n font-size: 20px; }\\n\\n.mapText {\\n font-size: 24px;\\n padding-right: 5px;\\n color: #bdbdbd !important; }\\n\\n.pl-3 {\\n padding-left: 3%; }\\n\\n.marketerContact {\\n color: whitesmoke !important;\\n font-weight: bold;\\n font-size: 16px; }\\n\\n.marginTop-7 {\\n margin-top: 7% !important; }\\n\\n.techText {\\n width: 85%;\\n float: right; }\\n\\n.watermark {\\n position: relative;\\n max-width: 800px;\\n margin: 0 auto; }\\n\\n.watermark img {\\n vertical-align: middle; }\\n\\n.eta {\\n color: black;\\n font-weight: 600;\\n font-family: Adelle;\\n font-size: 20px;\\n margin-left: 5%;\\n margin-top: 3%;\\n padding: 0 !important; }\\n\\n.etaWindow {\\n color: black;\\n font-weight: 600;\\n font-family: Adelle;\\n font-size: 20px;\\n margin-left: 5%;\\n padding: 0 !important; }\\n\\n.watermark .content {\\n position: absolute;\\n bottom: 0;\\n background: black;\\n /* Fallback color */\\n background: rgba(0, 0, 0, 0.5);\\n /* Black background with 0.5 opacity */\\n color: #f1f1f1;\\n width: 80%;\\n padding: 20px; }\\n\\n.flag {\\n width: 110px;\\n height: 56px;\\n box-sizing: content-box;\\n padding-top: 15px;\\n position: relative;\\n background: red;\\n color: white;\\n font-size: 11px;\\n letter-spacing: 0.2em;\\n text-align: center;\\n text-transform: uppercase; }\\n\\n.AdelleRegular {\\n font-family: Adelle; }\\n\\n.AdelleBold {\\n font-family: Adelle;\\n font-weight: bold; }\\n\\n.flag:after {\\n content: \\\"\\\";\\n position: absolute;\\n left: 0;\\n bottom: 0;\\n width: 0;\\n height: 0;\\n border-bottom: 13px solid #eee;\\n border-left: 55px solid transparent;\\n border-right: 55px solid transparent; }\\n\\n.pl-3 {\\n padding-left: 3% !important; }\\n\\n.title {\\n color: blue;\\n font-weight: 600;\\n font-family: Adelle;\\n font-size: 20px; }\\n\\n.Myfooter {\\n position: fixed;\\n left: 0;\\n bottom: 0;\\n width: 100%;\\n background-color: black;\\n color: white !important;\\n text-align: center !important; }\\n\\n.textTransform {\\n text-transform: inherit !important;\\n font-size: 13px !important;\\n text-align: left !important; }\\n\\n.font13 {\\n font-size: 13px !important;\\n text-transform: inherit !important;\\n text-align: left !important; }\\n\\n.bold {\\n font-weight: bold; }\\n\\n.marginL5 {\\n margin-left: 5%; }\\n\\n.terms-conditions-footer {\\n margin-bottom: 5%; }\\n\\n@media screen and (max-width: 768px) {\\n .terms-conditions-footer {\\n margin-bottom: 13%; } }\\n\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvY29tcG9uZW50cy9mYXEvRTpcXEFnZW50c1xcQnVpbGRcXF93b3JrXFw1MTM4XFxzXFxXZWJcXENsaWVudEFwcC9zcmNcXGFwcFxcY29tcG9uZW50c1xcZmFxXFxmYXEuY29tcG9uZW50LnNjc3MiLCJzcmMvYXBwL2NvbXBvbmVudHMvZmFxL2ZhcS5jb21wb25lbnQuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtFQUNFLHdCQUF3QixFQUFBOztBQUcxQjtFQUNFLG9CQUFhO0VBQWIsYUFBYTtFQUNiLG1CQUFlO01BQWYsZUFBZTtFQUNmLCtCQUFBLEVBQWdDOztBQUdsQztFQUNFLFVBQVU7RUFDVixVQUFVO0VBQ1Ysa0JBQWtCO0VBQ2xCO3NCQ0RvQixFREVDOztBQUd2QjtFQUNFO0lBQ0UsNEJBQTRCLEVBQUE7RUFFOUI7SUFDRSxVQUFVLEVBQUEsRUFDWDs7QUFHSDtFQUVFLG1EQUFBO0VBQ0EsV0FBQTtFQUNBLG9CQUFhO0VBQWIsYUFBYSxFQUFBOztBQUdmO0VBQ0UseUJBQXlCO0VBQ3pCLDRCQUE0QixFQUFBOztBQUc5QjtFQUVFLGdCQUFBO0VBQ0EsV0FBVztFQUNYLFVBQUE7RUFDQSxPQUFPLEVBQUE7O0FBR1Q7RUFDRSxrQkFBa0I7RUFDbEIsY0FBYyxFQUFBOztBQUdoQjtFQUNFLDJCQUEyQixFQUFBOztBQUc3QjtFQUNFLHNCQUFzQixFQUFBOztBQUd4QjtFQUNFLG1CQUFtQixFQUFBOztBQUdyQjtFQUNFLG1CQUFtQjtFQUNuQixpQkFBaUIsRUFBQTs7QUFHbkI7RUFDRSxvQkFBb0I7RUFDcEIsWUFBWSxFQUFBOztBQUdkO0VBQ0UsbUJBQW1CO0VBQ25CLGdCQUFnQixFQUFBOztBQUdsQjtFQUNFLGVBQWU7RUFDZixjQUF1QixFQUFBOztBQUd6QjtFQUNFLGVBQWU7RUFDZixhQUFhLEVBQUE7O0FBR2Y7RUFDRSxlQUFlO0VBQ2YsV0FBVyxFQUFBOztBQUdiO0VBQ0UsYUFBYSxFQUFBOztBQUdmO0VBQ0Usa0JB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Q0Usa0JBQWtCO0VBQ2xCLFNBQVM7RUFDVCxpQkFBd0I7RUFDeEIsbUJBQUE7RUFDQSw4QkFBOEI7RUFDOUIsc0NBQUE7RUFDQSxjQUFjO0VBQ2QsVUFBVTtFQUNWLGFBQWEsRUFBQTs7QUFHZjtFQUNFLFlBQVk7RUFDWixZQUFZO0VBQ1osdUJBQXVCO0VBQ3ZCLGlCQUFpQjtFQUNqQixrQkFBa0I7RUFDbEIsZUFBZTtFQUNmLFlBQVk7RUFDWixlQUFlO0VBQ2YscUJBQXFCO0VBQ3JCLGtCQUFrQjtFQUNsQix5QkFBeUIsRUFBQTs7QUFZM0I7RUFDQSxtQkFBbUIsRUFBQTs7QUFHbkI7RUFDQSxtQkFBbUI7RUFDbkIsaUJBQWlCLEVBQUE7O0FBR2pCO0VBQ0EsV0FBVztFQUNYLGtCQUFrQjtFQUNsQixPQUFPO0VBQ1AsU0FBUztFQUNULFFBQVE7RUFDUixTQUFTO0VBQ1QsOEJBQThCO0VBQzlCLG1DQUFtQztFQUNuQyxvQ0FBb0MsRUFBQTs7QUFHcEM7RUFFQSwyQkFBMkIsRUFBQTs7QUFHM0I7RUFDQSxXQUFXO0VBQ1gsZ0JBQWdCO0VBQ2hCLG1CQUFtQjtFQUNuQixlQUFlLEVBQUE7O0FBR2Y7RUFDRSxlQUFlO0VBQ2YsT0FBTztFQUNQLFNBQVM7RUFDVCxXQUFXO0VBQ1gsdUJBQXVCO0VBQ3ZCLHVCQUF1QjtFQUN2Qiw2QkFBNkIsRUFBQTs7QUFFL0I7RUFDRSxrQ0FBa0M7RUFDbEMsMEJBQTBCO0VBQzFCLDJCQUEyQixFQUFBOztBQUc3QjtFQUNFLDBCQUEwQjtFQUMxQixrQ0FBa0M7RUFDbEMsMkJBQTJCLEVBQUE7O0FBRzdCO0VBQ0UsaUJBQWlCLEVBQUE7O0FBR25CO0VBQ0UsZUFBZSxFQUFBOztBQUdqQjtFQUNFLGlCQUFpQixFQUFBOztBQUVuQjtFQUNFO0lBQ0Usa0JBQWtCLEVBQUEsRUFDbkIiLCJmaWxlIjoic3JjL2FwcC9jb21wb25lbnRzL2ZhcS9mYXEuY29tcG9uZW50LnNjc3MiLCJzb3VyY2VzQ29udGVudCI6WyJhZ20tbWFwIHtcbiAgaGVpZ2h0OiAzMDBweCAhaW1wb3J0YW50O1xufVxuXG4uZmxleC1jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIC8qIGJhY2tncm91bmQtY29sb3I6ICNjY2NmZDI7ICovXG59XG5cbi5mbGV4LWNvbnRhaW5lcj5kaXYge1xuICB3aWR0aDogMjMlO1xuICBtYXJnaW46IDElO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIC8qIGxpbmUtaGVpZ2h0OiA3NXB4O1xuICAgIGZvbnQtc2l6ZTogMzBweDsgKi9cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjBweCkge1xuICAuaC00MDAge1xuICAgIG1pbi1oZWlnaHQ6IDQ0NHB4ICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmZsZXgtY29udGFpbmVyIHtcbiAgICB3aWR0aDogNTAlO1xuICB9XG59XG5cbi5tYWluIHtcbiAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICAvKiBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoI2ZmZmNmYywgI2Y2YjZiNik7ICovXG4gIC8qIFNhZmFyaSAqL1xuICBkaXNwbGF5OiBmbGV4O1xufVxuXG4uY2FyZCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkNmNjY2M7XG4gIG1hcmdpbi1ib3R0b206IDAlICFpbXBvcnRhbnQ7XG59XG5cbi5tYWluIGRpdiB7XG4gIC13ZWJraXQtZmxleDogMTtcbiAgLyogU2FmYXJpIDYuMSsgKi9cbiAgLW1zLWZsZXg6IDE7XG4gIC8qIElFIDEwICovXG4gIGZsZXg6IDE7XG59XG5cbi5tYWluIGkge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uZXhhbXBsZS1jbGFzcyB7XG4gIGJhY2tncm91bmQtY29sb3I6IGFsaWNlYmx1ZTtcbn1cblxuLm90aGVyLWNsYXNzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogYXF1YTtcbn1cblxuLkFkZWxsZVJlZ3VsYXIge1xuICBmb250LWZhbWlseTogQWRlbGxlO1xufVxuXG4uQWRlbGxlQm9sZCB7XG4gIGZvbnQtZmFtaWx5OiBBZGVsbGU7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG5zcGFuLCBwLCBzdHJvbmcsIGxpIHtcbiAgZm9udC1mYW1pbHk6IEJlcm5pbmE7XG4gIGNvbG9yOiBibGFjaztcbn1cblxuYiB7XG4gIGZvbnQtZmFtaWx5OiBBZGVsbGU7XG4gIGNvbG9yOiBsaWdodGdyYXk7XG59XG5cbi5ncmVlbiB7XG4gIGZvbnQtc2l6ZTogNTBweDtcbiAgY29sb3I6IHJnYigzNywgMTYwLCAzNyk7XG59XG5cbi5vcmFuZ2Uge1xuICBmb250LXNpemU6IDUwcHg7XG4gIGNvbG9yOiBvcmFuZ2U7XG59XG5cbi5ncmF5IHtcbiAgZm9udC1zaXplOiA1MHB4O1xuICBjb2xvcjogZ3JheTtcbn1cblxuLmdtbm9wcmludCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi50b29sdGlwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQgYmxhY2s7XG59XG5cbi50b29sdGlwIC50b29sdGlwdGV4dCB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgd2lkdGg6IDEyMHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTU1O1xuICBjb2xvcjogI2ZmZjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBib3JkZXItcmFkaXVzOiA2cHg7XG4gIHBhZGRpbmc6IDVweCAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDE7XG4gIGJvdHRvbTogMTI1JTtcbiAgbGVmdDogNTAlO1xuICBtYXJnaW4tbGVmdDogLTYwcHg7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcztcbn1cblxuLnRvb2x0aXAgLnRvb2x0aXB0ZXh0OjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMDAlO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtNXB4O1xuICBib3JkZXItd2lkdGg6IDVweDtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiAjNTU1IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xufVxuXG4udG9vbHRpcDpob3ZlciAudG9vbHRpcHRleHQge1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICBvcGFjaXR5OiAxO1xufVxuXG4uZmxleC1jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VlZjhmOTtcbn1cblxuLmZsZXgtY29udGFpbmVyPmRpdiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlZWY4Zjk7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW46IDEwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbGluZS1oZWlnaHQ6IDc1cHg7XG4gIGZvbnQtc2l6ZTogMzBweDtcbn1cblxuLyogXG5cblxuLndpemFyZC1wcm9ncmVzcyB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICB3aWR0aDogMTAwJTtcbiAgdGFibGUtbGF5b3V0OiBmaXhlZDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLndpemFyZC1wcm9ncmVzcyAuc3RlcCB7XG4gIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBjb2xvcjogI2ZmZjtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG4ud2l6YXJkLXByb2dyZXNzIC5zdGVwOm5vdCg6bGFzdC1jaGlsZCk6YmVmb3JlIHtcbiAgY29udGVudDogJyc7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDUwJTtcbiAgdG9wOiAzN3B4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBoZWlnaHQ6IDZweDtcbiAgd2lkdGg6IDEwMCU7XG59XG5cblxuXG4ud2l6YXJkLXByb2dyZXNzIC5zdGVwIC5ub2RlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGJvcmRlcjogMHB4IHNvbGlkICNmZmY7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2IzOTU5NTtcbiAgICBib3JkZXItcmFkaXVzOiAxOHB4O1xuICAgIGhlaWdodDogMTlweDtcbiAgICB3aWR0aDogMThweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAyOXB4O1xuICAgIGxlZnQ6IDUwJTtcbiAgICBtYXJnaW4tbGVmdDogLTE2cHg7XG59XG4ud2l6YXJkLXByb2dyZXNzIC5zdGVwLmNvbXBsZXRlOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM2NmE3NTM7XG59XG5cbi53aXphcmQtcHJvZ3Jlc3MgLnN0ZXAuY29tcGxldGUgLm5vZGUge1xuICBib3JkZXItY29sb3I6ICNmZmZmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICM2NmE3NTM7XG59XG4ud2l6YXJkLXByb2dyZXNzIC5zdGVwLmNvbXBsZXRlIC5ub2RlOmJlZm9yZSB7XG4gIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcbiAgY29udGVudDogXCJcXGYwMGNcIjtcbn1cbi53aXphcmQtcHJvZ3Jlc3MgLnN0ZXAuaW4tcHJvZ3Jlc3M6YmVmb3JlIHtcbiAgYmFja2dyb3VuZDogIzA3YztcbiAgYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQobGVmdCwgIzA3YyAwJSwgI2ZmZiAxMDAlKTtcbiAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQobGVmdCwgIzA3YyAwJSwgI2ZmZiAxMDAlKTtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAjMDdjIDAlLCAjZmZmIDEwMCUpO1xuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudCggICAgIHN0YXJ0Q29sb3JzdHI9JyMwN2MnLCBlbmRDb2xvcnN0cj0nI2ZmZicsR3JhZGllbnRUeXBlPTEgKTtcbn1cbi53aXphcmQtcHJvZ3Jlc3MgLnN0ZXAuaW4tcHJvZ3Jlc3MgLm5vZGUge1xuICBib3JkZXItY29sb3I6ICMwN2M7XG59ICovXG5cbmJvZHkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBibGFjaztcbiAgZm9udC1mYW1pbHk6IEJlcm5pbmE7XG59XG5cbi53aXphcmQtcHJvZ3Jlc3Mge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgd2lkdGg6IDEwMCU7XG4gIHRhYmxlLWxheW91dDogZml4ZWQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLndpemFyZC1wcm9ncmVzcyAuc3RlcCB7XG4gIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBjb2xvcjogd2hpdGU7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4ud2l6YXJkLXByb2dyZXNzIC5zdGVwOm5vdCg6bGFzdC1jaGlsZCk6YmVmb3JlIHtcbiAgY29udGVudDogJyc7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDUwJTtcbiAgdG9wOiAzMnB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTBkZGRkO1xuICBoZWlnaHQ6IDZweDtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi53aXphcmQtcHJvZ3Jlc3MgLnN0ZXAgLm5vZGUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIC8qIGJvcmRlcjogNnB4IHNvbGlkICNmZmY7ICovXG4gIGJhY2tncm91bmQtY29sb3I6IGxpZ2h0Z3JheTtcbiAgYm9yZGVyLXJhZGl1czogMThweDtcbiAgLyogYm9yZGVyLWNvbG9yOiAgYmxhY2s7ICovXG4gIGhlaWdodDogMjVweDtcbiAgd2lkdGg6IDI0cHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAyM3B4O1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtMThweDtcbn1cblxuLndpemFyZC1wcm9ncmVzcyAuc3RlcC5jb21wbGV0ZTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYjJkMjM1O1xuICBtYXJnaW4tdG9wOiA1JTtcbn1cblxuLndpemFyZC1wcm9ncmVzcyAuc3RlcC5hY3RpdmU6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAjYjJkMjM1IDUwJSwgbGlnaHRncmF5IDQlLCBsaWdodGdyYXkgNDYlKTtcbiAgYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICNiMmQyMzUgMCUsIGxpZ2h0Z3JheSAyMSUsIGxpZ2h0Z3JheSA0NiUpO1xuICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0byByaWdodCwgI2IyZDIzNSAwJSwgbGlnaHRncmF5IDIxJSwgbGlnaHRncmF5IDQ2JSk7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgI2IyZDIzNSA0MyUsIGxpZ2h0Z3JheSAyMSUsIGxpZ2h0Z3JheSA0NiUpO1xuICA7XG4gIGJhY2tncm91bmQtY29sb3I6IGJsYWNrO1xufVxuXG4ud2l6YXJkLXByb2dyZXNzIC5zdGVwLmNvbXBsZXRlIC5ub2RlIHtcbiAgYm9yZGVyLWNvbG9yOiAjYjJkMjM1O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYjJkMjM1O1xuICBtYXJnaW4tdG9wOiAzJTtcbn1cblxuLndpemFyZC1wcm9ncmVzcyAuc3RlcC5hY3RpdmUgLm5vZGUge1xuICBib3JkZXItY29sb3I6ICNiMmQyMzU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNiMmQyMzU7XG4gIG1hcmdpbi10b3A6IDMlO1xufVxuXG4ud2l6YXJkLXByb2dyZXNzIC5zdGVwLmluLXByb2dyZXNzOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNiMmQyMzU7XG59XG5cbi53aXphcmQtcHJvZ3Jlc3MgLnN0ZXAuaW4tcHJvZ3Jlc3MgLm5vZGUge1xuICBib3JkZXItY29sb3I6ICNiMmQyMzU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNiMmQyMzU7XG59XG5cbi53aXphcmQtcHJvZ3Jlc3MgLnN0ZXAuY2dpOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJlZDtcbn1cblxuLndpemFyZC1wcm9ncmVzcyAuc3RlcC5jZ2kgLm5vZGUge1xuICBib3JkZXItY29sb3I6IHJlZDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmVkO1xufVxuXG4ud2l6YXJkLXByb2dyZXNzIC5zdGVwLmNnaSAubm9kZTpiZWZvcmUge1xuICBmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XG4gIGNvbnRlbnQ6IFwiXFxmMDBkXCI7XG4gIG1hcmdpbi1ib3R0b206IDAlICFpbXBvcnRhbnQ7XG59XG5cbi53aXphcmQtcHJvZ3Jlc3MgLnN0ZXAuY29tcGxldGUgLm5vZGU6YmVmb3JlIHtcbiAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xuICBjb250ZW50OiBcIlxcZjAwY1wiO1xuICBtYXJnaW4tYm90dG9tOiAxcHggIWltcG9ydGFudDtcbn1cblxuLndpemFyZC1wcm9ncmVzcyAuc3RlcC5hY3RpdmUgLm5vZGU6YmVmb3JlIHtcbiAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xuICBjb250ZW50OiBcIlxcZjAwY1wiO1xuICBtYXJnaW4tYm90dG9tOiAxcHggIWltcG9ydGFudDtcbn1cblxuLndpemFyZC1wcm9ncmVzcyAuc3RlcC5pbi1wcm9ncmVzcyAubm9kZTpiZWZvcmUge1xuICBmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XG4gIGNvbnRlbnQ6IFwiXFxmMDBjXCI7XG59XG5cbi53aXphcmQtcHJvZ3Jlc3MgLnN0ZXAuaW4tcHJvZ3Jlc3M6YmVmb3JlIHtcbiAgYmFja2dyb3VuZDogI2IyZDIzNTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAjYjJkMjM1IDQzJSwgbGlnaHRncmF5IDIxJSwgI2VjMWMyNCA0NiUpO1xuICBiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudCh0byByaWdodCwgI2IyZDIzNSAwJSwgbGlnaHRncmF5IDIxJSwgI2VjMWMyNCA0NiUpO1xuICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0byByaWdodCwgI2IyZDIzNSAwJSwgbGlnaHRncmF5IDIxJSwgI2VjMWMyNCA0NiUpO1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICNiMmQyMzUgNDMlLCBsaWdodGdyYXkgMjElLCAjZWMxYzI0IDQ2JSk7XG4gIDtcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoIHN0YXJ0Q29sb3JzdHI9JyMwN2MnLCBlbmRDb2xvcnN0cj0nI2ZmZicsIEdyYWRpZW50VHlwZT0xKTtcbn1cblxuLndpemFyZC1wcm9ncmVzcyAuc3RlcC5pbi1wcm9ncmVzcyAubm9kZSB7XG4gIGJvcmRlci1jb2xvcjogI2IyZDIzNTtcbn1cblxuLnJlc2NoZWR1bGVCdXR0b24ge1xuICBtYXJnaW4tdG9wOiAxMCUgIWltcG9ydGFudDtcbiAgZm9udC13ZWlnaHQ6IDkwMCAhaW1wb3J0YW50O1xuICBtYXJnaW4tbGVmdDogNSUgIWltcG9ydGFudDtcbiAgYm9yZGVyLXJhZGl1czogMjVweCAhaW1wb3J0YW50O1xufVxuXG4ubmF2YmFyQkcge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAzYTVkICFpbXBvcnRhbnQ7XG59XG5cbi5sb2dvSFcge1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiA1MCU7XG59XG5cbi5OaWNvcmxvZ29IVyB7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDUwJTtcbn1cblxuLm9yZGVyU3RhdHVzQkcge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBiY2YxO1xuICBtYXJnaW4tYm90dG9tOiAwJTtcbn1cblxuLmxkY1N0eWxlIHtcbiAgbWFyZ2luLWxlZnQ6IDUlO1xuICBwYWRkaW5nLWJvdHRvbTogMSU7XG4gIG1hcmdpbi1ib3R0b206IDIlO1xuICBjb2xvcjogd2hpdGVzbW9rZTtcbiAgZm9udC1mYW1pbHk6IEFkZWxsZSAhaW1wb3J0YW50O1xufVxuXG4ub3JkZXJTdGF0dXNTQiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gIG1hcmdpbi10b3A6IC0yJTtcbiAgcGFkZGluZy10b3A6IDIlO1xuICBwYWRkaW5nLWJvdHRvbTogMyU7XG59XG5cbi5hcHBvaW50bWVudFNCIHtcbiAgcGFkZGluZy10b3A6IDAlO1xuICBwYWRkaW5nLWxlZnQ6IDE5JTtcbiAgY29sb3I6IGJsYWNrO1xuICBmb250LXNpemU6IDEwcHg7XG59XG5cbi5yZW1pbmRlclNCIHtcbiAgcGFkZGluZy10b3A6IDAlO1xuICBwYWRkaW5nLWxlZnQ6IDExJTtcbiAgY29sb3I6IGJsYWNrO1xuICBmb250LXNpemU6IDExcHg7XG59XG5cbi5lbnJvdXRlU0Ige1xuICBwYWRkaW5nLXRvcDogMCU7XG4gIHBhZGRpbmctcmlnaHQ6IDAlO1xuICBjb2xvcjogYmxhY2s7XG4gIGZvbnQtc2l6ZTogMTFweDtcbn1cblxuLmNvbXBsZXRlU0Ige1xuICBjb2xvcjogYmxhY2s7XG4gIHBhZGRpbmctdG9wOiAwJTtcbiAgcGFkZGluZy1yaWdodDogMTIlO1xuICBmb250LXNpemU6IDExcHg7XG59XG5cbi53aGl0ZUJHIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZiAhaW1wb3J0YW50O1xufVxuXG4udGVjaEltZyB7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgbWFyZ2luLXRvcDogNSU7XG4gIG1hcmdpbi1sZWZ0OiA5JTtcbn1cblxuLnRlY2hOYW1lIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LWZhbWlseTogYWRlbGxlO1xuICBjb2xvcjogYmxhY2s7XG4gIG1hcmdpbi1sZWZ0OiA3JTtcbiAgZm9udC1zaXplOiAyMHB4O1xufVxuXG4ubWFwVGV4dCB7XG4gIGZvbnQtc2l6ZTogMjRweDtcbiAgcGFkZGluZy1yaWdodDogNXB4O1xuICBjb2xvcjogI2JkYmRiZCAhaW1wb3J0YW50XG59XG5cbi5wbC0zIHtcbiAgcGFkZGluZy1sZWZ0OiAzJTtcbn1cblxuLm1hcmtldGVyQ29udGFjdCB7XG4gIGNvbG9yOiB3aGl0ZXNtb2tlICFpbXBvcnRhbnQ7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBmb250LXNpemU6IDE2cHg7XG59XG5cbi5tYXJnaW5Ub3AtNyB7XG4gIG1hcmdpbi10b3A6IDclICFpbXBvcnRhbnQ7XG59XG5cbi50ZWNoVGV4dCB7XG4gIHdpZHRoOiA4NSU7XG4gIGZsb2F0OiByaWdodDtcbn1cblxuLndhdGVybWFyayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWF4LXdpZHRoOiA4MDBweDtcbiAgbWFyZ2luOiAwIGF1dG87XG59XG5cbi53YXRlcm1hcmsgaW1nIHtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuLmV0YSB7XG4gIGNvbG9yOiBibGFjaztcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgZm9udC1mYW1pbHk6IEFkZWxsZTtcbiAgZm9udC1zaXplOiAyMHB4O1xuICBtYXJnaW4tbGVmdDogNSU7XG4gIG1hcmdpbi10b3A6IDMlO1xuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5ldGFXaW5kb3cge1xuICBjb2xvcjogYmxhY2s7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGZvbnQtZmFtaWx5OiBBZGVsbGU7XG4gIGZvbnQtc2l6ZTogMjBweDtcbiAgbWFyZ2luLWxlZnQ6IDUlO1xuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG59XG5cbi53YXRlcm1hcmsgLmNvbnRlbnQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMDtcbiAgYmFja2dyb3VuZDogcmdiKDAsIDAsIDApO1xuICAvKiBGYWxsYmFjayBjb2xvciAqL1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNSk7XG4gIC8qIEJsYWNrIGJhY2tncm91bmQgd2l0aCAwLjUgb3BhY2l0eSAqL1xuICBjb2xvcjogI2YxZjFmMTtcbiAgd2lkdGg6IDgwJTtcbiAgcGFkZGluZzogMjBweDtcbn1cblxuLmZsYWcge1xuICB3aWR0aDogMTEwcHg7XG4gIGhlaWdodDogNTZweDtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIHBhZGRpbmctdG9wOiAxNXB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQ6IHJlZDtcbiAgY29sb3I6IHdoaXRlO1xuICBmb250LXNpemU6IDExcHg7XG4gIGxldHRlci1zcGFjaW5nOiAwLjJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4vLyAgIC5mb250Q29sb3J7XG4vLyAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbi8vICAgICAgIGNvbG9yOiAjZWMxYzI0ICFpbXBvcnRhbnQ7XG4vLyAgIH1cblxuLy8gICAuQmVybmluYVNhbnNsaWdodCB7XG4vLyAgICAgZm9udC1mYW1pbHk6IEJlcm5pbmE7XG4vLyAgIH1cblxuLkFkZWxsZVJlZ3VsYXIge1xuZm9udC1mYW1pbHk6IEFkZWxsZTtcbn1cblxuLkFkZWxsZUJvbGQge1xuZm9udC1mYW1pbHk6IEFkZWxsZTtcbmZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4uZmxhZzphZnRlciB7XG5jb250ZW50OiBcIlwiO1xucG9zaXRpb246IGFic29sdXRlO1xubGVmdDogMDtcbmJvdHRvbTogMDtcbndpZHRoOiAwO1xuaGVpZ2h0OiAwO1xuYm9yZGVyLWJvdHRvbTogMTNweCBzb2xpZCAjZWVlO1xuYm9yZGVyLWxlZnQ6IDU1cHggc29saWQgdHJhbnNwYXJlbnQ7XG5ib3JkZXItcmlnaHQ6IDU1cHggc29saWQgdHJhbnNwYXJlbnQ7XG59XG5cbi5wbC0ze1xuLy8gY29sb3I6IGJsYWNrICFpbXBvcnRhbnQ7XG5wYWRkaW5nLWxlZnQ6IDMlICFpbXBvcnRhbnQ7XG59XG5cbi50aXRsZXtcbmNvbG9yOiBibHVlO1xuZm9udC13ZWlnaHQ6IDYwMDtcbmZvbnQtZmFtaWx5OiBBZGVsbGU7XG5mb250LXNpemU6IDIwcHg7XG59XG5cbi5NeWZvb3RlciB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgbGVmdDogMDtcbiAgYm90dG9tOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogYmxhY2s7XG4gIGNvbG9yOiB3aGl0ZSAhaW1wb3J0YW50O1xuICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDtcbn1cbi50ZXh0VHJhbnNmb3Jte1xuICB0ZXh0LXRyYW5zZm9ybTogaW5oZXJpdCAhaW1wb3J0YW50O1xuICBmb250LXNpemU6IDEzcHggIWltcG9ydGFudDtcbiAgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50O1xufVxuXG4uZm9udDEze1xuICBmb250LXNpemU6IDEzcHggIWltcG9ydGFudDtcbiAgdGV4dC10cmFuc2Zvcm06IGluaGVyaXQgIWltcG9ydGFudDtcbiAgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50O1xufVxuXG4uYm9sZHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi5tYXJnaW5MNXtcbiAgbWFyZ2luLWxlZnQ6IDUlO1xufVxuXG4udGVybXMtY29uZGl0aW9ucy1mb290ZXIge1xuICBtYXJnaW4tYm90dG9tOiA1JTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC50ZXJtcy1jb25kaXRpb25zLWZvb3RlciB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTMlO1xuICB9XG59ICIsImFnbS1tYXAge1xuICBoZWlnaHQ6IDMwMHB4ICFpbXBvcnRhbnQ7IH1cblxuLmZsZXgtY29udGFpbmVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICAvKiBiYWNrZ3JvdW5kLWNvbG9yOiAjY2NjZmQyOyAqLyB9XG5cbi5mbGV4LWNvbnRhaW5lciA+IGRpdiB7XG4gIHdpZHRoOiAyMyU7XG4gIG1hcmdpbjogMSU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgLyogbGluZS1oZWlnaHQ6IDc1cHg7XG4gICAgZm9udC1zaXplOiAzMHB4OyAqLyB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzYwcHgpIHtcbiAgLmgtNDAwIHtcbiAgICBtaW4taGVpZ2h0OiA0NDRweCAhaW1wb3J0YW50OyB9XG4gIC5mbGV4LWNvbnRhaW5lciB7XG4gICAgd2lkdGg6IDUwJTsgfSB9XG5cbi5tYWluIHtcbiAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICAvKiBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoI2ZmZmNmYywgI2Y2YjZiNik7ICovXG4gIC8qIFNhZmFyaSAqL1xuICBkaXNwbGF5OiBmbGV4OyB9XG5cbi5jYXJkIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2Q2Y2NjYztcbiAgbWFyZ2luLWJvdHRvbTogMCUgIWltcG9ydGFudDsgfVxuXG4ubWFpbiBkaXYge1xuICAtd2Via2l0LWZsZXg6IDE7XG4gIC8qIFNhZmFyaSA2LjErICovXG4gIC1tcy1mbGV4OiAxO1xuICAvKiBJRSAxMCAqL1xuICBmbGV4OiAxOyB9XG5cbi5tYWluIGkge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5leGFtcGxlLWNsYXNzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogYWxpY2VibHVlOyB9XG5cbi5vdGhlci1jbGFzcyB7XG4gIGJhY2tncm91bmQtY29sb3I6IGFxdWE7IH1cblxuLkFkZWxsZVJlZ3VsYXIge1xuICBmb250LWZhbWlseTogQWRlbGxlOyB9XG5cbi5BZGVsbGVCb2xkIHtcbiAgZm9udC1mYW1pbHk6IEFkZWxsZTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cblxuc3BhbiwgcCwgc3Ryb25nLCBsaSB7XG4gIGZvbnQtZmFtaWx5OiBCZXJuaW5hO1xuICBjb2xvcjogYmxhY2s7IH1cblxuYiB7XG4gIGZvbnQtZmFtaWx5OiBBZGVsbGU7XG4gIGNvbG9yOiBsaWdodGdyYXk7IH1cblxuLmdyZWVuIHtcbiAgZm9udC1zaXplOiA1MHB4O1xuICBjb2xvcjogIzI1YTAyNTsgfVxuXG4ub3JhbmdlIHtcbiAgZm9udC1zaXplOiA1MHB4O1xuICBjb2xvcjogb3JhbmdlOyB9XG5cbi5ncmF5IHtcbiAgZm9udC1zaXplOiA1MHB4O1xuICBjb2xvcjogZ3JheTsgfVxuXG4uZ21ub3ByaW50IHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4udG9vbHRpcCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBib3JkZXItYm90dG9tOiAxcHggZG90dGVkIGJsYWNrOyB9XG5cbi50b29sdGlwIC50b29sdGlwdGV4dCB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgd2lkdGg6IDEyMHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTU1O1xuICBjb2xvcjogI2ZmZjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBib3JkZXItcmFkaXVzOiA2cHg7XG4gIHBhZGRpbmc6IDVweCAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDE7XG4gIGJvdHRvbTogMTI1JTtcbiAgbGVmdDogNTAlO1xuICBtYXJnaW4tbGVmdDogLTYwcHg7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zczsgfVxuXG4udG9vbHRpcCAudG9vbHRpcHRleHQ6OmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDEwMCU7XG4gIGxlZnQ6IDUwJTtcbiAgbWFyZ2luLWxlZnQ6IC01cHg7XG4gIGJvcmRlci13aWR0aDogNXB4O1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItY29sb3I6ICM1NTUgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7IH1cblxuLnRvb2x0aXA6aG92ZXIgLnRvb2x0aXB0ZXh0IHtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uZmxleC1jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VlZjhmOTsgfVxuXG4uZmxleC1jb250YWluZXIgPiBkaXYge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVmOGY5O1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAxMHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGxpbmUtaGVpZ2h0OiA3NXB4O1xuICBmb250LXNpemU6IDMwcHg7IH1cblxuLyogXG5cblxuLndpemFyZC1wcm9ncmVzcyB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICB3aWR0aDogMTAwJTtcbiAgdGFibGUtbGF5b3V0OiBmaXhlZDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLndpemFyZC1wcm9ncmVzcyAuc3RlcCB7XG4gIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBjb2xvcjogI2ZmZjtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG4ud2l6YXJkLXByb2dyZXNzIC5zdGVwOm5vdCg6bGFzdC1jaGlsZCk6YmVmb3JlIHtcbiAgY29udGVudDogJyc7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDUwJTtcbiAgdG9wOiAzN3B4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBoZWlnaHQ6IDZweDtcbiAgd2lkdGg6IDEwMCU7XG59XG5cblxuXG4ud2l6YXJkLXByb2dyZXNzIC5zdGVwIC5ub2RlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGJvcmRlcjogMHB4IHNvbGlkICNmZmY7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2IzOTU5NTtcbiAgICBib3JkZXItcmFkaXVzOiAxOHB4O1xuICAgIGhlaWdodDogMTlweDtcbiAgICB3aWR0aDogMThweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAyOXB4O1xuICAgIGxlZnQ6IDUwJTtcbiAgICBtYXJnaW4tbGVmdDogLTE2cHg7XG59XG4ud2l6YXJkLXByb2dyZXNzIC5zdGVwLmNvbXBsZXRlOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM2NmE3NTM7XG59XG5cbi53aXphcmQtcHJvZ3Jlc3MgLnN0ZXAuY29tcGxldGUgLm5vZGUge1xuICBib3JkZXItY29sb3I6ICNmZmZmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICM2NmE3NTM7XG59XG4ud2l6YXJkLXByb2dyZXNzIC5zdGVwLmNvbXBsZXRlIC5ub2RlOmJlZm9yZSB7XG4gIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcbiAgY29udGVudDogXCJcXGYwMGNcIjtcbn1cbi53aXphcmQtcHJvZ3Jlc3MgLnN0ZXAuaW4tcHJvZ3Jlc3M6YmVmb3JlIHtcbiAgYmFja2dyb3VuZDogIzA3YztcbiAgYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQobGVmdCwgIzA3YyAwJSwgI2ZmZiAxMDAlKTtcbiAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQobGVmdCwgIzA3YyAwJSwgI2ZmZiAxMDAlKTtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAjMDdjIDAlLCAjZmZmIDEwMCUpO1xuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudCggICAgIHN0YXJ0Q29sb3JzdHI9JyMwN2MnLCBlbmRDb2xvcnN0cj0nI2ZmZicsR3JhZGllbnRUeXBlPTEgKTtcbn1cbi53aXphcmQtcHJvZ3Jlc3MgLnN0ZXAuaW4tcHJvZ3Jlc3MgLm5vZGUge1xuICBib3JkZXItY29sb3I6ICMwN2M7XG59ICovXG5ib2R5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogYmxhY2s7XG4gIGZvbnQtZmFtaWx5OiBCZXJuaW5hOyB9XG5cbi53aXphcmQtcHJvZ3Jlc3Mge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgd2lkdGg6IDEwMCU7XG4gIHRhYmxlLWxheW91dDogZml4ZWQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4ud2l6YXJkLXByb2dyZXNzIC5zdGVwIHtcbiAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmb250LXNpemU6IDE0cHg7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cblxuLndpemFyZC1wcm9ncmVzcyAuc3RlcDpub3QoOmxhc3QtY2hpbGQpOmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICcnO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiA1MCU7XG4gIHRvcDogMzJweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2UwZGRkZDtcbiAgaGVpZ2h0OiA2cHg7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi53aXphcmQtcHJvZ3Jlc3MgLnN0ZXAgLm5vZGUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIC8qIGJvcmRlcjogNnB4IHNvbGlkICNmZmY7ICovXG4gIGJhY2tncm91bmQtY29sb3I6IGxpZ2h0Z3JheTtcbiAgYm9yZGVyLXJhZGl1czogMThweDtcbiAgLyogYm9yZGVyLWNvbG9yOiAgYmxhY2s7ICovXG4gIGhlaWdodDogMjVweDtcbiAgd2lkdGg6IDI0cHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAyM3B4O1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtMThweDsgfVxuXG4ud2l6YXJkLXByb2dyZXNzIC5zdGVwLmNvbXBsZXRlOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNiMmQyMzU7XG4gIG1hcmdpbi10b3A6IDUlOyB9XG5cbi53aXphcmQtcHJvZ3Jlc3MgLnN0ZXAuYWN0aXZlOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgI2IyZDIzNSA1MCUsIGxpZ2h0Z3JheSA0JSwgbGlnaHRncmF5IDQ2JSk7XG4gIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAjYjJkMjM1IDAlLCBsaWdodGdyYXkgMjElLCBsaWdodGdyYXkgNDYlKTtcbiAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICNiMmQyMzUgMCUsIGxpZ2h0Z3JheSAyMSUsIGxpZ2h0Z3JheSA0NiUpO1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICNiMmQyMzUgNDMlLCBsaWdodGdyYXkgMjElLCBsaWdodGdyYXkgNDYlKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogYmxhY2s7IH1cblxuLndpemFyZC1wcm9ncmVzcyAuc3RlcC5jb21wbGV0ZSAubm9kZSB7XG4gIGJvcmRlci1jb2xvcjogI2IyZDIzNTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2IyZDIzNTtcbiAgbWFyZ2luLXRvcDogMyU7IH1cblxuLndpemFyZC1wcm9ncmVzcyAuc3RlcC5hY3RpdmUgLm5vZGUge1xuICBib3JkZXItY29sb3I6ICNiMmQyMzU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNiMmQyMzU7XG4gIG1hcmdpbi10b3A6IDMlOyB9XG5cbi53aXphcmQtcHJvZ3Jlc3MgLnN0ZXAuaW4tcHJvZ3Jlc3M6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2IyZDIzNTsgfVxuXG4ud2l6YXJkLXByb2dyZXNzIC5zdGVwLmluLXByb2dyZXNzIC5ub2RlIHtcbiAgYm9yZGVyLWNvbG9yOiAjYjJkMjM1O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYjJkMjM1OyB9XG5cbi53aXphcmQtcHJvZ3Jlc3MgLnN0ZXAuY2dpOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJlZDsgfVxuXG4ud2l6YXJkLXByb2dyZXNzIC5zdGVwLmNnaSAubm9kZSB7XG4gIGJvcmRlci1jb2xvcjogcmVkO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZWQ7IH1cblxuLndpemFyZC1wcm9ncmVzcyAuc3RlcC5jZ2kgLm5vZGU6YmVmb3JlIHtcbiAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xuICBjb250ZW50OiBcIlxcZjAwZFwiO1xuICBtYXJnaW4tYm90dG9tOiAwJSAhaW1wb3J0YW50OyB9XG5cbi53aXphcmQtcHJvZ3Jlc3MgLnN0ZXAuY29tcGxldGUgLm5vZGU6YmVmb3JlIHtcbiAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xuICBjb250ZW50OiBcIlxcZjAwY1wiO1xuICBtYXJnaW4tYm90dG9tOiAxcHggIWltcG9ydGFudDsgfVxuXG4ud2l6YXJkLXByb2dyZXNzIC5zdGVwLmFjdGl2ZSAubm9kZTpiZWZvcmUge1xuICBmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XG4gIGNvbnRlbnQ6IFwiXFxmMDBjXCI7XG4gIG1hcmdpbi1ib3R0b206IDFweCAhaW1wb3J0YW50OyB9XG5cbi53aXphcmQtcHJvZ3Jlc3MgLnN0ZXAuaW4tcHJvZ3Jlc3MgLm5vZGU6YmVmb3JlIHtcbiAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xuICBjb250ZW50OiBcIlxcZjAwY1wiOyB9XG5cbi53aXphcmQtcHJvZ3Jlc3MgLnN0ZXAuaW4tcHJvZ3Jlc3M6YmVmb3JlIHtcbiAgYmFja2dyb3VuZDogI2IyZDIzNTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAjYjJkMjM1IDQzJSwgbGlnaHRncmF5IDIxJSwgI2VjMWMyNCA0NiUpO1xuICBiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudCh0byByaWdodCwgI2IyZDIzNSAwJSwgbGlnaHRncmF5IDIxJSwgI2VjMWMyNCA0NiUpO1xuICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0byByaWdodCwgI2IyZDIzNSAwJSwgbGlnaHRncmF5IDIxJSwgI2VjMWMyNCA0NiUpO1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICNiMmQyMzUgNDMlLCBsaWdodGdyYXkgMjElLCAjZWMxYzI0IDQ2JSk7XG4gIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KCBzdGFydENvbG9yc3RyPScjMDdjJywgZW5kQ29sb3JzdHI9JyNmZmYnLCBHcmFkaWVudFR5cGU9MSk7IH1cblxuLndpemFyZC1wcm9ncmVzcyAuc3RlcC5pbi1wcm9ncmVzcyAubm9kZSB7XG4gIGJvcmRlci1jb2xvcjogI2IyZDIzNTsgfVxuXG4ucmVzY2hlZHVsZUJ1dHRvbiB7XG4gIG1hcmdpbi10b3A6IDEwJSAhaW1wb3J0YW50O1xuICBmb250LXdlaWdodDogOTAwICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1sZWZ0OiA1JSAhaW1wb3J0YW50O1xuICBib3JkZXItcmFkaXVzOiAyNXB4ICFpbXBvcnRhbnQ7IH1cblxuLm5hdmJhckJHIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwM2E1ZCAhaW1wb3J0YW50OyB9XG5cbi5sb2dvSFcge1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiA1MCU7IH1cblxuLk5pY29ybG9nb0hXIHtcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogNTAlOyB9XG5cbi5vcmRlclN0YXR1c0JHIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwYmNmMTtcbiAgbWFyZ2luLWJvdHRvbTogMCU7IH1cblxuLmxkY1N0eWxlIHtcbiAgbWFyZ2luLWxlZnQ6IDUlO1xuICBwYWRkaW5nLWJvdHRvbTogMSU7XG4gIG1hcmdpbi1ib3R0b206IDIlO1xuICBjb2xvcjogd2hpdGVzbW9rZTtcbiAgZm9udC1mYW1pbHk6IEFkZWxsZSAhaW1wb3J0YW50OyB9XG5cbi5vcmRlclN0YXR1c1NCIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgbWFyZ2luLXRvcDogLTIlO1xuICBwYWRkaW5nLXRvcDogMiU7XG4gIHBhZGRpbmctYm90dG9tOiAzJTsgfVxuXG4uYXBwb2ludG1lbnRTQiB7XG4gIHBhZGRpbmctdG9wOiAwJTtcbiAgcGFkZGluZy1sZWZ0OiAxOSU7XG4gIGNvbG9yOiBibGFjaztcbiAgZm9udC1zaXplOiAxMHB4OyB9XG5cbi5yZW1pbmRlclNCIHtcbiAgcGFkZGluZy10b3A6IDAlO1xuICBwYWRkaW5nLWxlZnQ6IDExJTtcbiAgY29sb3I6IGJsYWNrO1xuICBmb250LXNpemU6IDExcHg7IH1cblxuLmVucm91dGVTQiB7XG4gIHBhZGRpbmctdG9wOiAwJTtcbiAgcGFkZGluZy1yaWdodDogMCU7XG4gIGNvbG9yOiBibGFjaztcbiAgZm9udC1zaXplOiAxMXB4OyB9XG5cbi5jb21wbGV0ZVNCIHtcbiAgY29sb3I6IGJsYWNrO1xuICBwYWRkaW5nLXRvcDogMCU7XG4gIHBhZGRpbmctcmlnaHQ6IDEyJTtcbiAgZm9udC1zaXplOiAxMXB4OyB9XG5cbi53aGl0ZUJHIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZiAhaW1wb3J0YW50OyB9XG5cbi50ZWNoSW1nIHtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBtYXJnaW4tdG9wOiA1JTtcbiAgbWFyZ2luLWxlZnQ6IDklOyB9XG5cbi50ZWNoTmFtZSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZm9udC1mYW1pbHk6IGFkZWxsZTtcbiAgY29sb3I6IGJsYWNrO1xuICBtYXJnaW4tbGVmdDogNyU7XG4gIGZvbnQtc2l6ZTogMjBweDsgfVxuXG4ubWFwVGV4dCB7XG4gIGZvbnQtc2l6ZTogMjRweDtcbiAgcGFkZGluZy1yaWdodDogNXB4O1xuICBjb2xvcjogI2JkYmRiZCAhaW1wb3J0YW50OyB9XG5cbi5wbC0zIHtcbiAgcGFkZGluZy1sZWZ0OiAzJTsgfVxuXG4ubWFya2V0ZXJDb250YWN0IHtcbiAgY29sb3I6IHdoaXRlc21va2UgIWltcG9ydGFudDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGZvbnQtc2l6ZTogMTZweDsgfVxuXG4ubWFyZ2luVG9wLTcge1xuICBtYXJnaW4tdG9wOiA3JSAhaW1wb3J0YW50OyB9XG5cbi50ZWNoVGV4dCB7XG4gIHdpZHRoOiA4NSU7XG4gIGZsb2F0OiByaWdodDsgfVxuXG4ud2F0ZXJtYXJrIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXgtd2lkdGg6IDgwMHB4O1xuICBtYXJnaW46IDAgYXV0bzsgfVxuXG4ud2F0ZXJtYXJrIGltZyB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cblxuLmV0YSB7XG4gIGNvbG9yOiBibGFjaztcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgZm9udC1mYW1pbHk6IEFkZWxsZTtcbiAgZm9udC1zaXplOiAyMHB4O1xuICBtYXJnaW4tbGVmdDogNSU7XG4gIG1hcmdpbi10b3A6IDMlO1xuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7IH1cblxuLmV0YVdpbmRvdyB7XG4gIGNvbG9yOiBibGFjaztcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgZm9udC1mYW1pbHk6IEFkZWxsZTtcbiAgZm9udC1zaXplOiAyMHB4O1xuICBtYXJnaW4tbGVmdDogNSU7XG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDsgfVxuXG4ud2F0ZXJtYXJrIC5jb250ZW50IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDA7XG4gIGJhY2tncm91bmQ6IGJsYWNrO1xuICAvKiBGYWxsYmFjayBjb2xvciAqL1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNSk7XG4gIC8qIEJsYWNrIGJhY2tncm91bmQgd2l0aCAwLjUgb3BhY2l0eSAqL1xuICBjb2xvcjogI2YxZjFmMTtcbiAgd2lkdGg6IDgwJTtcbiAgcGFkZGluZzogMjBweDsgfVxuXG4uZmxhZyB7XG4gIHdpZHRoOiAxMTBweDtcbiAgaGVpZ2h0OiA1NnB4O1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgcGFkZGluZy10b3A6IDE1cHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZDogcmVkO1xuICBjb2xvcjogd2hpdGU7XG4gIGZvbnQtc2l6ZTogMTFweDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cblxuLkFkZWxsZVJlZ3VsYXIge1xuICBmb250LWZhbWlseTogQWRlbGxlOyB9XG5cbi5BZGVsbGVCb2xkIHtcbiAgZm9udC1mYW1pbHk6IEFkZWxsZTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cblxuLmZsYWc6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyLWJvdHRvbTogMTNweCBzb2xpZCAjZWVlO1xuICBib3JkZXItbGVmdDogNTVweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0OiA1NXB4IHNvbGlkIHRyYW5zcGFyZW50OyB9XG5cbi5wbC0zIHtcbiAgcGFkZGluZy1sZWZ0OiAzJSAhaW1wb3J0YW50OyB9XG5cbi50aXRsZSB7XG4gIGNvbG9yOiBibHVlO1xuICBmb250LXdlaWdodDogNjAwO1xuICBmb250LWZhbWlseTogQWRlbGxlO1xuICBmb250LXNpemU6IDIwcHg7IH1cblxuLk15Zm9vdGVyIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBsZWZ0OiAwO1xuICBib3R0b206IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBibGFjaztcbiAgY29sb3I6IHdoaXRlICFpbXBvcnRhbnQ7XG4gIHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50OyB9XG5cbi50ZXh0VHJhbnNmb3JtIHtcbiAgdGV4dC10cmFuc2Zvcm06IGluaGVyaXQgIWltcG9ydGFudDtcbiAgZm9udC1zaXplOiAxM3B4ICFpbXBvcnRhbnQ7XG4gIHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDsgfVxuXG4uZm9udDEzIHtcbiAgZm9udC1zaXplOiAxM3B4ICFpbXBvcnRhbnQ7XG4gIHRleHQtdHJhbnNmb3JtOiBpbmhlcml0ICFpbXBvcnRhbnQ7XG4gIHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDsgfVxuXG4uYm9sZCB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG5cbi5tYXJnaW5MNSB7XG4gIG1hcmdpbi1sZWZ0OiA1JTsgfVxuXG4udGVybXMtY29uZGl0aW9ucy1mb290ZXIge1xuICBtYXJnaW4tYm90dG9tOiA1JTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAudGVybXMtY29uZGl0aW9ucy1mb290ZXIge1xuICAgIG1hcmdpbi1ib3R0b206IDEzJTsgfSB9XG4iXX0= */\"","import { Component, OnInit } from '@angular/core';\nimport { HttpService } from '../http.service';\nimport { Router, ActivatedRoute, NavigationEnd, ParamMap } from '@angular/router';\nimport { SocoHttpService } from '@soco/http';\nimport { DBTraceLogService } from '../../shared/services/dbTraceLog/dbTraceLog.service';\nimport { CoolEmailService } from '../../shared/services/coolEmail/coolEmail.service';\nimport { AppCommonService } from '../../shared/services/common/app-common.service';\nimport { DatePipe } from '@angular/common';\nimport { DeviceDetectorService } from 'ngx-device-detector';\nimport { DBTraceLog, LogType } from '../../shared/services/dbTraceLog/dbTraceLog-entities';\nimport { AppConfigurationData } from '../../shared/services/common/app-common-entities';\nimport { AppBaseComponent } from '../../shared/components/base/app-base.component';\n\n@Component({\n selector: 'app-faq',\n templateUrl: './faq.component.html',\n styleUrls: ['./faq.component.scss'],\n providers: [HttpService, DatePipe, DBTraceLogService, CoolEmailService, AppCommonService]\n})\nexport class FaqComponent extends AppBaseComponent implements OnInit {\n public param: any = '';\n public rescheduleObj: any;\n public response: any;\n public faq: boolean;\n public ObjectQ1: Array = [];\n public ObjectQ2: Array = [];\n public ObjectQ3: Array = [];\n public ObjectQ4: Array = [];\n public ldc: string = '';\n\n public orderType: string = '';\n public orderNumber: string = '';\n public deviceInfo = null;\n public dbTraceLog: DBTraceLog;\n public logReferenceID: string = '';\n public appConfigurationDataList: Array = [];\n public emailToList: string;\n\n constructor(public httpService: HttpService, private route: ActivatedRoute, private router: Router, public datepipe: DatePipe,\n public socoHttp: SocoHttpService, public dbTraceLogService: DBTraceLogService, public deviceService: DeviceDetectorService,\n public coolEmailService: CoolEmailService, private appCommonService: AppCommonService) {\n\n //Parent component instantiation\n super(socoHttp, dbTraceLogService, coolEmailService, deviceService);\n\n this.param = this.route.snapshot.url[1].path;\n\n this.logReferenceID = this.datepipe.transform(Date.now(), \"MMddyyyyHHmmss\");\n this.insertDBTraceLog(LogType.Info, 'FAQ component initiated successfully');\n\n //this.httpService.getData(this.param).subscribe(ApiResult => {\n // console.log('Reschedule-->', ApiResult);\n // this.response = ApiResult;\n // if(this.response.data){\n // let a = this.response.data.faqs;\n // this.ldc = this.response.data.ldc;\n // this.parseData(a);\n // this.faq = true;\n // }\n //});\n \n };\n\n ngOnInit() {\n try\n {\n this.GetFAQDataWithAppConfigs();\n }\n catch (e) {\n this.insertDBTraceLog(LogType.Error, 'Exception occured while loading FAQ info, Error: ' + e.message.substring(0, 500));\n }\n }\n\n\n GetFAQDataWithAppConfigs() {\n try {\n \n this.appCommonService.getApplicationConfigs().subscribe(ApiResult => {\n\n if (ApiResult.data != null) {\n\n this.insertDBTraceLog(LogType.Info, 'Application configs fetched successfully');\n\n ApiResult.data.forEach(configData => {\n this.appConfigurationDataList.push(configData);\n });\n\n this.emailToList = this.appConfigurationDataList.filter(item => (item.configurationKey == 'EmailTo'))\n .map(cv => cv.configurationValue)[0];\n\n //Fetch FAQ Data\n this.GetFAQData();\n\n }\n else {\n this.insertDBTraceLog(LogType.Error, 'Error occured while fetching application configs, API Result is Null');\n }\n\n }, ApiResult => {\n //capture error\n if (this.socoHttp.isInvalidResult(ApiResult) || this.socoHttp.isErrorResult(ApiResult) || this.socoHttp.isFailureResult(ApiResult)) {\n this.insertDBTraceLog(LogType.Error, 'Error occured while fetching application configs');\n }\n });\n\n }\n catch (e) {\n this.insertDBTraceLog(LogType.Error, 'Exception occured while fetching application configs, Error: ' + e.message.substring(0, 500));\n }\n }\n\n GetFAQData() {\n try {\n\n this.httpService.getData(this.param).subscribe(ApiResult => {\n\n this.response = ApiResult;\n\n if (ApiResult != null && ApiResult.statusCode == 200) {\n if (this.response.data) {\n let a = this.response.data.faqs;\n this.ldc = this.response.data.ldc;\n this.parseData(a);\n this.faq = true;\n\n this.insertDBTraceLog(LogType.Info, 'FAQ info loaded successfully');\n }\n }\n else {\n this.insertDBTraceLog(LogType.Error, 'Error occured while loading FAQ info, APIResult is null or APIResult is not 200');\n }\n }, ApiResult => {\n if (this.socoHttp.isInvalidResult(ApiResult) || this.socoHttp.isErrorResult(ApiResult) || this.socoHttp.isFailureResult(ApiResult)) {\n this.insertDBTraceLog(LogType.Error, 'Error occured while loading FAQ info, APIResult is invalid');\n }\n });\n\n }\n catch (e) {\n this.insertDBTraceLog(LogType.Error, 'Exception occured while loading FAQ info, Error: ' + e.message.substring(0, 500));\n }\n }\n\n\n\n parseData(a) {\n for (let i = 0; i < a.length; i++) {\n if (a[i].heading.indexOf(\"Q1\") !== -1) {\n this.ObjectQ1.push(a[i]);\n }else if(a[i].heading.indexOf(\"Q2\") !== -1){\n this.ObjectQ2.push(a[i]);\n }else if(a[i].heading.indexOf(\"Q3\") !== -1){\n this.ObjectQ3.push(a[i]);\n }else {\n this.ObjectQ4.push(a[i]);\n }\n }\n //console.log(JSON.stringify(this.ObjectQ1));\n //console.log(JSON.stringify(this.ObjectQ2));\n //console.log(JSON.stringify(this.ObjectQ3));\n //console.log(JSON.stringify(this.ObjectQ4));\n }\n\n\n private insertDBTraceLog(logType: string, logMessage: string) {\n\n this.dbTraceLog = new DBTraceLog();\n\n this.dbTraceLog.portalTypeID = 1; //Customer Portal\n this.dbTraceLog.ldc = this.ldc;\n this.dbTraceLog.kmiUrlCode = this.param;\n this.dbTraceLog.issuingApOrderID = this.orderNumber;\n this.dbTraceLog.orderType = this.orderType;\n this.dbTraceLog.logReferenceID = this.logReferenceID;\n this.dbTraceLog.logType = logType;\n this.dbTraceLog.logMessage = logMessage; \n this.dbTraceLog.emailToList = this.emailToList;\n\n super.InsertDBTraceLogThruBase(this.dbTraceLog);\n }\n}\n","import { Injectable } from '@angular/core';\nimport { map, mergeMap } from 'rxjs/operators';\nimport { HttpClient } from '@angular/common/http';\nimport { Observable, EMPTY, of, forkJoin } from 'rxjs';\nimport { catchError } from 'rxjs/operators';\n\nimport { SocoHttpService } from '@soco/http';\nimport { SocoConfigurationService } from '@soco/configuration';\n\nimport { ApiResult } from '@soco/core';\nimport { Sample } from '../sample/sample';\nimport { url } from 'inspector';\n\n@Injectable()\nexport class HttpService {\n\n public baseUrl = '/orderdetails/';\n public rescheduleBaseUrl = '/Reschedule/';\n public account: any = {};\n\n //'https://localhost:44339/api/https://localhost:44339/api/orderdetails/50962817?id=5096\n\n constructor(private http: SocoHttpService, private ngHttp: HttpClient, private config: SocoConfigurationService) { }\n\n\n // public resolveAnonymousAccountInfo(id: string, alertId?: string): Observable {\n // return this.ngHttp.get>('https://localhost:44371/Account/GetAnonymousApiInfo').pipe(mergeMap((res: any) => {\n // this.setApiInfo(res.data);\n // return forkJoin([\n // this.getData(id).pipe(map((result) => {\n // // Return an empty observable, as there no other consequent calls to API\n // console.log('companiesResult--------->', result);\n // return EMPTY;\n // }))\n // }));\n // }\n \n //\n getData(id: string, alertId?: string): Observable> {\n // console.log(\"return url is:--->\"+'https://localhost:44339/api/orderdetails/'+guid);\n return this.http.get({\n url: this.baseUrl + id,\n });\n }\n\n getOrderAttributes(urlCode: string) {\n return this.http.get({\n url: this.rescheduleBaseUrl + 'GetOrderAttributes/' + urlCode\n });\n }\n\n // getById(id: number, alertId?: string): Observable> {\n // //DSS Documentation on SocoHttpService - http://tiny.sc/cgSocoHttpService\n // //DSS Documentation on handling exceptions - http://tiny.sc/cgclientexceptions\n // return this.http.get({\n // url: 'https://localhost:44339/api/orderdetails/'+id,\n // params: { id: id },\n // alertId: alertId\n // });\n // }\n\n private setApiInfo(info: any) {\n console.log('inside SetAPIINFO');\n this.account.apiInfo = info;\n if (this.account.apiInfo.webApiBaseUrl[this.account.apiInfo.webApiBaseUrl.length - 1] !== '/') {\n this.account.apiInfo.webApiBaseUrl += '/';\n }\n this.config.webApiToken = this.account.apiInfo.webApiToken;\n this.config.webApiBaseUrl = this.account.apiInfo.webApiBaseUrl;\n this.config.coolSecurityToken = this.account.apiInfo.coolSecurityToken;\n }\n\n // For http GET operations.\n // public getJSONData(path) {\n // return this.http.get(path)\n // .map((resp) => (resp.json()));\n // }\n\n // public getData(path) {\n // return this.http.get(path);\n // }\n\n // For Dictionaries http GET operations.\n // public getDictionaryJSONData(path, dictId) {\n // return this.http.get(path)\n // .map((res: Response) => {\n // const dictObj = {};\n // dictObj[dictId.dictionaryId] = res.json()[dictId.dictionaryId];\n // return dictObj;\n // }).catch(this.handleError);\n // }\n\n // For http POST operations\n // public getHttp(url, paramData): Observable {\n // // let headers = new Headers({ 'Content-Type': 'application/json' }); // ... Set content type to JSON\n // // let options = new RequestOptions({ headers: headers }); // Create a request option\n\n // return this.http.post(url, paramData)\n // .map(data => data)\n // .catch(this.handleError);\n // }\n\n // Error call back for http requests.\n private handleError(error: any) {\n\n // const errMsg = (error.message) ? error.message :\n // error.status ? `${error.status} - ${error.statusText}` : 'Server error';\n // return Observable.throw(errMsg);\n }\n\n}\n","import { Component } from '@angular/core';\n\n@Component({\n selector: 'app-typography-cmp',\n templateUrl: 'typography.component.html'\n})\n\nexport class TypographyComponent {}\n\n","// DSS Documentation on Angular - http://tiny.sc/cgangular\n// DSS Documentation on Angular Components - http://tiny.sc/cgangularcomponent\nimport { Component } from '@angular/core';\n\n@Component({\n selector: 'access-denied',\n templateUrl: 'access-denied.component.html'\n})\nexport class AccessDeniedComponent { }\n\n","import { Injectable } from '@angular/core';\nimport { Observable, ReplaySubject } from 'rxjs';\nimport { map } from 'rxjs/operators';\n\n//DSS Documentation on SocoConfigurationService - http://tiny.sc/cgsococonfigurationservice\nimport { SocoConfigurationService } from '@soco/configuration';\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class AuthorizationService {\n roles: any = null;\n private rolesUpdatedSource = new ReplaySubject();\n rolesUpdated = this.rolesUpdatedSource.asObservable();\n\n constructor(\n private config: SocoConfigurationService\n ) { }\n\n isSystemAdmin(): Observable {\n return this.isInRole('SystemAdmin');\n }\n\n isSampleAdmin(): Observable {\n return this.isInRole('SampleAdmin');\n }\n\n isSampleViewer(): Observable {\n return this.isInRole('SampleViewer');\n }\n\n isInRole(roleName: string): Observable {\n return this.getCurrentUsersRoles().pipe(map(roles => {\n return roles.indexOf(roleName) > -1;\n }));\n }\n\n getCurrentUsersRoles(): Observable {\n // check if we've already retrieved the current user's roles, if so return them\n if (this.roles) {\n this.rolesUpdatedSource.next(this.roles);\n return this.rolesUpdated;\n }\n\n // retrieve the roles from configuration\n let rolesSettingName = 'Roles';\n this.config.getSetting(rolesSettingName).subscribe(roles => {\n this.roles = roles;\n this.rolesUpdatedSource.next(this.roles);\n });\n\n //return an observable that we'll update once we retrieve the user's roles and verify if they have \n //any of the required roles for this route\n return this.rolesUpdated;\n }\n}\n\n","// angular modules\n// DSS Documentation on Angular - http://tiny.sc/cgangular\nimport { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { RouterModule } from '@angular/router';\n\n// soco modules\nimport { SocoCommonModule } from '@soco/common';\nimport { SocoConfigurationModule } from '@soco/configuration';\nimport { SocoFormsModule } from '@soco/forms';\n\n// components\n// DSS Documentation on Angular Components - http://tiny.sc/cgangularcomponent\nimport { NavbarComponent } from './navbar/navbar.component';\nimport { SidebarComponent } from './sidebar/sidebar.component';\nimport { AccessDeniedComponent } from './access-denied/access-denied.component';\nimport { PageNotFoundComponent } from './page-not-found/page-not-found.component';\nimport { WebApiConfigComponent } from './web-api-config/web-api-config.component';\nimport { HttpService } from './navbar/http.service';\n\nconst MODULE_DIRECTIVES = [\n NavbarComponent,\n SidebarComponent,\n AccessDeniedComponent,\n PageNotFoundComponent,\n WebApiConfigComponent\n];\n\n@NgModule({\n imports: [\n // angular modules\n CommonModule,\n RouterModule,\n\n // soco modules\n SocoCommonModule,\n SocoConfigurationModule,\n SocoFormsModule\n ],\n providers: [HttpService],\n exports: MODULE_DIRECTIVES,\n declarations: MODULE_DIRECTIVES\n})\nexport class CoreModule { }\n\n","import { Injectable } from '@angular/core';\nimport { map, mergeMap } from 'rxjs/operators';\nimport { HttpClient } from '@angular/common/http';\nimport { Observable, EMPTY, of, forkJoin } from 'rxjs';\nimport { catchError } from 'rxjs/operators';\n\nimport { SocoHttpService } from '@soco/http';\nimport { SocoConfigurationService } from '@soco/configuration';\n\nimport { ApiResult } from '@soco/core';\nimport { url } from 'inspector';\nimport { ActivatedRoute, Router } from '@angular/router';\n\n@Injectable()\nexport class HttpService {\n\n public baseUrl = 'orderdetails/';\n public account: any = {};\n public parameter: any;\n\n //'https://localhost:44339/api/https://localhost:44339/api/orderdetails/50962817?id=5096\n\n constructor(private http: SocoHttpService,private router:Router, private ngHttp: HttpClient, private config: SocoConfigurationService, private route: ActivatedRoute) { \n this.parameter = this.route.snapshot.queryParams.callid;\n this.router.routerState.root.queryParams\n .subscribe(data => {\n this.parameter = data['query'];\n });\n }\n\n\n // public resolveAnonymousAccountInfo(id: string, alertId?: string): Observable {\n // return this.ngHttp.get>('https://localhost:44371/Account/GetAnonymousApiInfo').pipe(mergeMap((res: any) => {\n // this.setApiInfo(res.data);\n // return forkJoin([\n // this.getData(id).pipe(map((result) => {\n // // Return an empty observable, as there no other consequent calls to API\n // console.log('companiesResult--------->', result);\n // return EMPTY;\n // }))\n // }));\n // }\n \n //\n getData(id: string, alertId?: string): Observable> {\n // console.log(\"return url is:--->\"+'https://localhost:44339/api/orderdetails/'+guid);\n return this.http.get({\n url: this.baseUrl + id,\n });\n }\n\n // getById(id: number, alertId?: string): Observable> {\n // //DSS Documentation on SocoHttpService - http://tiny.sc/cgSocoHttpService\n // //DSS Documentation on handling exceptions - http://tiny.sc/cgclientexceptions\n // return this.http.get({\n // url: 'https://localhost:44339/api/orderdetails/'+id,\n // params: { id: id },\n // alertId: alertId\n // });\n // }\n\n private setApiInfo(info: any) {\n console.log('inside SetAPIINFO');\n this.account.apiInfo = info;\n if (this.account.apiInfo.webApiBaseUrl[this.account.apiInfo.webApiBaseUrl.length - 1] !== '/') {\n this.account.apiInfo.webApiBaseUrl += '/';\n }\n this.config.webApiToken = this.account.apiInfo.webApiToken;\n this.config.webApiBaseUrl = this.account.apiInfo.webApiBaseUrl;\n this.config.coolSecurityToken = this.account.apiInfo.coolSecurityToken;\n }\n\n // For http GET operations.\n // public getJSONData(path) {\n // return this.http.get(path)\n // .map((resp) => (resp.json()));\n // }\n\n // public getData(path) {\n // return this.http.get(path);\n // }\n\n // For Dictionaries http GET operations.\n // public getDictionaryJSONData(path, dictId) {\n // return this.http.get(path)\n // .map((res: Response) => {\n // const dictObj = {};\n // dictObj[dictId.dictionaryId] = res.json()[dictId.dictionaryId];\n // return dictObj;\n // }).catch(this.handleError);\n // }\n\n // For http POST operations\n // public getHttp(url, paramData): Observable {\n // // let headers = new Headers({ 'Content-Type': 'application/json' }); // ... Set content type to JSON\n // // let options = new RequestOptions({ headers: headers }); // Create a request option\n\n // return this.http.post(url, paramData)\n // .map(data => data)\n // .catch(this.handleError);\n // }\n\n // Error call back for http requests.\n private handleError(error: any) {\n\n // const errMsg = (error.message) ? error.message :\n // error.status ? `${error.status} - ${error.statusText}` : 'Server error';\n // return Observable.throw(errMsg);\n }\n\n}\n","import { Component, OnInit, ElementRef, OnDestroy } from '@angular/core';\nimport { Router, NavigationEnd, ActivatedRoute } from '@angular/router';\nimport { Observable, Subject } from 'rxjs';\nimport { filter, takeUntil } from 'rxjs/operators';\n\n//DSS Documentation on Angular Reuse - http://tiny.sc/cgangularreuse\n//DSS Documentation on SocoConfigurationService - http://tiny.sc/cgsococonfigurationservice\nimport { SocoConfigurationService } from '@soco/configuration';\n\nimport { AuthorizationService } from '../authorization.service';\nimport { SidebarService } from '../sidebar/sidebar.service';\nimport { ROUTES } from '../routes';\nimport { HttpService } from './http.service';\n\n@Component({\n selector: 'navbar',\n templateUrl: 'navbar.component.html'\n})\nexport class NavbarComponent implements OnInit, OnDestroy {\n username$: Observable;\n menuItems: any[];\n\n private toggleButton: Element;\n private unsubscribe$ = new Subject();\n public param1: string;\n public result: any;\n\n constructor(\n private element: ElementRef,\n private router: Router,\n private config: SocoConfigurationService,\n private authorizationService: AuthorizationService,\n private sidebarService: SidebarService,\n public httpService: HttpService, private route: ActivatedRoute\n \n ) { \n // console.log('Called Constructor');\n // this.param1 = this.route.snapshot.queryParams.callid;\n // console.log('this.param1', this.param1);\n // this.httpService.getData(this.param1).subscribe(ApiResult => {\n // this.result = ApiResult;\n // });\n }\n\n ngOnInit() {\n \n const navbar: HTMLElement = this.element.nativeElement;\n this.toggleButton = navbar.getElementsByClassName('navbar-toggler')[0];\n\n // const elemMainPanel = document.querySelector('.main-panel');\n // const elemSidebar = document.querySelector('.sidebar .sidebar-wrapper');\n\n this.router.events.pipe(filter(event => event instanceof NavigationEnd))\n .pipe(takeUntil(this.unsubscribe$))\n .subscribe((event: NavigationEnd) => {\n // this.sidebarService.sidebarClose(this.toggleButton);\n //elemMainPanel.scrollTop = 0;\n // elemSidebar.scrollTop = 0;\n });\n\n //DSS Documentation on SocoConfigurationService - http://tiny.sc/cgsococonfigurationservice\n let usernameSettingName = 'Username';\n this.username$ = this.config.getSetting(usernameSettingName);\n\n //request the current user's roles\n this.authorizationService.getCurrentUsersRoles()\n .pipe(takeUntil(this.unsubscribe$))\n .subscribe(roles => {\n //filter out any menu items that require the user to have roles that the user doesn't have\n this.menuItems = ROUTES.filter(menuItem => roles.some(role => !menuItem.roles || menuItem.roles.length < 1 || menuItem.roles.includes(role)));\n });\n }\n\n ngOnDestroy(): void {\n this.unsubscribe$.next();\n this.unsubscribe$.complete();\n }\n\n //=============================================================================================================\n //EVENT HANDLERS\n //=============================================================================================================\n sidebarToggle() {\n // this.sidebarService.sidebarToggle(this.toggleButton);\n }\n}\n\n","// DSS Documentation on Angular - http://tiny.sc/cgangular\n// DSS Documentation on Angular Components - http://tiny.sc/cgangularcomponent\nimport { Component } from '@angular/core';\n\n@Component({\n templateUrl: 'page-not-found.component.html'\n})\nexport class PageNotFoundComponent { }\n\n","export interface RouteInfo {\n path: string;\n title: string;\n type: string;\n icon: string;\n collapse?: string;\n children?: ChildrenItems[];\n roles?: any;\n}\n\nexport interface ChildrenItems {\n path: string;\n title: string;\n ab: string;\n type?: string;\n}\n\n//Menu Items\nexport const ROUTES: RouteInfo[] = [{\n path: '/home',\n title: 'Home',\n type: 'link',\n icon: 'fal fa-home'\n}, {\n path: '/components',\n title: 'UI Components',\n type: 'sub',\n icon: 'fal fa-list-ul',\n collapse: 'components',\n children: [\n { path: 'buttons', title: 'Buttons', ab: 'B' },\n { path: 'forms', title: 'Form Inputs', ab: 'F' },\n { path: 'cards', title: 'Cards', ab: 'C' },\n { path: 'menus', title: 'Menus', ab: 'M' },\n { path: 'modals', title: 'Modals', ab: 'M' },\n { path: 'alerts', title: 'Alerts', ab: 'A' },\n { path: 'tooltips', title: 'Tooltips', ab: 'T' },\n { path: 'grid', title: 'Grid System', ab: 'GS' },\n { path: 'typography', title: 'Typography', ab: 'T' }\n ]\n }, {\n path: '/forms',\n title: 'Forms',\n type: 'sub',\n icon: 'fal fa-edit',\n collapse: 'forms',\n children: [\n { path: 'simple', title: 'Simple', ab: 'S' },\n { path: 'modal', title: 'Modal', ab: 'M' },\n { path: 'responsive', title: 'Responsive', ab: 'R' },\n { path: 'validation', title: 'Validation', ab: 'V' },\n { path: 'multistep', title: 'Multi-Step', ab: 'MS' }\n ]\n }, {\n path: '/sample',\n title: 'Sample Grid',\n type: 'link',\n icon: 'fal fa-table',\n roles: ['SampleViewer', 'SampleAdmin', 'SystemAdmin']\n }, {\n path: '/user',\n title: 'User Grid',\n type: 'link',\n icon: 'fal fa-users',\n roles: ['SystemAdmin']\n }\n];\n","import { Component, OnInit } from '@angular/core';\nimport { Observable, Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\n\nimport PerfectScrollbar from 'perfect-scrollbar';\n\n//DSS Documentation on Angular Reuse - http://tiny.sc/cgangularreuse\n//DSS Documentation on SocoConfigurationService - http://tiny.sc/cgsococonfigurationservice\nimport { SocoConfigurationService } from '@soco/configuration';\n\nimport { AuthorizationService } from '../authorization.service';\nimport { ROUTES } from '../routes';\n\n@Component({\n selector: 'sidebar',\n templateUrl: 'sidebar.component.html',\n})\n\nexport class SidebarComponent implements OnInit {\n username$: Observable;\n menuItems: any[];\n\n private unsubscribe$ = new Subject();\n\n constructor(\n private authorizationService: AuthorizationService,\n private config: SocoConfigurationService\n ) { }\n\n ngOnInit() {\n //DSS Documentation on SocoConfigurationService - http://tiny.sc/cgsococonfigurationservice\n let usernameSettingName = 'Username';\n this.username$ = this.config.getSetting(usernameSettingName);\n\n //request the current user's roles\n this.authorizationService.getCurrentUsersRoles()\n .pipe(takeUntil(this.unsubscribe$))\n .subscribe(roles => {\n //filter out any menu items that require the user to have roles that the user doesn't have\n this.menuItems = ROUTES.filter(menuItem => roles.some(role => !menuItem.roles || menuItem.roles.length < 1 || menuItem.roles.includes(role)));\n });\n }\n\n ngOnDestroy(): void {\n this.unsubscribe$.next();\n this.unsubscribe$.complete();\n }\n\n //=============================================================================================================\n //EVENT HANDLERS\n //=============================================================================================================\n updatePS(): void {\n if (window.matchMedia(`(min-width: 960px)`).matches && !this.isMac()) {\n const elemSidebar = document.querySelector('.sidebar .sidebar-wrapper');\n let ps = new PerfectScrollbar(elemSidebar, { wheelSpeed: 2, suppressScrollX: true });\n }\n }\n\n //=============================================================================================================\n //HELPER FUNCTIONS\n //=============================================================================================================\n isMac(): boolean {\n let bool = false;\n if (navigator.platform.toUpperCase().indexOf('MAC') >= 0 || navigator.platform.toUpperCase().indexOf('IPAD') >= 0) {\n bool = true;\n }\n return bool;\n }\n}\n\n","import { Injectable } from '@angular/core';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class SidebarService {\n private sidebarVisible: boolean = false;\n\n // sidebarToggle(toggleButton: Element): void {\n // if (this.sidebarVisible === false) {\n // this.sidebarOpen(toggleButton);\n // } else {\n // this.sidebarClose(toggleButton);\n // }\n // }\n\n // sidebarOpen(toggleButton: Element): void {\n // const body = document.getElementsByTagName('body')[0];\n // setTimeout(function () {\n // toggleButton.classList.add('toggled');\n // }, 500);\n // body.classList.add('nav-open');\n // this.sidebarVisible = true;\n // }\n\n // sidebarClose(toggleButton: Element): void {\n // const body = document.getElementsByTagName('body')[0];\n // toggleButton.classList.remove('toggled');\n // this.sidebarVisible = false;\n // body.classList.remove('nav-open');\n // }\n}\n","// DSS Documentation on Angular - http://tiny.sc/cgangular\n// DSS Documentation on Angular Components - http://tiny.sc/cgangularcomponent\nimport { Component, OnInit, OnDestroy } from '@angular/core';\nimport { FormGroup, FormBuilder } from '@angular/forms';\nimport { Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\n\n// DSS Documentation on SocoModalService - http://tiny.sc/cgsocomodalservice\nimport { SocoModalService } from '@soco/modal';\n\nimport { WebApiConfigService } from './web-api-config.service';\n\n@Component({\n selector: 'web-api-config',\n templateUrl: 'web-api-config.component.html'\n})\nexport class WebApiConfigComponent implements OnInit, OnDestroy {\n alertId = 'alert-web-api-config';\n modalId = 'modal-web-api-config';\n form: FormGroup;\n\n private unsubscribe$ = new Subject();\n\n constructor(\n private webApiConfigService: WebApiConfigService,\n private socoModalService: SocoModalService,\n private formBuilder: FormBuilder\n ) { }\n\n ngOnInit() {\n this.form = this.formBuilder.group(new WebApiConfig());\n\n this.webApiConfigService.openModal$\n .pipe(takeUntil(this.unsubscribe$))\n .subscribe(() => {\n this.openModal();\n });\n }\n\n ngOnDestroy(): void {\n this.unsubscribe$.next();\n this.unsubscribe$.complete();\n }\n\n openModal() {\n this.form.get('webApiBaseUrl').setValue(sessionStorage.getItem('webApiBaseUrl'));\n\n this.socoModalService.show({\n id: this.modalId\n });\n }\n\n formSubmitted(webApiConfig: WebApiConfig): void {\n webApiConfig.webApiBaseUrl += webApiConfig.webApiBaseUrl[webApiConfig.webApiBaseUrl.length - 1] !== '/' ? '/' : '';\n sessionStorage.setItem('webApiBaseUrl', webApiConfig.webApiBaseUrl);\n sessionStorage.setItem('webApiToken', webApiConfig.webApiToken);\n window.location.reload();\n }\n}\n\nclass WebApiConfig {\n webApiBaseUrl = '';\n webApiToken = '';\n}\n\n","import { Injectable } from '@angular/core';\nimport { Subject } from 'rxjs';\n\n// DSS Documentation on SocoConfigurationService - http://tiny.sc/cgsococonfigurationservice\nimport { SocoConfigurationService } from '@soco/configuration';\n// DSS Documentation on ApiResult - http://tiny.sc/cgapiresult\nimport { ApiResult } from '@soco/core';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class WebApiConfigService {\n private openModalSource = new Subject();\n private closeModalSource = new Subject();\n\n openModal$ = this.openModalSource.asObservable();\n closeModal$ = this.closeModalSource.asObservable();\n public webApiBaseUrl: String;\n public webApiToken: String;\n\n constructor(\n private config: SocoConfigurationService\n ) { }\n\n setConfigWebApiInfo() {\n if (window.location.hostname === 'dv-kmi.southernco.com') {\n this.webApiBaseUrl = 'https://dv-kmi.southernco.com/webservices/api';\n this.webApiToken = 'ANONYMOUS';\n this.config.coolSecurityToken = 'ANONYMOUS';\n\n } else if (window.location.hostname === 'ua-kmi.southernco.com') {\n this.webApiBaseUrl = 'https://ua-kmi.southernco.com/webservices/api';\n this.webApiToken = 'ANONYMOUS';\n this.config.coolSecurityToken = 'ANONYMOUS';\n\n } else if (window.location.hostname === 'kmi.southernco.com') {\n this.webApiBaseUrl = 'https://kmi.southernco.com/webservices/api';\n this.webApiToken = 'ANONYMOUS';\n this.config.coolSecurityToken = 'ANONYMOUS';\n\n } else if (window.location.hostname === 'qa-kmi.southernco.com') {\n this.webApiBaseUrl = 'https://qa-kmi.southernco.com/webservices/api';\n this.webApiToken = 'ANONYMOUS';\n this.config.coolSecurityToken = 'ANONYMOUS';\n\n } else {\n //this.webApiBaseUrl = 'https://ua-kmi.southernco.com/webservices/api';\n this.webApiBaseUrl = 'https://localhost:44339/api';\n this.webApiToken = 'ANONYMOUS';\n this.config.coolSecurityToken = 'ANONYMOUS';\n }\n\n if (this.webApiBaseUrl && this.webApiToken) {\n this.config.setSetting('webApiBaseUrl', this.webApiBaseUrl);\n this.config.setSetting('webApiToken', this.webApiToken);\n }\n\n }\n\n openModal(result: ApiResult): void {\n // Token has expired if 401, so remove sessionStorage entries\n if (result.statusCode === 401) {\n sessionStorage.removeItem('webApiToken');\n }\n\n this.openModalSource.next();\n }\n}\n\n","//DSS Documentation on Angular Components - http://tiny.sc/cgangularcomponent\nimport { Component } from '@angular/core';\n\n@Component({\n templateUrl: 'home.component.html'\n})\nexport class HomeComponent {\n}\n","//angular modules\n//DSS Documentation on Angular - http://tiny.sc/cgangular\nimport { NgModule } from '@angular/core';\nimport { BrowserModule } from '@angular/platform-browser';\nimport { RouterModule } from '@angular/router';\n\n//soco modules\nimport { SocoUIThemeModule } from '@soco/ui-theme';\n\n//components\n//DSS Documentation on Angular Components - http://tiny.sc/cgangularcomponent\nimport { HomeComponent } from './home.component';\n\nconst MODULE_DIRECTIVES = [\n HomeComponent\n];\n\n@NgModule({\n imports: [\n //angular modules\n BrowserModule,\n RouterModule,\n\n //soco modules\n SocoUIThemeModule\n ],\n exports: MODULE_DIRECTIVES,\n declarations: MODULE_DIRECTIVES\n})\nexport class HomeModule { }\n\n","export class OrderAttributes {\n coolTxtID: number = 0;\n sourceOrderNumber: string = '';\n ldc: string = '';\n sourceSystem: string = '';\n fieldStatus: string = '';\n isVoidable: boolean = false;\n isRescheduleEligible: boolean = false;\n marketerName: string = '';\n marketerPhoneNo: string = '';\n contactPhoneNo: string = '';\n urlCode: string = '';\n}\n\nexport class AmendOrder {\n ldc: string = '';\n orderNumber: string = '';\n scheduleDate: string = '';\n scheduleWindow: string = '';\n fieldInstructions: string = '';\n premisesNumber: string = '';\n appointmentStart: string = '';\n appointmentEnd: string = '';\n personID: string = '';\n}\n\n//export class AppConfigurationData {\n// configurationKey: string = '';\n// configurationTitle: string = '';\n// configurationType: string = '';\n// configurationValue: string = '';\n// description: string = '';\n// ldc: string = '';\n//}\n","module.exports = \"agm-map {\\n height: 300px !important;\\n}\\n\\n.container{\\n background: white !important;\\n}\\n\\n.flex-container {\\n display: -ms-flexbox;\\n display: flex;\\n -ms-flex-wrap: wrap;\\n flex-wrap: wrap;\\n /* background-color: #cccfd2; */\\n}\\n\\n.flex-container>div {\\n width: 23%;\\n margin: 1%;\\n text-align: center;\\n /* line-height: 75px;\\n font-size: 30px; */\\n}\\n\\n@media only screen and (min-width: 760px) {\\n .h-400 {\\n min-height: 444px !important;\\n }\\n .flex-container{\\n width: 50%;\\n }\\n}\\n\\n.main {\\n /* background: linear-gradient(#fffcfc, #f6b6b6); */\\n /* Safari */\\n display: -ms-flexbox;\\n display: flex;\\n}\\n\\n.card{\\n border: 1px solid #d6cccc;\\n margin-bottom: 0% !important;\\n}\\n\\n.main div {\\n /* Safari 6.1+ */\\n -ms-flex: 1;\\n /* IE 10 */\\n flex: 1;\\n}\\n\\n.main i {\\n text-align: center;\\n display: block;\\n}\\n\\n.example-class{\\nbackground-color: aliceblue;\\n}\\n\\n.other-class{\\nbackground-color: aqua;\\n}\\n\\n.BerninaSanslight{\\n font-family: jaf-bernina-sans;\\n}\\n\\n.AdelleRegular\\n {\\n font-family: Adelle; \\n}\\n\\n.AdelleBold\\n {\\n font-family: Adelle;\\n font-weight: bold;\\n}\\n\\n.AdelleSmall {\\n font-family: Adelle;\\n font-size: 13px;\\n line-height: 1.6;\\n}\\n\\n.AdelleSmallStrongRed {\\n font-family: Adelle;\\n font-size: 12px;\\n line-height: 1.6;\\n color: #c23225;\\n}\\n\\nspan, p, strong, li{\\n font-family: jaf-bernina-sans;\\n color: black;\\n}\\n\\nb {\\n font-family: jaf-bernina-sans;\\n color: lightgray;\\n}\\n\\n.green {\\n font-size:50px;\\n color:rgb(37, 160, 37);\\n}\\n\\n.orange {\\n font-size:50px;\\n color:orange;\\n}\\n\\n.gray {\\nfont-size:50px;\\ncolor: gray;\\n}\\n\\n.gmnoprint {\\n display: none;\\n}\\n\\n.tooltip {\\n position: relative;\\n display: inline-block;\\n border-bottom: 1px dotted black;\\n}\\n\\n.tooltip .tooltiptext {\\n visibility: hidden;\\n width: 120px;\\n background-color: #555;\\n color: #fff;\\n text-align: center;\\n border-radius: 6px;\\n padding: 5px 0;\\n position: absolute;\\n z-index: 1;\\n bottom: 125%;\\n left: 50%;\\n margin-left: -60px;\\n opacity: 0;\\n transition: opacity 0.3s;\\n}\\n\\n.tooltip .tooltiptext::after {\\n content: \\\"\\\";\\n position: absolute;\\n top: 100%;\\n left: 50%;\\n margin-left: -5px;\\n border-width: 5px;\\n border-style: solid;\\n border-color: #555 transparent transparent transparent;\\n}\\n\\n.tooltip:hover .tooltiptext {\\n visibility: visible;\\n opacity: 1;\\n}\\n\\n.flex-container {\\n display: -ms-flexbox;\\n display: flex;\\n -ms-flex-wrap: nowrap;\\n flex-wrap: nowrap;\\n background-color: #eef8f9;\\n}\\n\\n.flex-container > div {\\n background-color: #eef8f9;\\n width: 100%;\\n margin: 10px;\\n text-align: center;\\n line-height: 75px;\\n font-size: 30px;\\n}\\n\\n.wizard-progress {\\n display: table;\\n width: 100%;\\n table-layout: fixed;\\n position: relative;\\n}\\n\\n.wizard-progress .step {\\n display: table-cell;\\n text-align: center;\\n vertical-align: top;\\n overflow: visible;\\n position: relative;\\n font-size: 14px;\\n color: white;\\n font-weight: bold;\\n}\\n\\n.wizard-progress .step:not(:last-child):before {\\n content: '';\\n display: block;\\n position: absolute;\\n left: 50%;\\n top: 32px;\\n background-color: #e0dddd;\\n height: 6px;\\n width: 100%;\\n margin-top: 0%;\\n}\\n\\n.wizard-progress .step .node {\\n display: inline-block;\\n /* border: 6px solid #fff; */\\n background-color: lightgray;\\n border-radius: 18px;\\n /* border-color: black; */\\n height: 25px;\\n width: 24px;\\n position: absolute;\\n top: 23px;\\n left: 50%;\\n margin-left: -18px;\\n margin-top: 0%;\\n}\\n\\n.wizard-progress .step.complete:before {\\n background-color: #b2d235;\\n margin-top: 0%;\\n}\\n\\n.wizard-progress .step.complete .node {\\n border-color: #b2d235;\\n background-color:#b2d235;\\n margin-top: 0%;\\n}\\n\\n.wizard-progress .step.active .node {\\n border-color: #b2d235;\\n background-color:#b2d235;\\n margin-top: 0%;\\n}\\n\\n.wizard-progress .step.in-progress:before {\\n background-color: #b2d235;\\n}\\n\\n.wizard-progress .step.in-progress .node {\\n border-color: #b2d235;\\n background-color:#b2d235;\\n}\\n\\n.wizard-progress .step.cgi:before {\\n background-color: red;\\n}\\n\\n.wizard-progress .step.cgi .node {\\n border-color: red;\\n background-color:red;\\n}\\n\\n.wizard-progress .step.cgi .node:before {\\n font-family: FontAwesome;\\n content: \\\"\\\\f00d\\\";\\n margin-bottom: 0% !important;\\n}\\n\\n.wizard-progress .step.complete .node:before {\\n font-family: FontAwesome;\\n content: \\\"\\\\f00c\\\";\\n margin-bottom: 1px !important;\\n}\\n\\n.wizard-progress .step.in-progress .node:before {\\n font-family: FontAwesome;\\n content: \\\"\\\\f00c\\\";\\n}\\n\\n.wizard-progress .step.active .node:before {\\n font-family: FontAwesome;\\n content: \\\"\\\\f00c\\\";\\n}\\n\\n.wizard-progress .step.in-progress:before {\\n margin-top: 0%;\\n background: #b2d235;\\n background-image: linear-gradient(to right, #b2d235 43%, lightgray 21%, #ec1c24 46%);\\n background: linear-gradient(to right, #b2d235 43%, lightgray 21%, #ec1c24 46%);\\n filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#07c', endColorstr='#fff',GradientType=1 );\\n}\\n\\n.wizard-progress .step.active:before {\\n background-image: linear-gradient(to right, #b2d235 50%, lightgray 4%, lightgray 46%);\\n background: linear-gradient(to right, #b2d235 43%, lightgray 21%, lightgray 46%);\\n background-color: black;\\n}\\n\\n.wizard-progress .step.active .node {\\n border-color: #b2d235;\\n}\\n\\n.wizard-progress .step.in-progress .node {\\n border-color: #b2d235;\\n}\\n\\n.navbarBG{\\n background-color: #003a5d !important;\\n}\\n\\n.logoHW{\\n height: 100%;\\n width: 50%;\\n}\\n\\n.NicorlogoHW{\\n height: 100%;\\n width: 50%;\\n}\\n\\n.orderReschedulingBG{\\n background-color: #00bcf1;\\n margin-bottom: 0%;\\n}\\n\\n.ldcStyle{\\n margin-left: 5%;\\n padding-bottom: 1%; \\n margin-bottom: 2%; \\n color: whitesmoke; \\n font-family: Adelle !important;\\n}\\n\\n.orderStatusColor{\\n margin-left: 5% ; \\n color: whitesmoke;\\n}\\n\\n.bold{\\n font-weight: bold\\n}\\n\\n.orderStatusSB{\\n background-color: #ffffff;\\n margin-top: -2%;\\n padding-top: 2%;\\n padding-bottom: 3%;\\n}\\n\\n.imgHW{\\n height: 100%;\\n width: 97%;\\n}\\n\\n.statusMessageBG{\\n color: #bdbdbd !important;\\n}\\n\\n.statusMessageIcon{\\n font-size:24px;\\n padding-left: 1%;\\n color:#ff9800 !important\\n}\\n\\n.cardTitleBG{\\n background-color: #ffffff!important;\\n}\\n\\n.mapTextIcon{\\n color: #bdbdbd !important;\\n}\\n\\n.padding-left-3{\\n padding-left: 3%;\\n}\\n\\n.appointmentSB{\\n padding-top: 0%;\\n padding-left: 2%;\\n color: black;\\n font-size: 13px;\\n}\\n\\n.reminderSB{\\n padding-top: 0%;\\n padding-left: 5%;\\n color: black;\\n font-size: 13px;\\n}\\n\\n.enrouteSB{\\n padding-top: 0%;\\n padding-right: 0%;\\n color: black;\\n font-size: 13px;\\n}\\n\\n.completeSB{\\n color: black;\\n padding-top: 0%;\\n padding-right: 12%;\\n font-size: 13px;\\n}\\n\\n.whiteBG{\\n background-color: #ffffff !important;\\n}\\n\\n.techImg{\\n border-radius: 50%;\\n margin-top: 5%;\\n margin-bottom: 3%;\\n margin-left: 9%;\\n}\\n\\n.techName{\\n text-align:center;\\n font-weight: 700;\\n font-family: Adelle;\\n color: black;\\n margin-left: 7%;\\n font-size: 20px;\\n}\\n\\n.eta{\\n color: black;\\n font-weight: 600;\\n font-family: Adelle;\\n font-size: 20px;\\n margin-left: 5%;\\n margin-top: 3%;\\n padding: 0 !important;\\n}\\n\\n.etaWindow{\\n color: black;\\n font-weight: 600;\\n font-family: Adelle;\\n font-size: 20px;\\n margin-left: 5%;\\n padding: 0 !important;\\n}\\n\\n.techWarning{\\n font-size:24px;\\n padding-right: 5px;\\n}\\n\\n.mapText{\\n font-size:24px;\\n padding-right: 5px; \\n color: #bdbdbd !important\\n}\\n\\n.pl-3{\\n padding-left: 3%;\\n}\\n\\n.marketerContact{\\n color: whitesmoke !important;\\n font-weight: bold;\\n font-size: 16px;\\n}\\n\\n.marginTop-7{\\n margin-top: 7% !important;\\n}\\n\\n.marginRight-5 {\\n margin-right: 5% !important;\\n}\\n\\n.techText{\\n width: 85%;\\n float: right;\\n}\\n\\n.mapInfo{\\n font-size:24px;\\n padding-right: 5px;\\n color: #bdbdbd !important\\n}\\n\\n.margin-left-5{\\n margin-left: 5%\\n}\\n\\n.cardPad{\\n padding-top: 3%;\\n padding-left: 3%;\\n padding-right: 3%;\\n background-color: #ffffff;\\n}\\n\\n.sticky{\\n position: fixed;\\n left: 0;\\n bottom: 0;\\n width: 100%;\\n background-color: red;\\n color: white;\\n text-align: center !important;\\n font-family: Adelle !important;\\n}\\n\\n.alertPad{\\n width: 87%;\\n float: right;\\n}\\n\\n.statusMsgWidth{\\n float: right;\\n width: 90%;\\n}\\n\\n.pt-3{\\n padding-top: 3% !important;\\n margin-bottom: 3% !important;\\n\\n}\\n\\n.pt-2{\\n padding-top: 2%;\\n}\\n\\ntextarea::-webkit-input-placeholder {\\n color: #757575 !important;\\n font-size: 13px !important;\\n font-family: Adelle !important;\\n}\\n\\ntextarea::-moz-placeholder { /* Firefox 19+ */\\n color: #757575 !important;\\n font-size: 13px !important;\\n font-family: Adelle !important;\\n}\\n\\ntextarea:-ms-input-placeholder {\\n color: #757575 !important;\\n font-size: 13px !important;\\n font-family: Adelle !important;\\n}\\n\\ntextarea::-ms-input-placeholder {\\n color: #757575 !important;\\n font-size: 13px !important;\\n font-family: Adelle !important;\\n}\\n\\ntextarea::placeholder {\\n color: #757575 !important;\\n font-size: 13px !important;\\n font-family: Adelle !important;\\n}\\n\\n.blocks .btn-default {\\n /*padding: 24px 10px;*/\\n \\n margin-top: 0px;\\n margin-bottom: 10px;\\n margin-left: 5px;\\n margin-right: 7px;\\n border-radius: 0;\\n border-color: #c23225;\\n color: #c23225; /*StrongRed*/\\n height: 60px !important;\\n width: 80px !important;\\n padding-left: 10px !important;\\n padding-right: 10px !important;\\n text-transform: none !important;\\n}\\n\\n.btnDisabled {\\n border-color: #757575 !important;\\n color: #757575 !important;\\n}\\n\\n.roundedTextArea {\\n width: 250px !important;\\n height: 150px !important;\\n border-radius: 10px !important;\\n border: 1px solid #757575;\\n font-family: jaf-bernina-sans;\\n padding: 15px;\\n}\\n\\n.checkMarkGreen {\\n width: 75px;\\n height: 75px;\\n background: white; \\n /*background: url(../../assets/images/checkmark-green-circle.png);*/\\n}\\n\\n.btnTimeSlot {\\n /*color: #757575 !important;*/\\n /*margin: 3.5% 0% !important;*/\\n width: 185px !important;\\n height: 40px !important;\\n color: #c23225 !important;\\n border-color: #c23225 !important;\\n}\\n\\n.btnStrongRedConfirm {\\n border: 1px solid #c23225 !important;\\n /*border-radius:10px !important;*/\\n color: white !important;\\n background: #c23225 !important;\\n font-weight: bold !important;\\n width: 130px !important;\\n margin-left: 3%;\\n margin-bottom: 10px;\\n text-transform: none;\\n font-size: 14px;\\n}\\n\\n.btnStrongRedOrderStatus {\\n border: 1px solid #c23225 !important;\\n /*border-radius:10px !important;*/\\n color: white !important;\\n background: #c23225 !important;\\n font-weight: bold !important;\\n width: 240px !important;\\n margin-left: 3%;\\n}\\n\\n.btnFillStrongRed {\\n color: white !important;\\n background-color: #c23225 !important;\\n}\\n\\n.btnStrongRedNoFill {\\n border: 1px solid #c23225 !important;\\n /*border-radius:10px !important;*/\\n color: #c23225 !important;\\n background: white !important;\\n font-weight: bold !important;\\n width: 130px !important;\\n margin-left: 3%;\\n text-transform: none;\\n font-size: 14px;\\n}\\n\\n/* To hide Stepper Navigation*/\\n\\n::ng-deep .mat-horizontal-stepper-header {\\n pointer-events: none !important;\\n}\\n\\n.matHorizontalStepper {\\n margin-top: 5px !important;\\n box-shadow: none;\\n}\\n\\n.divAvailableDayTable {\\n display: table;\\n table-layout: fixed;\\n width: 100%;\\n margin-bottom: 0px;\\n}\\n\\n.divAvailableDay {\\n width: 100% !important;\\n overflow-x: scroll;\\n white-space: nowrap !important;\\n display:inline-block; /* To apply given width to available day button */\\n}\\n\\n.divAvailableDayOuter {\\n padding: 1%;\\n display: table-cell !important;\\n width: 76%;\\n}\\n\\n.divTimeSlot {\\n margin-left: 0px;\\n overflow-y: auto !important;\\n height: 200px;\\n}\\n\\n.btnAvailableDayDivArrow {\\n -webkit-appearance: none;\\n background: transparent;\\n border: none; \\n outline: none;\\n background-repeat: no-repeat;\\n cursor: pointer;\\n width: 100%;\\n padding: 1px !important;\\n}\\n\\n.divAvailableDayArrow {\\n display: table-cell !important;\\n width: 12%;\\n vertical-align: middle; \\n}\\n\\n.matArrowButtonActive {\\n color: #c23225;\\n font-size: 36px;\\n}\\n\\n.matArrowButtonInActive {\\n color: #808080;\\n font-size: 36px;\\n}\\n\\n.confirmSpinnerColor ::ng-deep .mat-progress-spinner circle, .mat-spinner circle {\\n stroke: #ff9800 !important; \\n}\\n\\n:host ::ng-deep .mat-horizontal-content-container {\\n padding: 0 !important;\\n}\\n\\n.card, .mat-stepper-horizontal {\\n margin-top: 0px !important;\\n}\\n\\n.confirmSpinnerCenter {\\n position: absolute;\\n top: 50%;\\n left: 50%;\\n -webkit-transform: translateX(-50%) translateY(-50%);\\n transform: translateX(-50%) translateY(-50%);\\n}\\n\\n.confirmSpinnerOverlay {\\n height: 100%;\\n width: 100%;\\n background-color: rgba(0, 0, 0, 0.286);\\n z-index: 10;\\n top: 0;\\n left: 0;\\n position: absolute;\\n}\\n\\n.btnMoreDates {\\n color: #c23225 !important;\\n background-color: white !important;\\n width: 60px !important;\\n padding: 5px !important;\\n font-size: 10px;\\n}\\n\\n.btnPopOverAlert {\\n border-left: none;\\n border-top: none;\\n border-right: none;\\n border-bottom: 1px dotted #c23225;\\n text-decoration: none;\\n background: transparent;\\n color: #c23225;\\n font-family: Adelle;\\n cursor:pointer;\\n}\\n\\n/* Popover Header */\\n\\n.popover-title {\\n background-color: #c23225;\\n color: #FFFFFF;\\n font-size: 10px;\\n text-align: center;\\n font-family: Adelle;\\n}\\n\\n/* Popover Body */\\n\\n.popover-content {\\n background-color: #FFFFFF;\\n color: black;\\n padding: 10px;\\n}\\n\\n/* Popover Arrow */\\n\\n.arrow {\\n border-right-color: #c23225 !important;\\n}\\n\\n.popover-header {\\n background-color: #c23225 !important;\\n color: #FFFFFF !important;\\n font-size: 10px !important;\\n text-align: center !important;\\n font-family: Adelle !important;\\n}\\n\\n/* Popover Body */\\n\\n.popover-body {\\n background-color: #FFFFFF !important;\\n color: black !important;\\n padding: 10px !important;\\n}\\n\\n/* Popover Arrow */\\n\\n.arrow {\\n border-right-color: #c23225 !important;\\n}\\n\\n.SansSerifRegular {\\n /*font-family: 'Source Sans Pro',sans-serif;*/\\n font-family: -apple-system,system-ui,BlinkMacSystemFont,\\\"Segoe UI\\\",Roboto,\\\"Helvetica Neue\\\",Arial,sans-serif;\\n font-size: 1em;\\n font-weight: normal;\\n}\\n\\n.SansSerifSmall {\\n /*font-family: 'Source Sans Pro',sans-serif;*/\\n font-family: -apple-system,system-ui,BlinkMacSystemFont,\\\"Segoe UI\\\",Roboto,\\\"Helvetica Neue\\\",Arial,sans-serif;\\n font-size: 0.8em;\\n font-weight: normal;\\n}\\n\\n.radioInput {\\n height: 1.5em;\\n width: 1.5em;\\n border: 0px;\\n vertical-align: middle\\n}\\n\\n.radioInputLabel {\\n height: 1.5em;\\n line-height: 1.5em;\\n vertical-align: sub;\\n padding-left: 0.5em;\\n}\\n\\n.radioInputLabelCombo {\\n vertical-align: middle;\\n width: 16em;\\n margin-bottom: 0px\\n}\\n\\n.playIcon {\\n height: 2.5em;\\n float: left;\\n /*width: 3em;*/\\n margin-right: 0.5em !important;\\n}\\n\\n.processStopMsg {\\n margin: 0.5em 1.3em;\\n font-weight: bold;\\n font-size: 1.1em;\\n line-height: 1.5;\\n}\\n\\n.btnStrongRedFillLong {\\n border: 1px solid #c23225 !important;\\n /*border-radius:10px !important;*/\\n color: white !important;\\n background: #c23225 !important;\\n font-weight: bold !important;\\n width: 180px !important;\\n margin-left: 3%;\\n /*margin-bottom: 10px;*/\\n text-transform: none !important;\\n font-size: 14px;\\n}\\n\\n.divAVScroll {\\n /*width: 200px;\\n height: 400px;\\n background: red;*/\\n overflow-x: scroll;\\n}\\n\\n.divAVScroll::-webkit-scrollbar {\\n /*width: 10px;*/\\n background-color: #F5F5F5;\\n height: 5px;\\n}\\n\\n.divAVScroll::-webkit-scrollbar-track {\\n -webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.3);\\n background-color: #F5F5F5;\\n}\\n\\n.divAVScroll::-webkit-scrollbar-thumb {\\n background-color: #d96a60;\\n border: 2px solid #d5857e;\\n}\\n\\n.divTimeslotScroll {\\n /*width: 200px;\\n height: 400px;\\n background: red;*/\\n overflow-y: scroll;\\n}\\n\\n.divTimeslotScroll::-webkit-scrollbar {\\n /*width: 10px;*/\\n background-color: #F5F5F5;\\n width: 5px;\\n}\\n\\n.divTimeslotScroll::-webkit-scrollbar-track {\\n -webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.3);\\n background-color: #F5F5F5;\\n}\\n\\n.divTimeslotScroll::-webkit-scrollbar-thumb {\\n background-color: #d96a60;\\n border: 2px solid #d5857e;\\n}\\n\\n.timeslotblocks .btn-default .btn-round {\\n margin-top: 0px;\\n margin-bottom: 10px;\\n /*margin-left: 5px;\\n margin-right: 7px;*/\\n border-radius: 0;\\n border-color: #c23225;\\n color: #c23225; /*StrongRed*/\\n height: 60px !important;\\n width: 80px !important;\\n padding-left: 10px !important;\\n padding-right: 10px !important;\\n text-transform: none !important;\\n}\\n\\n.apptConfirmationMsg {\\n margin-left: 2%;\\n margin-right: 2%;\\n margin-top: 2%;\\n font-size: 15px;\\n text-align: center\\n}\\n\\n.playIcon {\\n height: 2.5em;\\n float: left;\\n /*width: 3em;*/\\n margin-right: 0.5em !important;\\n}\\n\\n.divLightCyanAlert {\\n background-color: lightcyan;\\n display: block;\\n padding: 5px 10px;\\n /*margin: 0px 10px;*/\\n margin-bottom: 5px;\\n line-height: 1.2em;\\n}\\n\\n.divReminderMessageByEC{\\n width:90%;\\n display:inline-block;\\n font-size:14px;\\n text-align:left;\\n}\\n\\n.textInput {\\n width: 230px !important;\\n height: 25pt !important;\\n border-radius: 5px !important;\\n border: 1px solid #757575;\\n font-family: jaf-bernina-sans;\\n padding: 3px 10px;\\n}\\n\\n.confirmDiv {\\n padding-bottom: 5%;\\n -ms-flex-align: center;\\n align-items: center;\\n border: none;\\n box-shadow: none\\n}\\n\\n.errorDiv {\\n padding-right: 20px !important;\\n padding-left: 20px !important;\\n margin-top: 10%;\\n}\\n\\n.errorInnerDiv {\\n padding: 15% 10%;\\n}\\n\\nstrong {\\n font-weight: bold !important;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvcmVzY2hlZHVsZS9yZXNjaGVkdWxlLmNvbXBvbmVudC5jc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7RUFDRSx3QkFBd0I7QUFDMUI7O0FBRUE7RUFDRSw0QkFBNEI7QUFDOUI7O0FBRUE7RUFDRSxvQkFBYTtFQUFiLGFBQWE7RUFDYixtQkFBZTtNQUFmLGVBQWU7RUFDZiwrQkFBK0I7QUFDakM7O0FBRUE7RUFDRSxVQUFVO0VBQ1YsVUFBVTtFQUNWLGtCQUFrQjtFQUNsQjtzQkFDb0I7QUFDdEI7O0FBRUE7RUFDRTtJQUNFLDRCQUE0QjtFQUM5QjtFQUNBO0lBQ0UsVUFBVTtFQUNaO0FBQ0Y7O0FBRUE7RUFFRSxtREFBbUQ7RUFDbkQsV0FBVztFQUNYLG9CQUFhO0VBQWIsYUFBYTtBQUNmOztBQUVBO0VBQ0UseUJBQXlCO0VBQ3pCLDRCQUE0QjtBQUM5Qjs7QUFFQTtFQUVFLGdCQUFnQjtFQUNoQixXQUFXO0VBQ1gsVUFBVTtFQUNWLE9BQU87QUFDVDs7QUFFQTtFQUNFLGtCQUFrQjtFQUNsQixjQUFjO0FBQ2hCOztBQUVBO0FBQ0EsMkJBQTJCO0FBQzNCOztBQUVBO0FBQ0Esc0JBQXNCO0FBQ3RCOztBQUVBO0VBQ0UsNkJBQTZCO0FBQy9COztBQUVBOztFQUVFLG1CQUFtQjtBQUNyQjs7QUFFQTs7RUFFRSxtQkFBbUI7RUFDbkIsaUJBQWlCO0FBQ25COztBQUVBO0lBQ0ksbUJBQW1CO0lBQ25CLGVBQWU7SUFDZixnQkFBZ0I7QUFDcEI7O0FBQ0E7SUFDSSxtQkFBbUI7SUFDbkIsZUFBZTtJQUNmLGdCQUFnQjtJQUNoQixjQUFjO0FBQ2xCOztBQUVBO0VBQ0UsNkJBQTZCO0VBQzdCLFlBQVk7QUFDZDs7QUFFQTtFQUNFLDZCQUE2QjtFQUM3QixnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxjQUFjO0VBQ2Qsc0JBQXNCO0FBQ3hCOztBQUVBO0VBQ0UsY0FBYztFQUNkLFlBQVk7QUFDZDs7QUFFQTtBQUNBLGNBQWM7QUFDZCxXQUFX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Q2YseUJBQXlCO0lBQ3pCLFVBQVU7QUFDZDs7QUFFQTtJQUNJLGlEQUFpRDtJQUNqRCx5QkFBeUI7QUFDN0I7O0FBRUE7SUFDSSx5QkFBeUI7SUFDekIseUJBQXlCO0FBQzdCOztBQUVBO0lBQ0ksZUFBZTtJQUNmLG1CQUFtQjtJQUNuQjt1QkFDbUI7SUFDbkIsZ0JBQWdCO0lBQ2hCLHFCQUFxQjtJQUNyQixjQUFjLEVBQUUsWUFBWTtJQUM1Qix1QkFBdUI7SUFDdkIsc0JBQXNCO0lBQ3RCLDZCQUE2QjtJQUM3Qiw4QkFBOEI7SUFDOUIsK0JBQStCO0FBQ25DOztBQUVBO0lBQ0ksZUFBZTtJQUNmLGdCQUFnQjtJQUNoQixjQUFjO0lBQ2QsZUFBZTtJQUNmO0FBQ0o7O0FBRUE7SUFDSSxhQUFhO0lBQ2IsV0FBVztJQUNYLGNBQWM7SUFDZCw4QkFBOEI7QUFDbEM7O0FBQ0E7SUFDSSwyQkFBMkI7SUFDM0IsY0FBYztJQUNkLGlCQUFpQjtJQUNqQixvQkFBb0I7SUFDcEIsa0JBQWtCO0lBQ2xCLGtCQUFrQjtBQUN0Qjs7QUFDQTtJQUNJLFNBQVM7SUFDVCxvQkFBb0I7SUFDcEIsY0FBYztJQUNkLGVBQWU7QUFDbkI7O0FBRUE7SUFDSSx1QkFBdUI7SUFDdkIsdUJBQXVCO0lBQ3ZCLDZCQUE2QjtJQUM3Qix5QkFBeUI7SUFDekIsNkJBQTZCO0lBQzdCLGlCQUFpQjtBQUNyQjs7QUFFQTtJQUNJLGtCQUFrQjtJQUNsQixzQkFBbUI7UUFBbkIsbUJBQW1CO0lBQ25CLFlBQVk7SUFDWjtBQUNKOztBQUVBO0lBQ0ksOEJBQThCO0lBQzlCLDZCQUE2QjtJQUM3QixlQUFlO0FBQ25COztBQUNBO0lBQ0ksZ0JBQWdCO0FBQ3BCOztBQUVBO0lBQ0ksNEJBQTRCO0FBQ2hDIiwiZmlsZSI6InNyYy9hcHAvcmVzY2hlZHVsZS9yZXNjaGVkdWxlLmNvbXBvbmVudC5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyJhZ20tbWFwIHtcbiAgaGVpZ2h0OiAzMDBweCAhaW1wb3J0YW50O1xufVxuXG4uY29udGFpbmVye1xuICBiYWNrZ3JvdW5kOiB3aGl0ZSAhaW1wb3J0YW50O1xufVxuXG4uZmxleC1jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIC8qIGJhY2tncm91bmQtY29sb3I6ICNjY2NmZDI7ICovXG59XG5cbi5mbGV4LWNvbnRhaW5lcj5kaXYge1xuICB3aWR0aDogMjMlO1xuICBtYXJnaW46IDElO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIC8qIGxpbmUtaGVpZ2h0OiA3NXB4O1xuICAgIGZvbnQtc2l6ZTogMzBweDsgKi9cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjBweCkge1xuICAuaC00MDAge1xuICAgIG1pbi1oZWlnaHQ6IDQ0NHB4ICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmZsZXgtY29udGFpbmVye1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cbn1cblxuLm1haW4ge1xuICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gIC8qIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgjZmZmY2ZjLCAjZjZiNmI2KTsgKi9cbiAgLyogU2FmYXJpICovXG4gIGRpc3BsYXk6IGZsZXg7XG59XG5cbi5jYXJke1xuICBib3JkZXI6IDFweCBzb2xpZCAjZDZjY2NjO1xuICBtYXJnaW4tYm90dG9tOiAwJSAhaW1wb3J0YW50O1xufVxuXG4ubWFpbiBkaXYge1xuICAtd2Via2l0LWZsZXg6IDE7XG4gIC8qIFNhZmFyaSA2LjErICovXG4gIC1tcy1mbGV4OiAxO1xuICAvKiBJRSAxMCAqL1xuICBmbGV4OiAxO1xufVxuXG4ubWFpbiBpIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmV4YW1wbGUtY2xhc3N7XG5iYWNrZ3JvdW5kLWNvbG9yOiBhbGljZWJsdWU7XG59XG5cbi5vdGhlci1jbGFzc3tcbmJhY2tncm91bmQtY29sb3I6IGFxdWE7XG59XG5cbi5CZXJuaW5hU2Fuc2xpZ2h0e1xuICBmb250LWZhbWlseTogamFmLWJlcm5pbmEtc2Fucztcbn1cblxuLkFkZWxsZVJlZ3VsYXJcbiB7XG4gIGZvbnQtZmFtaWx5OiBBZGVsbGU7ICBcbn1cblxuLkFkZWxsZUJvbGRcbiB7XG4gIGZvbnQtZmFtaWx5OiBBZGVsbGU7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4uQWRlbGxlU21hbGwge1xuICAgIGZvbnQtZmFtaWx5OiBBZGVsbGU7XG4gICAgZm9udC1zaXplOiAxM3B4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjY7XG59XG4uQWRlbGxlU21hbGxTdHJvbmdSZWQge1xuICAgIGZvbnQtZmFtaWx5OiBBZGVsbGU7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjY7XG4gICAgY29sb3I6ICNjMjMyMjU7XG59XG5cbnNwYW4sIHAsIHN0cm9uZywgbGl7XG4gIGZvbnQtZmFtaWx5OiBqYWYtYmVybmluYS1zYW5zO1xuICBjb2xvcjogYmxhY2s7XG59XG5cbmIge1xuICBmb250LWZhbWlseTogamFmLWJlcm5pbmEtc2FucztcbiAgY29sb3I6IGxpZ2h0Z3JheTtcbn1cblxuLmdyZWVuIHtcbiAgZm9udC1zaXplOjUwcHg7XG4gIGNvbG9yOnJnYigzNywgMTYwLCAzNyk7XG59XG5cbi5vcmFuZ2Uge1xuICBmb250LXNpemU6NTBweDtcbiAgY29sb3I6b3JhbmdlO1xufVxuXG4uZ3JheSB7XG5mb250LXNpemU6NTBweDtcbmNvbG9yOiBncmF5O1xufVxuXG4uZ21ub3ByaW50IHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLnRvb2x0aXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYm9yZGVyLWJvdHRvbTogMXB4IGRvdHRlZCBibGFjaztcbn1cblxuLnRvb2x0aXAgLnRvb2x0aXB0ZXh0IHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB3aWR0aDogMTIwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1NTU7XG4gIGNvbG9yOiAjZmZmO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgcGFkZGluZzogNXB4IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTtcbiAgYm90dG9tOiAxMjUlO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtNjBweDtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzO1xufVxuXG4udG9vbHRpcCAudG9vbHRpcHRleHQ6OmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDEwMCU7XG4gIGxlZnQ6IDUwJTtcbiAgbWFyZ2luLWxlZnQ6IC01cHg7XG4gIGJvcmRlci13aWR0aDogNXB4O1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItY29sb3I6ICM1NTUgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG59XG5cbi50b29sdGlwOmhvdmVyIC50b29sdGlwdGV4dCB7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5mbGV4LWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogbm93cmFwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVmOGY5O1xufVxuXG4uZmxleC1jb250YWluZXIgPiBkaXYge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVmOGY5O1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAxMHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGxpbmUtaGVpZ2h0OiA3NXB4O1xuICBmb250LXNpemU6IDMwcHg7XG59XG5cbi53aXphcmQtcHJvZ3Jlc3Mge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgd2lkdGg6IDEwMCU7XG4gIHRhYmxlLWxheW91dDogZml4ZWQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi53aXphcmQtcHJvZ3Jlc3MgLnN0ZXAge1xuICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgY29sb3I6IHdoaXRlO1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cbi53aXphcmQtcHJvZ3Jlc3MgLnN0ZXA6bm90KDpsYXN0LWNoaWxkKTpiZWZvcmUge1xuICBjb250ZW50OiAnJztcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogNTAlO1xuICB0b3A6IDMycHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlMGRkZGQ7XG4gIGhlaWdodDogNnB4O1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLXRvcDogMCU7XG59XG4ud2l6YXJkLXByb2dyZXNzIC5zdGVwIC5ub2RlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAvKiBib3JkZXI6IDZweCBzb2xpZCAjZmZmOyAqL1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGdyYXk7XG4gIGJvcmRlci1yYWRpdXM6IDE4cHg7XG4gIC8qIGJvcmRlci1jb2xvcjogIGJsYWNrOyAqL1xuICBoZWlnaHQ6IDI1cHg7XG4gIHdpZHRoOiAyNHB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMjNweDtcbiAgbGVmdDogNTAlO1xuICBtYXJnaW4tbGVmdDogLTE4cHg7XG4gIG1hcmdpbi10b3A6IDAlO1xufVxuLndpemFyZC1wcm9ncmVzcyAuc3RlcC5jb21wbGV0ZTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYjJkMjM1O1xuICBtYXJnaW4tdG9wOiAwJTtcbn1cbi53aXphcmQtcHJvZ3Jlc3MgLnN0ZXAuY29tcGxldGUgLm5vZGUge1xuICBib3JkZXItY29sb3I6ICNiMmQyMzU7XG4gIGJhY2tncm91bmQtY29sb3I6I2IyZDIzNTtcbiAgbWFyZ2luLXRvcDogMCU7XG59XG4ud2l6YXJkLXByb2dyZXNzIC5zdGVwLmFjdGl2ZSAubm9kZSB7XG4gIGJvcmRlci1jb2xvcjogI2IyZDIzNTtcbiAgYmFja2dyb3VuZC1jb2xvcjojYjJkMjM1O1xuICBtYXJnaW4tdG9wOiAwJTtcbn1cblxuLndpemFyZC1wcm9ncmVzcyAuc3RlcC5pbi1wcm9ncmVzczpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYjJkMjM1O1xufVxuLndpemFyZC1wcm9ncmVzcyAuc3RlcC5pbi1wcm9ncmVzcyAubm9kZSB7XG4gIGJvcmRlci1jb2xvcjogI2IyZDIzNTtcbiAgYmFja2dyb3VuZC1jb2xvcjojYjJkMjM1O1xufVxuLndpemFyZC1wcm9ncmVzcyAuc3RlcC5jZ2k6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmVkO1xufVxuLndpemFyZC1wcm9ncmVzcyAuc3RlcC5jZ2kgLm5vZGUge1xuICBib3JkZXItY29sb3I6IHJlZDtcbiAgYmFja2dyb3VuZC1jb2xvcjpyZWQ7XG59XG4ud2l6YXJkLXByb2dyZXNzIC5zdGVwLmNnaSAubm9kZTpiZWZvcmUge1xuICBmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XG4gIGNvbnRlbnQ6IFwiXFxmMDBkXCI7XG4gIG1hcmdpbi1ib3R0b206IDAlICFpbXBvcnRhbnQ7XG59XG4ud2l6YXJkLXByb2dyZXNzIC5zdGVwLmNvbXBsZXRlIC5ub2RlOmJlZm9yZSB7XG4gIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcbiAgY29udGVudDogXCJcXGYwMGNcIjtcbiAgbWFyZ2luLWJvdHRvbTogMXB4ICFpbXBvcnRhbnQ7XG59XG4ud2l6YXJkLXByb2dyZXNzIC5zdGVwLmluLXByb2dyZXNzIC5ub2RlOmJlZm9yZSB7XG4gIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcbiAgY29udGVudDogXCJcXGYwMGNcIjtcbn1cbi53aXphcmQtcHJvZ3Jlc3MgLnN0ZXAuYWN0aXZlIC5ub2RlOmJlZm9yZSB7XG4gIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcbiAgY29udGVudDogXCJcXGYwMGNcIjtcbn1cbi53aXphcmQtcHJvZ3Jlc3MgLnN0ZXAuaW4tcHJvZ3Jlc3M6YmVmb3JlIHtcbiAgbWFyZ2luLXRvcDogMCU7XG4gIGJhY2tncm91bmQ6ICNiMmQyMzU7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgI2IyZDIzNSA0MyUsIGxpZ2h0Z3JheSAyMSUsICNlYzFjMjQgNDYlKTtcbiAgYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICNiMmQyMzUgMCUsIGxpZ2h0Z3JheSAyMSUsICNlYzFjMjQgNDYlKTtcbiAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICNiMmQyMzUgMCUsIGxpZ2h0Z3JheSAyMSUsICNlYzFjMjQgNDYlKTtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAjYjJkMjM1IDQzJSwgbGlnaHRncmF5IDIxJSwgI2VjMWMyNCA0NiUpO1xuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudCggICAgIHN0YXJ0Q29sb3JzdHI9JyMwN2MnLCBlbmRDb2xvcnN0cj0nI2ZmZicsR3JhZGllbnRUeXBlPTEgKTtcbn1cbi53aXphcmQtcHJvZ3Jlc3MgLnN0ZXAuYWN0aXZlOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgI2IyZDIzNSA1MCUsIGxpZ2h0Z3JheSA0JSwgbGlnaHRncmF5IDQ2JSk7XG4gIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAjYjJkMjM1IDAlLCBsaWdodGdyYXkgMjElLCBsaWdodGdyYXkgNDYlKTtcbiAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICNiMmQyMzUgMCUsIGxpZ2h0Z3JheSAyMSUsIGxpZ2h0Z3JheSA0NiUpO1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICNiMmQyMzUgNDMlLCBsaWdodGdyYXkgMjElLCBsaWdodGdyYXkgNDYlKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogYmxhY2s7XG59XG4ud2l6YXJkLXByb2dyZXNzIC5zdGVwLmFjdGl2ZSAubm9kZSB7XG4gIGJvcmRlci1jb2xvcjogI2IyZDIzNTtcbn1cbi53aXphcmQtcHJvZ3Jlc3MgLnN0ZXAuaW4tcHJvZ3Jlc3MgLm5vZGUge1xuICBib3JkZXItY29sb3I6ICNiMmQyMzU7XG59XG4ubmF2YmFyQkd7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDNhNWQgIWltcG9ydGFudDtcbn1cblxuLmxvZ29IV3tcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogNTAlO1xufVxuXG4uTmljb3Jsb2dvSFd7XG4gIGhlaWdodDogMTAwJTtcbiAgIHdpZHRoOiA1MCU7XG59XG5cbi5vcmRlclJlc2NoZWR1bGluZ0JHe1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBiY2YxO1xuICBtYXJnaW4tYm90dG9tOiAwJTtcbn1cblxuLmxkY1N0eWxle1xuICBtYXJnaW4tbGVmdDogNSU7XG4gIHBhZGRpbmctYm90dG9tOiAxJTsgXG4gIG1hcmdpbi1ib3R0b206IDIlOyBcbiAgY29sb3I6IHdoaXRlc21va2U7IFxuICBmb250LWZhbWlseTogQWRlbGxlICFpbXBvcnRhbnQ7XG59XG5cbi5vcmRlclN0YXR1c0NvbG9ye1xuICBtYXJnaW4tbGVmdDogNSUgOyBcbiAgY29sb3I6IHdoaXRlc21va2U7XG59XG5cbi5ib2xke1xuICBmb250LXdlaWdodDogYm9sZFxufVxuXG4ub3JkZXJTdGF0dXNTQntcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgbWFyZ2luLXRvcDogLTIlO1xuICBwYWRkaW5nLXRvcDogMiU7XG4gIHBhZGRpbmctYm90dG9tOiAzJTtcbn1cblxuLmltZ0hXe1xuICBoZWlnaHQ6IDEwMCU7XG4gICB3aWR0aDogOTclO1xufVxuXG5cblxuLnN0YXR1c01lc3NhZ2VCR3tcbiAgY29sb3I6ICNiZGJkYmQgIWltcG9ydGFudDtcbn1cblxuLnN0YXR1c01lc3NhZ2VJY29ue1xuICBmb250LXNpemU6MjRweDtcbiAgcGFkZGluZy1sZWZ0OiAxJTtcbiAgY29sb3I6I2ZmOTgwMCAhaW1wb3J0YW50XG59XG5cbi5jYXJkVGl0bGVCR3tcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZiFpbXBvcnRhbnQ7XG59XG5cbi5tYXBUZXh0SWNvbntcbiAgY29sb3I6ICNiZGJkYmQgIWltcG9ydGFudDtcbn1cblxuLnBhZGRpbmctbGVmdC0ze1xuICBwYWRkaW5nLWxlZnQ6IDMlO1xufVxuXG4uYXBwb2ludG1lbnRTQntcbiAgcGFkZGluZy10b3A6IDAlO1xuICBwYWRkaW5nLWxlZnQ6IDIlO1xuICBjb2xvcjogYmxhY2s7XG4gIGZvbnQtc2l6ZTogMTNweDtcbn1cblxuLnJlbWluZGVyU0J7XG4gIHBhZGRpbmctdG9wOiAwJTtcbiAgcGFkZGluZy1sZWZ0OiA1JTtcbiAgY29sb3I6IGJsYWNrO1xuICBmb250LXNpemU6IDEzcHg7XG59XG5cbi5lbnJvdXRlU0J7XG4gIHBhZGRpbmctdG9wOiAwJTtcbiAgcGFkZGluZy1yaWdodDogMCU7XG4gIGNvbG9yOiBibGFjaztcbiAgZm9udC1zaXplOiAxM3B4O1xufVxuXG4uY29tcGxldGVTQntcbiAgY29sb3I6IGJsYWNrO1xuICBwYWRkaW5nLXRvcDogMCU7XG4gIHBhZGRpbmctcmlnaHQ6IDEyJTtcbiAgZm9udC1zaXplOiAxM3B4O1xufVxuXG4ud2hpdGVCR3tcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZiAhaW1wb3J0YW50O1xufVxuXG4udGVjaEltZ3tcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBtYXJnaW4tdG9wOiA1JTtcbiAgbWFyZ2luLWJvdHRvbTogMyU7XG4gIG1hcmdpbi1sZWZ0OiA5JTtcbn1cblxuLnRlY2hOYW1le1xuICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZm9udC1mYW1pbHk6IEFkZWxsZTtcbiAgY29sb3I6IGJsYWNrO1xuICBtYXJnaW4tbGVmdDogNyU7XG4gIGZvbnQtc2l6ZTogMjBweDtcbn1cblxuLmV0YXtcbiAgY29sb3I6IGJsYWNrO1xuICBmb250LXdlaWdodDogNjAwO1xuICBmb250LWZhbWlseTogQWRlbGxlO1xuICBmb250LXNpemU6IDIwcHg7XG4gIG1hcmdpbi1sZWZ0OiA1JTtcbiAgbWFyZ2luLXRvcDogMyU7XG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbn1cblxuLmV0YVdpbmRvd3tcbiAgY29sb3I6IGJsYWNrO1xuICBmb250LXdlaWdodDogNjAwO1xuICBmb250LWZhbWlseTogQWRlbGxlO1xuICBmb250LXNpemU6IDIwcHg7XG4gIG1hcmdpbi1sZWZ0OiA1JTtcbiAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xufVxuXG4udGVjaFdhcm5pbmd7XG4gIGZvbnQtc2l6ZToyNHB4O1xuICBwYWRkaW5nLXJpZ2h0OiA1cHg7XG59XG5cbi5tYXBUZXh0e1xuICBmb250LXNpemU6MjRweDtcbiAgcGFkZGluZy1yaWdodDogNXB4OyBcbiAgY29sb3I6ICNiZGJkYmQgIWltcG9ydGFudFxufVxuXG4ucGwtM3tcbiAgcGFkZGluZy1sZWZ0OiAzJTtcbn1cblxuXG4ubWFya2V0ZXJDb250YWN0e1xuICBjb2xvcjogd2hpdGVzbW9rZSAhaW1wb3J0YW50O1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgZm9udC1zaXplOiAxNnB4O1xufVxuXG5cbi5tYXJnaW5Ub3AtN3tcbiAgbWFyZ2luLXRvcDogNyUgIWltcG9ydGFudDtcbn1cbi5tYXJnaW5SaWdodC01IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDUlICFpbXBvcnRhbnQ7XG59XG5cbi50ZWNoVGV4dHtcbiAgd2lkdGg6IDg1JTtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG4ubWFwSW5mb3tcbiAgZm9udC1zaXplOjI0cHg7XG4gIHBhZGRpbmctcmlnaHQ6IDVweDtcbiAgY29sb3I6ICNiZGJkYmQgIWltcG9ydGFudFxufVxuXG4ubWFyZ2luLWxlZnQtNXtcbiAgbWFyZ2luLWxlZnQ6IDUlXG59XG5cbi5jYXJkUGFke1xuICBwYWRkaW5nLXRvcDogMyU7XG4gIHBhZGRpbmctbGVmdDogMyU7XG4gIHBhZGRpbmctcmlnaHQ6IDMlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xufVxuXG4uc3RpY2t5e1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGxlZnQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6IHJlZDtcbiAgY29sb3I6IHdoaXRlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgZm9udC1mYW1pbHk6IEFkZWxsZSAhaW1wb3J0YW50O1xufVxuXG4uYWxlcnRQYWR7XG4gIHdpZHRoOiA4NyU7XG4gIGZsb2F0OiByaWdodDtcbn1cblxuLnN0YXR1c01zZ1dpZHRoe1xuICBmbG9hdDogcmlnaHQ7XG4gIHdpZHRoOiA5MCU7XG59XG5cbi5wdC0ze1xuICBwYWRkaW5nLXRvcDogMyUgIWltcG9ydGFudDtcbiAgbWFyZ2luLWJvdHRvbTogMyUgIWltcG9ydGFudDtcblxufVxuXG4ucHQtMntcbiAgcGFkZGluZy10b3A6IDIlO1xufVxuXG50ZXh0YXJlYTo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICM3NTc1NzUgIWltcG9ydGFudDtcbiAgICBmb250LXNpemU6IDEzcHggIWltcG9ydGFudDtcbiAgICBmb250LWZhbWlseTogQWRlbGxlICFpbXBvcnRhbnQ7XG59XG5cbnRleHRhcmVhOi1tb3otcGxhY2Vob2xkZXIgeyAvKiBGaXJlZm94IDE4LSAqL1xuICAgIGNvbG9yOiAjNzU3NTc1ICFpbXBvcnRhbnQ7XG4gICAgZm9udC1zaXplOiAxM3B4ICFpbXBvcnRhbnQ7XG4gICAgZm9udC1mYW1pbHk6IEFkZWxsZSAhaW1wb3J0YW50O1xufVxuXG50ZXh0YXJlYTo6LW1vei1wbGFjZWhvbGRlciB7IC8qIEZpcmVmb3ggMTkrICovXG4gICAgY29sb3I6ICM3NTc1NzUgIWltcG9ydGFudDtcbiAgICBmb250LXNpemU6IDEzcHggIWltcG9ydGFudDtcbiAgICBmb250LWZhbWlseTogQWRlbGxlICFpbXBvcnRhbnQ7XG59XG5cbnRleHRhcmVhOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICM3NTc1NzUgIWltcG9ydGFudDtcbiAgICBmb250LXNpemU6IDEzcHggIWltcG9ydGFudDtcbiAgICBmb250LWZhbWlseTogQWRlbGxlICFpbXBvcnRhbnQ7XG59XG5cbnRleHRhcmVhOjpwbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICM3NTc1NzUgIWltcG9ydGFudDtcbiAgICBmb250LXNpemU6IDEzcHggIWltcG9ydGFudDtcbiAgICBmb250LWZhbWlseTogQWRlbGxlICFpbXBvcnRhbnQ7XG59XG5cbi5ibG9ja3MgLmJ0bi1kZWZhdWx0IHtcbiAgICAvKnBhZGRpbmc6IDI0cHggMTBweDsqL1xuICAgXG4gICAgbWFyZ2luLXRvcDogMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDdweDtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGJvcmRlci1jb2xvcjogI2MyMzIyNTtcbiAgICBjb2xvcjogI2MyMzIyNTsgLypTdHJvbmdSZWQqL1xuICAgIGhlaWdodDogNjBweCAhaW1wb3J0YW50O1xuICAgIHdpZHRoOiA4MHB4ICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1sZWZ0OiAxMHB4ICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1yaWdodDogMTBweCAhaW1wb3J0YW50O1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lICFpbXBvcnRhbnQ7XG59XG4uYnRuRGlzYWJsZWQge1xuICAgIGJvcmRlci1jb2xvcjogIzc1NzU3NSAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAjNzU3NTc1ICFpbXBvcnRhbnQ7XG59XG4ucm91bmRlZFRleHRBcmVhIHtcbiAgICB3aWR0aDogMjUwcHggIWltcG9ydGFudDtcbiAgICBoZWlnaHQ6IDE1MHB4ICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLXJhZGl1czogMTBweCAhaW1wb3J0YW50O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICM3NTc1NzU7XG4gICAgZm9udC1mYW1pbHk6IGphZi1iZXJuaW5hLXNhbnM7XG4gICAgcGFkZGluZzogMTVweDtcbn1cbi5jaGVja01hcmtHcmVlbiB7XG4gICAgd2lkdGg6IDc1cHg7XG4gICAgaGVpZ2h0OiA3NXB4O1xuICAgIGJhY2tncm91bmQ6IHdoaXRlOyAgICBcbiAgICAvKmJhY2tncm91bmQ6IHVybCguLi8uLi9hc3NldHMvaW1hZ2VzL2NoZWNrbWFyay1ncmVlbi1jaXJjbGUucG5nKTsqL1xufVxuXG4uYnRuVGltZVNsb3Qge1xuICAgIC8qY29sb3I6ICM3NTc1NzUgIWltcG9ydGFudDsqL1xuICAgIC8qbWFyZ2luOiAzLjUlIDAlICFpbXBvcnRhbnQ7Ki9cbiAgICB3aWR0aDogMTg1cHggIWltcG9ydGFudDtcbiAgICBoZWlnaHQ6IDQwcHggIWltcG9ydGFudDtcbiAgICBjb2xvcjogI2MyMzIyNSAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1jb2xvcjogI2MyMzIyNSAhaW1wb3J0YW50O1xufVxuXG4uYnRuU3Ryb25nUmVkQ29uZmlybSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2MyMzIyNSAhaW1wb3J0YW50O1xuICAgIC8qYm9yZGVyLXJhZGl1czoxMHB4ICFpbXBvcnRhbnQ7Ki9cbiAgICBjb2xvcjogd2hpdGUgIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kOiAjYzIzMjI1ICFpbXBvcnRhbnQ7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQgIWltcG9ydGFudDtcbiAgICB3aWR0aDogMTMwcHggIWltcG9ydGFudDtcbiAgICBtYXJnaW4tbGVmdDogMyU7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICBmb250LXNpemU6IDE0cHg7XG59XG4uYnRuU3Ryb25nUmVkT3JkZXJTdGF0dXMge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNjMjMyMjUgIWltcG9ydGFudDtcbiAgICAvKmJvcmRlci1yYWRpdXM6MTBweCAhaW1wb3J0YW50OyovXG4gICAgY29sb3I6IHdoaXRlICFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZDogI2MyMzIyNSAhaW1wb3J0YW50O1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkICFpbXBvcnRhbnQ7XG4gICAgd2lkdGg6IDI0MHB4ICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWxlZnQ6IDMlO1xufVxuLmJ0bkZpbGxTdHJvbmdSZWQge1xuICAgIGNvbG9yOiB3aGl0ZSAhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNjMjMyMjUgIWltcG9ydGFudDtcbn1cblxuLmJ0blN0cm9uZ1JlZE5vRmlsbCB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2MyMzIyNSAhaW1wb3J0YW50O1xuICAgIC8qYm9yZGVyLXJhZGl1czoxMHB4ICFpbXBvcnRhbnQ7Ki9cbiAgICBjb2xvcjogI2MyMzIyNSAhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQ6IHdoaXRlICFpbXBvcnRhbnQ7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQgIWltcG9ydGFudDtcbiAgICB3aWR0aDogMTMwcHggIWltcG9ydGFudDtcbiAgICBtYXJnaW4tbGVmdDogMyU7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgZm9udC1zaXplOiAxNHB4O1xufVxuXG4vKiBUbyBoaWRlIFN0ZXBwZXIgTmF2aWdhdGlvbiovXG46Om5nLWRlZXAgLm1hdC1ob3Jpem9udGFsLXN0ZXBwZXItaGVhZGVyIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZSAhaW1wb3J0YW50O1xufVxuLm1hdEhvcml6b250YWxTdGVwcGVyIHtcbiAgICBtYXJnaW4tdG9wOiA1cHggIWltcG9ydGFudDtcbiAgICBib3gtc2hhZG93OiBub25lO1xufVxuXG4uZGl2QXZhaWxhYmxlRGF5VGFibGUge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIHRhYmxlLWxheW91dDogZml4ZWQ7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogMHB4O1xufVxuXG4uZGl2QXZhaWxhYmxlRGF5IHtcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgIG92ZXJmbG93LXg6IHNjcm9sbDtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwICFpbXBvcnRhbnQ7XG4gICAgZGlzcGxheTppbmxpbmUtYmxvY2s7IC8qIFRvIGFwcGx5IGdpdmVuIHdpZHRoIHRvIGF2YWlsYWJsZSBkYXkgYnV0dG9uICovXG59XG5cbi5kaXZBdmFpbGFibGVEYXlPdXRlciB7XG4gICAgcGFkZGluZzogMSU7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50O1xuICAgIHdpZHRoOiAgNzYlO1xufVxuXG4uZGl2VGltZVNsb3Qge1xuICAgIG1hcmdpbi1sZWZ0OiAwcHg7XG4gICAgb3ZlcmZsb3cteTogYXV0byAhaW1wb3J0YW50O1xuICAgIGhlaWdodDogMjAwcHg7XG59XG5cbi5idG5BdmFpbGFibGVEYXlEaXZBcnJvdyB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogbm9uZTsgICAgXG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiAxcHggIWltcG9ydGFudDtcbn1cblxuLmRpdkF2YWlsYWJsZURheUFycm93IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7XG4gICAgd2lkdGg6IDEyJTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyAgICBcbn1cblxuLm1hdEFycm93QnV0dG9uQWN0aXZlIHtcbiAgICBjb2xvcjogI2MyMzIyNTtcbiAgICBmb250LXNpemU6IDM2cHg7XG59XG4ubWF0QXJyb3dCdXR0b25JbkFjdGl2ZSB7XG4gICAgY29sb3I6ICM4MDgwODA7XG4gICAgZm9udC1zaXplOiAzNnB4O1xufVxuXG4uY29uZmlybVNwaW5uZXJDb2xvciA6Om5nLWRlZXAgLm1hdC1wcm9ncmVzcy1zcGlubmVyIGNpcmNsZSwgLm1hdC1zcGlubmVyIGNpcmNsZSB7XG4gICAgc3Ryb2tlOiAjZmY5ODAwICFpbXBvcnRhbnQ7ICAgIFxufVxuXG46aG9zdCA6Om5nLWRlZXAgLm1hdC1ob3Jpem9udGFsLWNvbnRlbnQtY29udGFpbmVyIHtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5jYXJkLCAubWF0LXN0ZXBwZXItaG9yaXpvbnRhbCB7XG4gICAgbWFyZ2luLXRvcDogMHB4ICFpbXBvcnRhbnQ7XG59XG5cbi5jb25maXJtU3Bpbm5lckNlbnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKSB0cmFuc2xhdGVZKC01MCUpO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHRyYW5zbGF0ZVkoLTUwJSk7XG59XG5cbi5jb25maXJtU3Bpbm5lck92ZXJsYXkge1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMjg2KTtcbiAgICB6LWluZGV4OiAxMDtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG59XG5cbi5idG5Nb3JlRGF0ZXMge1xuICAgIGNvbG9yOiAjYzIzMjI1ICFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGUgIWltcG9ydGFudDtcbiAgICB3aWR0aDogNjBweCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDVweCAhaW1wb3J0YW50O1xuICAgIGZvbnQtc2l6ZTogMTBweDtcbn1cblxuLmJ0blBvcE92ZXJBbGVydCB7XG4gICAgYm9yZGVyLWxlZnQ6IG5vbmU7XG4gICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgICBib3JkZXItcmlnaHQ6IG5vbmU7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IGRvdHRlZCAjYzIzMjI1O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBjb2xvcjogI2MyMzIyNTtcbiAgICBmb250LWZhbWlseTogQWRlbGxlO1xuICAgIGN1cnNvcjpwb2ludGVyO1xufVxuLyogUG9wb3ZlciBIZWFkZXIgKi9cbi5wb3BvdmVyLXRpdGxlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzIzMjI1O1xuICAgIGNvbG9yOiAjRkZGRkZGO1xuICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZm9udC1mYW1pbHk6IEFkZWxsZTtcbn1cbi8qIFBvcG92ZXIgQm9keSAqL1xuLnBvcG92ZXItY29udGVudCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRjtcbiAgICBjb2xvcjogYmxhY2s7XG4gICAgcGFkZGluZzogMTBweDtcbn1cbi8qIFBvcG92ZXIgQXJyb3cgKi9cbi5hcnJvdyB7XG4gICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAjYzIzMjI1ICFpbXBvcnRhbnQ7XG59XG5cblxuLnBvcG92ZXItaGVhZGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzIzMjI1ICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6ICNGRkZGRkYgIWltcG9ydGFudDtcbiAgICBmb250LXNpemU6IDEwcHggIWltcG9ydGFudDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgICBmb250LWZhbWlseTogQWRlbGxlICFpbXBvcnRhbnQ7XG59XG4vKiBQb3BvdmVyIEJvZHkgKi9cbi5wb3BvdmVyLWJvZHkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNGRkZGRkYgIWltcG9ydGFudDtcbiAgICBjb2xvcjogYmxhY2sgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiAxMHB4ICFpbXBvcnRhbnQ7XG59XG4vKiBQb3BvdmVyIEFycm93ICovXG4uYXJyb3cge1xuICAgIGJvcmRlci1yaWdodC1jb2xvcjogI2MyMzIyNSAhaW1wb3J0YW50O1xufVxuXG4uU2Fuc1NlcmlmUmVndWxhciB7XG4gICAgLypmb250LWZhbWlseTogJ1NvdXJjZSBTYW5zIFBybycsc2Fucy1zZXJpZjsqL1xuICAgIGZvbnQtZmFtaWx5OiAtYXBwbGUtc3lzdGVtLHN5c3RlbS11aSxCbGlua01hY1N5c3RlbUZvbnQsXCJTZWdvZSBVSVwiLFJvYm90byxcIkhlbHZldGljYSBOZXVlXCIsQXJpYWwsc2Fucy1zZXJpZjtcbiAgICBmb250LXNpemU6IDFlbTtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xufVxuXG4uU2Fuc1NlcmlmU21hbGwge1xuICAgIC8qZm9udC1mYW1pbHk6ICdTb3VyY2UgU2FucyBQcm8nLHNhbnMtc2VyaWY7Ki9cbiAgICBmb250LWZhbWlseTogLWFwcGxlLXN5c3RlbSxzeXN0ZW0tdWksQmxpbmtNYWNTeXN0ZW1Gb250LFwiU2Vnb2UgVUlcIixSb2JvdG8sXCJIZWx2ZXRpY2EgTmV1ZVwiLEFyaWFsLHNhbnMtc2VyaWY7XG4gICAgZm9udC1zaXplOiAwLjhlbTtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xufVxuXG4ucmFkaW9JbnB1dCB7XG4gICAgaGVpZ2h0OiAxLjVlbTtcbiAgICB3aWR0aDogMS41ZW07XG4gICAgYm9yZGVyOiAwcHg7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZVxufVxuXG4ucmFkaW9JbnB1dExhYmVsIHtcbiAgICBoZWlnaHQ6IDEuNWVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjVlbTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogc3ViO1xuICAgIHBhZGRpbmctbGVmdDogMC41ZW07XG59XG5cbi5yYWRpb0lucHV0TGFiZWxDb21ibyB7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB3aWR0aDogMTZlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwcHhcbn1cblxuLnBsYXlJY29uIHtcbiAgICBoZWlnaHQ6IDIuNWVtO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIC8qd2lkdGg6IDNlbTsqL1xuICAgIG1hcmdpbi1yaWdodDogMC41ZW0gIWltcG9ydGFudDtcbn1cblxuLnByb2Nlc3NTdG9wTXNnIHtcbiAgICBtYXJnaW46IDAuNWVtIDEuM2VtO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGZvbnQtc2l6ZTogMS4xZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcbn1cblxuLmJ0blN0cm9uZ1JlZEZpbGxMb25nIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjYzIzMjI1ICFpbXBvcnRhbnQ7XG4gICAgLypib3JkZXItcmFkaXVzOjEwcHggIWltcG9ydGFudDsqL1xuICAgIGNvbG9yOiB3aGl0ZSAhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQ6ICNjMjMyMjUgIWltcG9ydGFudDtcbiAgICBmb250LXdlaWdodDogYm9sZCAhaW1wb3J0YW50O1xuICAgIHdpZHRoOiAxODBweCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1sZWZ0OiAzJTtcbiAgICAvKm1hcmdpbi1ib3R0b206IDEwcHg7Ki9cbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZSAhaW1wb3J0YW50O1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbn1cblxuLmRpdkFWU2Nyb2xsIHtcbiAgICAvKndpZHRoOiAyMDBweDtcbiAgICBoZWlnaHQ6IDQwMHB4O1xuICAgIGJhY2tncm91bmQ6IHJlZDsqL1xuICAgIG92ZXJmbG93LXg6IHNjcm9sbDtcbn1cblxuLmRpdkFWU2Nyb2xsOjotd2Via2l0LXNjcm9sbGJhciB7XG4gICAgLyp3aWR0aDogMTBweDsqL1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNGNUY1RjU7XG4gICAgaGVpZ2h0OiA1cHg7XG59XG5cbi5kaXZBVlNjcm9sbDo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2sge1xuICAgIC13ZWJraXQtYm94LXNoYWRvdzogaW5zZXQgMCAwIDZweCByZ2JhKDAsMCwwLDAuMyk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0Y1RjVGNTtcbn1cblxuLmRpdkFWU2Nyb2xsOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Q5NmE2MDtcbiAgICBib3JkZXI6IDJweCBzb2xpZCAjZDU4NTdlO1xufVxuXG4uZGl2VGltZXNsb3RTY3JvbGwge1xuICAgIC8qd2lkdGg6IDIwMHB4O1xuICAgIGhlaWdodDogNDAwcHg7XG4gICAgYmFja2dyb3VuZDogcmVkOyovXG4gICAgb3ZlcmZsb3cteTogc2Nyb2xsO1xufVxuXG4uZGl2VGltZXNsb3RTY3JvbGw6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgICAvKndpZHRoOiAxMHB4OyovXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0Y1RjVGNTtcbiAgICB3aWR0aDogNXB4O1xufVxuXG4uZGl2VGltZXNsb3RTY3JvbGw6Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNrIHtcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IGluc2V0IDAgMCA2cHggcmdiYSgwLDAsMCwwLjMpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNGNUY1RjU7XG59XG5cbi5kaXZUaW1lc2xvdFNjcm9sbDo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNkOTZhNjA7XG4gICAgYm9yZGVyOiAycHggc29saWQgI2Q1ODU3ZTtcbn1cblxuLnRpbWVzbG90YmxvY2tzIC5idG4tZGVmYXVsdCAuYnRuLXJvdW5kIHtcbiAgICBtYXJnaW4tdG9wOiAwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAvKm1hcmdpbi1sZWZ0OiA1cHg7XG4gICAgbWFyZ2luLXJpZ2h0OiA3cHg7Ki9cbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGJvcmRlci1jb2xvcjogI2MyMzIyNTtcbiAgICBjb2xvcjogI2MyMzIyNTsgLypTdHJvbmdSZWQqL1xuICAgIGhlaWdodDogNjBweCAhaW1wb3J0YW50O1xuICAgIHdpZHRoOiA4MHB4ICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1sZWZ0OiAxMHB4ICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1yaWdodDogMTBweCAhaW1wb3J0YW50O1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5hcHB0Q29uZmlybWF0aW9uTXNnIHtcbiAgICBtYXJnaW4tbGVmdDogMiU7XG4gICAgbWFyZ2luLXJpZ2h0OiAyJTtcbiAgICBtYXJnaW4tdG9wOiAyJTtcbiAgICBmb250LXNpemU6IDE1cHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyXG59XG5cbi5wbGF5SWNvbiB7XG4gICAgaGVpZ2h0OiAyLjVlbTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICAvKndpZHRoOiAzZW07Ki9cbiAgICBtYXJnaW4tcmlnaHQ6IDAuNWVtICFpbXBvcnRhbnQ7XG59XG4uZGl2TGlnaHRDeWFuQWxlcnQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IGxpZ2h0Y3lhbjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiA1cHggMTBweDtcbiAgICAvKm1hcmdpbjogMHB4IDEwcHg7Ki9cbiAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgbGluZS1oZWlnaHQ6IDEuMmVtO1xufVxuLmRpdlJlbWluZGVyTWVzc2FnZUJ5RUN7XG4gICAgd2lkdGg6OTAlO1xuICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuICAgIGZvbnQtc2l6ZToxNHB4O1xuICAgIHRleHQtYWxpZ246bGVmdDtcbn1cblxuLnRleHRJbnB1dCB7XG4gICAgd2lkdGg6IDIzMHB4ICFpbXBvcnRhbnQ7XG4gICAgaGVpZ2h0OiAyNXB0ICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLXJhZGl1czogNXB4ICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzc1NzU3NTtcbiAgICBmb250LWZhbWlseTogamFmLWJlcm5pbmEtc2FucztcbiAgICBwYWRkaW5nOiAzcHggMTBweDtcbn1cblxuLmNvbmZpcm1EaXYge1xuICAgIHBhZGRpbmctYm90dG9tOiA1JTtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBib3gtc2hhZG93OiBub25lXG59XG5cbi5lcnJvckRpdiB7XG4gICAgcGFkZGluZy1yaWdodDogMjBweCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctbGVmdDogMjBweCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi10b3A6IDEwJTtcbn1cbi5lcnJvcklubmVyRGl2IHtcbiAgICBwYWRkaW5nOiAxNSUgMTAlO1xufVxuXG5zdHJvbmcge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkICFpbXBvcnRhbnQ7XG59Il19 */\"","module.exports = \":host ::ng-deep .popover {\\n background-color: red;\\n color: #fff; }\\n\\n:host ::ng-deep .popover.arrow:after {\\n border-top-color: red; }\\n\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvcmVzY2hlZHVsZS9FOlxcQWdlbnRzXFxCdWlsZFxcX3dvcmtcXDUxMzhcXHNcXFdlYlxcQ2xpZW50QXBwL3NyY1xcYXBwXFxyZXNjaGVkdWxlXFxyZXNjaGVkdWxlLmNvbXBvbmVudC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBO0VBQ0kscUJBQXFCO0VBQ3JCLFdBQVcsRUFBQTs7QUFHZjtFQUNJLHFCQUFxQixFQUFBIiwiZmlsZSI6InNyYy9hcHAvcmVzY2hlZHVsZS9yZXNjaGVkdWxlLmNvbXBvbmVudC5zY3NzIiwic291cmNlc0NvbnRlbnQiOlsiXG46aG9zdCA6Om5nLWRlZXAgLnBvcG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJlZDtcbiAgICBjb2xvcjogI2ZmZjtcbn1cblxuOmhvc3QgOjpuZy1kZWVwIC5wb3BvdmVyLmFycm93OmFmdGVyIHtcbiAgICBib3JkZXItdG9wLWNvbG9yOiByZWQ7XG59XG5cbiJdfQ== */\"","//DSS Documentation on Angular Components - http://tiny.sc/cgangularcomponent\nimport { Component, EventEmitter, OnInit, AfterViewInit, Input, Output, Pipe, PipeTransform, HostListener } from '@angular/core';\nimport { NgModule } from '@angular/core';\nimport { ViewChild, ElementRef } from '@angular/core';\nimport { func, bool } from 'prop-types';\nimport { Router, ActivatedRoute, ParamMap } from '@angular/router';\nimport { ApiResult } from '@soco/core';\nimport { FormGroup, FormBuilder } from '@angular/forms';\nimport { SocoModalService } from '@soco/modal';\nimport { DatePipe } from '@angular/common';\nimport { RescheduleService } from './reschedule.service';\nimport { DBTraceLogService } from '../shared/services/dbTraceLog/dbTraceLog.service';\nimport { CoolEmailService } from '../shared/services/coolEmail/coolEmail.service';\nimport { AppCommonService } from '../shared/services/common/app-common.service';\nimport {\n OrderAttributes, AmendOrder\n} from './reschedule-entities';\nimport { DBTraceLog, LogType } from '../shared/services/dbTraceLog/dbTraceLog-entities';\nimport { AppConfigurationData } from '../shared/services/common/app-common-entities';\nimport { SocoHttpService } from '@soco/http';\nimport { MatStepper } from '@angular/material/stepper';\nimport { DeviceDetectorService } from 'ngx-device-detector';\nimport { AvailabilityInput, AvailabilityOutput } from '../shared/components/availability/availability-selection-entities';\nimport { AppointmentConfirmationInput, AppointmentConfirmationOutput } from '../shared/components/appointmentconfirmation/appointment-confirmation-entities';\nimport { AppBaseComponent } from '../shared/components/base/app-base.component';\nimport { BnNgIdleService } from 'bn-ng-idle';\n\n@Component({\n templateUrl: 'reschedule.component.html',\n styleUrls: ['reschedule.component.css', 'reschedule.component.scss'],\n providers: [DatePipe, RescheduleService, DBTraceLogService, CoolEmailService, AppCommonService]\n})\nexport class RescheduleComponent extends AppBaseComponent implements OnInit {\n\n @ViewChild(MatStepper, { static: false }) reschedulingStepper: MatStepper;\n //@ViewChild(AvailabilityComponent, { static: false }) availabilityCopm: AvailabilityComponent;\n\n //#region Variables\n public ldc: string = '';\n public ldcFullName: string;\n public seedDate: string;\n public orderNumber: string = '';\n public premiseNumber: string = '';\n public marketerName: string = '';\n public availabilityResponse: any;\n public urlCode: string;\n public sentinelAvailableDays = [];\n public timeSlots = [];\n public filteredTimeSlots = [];\n public selectedTimeSlot: string = '';\n public selectdScheduleDate: string;\n public selectedScheduleWindow: string = '';\n public selectedTimeSlotWindow: string = '';\n public ccbAppointmentStart: string;\n public ccbAppointmentEnd: string;\n public data: any;\n public isPageLoadReady: boolean = false;\n public showSpinner: boolean = true;\n public showError: boolean = false;\n public errorInfo: any;\n public showTimeSlotLoadingSpinner: boolean = false;\n public showConfirmSpinner: boolean = false;\n\n questionsForm: FormGroup;\n scheduleForm: FormGroup;\n confirmForm: FormGroup;\n successForm: FormGroup;\n isLinear = false;\n\n public orderAttributesAPIResult: any;\n public rescheduleEligibilityAPIResult: any;\n public orderAttributes: OrderAttributes;\n public amendOrder: AmendOrder;\n public errorMessageContactPhoneNo: string = '';\n public announcementTitle: string = '';\n public announcementDescription: string = '';\n public firstSentinelAvailableDate: string = '';\n public maxAvailableDatesAllowed: number = 0;\n public orderType: string = '';\n public personID: string = '';\n public eligibilityReturnMessage: string = '';\n public matchOrderEffectiveDate: string = '';\n public showTimeSlots: boolean = true;\n public appConfigurationDataList: Array = [];\n public entranceInstructionsList = [];\n public covidVideo: string = '';\n public contactPhoneNo: string = '';\n public contactHours: string = '';\n public showInitialSpinner: boolean = false;\n public showLogOut: boolean = false;\n public deviceInfo = null;\n public dbTraceLog: DBTraceLog;\n public logReferenceID: string = '';\n public entranceCode: string = '';\n public entranceCodeReminderMsg: string = '';\n public availabilityInput: AvailabilityInput;\n public availabilityOutput: AvailabilityOutput;\n \n public appointmentConfirmationInput: AppointmentConfirmationInput;\n public emailToList: string;\n public sessionTimeoutWarningMsg: string = '';\n public sessionExpired: boolean = true;\n public timeOutPeriod: number = 3000;\n public timeOutWarning: number = 30;\n public userActivity: any;\n public interval: any;\n\n //#endregion\n\n constructor(public rescheduleService: RescheduleService, private route: ActivatedRoute, private formBuilder: FormBuilder,\n public datepipe: DatePipe, public http: SocoHttpService, public dbTraceLogService: DBTraceLogService,\n public deviceService: DeviceDetectorService, public coolEmailService: CoolEmailService,\n private appCommonService: AppCommonService, private bnIdle: BnNgIdleService) {\n\n //Parent component instantiation\n super(http, dbTraceLogService, coolEmailService, deviceService);\n\n try {\n //this.urlCode = this.route.snapshot.queryParamMap.get('urlcode'); \n if (this.route.snapshot.url.length > 1)\n this.urlCode = this.route.snapshot.url[1].path;\n //console.log('urlCode : ', this.urlCode);\n\n this.availabilityInput = new AvailabilityInput();\n this.availabilityOutput = new AvailabilityOutput();\n \n this.appointmentConfirmationInput = new AppointmentConfirmationInput();\n\n this.logReferenceID = this.datepipe.transform(Date.now(), \"MMddyyyyHHmmss\");\n this.insertDBTraceLog(LogType.Info, 'Reschedule component initiated successfully');\n\n }\n catch (e) {\n this.insertDBTraceLog(LogType.Error, 'Exception occured while loading reschedule constructor, Error: ' + e.message.substring(0, 500));\n }\n };\n\n ngOnInit() {\n try {\n //hide multi step clickable status bar\n $('.mat-horizontal-stepper-header-container').hide();\n //to avoid unnecessary vertical scroll when focusing autofill values in input.\n $(\".wrapper\").css(\"overflow-y\", \"auto\");\n //to avoid horizontal scroll, Applying below style on root div\n $(\".main-panel\").css(\"overflow-x\", \"hidden\");\n\n //Initiate stepper forms\n this.questionsForm = this.formBuilder.group({});\n this.scheduleForm = this.formBuilder.group({});\n this.confirmForm = this.formBuilder.group({});\n this.successForm = this.formBuilder.group({});\n\n //Change hard coded value to config driven in later development\n this.maxAvailableDatesAllowed = 45;\n\n //$('[data-toggle=\"popover\"]').popover(\n // //{content : this.announcementDescription}\n // );\n\n //Fetch Order Attributes, Check Eligibility & Load Availability synchronously\n this.GetOrderAttributes(this.urlCode);\n\n }\n catch (e) {\n this.insertDBTraceLog(LogType.Error, 'Exception occured while loading ngOnInit, Error: ' + e.message.substring(0, 500));\n }\n }\n\n // #region Init Methods\n\n GetOrderAttributes(UrlCode: string) {\n try {\n this.showInitialSpinner = true;\n\n this.rescheduleService.getOrderAttributes(UrlCode).subscribe(ApiResult => {\n\n //console.log('OrderAttributes ApiResult.data ', ApiResult.data); \n\n if (ApiResult.data != null) {\n this.insertDBTraceLog(LogType.Info, 'Order attributes fetched successfully');\n\n //capture contact phone no to show in error message\n if (ApiResult.data.contactPhoneNo != null && ApiResult.data.contactPhoneNo != '') {\n this.errorMessageContactPhoneNo = this.formatPhoneNumber(ApiResult.data.contactPhoneNo)\n }\n\n if (ApiResult.data.ldc != null && ApiResult.data.ldc != '' &&\n ApiResult.data.sourceOrderNumber != null && ApiResult.data.sourceOrderNumber != '' &&\n ApiResult.data.isRescheduleEligible) {\n //console.log(ApiResult.data);\n this.ldc = ApiResult.data.ldc;\n this.orderNumber = ApiResult.data.sourceOrderNumber;\n this.orderType = ApiResult.data.orderType;\n this.personID = ApiResult.data.personID;\n this.entranceCode = ApiResult.data.entranceInstructions;\n this.entranceCodeReminderMsg = ApiResult.data.entranceCodeReminderMessage;//this.getEntranceCodeReminderMsg('HOME');\n\n //As of now GCMA backend services are not depend on premise number\n if (this.ldc != 'AGLC')\n this.premiseNumber = ApiResult.data.premisesNumber;\n else {\n this.premiseNumber = '';\n this.marketerName = ApiResult.data.marketerName;\n }\n\n //Get Application Configs\n this.GetApplicationConfigs();\n\n //Check reschedule eligibility \n //this.GetRescheduleEligibilityOnLanding(); \n }\n else {\n this.insertDBTraceLog(LogType.Info, 'Order attributes fetched, Order is not eligible to reschedule');\n this.processError();\n }\n }\n else {\n this.insertDBTraceLog(LogType.Error, 'Error occured while fetching order attributes, API Result is Null');\n this.processError();\n }\n\n }, ApiResult => {\n //capture error\n if (this.http.isInvalidResult(ApiResult) || this.http.isErrorResult(ApiResult) || this.http.isFailureResult(ApiResult)) {\n if (ApiResult.data != null && ApiResult.data.contactPhoneNo != '')\n this.errorMessageContactPhoneNo = this.formatPhoneNumber(ApiResult.data.contactPhoneNo);\n\n this.insertDBTraceLog(LogType.Error, 'Error occured while fetching order attributes');\n this.processError();\n }\n });\n }\n catch (e) {\n this.insertDBTraceLog(LogType.Error, 'Exception occured while fetching order attributes, Error: ' + e.message.substring(0, 500));\n }\n\n }\n\n GetApplicationConfigs() {\n try {\n //this.showInitialSpinner = true;\n\n this.appCommonService.getApplicationConfigs().subscribe(ApiResult => {\n\n //console.log('ApplicationConfig ApiResult: ', ApiResult.data); \n\n if (ApiResult.data != null) {\n\n this.insertDBTraceLog(LogType.Info, 'Application configs fetched successfully');\n\n ApiResult.data.forEach(configData => {\n this.appConfigurationDataList.push(configData);\n });\n\n ////Set Entrance Instruction Notes\n this.entranceInstructionsList = this.appConfigurationDataList.filter(item => item.configurationType == 'Entrance Instruction Notes')\n .map(cv => cv.configurationValue);\n\n this.emailToList = this.appConfigurationDataList.filter(item => (item.configurationKey == 'EmailTo'))\n .map(cv => cv.configurationValue)[0];\n\n this.timeOutPeriod = Number(this.appConfigurationDataList.filter(item => item.configurationKey == 'SessionTimeOut')\n .map(cv => cv.configurationValue)[0]);\n\n this.timeOutWarning = Number(this.appConfigurationDataList.filter(item => item.configurationKey == 'SessionTimeOutWarning')\n .map(cv => cv.configurationValue)[0]);\n\n //set contactPhone on load\n this.setContactPhoneNoAndHours();\n this.getLDCFullName();\n\n //Trigger timeout watch after configs load\n this.triggerTimeOut();\n\n //Prepate Availability Input after fetching order attributes & app configs\n this.prepareAvailabilityInput();\n\n //this.isPageLoadReady = true;\n this.showInitialSpinner = false;\n }\n else {\n this.insertDBTraceLog(LogType.Error, 'Error occured while fetching application configs, API Result is Null');\n this.processError();\n }\n\n }, ApiResult => {\n //capture error\n if (this.http.isInvalidResult(ApiResult) || this.http.isErrorResult(ApiResult) || this.http.isFailureResult(ApiResult)) {\n \n this.insertDBTraceLog(LogType.Error, 'Error occured while fetching application configs');\n this.processError();\n }\n });\n\n }\n catch (e) {\n this.insertDBTraceLog(LogType.Error, 'Exception occured while fetching application configs, Error: ' + e.message.substring(0, 500));\n }\n }\n\n // #endregion\n\n // #region Amend Order\n\n private AmendOrder(fieldInstructions: string, stepper: MatStepper) {\n try {\n \n this.showConfirmSpinner = true;\n var updatedFieldInstructions: string = '';\n if (fieldInstructions != '')\n fieldInstructions = fieldInstructions + '\\n';\n\n updatedFieldInstructions = fieldInstructions;\n\n this.amendOrder = new AmendOrder();\n this.amendOrder.ldc = this.ldc;\n this.amendOrder.orderNumber = this.orderNumber;\n this.amendOrder.fieldInstructions = updatedFieldInstructions; //fieldInstructions;\n\n //GCMA specific fields\n this.amendOrder.scheduleDate = this.selectdScheduleDate;\n this.amendOrder.scheduleWindow = this.selectedScheduleWindow;\n\n //CCB specific fields\n this.amendOrder.premisesNumber = this.premiseNumber;\n this.amendOrder.appointmentStart = this.ccbAppointmentStart;\n this.amendOrder.appointmentEnd = this.ccbAppointmentEnd;\n this.amendOrder.personID = this.personID;\n\n if (this.ldc === 'AGLC')\n this.insertDBTraceLog(LogType.Info, 'Order rescheduling initiated for Schedule Date:' + this.selectdScheduleDate + ', Schedule Window: ' + this.selectedTimeSlotWindow);\n else\n this.insertDBTraceLog(LogType.Info, 'Order rescheduling initiated for Appt Start:' + this.ccbAppointmentStart + ', Appt End: ' + this.ccbAppointmentEnd);\n\n //setTimeout(function () { this.showConfirmSpinner = false; stepper.next(); }, 3000); \n\n this.rescheduleService.amendOrder(this.amendOrder).subscribe(ApiResult => {\n\n //console.log('Amend Order API Result: ', ApiResult);\n if (ApiResult != null && ApiResult.statusCode == 200) {\n\n if (this.ldc === 'AGLC')\n this.insertDBTraceLog(LogType.Info, 'Order rescheduled successfully for Schedule Date:' + this.selectdScheduleDate + ', Schedule Window: ' + this.selectedTimeSlotWindow);\n else\n this.insertDBTraceLog(LogType.Info, 'Order rescheduled successfully for Appt Start:' + this.ccbAppointmentStart + ', Appt End: ' + this.ccbAppointmentEnd);\n\n //Hide Logout in last page \n //If displayed and clicked, it will navigate back to initial screen but Reschedule eligibility has to be decided on pageload. \n this.showLogOut = false;\n //Do not force timeout on lastpage to avoid navigating back to initial screen\n this.sessionExpired = true;\n\n //Navigate to next page\n this.showConfirmSpinner = false;\n stepper.next();\n }\n else {\n\n this.insertDBTraceLog(LogType.Error, 'Error occured while rescheduling order, APIResult is either null or not 200');\n\n this.showConfirmSpinner = false;\n this.processError();\n }\n\n }, ApiResult => {\n if (this.http.isInvalidResult(ApiResult) || this.http.isErrorResult(ApiResult) || this.http.isFailureResult(ApiResult)) {\n this.insertDBTraceLog(LogType.Error, 'Error occured while rescheduling order, Invalid APIResult');\n\n this.showConfirmSpinner = false;\n this.processError();\n }\n });\n\n }\n catch (e) {\n this.insertDBTraceLog(LogType.Error, 'Exception occured while amending order, Error: ' + e.message.substring(0, 500));\n }\n }\n\n // #endregion \n\n // #region Button Clicks \n\n navigateToHome() {\n\n this.reschedulingStepper.selectedIndex = 0;\n this.insertDBTraceLog(LogType.Info, 'Navigated to home screen');\n }\n\n // #endregion\n\n\n // #region Helper Methods\n\n processError(): void {\n this.showError = true;\n //this.errorInfo = ApiResult.data;\n this.showSpinner = false;\n this.showTimeSlotLoadingSpinner = false;\n this.showConfirmSpinner = false;\n this.showInitialSpinner = false;\n this.showLogOut = false;\n //to hide content container's border\n $('#divRescheduling').hide();\n\n }\n\n private processErrorFromChild($event) {\n this.processError();\n }\n\n private formatPhoneNumber(phoneNumberString: string) {\n\n if (phoneNumberString.length == 10) {\n //reformat and return phone number\n return phoneNumberString.replace(/(\\d{3})(\\d{3})(\\d{4})/, \"$1.$2.$3\");\n }\n return phoneNumberString\n }\n\n public setContactPhoneNoAndHours() {\n\n if (this.ldc != 'AGLC') {\n this.contactPhoneNo = this.appConfigurationDataList.filter(item => (item.ldc == this.ldc && item.configurationType == 'Contact Phone Number'))\n .map(cv => cv.configurationValue)[0];\n\n this.contactHours = this.appConfigurationDataList.filter(item => (item.ldc == this.ldc && item.configurationType == 'Contact Hours'))\n .map(cv => cv.configurationValue)[0];\n }\n else {\n //Set marketer details\n this.contactPhoneNo = this.errorMessageContactPhoneNo;\n this.contactHours = 'During business hours';\n }\n\n }\n\n private getLDCFullName() {\n if (this.ldc === 'NG' || this.ldc === 'IL')\n this.ldcFullName = 'Nicor Gas';\n else if (this.ldc === 'VNG')\n this.ldcFullName = 'Virginia Natural Gas';\n else if (this.ldc === 'CGC')\n this.ldcFullName = 'Chattanooga Gas';\n else if (this.ldc === 'AGLC')\n this.ldcFullName = this.marketerName;\n }\n\n private insertDBTraceLog(logType: string, logMessage: string) {\n\n this.dbTraceLog = new DBTraceLog();\n\n this.dbTraceLog.portalTypeID = 2; //Reschedule Portal\n this.dbTraceLog.ldc = this.ldc;\n this.dbTraceLog.kmiUrlCode = this.urlCode;\n this.dbTraceLog.issuingApOrderID = this.orderNumber;\n this.dbTraceLog.orderType = this.orderType;\n this.dbTraceLog.logReferenceID = this.logReferenceID;\n this.dbTraceLog.logType = logType;\n this.dbTraceLog.logMessage = logMessage;\n this.dbTraceLog.emailToList = this.emailToList;\n\n super.InsertDBTraceLogThruBase(this.dbTraceLog);\n\n }\n\n private prepareAvailabilityInput() {\n\n this.availabilityInput.ldc = this.ldc;\n this.availabilityInput.kmiUrlCode = this.urlCode;\n this.availabilityInput.orderNumber = this.orderNumber;\n this.availabilityInput.orderType = this.orderType;\n this.availabilityInput.premisesNumber = this.premiseNumber;\n this.availabilityInput.logReferenceID = this.logReferenceID;\n this.availabilityInput.portalTypeID = 2; //Reschedule\n this.availabilityInput.entranceCodeReminderMsg = this.entranceCodeReminderMsg;\n this.availabilityInput.emailToList = this.emailToList;\n this.availabilityInput.appointmentType = 'Amend';\n this.availabilityInput.serviceOrderActiontype = 'Amend';\n }\n\n private recieveAvailabilitySelection($event) {\n this.availabilityOutput = $event;\n\n this.selectedTimeSlot = this.availabilityOutput.selectedTimeSlot;\n this.selectedTimeSlotWindow = this.availabilityOutput.selectedTimeSlotWindow;\n this.selectdScheduleDate = this.availabilityOutput.selectedScheduleDate;\n this.selectedScheduleWindow = this.availabilityOutput.selectedScheduleWindow;\n this.ccbAppointmentStart = this.availabilityOutput.ccbAppointmentStart;\n this.ccbAppointmentEnd = this.availabilityOutput.ccbAppointmentEnd;\n\n //prepare appt confirmation input for child control\n this.prepareAppointmentConfirmationInput();\n }\n\n private prepareAppointmentConfirmationInput() {\n\n this.appointmentConfirmationInput.selectedTimeSlot = this.selectedTimeSlot;\n this.appointmentConfirmationInput.selectedTimeSlotWindow = this.selectedTimeSlotWindow;\n this.appointmentConfirmationInput.entranceInstructionsList = this.entranceInstructionsList;\n this.appointmentConfirmationInput.specialFeeMsg = ''; //Doesn't apply to reschedule\n this.appointmentConfirmationInput.ldc = this.ldc;\n this.appointmentConfirmationInput.logReferenceID = this.logReferenceID;\n this.appointmentConfirmationInput.portalTypeID = 2; //ReSchedule \n this.appointmentConfirmationInput.emailToList = this.emailToList;\n }\n\n //#region Session TimeOut\n\n private triggerTimeOut() {\n this.bnIdle.startWatching(this.timeOutPeriod - this.timeOutWarning).subscribe((res) => {\n if (res && !this.sessionExpired) {\n //start countdown\n this.startCountdown(this.timeOutWarning);\n //navigate home once countdown finishes\n this.userActivity = setTimeout(this.navigateHome.bind(this), this.timeOutWarning * 1000);\n }\n })\n }\n\n navigateHome = () => {\n this.navigateToHome();\n this.sessionExpired = true;\n this.sessionTimeoutWarningMsg = '';\n }\n\n private startCountdown(seconds) {\n let counter = seconds;\n\n this.interval = setInterval(() => {\n this.sessionTimeoutWarningMsg = 'Session expiring in ' + counter;\n counter--;\n\n if (counter < 0) {\n clearInterval(this.interval);\n this.sessionTimeoutWarningMsg = '';\n }\n }, 1000);\n }\n\n //stop countdown on user activity\n @HostListener('document:keydown', ['$event'])\n @HostListener('window:mousemove', ['$event'])\n @HostListener('window:wheel', ['$event'])\n @HostListener('touchstart', ['$event'])\n onEvent(event) {\n if (this.sessionTimeoutWarningMsg != '') {\n clearTimeout(this.userActivity);\n clearInterval(this.interval);\n this.sessionTimeoutWarningMsg = '';\n }\n }\n\n //#endregion\n\n\n // #endregion\n\n}\n","//angular modules\n//DSS Documentation on Angular - http://tiny.sc/cgangular\nimport { NgModule } from '@angular/core';\nimport { RouterModule } from '@angular/router';\nimport { CommonModule } from '@angular/common';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\n//soco modules\nimport { SocoAlertModule } from '@soco/alert';\nimport { SocoFormsModule } from '@soco/forms';\nimport { SocoModalModule } from '@soco/modal';\nimport { SocoUIThemeModule } from '@soco/ui-theme';\n\n//app modules\nimport { CoreModule } from '../core/core.module';\n\n//components\n//DSS Documentation on Angular Components - http://tiny.sc/cgangularcomponent\n\nimport { RescheduleComponent } from './reschedule.component';\nimport { RescheduleRoutes } from './reschedule.routing';\nimport { AgmCoreModule } from '@agm/core';\nimport { AvailabilityModule } from '../shared/components/availability/availability-selection.module';\nimport { CovidQuestionnaireModule } from '../shared/components/covidquestionnaire/covid-questionnaire.module';\nimport { AppointmentConfirmationModule } from '../shared/components/appointmentconfirmation/appointment-confirmation.module';\nimport { BnNgIdleService } from 'bn-ng-idle';\n//import { AppBaseModule } from '../shared/components/base/app-base.module';\n\n\n@NgModule({\n imports: [\n //angular modules\n CommonModule,\n RouterModule.forChild(RescheduleRoutes),\n FormsModule,\n ReactiveFormsModule,\n AgmCoreModule.forRoot({\n apiKey: 'AIzaSyBcLYsBQdhvhsdRoDKPzt3STCHmIXsXCNU'\n }),\n\n //soco modules \n SocoUIThemeModule,\n SocoAlertModule,\n SocoFormsModule,\n SocoModalModule,\n\n //app modules\n CoreModule,\n AvailabilityModule,\n CovidQuestionnaireModule,\n AppointmentConfirmationModule\n //AppBaseModule\n \n ],\n exports: [RescheduleComponent],\n declarations: [ \n RescheduleComponent\n ],\n providers: [BnNgIdleService]\n})\n\nexport class RescheduleModule { }\n\n","import { Routes } from '@angular/router';\n\n\nimport { RescheduleComponent } from './reschedule.component';\nexport const RescheduleRoutes: Routes = [\n {\n path: 'components',\n component: RescheduleComponent \n }\n];\n\n","import { Injectable } from '@angular/core';\nimport { map, mergeMap } from 'rxjs/operators';\nimport { HttpClient } from '@angular/common/http';\nimport { Observable, EMPTY, of, forkJoin } from 'rxjs';\nimport { catchError } from 'rxjs/operators';\n\nimport { SocoHttpService } from '@soco/http';\nimport { SocoConfigurationService } from '@soco/configuration';\n\nimport { ApiResult } from '@soco/core';\nimport { Sample } from '../sample/sample';\nimport { url } from 'inspector';\nimport { AmendOrder } from './reschedule-entities';\n\n@Injectable()\nexport class RescheduleService {\n\n public baseUrl = '/Reschedule/';\n public appDataBaseUrl = '/AppData/';\n public commonDataUrl = '/CommonData/';\n public account: any = {};\n //public params: string;\n\n\n constructor(private http: SocoHttpService, private ngHttp: HttpClient, private config: SocoConfigurationService) { }\n\n getOrderAttributes(urlCode: string) {\n return this.http.get({\n url: this.baseUrl + 'GetOrderAttributes/' + urlCode\n });\n }\n\n amendOrder(amendOrder: AmendOrder) {\n\n return this.http.post({\n url: this.baseUrl + 'AmendOrder',\n data: amendOrder,\n //alertId: alertId,\n shouldIgnoreInvalidResult: true,\n pleaseWaitTimeoutDuration: 500\n });\n }\n\n \n // Error call back for http requests.\n private handleError(error: any) {\n\n // const errMsg = (error.message) ? error.message :\n // error.status ? `${error.status} - ${error.statusText}` : 'Server error';\n // return Observable.throw(errMsg);\n }\n\n}\n","import { Component, Output, EventEmitter, OnInit } from '@angular/core';\nimport { FormGroup, FormBuilder } from '@angular/forms';\n\n//DSS Documentation on SocoFormService - http://tiny.sc/cgsocoformservice\nimport { SocoFormService } from '@soco/forms';\n//DSS Documentation on SocoHttpService - http://tiny.sc/cgSocoHttpService\nimport { SocoHttpService } from '@soco/http';\n//DSS Documentation on SocoModalService - http://tiny.sc/cgsocomodalservice\nimport { SocoModalService } from '@soco/modal';\n\nimport { SampleService } from '../sample.service';\nimport { Sample } from '../sample';\n\n@Component({\n selector: 'sample-add',\n templateUrl: 'sample-add.component.html'\n})\nexport class SampleAddComponent implements OnInit {\n alertId: string = 'alert-sample-add';\n modalId: string = 'modal-sample-add';\n form: FormGroup;\n @Output() sampleAddClosed = new EventEmitter();\n\n //DSS Documentation on SocoFormService - http://tiny.sc/cgsocoformservice\n //DSS Documentation on SocoModalService - http://tiny.sc/cgsocomodalservice\n constructor(private sampleService: SampleService, private socoFormService: SocoFormService, private http: SocoHttpService, private socoModalService: SocoModalService, private formBuilder: FormBuilder) { }\n\n ngOnInit(): void {\n this.form = this.formBuilder.group(new Sample());\n }\n\n //=============================================================================================================\n //EVENT HANDLERS\n //=============================================================================================================\n formSubmitted(sample: Sample): void {\n this.add(sample);\n }\n\n show(): void {\n //re-initialize a notification to clear any previous changes\n this.form = this.formBuilder.group(new Sample());\n\n //show the modal\n //DSS Documentation on SocoModalService - http://tiny.sc/cgsocomodalservice\n this.socoModalService.show({\n id: this.modalId,\n onClose: () => {\n this.sampleAddClosed.emit();\n }\n });\n }\n\n //=============================================================================================================\n //WEB METHODS\n //=============================================================================================================\n private add(sample: Sample): void {\n this.sampleService.add(sample, this.alertId).subscribe(result => {\n //DSS Documentation on SocoModalService - http://tiny.sc/cgsocomodalservice\n this.socoModalService.hide(); //hide the modal which will trigger the event emitter so the parent will refresh\n }, result => {\n //DSS Documentation on SocoFormService - http://tiny.sc/cgsocoformservice\n //DSS Documentation on Validation - http://tiny.sc/cgvalidation\n if (this.http.isInvalidResult(result)) {\n this.form = this.socoFormService.invalidateForm(this.form, result);\n }\n });\n }\n}\n","import { Component, Output, EventEmitter, OnInit } from '@angular/core';\nimport { FormGroup, FormBuilder } from '@angular/forms';\n\n//DSS Documentation on ApiResult - http://tiny.sc/cgapiresult\nimport { ApiResult } from '@soco/core';\n//DSS Documentation on SocoAlertService - http://tiny.sc/cgsocoalertservice\nimport { SocoAlertService } from '@soco/alert';\n//DSS Documentation on SocoFormService - http://tiny.sc/cgsocoformservice\nimport { SocoFormService } from '@soco/forms';\n//DSS Documentation on SocoHttpService - http://tiny.sc/cgSocoHttpService\nimport { SocoHttpService } from '@soco/http';\n//DSS Documentation on SocoModalService - http://tiny.sc/cgsocomodalservice\nimport { SocoModalService } from '@soco/modal';\n\nimport { SampleService } from '../sample.service';\nimport { Sample } from '../sample';\n\n@Component({\n selector: 'sample-edit',\n templateUrl: 'sample-edit.component.html'\n})\nexport class SampleEditComponent implements OnInit {\n alertId: string = 'alert-sample-edit';\n modalId: string = 'modal-sample-edit';\n form: FormGroup;\n @Output() sampleEditClosed = new EventEmitter();\n\n //DSS Documentation on SocoAlertService - http://tiny.sc/cgsocoalertservice\n //DSS Documentation on SocoFormService - http://tiny.sc/cgsocoformservice\n //DSS Documentation on SocoModalService - http://tiny.sc/cgsocomodalservice\n constructor(private sampleService: SampleService, private socoAlertService: SocoAlertService, private socoFormService: SocoFormService, private http: SocoHttpService, private socoModalService: SocoModalService, private formBuilder: FormBuilder) { }\n\n ngOnInit(): void {\n this.form = this.formBuilder.group(new Sample());\n }\n\n //=============================================================================================================\n //EVENT HANDLERS\n //=============================================================================================================\n formSubmitted(sample: Sample): void {\n this.update(sample);\n }\n\n deleteClicked(sample: Sample): void {\n this.del(sample.id);\n }\n\n show(id: number): void {\n this.getById(id);\n }\n\n //=============================================================================================================\n //WEB METHODS\n //=============================================================================================================\n private getById(id: number): void {\n this.sampleService.getById(id).subscribe(result => {\n //set the data on the form\n this.form = this.formBuilder.group(result.data);\n\n //show the modal\n //DSS Documentation on SocoModalService - http://tiny.sc/cgsocomodalservice\n this.socoModalService.show({\n id: this.modalId,\n onClose: () => {\n this.sampleEditClosed.emit();\n }\n });\n }, result => {\n // do nothing\n });\n }\n\n private update(sample: Sample): void {\n this.sampleService.update(sample, this.alertId).subscribe(result => {\n //DSS Documentation on SocoModalService - http://tiny.sc/cgsocomodalservice\n this.socoModalService.hide(); //hide the modal which will trigger the event emitter so the parent will refresh\n }, result => {\n //DSS Documentation on SocoFormService - http://tiny.sc/cgsocoformservice\n //DSS Documentation on Validation - http://tiny.sc/cgvalidation\n if (this.http.isInvalidResult(result)) {\n this.form = this.socoFormService.invalidateForm(this.form, result);\n }\n });\n }\n\n private del(id: number): void {\n //hide any alerts from the last time the form was submitted\n //DSS Documentation on SocoAlertService - http://tiny.sc/cgsocoalertservice\n this.socoAlertService.hide();\n\n //delete\n this.sampleService.del(id, this.alertId).subscribe(result => {\n //DSS Documentation on SocoModalService - http://tiny.sc/cgsocomodalservice\n this.socoModalService.hide(); //hide the modal which will trigger the event emitter so the parent will refresh\n });\n }\n}\n","import { Component, OnInit, ViewChild, OnDestroy } from '@angular/core';\nimport { Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\n\n//DSS Documentation on SocoConfigurationService - http://tiny.sc/cgsococonfigurationservice\nimport { SocoConfigurationService } from '@soco/configuration';\n//DSS Documentation on SocoModalService - http://tiny.sc/cgsocomodalservice\nimport { SocoModalService } from '@soco/modal';\n\nimport { Sample } from '../sample';\nimport { SampleAddComponent } from '../add/sample-add.component';\nimport { SampleEditComponent } from '../edit/sample-edit.component';\nimport { SampleService } from '../sample.service';\nimport { AuthorizationService } from '../../core/authorization.service';\n\n@Component({\n selector: 'sample-list',\n templateUrl: 'sample-list.component.html'\n})\nexport class SampleListComponent implements OnInit, OnDestroy {\n isLoading: boolean = true;\n samples: Sample[] = [];\n coolComplianceUrl: string = null;\n isSampleAdmin: boolean = false;\n\n private unsubscribe$ = new Subject();\n\n @ViewChild(SampleAddComponent, { static: false }) sampleAddComponent: SampleAddComponent;\n @ViewChild(SampleEditComponent, { static: false }) sampleEditComponent: SampleEditComponent;\n\n constructor(\n private sampleService: SampleService,\n private authorizationService: AuthorizationService,\n private config: SocoConfigurationService,\n private socoModalService: SocoModalService\n ) { }\n\n ngOnInit(): void {\n this.getAll();\n\n //query the authorization service to determine if the current user is a sample admin, if they are\n //not a SampleAdmin then we will hide the Add/Edit/Delete buttons in the sample grid\n this.authorizationService.isSampleAdmin()\n .pipe(takeUntil(this.unsubscribe$))\n .subscribe(isSampleAdmin => {\n this.isSampleAdmin = isSampleAdmin;\n });\n\n //just for demo purposes to show how we can get Settings marked as SafeForClient\n //DSS Documentation on SocoConfigurationService - http://tiny.sc/cgsococonfigurationservice\n let coolComplianceUrlSettingName = 'CoolComplianceUrl';\n this.config.getSetting(coolComplianceUrlSettingName)\n //.(takeUntil(this.unsubscribe$))\n //.subscribe(coolComplianceUrl => {\n // this.coolComplianceUrl = coolComplianceUrl;\n // console.log(coolComplianceUrlSettingName + '=' + this.coolComplianceUrl);\n //});\n }\n\n ngOnDestroy(): void {\n this.unsubscribe$.next();\n this.unsubscribe$.complete();\n }\n\n //=============================================================================================================\n //EVENT HANDLERS\n //=============================================================================================================\n add(): void {\n this.sampleAddComponent.show();\n }\n\n edit(id: number): void {\n this.sampleEditComponent.show(id);\n }\n\n delete(sample: Sample): void {\n //DSS Documentation on SocoModalService - http://tiny.sc/cgsocomodalservice\n this.socoModalService.confirm({\n title: 'Delete?',\n body: 'Are you sure you want to delete the sample?',\n dontCloseOnChoice: true,\n confirmationCallback: (confirmed: boolean) => {\n if (confirmed) {\n this.del(sample.id);\n }\n else {\n this.socoModalService.hide();\n }\n }\n });\n }\n\n sampleAddClosed(): void {\n this.getAll();\n }\n\n sampleEditClosed(): void {\n this.getAll();\n }\n\n //=============================================================================================================\n //WEB METHODS\n //=============================================================================================================\n private getAll(): void {\n this.isLoading = true;\n this.sampleService.getAll().subscribe(result => {\n this.isLoading = false;\n this.samples = result.data;\n });\n }\n\n private del(id: number): void {\n this.sampleService.del(id).subscribe(result => {\n //DSS Documentation on SocoModalService - http://tiny.sc/cgsocomodalservice\n this.socoModalService.hide();\n this.getAll();\n });\n }\n}\n","//angular modules\n//DSS Documentation on Angular - http://tiny.sc/cgangular\nimport { NgModule } from '@angular/core';\nimport { BrowserModule } from '@angular/platform-browser';\nimport { HttpClientModule } from '@angular/common/http';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\n\n//soco modules\nimport { SocoAlertModule } from '@soco/alert';\nimport { SocoCommonModule } from '@soco/common';\nimport { SocoConfigurationModule } from '@soco/configuration';\nimport { SocoCoreModule } from '@soco/core';\nimport { SocoFormsModule } from '@soco/forms';\nimport { SocoHttpModule } from '@soco/http';\nimport { SocoModalModule } from '@soco/modal';\n\n//kendo modules\n//Kendo Grid Documentation - https://www.telerik.com/kendo-angular-ui/components/grid/\n//import { GridModule } from '@progress/kendo-angular-grid';\n\n//modules\nimport { CoreModule } from '../core/core.module';\n\n//components\n//DSS Documentation on Angular Components - http://tiny.sc/cgangularcomponent\nimport { SampleAddComponent } from './add/sample-add.component';\nimport { SampleEditComponent } from './edit/sample-edit.component';\nimport { SampleListComponent } from './list/sample-list.component';\n\nconst MODULE_DIRECTIVES = [\n SampleAddComponent,\n SampleEditComponent,\n SampleListComponent\n];\n\n@NgModule({\n imports: [\n //angular modules\n BrowserModule,\n FormsModule,\n HttpClientModule,\n ReactiveFormsModule,\n\n //soco modules\n SocoAlertModule,\n SocoCommonModule,\n SocoConfigurationModule,\n SocoCoreModule,\n SocoFormsModule,\n SocoHttpModule,\n SocoModalModule,\n\n //kendo modules\n //GridModule,\n\n //app modules\n CoreModule\n ],\n exports: MODULE_DIRECTIVES,\n declarations: MODULE_DIRECTIVES\n})\nexport class SampleModule { }\n","import { Injectable } from '@angular/core';\nimport { Observable } from 'rxjs';\n\n//DSS Documentation on ApiResult - http://tiny.sc/cgapiresult\nimport { ApiResult } from '@soco/core';\n//DSS Documentation on SocoHttpService - http://tiny.sc/cgSocoHttpService\nimport { SocoHttpService } from '@soco/http';\n\nimport { Sample } from './sample';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class SampleService {\n private baseUrl = 'Sample';\n\n constructor(\n private http: SocoHttpService\n ) { }\n\n /**\n * Retrieves all samples\n * @param alertId If an error occurs and you want to use an alert other than the default alert, specify the alert id\n */\n getAll(alertId?: string): Observable> {\n //DSS Documentation on SocoHttpService - http://tiny.sc/cgSocoHttpService\n //DSS Documentation on handling exceptions - http://tiny.sc/cgclientexceptions\n return this.http.get({\n url: this.baseUrl,\n alertId: alertId\n });\n }\n\n /**\n * Retrieves the specified sample\n * @param id The id of the sample to be retrieved\n * @param alertId If an error occurs and you want to use an alert other than the default alert, specify the alert id\n */\n getById(id: number, alertId?: string): Observable> {\n //DSS Documentation on SocoHttpService - http://tiny.sc/cgSocoHttpService\n //DSS Documentation on handling exceptions - http://tiny.sc/cgclientexceptions\n return this.http.get({\n url: this.baseUrl + '/GetById',\n params: { id: id },\n alertId: alertId\n });\n }\n\n /**\n * Adds a new sample\n * @param sample The sample to be added\n * @param alertId If an error occurs and you want to use an alert other than the default alert, specify the alert id\n */\n add(sample: Sample, alertId?: string): Observable> {\n //DSS Documentation on SocoHttpService - http://tiny.sc/cgSocoHttpService\n //DSS Documentation on handling exceptions - http://tiny.sc/cgclientexceptions\n //DSS Documentation on Validation - http://tiny.sc/cgvalidation\n return this.http.post({\n url: this.baseUrl,\n data: sample,\n alertId: alertId,\n shouldIgnoreInvalidResult: true,\n pleaseWaitTimeoutDuration: 500\n });\n }\n\n /**\n * Updates the specified sample\n * @param sample The sample to be updated\n * @param alertId If an error occurs and you want to use an alert other than the default alert, specify the alert id\n */\n update(sample: Sample, alertId?: string): Observable> {\n //DSS Documentation on SocoHttpService - http://tiny.sc/cgSocoHttpService\n //DSS Documentation on handling exceptions - http://tiny.sc/cgclientexceptions\n //DSS Documentation on Validation - http://tiny.sc/cgvalidation\n return this.http.put({\n url: this.baseUrl,\n data: sample,\n alertId: alertId,\n shouldIgnoreInvalidResult: true,\n pleaseWaitTimeoutDuration: 500\n });\n }\n\n /**\n * Deletes the specified sample\n * @param id The id of the sample to be deleted\n * @param alertId If an error occurs and you want to use an alert other than the default alert, specify the alert id\n */\n del(id: number, alertId?: string): Observable> {\n //DSS Documentation on SocoHttpService - http://tiny.sc/cgSocoHttpService\n //DSS Documentation on handling exceptions - http://tiny.sc/cgclientexceptions\n //DSS Documentation on Validation - http://tiny.sc/cgvalidation\n return this.http.del({\n url: this.baseUrl,\n params: { id: id },\n alertId: alertId,\n pleaseWaitTimeoutDuration: 500\n });\n }\n}\n","//DSS Documentation on Validation - http://tiny.sc/cgvalidation\nexport class Sample {\n id: number = 0;\n description: string = '';\n lastModified: Date = new Date();\n}\n","export class ScheduleOrder {\n ldc: string = '';\n orderNumber: string = '';\n scheduleDate: string = '';\n scheduleWindow: string = '';\n fieldInstructions: string = '';\n premisesNumber: string = '';\n appointmentStart: string = '';\n appointmentEnd: string = '';\n personID: string = '';\n isKMIEligible: boolean = false;\n kmiTextOptIn: boolean = false;\n kmiPhoneNumber: string = '';\n}\n\nexport class AGLCScheduleOrder {\n accountNumber: string = '';\n customerServiceRemarks: string = '';\n entranceCode: string = '';\n entranceInstructions: string = '';\n fieldInstructions: string = '';\n gateCode: string = '';\n intersectingStreet: string = '';\n isMeterNotAccessible: boolean = false;\n kmiCallbackOptIn: boolean = false;\n kmiTextOptIn: boolean = false;\n marketerReferenceID: string = '';\n premiseNumber: string = '';\n requestorName: string = '';\n requestorPhone: string = '';\n safetyQuestionAnswer1: string = '';\n safetyQuestionAnswer2: string = '';\n safetyQuestionAnswer3: string = '';\n safetyQuestionAnswer4: string = '';\n safetyQuestionAnswer5: string = '';\n safetyQuestionAnswer6: string = '';\n scheduleDate: string = '';\n scheduleTime: string = '';\n scheduleWindow: string = '';\n serviceOrderType: string = '';\n serviceOrderTypeDescription: string = '';\n serviceOrderTypeReason: string = '';\n serviceOrderTypeReasonID: number = 0;\n specialInstructions: string = '';\n subdivisionName: string = '';\n}\n\nexport enum SchedulingElgibleOrders {\n Reconnect = \"RECONNECT\",\n ILS1 = \"ILSLETTR1\",\n ILS3 = \"ILSLETTR3\"\n}\n\nexport enum SchedulingElgibleLDCs {\n NG = \"NG\",\n VNG = \"VNG\",\n CGC = \"CGC\",\n AGLC = \"AGLC\"\n}\n\n//export class AccountDetails {\n// isValidAccount: boolean = false;\n// isOrderEligibleToSchedule: boolean = false; \n// orderNumber: string = ''; \n// premiseNumber: string = '';\n// personID: string = '';\n// ldc: string = ''; \n// serviceCenter: string = '';\n// billingAddress: string = ''; \n// premisesAddress: string = ''; \n// customerName: string = ''; \n// customerFirstName: string = '';\n// emailAddress: string = ''; \n// phoneNumber: string = ''; \n// premiseType: string = '';\n// isKMIEligible: boolean = false;\n// marketerName: string = '';\n// marketerPhoneNumber: string = '';\n//}\n\n//export class AppConfigurationData {\n// configurationKey: string = '';\n// configurationTitle: string = '';\n// configurationType: string = '';\n// configurationValue: string = '';\n// description: string = '';\n// ldc: string = '';\n//}\n","module.exports = \"agm-map {\\n height: 300px !important;\\n}\\n\\n.container{\\n background: white !important;\\n}\\n\\n.flex-container {\\n display: -ms-flexbox;\\n display: flex;\\n -ms-flex-wrap: wrap;\\n flex-wrap: wrap;\\n /* background-color: #cccfd2; */\\n}\\n\\n.flex-container>div {\\n width: 23%;\\n margin: 1%;\\n text-align: center;\\n /* line-height: 75px;\\n font-size: 30px; */\\n}\\n\\n@media only screen and (min-width: 760px) {\\n .h-400 {\\n min-height: 444px !important;\\n }\\n .flex-container{\\n width: 50%;\\n }\\n}\\n\\n.main {\\n /* background: linear-gradient(#fffcfc, #f6b6b6); */\\n /* Safari */\\n display: -ms-flexbox;\\n display: flex;\\n}\\n\\n.card{\\n border: 1px solid #d6cccc;\\n margin-bottom: 0% !important;\\n}\\n\\n.main div {\\n /* Safari 6.1+ */\\n -ms-flex: 1;\\n /* IE 10 */\\n flex: 1;\\n}\\n\\n.main i {\\n text-align: center;\\n display: block;\\n}\\n\\n.example-class{\\nbackground-color: aliceblue;\\n}\\n\\n.other-class{\\nbackground-color: aqua;\\n}\\n\\n.BerninaSanslight{\\n font-family: jaf-bernina-sans;\\n}\\n\\n.AdelleRegular\\n {\\n font-family: Adelle; \\n}\\n\\n.AdelleBold\\n {\\n font-family: Adelle;\\n font-weight: bold;\\n}\\n\\n.AdelleSmall {\\n font-family: Adelle;\\n font-size: 13px;\\n line-height: 1.6;\\n}\\n\\n.AdelleSmallStrongRed {\\n font-family: Adelle;\\n font-size: 12px;\\n line-height: 1.6;\\n color: #c23225;\\n}\\n\\nspan, p, strong, li{\\n font-family: jaf-bernina-sans;\\n color: black;\\n}\\n\\nb {\\n font-family: jaf-bernina-sans;\\n color: lightgray;\\n}\\n\\n.green {\\n font-size:50px;\\n color:rgb(37, 160, 37);\\n}\\n\\n.orange {\\n font-size:50px;\\n color:orange;\\n}\\n\\n.gray {\\nfont-size:50px;\\ncolor: gray;\\n}\\n\\n.gmnoprint {\\n display: none;\\n}\\n\\n.tooltip {\\n position: relative;\\n display: inline-block;\\n border-bottom: 1px dotted black;\\n}\\n\\n.tooltip .tooltiptext {\\n visibility: hidden;\\n width: 120px;\\n background-color: #555;\\n color: #fff;\\n text-align: center;\\n border-radius: 6px;\\n padding: 5px 0;\\n position: absolute;\\n z-index: 1;\\n bottom: 125%;\\n left: 50%;\\n margin-left: -60px;\\n opacity: 0;\\n transition: opacity 0.3s;\\n}\\n\\n.tooltip .tooltiptext::after {\\n content: \\\"\\\";\\n position: absolute;\\n top: 100%;\\n left: 50%;\\n margin-left: -5px;\\n border-width: 5px;\\n border-style: solid;\\n border-color: #555 transparent transparent transparent;\\n}\\n\\n.tooltip:hover .tooltiptext {\\n visibility: visible;\\n opacity: 1;\\n}\\n\\n.flex-container {\\n display: -ms-flexbox;\\n display: flex;\\n -ms-flex-wrap: nowrap;\\n flex-wrap: nowrap;\\n background-color: #eef8f9;\\n}\\n\\n.flex-container > div {\\n background-color: #eef8f9;\\n width: 100%;\\n margin: 10px;\\n text-align: center;\\n line-height: 75px;\\n font-size: 30px;\\n}\\n\\n.wizard-progress {\\n display: table;\\n width: 100%;\\n table-layout: fixed;\\n position: relative;\\n}\\n\\n.wizard-progress .step {\\n display: table-cell;\\n text-align: center;\\n vertical-align: top;\\n overflow: visible;\\n position: relative;\\n font-size: 14px;\\n color: white;\\n font-weight: bold;\\n}\\n\\n.wizard-progress .step:not(:last-child):before {\\n content: '';\\n display: block;\\n position: absolute;\\n left: 50%;\\n top: 32px;\\n background-color: #e0dddd;\\n height: 6px;\\n width: 100%;\\n margin-top: 0%;\\n}\\n\\n.wizard-progress .step .node {\\n display: inline-block;\\n /* border: 6px solid #fff; */\\n background-color: lightgray;\\n border-radius: 18px;\\n /* border-color: black; */\\n height: 25px;\\n width: 24px;\\n position: absolute;\\n top: 23px;\\n left: 50%;\\n margin-left: -18px;\\n margin-top: 0%;\\n}\\n\\n.wizard-progress .step.complete:before {\\n background-color: #b2d235;\\n margin-top: 0%;\\n}\\n\\n.wizard-progress .step.complete .node {\\n border-color: #b2d235;\\n background-color:#b2d235;\\n margin-top: 0%;\\n}\\n\\n.wizard-progress .step.active .node {\\n border-color: #b2d235;\\n background-color:#b2d235;\\n margin-top: 0%;\\n}\\n\\n.wizard-progress .step.in-progress:before {\\n background-color: #b2d235;\\n}\\n\\n.wizard-progress .step.in-progress .node {\\n border-color: #b2d235;\\n background-color:#b2d235;\\n}\\n\\n.wizard-progress .step.cgi:before {\\n background-color: red;\\n}\\n\\n.wizard-progress .step.cgi .node {\\n border-color: red;\\n background-color:red;\\n}\\n\\n.wizard-progress .step.cgi .node:before {\\n font-family: FontAwesome;\\n content: \\\"\\\\f00d\\\";\\n margin-bottom: 0% !important;\\n}\\n\\n.wizard-progress .step.complete .node:before {\\n font-family: FontAwesome;\\n content: \\\"\\\\f00c\\\";\\n margin-bottom: 1px !important;\\n}\\n\\n.wizard-progress .step.in-progress .node:before {\\n font-family: FontAwesome;\\n content: \\\"\\\\f00c\\\";\\n}\\n\\n.wizard-progress .step.active .node:before {\\n font-family: FontAwesome;\\n content: \\\"\\\\f00c\\\";\\n}\\n\\n.wizard-progress .step.in-progress:before {\\n margin-top: 0%;\\n background: #b2d235;\\n background-image: linear-gradient(to right, #b2d235 43%, lightgray 21%, #ec1c24 46%);\\n background: linear-gradient(to right, #b2d235 43%, lightgray 21%, #ec1c24 46%);\\n filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#07c', endColorstr='#fff',GradientType=1 );\\n}\\n\\n.wizard-progress .step.active:before {\\n background-image: linear-gradient(to right, #b2d235 50%, lightgray 4%, lightgray 46%);\\n background: linear-gradient(to right, #b2d235 43%, lightgray 21%, lightgray 46%);\\n background-color: black;\\n}\\n\\n.wizard-progress .step.active .node {\\n border-color: #b2d235;\\n}\\n\\n.wizard-progress .step.in-progress .node {\\n border-color: #b2d235;\\n}\\n\\n.navbarBG{\\n background-color: #003a5d !important;\\n}\\n\\n.logoHW{\\n height: 100%;\\n width: 50%;\\n}\\n\\n.NicorlogoHW{\\n height: 100%;\\n width: 50%;\\n}\\n\\n.orderReschedulingBG{\\n background-color: #00bcf1;\\n margin-bottom: 0%;\\n}\\n\\n.ldcStyle{\\n margin-left: 5%;\\n padding-bottom: 1%; \\n margin-bottom: 1%; \\n color: whitesmoke; \\n font-family: Adelle !important;\\n}\\n\\n.orderStatusColor{\\n margin-left: 5% ; \\n color: whitesmoke;\\n}\\n\\n.bold{\\n font-weight: bold\\n}\\n\\n.orderStatusSB{\\n background-color: #ffffff;\\n margin-top: -2%;\\n padding-top: 2%;\\n padding-bottom: 3%;\\n}\\n\\n.imgHW{\\n height: 100%;\\n width: 97%;\\n}\\n\\n.statusMessageBG{\\n color: #bdbdbd !important;\\n}\\n\\n.statusMessageIcon{\\n font-size:24px;\\n padding-left: 1%;\\n color:#ff9800 !important\\n}\\n\\n.cardTitleBG{\\n background-color: #ffffff!important;\\n}\\n\\n.mapTextIcon{\\n color: #bdbdbd !important;\\n}\\n\\n.padding-left-3{\\n padding-left: 3%;\\n}\\n\\n.appointmentSB{\\n padding-top: 0%;\\n padding-left: 2%;\\n color: black;\\n font-size: 13px;\\n}\\n\\n.reminderSB{\\n padding-top: 0%;\\n padding-left: 5%;\\n color: black;\\n font-size: 13px;\\n}\\n\\n.enrouteSB{\\n padding-top: 0%;\\n padding-right: 0%;\\n color: black;\\n font-size: 13px;\\n}\\n\\n.completeSB{\\n color: black;\\n padding-top: 0%;\\n padding-right: 12%;\\n font-size: 13px;\\n}\\n\\n.whiteBG{\\n background-color: #ffffff !important;\\n}\\n\\n.techImg{\\n border-radius: 50%;\\n margin-top: 5%;\\n margin-bottom: 3%;\\n margin-left: 9%;\\n}\\n\\n.techName{\\n text-align:center;\\n font-weight: 700;\\n font-family: Adelle;\\n color: black;\\n margin-left: 7%;\\n font-size: 20px;\\n}\\n\\n.eta{\\n color: black;\\n font-weight: 600;\\n font-family: Adelle;\\n font-size: 20px;\\n margin-left: 5%;\\n margin-top: 3%;\\n padding: 0 !important;\\n}\\n\\n.etaWindow{\\n color: black;\\n font-weight: 600;\\n font-family: Adelle;\\n font-size: 20px;\\n margin-left: 5%;\\n padding: 0 !important;\\n}\\n\\n.techWarning{\\n font-size:24px;\\n padding-right: 5px;\\n}\\n\\n.mapText{\\n font-size:24px;\\n padding-right: 5px; \\n color: #bdbdbd !important\\n}\\n\\n.pl-3{\\n padding-left: 3%;\\n}\\n\\n.marketerContact{\\n color: whitesmoke !important;\\n font-weight: bold;\\n font-size: 16px;\\n}\\n\\n.marginTop-7{\\n margin-top: 7% !important;\\n}\\n\\n.marginRight-5 {\\n margin-right: 5% !important;\\n}\\n\\n.techText{\\n width: 85%;\\n float: right;\\n}\\n\\n.mapInfo{\\n font-size:24px;\\n padding-right: 5px;\\n color: #bdbdbd !important\\n}\\n\\n.margin-left-5{\\n margin-left: 5%\\n}\\n\\n.cardPad{\\n padding-top: 3%;\\n padding-left: 3%;\\n padding-right: 3%;\\n background-color: #ffffff;\\n}\\n\\n.sticky{\\n position: fixed;\\n left: 0;\\n bottom: 0;\\n width: 100%;\\n background-color: red;\\n color: white;\\n text-align: center !important;\\n font-family: Adelle !important;\\n}\\n\\n.alertPad{\\n width: 87%;\\n float: right;\\n}\\n\\n.statusMsgWidth{\\n float: right;\\n width: 90%;\\n}\\n\\n.pt-3{\\n padding-top: 3% !important;\\n margin-bottom: 3% !important;\\n\\n}\\n\\n.pt-2{\\n padding-top: 2%;\\n}\\n\\ntextarea::-webkit-input-placeholder {\\n color: #757575 !important;\\n font-size: 13px !important;\\n font-family: Adelle !important;\\n}\\n\\ntextarea::-moz-placeholder { /* Firefox 19+ */\\n color: #757575 !important;\\n font-size: 13px !important;\\n font-family: Adelle !important;\\n}\\n\\ntextarea:-ms-input-placeholder {\\n color: #757575 !important;\\n font-size: 13px !important;\\n font-family: Adelle !important;\\n}\\n\\ntextarea::-ms-input-placeholder {\\n color: #757575 !important;\\n font-size: 13px !important;\\n font-family: Adelle !important;\\n}\\n\\ntextarea::placeholder {\\n color: #757575 !important;\\n font-size: 13px !important;\\n font-family: Adelle !important;\\n}\\n\\n.blocks .btn-default {\\n /*padding: 24px 10px;*/\\n \\n margin-top: 0px;\\n margin-bottom: 10px;\\n margin-left: 5px;\\n margin-right: 7px;\\n border-radius: 0;\\n border-color: #c23225;\\n color: #c23225; /*StrongRed*/\\n height: 60px !important;\\n width: 80px !important;\\n padding-left: 10px !important;\\n padding-right: 10px !important;\\n text-transform: none !important;\\n}\\n\\n.btnDisabled {\\n border-color: #757575 !important;\\n color: #757575 !important;\\n}\\n\\n.roundedTextArea {\\n width: 230px !important;\\n height: 120px !important;\\n border-radius: 10px !important;\\n border: 1px solid #757575;\\n font-family: jaf-bernina-sans;\\n padding: 15px;\\n}\\n\\n.checkMarkGreen {\\n width: 75px;\\n height: 75px;\\n background: white; \\n /*background: url(../../assets/images/checkmark-green-circle.png);*/\\n}\\n\\n.timeslotblocks .btn-default .btn-round { \\n margin-top: 0px;\\n margin-bottom: 10px;\\n /*margin-left: 5px;\\n margin-right: 7px;*/\\n border-radius: 0;\\n border-color: #c23225;\\n color: #c23225; /*StrongRed*/\\n height: 60px !important;\\n width: 80px !important;\\n padding-left: 10px !important;\\n padding-right: 10px !important;\\n text-transform: none !important;\\n}\\n\\n.btnTimeSlot {\\n /*color: #757575 !important;*/\\n /*margin: 3.5% 0% !important;*/\\n width: 185px !important;\\n height: 40px !important;\\n color: #c23225 !important;\\n border-color: #c23225 !important;\\n}\\n\\n.btnStrongRedConfirm {\\n border: 1px solid #c23225 !important;\\n /*border-radius:10px !important;*/\\n color: white !important;\\n background: #c23225 !important;\\n font-weight: bold !important;\\n width: 130px !important;\\n margin-left: 3%;\\n margin-bottom: 10px;\\n text-transform: none;\\n font-size: 14px;\\n}\\n\\n.btnStrongRedOrderStatus {\\n border: 1px solid #c23225 !important;\\n /*border-radius:10px !important;*/\\n color: white !important;\\n background: #c23225 !important;\\n font-weight: bold !important;\\n width: 240px !important;\\n margin-left: 3%;\\n}\\n\\n.btnFillStrongRed {\\n color: white !important;\\n background-color: #c23225 !important;\\n}\\n\\n.btnStrongRedNoFill {\\n border: 1px solid #c23225 !important;\\n /*border-radius:10px !important;*/\\n color: #c23225 !important;\\n background: white !important;\\n font-weight: bold !important;\\n width: 130px !important;\\n margin-left: 3%;\\n text-transform: none;\\n font-size: 14px; \\n}\\n\\n/* To hide Stepper Navigation*/\\n\\n::ng-deep .mat-horizontal-stepper-header {\\n pointer-events: none !important;\\n}\\n\\n.matHorizontalStepper {\\n margin-top: 5px !important;\\n box-shadow: none;\\n}\\n\\n.divAvailableDayTable {\\n display: table;\\n table-layout: fixed;\\n width: 100%;\\n margin-bottom: 0px;\\n}\\n\\n.divAvailableDay {\\n width: 100% !important;\\n overflow-x: scroll;\\n white-space: nowrap !important;\\n display:inline-block; /* To apply given width to available day button */\\n}\\n\\n.divAvailableDayOuter {\\n padding: 1%;\\n display: table-cell !important;\\n width: 76%;\\n}\\n\\n.divTimeSlot {\\n margin-left: 0px;\\n overflow-y: auto !important;\\n height: 200px;\\n}\\n\\n.btnAvailableDayDivArrow {\\n -webkit-appearance: none;\\n background: transparent;\\n border: none; \\n outline: none;\\n background-repeat: no-repeat;\\n cursor: pointer;\\n width: 100%;\\n padding: 1px !important;\\n}\\n\\n.divAvailableDayArrow {\\n display: table-cell !important;\\n width: 12%;\\n vertical-align: middle; \\n padding-bottom:10px;\\n}\\n\\n.matArrowButtonActive {\\n color: #c23225;\\n font-size: 36px;\\n}\\n\\n.matArrowButtonInActive {\\n color: #808080;\\n font-size: 36px;\\n}\\n\\n.confirmSpinnerColor ::ng-deep .mat-progress-spinner circle, .mat-spinner circle {\\n stroke: #ff9800 !important; \\n}\\n\\n:host ::ng-deep .mat-horizontal-content-container {\\n padding: 0 !important;\\n}\\n\\n.card, .mat-stepper-horizontal {\\n margin-top: 0px !important;\\n}\\n\\n.confirmSpinnerCenter {\\n position: absolute;\\n top: 50%;\\n left: 50%;\\n -webkit-transform: translateX(-50%) translateY(-50%);\\n transform: translateX(-50%) translateY(-50%);\\n}\\n\\n.confirmSpinnerOverlay {\\n height: 100%;\\n width: 100%;\\n background-color: rgba(0, 0, 0, 0.286);\\n z-index: 10;\\n top: 0;\\n left: 0;\\n position: absolute;\\n}\\n\\n.btnMoreDates {\\n color: #c23225 !important;\\n background-color: white !important;\\n width: 60px !important;\\n padding: 5px !important;\\n font-size: 10px;\\n}\\n\\n.btnPopOverAlert {\\n border-left: none;\\n border-top: none;\\n border-right: none;\\n border-bottom: 1px dotted #c23225;\\n text-decoration: none;\\n background: transparent;\\n color: #c23225;\\n font-family: Adelle;\\n cursor:pointer;\\n}\\n\\n/* Popover Header */\\n\\n.popover-title {\\n background-color: #c23225;\\n color: #FFFFFF;\\n font-size: 10px;\\n text-align: center;\\n font-family: Adelle;\\n}\\n\\n/* Popover Body */\\n\\n.popover-content {\\n background-color: #FFFFFF;\\n color: black;\\n padding: 10px;\\n}\\n\\n/* Popover Arrow */\\n\\n.arrow {\\n border-right-color: #c23225 !important;\\n}\\n\\n.popover-header {\\n background-color: #c23225 !important;\\n color: #FFFFFF !important;\\n font-size: 10px !important;\\n text-align: center !important;\\n font-family: Adelle !important;\\n}\\n\\n/* Popover Body */\\n\\n.popover-body {\\n background-color: #FFFFFF !important;\\n color: black !important;\\n padding: 10px !important;\\n}\\n\\n/* Popover Arrow */\\n\\n.arrow {\\n border-right-color: #c23225 !important;\\n}\\n\\n.btnStrongRedVerify {\\n border: 1px solid #c23225 !important;\\n /*border-radius:10px !important;*/\\n color: white !important;\\n background: #c23225 !important;\\n font-weight: bold !important;\\n width: 200px !important;\\n margin-left: 0%;\\n margin-bottom: 5px;\\n text-transform: none;\\n font-size:14px;\\n}\\n\\n.btnStrongRedBackToValidate {\\n border: 1px solid #c23225 !important;\\n /*border-radius:10px !important;*/\\n color: white !important;\\n background: #c23225 !important;\\n font-weight: bold !important;\\n width: auto !important;\\n margin-left: 0%;\\n margin-bottom: 5px;\\n text-transform: none;\\n font-size: 14px;\\n}\\n\\n.divAVScroll {\\n /*width: 200px;\\n height: 400px;\\n background: red;*/\\n overflow-x: scroll;\\n}\\n\\n.divAVScroll::-webkit-scrollbar {\\n /*width: 10px;*/\\n background-color: #F5F5F5;\\n height: 5px;\\n}\\n\\n.divAVScroll::-webkit-scrollbar-track {\\n -webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.3);\\n background-color: #F5F5F5;\\n}\\n\\n.divAVScroll::-webkit-scrollbar-thumb {\\n background-color: #d96a60;\\n border: 2px solid #d5857e;\\n}\\n\\n.btnStrongRedNoFillLong {\\n border: 1px solid #c23225 !important;\\n /*border-radius:10px !important;*/\\n color: #c23225 !important;\\n background: white !important;\\n font-weight: bold !important;\\n width: 180px !important;\\n margin-left: 3%;\\n text-transform: none !important;\\n font-size: 14px;\\n}\\n\\n.btnStrongRedFillLong {\\n border: 1px solid #c23225 !important;\\n /*border-radius:10px !important;*/\\n color: white !important;\\n background: #c23225 !important;\\n font-weight: bold !important;\\n width: 180px !important;\\n margin-left: 3%;\\n /*margin-bottom: 10px;*/\\n text-transform: none !important;\\n font-size: 14px;\\n}\\n\\n.divTimeslotScroll {\\n /*width: 200px;\\n height: 400px;\\n background: red;*/\\n overflow-y: scroll;\\n}\\n\\n.divTimeslotScroll::-webkit-scrollbar {\\n /*width: 10px;*/\\n background-color: #F5F5F5;\\n width: 5px;\\n }\\n\\n.divTimeslotScroll::-webkit-scrollbar-track {\\n -webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.3);\\n background-color: #F5F5F5;\\n }\\n\\n.divTimeslotScroll::-webkit-scrollbar-thumb {\\n background-color: #d96a60;\\n border: 2px solid #d5857e;\\n }\\n\\n.phoneIcon {\\n /*width: 18px;\\n height: 12px;\\n background: url(../../assets/images/icon_Phone.png);*/\\n height: 20px;\\n width: 14px;\\n margin: 5px !important;\\n}\\n\\n.form-control:focus {\\n border-color: #FF0000;\\n /*box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(255, 0, 0, 0.6);*/\\n box-shadow: inset 0 1px 1px #00bcf1, 0 1px 4px #00bcf1;\\n}\\n\\n.divKMIPhone {\\n border: 1px solid gray;\\n width: 230px;\\n display: -ms-flexbox;\\n display: flex;\\n border-radius: 5px;\\n /*margin-left: 2%;*/\\n margin-bottom: 10px;\\n height: 25pt;\\n}\\n\\n.divLightCyanAlert{\\n background-color: lightcyan;\\n display: block;\\n padding: 5px 10px; \\n /*margin: 0px 10px;*/\\n margin-bottom: 5px;\\n line-height: 1.2em;\\n}\\n\\n.accountVerificationContainer {\\n padding-right: 15px;\\n padding-left: 15px;\\n margin-right: auto;\\n margin-left: auto;\\n}\\n\\n.accountVerificationInput {\\n border: 1px solid #ccc;\\n background-image: none;\\n border-radius: 4px;\\n padding-left: 10px;\\n /*margin-left: 15px;*/\\n width: 90%;\\n}\\n\\n.phoneNumberInput {\\n outline: none;\\n border: none;\\n font-family: 'Source Sans Pro',sans-serif;\\n font-size: 15px;\\n width: 150px !important;\\n}\\n\\n.SansSerifRegular {\\n /*font-family: 'Source Sans Pro',sans-serif;*/\\n font-family: -apple-system,system-ui,BlinkMacSystemFont,\\\"Segoe UI\\\",Roboto,\\\"Helvetica Neue\\\",Arial,sans-serif;\\n font-size: 1em;\\n font-weight: normal;\\n}\\n\\n.SansSerifSmall {\\n /*font-family: 'Source Sans Pro',sans-serif;*/\\n font-family: -apple-system,system-ui,BlinkMacSystemFont,\\\"Segoe UI\\\",Roboto,\\\"Helvetica Neue\\\",Arial,sans-serif;\\n font-size: 0.8em;\\n font-weight: normal;\\n}\\n\\n.radioInput {\\n height: 1.5em;\\n width: 1.5em;\\n border: 0px;\\n vertical-align: middle\\n}\\n\\n.radioInputLabel {\\n height: 1.5em;\\n line-height: 1.5em;\\n vertical-align: sub;\\n padding-left: 0.5em;\\n}\\n\\n.radioInputLabelCombo {\\n vertical-align: middle;\\n width: 16em;\\n margin-bottom: 0px\\n}\\n\\n.playIcon {\\n height: 2.5em;\\n float: left;\\n /*width: 3em;*/\\n margin-right: 0.5em !important;\\n}\\n\\n.apptConfirmationMsg {\\n margin-left: 2%;\\n margin-right: 2%;\\n margin-top: 2%;\\n font-size: 15px;\\n text-align: center\\n}\\n\\n.processStopMsg {\\n margin: 0.5em 1.3em;\\n font-weight: bold;\\n font-size: 1.1em;\\n line-height: 1.5;\\n}\\n\\n.italicAdelleSmall {\\n margin-left: 5%;\\n font-family: Adelle;\\n font-size: 11px;\\n font-style: italic;\\n line-height: 0\\n}\\n\\n.phoneValidationError{\\n margin-left:2%;\\n -webkit-box-decoration-break:clone;\\n box-decoration-break:clone;\\n}\\n\\n.divReminderMessageByEC {\\n width: 90%;\\n display: inline-block;\\n font-size: 14px;\\n text-align: left;\\n}\\n\\n.textInput {\\n width: 230px !important;\\n height: 25pt !important;\\n border-radius: 5px !important;\\n border: 1px solid #757575;\\n font-family: jaf-bernina-sans;\\n padding: 3px 10px;\\n}\\n\\n.acntInfoInput {\\n border: 1px solid #ccc !important;\\n background-image: none !important;\\n border-radius: 4px !important;\\n padding-left: 10px !important;\\n width: 90% !important;\\n}\\n\\n.confirmDiv {\\n padding-bottom: 5%;\\n -ms-flex-align: center;\\n align-items: center;\\n border: none;\\n box-shadow: none\\n}\\n\\n.errorDiv {\\n padding-right: 20px !important;\\n padding-left: 20px !important;\\n margin-top: 10%;\\n}\\n\\n.errorInnerDiv{\\n padding: 15% 10%;\\n}\\n\\ninput::-webkit-input-placeholder {\\n color: #757575 !important;\\n font-size: 12px !important;\\n font-family: Adelle !important;\\n}\\n\\ninput::-moz-placeholder { /* Firefox 19+ */\\n color: #757575 !important;\\n font-size: 12px !important;\\n font-family: Adelle !important;\\n}\\n\\ninput:-ms-input-placeholder {\\n color: #757575 !important;\\n font-size: 12px !important;\\n font-family: Adelle !important;\\n}\\n\\ninput::-ms-input-placeholder {\\n color: #757575 !important;\\n font-size: 12px !important;\\n font-family: Adelle !important;\\n}\\n\\ninput::placeholder {\\n color: #757575 !important;\\n font-size: 12px !important;\\n font-family: Adelle !important;\\n}\\n\\nstrong{\\n font-weight:bold !important;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvc2NoZWR1bGUvc2NoZWR1bGUuY29tcG9uZW50LmNzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtFQUNFLHdCQUF3QjtBQUMxQjs7QUFFQTtFQUNFLDRCQUE0QjtBQUM5Qjs7QUFFQTtFQUNFLG9CQUFhO0VBQWIsYUFBYTtFQUNiLG1CQUFlO01BQWYsZUFBZTtFQUNmLCtCQUErQjtBQUNqQzs7QUFFQTtFQUNFLFVBQVU7RUFDVixVQUFVO0VBQ1Ysa0JBQWtCO0VBQ2xCO3NCQUNvQjtBQUN0Qjs7QUFFQTtFQUNFO0lBQ0UsNEJBQTRCO0VBQzlCO0VBQ0E7SUFDRSxVQUFVO0VBQ1o7QUFDRjs7QUFFQTtFQUVFLG1EQUFtRDtFQUNuRCxXQUFXO0VBQ1gsb0JBQWE7RUFBYixhQUFhO0FBQ2Y7O0FBRUE7RUFDRSx5QkFBeUI7RUFDekIsNEJBQTRCO0FBQzlCOztBQUVBO0VBRUUsZ0JBQWdCO0VBQ2hCLFdBQVc7RUFDWCxVQUFVO0VBQ1YsT0FBTztBQUNUOztBQUVBO0VBQ0Usa0JBQWtCO0VBQ2xCLGNBQWM7QUFDaEI7O0FBRUE7QUFDQSwyQkFBMkI7QUFDM0I7O0FBRUE7QUFDQSxzQkFBc0I7QUFDdEI7O0FBRUE7RUFDRSw2QkFBNkI7QUFDL0I7O0FBRUE7O0VBRUUsbUJBQW1CO0FBQ3JCOztBQUVBOztFQUVFLG1CQUFtQjtFQUNuQixpQkFBaUI7QUFDbkI7O0FBRUE7SUFDSSxtQkFBbUI7SUFDbkIsZUFBZTtJQUNmLGdCQUFnQjtBQUNwQjs7QUFDQTtJQUNJLG1CQUFtQjtJQUNuQixlQUFlO0lBQ2YsZ0JBQWdCO0lBQ2hCLGNBQWM7QUFDbEI7O0FBRUE7RUFDRSw2QkFBNkI7RUFDN0IsWUFBWTtBQUNkOztBQUVBO0VBQ0UsNkJBQTZCO0VBQzdCLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGNBQWM7RUFDZCxzQkFBc0I7QUFDeEI7O0FBRUE7RUFDRSxjQUFjO0VBQ2QsWUFBWTtBQUNkOztBQUVBO0FBQ0EsY0FBYztBQUNkLFdBQVc7QUFD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O0lBQzFCLDhCQUE4QjtBQUNsQzs7QUFFQTtJQUNJLHlCQUF5QjtJQUN6QiwwQkFBMEI7SUFDMUIsOEJBQThCO0FBQ2xDOztBQUVBO0lBQ0kseUJBQXlCO0lBQ3pCLDBCQUEwQjtJQUMxQiw4QkFBOEI7QUFDbEM7O0FBSkE7SUFDSSx5QkFBeUI7SUFDekIsMEJBQTBCO0lBQzFCLDhCQUE4QjtBQUNsQzs7QUFDQTtJQUNJLDJCQUEyQjtBQUMvQiIsImZpbGUiOiJzcmMvYXBwL3NjaGVkdWxlL3NjaGVkdWxlLmNvbXBvbmVudC5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyJhZ20tbWFwIHtcbiAgaGVpZ2h0OiAzMDBweCAhaW1wb3J0YW50O1xufVxuXG4uY29udGFpbmVye1xuICBiYWNrZ3JvdW5kOiB3aGl0ZSAhaW1wb3J0YW50O1xufVxuXG4uZmxleC1jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIC8qIGJhY2tncm91bmQtY29sb3I6ICNjY2NmZDI7ICovXG59XG5cbi5mbGV4LWNvbnRhaW5lcj5kaXYge1xuICB3aWR0aDogMjMlO1xuICBtYXJnaW46IDElO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIC8qIGxpbmUtaGVpZ2h0OiA3NXB4O1xuICAgIGZvbnQtc2l6ZTogMzBweDsgKi9cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjBweCkge1xuICAuaC00MDAge1xuICAgIG1pbi1oZWlnaHQ6IDQ0NHB4ICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmZsZXgtY29udGFpbmVye1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cbn1cblxuLm1haW4ge1xuICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gIC8qIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgjZmZmY2ZjLCAjZjZiNmI2KTsgKi9cbiAgLyogU2FmYXJpICovXG4gIGRpc3BsYXk6IGZsZXg7XG59XG5cbi5jYXJke1xuICBib3JkZXI6IDFweCBzb2xpZCAjZDZjY2NjO1xuICBtYXJnaW4tYm90dG9tOiAwJSAhaW1wb3J0YW50O1xufVxuXG4ubWFpbiBkaXYge1xuICAtd2Via2l0LWZsZXg6IDE7XG4gIC8qIFNhZmFyaSA2LjErICovXG4gIC1tcy1mbGV4OiAxO1xuICAvKiBJRSAxMCAqL1xuICBmbGV4OiAxO1xufVxuXG4ubWFpbiBpIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmV4YW1wbGUtY2xhc3N7XG5iYWNrZ3JvdW5kLWNvbG9yOiBhbGljZWJsdWU7XG59XG5cbi5vdGhlci1jbGFzc3tcbmJhY2tncm91bmQtY29sb3I6IGFxdWE7XG59XG5cbi5CZXJuaW5hU2Fuc2xpZ2h0e1xuICBmb250LWZhbWlseTogamFmLWJlcm5pbmEtc2Fucztcbn1cblxuLkFkZWxsZVJlZ3VsYXJcbiB7XG4gIGZvbnQtZmFtaWx5OiBBZGVsbGU7ICBcbn1cblxuLkFkZWxsZUJvbGRcbiB7XG4gIGZvbnQtZmFtaWx5OiBBZGVsbGU7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4uQWRlbGxlU21hbGwge1xuICAgIGZvbnQtZmFtaWx5OiBBZGVsbGU7XG4gICAgZm9udC1zaXplOiAxM3B4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjY7XG59XG4uQWRlbGxlU21hbGxTdHJvbmdSZWQge1xuICAgIGZvbnQtZmFtaWx5OiBBZGVsbGU7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjY7XG4gICAgY29sb3I6ICNjMjMyMjU7XG59XG5cbnNwYW4sIHAsIHN0cm9uZywgbGl7XG4gIGZvbnQtZmFtaWx5OiBqYWYtYmVybmluYS1zYW5zO1xuICBjb2xvcjogYmxhY2s7XG59XG5cbmIge1xuICBmb250LWZhbWlseTogamFmLWJlcm5pbmEtc2FucztcbiAgY29sb3I6IGxpZ2h0Z3JheTtcbn1cblxuLmdyZWVuIHtcbiAgZm9udC1zaXplOjUwcHg7XG4gIGNvbG9yOnJnYigzNywgMTYwLCAzNyk7XG59XG5cbi5vcmFuZ2Uge1xuICBmb250LXNpemU6NTBweDtcbiAgY29sb3I6b3JhbmdlO1xufVxuXG4uZ3JheSB7XG5mb250LXNpemU6NTBweDtcbmNvbG9yOiBncmF5O1xufVxuXG4uZ21ub3ByaW50IHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLnRvb2x0aXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYm9yZGVyLWJvdHRvbTogMXB4IGRvdHRlZCBibGFjaztcbn1cblxuLnRvb2x0aXAgLnRvb2x0aXB0ZXh0IHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB3aWR0aDogMTIwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1NTU7XG4gIGNvbG9yOiAjZmZmO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgcGFkZGluZzogNXB4IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTtcbiAgYm90dG9tOiAxMjUlO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtNjBweDtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzO1xufVxuXG4udG9vbHRpcCAudG9vbHRpcHRleHQ6OmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDEwMCU7XG4gIGxlZnQ6IDUwJTtcbiAgbWFyZ2luLWxlZnQ6IC01cHg7XG4gIGJvcmRlci13aWR0aDogNXB4O1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItY29sb3I6ICM1NTUgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG59XG5cbi50b29sdGlwOmhvdmVyIC50b29sdGlwdGV4dCB7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5mbGV4LWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogbm93cmFwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVmOGY5O1xufVxuXG4uZmxleC1jb250YWluZXIgPiBkaXYge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVmOGY5O1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAxMHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGxpbmUtaGVpZ2h0OiA3NXB4O1xuICBmb250LXNpemU6IDMwcHg7XG59XG5cbi53aXphcmQtcHJvZ3Jlc3Mge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgd2lkdGg6IDEwMCU7XG4gIHRhYmxlLWxheW91dDogZml4ZWQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi53aXphcmQtcHJvZ3Jlc3MgLnN0ZXAge1xuICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgY29sb3I6IHdoaXRlO1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cbi53aXphcmQtcHJvZ3Jlc3MgLnN0ZXA6bm90KDpsYXN0LWNoaWxkKTpiZWZvcmUge1xuICBjb250ZW50OiAnJztcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogNTAlO1xuICB0b3A6IDMycHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlMGRkZGQ7XG4gIGhlaWdodDogNnB4O1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLXRvcDogMCU7XG59XG4ud2l6YXJkLXByb2dyZXNzIC5zdGVwIC5ub2RlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAvKiBib3JkZXI6IDZweCBzb2xpZCAjZmZmOyAqL1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGdyYXk7XG4gIGJvcmRlci1yYWRpdXM6IDE4cHg7XG4gIC8qIGJvcmRlci1jb2xvcjogIGJsYWNrOyAqL1xuICBoZWlnaHQ6IDI1cHg7XG4gIHdpZHRoOiAyNHB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMjNweDtcbiAgbGVmdDogNTAlO1xuICBtYXJnaW4tbGVmdDogLTE4cHg7XG4gIG1hcmdpbi10b3A6IDAlO1xufVxuLndpemFyZC1wcm9ncmVzcyAuc3RlcC5jb21wbGV0ZTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYjJkMjM1O1xuICBtYXJnaW4tdG9wOiAwJTtcbn1cbi53aXphcmQtcHJvZ3Jlc3MgLnN0ZXAuY29tcGxldGUgLm5vZGUge1xuICBib3JkZXItY29sb3I6ICNiMmQyMzU7XG4gIGJhY2tncm91bmQtY29sb3I6I2IyZDIzNTtcbiAgbWFyZ2luLXRvcDogMCU7XG59XG4ud2l6YXJkLXByb2dyZXNzIC5zdGVwLmFjdGl2ZSAubm9kZSB7XG4gIGJvcmRlci1jb2xvcjogI2IyZDIzNTtcbiAgYmFja2dyb3VuZC1jb2xvcjojYjJkMjM1O1xuICBtYXJnaW4tdG9wOiAwJTtcbn1cblxuLndpemFyZC1wcm9ncmVzcyAuc3RlcC5pbi1wcm9ncmVzczpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYjJkMjM1O1xufVxuLndpemFyZC1wcm9ncmVzcyAuc3RlcC5pbi1wcm9ncmVzcyAubm9kZSB7XG4gIGJvcmRlci1jb2xvcjogI2IyZDIzNTtcbiAgYmFja2dyb3VuZC1jb2xvcjojYjJkMjM1O1xufVxuLndpemFyZC1wcm9ncmVzcyAuc3RlcC5jZ2k6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmVkO1xufVxuLndpemFyZC1wcm9ncmVzcyAuc3RlcC5jZ2kgLm5vZGUge1xuICBib3JkZXItY29sb3I6IHJlZDtcbiAgYmFja2dyb3VuZC1jb2xvcjpyZWQ7XG59XG4ud2l6YXJkLXByb2dyZXNzIC5zdGVwLmNnaSAubm9kZTpiZWZvcmUge1xuICBmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XG4gIGNvbnRlbnQ6IFwiXFxmMDBkXCI7XG4gIG1hcmdpbi1ib3R0b206IDAlICFpbXBvcnRhbnQ7XG59XG4ud2l6YXJkLXByb2dyZXNzIC5zdGVwLmNvbXBsZXRlIC5ub2RlOmJlZm9yZSB7XG4gIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcbiAgY29udGVudDogXCJcXGYwMGNcIjtcbiAgbWFyZ2luLWJvdHRvbTogMXB4ICFpbXBvcnRhbnQ7XG59XG4ud2l6YXJkLXByb2dyZXNzIC5zdGVwLmluLXByb2dyZXNzIC5ub2RlOmJlZm9yZSB7XG4gIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcbiAgY29udGVudDogXCJcXGYwMGNcIjtcbn1cbi53aXphcmQtcHJvZ3Jlc3MgLnN0ZXAuYWN0aXZlIC5ub2RlOmJlZm9yZSB7XG4gIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcbiAgY29udGVudDogXCJcXGYwMGNcIjtcbn1cbi53aXphcmQtcHJvZ3Jlc3MgLnN0ZXAuaW4tcHJvZ3Jlc3M6YmVmb3JlIHtcbiAgbWFyZ2luLXRvcDogMCU7XG4gIGJhY2tncm91bmQ6ICNiMmQyMzU7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgI2IyZDIzNSA0MyUsIGxpZ2h0Z3JheSAyMSUsICNlYzFjMjQgNDYlKTtcbiAgYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICNiMmQyMzUgMCUsIGxpZ2h0Z3JheSAyMSUsICNlYzFjMjQgNDYlKTtcbiAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICNiMmQyMzUgMCUsIGxpZ2h0Z3JheSAyMSUsICNlYzFjMjQgNDYlKTtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAjYjJkMjM1IDQzJSwgbGlnaHRncmF5IDIxJSwgI2VjMWMyNCA0NiUpO1xuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudCggICAgIHN0YXJ0Q29sb3JzdHI9JyMwN2MnLCBlbmRDb2xvcnN0cj0nI2ZmZicsR3JhZGllbnRUeXBlPTEgKTtcbn1cbi53aXphcmQtcHJvZ3Jlc3MgLnN0ZXAuYWN0aXZlOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgI2IyZDIzNSA1MCUsIGxpZ2h0Z3JheSA0JSwgbGlnaHRncmF5IDQ2JSk7XG4gIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAjYjJkMjM1IDAlLCBsaWdodGdyYXkgMjElLCBsaWdodGdyYXkgNDYlKTtcbiAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICNiMmQyMzUgMCUsIGxpZ2h0Z3JheSAyMSUsIGxpZ2h0Z3JheSA0NiUpO1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICNiMmQyMzUgNDMlLCBsaWdodGdyYXkgMjElLCBsaWdodGdyYXkgNDYlKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogYmxhY2s7XG59XG4ud2l6YXJkLXByb2dyZXNzIC5zdGVwLmFjdGl2ZSAubm9kZSB7XG4gIGJvcmRlci1jb2xvcjogI2IyZDIzNTtcbn1cbi53aXphcmQtcHJvZ3Jlc3MgLnN0ZXAuaW4tcHJvZ3Jlc3MgLm5vZGUge1xuICBib3JkZXItY29sb3I6ICNiMmQyMzU7XG59XG4ubmF2YmFyQkd7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDNhNWQgIWltcG9ydGFudDtcbn1cblxuLmxvZ29IV3tcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogNTAlO1xufVxuXG4uTmljb3Jsb2dvSFd7XG4gIGhlaWdodDogMTAwJTtcbiAgIHdpZHRoOiA1MCU7XG59XG5cbi5vcmRlclJlc2NoZWR1bGluZ0JHe1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBiY2YxO1xuICBtYXJnaW4tYm90dG9tOiAwJTtcbn1cblxuLmxkY1N0eWxle1xuICBtYXJnaW4tbGVmdDogNSU7XG4gIHBhZGRpbmctYm90dG9tOiAxJTsgXG4gIG1hcmdpbi1ib3R0b206IDElOyBcbiAgY29sb3I6IHdoaXRlc21va2U7IFxuICBmb250LWZhbWlseTogQWRlbGxlICFpbXBvcnRhbnQ7XG59XG5cbi5vcmRlclN0YXR1c0NvbG9ye1xuICBtYXJnaW4tbGVmdDogNSUgOyBcbiAgY29sb3I6IHdoaXRlc21va2U7XG59XG5cbi5ib2xke1xuICBmb250LXdlaWdodDogYm9sZFxufVxuXG4ub3JkZXJTdGF0dXNTQntcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgbWFyZ2luLXRvcDogLTIlO1xuICBwYWRkaW5nLXRvcDogMiU7XG4gIHBhZGRpbmctYm90dG9tOiAzJTtcbn1cblxuLmltZ0hXe1xuICBoZWlnaHQ6IDEwMCU7XG4gICB3aWR0aDogOTclO1xufVxuXG5cblxuLnN0YXR1c01lc3NhZ2VCR3tcbiAgY29sb3I6ICNiZGJkYmQgIWltcG9ydGFudDtcbn1cblxuLnN0YXR1c01lc3NhZ2VJY29ue1xuICBmb250LXNpemU6MjRweDtcbiAgcGFkZGluZy1sZWZ0OiAxJTtcbiAgY29sb3I6I2ZmOTgwMCAhaW1wb3J0YW50XG59XG5cbi5jYXJkVGl0bGVCR3tcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZiFpbXBvcnRhbnQ7XG59XG5cbi5tYXBUZXh0SWNvbntcbiAgY29sb3I6ICNiZGJkYmQgIWltcG9ydGFudDtcbn1cblxuLnBhZGRpbmctbGVmdC0ze1xuICBwYWRkaW5nLWxlZnQ6IDMlO1xufVxuXG4uYXBwb2ludG1lbnRTQntcbiAgcGFkZGluZy10b3A6IDAlO1xuICBwYWRkaW5nLWxlZnQ6IDIlO1xuICBjb2xvcjogYmxhY2s7XG4gIGZvbnQtc2l6ZTogMTNweDtcbn1cblxuLnJlbWluZGVyU0J7XG4gIHBhZGRpbmctdG9wOiAwJTtcbiAgcGFkZGluZy1sZWZ0OiA1JTtcbiAgY29sb3I6IGJsYWNrO1xuICBmb250LXNpemU6IDEzcHg7XG59XG5cbi5lbnJvdXRlU0J7XG4gIHBhZGRpbmctdG9wOiAwJTtcbiAgcGFkZGluZy1yaWdodDogMCU7XG4gIGNvbG9yOiBibGFjaztcbiAgZm9udC1zaXplOiAxM3B4O1xufVxuXG4uY29tcGxldGVTQntcbiAgY29sb3I6IGJsYWNrO1xuICBwYWRkaW5nLXRvcDogMCU7XG4gIHBhZGRpbmctcmlnaHQ6IDEyJTtcbiAgZm9udC1zaXplOiAxM3B4O1xufVxuXG4ud2hpdGVCR3tcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZiAhaW1wb3J0YW50O1xufVxuXG4udGVjaEltZ3tcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBtYXJnaW4tdG9wOiA1JTtcbiAgbWFyZ2luLWJvdHRvbTogMyU7XG4gIG1hcmdpbi1sZWZ0OiA5JTtcbn1cblxuLnRlY2hOYW1le1xuICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZm9udC1mYW1pbHk6IEFkZWxsZTtcbiAgY29sb3I6IGJsYWNrO1xuICBtYXJnaW4tbGVmdDogNyU7XG4gIGZvbnQtc2l6ZTogMjBweDtcbn1cblxuLmV0YXtcbiAgY29sb3I6IGJsYWNrO1xuICBmb250LXdlaWdodDogNjAwO1xuICBmb250LWZhbWlseTogQWRlbGxlO1xuICBmb250LXNpemU6IDIwcHg7XG4gIG1hcmdpbi1sZWZ0OiA1JTtcbiAgbWFyZ2luLXRvcDogMyU7XG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbn1cblxuLmV0YVdpbmRvd3tcbiAgY29sb3I6IGJsYWNrO1xuICBmb250LXdlaWdodDogNjAwO1xuICBmb250LWZhbWlseTogQWRlbGxlO1xuICBmb250LXNpemU6IDIwcHg7XG4gIG1hcmdpbi1sZWZ0OiA1JTtcbiAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xufVxuXG4udGVjaFdhcm5pbmd7XG4gIGZvbnQtc2l6ZToyNHB4O1xuICBwYWRkaW5nLXJpZ2h0OiA1cHg7XG59XG5cbi5tYXBUZXh0e1xuICBmb250LXNpemU6MjRweDtcbiAgcGFkZGluZy1yaWdodDogNXB4OyBcbiAgY29sb3I6ICNiZGJkYmQgIWltcG9ydGFudFxufVxuXG4ucGwtM3tcbiAgcGFkZGluZy1sZWZ0OiAzJTtcbn1cblxuXG4ubWFya2V0ZXJDb250YWN0e1xuICBjb2xvcjogd2hpdGVzbW9rZSAhaW1wb3J0YW50O1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgZm9udC1zaXplOiAxNnB4O1xufVxuXG5cbi5tYXJnaW5Ub3AtN3tcbiAgbWFyZ2luLXRvcDogNyUgIWltcG9ydGFudDtcbn1cbi5tYXJnaW5SaWdodC01IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDUlICFpbXBvcnRhbnQ7XG59XG5cbi50ZWNoVGV4dHtcbiAgd2lkdGg6IDg1JTtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG4ubWFwSW5mb3tcbiAgZm9udC1zaXplOjI0cHg7XG4gIHBhZGRpbmctcmlnaHQ6IDVweDtcbiAgY29sb3I6ICNiZGJkYmQgIWltcG9ydGFudFxufVxuXG4ubWFyZ2luLWxlZnQtNXtcbiAgbWFyZ2luLWxlZnQ6IDUlXG59XG5cbi5jYXJkUGFke1xuICBwYWRkaW5nLXRvcDogMyU7XG4gIHBhZGRpbmctbGVmdDogMyU7XG4gIHBhZGRpbmctcmlnaHQ6IDMlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xufVxuXG4uc3RpY2t5e1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGxlZnQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6IHJlZDtcbiAgY29sb3I6IHdoaXRlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgZm9udC1mYW1pbHk6IEFkZWxsZSAhaW1wb3J0YW50O1xufVxuXG4uYWxlcnRQYWR7XG4gIHdpZHRoOiA4NyU7XG4gIGZsb2F0OiByaWdodDtcbn1cblxuLnN0YXR1c01zZ1dpZHRoe1xuICBmbG9hdDogcmlnaHQ7XG4gIHdpZHRoOiA5MCU7XG59XG5cbi5wdC0ze1xuICBwYWRkaW5nLXRvcDogMyUgIWltcG9ydGFudDtcbiAgbWFyZ2luLWJvdHRvbTogMyUgIWltcG9ydGFudDtcblxufVxuXG4ucHQtMntcbiAgcGFkZGluZy10b3A6IDIlO1xufVxuXG50ZXh0YXJlYTo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICM3NTc1NzUgIWltcG9ydGFudDtcbiAgICBmb250LXNpemU6IDEzcHggIWltcG9ydGFudDtcbiAgICBmb250LWZhbWlseTogQWRlbGxlICFpbXBvcnRhbnQ7XG59XG5cbnRleHRhcmVhOi1tb3otcGxhY2Vob2xkZXIgeyAvKiBGaXJlZm94IDE4LSAqL1xuICAgIGNvbG9yOiAjNzU3NTc1ICFpbXBvcnRhbnQ7XG4gICAgZm9udC1zaXplOiAxM3B4ICFpbXBvcnRhbnQ7XG4gICAgZm9udC1mYW1pbHk6IEFkZWxsZSAhaW1wb3J0YW50O1xufVxuXG50ZXh0YXJlYTo6LW1vei1wbGFjZWhvbGRlciB7IC8qIEZpcmVmb3ggMTkrICovXG4gICAgY29sb3I6ICM3NTc1NzUgIWltcG9ydGFudDtcbiAgICBmb250LXNpemU6IDEzcHggIWltcG9ydGFudDtcbiAgICBmb250LWZhbWlseTogQWRlbGxlICFpbXBvcnRhbnQ7XG59XG5cbnRleHRhcmVhOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICM3NTc1NzUgIWltcG9ydGFudDtcbiAgICBmb250LXNpemU6IDEzcHggIWltcG9ydGFudDtcbiAgICBmb250LWZhbWlseTogQWRlbGxlICFpbXBvcnRhbnQ7XG59XG5cbnRleHRhcmVhOjpwbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICM3NTc1NzUgIWltcG9ydGFudDtcbiAgICBmb250LXNpemU6IDEzcHggIWltcG9ydGFudDtcbiAgICBmb250LWZhbWlseTogQWRlbGxlICFpbXBvcnRhbnQ7XG59XG5cbi5ibG9ja3MgLmJ0bi1kZWZhdWx0IHtcbiAgICAvKnBhZGRpbmc6IDI0cHggMTBweDsqL1xuICAgXG4gICAgbWFyZ2luLXRvcDogMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDdweDtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGJvcmRlci1jb2xvcjogI2MyMzIyNTtcbiAgICBjb2xvcjogI2MyMzIyNTsgLypTdHJvbmdSZWQqL1xuICAgIGhlaWdodDogNjBweCAhaW1wb3J0YW50O1xuICAgIHdpZHRoOiA4MHB4ICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1sZWZ0OiAxMHB4ICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1yaWdodDogMTBweCAhaW1wb3J0YW50O1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lICFpbXBvcnRhbnQ7XG59XG4uYnRuRGlzYWJsZWQge1xuICAgIGJvcmRlci1jb2xvcjogIzc1NzU3NSAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAjNzU3NTc1ICFpbXBvcnRhbnQ7XG59XG4ucm91bmRlZFRleHRBcmVhIHtcbiAgICB3aWR0aDogMjMwcHggIWltcG9ydGFudDtcbiAgICBoZWlnaHQ6IDEyMHB4ICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLXJhZGl1czogMTBweCAhaW1wb3J0YW50O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICM3NTc1NzU7XG4gICAgZm9udC1mYW1pbHk6IGphZi1iZXJuaW5hLXNhbnM7XG4gICAgcGFkZGluZzogMTVweDtcbn1cbi5jaGVja01hcmtHcmVlbiB7XG4gICAgd2lkdGg6IDc1cHg7XG4gICAgaGVpZ2h0OiA3NXB4O1xuICAgIGJhY2tncm91bmQ6IHdoaXRlOyAgICBcbiAgICAvKmJhY2tncm91bmQ6IHVybCguLi8uLi9hc3NldHMvaW1hZ2VzL2NoZWNrbWFyay1ncmVlbi1jaXJjbGUucG5nKTsqL1xufVxuXG4udGltZXNsb3RibG9ja3MgLmJ0bi1kZWZhdWx0IC5idG4tcm91bmQgeyAgICBcbiAgICBtYXJnaW4tdG9wOiAwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAvKm1hcmdpbi1sZWZ0OiA1cHg7XG4gICAgbWFyZ2luLXJpZ2h0OiA3cHg7Ki9cbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGJvcmRlci1jb2xvcjogI2MyMzIyNTtcbiAgICBjb2xvcjogI2MyMzIyNTsgLypTdHJvbmdSZWQqL1xuICAgIGhlaWdodDogNjBweCAhaW1wb3J0YW50O1xuICAgIHdpZHRoOiA4MHB4ICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1sZWZ0OiAxMHB4ICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1yaWdodDogMTBweCAhaW1wb3J0YW50O1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5idG5UaW1lU2xvdCB7XG4gICAgLypjb2xvcjogIzc1NzU3NSAhaW1wb3J0YW50OyovXG4gICAgLyptYXJnaW46IDMuNSUgMCUgIWltcG9ydGFudDsqL1xuICAgIHdpZHRoOiAxODVweCAhaW1wb3J0YW50O1xuICAgIGhlaWdodDogNDBweCAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAjYzIzMjI1ICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLWNvbG9yOiAjYzIzMjI1ICFpbXBvcnRhbnQ7XG59XG5cbi5idG5TdHJvbmdSZWRDb25maXJtIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjYzIzMjI1ICFpbXBvcnRhbnQ7XG4gICAgLypib3JkZXItcmFkaXVzOjEwcHggIWltcG9ydGFudDsqL1xuICAgIGNvbG9yOiB3aGl0ZSAhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQ6ICNjMjMyMjUgIWltcG9ydGFudDtcbiAgICBmb250LXdlaWdodDogYm9sZCAhaW1wb3J0YW50O1xuICAgIHdpZHRoOiAxMzBweCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1sZWZ0OiAzJTtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbn1cbi5idG5TdHJvbmdSZWRPcmRlclN0YXR1cyB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2MyMzIyNSAhaW1wb3J0YW50O1xuICAgIC8qYm9yZGVyLXJhZGl1czoxMHB4ICFpbXBvcnRhbnQ7Ki9cbiAgICBjb2xvcjogd2hpdGUgIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kOiAjYzIzMjI1ICFpbXBvcnRhbnQ7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQgIWltcG9ydGFudDtcbiAgICB3aWR0aDogMjQwcHggIWltcG9ydGFudDtcbiAgICBtYXJnaW4tbGVmdDogMyU7XG59XG4uYnRuRmlsbFN0cm9uZ1JlZCB7XG4gICAgY29sb3I6IHdoaXRlICFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2MyMzIyNSAhaW1wb3J0YW50O1xufVxuXG4uYnRuU3Ryb25nUmVkTm9GaWxsIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjYzIzMjI1ICFpbXBvcnRhbnQ7XG4gICAgLypib3JkZXItcmFkaXVzOjEwcHggIWltcG9ydGFudDsqL1xuICAgIGNvbG9yOiAjYzIzMjI1ICFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZDogd2hpdGUgIWltcG9ydGFudDtcbiAgICBmb250LXdlaWdodDogYm9sZCAhaW1wb3J0YW50O1xuICAgIHdpZHRoOiAxMzBweCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1sZWZ0OiAzJTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICBmb250LXNpemU6IDE0cHg7ICAgIFxufVxuXG4vKiBUbyBoaWRlIFN0ZXBwZXIgTmF2aWdhdGlvbiovXG46Om5nLWRlZXAgLm1hdC1ob3Jpem9udGFsLXN0ZXBwZXItaGVhZGVyIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZSAhaW1wb3J0YW50O1xufVxuLm1hdEhvcml6b250YWxTdGVwcGVyIHtcbiAgICBtYXJnaW4tdG9wOiA1cHggIWltcG9ydGFudDtcbiAgICBib3gtc2hhZG93OiBub25lO1xufVxuXG4uZGl2QXZhaWxhYmxlRGF5VGFibGUge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIHRhYmxlLWxheW91dDogZml4ZWQ7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogMHB4O1xufVxuXG4uZGl2QXZhaWxhYmxlRGF5IHtcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgIG92ZXJmbG93LXg6IHNjcm9sbDtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwICFpbXBvcnRhbnQ7XG4gICAgZGlzcGxheTppbmxpbmUtYmxvY2s7IC8qIFRvIGFwcGx5IGdpdmVuIHdpZHRoIHRvIGF2YWlsYWJsZSBkYXkgYnV0dG9uICovXG59XG5cbi5kaXZBdmFpbGFibGVEYXlPdXRlciB7XG4gICAgcGFkZGluZzogMSU7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50O1xuICAgIHdpZHRoOiAgNzYlO1xufVxuXG4uZGl2VGltZVNsb3Qge1xuICAgIG1hcmdpbi1sZWZ0OiAwcHg7XG4gICAgb3ZlcmZsb3cteTogYXV0byAhaW1wb3J0YW50O1xuICAgIGhlaWdodDogMjAwcHg7XG59XG5cbi5idG5BdmFpbGFibGVEYXlEaXZBcnJvdyB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogbm9uZTsgICAgXG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiAxcHggIWltcG9ydGFudDtcbn1cblxuLmRpdkF2YWlsYWJsZURheUFycm93IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7XG4gICAgd2lkdGg6IDEyJTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyAgICBcbiAgICBwYWRkaW5nLWJvdHRvbToxMHB4O1xufVxuXG4ubWF0QXJyb3dCdXR0b25BY3RpdmUge1xuICAgIGNvbG9yOiAjYzIzMjI1O1xuICAgIGZvbnQtc2l6ZTogMzZweDtcbn1cbi5tYXRBcnJvd0J1dHRvbkluQWN0aXZlIHtcbiAgICBjb2xvcjogIzgwODA4MDtcbiAgICBmb250LXNpemU6IDM2cHg7XG59XG5cbi5jb25maXJtU3Bpbm5lckNvbG9yIDo6bmctZGVlcCAubWF0LXByb2dyZXNzLXNwaW5uZXIgY2lyY2xlLCAubWF0LXNwaW5uZXIgY2lyY2xlIHtcbiAgICBzdHJva2U6ICNmZjk4MDAgIWltcG9ydGFudDsgICAgXG59XG5cbjpob3N0IDo6bmctZGVlcCAubWF0LWhvcml6b250YWwtY29udGVudC1jb250YWluZXIge1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbn1cblxuLmNhcmQsIC5tYXQtc3RlcHBlci1ob3Jpem9udGFsIHtcbiAgICBtYXJnaW4tdG9wOiAwcHggIWltcG9ydGFudDtcbn1cblxuLmNvbmZpcm1TcGlubmVyQ2VudGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgbGVmdDogNTAlO1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgdHJhbnNsYXRlWSgtNTAlKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgdHJhbnNsYXRlWSgtNTAlKTtcbn1cbi5jb25maXJtU3Bpbm5lck92ZXJsYXkge1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMjg2KTtcbiAgICB6LWluZGV4OiAxMDtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG59XG5cbi5idG5Nb3JlRGF0ZXMge1xuICAgIGNvbG9yOiAjYzIzMjI1ICFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGUgIWltcG9ydGFudDtcbiAgICB3aWR0aDogNjBweCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDVweCAhaW1wb3J0YW50O1xuICAgIGZvbnQtc2l6ZTogMTBweDtcbn1cblxuLmJ0blBvcE92ZXJBbGVydCB7XG4gICAgYm9yZGVyLWxlZnQ6IG5vbmU7XG4gICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgICBib3JkZXItcmlnaHQ6IG5vbmU7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IGRvdHRlZCAjYzIzMjI1O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBjb2xvcjogI2MyMzIyNTtcbiAgICBmb250LWZhbWlseTogQWRlbGxlO1xuICAgIGN1cnNvcjpwb2ludGVyO1xufVxuLyogUG9wb3ZlciBIZWFkZXIgKi9cbi5wb3BvdmVyLXRpdGxlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzIzMjI1O1xuICAgIGNvbG9yOiAjRkZGRkZGO1xuICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZm9udC1mYW1pbHk6IEFkZWxsZTtcbn1cbi8qIFBvcG92ZXIgQm9keSAqL1xuLnBvcG92ZXItY29udGVudCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRjtcbiAgICBjb2xvcjogYmxhY2s7XG4gICAgcGFkZGluZzogMTBweDtcbn1cbi8qIFBvcG92ZXIgQXJyb3cgKi9cbi5hcnJvdyB7XG4gICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAjYzIzMjI1ICFpbXBvcnRhbnQ7XG59XG5cblxuLnBvcG92ZXItaGVhZGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzIzMjI1ICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6ICNGRkZGRkYgIWltcG9ydGFudDtcbiAgICBmb250LXNpemU6IDEwcHggIWltcG9ydGFudDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgICBmb250LWZhbWlseTogQWRlbGxlICFpbXBvcnRhbnQ7XG59XG4vKiBQb3BvdmVyIEJvZHkgKi9cbi5wb3BvdmVyLWJvZHkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNGRkZGRkYgIWltcG9ydGFudDtcbiAgICBjb2xvcjogYmxhY2sgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiAxMHB4ICFpbXBvcnRhbnQ7XG59XG4vKiBQb3BvdmVyIEFycm93ICovXG4uYXJyb3cge1xuICAgIGJvcmRlci1yaWdodC1jb2xvcjogI2MyMzIyNSAhaW1wb3J0YW50O1xufVxuXG4uYnRuU3Ryb25nUmVkVmVyaWZ5IHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjYzIzMjI1ICFpbXBvcnRhbnQ7XG4gICAgLypib3JkZXItcmFkaXVzOjEwcHggIWltcG9ydGFudDsqL1xuICAgIGNvbG9yOiB3aGl0ZSAhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQ6ICNjMjMyMjUgIWltcG9ydGFudDtcbiAgICBmb250LXdlaWdodDogYm9sZCAhaW1wb3J0YW50O1xuICAgIHdpZHRoOiAyMDBweCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1sZWZ0OiAwJTtcbiAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgZm9udC1zaXplOjE0cHg7XG59XG5cbi5idG5TdHJvbmdSZWRCYWNrVG9WYWxpZGF0ZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2MyMzIyNSAhaW1wb3J0YW50O1xuICAgIC8qYm9yZGVyLXJhZGl1czoxMHB4ICFpbXBvcnRhbnQ7Ki9cbiAgICBjb2xvcjogd2hpdGUgIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kOiAjYzIzMjI1ICFpbXBvcnRhbnQ7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQgIWltcG9ydGFudDtcbiAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1sZWZ0OiAwJTtcbiAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgZm9udC1zaXplOiAxNHB4O1xufVxuXG4uZGl2QVZTY3JvbGwge1xuICAgIC8qd2lkdGg6IDIwMHB4O1xuICAgIGhlaWdodDogNDAwcHg7XG4gICAgYmFja2dyb3VuZDogcmVkOyovXG4gICAgb3ZlcmZsb3cteDogc2Nyb2xsO1xufVxuXG4uZGl2QVZTY3JvbGw6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgICAvKndpZHRoOiAxMHB4OyovXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0Y1RjVGNTtcbiAgICBoZWlnaHQ6IDVweDtcbn1cblxuLmRpdkFWU2Nyb2xsOjotd2Via2l0LXNjcm9sbGJhci10cmFjayB7XG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiBpbnNldCAwIDAgNnB4IHJnYmEoMCwwLDAsMC4zKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjVGNUY1O1xufVxuXG4uZGl2QVZTY3JvbGw6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDk2YTYwO1xuICAgIGJvcmRlcjogMnB4IHNvbGlkICNkNTg1N2U7XG59XG5cbi5idG5TdHJvbmdSZWROb0ZpbGxMb25nIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjYzIzMjI1ICFpbXBvcnRhbnQ7XG4gICAgLypib3JkZXItcmFkaXVzOjEwcHggIWltcG9ydGFudDsqL1xuICAgIGNvbG9yOiAjYzIzMjI1ICFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZDogd2hpdGUgIWltcG9ydGFudDtcbiAgICBmb250LXdlaWdodDogYm9sZCAhaW1wb3J0YW50O1xuICAgIHdpZHRoOiAxODBweCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1sZWZ0OiAzJTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZSAhaW1wb3J0YW50O1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbn1cblxuLmJ0blN0cm9uZ1JlZEZpbGxMb25nIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjYzIzMjI1ICFpbXBvcnRhbnQ7XG4gICAgLypib3JkZXItcmFkaXVzOjEwcHggIWltcG9ydGFudDsqL1xuICAgIGNvbG9yOiB3aGl0ZSAhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQ6ICNjMjMyMjUgIWltcG9ydGFudDtcbiAgICBmb250LXdlaWdodDogYm9sZCAhaW1wb3J0YW50O1xuICAgIHdpZHRoOiAxODBweCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1sZWZ0OiAzJTtcbiAgICAvKm1hcmdpbi1ib3R0b206IDEwcHg7Ki9cbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZSAhaW1wb3J0YW50O1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbn1cblxuLmRpdlRpbWVzbG90U2Nyb2xsIHtcbiAgICAvKndpZHRoOiAyMDBweDtcbiAgICBoZWlnaHQ6IDQwMHB4O1xuICAgIGJhY2tncm91bmQ6IHJlZDsqL1xuICAgIG92ZXJmbG93LXk6IHNjcm9sbDtcbn1cblxuICAgIC5kaXZUaW1lc2xvdFNjcm9sbDo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICAgICAgICAvKndpZHRoOiAxMHB4OyovXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNGNUY1RjU7XG4gICAgICAgIHdpZHRoOiA1cHg7XG4gICAgfVxuXG4gICAgLmRpdlRpbWVzbG90U2Nyb2xsOjotd2Via2l0LXNjcm9sbGJhci10cmFjayB7XG4gICAgICAgIC13ZWJraXQtYm94LXNoYWRvdzogaW5zZXQgMCAwIDZweCByZ2JhKDAsMCwwLDAuMyk7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNGNUY1RjU7XG4gICAgfVxuXG4gICAgLmRpdlRpbWVzbG90U2Nyb2xsOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNkOTZhNjA7XG4gICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICNkNTg1N2U7XG4gICAgfVxuXG4ucGhvbmVJY29uIHtcbiAgICAvKndpZHRoOiAxOHB4O1xuICAgIGhlaWdodDogMTJweDtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vLi4vYXNzZXRzL2ltYWdlcy9pY29uX1Bob25lLnBuZyk7Ki9cbiAgICBoZWlnaHQ6IDIwcHg7XG4gICAgd2lkdGg6IDE0cHg7XG4gICAgbWFyZ2luOiA1cHggIWltcG9ydGFudDtcbn1cblxuLmZvcm0tY29udHJvbDpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiAjRkYwMDAwO1xuICAgIC8qYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgMC4wNzUpLCAwIDAgOHB4IHJnYmEoMjU1LCAwLCAwLCAwLjYpOyovXG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMXB4ICMwMGJjZjEsIDAgMXB4IDRweCAjMDBiY2YxO1xufVxuXG4uZGl2S01JUGhvbmUge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIGdyYXk7XG4gICAgd2lkdGg6IDIzMHB4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgIC8qbWFyZ2luLWxlZnQ6IDIlOyovXG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICBoZWlnaHQ6IDI1cHQ7XG59XG4uZGl2TGlnaHRDeWFuQWxlcnR7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogbGlnaHRjeWFuO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IDVweCAxMHB4OyAgICBcbiAgICAvKm1hcmdpbjogMHB4IDEwcHg7Ki9cbiAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgbGluZS1oZWlnaHQ6IDEuMmVtO1xufVxuLmFjY291bnRWZXJpZmljYXRpb25Db250YWluZXIge1xuICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gICAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbn1cbi5hY2NvdW50VmVyaWZpY2F0aW9uSW5wdXQge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNjY2M7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICAgIC8qbWFyZ2luLWxlZnQ6IDE1cHg7Ki9cbiAgICB3aWR0aDogOTAlO1xufSBcbi5waG9uZU51bWJlcklucHV0IHtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBmb250LWZhbWlseTogJ1NvdXJjZSBTYW5zIFBybycsc2Fucy1zZXJpZjtcbiAgICBmb250LXNpemU6IDE1cHg7XG4gICAgd2lkdGg6IDE1MHB4ICFpbXBvcnRhbnQ7XG59XG4uU2Fuc1NlcmlmUmVndWxhciB7XG4gICAgLypmb250LWZhbWlseTogJ1NvdXJjZSBTYW5zIFBybycsc2Fucy1zZXJpZjsqL1xuICAgIGZvbnQtZmFtaWx5OiAtYXBwbGUtc3lzdGVtLHN5c3RlbS11aSxCbGlua01hY1N5c3RlbUZvbnQsXCJTZWdvZSBVSVwiLFJvYm90byxcIkhlbHZldGljYSBOZXVlXCIsQXJpYWwsc2Fucy1zZXJpZjtcbiAgICBmb250LXNpemU6IDFlbTtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xufVxuXG4uU2Fuc1NlcmlmU21hbGwge1xuICAgIC8qZm9udC1mYW1pbHk6ICdTb3VyY2UgU2FucyBQcm8nLHNhbnMtc2VyaWY7Ki9cbiAgICBmb250LWZhbWlseTogLWFwcGxlLXN5c3RlbSxzeXN0ZW0tdWksQmxpbmtNYWNTeXN0ZW1Gb250LFwiU2Vnb2UgVUlcIixSb2JvdG8sXCJIZWx2ZXRpY2EgTmV1ZVwiLEFyaWFsLHNhbnMtc2VyaWY7XG4gICAgZm9udC1zaXplOiAwLjhlbTtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xufVxuLnJhZGlvSW5wdXQge1xuICAgIGhlaWdodDogMS41ZW07XG4gICAgd2lkdGg6IDEuNWVtO1xuICAgIGJvcmRlcjogMHB4O1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGVcbn1cbi5yYWRpb0lucHV0TGFiZWwge1xuICAgIGhlaWdodDogMS41ZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuNWVtO1xuICAgIHZlcnRpY2FsLWFsaWduOiBzdWI7XG4gICAgcGFkZGluZy1sZWZ0OiAwLjVlbTtcbn1cbi5yYWRpb0lucHV0TGFiZWxDb21ibyB7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB3aWR0aDogMTZlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwcHhcbn1cbi5wbGF5SWNvbiB7XG4gICAgaGVpZ2h0OiAyLjVlbTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICAvKndpZHRoOiAzZW07Ki9cbiAgICBtYXJnaW4tcmlnaHQ6IDAuNWVtICFpbXBvcnRhbnQ7XG59XG4uYXBwdENvbmZpcm1hdGlvbk1zZyB7XG4gICAgbWFyZ2luLWxlZnQ6IDIlO1xuICAgIG1hcmdpbi1yaWdodDogMiU7XG4gICAgbWFyZ2luLXRvcDogMiU7XG4gICAgZm9udC1zaXplOiAxNXB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlclxufVxuLnByb2Nlc3NTdG9wTXNnIHtcbiAgICBtYXJnaW46IDAuNWVtIDEuM2VtO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGZvbnQtc2l6ZTogMS4xZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcbn1cbi5pdGFsaWNBZGVsbGVTbWFsbCB7XG4gICAgbWFyZ2luLWxlZnQ6IDUlO1xuICAgIGZvbnQtZmFtaWx5OiBBZGVsbGU7XG4gICAgZm9udC1zaXplOiAxMXB4O1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICBsaW5lLWhlaWdodDogMFxufVxuLnBob25lVmFsaWRhdGlvbkVycm9ye1xuICAgIG1hcmdpbi1sZWZ0OjIlO1xuICAgIGJveC1kZWNvcmF0aW9uLWJyZWFrOmNsb25lO1xufVxuLmRpdlJlbWluZGVyTWVzc2FnZUJ5RUMge1xuICAgIHdpZHRoOiA5MCU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuLnRleHRJbnB1dCB7XG4gICAgd2lkdGg6IDIzMHB4ICFpbXBvcnRhbnQ7XG4gICAgaGVpZ2h0OiAyNXB0ICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLXJhZGl1czogNXB4ICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzc1NzU3NTtcbiAgICBmb250LWZhbWlseTogamFmLWJlcm5pbmEtc2FucztcbiAgICBwYWRkaW5nOiAzcHggMTBweDtcbn1cbi5hY250SW5mb0lucHV0IHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjY2NjICFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZSAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1yYWRpdXM6IDRweCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctbGVmdDogMTBweCAhaW1wb3J0YW50O1xuICAgIHdpZHRoOiA5MCUgIWltcG9ydGFudDtcbn1cbi5jb25maXJtRGl2IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNSU7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYm94LXNoYWRvdzogbm9uZVxufVxuLmVycm9yRGl2IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4ICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1sZWZ0OiAyMHB4ICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLXRvcDogMTAlO1xufVxuLmVycm9ySW5uZXJEaXZ7XG4gICAgcGFkZGluZzogMTUlIDEwJTtcbn1cblxuaW5wdXQ6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAjNzU3NTc1ICFpbXBvcnRhbnQ7XG4gICAgZm9udC1zaXplOiAxMnB4ICFpbXBvcnRhbnQ7XG4gICAgZm9udC1mYW1pbHk6IEFkZWxsZSAhaW1wb3J0YW50O1xufVxuXG5pbnB1dDotbW96LXBsYWNlaG9sZGVyIHsgLyogRmlyZWZveCAxOC0gKi9cbiAgICBjb2xvcjogIzc1NzU3NSAhaW1wb3J0YW50O1xuICAgIGZvbnQtc2l6ZTogMTJweCAhaW1wb3J0YW50O1xuICAgIGZvbnQtZmFtaWx5OiBBZGVsbGUgIWltcG9ydGFudDtcbn1cblxuaW5wdXQ6Oi1tb3otcGxhY2Vob2xkZXIgeyAvKiBGaXJlZm94IDE5KyAqL1xuICAgIGNvbG9yOiAjNzU3NTc1ICFpbXBvcnRhbnQ7XG4gICAgZm9udC1zaXplOiAxMnB4ICFpbXBvcnRhbnQ7XG4gICAgZm9udC1mYW1pbHk6IEFkZWxsZSAhaW1wb3J0YW50O1xufVxuXG5pbnB1dDotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAjNzU3NTc1ICFpbXBvcnRhbnQ7XG4gICAgZm9udC1zaXplOiAxMnB4ICFpbXBvcnRhbnQ7XG4gICAgZm9udC1mYW1pbHk6IEFkZWxsZSAhaW1wb3J0YW50O1xufVxuXG5pbnB1dDo6cGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAjNzU3NTc1ICFpbXBvcnRhbnQ7XG4gICAgZm9udC1zaXplOiAxMnB4ICFpbXBvcnRhbnQ7XG4gICAgZm9udC1mYW1pbHk6IEFkZWxsZSAhaW1wb3J0YW50O1xufVxuc3Ryb25ne1xuICAgIGZvbnQtd2VpZ2h0OmJvbGQgIWltcG9ydGFudDtcbn0iXX0= */\"","module.exports = \":host ::ng-deep .popover {\\n background-color: red;\\n color: #fff; }\\n\\n:host ::ng-deep .popover.arrow:after {\\n border-top-color: red; }\\n\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvc2NoZWR1bGUvRTpcXEFnZW50c1xcQnVpbGRcXF93b3JrXFw1MTM4XFxzXFxXZWJcXENsaWVudEFwcC9zcmNcXGFwcFxcc2NoZWR1bGVcXHNjaGVkdWxlLmNvbXBvbmVudC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBO0VBQ0kscUJBQXFCO0VBQ3JCLFdBQVcsRUFBQTs7QUFHZjtFQUNJLHFCQUFxQixFQUFBIiwiZmlsZSI6InNyYy9hcHAvc2NoZWR1bGUvc2NoZWR1bGUuY29tcG9uZW50LnNjc3MiLCJzb3VyY2VzQ29udGVudCI6WyJcbjpob3N0IDo6bmctZGVlcCAucG9wb3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmVkO1xuICAgIGNvbG9yOiAjZmZmO1xufVxuXG46aG9zdCA6Om5nLWRlZXAgLnBvcG92ZXIuYXJyb3c6YWZ0ZXIge1xuICAgIGJvcmRlci10b3AtY29sb3I6IHJlZDtcbn1cblxuIl19 */\"","//DSS Documentation on Angular Components - http://tiny.sc/cgangularcomponent\r\nimport { Component, EventEmitter, OnInit, AfterViewInit, Input, Output, Pipe, PipeTransform, HostListener, ViewChild } from '@angular/core';\r\nimport { NgModule } from '@angular/core';\r\n//import { ViewChild, ElementRef } from '@angular/core';\r\nimport { func, bool } from 'prop-types';\r\nimport { Router, ActivatedRoute, ParamMap } from '@angular/router';\r\nimport { ApiResult } from '@soco/core';\r\nimport { FormGroup, FormBuilder, FormControl, Validators } from '@angular/forms';\r\nimport { SocoModalService } from '@soco/modal';\r\nimport { DatePipe } from '@angular/common';\r\nimport { ScheduleService } from './schedule.service';\r\nimport { DBTraceLogService } from '../shared/services/dbTraceLog/dbTraceLog.service';\r\nimport { CoolEmailService } from '../shared/services/coolEmail/coolEmail.service';\r\nimport { AppCommonService } from '../shared/services/common/app-common.service';\r\nimport {\r\n ScheduleOrder, AGLCScheduleOrder, SchedulingElgibleOrders, SchedulingElgibleLDCs\r\n} from './schedule-entities';\r\nimport { DBTraceLog, LogType } from '../shared/services/dbTraceLog/dbTraceLog-entities';\r\nimport { AppConfigurationData } from '../shared/services/common/app-common-entities';\r\nimport { SocoHttpService } from '@soco/http';\r\nimport { MatStepper } from '@angular/material/stepper';\r\nimport { DeviceDetectorService } from 'ngx-device-detector';\r\nimport { AvailabilityInput, AvailabilityOutput } from '../shared/components/availability/availability-selection-entities';\r\nimport { AccountVerificationInput, AccountVerificationOutput, AccountDetails } from '../shared/components/accountverification/account-verification-entities';\r\nimport { AppointmentConfirmationInput, AppointmentConfirmationOutput } from '../shared/components/appointmentconfirmation/appointment-confirmation-entities';\r\nimport { AppBaseComponent } from '../shared/components/base/app-base.component';\r\nimport { BnNgIdleService } from 'bn-ng-idle';\r\nimport { interval } from 'rxjs';\r\n\r\n@Component({\r\n templateUrl: 'schedule.component.html',\r\n styleUrls: ['schedule.component.css', 'schedule.component.scss'],\r\n providers: [DatePipe, ScheduleService, DBTraceLogService, CoolEmailService, AppCommonService]\r\n})\r\nexport class ScheduleComponent extends AppBaseComponent implements OnInit {\r\n\r\n @ViewChild(MatStepper, { static: false }) schedulingStepper: MatStepper;\r\n //@ViewChild(AvailabilityComponent, { static: false }) availabilityCopm: AvailabilityComponent;\r\n\r\n //#region Variables\r\n public ldc: any = '';\r\n public ldcFullName: string;\r\n public seedDate: string;\r\n public selectedTimeSlot: string = '';\r\n public selectdScheduleDate: string;\r\n public selectedScheduleWindow: string = '';\r\n public selectedTimeSlotWindow: string;\r\n public ccbAppointmentStart: string;\r\n public ccbAppointmentEnd: string;\r\n //public data: any;\r\n public isPageLoadReady: boolean = false;\r\n public isAvailabilityCallCompleted: boolean = false;\r\n public showInitialSpinner: boolean = false;\r\n public showSpinner: boolean = false;\r\n public showError: boolean = false;\r\n public showTimeSlotLoadingSpinner: boolean = false;\r\n public showConfirmSpinner: boolean = false;\r\n public showLogOut: boolean = false;\r\n public fieldInstructions: string = '';\r\n public requestorName: string = '';\r\n public gateCode: string = '';\r\n public intersectingStreet: string = '';\r\n public subdivisionName: string = '';\r\n\r\n verificationForm: FormGroup;\r\n verifyAddressForm: FormGroup;\r\n questionsForm: FormGroup;\r\n scheduleForm: FormGroup;\r\n confirmForm: FormGroup;\r\n successForm: FormGroup;\r\n //accntVerifyFormGroup: FormGroup;\r\n isLinear = false;\r\n\r\n public scheduleOrder: ScheduleOrder;\r\n public aglcScheduleOrder: AGLCScheduleOrder;\r\n public accountDetails: AccountDetails;\r\n public appConfigurationDataList: Array = [];\r\n public firstSentinelAvailableDate: string = '';\r\n public maxAvailableDatesAllowed: number = 0;\r\n public orderType: any = '';\r\n public cisOrderType: string = '';\r\n public invalidURLError: boolean = false;\r\n public isKMITextOptedIn: boolean = false;\r\n\r\n //public qrValue: string = 'https://ua-kmi.southernco.com/schedule/cgc/reconnect';\r\n\r\n public kmiPhoneNumber: string = '';\r\n public telMask = ['(', /[1-9]/, /\\d/, /\\d/, ')', ' ', /\\d/, /\\d/, /\\d/, '-', /\\d/, /\\d/, /\\d/, /\\d/];\r\n public entranceInstructionsList = [];\r\n public contactPhoneNo: string = '';\r\n public contactHours: string = '';\r\n public isValidateAccountPerformed: boolean = false;\r\n public kmiPhoneNumberValidationMsg: string = '';\r\n public reqNameValidationMsg: string = '';\r\n public isQuestionnaireHasYes: boolean = true;\r\n public questionnaireList = [];\r\n public questionnaireQnAnswerList = [];\r\n public skipQuestionnaire: boolean = false;\r\n public isSentinelForceWindowEligible = true; \r\n public deviceInfo = null;\r\n public dbTraceLog: DBTraceLog;\r\n public logReferenceID: string = '';\r\n public entranceCodeReminderMsg: string = '';\r\n public accountNumber: string = '';\r\n public availabilityInput: AvailabilityInput;\r\n public availabilityOutput: AvailabilityOutput;\r\n public accountVerificationInput: AccountVerificationInput;\r\n public accountVerificationOutput: AccountVerificationOutput;\r\n public appointmentConfirmationInput: AppointmentConfirmationInput;\r\n public emailToList: string;\r\n public specialFeeMsg: string = '';\r\n public acntNumberFromURL: string = '';\r\n public urlSource: string = '';\r\n public sessionTimeoutWarningMsg: string = '';\r\n public sessionExpired: boolean = true;\r\n public timeOutPeriod: number = 3000;\r\n public timeOutWarning: number = 30;\r\n public userActivity: any;\r\n public interval: any;\r\n public aglcScheudlingPortalSwitch: boolean = true;\r\n //#endregion\r\n\r\n constructor(public scheduleService: ScheduleService, private route: ActivatedRoute, private formBuilder: FormBuilder,\r\n public datepipe: DatePipe, public http: SocoHttpService, public deviceService: DeviceDetectorService,\r\n public dbTraceLogService: DBTraceLogService, public coolEmailService: CoolEmailService, private appCommonService: AppCommonService,\r\n private bnIdle: BnNgIdleService) {\r\n\r\n //Parent component initialization\r\n super(http, dbTraceLogService, coolEmailService, deviceService);\r\n\r\n try {\r\n\r\n //console.log('this.route.snapshot.url: ', this.route.snapshot.url);\r\n\r\n this.setRouteParameters();\r\n\r\n this.availabilityInput = new AvailabilityInput();\r\n this.availabilityOutput = new AvailabilityOutput();\r\n this.accountVerificationInput = new AccountVerificationInput();\r\n this.accountVerificationOutput = new AccountVerificationOutput();\r\n this.appointmentConfirmationInput = new AppointmentConfirmationInput();\r\n\r\n this.accountDetails = new AccountDetails();\r\n this.logReferenceID = this.datepipe.transform(Date.now(), \"MMddyyyyHHmmss\");\r\n\r\n if (this.urlSource != '')\r\n this.insertDBTraceLog(LogType.Info, 'Scheduling component initiated successfully from Source: ' + this.urlSource);\r\n else\r\n this.insertDBTraceLog(LogType.Info, 'Scheduling component initiated successfully'); \r\n\r\n }\r\n catch (e) {\r\n this.insertDBTraceLog(LogType.Error, 'Exception occured while loading scheduling constructor, Error: ' + e.message.substring(0, 500));\r\n }\r\n };\r\n\r\n ngOnInit() {\r\n try {\r\n //Initiate stepper forms\r\n this.verificationForm = this.formBuilder.group({});\r\n this.verifyAddressForm = this.formBuilder.group({});\r\n this.questionsForm = this.formBuilder.group({});\r\n this.scheduleForm = this.formBuilder.group({});\r\n this.confirmForm = this.formBuilder.group({});\r\n this.successForm = this.formBuilder.group({});\r\n \r\n if (Object.values(SchedulingElgibleOrders).includes(this.orderType.trim().toUpperCase()) &&\r\n Object.values(SchedulingElgibleLDCs).includes(this.ldc.trim().toUpperCase()))\r\n {\r\n //Start Loading Default/Initial values once correct URL is detected\r\n this.setDefaultValues();\r\n this.loadInitialData();\r\n }\r\n else {\r\n this.insertDBTraceLog(LogType.Error, 'Invalid URL detected');\r\n this.invalidURLError = true;\r\n $('#divScheduling').hide();\r\n }\r\n }\r\n catch (e) {\r\n this.insertDBTraceLog(LogType.Error, 'Exception occured while loading ngOnInit, Error: ' + e.message.substring(0, 500));\r\n }\r\n\r\n }\r\n\r\n //#region Init Methods\r\n public loadInitialData() {\r\n try {\r\n //Set Entrance Instructions\r\n //this.setEntranceInstructions();\r\n\r\n //Get KMI Application Data\r\n this.showInitialSpinner = true;\r\n this.GetApplicationConfigs();\r\n \r\n //Load special messages\r\n this.getSpecialMessagesByOrder();\r\n \r\n }\r\n catch (e) {\r\n this.insertDBTraceLog(LogType.Error, 'Exception occured while loading initial data, Error: ' + e.message.substring(0, 500));\r\n }\r\n }\r\n\r\n public setDefaultValues() {\r\n\r\n //hide multi step clickable status bar\r\n $('.mat-horizontal-stepper-header-container').hide();\r\n\r\n //to avoid unnecessary vertical scroll when focusing autofill values in input.\r\n $(\".wrapper\").css(\"overflow-y\", \"auto\");\r\n\r\n //to avoid horizontal scroll, Applying below style on root div\r\n $(\".main-panel\").css(\"overflow-x\", \"hidden\");\r\n\r\n //Change hard coded value to config driven in later development\r\n this.maxAvailableDatesAllowed = 45;\r\n this.entranceCodeReminderMsg = 'Please ensure someone at least 18 years of age or older will be home.';\r\n }\r\n\r\n //#endregion\r\n\r\n \r\n //#region Address Confirm\r\n confirmAddressAgreed() {\r\n try {\r\n //this.isConfirmAddressPerformed = true;\r\n //this.insertDBTraceLog(LogType.Info, 'Address confirmation performed');\r\n\r\n if (this.accountDetails.isOrderEligibleToSchedule) {\r\n //Navigate to availability step when number of questions in qunre is zero (chances of disabling questionnaire in future)\r\n //When disabled - Below line helps to skip questionnaire screen.\r\n\r\n this.insertDBTraceLog(LogType.Info, 'Address confirmation performed & Navaigated to load availability');\r\n\r\n this.schedulingStepper.selectedIndex = 3;\r\n\r\n this.isQuestionnaireHasYes = false;\r\n\r\n this.showSpinner = true;\r\n //this.seedDate = this.datepipe.transform(Date.now(), \"yyyy-MM-dd\");\r\n\r\n //Prepate Availability Input\r\n this.prepareAvailabilityInput();\r\n\r\n //this.GetAvailability(this.seedDate, true);\r\n\r\n }\r\n else if (!this.accountDetails.isOrderEligibleToSchedule) {\r\n //show questionnaire step to show \"Not eligible\" message\r\n this.schedulingStepper.selectedIndex = 2;\r\n }\r\n }\r\n catch (e) {\r\n this.insertDBTraceLog(LogType.Error, 'Exception occured while confirming address, Error: ' + e.message.substring(0, 500));\r\n }\r\n }\r\n\r\n //#endregion\r\n\r\n //#region Application Config\r\n\r\n GetApplicationConfigs() {\r\n try {\r\n this.appCommonService.getApplicationConfigs().subscribe(ApiResult => {\r\n\r\n //console.log('ApplicationConfig ApiResult: ', ApiResult.data); \r\n\r\n if (ApiResult.data != null) {\r\n\r\n //this.appConfigurationDataResponse = ApiResult.data;\r\n\r\n this.insertDBTraceLog(LogType.Info, 'Application configs fetched successfully');\r\n\r\n ApiResult.data.forEach(configData => {\r\n this.appConfigurationDataList.push(configData);\r\n });\r\n\r\n //Set Entrance Instruction Notes\r\n this.entranceInstructionsList = this.appConfigurationDataList.filter(item => item.configurationType == 'Entrance Instruction Notes')\r\n .map(cv => cv.configurationValue);\r\n\r\n //Get CIS Specific Decoded order Type\r\n this.cisOrderType = this.appConfigurationDataList.filter(item => (item.ldc == (this.ldc != 'AGLC' ? 'CCB' : this.ldc) && item.configurationType == 'CIS Order Decode' && item.configurationKey.toUpperCase() == this.orderType.toUpperCase()))\r\n .map(cv => cv.configurationValue)[0];\r\n\r\n this.emailToList = this.appConfigurationDataList.filter(item => (item.configurationKey == 'EmailTo'))\r\n .map(cv => cv.configurationValue)[0];\r\n\r\n this.timeOutPeriod = Number(this.appConfigurationDataList.filter(item => item.configurationKey == 'SessionTimeOut')\r\n .map(cv => cv.configurationValue)[0]);\r\n\r\n this.timeOutWarning = Number(this.appConfigurationDataList.filter(item => item.configurationKey == 'SessionTimeOutWarning')\r\n .map(cv => cv.configurationValue)[0]);\r\n \r\n if (this.appConfigurationDataList.filter(item => (item.ldc == this.ldc && item.configurationKey == 'EnableAGLCSchedulingPortal'))\r\n .map(cv => cv.configurationValue)[0] != null) {\r\n this.aglcScheudlingPortalSwitch =\r\n JSON.parse(this.appConfigurationDataList.filter(item => (item.ldc == this.ldc && item.configurationKey == 'EnableAGLCSchedulingPortal'))\r\n .map(cv => cv.configurationValue)[0].toLowerCase());\r\n\r\n //if switch is false, show invalid url error\r\n if (this.ldc === 'AGLC' && !this.aglcScheudlingPortalSwitch) { this.invalidURLError = true; $('#divScheduling').hide(); }\r\n\r\n //this is a temporary condition to block AGLC - Non-Rconnect scheduling. Need to implement LDC/OrderType mapping table \r\n //on eligible ordertypes enabled for specific market and create api around it read the values to decide valid url or not.\r\n if (this.ldc === 'AGLC' && this.orderType.toUpperCase() != 'RECONNECT') { this.invalidURLError = true; $('#divScheduling').hide(); }\r\n }\r\n\r\n //set contactPhone on load\r\n this.setContactPhoneNoAndHours();\r\n this.getLDCFullName();\r\n\r\n this.prepareAccountVerificationInput();\r\n\r\n //Trigger timeout watch after configs load\r\n this.triggerTimeOut();\r\n\r\n this.isPageLoadReady = true;\r\n this.showInitialSpinner = false;\r\n //this.VerifyAccountAndOrderEligibility(stepper);\r\n\r\n }\r\n else {\r\n this.insertDBTraceLog(LogType.Error, 'Error occured while fetching application configs, APIResult is null');\r\n this.processError();\r\n }\r\n\r\n }, ApiResult => {\r\n //capture error\r\n if (this.http.isInvalidResult(ApiResult) || this.http.isErrorResult(ApiResult) || this.http.isFailureResult(ApiResult)) {\r\n this.insertDBTraceLog(LogType.Error, 'Error occured while fetching application configs, APIResult is invalid');\r\n this.processError();\r\n }\r\n });\r\n\r\n }\r\n catch (e) {\r\n this.insertDBTraceLog(LogType.Error, 'Exception occured while fetching application configs, Error: ' + e.message.substring(0, 500));\r\n }\r\n\r\n }\r\n\r\n //#endregion\r\n\r\n // #region Schedule Order\r\n\r\n private ScheduleOrder(stepper: MatStepper) {\r\n if (this.ldc != 'AGLC')\r\n this.ScheduleCCBOrder(stepper);\r\n else\r\n this.ScheduleAGLCOrder(stepper);\r\n }\r\n\r\n private ScheduleCCBOrder(stepper: MatStepper) {\r\n\r\n try {\r\n //perform validation using nonFormated Phone No.\r\n var nonFormartedPhoneNo: string = '';\r\n var updatedFieldInstructions: string = '';\r\n\r\n if (this.kmiPhoneNumber != '')\r\n nonFormartedPhoneNo = this.unmaskPhoneNumber(this.kmiPhoneNumber);\r\n\r\n if (nonFormartedPhoneNo != '') {\r\n if (nonFormartedPhoneNo === '' || (nonFormartedPhoneNo != '' && nonFormartedPhoneNo.length === 10))\r\n this.kmiPhoneNumberValidationMsg = '';\r\n else\r\n this.kmiPhoneNumberValidationMsg = 'Invalid Phone Number';\r\n }\r\n else {\r\n this.kmiPhoneNumberValidationMsg = 'Phone number is required';\r\n }\r\n\r\n if (this.kmiPhoneNumberValidationMsg === '') {\r\n\r\n this.showConfirmSpinner = true;\r\n\r\n if (!this.skipQuestionnaire && !this.isQuestionnaireHasYes) {\r\n if (this.fieldInstructions != '')\r\n this.fieldInstructions = this.fieldInstructions + '\\n';\r\n\r\n updatedFieldInstructions = this.fieldInstructions + 'No Illness ' + this.datepipe.transform(new Date(), 'MM/dd/yyyy');\r\n }\r\n else\r\n updatedFieldInstructions = this.fieldInstructions;\r\n\r\n this.scheduleOrder = new ScheduleOrder();\r\n this.scheduleOrder.ldc = this.accountDetails.ldc;\r\n this.scheduleOrder.orderNumber = this.accountDetails.orderNumber;\r\n this.scheduleOrder.fieldInstructions = updatedFieldInstructions; //this.fieldInstructions;\r\n\r\n //GCMA specific fields\r\n this.scheduleOrder.scheduleDate = this.selectdScheduleDate;\r\n this.scheduleOrder.scheduleWindow = this.selectedScheduleWindow;\r\n\r\n //CCB specific fields\r\n this.scheduleOrder.premisesNumber = this.accountDetails.premiseNumber;\r\n this.scheduleOrder.appointmentStart = this.ccbAppointmentStart;\r\n this.scheduleOrder.appointmentEnd = this.ccbAppointmentEnd;\r\n this.scheduleOrder.personID = this.accountDetails.personID;\r\n this.scheduleOrder.isKMIEligible = this.accountDetails.isKMIEligible;\r\n this.scheduleOrder.kmiTextOptIn = this.isKMITextOptedIn;\r\n this.scheduleOrder.kmiPhoneNumber = this.kmiPhoneNumber;\r\n\r\n if (this.ldc === 'AGLC')\r\n this.insertDBTraceLog(LogType.Info, 'Order scheduling initiated for Schedule Date:' + this.selectdScheduleDate + ', Schedule Window: ' + this.selectedScheduleWindow);\r\n else\r\n this.insertDBTraceLog(LogType.Info, 'Order scheduling initiated for Appt Start:' + this.ccbAppointmentStart + ', Appt End: ' + this.ccbAppointmentEnd);\r\n\r\n this.insertDBTraceLog(LogType.Info, 'Order scheduling - KMI Opted In: ' + this.isKMITextOptedIn + ', KMI Ph No: ' + this.kmiPhoneNumber);\r\n\r\n //Invoke service call\r\n this.scheduleService.scheduleOrder(this.scheduleOrder).subscribe(ApiResult => {\r\n if (ApiResult != null && ApiResult.statusCode == 200) {\r\n\r\n if (this.ldc === 'AGLC')\r\n this.insertDBTraceLog(LogType.Info, 'Order scheduling completed successfully for Schedule Date:' + this.selectdScheduleDate + ', Schedule Window: ' + this.selectedScheduleWindow);\r\n else\r\n this.insertDBTraceLog(LogType.Info, 'Order scheduling completed successfully for Appt Start:' + this.ccbAppointmentStart + ', Appt End: ' + this.ccbAppointmentEnd);\r\n\r\n //Navigate to next page\r\n this.showConfirmSpinner = false;\r\n stepper.next();\r\n }\r\n else {\r\n this.insertDBTraceLog(LogType.Error, 'Error occured while scheduling order, APIResult is not 200');\r\n this.showConfirmSpinner = false;\r\n this.processError();\r\n }\r\n\r\n }, ApiResult => {\r\n if (this.http.isInvalidResult(ApiResult) || this.http.isErrorResult(ApiResult) || this.http.isFailureResult(ApiResult)) {\r\n this.insertDBTraceLog(LogType.Error, 'Error occured while scheduling order, APIResult is invalid');\r\n this.showConfirmSpinner = false;\r\n this.processError();\r\n }\r\n });\r\n }\r\n }\r\n catch (e) {\r\n this.insertDBTraceLog(LogType.Error, 'Exception occured while scheduling order, Error: ' + e.message.substring(0, 500));\r\n }\r\n }\r\n\r\n private ScheduleAGLCOrder(stepper: MatStepper) {\r\n\r\n try {\r\n //perform validation using nonFormated Phone No.\r\n var nonFormartedPhoneNo: string = '';\r\n var updatedFieldInstructions: string = '';\r\n\r\n if (this.kmiPhoneNumber != '')\r\n nonFormartedPhoneNo = this.unmaskPhoneNumber(this.kmiPhoneNumber);\r\n\r\n if (nonFormartedPhoneNo != '') {\r\n if (nonFormartedPhoneNo === '' || (nonFormartedPhoneNo != '' && nonFormartedPhoneNo.length === 10))\r\n this.kmiPhoneNumberValidationMsg = '';\r\n else\r\n this.kmiPhoneNumberValidationMsg = 'Invalid Phone Number';\r\n }\r\n else {\r\n this.kmiPhoneNumberValidationMsg = 'Phone number is required';\r\n }\r\n\r\n if (this.requestorName.trim() === '')\r\n this.reqNameValidationMsg = 'Requestor name is required';\r\n else\r\n this.reqNameValidationMsg = '';\r\n\r\n if (this.kmiPhoneNumberValidationMsg === '' && this.reqNameValidationMsg === '') {\r\n\r\n this.showConfirmSpinner = true;\r\n\r\n if (this.fieldInstructions != '')\r\n this.fieldInstructions = this.fieldInstructions + '\\n';\r\n updatedFieldInstructions = this.fieldInstructions;\r\n\r\n this.aglcScheduleOrder = new AGLCScheduleOrder();\r\n\r\n this.aglcScheduleOrder.accountNumber = this.accountNumber;\r\n this.aglcScheduleOrder.customerServiceRemarks = '';\r\n this.aglcScheduleOrder.entranceCode = '5';\r\n this.aglcScheduleOrder.entranceInstructions = 'Customer Onsite';\r\n this.aglcScheduleOrder.fieldInstructions = updatedFieldInstructions;\r\n this.aglcScheduleOrder.gateCode = this.gateCode;\r\n this.aglcScheduleOrder.intersectingStreet = this.intersectingStreet;\r\n this.aglcScheduleOrder.isMeterNotAccessible = false;\r\n this.aglcScheduleOrder.kmiCallbackOptIn = false;\r\n this.aglcScheduleOrder.kmiTextOptIn = this.isKMITextOptedIn;\r\n this.aglcScheduleOrder.marketerReferenceID = '';\r\n this.aglcScheduleOrder.premiseNumber = this.accountDetails.premiseNumber;\r\n this.aglcScheduleOrder.requestorName = this.requestorName;\r\n this.aglcScheduleOrder.requestorPhone = nonFormartedPhoneNo;\r\n this.aglcScheduleOrder.safetyQuestionAnswer1 = 'No';\r\n this.aglcScheduleOrder.safetyQuestionAnswer2 = 'No';\r\n this.aglcScheduleOrder.safetyQuestionAnswer3 = 'No';\r\n this.aglcScheduleOrder.safetyQuestionAnswer4 = '';\r\n this.aglcScheduleOrder.safetyQuestionAnswer5 = '';\r\n this.aglcScheduleOrder.safetyQuestionAnswer6 = '';\r\n this.aglcScheduleOrder.scheduleDate = this.selectdScheduleDate;\r\n this.aglcScheduleOrder.scheduleTime = '';\r\n this.aglcScheduleOrder.scheduleWindow = this.selectedScheduleWindow;\r\n this.aglcScheduleOrder.serviceOrderType = this.cisOrderType;\r\n this.aglcScheduleOrder.serviceOrderTypeDescription = '';\r\n this.aglcScheduleOrder.serviceOrderTypeReason = this.getServiceOrderReasonByOrder();\r\n this.aglcScheduleOrder.serviceOrderTypeReasonID = 1;\r\n this.aglcScheduleOrder.specialInstructions = '';\r\n this.aglcScheduleOrder.subdivisionName = this.subdivisionName;\r\n\r\n\r\n this.insertDBTraceLog(LogType.Info, 'Order scheduling initiated for Schedule Date:' + this.selectdScheduleDate + ', Schedule Window: ' + this.selectedScheduleWindow);\r\n this.insertDBTraceLog(LogType.Info, 'Order scheduling - KMI Opted In: ' + this.isKMITextOptedIn + ', KMI Ph No: ' + this.kmiPhoneNumber);\r\n\r\n\r\n //Invoke service call\r\n this.scheduleService.aglcScheduleOrder(this.aglcScheduleOrder).subscribe(ApiResult => {\r\n //console.log('Amend Order API Result: ', ApiResult);\r\n if (ApiResult != null && ApiResult.statusCode == 200) {\r\n\r\n //console.log('AGLC Schedule Order API Result: ', ApiResult);\r\n this.insertDBTraceLog(LogType.Info, 'Order scheduling completed successfully for Schedule Date:' + this.selectdScheduleDate + ', Schedule Window: ' + this.selectedScheduleWindow);\r\n\r\n //Navigate to next page\r\n this.showConfirmSpinner = false;\r\n stepper.next();\r\n }\r\n else {\r\n this.insertDBTraceLog(LogType.Error, 'Error occured while scheduling order, APIResult is not 200');\r\n this.showConfirmSpinner = false;\r\n this.processError();\r\n }\r\n\r\n }, ApiResult => {\r\n if (this.http.isInvalidResult(ApiResult) || this.http.isErrorResult(ApiResult) || this.http.isFailureResult(ApiResult)) {\r\n this.insertDBTraceLog(LogType.Error, 'Error occured while scheduling order, APIResult is invalid');\r\n this.showConfirmSpinner = false;\r\n this.processError();\r\n }\r\n });\r\n }\r\n }\r\n catch (e) {\r\n this.insertDBTraceLog(LogType.Error, 'Exception occured while scheduling order, Error: ' + e.message.substring(0, 500));\r\n }\r\n }\r\n\r\n // #region Other Button Clicks \r\n\r\n public navigateToAccountVerification() {\r\n try {\r\n this.showLogOut = false;\r\n this.schedulingStepper.selectedIndex = 0;\r\n\r\n //Set this flag to default for fresh new calls\r\n this.ldc = this.route.snapshot.url.length > 1 ? this.route.snapshot.url[1].path.toUpperCase() : '';\r\n this.isPageLoadReady = true;\r\n this.isAvailabilityCallCompleted = false;\r\n this.showConfirmSpinner = false;\r\n this.showSpinner = false;\r\n this.fieldInstructions = '';\r\n this.kmiPhoneNumber = '';\r\n this.isKMITextOptedIn = false;\r\n this.isValidateAccountPerformed = false;\r\n //this.isConfirmAddressPerformed = false;\r\n this.kmiPhoneNumberValidationMsg = '';\r\n this.invalidURLError = false;\r\n this.showError = false;\r\n this.isSentinelForceWindowEligible = true;\r\n\r\n this.isQuestionnaireHasYes = true;\r\n \r\n //Stop session timeout on home page\r\n this.sessionExpired = true;\r\n this.sessionTimeoutWarningMsg = '';\r\n\r\n $('#divScheduling').show();\r\n\r\n //console.log('this.ldc: ', this.ldc);\r\n this.insertDBTraceLog(LogType.Info, 'Navigated to home screen');\r\n }\r\n catch (e) {\r\n this.insertDBTraceLog(LogType.Error, 'Exception occured while navigating back to Account verification, Error: ' + e.message.substring(0, 500));\r\n }\r\n }\r\n\r\n\r\n determineNextAfterAccountVerificationFromChild($event) {\r\n try {\r\n\r\n this.schedulingStepper.next();\r\n //show logout button from second screen onwards\r\n this.showLogOut = true;\r\n this.showSpinner = false;\r\n\r\n //reset session expiry\r\n this.sessionExpired = false;\r\n }\r\n catch (e) {\r\n this.insertDBTraceLog(LogType.Error, 'Exception occured while determining schedule after account verification, Error: ' + e.message.substring(0, 500));\r\n }\r\n\r\n }\r\n\r\n // #endregion\r\n\r\n // #region Helper Methods\r\n\r\n processError(): void {\r\n this.showError = true;\r\n this.showInitialSpinner = false;\r\n this.showSpinner = false;\r\n this.showTimeSlotLoadingSpinner = false;\r\n this.showConfirmSpinner = false;\r\n\r\n //to hide content container's borde\r\n $('#divScheduling').hide();\r\n //$('.mat-horizontal-content-container').hide();\r\n }\r\n\r\n private processErrorFromChild($event) {\r\n this.processError();\r\n }\r\n\r\n private formatPhoneNumber(phoneNumberString: string) {\r\n if (phoneNumberString.length == 10) {\r\n //reformat and return phone number\r\n return phoneNumberString.replace(/(\\d{3})(\\d{3})(\\d{4})/, \"$1.$2.$3\");\r\n }\r\n return phoneNumberString\r\n }\r\n\r\n private setRouteParameters() {\r\n var encodedURLfound = false;\r\n\r\n this.route.queryParams.subscribe(params => {\r\n if (params['qc'] != null) {\r\n encodedURLfound = true;\r\n var decodedQS = atob(params['qc']);\r\n var qParams = new URL('https://dummyURL.com?' + decodedQS).searchParams\r\n this.ldc = qParams.get('LDC').trim() || '';\r\n this.orderType = qParams.get('ORD').trim() || '';\r\n this.acntNumberFromURL = qParams.get('ACT').trim() || '';\r\n this.urlSource = params['s'] || '';\r\n }\r\n });\r\n\r\n if (this.route.snapshot.url.length > 1 && !encodedURLfound) {\r\n\r\n this.ldc = this.route.snapshot.url[1].path.trim().toUpperCase();\r\n this.orderType = this.route.snapshot.url[2].path.trim();\r\n\r\n //get additional params from URL\r\n if (this.route.snapshot.url.length > 3)\r\n this.acntNumberFromURL = this.route.snapshot.url[3].path;\r\n if (this.route.snapshot.url.length > 4) //SQ from QRCode, ST from Text\r\n this.urlSource = this.route.snapshot.url[4].path;\r\n }\r\n\r\n //when ldc is \"IL\", consider it as \"NG\"\r\n if (this.ldc === \"IL\")\r\n this.ldc = \"NG\";\r\n }\r\n\r\n public setContactPhoneNoAndHours() {\r\n\r\n this.contactPhoneNo = this.appConfigurationDataList.filter(item => (item.ldc == this.ldc && item.configurationType == 'Contact Phone Number'))\r\n .map(cv => cv.configurationValue)[0];\r\n\r\n this.contactHours = this.appConfigurationDataList.filter(item => (item.ldc == this.ldc && item.configurationType == 'Contact Hours'))\r\n .map(cv => cv.configurationValue)[0];\r\n }\r\n\r\n public unmaskPhoneNumber(val) {\r\n return val.replace(/\\D+/g, '');\r\n }\r\n \r\n private getLDCFullName() {\r\n if (this.ldc === 'NG' || this.ldc === 'IL')\r\n this.ldcFullName = 'Nicor Gas';\r\n else if (this.ldc === 'VNG')\r\n this.ldcFullName = 'Virginia Natural Gas';\r\n else if (this.ldc === 'CGC')\r\n this.ldcFullName = 'Chattanooga Gas';\r\n else if (this.ldc === 'AGLC')\r\n this.ldcFullName = 'Southern Company Gas';\r\n }\r\n\r\n public determineKMITextOptIn(phValue: string) {\r\n if (phValue != '')\r\n this.isKMITextOptedIn = true;\r\n else\r\n this.isKMITextOptedIn = false;\r\n }\r\n \r\n \r\n private getSpecialMessagesByOrder() {\r\n try {\r\n\r\n switch (this.orderType.toLocaleUpperCase()) {\r\n case 'RECONNECT':\r\n this.specialFeeMsg = 'A reconnect fee may apply.';\r\n break;\r\n\r\n default: {\r\n this.specialFeeMsg = '';\r\n break;\r\n }\r\n }\r\n }\r\n catch (e) {\r\n this.insertDBTraceLog(LogType.Error, 'Exception occured while checking sentinel force window, Error: ' + e.message.substring(0, 5000));\r\n }\r\n }\r\n \r\n private insertDBTraceLog(logType: string, logMessage: string) {\r\n\r\n this.dbTraceLog = new DBTraceLog();\r\n\r\n this.dbTraceLog.portalTypeID = 3; //Scheduling Portal\r\n this.dbTraceLog.ldc = this.accountDetails != null ? this.accountDetails.ldc : this.ldc;\r\n this.dbTraceLog.kmiUrlCode = '';\r\n this.dbTraceLog.issuingApOrderID = this.accountDetails != null ? this.accountDetails.orderNumber : '';\r\n this.dbTraceLog.orderType = this.cisOrderType;\r\n this.dbTraceLog.logReferenceID = this.logReferenceID;\r\n this.dbTraceLog.logType = logType;\r\n this.dbTraceLog.logMessage = logMessage;\r\n this.dbTraceLog.emailToList = this.emailToList;\r\n\r\n super.InsertDBTraceLogThruBase(this.dbTraceLog);\r\n }\r\n\r\n private prepareAvailabilityInput() {\r\n\r\n this.availabilityInput.ldc = this.accountDetails.ldc;\r\n this.availabilityInput.kmiUrlCode = '';\r\n this.availabilityInput.orderNumber = this.accountDetails.orderNumber;\r\n this.availabilityInput.orderType = this.cisOrderType;\r\n this.availabilityInput.premisesNumber = this.accountDetails.premiseNumber;\r\n if (this.accountDetails.ldc != 'AGLC')\r\n this.availabilityInput.entranceInstructionCode = 'CUON';\r\n else\r\n this.availabilityInput.entranceInstructionCode = 'CustomerOnSite';\r\n this.availabilityInput.entranceInstructionProfile = 'ResTwoAndFourAndEightHour';\r\n this.availabilityInput.logReferenceID = this.logReferenceID;\r\n this.availabilityInput.portalTypeID = 3; //Schedule\r\n this.availabilityInput.entranceCodeReminderMsg = this.entranceCodeReminderMsg;\r\n this.availabilityInput.emailToList = this.emailToList;\r\n this.availabilityInput.appointmentType = 'Issue';\r\n\r\n this.availabilityInput.accountNumber = this.accountNumber;\r\n this.availabilityInput.activityOrProblemType = ''; //this will change when we expand to Misc/Dist order types\r\n this.availabilityInput.isOverride = false;\r\n this.availabilityInput.orderCategory = ''; //this will change when we expand to Misc/Dist order types\r\n this.availabilityInput.premisesNumber = this.accountDetails.premiseNumber;\r\n this.availabilityInput.serviceOrderActiontype = 'Issue';\r\n this.availabilityInput.serviceOrderReason = 'CustomerPaidBill';\r\n this.availabilityInput.serviceOrderType = this.cisOrderType;\r\n this.availabilityInput.specialDateCodeID = 'None';\r\n }\r\n\r\n private recieveAvailabilitySelection($event) {\r\n this.availabilityOutput = $event;\r\n\r\n this.selectedTimeSlot = this.availabilityOutput.selectedTimeSlot;\r\n this.selectedTimeSlotWindow = this.availabilityOutput.selectedTimeSlotWindow;\r\n this.selectdScheduleDate = this.availabilityOutput.selectedScheduleDate;\r\n this.selectedScheduleWindow = this.availabilityOutput.selectedScheduleWindow;\r\n this.ccbAppointmentStart = this.availabilityOutput.ccbAppointmentStart;\r\n this.ccbAppointmentEnd = this.availabilityOutput.ccbAppointmentEnd;\r\n\r\n //prepare appt confirmation input for child control\r\n this.prepareAppointmentConfirmationInput();\r\n }\r\n\r\n private prepareAccountVerificationInput() {\r\n\r\n this.accountVerificationInput.acntNumberFromURL = this.acntNumberFromURL;\r\n this.accountVerificationInput.cisOrderType = this.cisOrderType; \r\n this.accountVerificationInput.ldc = this.ldc; \r\n this.accountVerificationInput.logReferenceID = this.logReferenceID;\r\n this.accountVerificationInput.portalTypeID = 3; //Schedule \r\n this.accountVerificationInput.emailToList = this.emailToList;\r\n this.accountVerificationInput.contactHours = this.contactHours;\r\n this.accountVerificationInput.contactPhoneNo = this.contactPhoneNo;\r\n }\r\n private recieveAccountVerificationOutput($event) {\r\n this.accountVerificationOutput = $event;\r\n\r\n this.accountDetails = this.accountVerificationOutput.accountDetails;\r\n this.accountNumber = this.accountVerificationOutput.accountNumber; \r\n this.ldc = this.accountVerificationOutput.accountDetails.ldc;\r\n\r\n this.determineNextAfterAccountVerificationFromChild($event);\r\n }\r\n\r\n private prepareAppointmentConfirmationInput() {\r\n\r\n this.appointmentConfirmationInput.selectedTimeSlot = this.selectedTimeSlot;\r\n this.appointmentConfirmationInput.selectedTimeSlotWindow = this.selectedTimeSlotWindow;\r\n this.appointmentConfirmationInput.entranceInstructionsList = this.entranceInstructionsList;\r\n this.appointmentConfirmationInput.specialFeeMsg = this.specialFeeMsg;\r\n this.appointmentConfirmationInput.ldc = this.ldc;\r\n this.appointmentConfirmationInput.logReferenceID = this.logReferenceID;\r\n this.appointmentConfirmationInput.portalTypeID = 3; //Schedule \r\n this.appointmentConfirmationInput.emailToList = this.emailToList;\r\n }\r\n\r\n private getServiceOrderReasonByOrder(): string {\r\n var reasonType = '';\r\n switch (this.orderType.toLocaleUpperCase()) {\r\n case 'RECONNECT':\r\n reasonType = 'CustomerPaidBill';\r\n break;\r\n\r\n default: {\r\n reasonType = '';\r\n break;\r\n }\r\n }\r\n\r\n return reasonType;\r\n\r\n }\r\n \r\n //#region Session TimeOut\r\n\r\n private triggerTimeOut() {\r\n\r\n this.bnIdle.startWatching(this.timeOutPeriod - this.timeOutWarning).subscribe((res) => {\r\n if (res && !this.sessionExpired) {\r\n //start countdown\r\n this.startCountdown(this.timeOutWarning);\r\n //navigate home once countdown finishes\r\n this.userActivity = setTimeout(this.navigateHome.bind(this), this.timeOutWarning * 1000);\r\n }\r\n })\r\n }\r\n \r\n navigateHome = () => {\r\n //console.log(\"session expired\");\r\n this.navigateToAccountVerification();\r\n\r\n //Stop session timeout on home page\r\n this.sessionExpired = true;\r\n this.sessionTimeoutWarningMsg = '';\r\n }\r\n\r\n private startCountdown(seconds) {\r\n let counter = seconds;\r\n\r\n this.interval = setInterval(() => {\r\n this.sessionTimeoutWarningMsg = 'Session expiring in ' + counter;\r\n counter--;\r\n\r\n if (counter < 0) {\r\n clearInterval(this.interval);\r\n this.sessionTimeoutWarningMsg = '';\r\n }\r\n }, 1000);\r\n }\r\n\r\n //stop countdown on user activity\r\n @HostListener('document:keydown', ['$event'])\r\n @HostListener('window:mousemove', ['$event'])\r\n @HostListener('window:wheel', ['$event'])\r\n @HostListener('touchstart', ['$event'])\r\n onEvent(event) {\r\n if (this.sessionTimeoutWarningMsg != '') {\r\n clearTimeout(this.userActivity);\r\n clearInterval(this.interval);\r\n this.sessionTimeoutWarningMsg = '';\r\n }\r\n } \r\n\r\n //#endregion\r\n\r\n // #endregion\r\n\r\n}\r\n","//angular modules\n//DSS Documentation on Angular - http://tiny.sc/cgangular\nimport { NgModule } from '@angular/core';\nimport { RouterModule } from '@angular/router';\nimport { CommonModule } from '@angular/common';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { TextMaskModule } from 'angular2-text-mask';\n//soco modules\nimport { SocoAlertModule } from '@soco/alert';\nimport { SocoFormsModule } from '@soco/forms';\nimport { SocoModalModule } from '@soco/modal';\nimport { SocoUIThemeModule } from '@soco/ui-theme';\n\n//app modules\nimport { CoreModule } from '../core/core.module';\n\n//components\n//DSS Documentation on Angular Components - http://tiny.sc/cgangularcomponent\n\nimport { ScheduleComponent } from './schedule.component';\nimport { ScheduleRoutes } from './schedule.routing';\nimport { AgmCoreModule } from '@agm/core';\nimport { NgxQRCodeModule } from '@techiediaries/ngx-qrcode';\nimport { AvailabilityModule } from '../shared/components/availability/availability-selection.module';\nimport { CovidQuestionnaireModule } from '../shared/components/covidquestionnaire/covid-questionnaire.module';\nimport { AccountVerificationModule } from '../shared/components/accountverification/account-verification.module';\nimport { AppointmentConfirmationModule } from '../shared/components/appointmentconfirmation/appointment-confirmation.module';\nimport { BnNgIdleService } from 'bn-ng-idle';\n//import { DeviceDetectorModule } from 'ngx-device-detector';\n\n@NgModule({\n imports: [\n //angular modules\n CommonModule,\n RouterModule.forChild(ScheduleRoutes),\n FormsModule,\n ReactiveFormsModule,\n TextMaskModule,\n AgmCoreModule.forRoot({\n apiKey: 'AIzaSyBcLYsBQdhvhsdRoDKPzt3STCHmIXsXCNU'\n }),\n\n //soco modules \n SocoUIThemeModule,\n SocoAlertModule,\n SocoFormsModule,\n SocoModalModule,\n\n //app modules\n CoreModule,\n NgxQRCodeModule,\n AvailabilityModule,\n CovidQuestionnaireModule,\n AccountVerificationModule,\n AppointmentConfirmationModule\n //DeviceDetectorModule\n ],\n exports: [ScheduleComponent],\n declarations: [ \n ScheduleComponent \n ],\n providers: [BnNgIdleService]\n})\n\nexport class ScheduleModule { }\n\n","import { Routes } from '@angular/router';\n\n\nimport { ScheduleComponent } from './schedule.component';\nexport const ScheduleRoutes: Routes = [\n {\n path: 'components',\n component: ScheduleComponent \n }\n];\n\n","import { Injectable } from '@angular/core';\nimport { map, mergeMap } from 'rxjs/operators';\nimport { HttpClient } from '@angular/common/http';\nimport { Observable, EMPTY, of, forkJoin } from 'rxjs';\nimport { catchError } from 'rxjs/operators';\n\nimport { SocoHttpService } from '@soco/http';\nimport { SocoConfigurationService } from '@soco/configuration';\n\nimport { ApiResult } from '@soco/core';\nimport { Sample } from '../sample/sample';\nimport { url } from 'inspector';\nimport { ScheduleOrder, AGLCScheduleOrder } from './schedule-entities';\n\n@Injectable()\nexport class ScheduleService {\n\n public rescheduleBaseUrl = '/Reschedule/';\n public appDataBaseUrl = '/AppData/';\n public scheduleBaseUrl = '/Scheduler/';\n public account: any = {};\n //public params: string;\n\n\n constructor(private http: SocoHttpService, private ngHttp: HttpClient, private config: SocoConfigurationService) { }\n\n scheduleOrder(scheduleOrder: ScheduleOrder) {\n\n //console.log('CCB Schedule Req: ', scheduleOrder);\n\n return this.http.post({\n url: this.scheduleBaseUrl + 'CCBScheduleOrder',\n data: scheduleOrder,\n //alertId: alertId,\n shouldIgnoreInvalidResult: true,\n pleaseWaitTimeoutDuration: 500\n });\n }\n\n aglcScheduleOrder(aglcScheduleOrder: AGLCScheduleOrder) {\n\n //console.log('AGLC Schedule Req: ', aglcScheduleOrder);\n\n return this.http.post({\n url: this.scheduleBaseUrl + 'AGLCScheduleOrder',\n data: aglcScheduleOrder,\n //alertId: alertId,\n shouldIgnoreInvalidResult: true,\n pleaseWaitTimeoutDuration: 500\n });\n }\n \n verifyAccountAndOrderEligibity(ldc: string, orderType: string, accountNumber: string, billingZipCode: string) {\n var params: string = '';\n\n params = ldc + \"/\" + orderType + \"/\" + accountNumber + \"/\" + billingZipCode;\n\n //console.log('verifyAccount params : ', params);\n\n return this.http.get({\n url: this.scheduleBaseUrl + 'VerifyAccountAndOrderEligibility/' + params,\n });\n }\n\n // Error call back for http requests.\n private handleError(error: any) {\n\n // const errMsg = (error.message) ? error.message :\n // error.status ? `${error.status} - ${error.statusText}` : 'Server error';\n // return Observable.throw(errMsg);\n }\n\n}\n","//export class Questionnaire {\n// question: string = '';\n// answer: string = '';\n//}\n\n/*\nexport class CovidQuestionnaireInput { \n questionnaireList = [];\n ldc: string = '';\n kmiUrlCode: string = '';\n orderNumber: string = '';\n orderType: string = '';\n premisesNumber: string = ''; \n logReferenceID: string = '';\n portalTypeID: number = 0; \n emailToList: string = '';\n}\nexport class CovidQuestionnaireOutput {\n isQuestionnaireHasYes: boolean = false;\n questionnaireQnAnswerList = [];\n}\n*/\n\nexport class AccountVerificationInput { \n ldc: string = '';\n cisOrderType: string = '';\n acntNumberFromURL: string = '';\n logReferenceID: string = '';\n portalTypeID: number = 0;\n emailToList: string = '';\n contactPhoneNo: string = '';\n contactHours: string = '';\n}\nexport class AccountVerificationOutput {\n accountDetails: AccountDetails;\n accountNumber: string = '';\n}\n\nexport class AccountDetails {\n isValidAccount: boolean = false;\n isOrderEligibleToSchedule: boolean = false;\n orderNumber: string = '';\n premiseNumber: string = '';\n personID: string = '';\n ldc: string = '';\n serviceCenter: string = '';\n billingAddress: string = '';\n premisesAddress: string = '';\n customerName: string = '';\n customerFirstName: string = '';\n emailAddress: string = '';\n phoneNumber: string = '';\n premiseType: string = '';\n isKMIEligible: boolean = false;\n marketerName: string = '';\n marketerPhoneNumber: string = '';\n}","module.exports = \"agm-map {\\n height: 300px !important;\\n}\\n\\n.container {\\n background: white !important;\\n}\\n\\n.flex-container {\\n display: -ms-flexbox;\\n display: flex;\\n -ms-flex-wrap: wrap;\\n flex-wrap: wrap;\\n /* background-color: #cccfd2; */\\n}\\n\\n.flex-container > div {\\n width: 23%;\\n margin: 1%;\\n text-align: center;\\n /* line-height: 75px;\\n font-size: 30px; */\\n }\\n\\n@media only screen and (min-width: 760px) {\\n .h-400 {\\n min-height: 444px !important;\\n }\\n\\n .flex-container {\\n width: 50%;\\n }\\n}\\n\\n.main {\\n /* background: linear-gradient(#fffcfc, #f6b6b6); */\\n /* Safari */\\n display: -ms-flexbox;\\n display: flex;\\n}\\n\\n.card {\\n border: 1px solid #d6cccc;\\n margin-bottom: 0% !important;\\n}\\n\\n.main div {\\n /* Safari 6.1+ */\\n -ms-flex: 1;\\n /* IE 10 */\\n flex: 1;\\n}\\n\\n.main i {\\n text-align: center;\\n display: block;\\n}\\n\\n.example-class {\\n background-color: aliceblue;\\n}\\n\\n.other-class {\\n background-color: aqua;\\n}\\n\\n.BerninaSanslight {\\n font-family: jaf-bernina-sans;\\n}\\n\\n.AdelleRegular {\\n font-family: Adelle;\\n}\\n\\n.AdelleBold {\\n font-family: Adelle;\\n font-weight: bold;\\n}\\n\\n.AdelleSmall {\\n font-family: Adelle;\\n font-size: 13px;\\n line-height: 1.6;\\n}\\n\\n.AdelleSmallStrongRed {\\n font-family: Adelle;\\n font-size: 12px;\\n line-height: 1.6;\\n color: #c23225;\\n}\\n\\nspan, p, strong, li {\\n font-family: jaf-bernina-sans;\\n color: black;\\n}\\n\\nb {\\n font-family: jaf-bernina-sans;\\n color: lightgray;\\n}\\n\\n.green {\\n font-size: 50px;\\n color: rgb(37, 160, 37);\\n}\\n\\n.orange {\\n font-size: 50px;\\n color: orange;\\n}\\n\\n.gray {\\n font-size: 50px;\\n color: gray;\\n}\\n\\n.gmnoprint {\\n display: none;\\n}\\n\\n.tooltip {\\n position: relative;\\n display: inline-block;\\n border-bottom: 1px dotted black;\\n}\\n\\n.tooltip .tooltiptext {\\n visibility: hidden;\\n width: 120px;\\n background-color: #555;\\n color: #fff;\\n text-align: center;\\n border-radius: 6px;\\n padding: 5px 0;\\n position: absolute;\\n z-index: 1;\\n bottom: 125%;\\n left: 50%;\\n margin-left: -60px;\\n opacity: 0;\\n transition: opacity 0.3s;\\n }\\n\\n.tooltip .tooltiptext::after {\\n content: \\\"\\\";\\n position: absolute;\\n top: 100%;\\n left: 50%;\\n margin-left: -5px;\\n border-width: 5px;\\n border-style: solid;\\n border-color: #555 transparent transparent transparent;\\n }\\n\\n.tooltip:hover .tooltiptext {\\n visibility: visible;\\n opacity: 1;\\n }\\n\\n.flex-container {\\n display: -ms-flexbox;\\n display: flex;\\n -ms-flex-wrap: nowrap;\\n flex-wrap: nowrap;\\n background-color: #eef8f9;\\n}\\n\\n.flex-container > div {\\n background-color: #eef8f9;\\n width: 100%;\\n margin: 10px;\\n text-align: center;\\n line-height: 75px;\\n font-size: 30px;\\n }\\n\\n.wizard-progress {\\n display: table;\\n width: 100%;\\n table-layout: fixed;\\n position: relative;\\n}\\n\\n.wizard-progress .step {\\n display: table-cell;\\n text-align: center;\\n vertical-align: top;\\n overflow: visible;\\n position: relative;\\n font-size: 14px;\\n color: white;\\n font-weight: bold;\\n }\\n\\n.wizard-progress .step:not(:last-child):before {\\n content: '';\\n display: block;\\n position: absolute;\\n left: 50%;\\n top: 32px;\\n background-color: #e0dddd;\\n height: 6px;\\n width: 100%;\\n margin-top: 0%;\\n }\\n\\n.wizard-progress .step .node {\\n display: inline-block;\\n /* border: 6px solid #fff; */\\n background-color: lightgray;\\n border-radius: 18px;\\n /* border-color: black; */\\n height: 25px;\\n width: 24px;\\n position: absolute;\\n top: 23px;\\n left: 50%;\\n margin-left: -18px;\\n margin-top: 0%;\\n }\\n\\n.wizard-progress .step.complete:before {\\n background-color: #b2d235;\\n margin-top: 0%;\\n }\\n\\n.wizard-progress .step.complete .node {\\n border-color: #b2d235;\\n background-color: #b2d235;\\n margin-top: 0%;\\n }\\n\\n.wizard-progress .step.active .node {\\n border-color: #b2d235;\\n background-color: #b2d235;\\n margin-top: 0%;\\n }\\n\\n.wizard-progress .step.in-progress:before {\\n background-color: #b2d235;\\n }\\n\\n.wizard-progress .step.in-progress .node {\\n border-color: #b2d235;\\n background-color: #b2d235;\\n }\\n\\n.wizard-progress .step.cgi:before {\\n background-color: red;\\n }\\n\\n.wizard-progress .step.cgi .node {\\n border-color: red;\\n background-color: red;\\n }\\n\\n.wizard-progress .step.cgi .node:before {\\n font-family: FontAwesome;\\n content: \\\"\\\\f00d\\\";\\n margin-bottom: 0% !important;\\n }\\n\\n.wizard-progress .step.complete .node:before {\\n font-family: FontAwesome;\\n content: \\\"\\\\f00c\\\";\\n margin-bottom: 1px !important;\\n }\\n\\n.wizard-progress .step.in-progress .node:before {\\n font-family: FontAwesome;\\n content: \\\"\\\\f00c\\\";\\n }\\n\\n.wizard-progress .step.active .node:before {\\n font-family: FontAwesome;\\n content: \\\"\\\\f00c\\\";\\n }\\n\\n.wizard-progress .step.in-progress:before {\\n margin-top: 0%;\\n background: #b2d235;\\n background-image: linear-gradient(to right, #b2d235 43%, lightgray 21%, #ec1c24 46%);\\n background: linear-gradient(to right, #b2d235 43%, lightgray 21%, #ec1c24 46%);\\n filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#07c', endColorstr='#fff',GradientType=1 );\\n }\\n\\n.wizard-progress .step.active:before {\\n background-image: linear-gradient(to right, #b2d235 50%, lightgray 4%, lightgray 46%);\\n background: linear-gradient(to right, #b2d235 43%, lightgray 21%, lightgray 46%);\\n background-color: black;\\n }\\n\\n.wizard-progress .step.active .node {\\n border-color: #b2d235;\\n }\\n\\n.wizard-progress .step.in-progress .node {\\n border-color: #b2d235;\\n }\\n\\n.navbarBG {\\n background-color: #003a5d !important;\\n}\\n\\n.logoHW {\\n height: 100%;\\n width: 50%;\\n}\\n\\n.NicorlogoHW {\\n height: 100%;\\n width: 50%;\\n}\\n\\n.orderReschedulingBG {\\n background-color: #00bcf1;\\n margin-bottom: 0%;\\n}\\n\\n.ldcStyle {\\n margin-left: 5%;\\n padding-bottom: 1%;\\n margin-bottom: 1%;\\n color: whitesmoke;\\n font-family: Adelle !important;\\n}\\n\\n.orderStatusColor {\\n margin-left: 5%;\\n color: whitesmoke;\\n}\\n\\n.bold {\\n font-weight: bold\\n}\\n\\n.orderStatusSB {\\n background-color: #ffffff;\\n margin-top: -2%;\\n padding-top: 2%;\\n padding-bottom: 3%;\\n}\\n\\n.imgHW {\\n height: 100%;\\n width: 97%;\\n}\\n\\n.statusMessageBG {\\n color: #bdbdbd !important;\\n}\\n\\n.statusMessageIcon {\\n font-size: 24px;\\n padding-left: 1%;\\n color: #ff9800 !important\\n}\\n\\n.cardTitleBG {\\n background-color: #ffffff !important;\\n}\\n\\n.mapTextIcon {\\n color: #bdbdbd !important;\\n}\\n\\n.padding-left-3 {\\n padding-left: 3%;\\n}\\n\\n.appointmentSB {\\n padding-top: 0%;\\n padding-left: 2%;\\n color: black;\\n font-size: 13px;\\n}\\n\\n.reminderSB {\\n padding-top: 0%;\\n padding-left: 5%;\\n color: black;\\n font-size: 13px;\\n}\\n\\n.enrouteSB {\\n padding-top: 0%;\\n padding-right: 0%;\\n color: black;\\n font-size: 13px;\\n}\\n\\n.completeSB {\\n color: black;\\n padding-top: 0%;\\n padding-right: 12%;\\n font-size: 13px;\\n}\\n\\n.whiteBG {\\n background-color: #ffffff !important;\\n}\\n\\n.techImg {\\n border-radius: 50%;\\n margin-top: 5%;\\n margin-bottom: 3%;\\n margin-left: 9%;\\n}\\n\\n.techName {\\n text-align: center;\\n font-weight: 700;\\n font-family: Adelle;\\n color: black;\\n margin-left: 7%;\\n font-size: 20px;\\n}\\n\\n.eta {\\n color: black;\\n font-weight: 600;\\n font-family: Adelle;\\n font-size: 20px;\\n margin-left: 5%;\\n margin-top: 3%;\\n padding: 0 !important;\\n}\\n\\n.etaWindow {\\n color: black;\\n font-weight: 600;\\n font-family: Adelle;\\n font-size: 20px;\\n margin-left: 5%;\\n padding: 0 !important;\\n}\\n\\n.techWarning {\\n font-size: 24px;\\n padding-right: 5px;\\n}\\n\\n.mapText {\\n font-size: 24px;\\n padding-right: 5px;\\n color: #bdbdbd !important\\n}\\n\\n.pl-3 {\\n padding-left: 3%;\\n}\\n\\n.marketerContact {\\n color: whitesmoke !important;\\n font-weight: bold;\\n font-size: 16px;\\n}\\n\\n.marginTop-7 {\\n margin-top: 7% !important;\\n}\\n\\n.marginRight-5 {\\n margin-right: 5% !important;\\n}\\n\\n.techText {\\n width: 85%;\\n float: right;\\n}\\n\\n.mapInfo {\\n font-size: 24px;\\n padding-right: 5px;\\n color: #bdbdbd !important\\n}\\n\\n.margin-left-5 {\\n margin-left: 5%\\n}\\n\\n.cardPad {\\n padding-top: 3%;\\n padding-left: 3%;\\n padding-right: 3%;\\n background-color: #ffffff;\\n}\\n\\n.sticky {\\n position: fixed;\\n left: 0;\\n bottom: 0;\\n width: 100%;\\n background-color: red;\\n color: white;\\n text-align: center !important;\\n font-family: Adelle !important;\\n}\\n\\n.alertPad {\\n width: 87%;\\n float: right;\\n}\\n\\n.statusMsgWidth {\\n float: right;\\n width: 90%;\\n}\\n\\n.pt-3 {\\n padding-top: 3% !important;\\n margin-bottom: 3% !important;\\n}\\n\\n.pt-2 {\\n padding-top: 2%;\\n}\\n\\ntextarea::-webkit-input-placeholder {\\n color: #757575 !important;\\n font-size: 13px !important;\\n font-family: Adelle !important;\\n}\\n\\ntextarea::-moz-placeholder { /* Firefox 19+ */\\n color: #757575 !important;\\n font-size: 13px !important;\\n font-family: Adelle !important;\\n}\\n\\ntextarea:-ms-input-placeholder {\\n color: #757575 !important;\\n font-size: 13px !important;\\n font-family: Adelle !important;\\n}\\n\\ntextarea::-ms-input-placeholder {\\n color: #757575 !important;\\n font-size: 13px !important;\\n font-family: Adelle !important;\\n}\\n\\ntextarea::placeholder {\\n color: #757575 !important;\\n font-size: 13px !important;\\n font-family: Adelle !important;\\n}\\n\\n.blocks .btn-default {\\n /*padding: 24px 10px;*/\\n margin-top: 0px;\\n margin-bottom: 10px;\\n margin-left: 5px;\\n margin-right: 7px;\\n border-radius: 0;\\n border-color: #c23225;\\n color: #c23225; /*StrongRed*/\\n height: 60px !important;\\n width: 80px !important;\\n padding-left: 10px !important;\\n padding-right: 10px !important;\\n text-transform: none !important;\\n}\\n\\n.btnDisabled {\\n border-color: #757575 !important;\\n color: #757575 !important;\\n}\\n\\n.roundedTextArea {\\n width: 230px !important;\\n height: 120px !important;\\n border-radius: 10px !important;\\n border: 1px solid #757575;\\n font-family: jaf-bernina-sans;\\n padding: 15px;\\n}\\n\\n.checkMarkGreen {\\n width: 75px;\\n height: 75px;\\n background: white;\\n /*background: url(../../assets/images/checkmark-green-circle.png);*/\\n}\\n\\n.timeslotblocks .btn-default .btn-round {\\n margin-top: 0px;\\n margin-bottom: 10px;\\n /*margin-left: 5px;\\n margin-right: 7px;*/\\n border-radius: 0;\\n border-color: #c23225;\\n color: #c23225; /*StrongRed*/\\n height: 60px !important;\\n width: 80px !important;\\n padding-left: 10px !important;\\n padding-right: 10px !important;\\n text-transform: none !important;\\n}\\n\\n.btnTimeSlot {\\n /*color: #757575 !important;*/\\n /*margin: 3.5% 0% !important;*/\\n width: 185px !important;\\n height: 40px !important;\\n color: #c23225 !important;\\n border-color: #c23225 !important;\\n}\\n\\n.btnStrongRedConfirm {\\n border: 1px solid #c23225 !important;\\n /*border-radius:10px !important;*/\\n color: white !important;\\n background: #c23225 !important;\\n font-weight: bold !important;\\n width: 130px !important;\\n margin-left: 3%;\\n margin-bottom: 10px;\\n text-transform: none;\\n font-size: 14px;\\n}\\n\\n.btnStrongRedOrderStatus {\\n border: 1px solid #c23225 !important;\\n /*border-radius:10px !important;*/\\n color: white !important;\\n background: #c23225 !important;\\n font-weight: bold !important;\\n width: 240px !important;\\n margin-left: 3%;\\n}\\n\\n.btnFillStrongRed {\\n color: white !important;\\n background-color: #c23225 !important;\\n}\\n\\n.btnStrongRedNoFill {\\n border: 1px solid #c23225 !important;\\n /*border-radius:10px !important;*/\\n color: #c23225 !important;\\n background: white !important;\\n font-weight: bold !important;\\n width: 130px !important;\\n margin-left: 3%;\\n text-transform: none;\\n font-size: 14px;\\n}\\n\\n/* To hide Stepper Navigation*/\\n\\n::ng-deep .mat-horizontal-stepper-header {\\n pointer-events: none !important;\\n}\\n\\n.matHorizontalStepper {\\n margin-top: 5px !important;\\n box-shadow: none;\\n}\\n\\n.divAvailableDayTable {\\n display: table;\\n table-layout: fixed;\\n width: 100%;\\n margin-bottom: 0px;\\n}\\n\\n.divAvailableDay {\\n width: 100% !important;\\n overflow-x: scroll;\\n white-space: nowrap !important;\\n display: inline-block; /* To apply given width to available day button */\\n}\\n\\n.divAvailableDayOuter {\\n padding: 1%;\\n display: table-cell !important;\\n width: 76%;\\n}\\n\\n.divTimeSlot {\\n margin-left: 0px;\\n overflow-y: auto !important;\\n height: 200px;\\n}\\n\\n.btnAvailableDayDivArrow {\\n -webkit-appearance: none;\\n background: transparent;\\n border: none;\\n outline: none;\\n background-repeat: no-repeat;\\n cursor: pointer;\\n width: 100%;\\n padding: 1px !important;\\n}\\n\\n.divAvailableDayArrow {\\n display: table-cell !important;\\n width: 12%;\\n vertical-align: middle;\\n padding-bottom: 10px;\\n}\\n\\n.matArrowButtonActive {\\n color: #c23225;\\n font-size: 36px;\\n}\\n\\n.matArrowButtonInActive {\\n color: #808080;\\n font-size: 36px;\\n}\\n\\n.confirmSpinnerColor ::ng-deep .mat-progress-spinner circle, .mat-spinner circle {\\n stroke: #ff9800 !important;\\n}\\n\\n:host ::ng-deep .mat-horizontal-content-container {\\n padding: 0 !important;\\n}\\n\\n.card, .mat-stepper-horizontal {\\n margin-top: 0px !important;\\n}\\n\\n.confirmSpinnerCenter {\\n position: absolute;\\n top: 50%;\\n left: 50%;\\n -webkit-transform: translateX(-50%) translateY(-50%);\\n transform: translateX(-50%) translateY(-50%);\\n}\\n\\n.confirmSpinnerOverlay {\\n height: 100%;\\n width: 100%;\\n background-color: rgba(0, 0, 0, 0.286);\\n z-index: 10;\\n top: 0;\\n left: 0;\\n position: absolute;\\n}\\n\\n.btnMoreDates {\\n color: #c23225 !important;\\n background-color: white !important;\\n width: 60px !important;\\n padding: 5px !important;\\n font-size: 10px;\\n}\\n\\n.btnPopOverAlert {\\n border-left: none;\\n border-top: none;\\n border-right: none;\\n border-bottom: 1px dotted #c23225;\\n text-decoration: none;\\n background: transparent;\\n color: #c23225;\\n font-family: Adelle;\\n cursor: pointer;\\n}\\n\\n/* Popover Header */\\n\\n.popover-title {\\n background-color: #c23225;\\n color: #FFFFFF;\\n font-size: 10px;\\n text-align: center;\\n font-family: Adelle;\\n}\\n\\n/* Popover Body */\\n\\n.popover-content {\\n background-color: #FFFFFF;\\n color: black;\\n padding: 10px;\\n}\\n\\n/* Popover Arrow */\\n\\n.arrow {\\n border-right-color: #c23225 !important;\\n}\\n\\n.popover-header {\\n background-color: #c23225 !important;\\n color: #FFFFFF !important;\\n font-size: 10px !important;\\n text-align: center !important;\\n font-family: Adelle !important;\\n}\\n\\n/* Popover Body */\\n\\n.popover-body {\\n background-color: #FFFFFF !important;\\n color: black !important;\\n padding: 10px !important;\\n}\\n\\n/* Popover Arrow */\\n\\n.arrow {\\n border-right-color: #c23225 !important;\\n}\\n\\n.btnStrongRedVerify {\\n border: 1px solid #c23225 !important;\\n /*border-radius:10px !important;*/\\n color: white !important;\\n background: #c23225 !important;\\n font-weight: bold !important;\\n width: 200px !important;\\n margin-left: 0%;\\n margin-bottom: 5px;\\n text-transform: none;\\n font-size: 14px;\\n}\\n\\n.btnStrongRedBackToValidate {\\n border: 1px solid #c23225 !important;\\n /*border-radius:10px !important;*/\\n color: white !important;\\n background: #c23225 !important;\\n font-weight: bold !important;\\n width: auto !important;\\n margin-left: 0%;\\n margin-bottom: 5px;\\n text-transform: none;\\n font-size: 14px;\\n}\\n\\n.divAVScroll {\\n /*width: 200px;\\n height: 400px;\\n background: red;*/\\n overflow-x: scroll;\\n}\\n\\n.divAVScroll::-webkit-scrollbar {\\n /*width: 10px;*/\\n background-color: #F5F5F5;\\n height: 5px;\\n }\\n\\n.divAVScroll::-webkit-scrollbar-track {\\n -webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.3);\\n background-color: #F5F5F5;\\n }\\n\\n.divAVScroll::-webkit-scrollbar-thumb {\\n background-color: #d96a60;\\n border: 2px solid #d5857e;\\n }\\n\\n.btnStrongRedNoFillLong {\\n border: 1px solid #c23225 !important;\\n /*border-radius:10px !important;*/\\n color: #c23225 !important;\\n background: white !important;\\n font-weight: bold !important;\\n width: 180px !important;\\n margin-left: 3%;\\n text-transform: none !important;\\n font-size: 14px;\\n}\\n\\n.btnStrongRedFillLong {\\n border: 1px solid #c23225 !important;\\n /*border-radius:10px !important;*/\\n color: white !important;\\n background: #c23225 !important;\\n font-weight: bold !important;\\n width: 180px !important;\\n margin-left: 3%;\\n /*margin-bottom: 10px;*/\\n text-transform: none !important;\\n font-size: 14px;\\n}\\n\\n.divTimeslotScroll {\\n /*width: 200px;\\n height: 400px;\\n background: red;*/\\n overflow-y: scroll;\\n}\\n\\n.divTimeslotScroll::-webkit-scrollbar {\\n /*width: 10px;*/\\n background-color: #F5F5F5;\\n width: 5px;\\n }\\n\\n.divTimeslotScroll::-webkit-scrollbar-track {\\n -webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.3);\\n background-color: #F5F5F5;\\n }\\n\\n.divTimeslotScroll::-webkit-scrollbar-thumb {\\n background-color: #d96a60;\\n border: 2px solid #d5857e;\\n }\\n\\n.phoneIcon {\\n /*width: 18px;\\n height: 12px;\\n background: url(../../assets/images/icon_Phone.png);*/\\n height: 20px;\\n width: 14px;\\n margin: 5px !important;\\n}\\n\\n.form-control:focus {\\n border-color: #FF0000;\\n /*box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(255, 0, 0, 0.6);*/\\n box-shadow: inset 0 1px 1px #00bcf1, 0 1px 4px #00bcf1;\\n}\\n\\n.divKMIPhone {\\n border: 1px solid gray;\\n width: 230px;\\n display: -ms-flexbox;\\n display: flex;\\n border-radius: 5px;\\n /*margin-left: 2%;*/\\n margin-bottom: 10px;\\n height: 25pt;\\n}\\n\\n.divLightCyanAlert {\\n background-color: lightcyan;\\n display: block;\\n padding: 5px 10px;\\n /*margin: 0px 10px;*/\\n margin-bottom: 5px;\\n line-height: 1.2em;\\n}\\n\\n.accountVerificationContainer {\\n padding-right: 15px;\\n padding-left: 15px;\\n margin-right: auto;\\n margin-left: auto;\\n}\\n\\n.accountVerificationInput {\\n border: 1px solid #ccc;\\n background-image: none;\\n border-radius: 4px;\\n padding-left: 10px;\\n /*margin-left: 15px;*/\\n width: 90%;\\n}\\n\\n.phoneNumberInput {\\n outline: none;\\n border: none;\\n font-family: 'Source Sans Pro',sans-serif;\\n font-size: 15px;\\n width: 150px !important;\\n}\\n\\n.SansSerifRegular {\\n /*font-family: 'Source Sans Pro',sans-serif;*/\\n font-family: -apple-system,system-ui,BlinkMacSystemFont,\\\"Segoe UI\\\",Roboto,\\\"Helvetica Neue\\\",Arial,sans-serif;\\n font-size: 1em;\\n font-weight: normal;\\n}\\n\\n.SansSerifSmall {\\n /*font-family: 'Source Sans Pro',sans-serif;*/\\n font-family: -apple-system,system-ui,BlinkMacSystemFont,\\\"Segoe UI\\\",Roboto,\\\"Helvetica Neue\\\",Arial,sans-serif;\\n font-size: 0.8em;\\n font-weight: normal;\\n}\\n\\n.radioInput {\\n height: 1.5em;\\n width: 1.5em;\\n border: 0px;\\n vertical-align: middle\\n}\\n\\n.radioInputLabel {\\n height: 1.5em;\\n line-height: 1.5em;\\n vertical-align: sub;\\n padding-left: 0.5em;\\n}\\n\\n.radioInputLabelCombo {\\n vertical-align: middle;\\n width: 16em;\\n margin-bottom: 0px\\n}\\n\\n.playIcon {\\n height: 2.5em;\\n float: left;\\n /*width: 3em;*/\\n margin-right: 0.5em !important;\\n}\\n\\n.apptConfirmationMsg {\\n margin-left: 2%;\\n margin-right: 2%;\\n margin-top: 2%;\\n font-size: 15px;\\n text-align: center\\n}\\n\\n.processStopMsg {\\n margin: 0.5em 1.3em;\\n font-weight: bold;\\n font-size: 1.1em;\\n line-height: 1.5;\\n}\\n\\n.italicAdelleSmall {\\n margin-left: 5%;\\n font-family: Adelle;\\n font-size: 11px;\\n font-style: italic;\\n line-height: 0\\n}\\n\\n.phoneValidationError {\\n margin-left: 2%;\\n -webkit-box-decoration-break: clone;\\n box-decoration-break: clone;\\n}\\n\\n.divReminderMessageByEC {\\n width: 90%;\\n display: inline-block;\\n font-size: 14px;\\n text-align: left;\\n}\\n\\n.textInput {\\n width: 230px !important;\\n height: 25pt !important;\\n border-radius: 5px !important;\\n border: 1px solid #757575;\\n font-family: jaf-bernina-sans;\\n padding: 3px 10px;\\n}\\n\\n.acntInfoInput {\\n border: 1px solid #ccc !important;\\n background-image: none !important;\\n border-radius: 4px !important;\\n padding-left: 10px !important;\\n width: 90% !important;\\n}\\n\\n.confirmDiv {\\n padding-bottom: 5%;\\n -ms-flex-align: center;\\n align-items: center;\\n border: none;\\n box-shadow: none\\n}\\n\\n.errorDiv {\\n padding-right: 20px !important;\\n padding-left: 20px !important;\\n margin-top: 10%;\\n}\\n\\n.errorInnerDiv {\\n padding: 15% 10%;\\n}\\n\\ninput::-webkit-input-placeholder {\\n color: #757575 !important;\\n font-size: 12px !important;\\n font-family: Adelle !important;\\n}\\n\\ninput::-moz-placeholder { /* Firefox 19+ */\\n color: #757575 !important;\\n font-size: 12px !important;\\n font-family: Adelle !important;\\n}\\n\\ninput:-ms-input-placeholder {\\n color: #757575 !important;\\n font-size: 12px !important;\\n font-family: Adelle !important;\\n}\\n\\ninput::-ms-input-placeholder {\\n color: #757575 !important;\\n font-size: 12px !important;\\n font-family: Adelle !important;\\n}\\n\\ninput::placeholder {\\n color: #757575 !important;\\n font-size: 12px !important;\\n font-family: Adelle !important;\\n}\\n\\nstrong {\\n font-weight: bold !important;\\n}\\n\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvc2hhcmVkL2NvbXBvbmVudHMvYWNjb3VudHZlcmlmaWNhdGlvbi9hY2NvdW50LXZlcmlmaWNhdGlvbi5jb21wb25lbnQuY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0lBQ0ksd0JBQXdCO0FBQzVCOztBQUVBO0lBQ0ksNEJBQTRCO0FBQ2hDOztBQUVBO0lBQ0ksb0JBQWE7SUFBYixhQUFhO0lBQ2IsbUJBQWU7UUFBZixlQUFlO0lBQ2YsK0JBQStCO0FBQ25DOztBQUVJO1FBQ0ksVUFBVTtRQUNWLFVBQVU7UUFDVixrQkFBa0I7UUFDbEI7c0JBQ2M7SUFDbEI7O0FBRUo7SUFDSTtRQUNJLDRCQUE0QjtJQUNoQzs7SUFFQTtRQUNJLFVBQVU7SUFDZDtBQUNKOztBQUVBO0lBRUksbURBQW1EO0lBQ25ELFdBQVc7SUFDWCxvQkFBYTtJQUFiLGFBQWE7QUFDakI7O0FBRUE7SUFDSSx5QkFBeUI7SUFDekIsNEJBQTRCO0FBQ2hDOztBQUVBO0lBRUksZ0JBQWdCO0lBQ2hCLFdBQVc7SUFDWCxVQUFVO0lBQ1YsT0FBTztBQUNYOztBQUVBO0lBQ0ksa0JBQWtCO0lBQ2xCLGNBQWM7QUFDbEI7O0FBRUE7SUFDSSwyQkFBMkI7QUFDL0I7O0FBRUE7SUFDSSxzQkFBc0I7QUFDMUI7O0FBRUE7SUFDSSw2QkFBNkI7QUFDakM7O0FBRUE7SUFDSSxtQkFBbUI7QUFDdkI7O0FBRUE7SUFDSSxtQkFBbUI7SUFDbkIsaUJBQWlCO0FBQ3JCOztBQUVBO0lBQ0ksbUJBQW1CO0lBQ25CLGVBQWU7SUFDZixnQkFBZ0I7QUFDcEI7O0FBRUE7SUFDSSxtQkFBbUI7SUFDbkIsZUFBZTtJQUNmLGdCQUFnQjtJQUNoQixjQUFjO0FBQ2xCOztBQUVBO0lBQ0ksNkJBQTZCO0lBQzdCLFlBQVk7QUFDaEI7O0FBRUE7SUFDSSw2QkFBNkI7SUFDN0IsZ0JBQWdCO0FBQ3BCOztBQUVBO0lBQ0ksZUFBZTtJQUNmLHVCQUF1QjtBQUMzQjs7QUFFQTtJQUNJLGVBQWU7SUFD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QVFBLDBCQUEwQixnQkFBZ0I7SUFDdEMseUJBQXlCO0lBQ3pCLDBCQUEwQjtJQUMxQiw4QkFBOEI7QUFDbEM7O0FBRUE7SUFDSSx5QkFBeUI7SUFDekIsMEJBQTBCO0lBQzFCLDhCQUE4QjtBQUNsQzs7QUFFQTtJQUNJLHlCQUF5QjtJQUN6QiwwQkFBMEI7SUFDMUIsOEJBQThCO0FBQ2xDOztBQUpBO0lBQ0kseUJBQXlCO0lBQ3pCLDBCQUEwQjtJQUMxQiw4QkFBOEI7QUFDbEM7O0FBRUE7SUFDSSw0QkFBNEI7QUFDaEMiLCJmaWxlIjoic3JjL2FwcC9zaGFyZWQvY29tcG9uZW50cy9hY2NvdW50dmVyaWZpY2F0aW9uL2FjY291bnQtdmVyaWZpY2F0aW9uLmNvbXBvbmVudC5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyJhZ20tbWFwIHtcbiAgICBoZWlnaHQ6IDMwMHB4ICFpbXBvcnRhbnQ7XG59XG5cbi5jb250YWluZXIge1xuICAgIGJhY2tncm91bmQ6IHdoaXRlICFpbXBvcnRhbnQ7XG59XG5cbi5mbGV4LWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgLyogYmFja2dyb3VuZC1jb2xvcjogI2NjY2ZkMjsgKi9cbn1cblxuICAgIC5mbGV4LWNvbnRhaW5lciA+IGRpdiB7XG4gICAgICAgIHdpZHRoOiAyMyU7XG4gICAgICAgIG1hcmdpbjogMSU7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgLyogbGluZS1oZWlnaHQ6IDc1cHg7XG4gICAgZm9udC1zaXplOiAzMHB4OyAqL1xuICAgIH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjBweCkge1xuICAgIC5oLTQwMCB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDQ0NHB4ICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLmZsZXgtY29udGFpbmVyIHtcbiAgICAgICAgd2lkdGg6IDUwJTtcbiAgICB9XG59XG5cbi5tYWluIHtcbiAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gICAgLyogYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KCNmZmZjZmMsICNmNmI2YjYpOyAqL1xuICAgIC8qIFNhZmFyaSAqL1xuICAgIGRpc3BsYXk6IGZsZXg7XG59XG5cbi5jYXJkIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZDZjY2NjO1xuICAgIG1hcmdpbi1ib3R0b206IDAlICFpbXBvcnRhbnQ7XG59XG5cbi5tYWluIGRpdiB7XG4gICAgLXdlYmtpdC1mbGV4OiAxO1xuICAgIC8qIFNhZmFyaSA2LjErICovXG4gICAgLW1zLWZsZXg6IDE7XG4gICAgLyogSUUgMTAgKi9cbiAgICBmbGV4OiAxO1xufVxuXG4ubWFpbiBpIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5leGFtcGxlLWNsYXNzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBhbGljZWJsdWU7XG59XG5cbi5vdGhlci1jbGFzcyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogYXF1YTtcbn1cblxuLkJlcm5pbmFTYW5zbGlnaHQge1xuICAgIGZvbnQtZmFtaWx5OiBqYWYtYmVybmluYS1zYW5zO1xufVxuXG4uQWRlbGxlUmVndWxhciB7XG4gICAgZm9udC1mYW1pbHk6IEFkZWxsZTtcbn1cblxuLkFkZWxsZUJvbGQge1xuICAgIGZvbnQtZmFtaWx5OiBBZGVsbGU7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi5BZGVsbGVTbWFsbCB7XG4gICAgZm9udC1mYW1pbHk6IEFkZWxsZTtcbiAgICBmb250LXNpemU6IDEzcHg7XG4gICAgbGluZS1oZWlnaHQ6IDEuNjtcbn1cblxuLkFkZWxsZVNtYWxsU3Ryb25nUmVkIHtcbiAgICBmb250LWZhbWlseTogQWRlbGxlO1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBsaW5lLWhlaWdodDogMS42O1xuICAgIGNvbG9yOiAjYzIzMjI1O1xufVxuXG5zcGFuLCBwLCBzdHJvbmcsIGxpIHtcbiAgICBmb250LWZhbWlseTogamFmLWJlcm5pbmEtc2FucztcbiAgICBjb2xvcjogYmxhY2s7XG59XG5cbmIge1xuICAgIGZvbnQtZmFtaWx5OiBqYWYtYmVybmluYS1zYW5zO1xuICAgIGNvbG9yOiBsaWdodGdyYXk7XG59XG5cbi5ncmVlbiB7XG4gICAgZm9udC1zaXplOiA1MHB4O1xuICAgIGNvbG9yOiByZ2IoMzcsIDE2MCwgMzcpO1xufVxuXG4ub3JhbmdlIHtcbiAgICBmb250LXNpemU6IDUwcHg7XG4gICAgY29sb3I6IG9yYW5nZTtcbn1cblxuLmdyYXkge1xuICAgIGZvbnQtc2l6ZTogNTBweDtcbiAgICBjb2xvcjogZ3JheTtcbn1cblxuLmdtbm9wcmludCB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cblxuLnRvb2x0aXAge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IGRvdHRlZCBibGFjaztcbn1cblxuICAgIC50b29sdGlwIC50b29sdGlwdGV4dCB7XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgd2lkdGg6IDEyMHB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTU1O1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgICAgIHBhZGRpbmc6IDVweCAwO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIGJvdHRvbTogMTI1JTtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICBtYXJnaW4tbGVmdDogLTYwcHg7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcztcbiAgICB9XG5cbiAgICAgICAgLnRvb2x0aXAgLnRvb2x0aXB0ZXh0OjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAxMDAlO1xuICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC01cHg7XG4gICAgICAgICAgICBib3JkZXItd2lkdGg6IDVweDtcbiAgICAgICAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICM1NTUgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgICAgIH1cblxuICAgIC50b29sdGlwOmhvdmVyIC50b29sdGlwdGV4dCB7XG4gICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuXG4uZmxleC1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VlZjhmOTtcbn1cblxuICAgIC5mbGV4LWNvbnRhaW5lciA+IGRpdiB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlZWY4Zjk7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXJnaW46IDEwcHg7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDc1cHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICB9XG5cbi53aXphcmQtcHJvZ3Jlc3Mge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHRhYmxlLWxheW91dDogZml4ZWQ7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4gICAgLndpemFyZC1wcm9ncmVzcyAuc3RlcCB7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIH1cblxuICAgICAgICAud2l6YXJkLXByb2dyZXNzIC5zdGVwOm5vdCg6bGFzdC1jaGlsZCk6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgICB0b3A6IDMycHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTBkZGRkO1xuICAgICAgICAgICAgaGVpZ2h0OiA2cHg7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDAlO1xuICAgICAgICB9XG5cbiAgICAgICAgLndpemFyZC1wcm9ncmVzcyAuc3RlcCAubm9kZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAvKiBib3JkZXI6IDZweCBzb2xpZCAjZmZmOyAqL1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbGlnaHRncmF5O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMThweDtcbiAgICAgICAgICAgIC8qIGJvcmRlci1jb2xvcjogIGJsYWNrOyAqL1xuICAgICAgICAgICAgaGVpZ2h0OiAyNXB4O1xuICAgICAgICAgICAgd2lkdGg6IDI0cHg7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDIzcHg7XG4gICAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogLTE4cHg7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwJTtcbiAgICAgICAgfVxuXG4gICAgICAgIC53aXphcmQtcHJvZ3Jlc3MgLnN0ZXAuY29tcGxldGU6YmVmb3JlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNiMmQyMzU7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwJTtcbiAgICAgICAgfVxuXG4gICAgICAgIC53aXphcmQtcHJvZ3Jlc3MgLnN0ZXAuY29tcGxldGUgLm5vZGUge1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjYjJkMjM1O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2IyZDIzNTtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDAlO1xuICAgICAgICB9XG5cbiAgICAgICAgLndpemFyZC1wcm9ncmVzcyAuc3RlcC5hY3RpdmUgLm5vZGUge1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjYjJkMjM1O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2IyZDIzNTtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDAlO1xuICAgICAgICB9XG5cbiAgICAgICAgLndpemFyZC1wcm9ncmVzcyAuc3RlcC5pbi1wcm9ncmVzczpiZWZvcmUge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2IyZDIzNTtcbiAgICAgICAgfVxuXG4gICAgICAgIC53aXphcmQtcHJvZ3Jlc3MgLnN0ZXAuaW4tcHJvZ3Jlc3MgLm5vZGUge1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjYjJkMjM1O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2IyZDIzNTtcbiAgICAgICAgfVxuXG4gICAgICAgIC53aXphcmQtcHJvZ3Jlc3MgLnN0ZXAuY2dpOmJlZm9yZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZWQ7XG4gICAgICAgIH1cblxuICAgICAgICAud2l6YXJkLXByb2dyZXNzIC5zdGVwLmNnaSAubm9kZSB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHJlZDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJlZDtcbiAgICAgICAgfVxuXG4gICAgICAgICAgICAud2l6YXJkLXByb2dyZXNzIC5zdGVwLmNnaSAubm9kZTpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIlxcZjAwZFwiO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgLndpemFyZC1wcm9ncmVzcyAuc3RlcC5jb21wbGV0ZSAubm9kZTpiZWZvcmUge1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xuICAgICAgICAgICAgY29udGVudDogXCJcXGYwMGNcIjtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFweCAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgICAgLndpemFyZC1wcm9ncmVzcyAuc3RlcC5pbi1wcm9ncmVzcyAubm9kZTpiZWZvcmUge1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xuICAgICAgICAgICAgY29udGVudDogXCJcXGYwMGNcIjtcbiAgICAgICAgfVxuXG4gICAgICAgIC53aXphcmQtcHJvZ3Jlc3MgLnN0ZXAuYWN0aXZlIC5ub2RlOmJlZm9yZSB7XG4gICAgICAgICAgICBmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XG4gICAgICAgICAgICBjb250ZW50OiBcIlxcZjAwY1wiO1xuICAgICAgICB9XG5cbiAgICAgICAgLndpemFyZC1wcm9ncmVzcyAuc3RlcC5pbi1wcm9ncmVzczpiZWZvcmUge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMCU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjYjJkMjM1O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAjYjJkMjM1IDQzJSwgbGlnaHRncmF5IDIxJSwgI2VjMWMyNCA0NiUpO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICNiMmQyMzUgMCUsIGxpZ2h0Z3JheSAyMSUsICNlYzFjMjQgNDYlKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAjYjJkMjM1IDAlLCBsaWdodGdyYXkgMjElLCAjZWMxYzI0IDQ2JSk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICNiMmQyMzUgNDMlLCBsaWdodGdyYXkgMjElLCAjZWMxYzI0IDQ2JSk7XG4gICAgICAgICAgICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudCggc3RhcnRDb2xvcnN0cj0nIzA3YycsIGVuZENvbG9yc3RyPScjZmZmJyxHcmFkaWVudFR5cGU9MSApO1xuICAgICAgICB9XG5cbiAgICAgICAgLndpemFyZC1wcm9ncmVzcyAuc3RlcC5hY3RpdmU6YmVmb3JlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgI2IyZDIzNSA1MCUsIGxpZ2h0Z3JheSA0JSwgbGlnaHRncmF5IDQ2JSk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudCh0byByaWdodCwgI2IyZDIzNSAwJSwgbGlnaHRncmF5IDIxJSwgbGlnaHRncmF5IDQ2JSk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0byByaWdodCwgI2IyZDIzNSAwJSwgbGlnaHRncmF5IDIxJSwgbGlnaHRncmF5IDQ2JSk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICNiMmQyMzUgNDMlLCBsaWdodGdyYXkgMjElLCBsaWdodGdyYXkgNDYlKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGJsYWNrO1xuICAgICAgICB9XG5cbiAgICAgICAgLndpemFyZC1wcm9ncmVzcyAuc3RlcC5hY3RpdmUgLm5vZGUge1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjYjJkMjM1O1xuICAgICAgICB9XG5cbiAgICAgICAgLndpemFyZC1wcm9ncmVzcyAuc3RlcC5pbi1wcm9ncmVzcyAubm9kZSB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICNiMmQyMzU7XG4gICAgICAgIH1cblxuLm5hdmJhckJHIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAzYTVkICFpbXBvcnRhbnQ7XG59XG5cbi5sb2dvSFcge1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB3aWR0aDogNTAlO1xufVxuXG4uTmljb3Jsb2dvSFcge1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB3aWR0aDogNTAlO1xufVxuXG4ub3JkZXJSZXNjaGVkdWxpbmdCRyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwYmNmMTtcbiAgICBtYXJnaW4tYm90dG9tOiAwJTtcbn1cblxuLmxkY1N0eWxlIHtcbiAgICBtYXJnaW4tbGVmdDogNSU7XG4gICAgcGFkZGluZy1ib3R0b206IDElO1xuICAgIG1hcmdpbi1ib3R0b206IDElO1xuICAgIGNvbG9yOiB3aGl0ZXNtb2tlO1xuICAgIGZvbnQtZmFtaWx5OiBBZGVsbGUgIWltcG9ydGFudDtcbn1cblxuLm9yZGVyU3RhdHVzQ29sb3Ige1xuICAgIG1hcmdpbi1sZWZ0OiA1JTtcbiAgICBjb2xvcjogd2hpdGVzbW9rZTtcbn1cblxuLmJvbGQge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkXG59XG5cbi5vcmRlclN0YXR1c1NCIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICAgIG1hcmdpbi10b3A6IC0yJTtcbiAgICBwYWRkaW5nLXRvcDogMiU7XG4gICAgcGFkZGluZy1ib3R0b206IDMlO1xufVxuXG4uaW1nSFcge1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB3aWR0aDogOTclO1xufVxuXG5cblxuLnN0YXR1c01lc3NhZ2VCRyB7XG4gICAgY29sb3I6ICNiZGJkYmQgIWltcG9ydGFudDtcbn1cblxuLnN0YXR1c01lc3NhZ2VJY29uIHtcbiAgICBmb250LXNpemU6IDI0cHg7XG4gICAgcGFkZGluZy1sZWZ0OiAxJTtcbiAgICBjb2xvcjogI2ZmOTgwMCAhaW1wb3J0YW50XG59XG5cbi5jYXJkVGl0bGVCRyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZiAhaW1wb3J0YW50O1xufVxuXG4ubWFwVGV4dEljb24ge1xuICAgIGNvbG9yOiAjYmRiZGJkICFpbXBvcnRhbnQ7XG59XG5cbi5wYWRkaW5nLWxlZnQtMyB7XG4gICAgcGFkZGluZy1sZWZ0OiAzJTtcbn1cblxuLmFwcG9pbnRtZW50U0Ige1xuICAgIHBhZGRpbmctdG9wOiAwJTtcbiAgICBwYWRkaW5nLWxlZnQ6IDIlO1xuICAgIGNvbG9yOiBibGFjaztcbiAgICBmb250LXNpemU6IDEzcHg7XG59XG5cbi5yZW1pbmRlclNCIHtcbiAgICBwYWRkaW5nLXRvcDogMCU7XG4gICAgcGFkZGluZy1sZWZ0OiA1JTtcbiAgICBjb2xvcjogYmxhY2s7XG4gICAgZm9udC1zaXplOiAxM3B4O1xufVxuXG4uZW5yb3V0ZVNCIHtcbiAgICBwYWRkaW5nLXRvcDogMCU7XG4gICAgcGFkZGluZy1yaWdodDogMCU7XG4gICAgY29sb3I6IGJsYWNrO1xuICAgIGZvbnQtc2l6ZTogMTNweDtcbn1cblxuLmNvbXBsZXRlU0Ige1xuICAgIGNvbG9yOiBibGFjaztcbiAgICBwYWRkaW5nLXRvcDogMCU7XG4gICAgcGFkZGluZy1yaWdodDogMTIlO1xuICAgIGZvbnQtc2l6ZTogMTNweDtcbn1cblxuLndoaXRlQkcge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmYgIWltcG9ydGFudDtcbn1cblxuLnRlY2hJbWcge1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBtYXJnaW4tdG9wOiA1JTtcbiAgICBtYXJnaW4tYm90dG9tOiAzJTtcbiAgICBtYXJnaW4tbGVmdDogOSU7XG59XG5cbi50ZWNoTmFtZSB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgZm9udC1mYW1pbHk6IEFkZWxsZTtcbiAgICBjb2xvcjogYmxhY2s7XG4gICAgbWFyZ2luLWxlZnQ6IDclO1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbn1cblxuLmV0YSB7XG4gICAgY29sb3I6IGJsYWNrO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgZm9udC1mYW1pbHk6IEFkZWxsZTtcbiAgICBmb250LXNpemU6IDIwcHg7XG4gICAgbWFyZ2luLWxlZnQ6IDUlO1xuICAgIG1hcmdpbi10b3A6IDMlO1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbn1cblxuLmV0YVdpbmRvdyB7XG4gICAgY29sb3I6IGJsYWNrO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgZm9udC1mYW1pbHk6IEFkZWxsZTtcbiAgICBmb250LXNpemU6IDIwcHg7XG4gICAgbWFyZ2luLWxlZnQ6IDUlO1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbn1cblxuLnRlY2hXYXJuaW5nIHtcbiAgICBmb250LXNpemU6IDI0cHg7XG4gICAgcGFkZGluZy1yaWdodDogNXB4O1xufVxuXG4ubWFwVGV4dCB7XG4gICAgZm9udC1zaXplOiAyNHB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDVweDtcbiAgICBjb2xvcjogI2JkYmRiZCAhaW1wb3J0YW50XG59XG5cbi5wbC0zIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDMlO1xufVxuXG5cbi5tYXJrZXRlckNvbnRhY3Qge1xuICAgIGNvbG9yOiB3aGl0ZXNtb2tlICFpbXBvcnRhbnQ7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgZm9udC1zaXplOiAxNnB4O1xufVxuXG5cbi5tYXJnaW5Ub3AtNyB7XG4gICAgbWFyZ2luLXRvcDogNyUgIWltcG9ydGFudDtcbn1cblxuLm1hcmdpblJpZ2h0LTUge1xuICAgIG1hcmdpbi1yaWdodDogNSUgIWltcG9ydGFudDtcbn1cblxuLnRlY2hUZXh0IHtcbiAgICB3aWR0aDogODUlO1xuICAgIGZsb2F0OiByaWdodDtcbn1cblxuLm1hcEluZm8ge1xuICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiA1cHg7XG4gICAgY29sb3I6ICNiZGJkYmQgIWltcG9ydGFudFxufVxuXG4ubWFyZ2luLWxlZnQtNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDUlXG59XG5cbi5jYXJkUGFkIHtcbiAgICBwYWRkaW5nLXRvcDogMyU7XG4gICAgcGFkZGluZy1sZWZ0OiAzJTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzJTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xufVxuXG4uc3RpY2t5IHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgbGVmdDogMDtcbiAgICBib3R0b206IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmVkO1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgICBmb250LWZhbWlseTogQWRlbGxlICFpbXBvcnRhbnQ7XG59XG5cbi5hbGVydFBhZCB7XG4gICAgd2lkdGg6IDg3JTtcbiAgICBmbG9hdDogcmlnaHQ7XG59XG5cbi5zdGF0dXNNc2dXaWR0aCB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIHdpZHRoOiA5MCU7XG59XG5cbi5wdC0zIHtcbiAgICBwYWRkaW5nLXRvcDogMyUgIWltcG9ydGFudDtcbiAgICBtYXJnaW4tYm90dG9tOiAzJSAhaW1wb3J0YW50O1xufVxuXG4ucHQtMiB7XG4gICAgcGFkZGluZy10b3A6IDIlO1xufVxuXG50ZXh0YXJlYTo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICM3NTc1NzUgIWltcG9ydGFudDtcbiAgICBmb250LXNpemU6IDEzcHggIWltcG9ydGFudDtcbiAgICBmb250LWZhbWlseTogQWRlbGxlICFpbXBvcnRhbnQ7XG59XG5cbnRleHRhcmVhOi1tb3otcGxhY2Vob2xkZXIgeyAvKiBGaXJlZm94IDE4LSAqL1xuICAgIGNvbG9yOiAjNzU3NTc1ICFpbXBvcnRhbnQ7XG4gICAgZm9udC1zaXplOiAxM3B4ICFpbXBvcnRhbnQ7XG4gICAgZm9udC1mYW1pbHk6IEFkZWxsZSAhaW1wb3J0YW50O1xufVxuXG50ZXh0YXJlYTo6LW1vei1wbGFjZWhvbGRlciB7IC8qIEZpcmVmb3ggMTkrICovXG4gICAgY29sb3I6ICM3NTc1NzUgIWltcG9ydGFudDtcbiAgICBmb250LXNpemU6IDEzcHggIWltcG9ydGFudDtcbiAgICBmb250LWZhbWlseTogQWRlbGxlICFpbXBvcnRhbnQ7XG59XG5cbnRleHRhcmVhOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICM3NTc1NzUgIWltcG9ydGFudDtcbiAgICBmb250LXNpemU6IDEzcHggIWltcG9ydGFudDtcbiAgICBmb250LWZhbWlseTogQWRlbGxlICFpbXBvcnRhbnQ7XG59XG5cbnRleHRhcmVhOjpwbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICM3NTc1NzUgIWltcG9ydGFudDtcbiAgICBmb250LXNpemU6IDEzcHggIWltcG9ydGFudDtcbiAgICBmb250LWZhbWlseTogQWRlbGxlICFpbXBvcnRhbnQ7XG59XG5cbi5ibG9ja3MgLmJ0bi1kZWZhdWx0IHtcbiAgICAvKnBhZGRpbmc6IDI0cHggMTBweDsqL1xuICAgIG1hcmdpbi10b3A6IDBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgIG1hcmdpbi1sZWZ0OiA1cHg7XG4gICAgbWFyZ2luLXJpZ2h0OiA3cHg7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBib3JkZXItY29sb3I6ICNjMjMyMjU7XG4gICAgY29sb3I6ICNjMjMyMjU7IC8qU3Ryb25nUmVkKi9cbiAgICBoZWlnaHQ6IDYwcHggIWltcG9ydGFudDtcbiAgICB3aWR0aDogODBweCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctbGVmdDogMTBweCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctcmlnaHQ6IDEwcHggIWltcG9ydGFudDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4uYnRuRGlzYWJsZWQge1xuICAgIGJvcmRlci1jb2xvcjogIzc1NzU3NSAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAjNzU3NTc1ICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkVGV4dEFyZWEge1xuICAgIHdpZHRoOiAyMzBweCAhaW1wb3J0YW50O1xuICAgIGhlaWdodDogMTIwcHggIWltcG9ydGFudDtcbiAgICBib3JkZXItcmFkaXVzOiAxMHB4ICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzc1NzU3NTtcbiAgICBmb250LWZhbWlseTogamFmLWJlcm5pbmEtc2FucztcbiAgICBwYWRkaW5nOiAxNXB4O1xufVxuXG4uY2hlY2tNYXJrR3JlZW4ge1xuICAgIHdpZHRoOiA3NXB4O1xuICAgIGhlaWdodDogNzVweDtcbiAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICAvKmJhY2tncm91bmQ6IHVybCguLi8uLi9hc3NldHMvaW1hZ2VzL2NoZWNrbWFyay1ncmVlbi1jaXJjbGUucG5nKTsqL1xufVxuXG4udGltZXNsb3RibG9ja3MgLmJ0bi1kZWZhdWx0IC5idG4tcm91bmQge1xuICAgIG1hcmdpbi10b3A6IDBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgIC8qbWFyZ2luLWxlZnQ6IDVweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDdweDsqL1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgYm9yZGVyLWNvbG9yOiAjYzIzMjI1O1xuICAgIGNvbG9yOiAjYzIzMjI1OyAvKlN0cm9uZ1JlZCovXG4gICAgaGVpZ2h0OiA2MHB4ICFpbXBvcnRhbnQ7XG4gICAgd2lkdGg6IDgwcHggIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLWxlZnQ6IDEwcHggIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4ICFpbXBvcnRhbnQ7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLmJ0blRpbWVTbG90IHtcbiAgICAvKmNvbG9yOiAjNzU3NTc1ICFpbXBvcnRhbnQ7Ki9cbiAgICAvKm1hcmdpbjogMy41JSAwJSAhaW1wb3J0YW50OyovXG4gICAgd2lkdGg6IDE4NXB4ICFpbXBvcnRhbnQ7XG4gICAgaGVpZ2h0OiA0MHB4ICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6ICNjMjMyMjUgIWltcG9ydGFudDtcbiAgICBib3JkZXItY29sb3I6ICNjMjMyMjUgIWltcG9ydGFudDtcbn1cblxuLmJ0blN0cm9uZ1JlZENvbmZpcm0ge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNjMjMyMjUgIWltcG9ydGFudDtcbiAgICAvKmJvcmRlci1yYWRpdXM6MTBweCAhaW1wb3J0YW50OyovXG4gICAgY29sb3I6IHdoaXRlICFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZDogI2MyMzIyNSAhaW1wb3J0YW50O1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkICFpbXBvcnRhbnQ7XG4gICAgd2lkdGg6IDEzMHB4ICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWxlZnQ6IDMlO1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgZm9udC1zaXplOiAxNHB4O1xufVxuXG4uYnRuU3Ryb25nUmVkT3JkZXJTdGF0dXMge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNjMjMyMjUgIWltcG9ydGFudDtcbiAgICAvKmJvcmRlci1yYWRpdXM6MTBweCAhaW1wb3J0YW50OyovXG4gICAgY29sb3I6IHdoaXRlICFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZDogI2MyMzIyNSAhaW1wb3J0YW50O1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkICFpbXBvcnRhbnQ7XG4gICAgd2lkdGg6IDI0MHB4ICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWxlZnQ6IDMlO1xufVxuXG4uYnRuRmlsbFN0cm9uZ1JlZCB7XG4gICAgY29sb3I6IHdoaXRlICFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2MyMzIyNSAhaW1wb3J0YW50O1xufVxuXG4uYnRuU3Ryb25nUmVkTm9GaWxsIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjYzIzMjI1ICFpbXBvcnRhbnQ7XG4gICAgLypib3JkZXItcmFkaXVzOjEwcHggIWltcG9ydGFudDsqL1xuICAgIGNvbG9yOiAjYzIzMjI1ICFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZDogd2hpdGUgIWltcG9ydGFudDtcbiAgICBmb250LXdlaWdodDogYm9sZCAhaW1wb3J0YW50O1xuICAgIHdpZHRoOiAxMzBweCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1sZWZ0OiAzJTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICBmb250LXNpemU6IDE0cHg7XG59XG5cbi8qIFRvIGhpZGUgU3RlcHBlciBOYXZpZ2F0aW9uKi9cbjo6bmctZGVlcCAubWF0LWhvcml6b250YWwtc3RlcHBlci1oZWFkZXIge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5tYXRIb3Jpem9udGFsU3RlcHBlciB7XG4gICAgbWFyZ2luLXRvcDogNXB4ICFpbXBvcnRhbnQ7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbn1cblxuLmRpdkF2YWlsYWJsZURheVRhYmxlIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1ib3R0b206IDBweDtcbn1cblxuLmRpdkF2YWlsYWJsZURheSB7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICBvdmVyZmxvdy14OiBzY3JvbGw7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcCAhaW1wb3J0YW50O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgLyogVG8gYXBwbHkgZ2l2ZW4gd2lkdGggdG8gYXZhaWxhYmxlIGRheSBidXR0b24gKi9cbn1cblxuLmRpdkF2YWlsYWJsZURheU91dGVyIHtcbiAgICBwYWRkaW5nOiAxJTtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7XG4gICAgd2lkdGg6IDc2JTtcbn1cblxuLmRpdlRpbWVTbG90IHtcbiAgICBtYXJnaW4tbGVmdDogMHB4O1xuICAgIG92ZXJmbG93LXk6IGF1dG8gIWltcG9ydGFudDtcbiAgICBoZWlnaHQ6IDIwMHB4O1xufVxuXG4uYnRuQXZhaWxhYmxlRGF5RGl2QXJyb3cge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiAxcHggIWltcG9ydGFudDtcbn1cblxuLmRpdkF2YWlsYWJsZURheUFycm93IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7XG4gICAgd2lkdGg6IDEyJTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIHBhZGRpbmctYm90dG9tOiAxMHB4O1xufVxuXG4ubWF0QXJyb3dCdXR0b25BY3RpdmUge1xuICAgIGNvbG9yOiAjYzIzMjI1O1xuICAgIGZvbnQtc2l6ZTogMzZweDtcbn1cblxuLm1hdEFycm93QnV0dG9uSW5BY3RpdmUge1xuICAgIGNvbG9yOiAjODA4MDgwO1xuICAgIGZvbnQtc2l6ZTogMzZweDtcbn1cblxuLmNvbmZpcm1TcGlubmVyQ29sb3IgOjpuZy1kZWVwIC5tYXQtcHJvZ3Jlc3Mtc3Bpbm5lciBjaXJjbGUsIC5tYXQtc3Bpbm5lciBjaXJjbGUge1xuICAgIHN0cm9rZTogI2ZmOTgwMCAhaW1wb3J0YW50O1xufVxuXG46aG9zdCA6Om5nLWRlZXAgLm1hdC1ob3Jpem9udGFsLWNvbnRlbnQtY29udGFpbmVyIHtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5jYXJkLCAubWF0LXN0ZXBwZXItaG9yaXpvbnRhbCB7XG4gICAgbWFyZ2luLXRvcDogMHB4ICFpbXBvcnRhbnQ7XG59XG5cbi5jb25maXJtU3Bpbm5lckNlbnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKSB0cmFuc2xhdGVZKC01MCUpO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHRyYW5zbGF0ZVkoLTUwJSk7XG59XG5cbi5jb25maXJtU3Bpbm5lck92ZXJsYXkge1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMjg2KTtcbiAgICB6LWluZGV4OiAxMDtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG59XG5cbi5idG5Nb3JlRGF0ZXMge1xuICAgIGNvbG9yOiAjYzIzMjI1ICFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGUgIWltcG9ydGFudDtcbiAgICB3aWR0aDogNjBweCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDVweCAhaW1wb3J0YW50O1xuICAgIGZvbnQtc2l6ZTogMTBweDtcbn1cblxuLmJ0blBvcE92ZXJBbGVydCB7XG4gICAgYm9yZGVyLWxlZnQ6IG5vbmU7XG4gICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgICBib3JkZXItcmlnaHQ6IG5vbmU7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IGRvdHRlZCAjYzIzMjI1O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBjb2xvcjogI2MyMzIyNTtcbiAgICBmb250LWZhbWlseTogQWRlbGxlO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbn1cbi8qIFBvcG92ZXIgSGVhZGVyICovXG4ucG9wb3Zlci10aXRsZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2MyMzIyNTtcbiAgICBjb2xvcjogI0ZGRkZGRjtcbiAgICBmb250LXNpemU6IDEwcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGZvbnQtZmFtaWx5OiBBZGVsbGU7XG59XG4vKiBQb3BvdmVyIEJvZHkgKi9cbi5wb3BvdmVyLWNvbnRlbnQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNGRkZGRkY7XG4gICAgY29sb3I6IGJsYWNrO1xuICAgIHBhZGRpbmc6IDEwcHg7XG59XG4vKiBQb3BvdmVyIEFycm93ICovXG4uYXJyb3cge1xuICAgIGJvcmRlci1yaWdodC1jb2xvcjogI2MyMzIyNSAhaW1wb3J0YW50O1xufVxuXG5cbi5wb3BvdmVyLWhlYWRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2MyMzIyNSAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAjRkZGRkZGICFpbXBvcnRhbnQ7XG4gICAgZm9udC1zaXplOiAxMHB4ICFpbXBvcnRhbnQ7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7XG4gICAgZm9udC1mYW1pbHk6IEFkZWxsZSAhaW1wb3J0YW50O1xufVxuLyogUG9wb3ZlciBCb2R5ICovXG4ucG9wb3Zlci1ib2R5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGRkZGICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6IGJsYWNrICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogMTBweCAhaW1wb3J0YW50O1xufVxuLyogUG9wb3ZlciBBcnJvdyAqL1xuLmFycm93IHtcbiAgICBib3JkZXItcmlnaHQtY29sb3I6ICNjMjMyMjUgIWltcG9ydGFudDtcbn1cblxuLmJ0blN0cm9uZ1JlZFZlcmlmeSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2MyMzIyNSAhaW1wb3J0YW50O1xuICAgIC8qYm9yZGVyLXJhZGl1czoxMHB4ICFpbXBvcnRhbnQ7Ki9cbiAgICBjb2xvcjogd2hpdGUgIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kOiAjYzIzMjI1ICFpbXBvcnRhbnQ7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQgIWltcG9ydGFudDtcbiAgICB3aWR0aDogMjAwcHggIWltcG9ydGFudDtcbiAgICBtYXJnaW4tbGVmdDogMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbn1cblxuLmJ0blN0cm9uZ1JlZEJhY2tUb1ZhbGlkYXRlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjYzIzMjI1ICFpbXBvcnRhbnQ7XG4gICAgLypib3JkZXItcmFkaXVzOjEwcHggIWltcG9ydGFudDsqL1xuICAgIGNvbG9yOiB3aGl0ZSAhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQ6ICNjMjMyMjUgIWltcG9ydGFudDtcbiAgICBmb250LXdlaWdodDogYm9sZCAhaW1wb3J0YW50O1xuICAgIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWxlZnQ6IDAlO1xuICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICBmb250LXNpemU6IDE0cHg7XG59XG5cbi5kaXZBVlNjcm9sbCB7XG4gICAgLyp3aWR0aDogMjAwcHg7XG4gICAgaGVpZ2h0OiA0MDBweDtcbiAgICBiYWNrZ3JvdW5kOiByZWQ7Ki9cbiAgICBvdmVyZmxvdy14OiBzY3JvbGw7XG59XG5cbiAgICAuZGl2QVZTY3JvbGw6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgICAgICAgLyp3aWR0aDogMTBweDsqL1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjVGNUY1O1xuICAgICAgICBoZWlnaHQ6IDVweDtcbiAgICB9XG5cbiAgICAuZGl2QVZTY3JvbGw6Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNrIHtcbiAgICAgICAgLXdlYmtpdC1ib3gtc2hhZG93OiBpbnNldCAwIDAgNnB4IHJnYmEoMCwwLDAsMC4zKTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0Y1RjVGNTtcbiAgICB9XG5cbiAgICAuZGl2QVZTY3JvbGw6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Q5NmE2MDtcbiAgICAgICAgYm9yZGVyOiAycHggc29saWQgI2Q1ODU3ZTtcbiAgICB9XG5cbi5idG5TdHJvbmdSZWROb0ZpbGxMb25nIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjYzIzMjI1ICFpbXBvcnRhbnQ7XG4gICAgLypib3JkZXItcmFkaXVzOjEwcHggIWltcG9ydGFudDsqL1xuICAgIGNvbG9yOiAjYzIzMjI1ICFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZDogd2hpdGUgIWltcG9ydGFudDtcbiAgICBmb250LXdlaWdodDogYm9sZCAhaW1wb3J0YW50O1xuICAgIHdpZHRoOiAxODBweCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1sZWZ0OiAzJTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZSAhaW1wb3J0YW50O1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbn1cblxuLmJ0blN0cm9uZ1JlZEZpbGxMb25nIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjYzIzMjI1ICFpbXBvcnRhbnQ7XG4gICAgLypib3JkZXItcmFkaXVzOjEwcHggIWltcG9ydGFudDsqL1xuICAgIGNvbG9yOiB3aGl0ZSAhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQ6ICNjMjMyMjUgIWltcG9ydGFudDtcbiAgICBmb250LXdlaWdodDogYm9sZCAhaW1wb3J0YW50O1xuICAgIHdpZHRoOiAxODBweCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1sZWZ0OiAzJTtcbiAgICAvKm1hcmdpbi1ib3R0b206IDEwcHg7Ki9cbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZSAhaW1wb3J0YW50O1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbn1cblxuLmRpdlRpbWVzbG90U2Nyb2xsIHtcbiAgICAvKndpZHRoOiAyMDBweDtcbiAgICBoZWlnaHQ6IDQwMHB4O1xuICAgIGJhY2tncm91bmQ6IHJlZDsqL1xuICAgIG92ZXJmbG93LXk6IHNjcm9sbDtcbn1cblxuICAgIC5kaXZUaW1lc2xvdFNjcm9sbDo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICAgICAgICAvKndpZHRoOiAxMHB4OyovXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNGNUY1RjU7XG4gICAgICAgIHdpZHRoOiA1cHg7XG4gICAgfVxuXG4gICAgLmRpdlRpbWVzbG90U2Nyb2xsOjotd2Via2l0LXNjcm9sbGJhci10cmFjayB7XG4gICAgICAgIC13ZWJraXQtYm94LXNoYWRvdzogaW5zZXQgMCAwIDZweCByZ2JhKDAsMCwwLDAuMyk7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNGNUY1RjU7XG4gICAgfVxuXG4gICAgLmRpdlRpbWVzbG90U2Nyb2xsOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNkOTZhNjA7XG4gICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICNkNTg1N2U7XG4gICAgfVxuXG4ucGhvbmVJY29uIHtcbiAgICAvKndpZHRoOiAxOHB4O1xuICAgIGhlaWdodDogMTJweDtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vLi4vYXNzZXRzL2ltYWdlcy9pY29uX1Bob25lLnBuZyk7Ki9cbiAgICBoZWlnaHQ6IDIwcHg7XG4gICAgd2lkdGg6IDE0cHg7XG4gICAgbWFyZ2luOiA1cHggIWltcG9ydGFudDtcbn1cblxuLmZvcm0tY29udHJvbDpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiAjRkYwMDAwO1xuICAgIC8qYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgMC4wNzUpLCAwIDAgOHB4IHJnYmEoMjU1LCAwLCAwLCAwLjYpOyovXG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMXB4ICMwMGJjZjEsIDAgMXB4IDRweCAjMDBiY2YxO1xufVxuXG4uZGl2S01JUGhvbmUge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIGdyYXk7XG4gICAgd2lkdGg6IDIzMHB4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgIC8qbWFyZ2luLWxlZnQ6IDIlOyovXG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICBoZWlnaHQ6IDI1cHQ7XG59XG5cbi5kaXZMaWdodEN5YW5BbGVydCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogbGlnaHRjeWFuO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IDVweCAxMHB4O1xuICAgIC8qbWFyZ2luOiAwcHggMTBweDsqL1xuICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICBsaW5lLWhlaWdodDogMS4yZW07XG59XG5cbi5hY2NvdW50VmVyaWZpY2F0aW9uQ29udGFpbmVyIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xuICAgIHBhZGRpbmctbGVmdDogMTVweDtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG59XG5cbi5hY2NvdW50VmVyaWZpY2F0aW9uSW5wdXQge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNjY2M7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICAgIC8qbWFyZ2luLWxlZnQ6IDE1cHg7Ki9cbiAgICB3aWR0aDogOTAlO1xufVxuXG4ucGhvbmVOdW1iZXJJbnB1dCB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgZm9udC1mYW1pbHk6ICdTb3VyY2UgU2FucyBQcm8nLHNhbnMtc2VyaWY7XG4gICAgZm9udC1zaXplOiAxNXB4O1xuICAgIHdpZHRoOiAxNTBweCAhaW1wb3J0YW50O1xufVxuXG4uU2Fuc1NlcmlmUmVndWxhciB7XG4gICAgLypmb250LWZhbWlseTogJ1NvdXJjZSBTYW5zIFBybycsc2Fucy1zZXJpZjsqL1xuICAgIGZvbnQtZmFtaWx5OiAtYXBwbGUtc3lzdGVtLHN5c3RlbS11aSxCbGlua01hY1N5c3RlbUZvbnQsXCJTZWdvZSBVSVwiLFJvYm90byxcIkhlbHZldGljYSBOZXVlXCIsQXJpYWwsc2Fucy1zZXJpZjtcbiAgICBmb250LXNpemU6IDFlbTtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xufVxuXG4uU2Fuc1NlcmlmU21hbGwge1xuICAgIC8qZm9udC1mYW1pbHk6ICdTb3VyY2UgU2FucyBQcm8nLHNhbnMtc2VyaWY7Ki9cbiAgICBmb250LWZhbWlseTogLWFwcGxlLXN5c3RlbSxzeXN0ZW0tdWksQmxpbmtNYWNTeXN0ZW1Gb250LFwiU2Vnb2UgVUlcIixSb2JvdG8sXCJIZWx2ZXRpY2EgTmV1ZVwiLEFyaWFsLHNhbnMtc2VyaWY7XG4gICAgZm9udC1zaXplOiAwLjhlbTtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xufVxuXG4ucmFkaW9JbnB1dCB7XG4gICAgaGVpZ2h0OiAxLjVlbTtcbiAgICB3aWR0aDogMS41ZW07XG4gICAgYm9yZGVyOiAwcHg7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZVxufVxuXG4ucmFkaW9JbnB1dExhYmVsIHtcbiAgICBoZWlnaHQ6IDEuNWVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjVlbTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogc3ViO1xuICAgIHBhZGRpbmctbGVmdDogMC41ZW07XG59XG5cbi5yYWRpb0lucHV0TGFiZWxDb21ibyB7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB3aWR0aDogMTZlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwcHhcbn1cblxuLnBsYXlJY29uIHtcbiAgICBoZWlnaHQ6IDIuNWVtO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIC8qd2lkdGg6IDNlbTsqL1xuICAgIG1hcmdpbi1yaWdodDogMC41ZW0gIWltcG9ydGFudDtcbn1cblxuLmFwcHRDb25maXJtYXRpb25Nc2cge1xuICAgIG1hcmdpbi1sZWZ0OiAyJTtcbiAgICBtYXJnaW4tcmlnaHQ6IDIlO1xuICAgIG1hcmdpbi10b3A6IDIlO1xuICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXJcbn1cblxuLnByb2Nlc3NTdG9wTXNnIHtcbiAgICBtYXJnaW46IDAuNWVtIDEuM2VtO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGZvbnQtc2l6ZTogMS4xZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcbn1cblxuLml0YWxpY0FkZWxsZVNtYWxsIHtcbiAgICBtYXJnaW4tbGVmdDogNSU7XG4gICAgZm9udC1mYW1pbHk6IEFkZWxsZTtcbiAgICBmb250LXNpemU6IDExcHg7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIGxpbmUtaGVpZ2h0OiAwXG59XG5cbi5waG9uZVZhbGlkYXRpb25FcnJvciB7XG4gICAgbWFyZ2luLWxlZnQ6IDIlO1xuICAgIGJveC1kZWNvcmF0aW9uLWJyZWFrOiBjbG9uZTtcbn1cblxuLmRpdlJlbWluZGVyTWVzc2FnZUJ5RUMge1xuICAgIHdpZHRoOiA5MCU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4udGV4dElucHV0IHtcbiAgICB3aWR0aDogMjMwcHggIWltcG9ydGFudDtcbiAgICBoZWlnaHQ6IDI1cHQgIWltcG9ydGFudDtcbiAgICBib3JkZXItcmFkaXVzOiA1cHggIWltcG9ydGFudDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjNzU3NTc1O1xuICAgIGZvbnQtZmFtaWx5OiBqYWYtYmVybmluYS1zYW5zO1xuICAgIHBhZGRpbmc6IDNweCAxMHB4O1xufVxuXG4uYWNudEluZm9JbnB1dCB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2NjYyAhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmUgIWltcG9ydGFudDtcbiAgICBib3JkZXItcmFkaXVzOiA0cHggIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLWxlZnQ6IDEwcHggIWltcG9ydGFudDtcbiAgICB3aWR0aDogOTAlICFpbXBvcnRhbnQ7XG59XG5cbi5jb25maXJtRGl2IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNSU7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYm94LXNoYWRvdzogbm9uZVxufVxuXG4uZXJyb3JEaXYge1xuICAgIHBhZGRpbmctcmlnaHQ6IDIwcHggIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHggIWltcG9ydGFudDtcbiAgICBtYXJnaW4tdG9wOiAxMCU7XG59XG5cbi5lcnJvcklubmVyRGl2IHtcbiAgICBwYWRkaW5nOiAxNSUgMTAlO1xufVxuXG5pbnB1dDo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICM3NTc1NzUgIWltcG9ydGFudDtcbiAgICBmb250LXNpemU6IDEycHggIWltcG9ydGFudDtcbiAgICBmb250LWZhbWlseTogQWRlbGxlICFpbXBvcnRhbnQ7XG59XG5cbmlucHV0Oi1tb3otcGxhY2Vob2xkZXIgeyAvKiBGaXJlZm94IDE4LSAqL1xuICAgIGNvbG9yOiAjNzU3NTc1ICFpbXBvcnRhbnQ7XG4gICAgZm9udC1zaXplOiAxMnB4ICFpbXBvcnRhbnQ7XG4gICAgZm9udC1mYW1pbHk6IEFkZWxsZSAhaW1wb3J0YW50O1xufVxuXG5pbnB1dDo6LW1vei1wbGFjZWhvbGRlciB7IC8qIEZpcmVmb3ggMTkrICovXG4gICAgY29sb3I6ICM3NTc1NzUgIWltcG9ydGFudDtcbiAgICBmb250LXNpemU6IDEycHggIWltcG9ydGFudDtcbiAgICBmb250LWZhbWlseTogQWRlbGxlICFpbXBvcnRhbnQ7XG59XG5cbmlucHV0Oi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICM3NTc1NzUgIWltcG9ydGFudDtcbiAgICBmb250LXNpemU6IDEycHggIWltcG9ydGFudDtcbiAgICBmb250LWZhbWlseTogQWRlbGxlICFpbXBvcnRhbnQ7XG59XG5cbmlucHV0OjpwbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICM3NTc1NzUgIWltcG9ydGFudDtcbiAgICBmb250LXNpemU6IDEycHggIWltcG9ydGFudDtcbiAgICBmb250LWZhbWlseTogQWRlbGxlICFpbXBvcnRhbnQ7XG59XG5cbnN0cm9uZyB7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQgIWltcG9ydGFudDtcbn1cbiJdfQ== */\"","//DSS Documentation on Angular Components - http://tiny.sc/cgangularcomponent\r\nimport { Component, EventEmitter, OnInit, AfterViewInit, Input, Output, Pipe, PipeTransform, HostListener } from '@angular/core';\r\nimport { NgModule } from '@angular/core';\r\n//import { ViewChild, ElementRef } from '@angular/core';\r\nimport { DatePipe } from '@angular/common';\r\nimport { SocoHttpService } from '@soco/http';\r\nimport { FormGroup, FormBuilder, FormControl, Validators } from '@angular/forms';\r\nimport { DBTraceLogService } from '../../services/dbTraceLog/dbTraceLog.service';\r\nimport { CoolEmailService } from '../../services/coolEmail/coolEmail.service';\r\nimport { AccountVerificationService } from '../../components/accountverification/account-verification.service';\r\nimport { AccountVerificationInput, AccountVerificationOutput, AccountDetails } from '../../components/accountverification/account-verification-entities';\r\nimport { AppCommonService } from '../../services/common/app-common.service';\r\nimport { DeviceDetectorService } from 'ngx-device-detector';\r\nimport { DBTraceLog, LogType } from '../../services/dbTraceLog/dbTraceLog-entities';\r\nimport { AppConfigurationData } from '../../services/common/app-common-entities';\r\nimport { AppBaseComponent } from '../base/app-base.component';\r\n\r\n@Component({\r\n selector: 'account-verification',\r\n templateUrl: 'account-verification.component.html',\r\n styleUrls: ['account-verification.component.css'],\r\n providers: [DatePipe, DBTraceLogService, AppCommonService, AccountVerificationService]\r\n})\r\nexport class AccountVerificationComponent extends AppBaseComponent implements OnInit {\r\n\r\n //#region Variables\r\n public ldc: string = ''; \r\n public orderNumber: string = '';\r\n public premiseNumber: string = ''; \r\n public urlCode: string;\r\n public errorInfo: any; \r\n public orderType: string = '';\r\n public personID: string = ''; \r\n public appConfigurationDataList: Array = []; \r\n public deviceInfo = null;\r\n public dbTraceLog: DBTraceLog;\r\n public logReferenceID: string = ''; \r\n public portalTypeID: number = 0; \r\n public accountVerificationOutput: AccountVerificationOutput;\r\n public emailToList: string;\r\n\r\n public cisOrderType: string = '';\r\n public ldcFullName: string;\r\n public contactPhoneNo: string = '';\r\n public contactHours: string = '';\r\n public accountDetails: AccountDetails;\r\n public showSpinner: boolean = false;\r\n public isValidateAccountPerformed: boolean = false;\r\n public acntNumberFromURL: string = '';\r\n accntVerifyFormGroup: FormGroup;\r\n\r\n @Input() accountVerificationInput: AccountVerificationInput;\r\n @Output() accountVerificationOutputEvent = new EventEmitter();\r\n @Output() processErrorEvent = new EventEmitter();\r\n\r\n //#endregion\r\n\r\n constructor(public datepipe: DatePipe, public http: SocoHttpService,\r\n public dbTraceLogService: DBTraceLogService, public deviceService: DeviceDetectorService, public coolEmailService: CoolEmailService,\r\n private appCommonService: AppCommonService, public accountVerificationService: AccountVerificationService) {\r\n\r\n //Parent component initialization\r\n super(http, dbTraceLogService, coolEmailService, deviceService);\r\n\r\n this.accountDetails = new AccountDetails();\r\n this.accountVerificationOutput = new AccountVerificationOutput();\r\n };\r\n\r\n\r\n ngOnInit() {\r\n try {\r\n //Get accnt verification input from parent\r\n this.GetAccountVerificationInput();\r\n\r\n this.accntVerifyFormGroup = new FormGroup({ \r\n accountNumber: new FormControl('', [Validators.required]),\r\n zipCode: new FormControl('', [Validators.required])\r\n });\r\n\r\n //Patch the account number from url to input box\r\n if (this.acntNumberFromURL != '') {\r\n //Patch value if above property contains numbers only\r\n if (/^\\d+$/.test(this.acntNumberFromURL)) {\r\n this.accntVerifyFormGroup.patchValue({\r\n accountNumber: this.getMaskedAccountNumber(this.acntNumberFromURL)\r\n });\r\n }\r\n }\r\n \r\n }\r\n catch (e) {\r\n this.insertDBTraceLog(LogType.Error, 'Exception occured while loading ngOnInit, Error: ' + e.message.substring(0, 500));\r\n }\r\n\r\n } \r\n\r\n //#region Account Verification & Order Eligibility\r\n public get accountNumber(): any {\r\n if (this.acntNumberFromURL != '' && this.accntVerifyFormGroup.value.accountNumber.includes('*'))\r\n return this.acntNumberFromURL.trim();\r\n else\r\n return this.accntVerifyFormGroup.value.accountNumber;\r\n }\r\n\r\n public get zipCode(): any {\r\n return this.accntVerifyFormGroup.value.zipCode;\r\n }\r\n\r\n validateAccountAndOrderEligibility() {\r\n try {\r\n //console.log('AccountNo - ', this.accountNumber);\r\n //console.log('ZipCode - ', this.zipCode);\r\n\r\n this.accntVerifyFormGroup.markAllAsTouched();\r\n\r\n //set flag on button click\r\n this.isValidateAccountPerformed = true;\r\n\r\n if (this.accntVerifyFormGroup.valid) {\r\n //Invoke service call\r\n this.showSpinner = true;\r\n this.insertDBTraceLog(LogType.Info, `Account & Order eligibility initiated for LDC: ${this.ldc}, CISOrderType: ${this.cisOrderType}, Accnt No: ${this.accountNumber}, Zipcode: ${this.zipCode}`);\r\n this.VerifyAccountAndOrderEligibility();\r\n }\r\n\r\n //reset session expiry\r\n //this.sessionExpired = false; //Check\r\n }\r\n catch (e) {\r\n this.insertDBTraceLog(LogType.Error, 'Exception occured while validating account and order eligibility, Error: ' + e.message.substring(0, 500));\r\n }\r\n }\r\n\r\n /* Check if Account is valid & order is eligible to Schedule*/\r\n VerifyAccountAndOrderEligibility() {\r\n try {\r\n this.accountVerificationService.verifyAccountAndOrderEligibity(this.ldc, this.cisOrderType, this.accountNumber, this.zipCode).subscribe(ApiResult => {\r\n\r\n if (ApiResult.data != null) {\r\n //console.log('Verify Account Api Result: ', ApiResult.data);\r\n\r\n if (ApiResult.statusCode === 200 || ApiResult.data.quality > 0) {\r\n this.accountDetails.isValidAccount = ApiResult.data.isValidAccount;\r\n this.accountDetails.isOrderEligibleToSchedule = ApiResult.data.isOrderEligibleToSchedule;\r\n this.accountDetails.orderNumber = ApiResult.data.fieldActivityID;\r\n this.accountDetails.premiseNumber = ApiResult.data.premisesNumber;\r\n this.accountDetails.personID = ApiResult.data.personID;\r\n this.accountDetails.ldc = ApiResult.data.ldc;\r\n this.accountDetails.serviceCenter = ApiResult.data.serviceCenter;\r\n this.accountDetails.billingAddress = ApiResult.data.billingAddress;\r\n this.accountDetails.premisesAddress = this.getFormatedPremiseAddess(ApiResult.data.premisesAddress);\r\n this.accountDetails.customerName = ApiResult.data.customerName;\r\n this.accountDetails.emailAddress = ApiResult.data.emailAddress;\r\n this.accountDetails.phoneNumber = ApiResult.data.phoneNumber;\r\n this.accountDetails.premiseType = ApiResult.data.premiseType;\r\n this.accountDetails.isKMIEligible = ApiResult.data.isKMIEligible;\r\n this.accountDetails.marketerName = ApiResult.data.marketerName;\r\n this.accountDetails.marketerPhoneNumber = (ApiResult.data.marketerPhoneNumber != '' && ApiResult.data.marketerPhoneNumber) ? this.formatPhoneNumber(ApiResult.data.marketerPhoneNumber) : '';\r\n\r\n if (ApiResult.data.isValidAccount)\r\n this.accountDetails.customerFirstName = this.getCustomerFirstName(ApiResult.data.premiseType, ApiResult.data.customerName);\r\n else\r\n this.accountDetails.customerFirstName = '';\r\n\r\n //console.log('Account Details: ', this.accountDetails);\r\n\r\n //Recapturing LDC once again in case searching account belongs to diff ldc\r\n this.ldc = this.accountDetails.ldc;\r\n //set contact phone after fetching ldc from above api call\r\n this.setContactPhoneNoAndHours();\r\n this.getLDCFullName();\r\n\r\n if (this.accountDetails.isOrderEligibleToSchedule)\r\n this.insertDBTraceLog(LogType.Info, 'Account & Order eligibility is completed successfully, Order is eligible to schedule');\r\n else\r\n this.insertDBTraceLog(LogType.Info, 'Account & Order eligibility is completed successfully, Order is NOT eligible to schedule');\r\n\r\n ////Once API call is completed move to next screen\r\n //stepper.next();\r\n\r\n ////show logout button from second screen onwards\r\n //this.showLogOut = true;\r\n\r\n this.showSpinner = false;\r\n\r\n //Prepare output object and emit to parent component.\r\n this.EmitOutputToParent();\r\n }\r\n else {\r\n this.insertDBTraceLog(LogType.Error, 'Error occured while validating account & order eligibility, APIResult status is not 200');\r\n this.processError();\r\n }\r\n }\r\n else {\r\n this.insertDBTraceLog(LogType.Error, 'Error occured while validating account & order eligibility, APIResult is null');\r\n this.processError();\r\n }\r\n\r\n }, ApiResult => {\r\n if (this.http.isInvalidResult(ApiResult) || this.http.isErrorResult(ApiResult) || this.http.isFailureResult(ApiResult)) {\r\n this.insertDBTraceLog(LogType.Error, 'Error occured while validating account & order eligibility, APIResult is invalid');\r\n this.processError();\r\n }\r\n });\r\n }\r\n catch (e) {\r\n this.insertDBTraceLog(LogType.Error, 'Exception occured while verifying account& order eligibility, Error: ' + e.message.substring(0, 500));\r\n }\r\n }\r\n\r\n //#endregion\r\r\n // #region Helper Methods\r\n\r\n private formatPhoneNumber(phoneNumberString: string) {\r\n if (phoneNumberString.length == 10) {\r\n //reformat and return phone number\r\n return phoneNumberString.replace(/(\\d{3})(\\d{3})(\\d{4})/, \"$1.$2.$3\");\r\n }\r\n return phoneNumberString\r\n }\r\n private getFormatedPremiseAddess(premiseAddress: string): string {\r\n var formatedPremiseAdd: string = premiseAddress;\r\n\r\n if (premiseAddress != null && premiseAddress != '' && premiseAddress.indexOf(',') > 0)\r\n formatedPremiseAdd = premiseAddress.replace(/,/g, ' ');\r\n\r\n return formatedPremiseAdd;\r\n }\r\n\r\n private getCustomerFirstName(premiseType: string, customerName: string): string {\r\n var custFirstName: string = customerName;\r\n\r\n if (this.ldc != 'AGLC') {\r\n if ((premiseType.toUpperCase().startsWith('RESIDENTIAL') || premiseType.toUpperCase().startsWith('RS')) && customerName.indexOf(',') > 0) {\r\n custFirstName = customerName.split(',')[1].trim();\r\n }\r\n }\r\n\r\n //console.log('custFirstName: ', custFirstName);\r\n return custFirstName;\r\n }\r\n\r\n public setContactPhoneNoAndHours() {\r\n\r\n this.contactPhoneNo = this.appConfigurationDataList.filter(item => (item.ldc == this.ldc && item.configurationType == 'Contact Phone Number'))\r\n .map(cv => cv.configurationValue)[0];\r\n\r\n this.contactHours = this.appConfigurationDataList.filter(item => (item.ldc == this.ldc && item.configurationType == 'Contact Hours'))\r\n .map(cv => cv.configurationValue)[0];\r\n }\r\n\r\n private getLDCFullName() {\r\n if (this.ldc === 'NG' || this.ldc === 'IL')\r\n this.ldcFullName = 'Nicor Gas';\r\n else if (this.ldc === 'VNG')\r\n this.ldcFullName = 'Virginia Natural Gas';\r\n else if (this.ldc === 'CGC')\r\n this.ldcFullName = 'Chattanooga Gas';\r\n else if (this.ldc === 'AGLC')\r\n this.ldcFullName = 'Southern Company Gas';\r\n }\r\n\r\n private getMaskedAccountNumber(accountNumber: string): string {\r\n var res: string = '';\r\n\r\n if (accountNumber.length > 3) {\r\n res = accountNumber.slice(0, accountNumber.length - 3).replace(/[0-9]/g, '*');\r\n res = res + accountNumber.substr(accountNumber.length - 3);\r\n }\r\n\r\n return res;\r\n }\r\n \r\n private insertDBTraceLog(logType: string, logMessage: string) {\r\n\r\n this.dbTraceLog = new DBTraceLog();\r\n\r\n this.dbTraceLog.portalTypeID = this.portalTypeID; //From parent\r\n this.dbTraceLog.ldc = this.ldc;\r\n this.dbTraceLog.kmiUrlCode = this.urlCode;\r\n this.dbTraceLog.issuingApOrderID = this.orderNumber;\r\n this.dbTraceLog.orderType = this.orderType;\r\n this.dbTraceLog.logReferenceID = this.logReferenceID;\r\n this.dbTraceLog.logType = logType;\r\n this.dbTraceLog.logMessage = logMessage;\r\n this.dbTraceLog.emailToList = this.emailToList;\r\n\r\n super.InsertDBTraceLogThruBase(this.dbTraceLog);\r\n }\r\n\r\n processError(): void {\r\n this.processErrorEvent.emit();\r\n }\r\n\r\n private GetAccountVerificationInput() {\r\n\r\n this.acntNumberFromURL = this.accountVerificationInput.acntNumberFromURL;\r\n this.cisOrderType = this.accountVerificationInput.cisOrderType; \r\n this.emailToList = this.accountVerificationInput.emailToList;\r\n this.ldc = this.accountVerificationInput.ldc;\r\n this.logReferenceID = this.accountVerificationInput.logReferenceID;\r\n this.portalTypeID = this.accountVerificationInput.portalTypeID;\r\n this.contactHours = this.accountVerificationInput.contactHours;\r\n this.contactPhoneNo = this.accountVerificationInput.contactPhoneNo;\r\n }\r\n\r\n private EmitOutputToParent() {\r\n \r\n this.accountVerificationOutput.accountDetails = this.accountDetails;\r\n this.accountVerificationOutput.accountNumber = this.accountNumber;\r\n\r\n this.accountVerificationOutputEvent.emit(this.accountVerificationOutput);\r\n } \r\n\r\n // #endregion\r\n\n}\r\n\r\n","//angular modules\n//DSS Documentation on Angular - http://tiny.sc/cgangular\nimport { NgModule } from '@angular/core';\nimport { RouterModule } from '@angular/router';\nimport { CommonModule } from '@angular/common';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\n//soco modules\nimport { SocoAlertModule } from '@soco/alert';\nimport { SocoFormsModule } from '@soco/forms';\nimport { SocoModalModule } from '@soco/modal';\nimport { SocoUIThemeModule } from '@soco/ui-theme';\n\n//app modules\nimport { CoreModule } from '../../../core/core.module';\n\n//components\n//DSS Documentation on Angular Components - http://tiny.sc/cgangularcomponent\n\nimport { AgmCoreModule } from '@agm/core';\nimport { AccountVerificationComponent } from './account-verification.component';\n\n@NgModule({\n imports: [\n //angular modules\n CommonModule,\n //RouterModule.forChild(RescheduleRoutes),\n FormsModule,\n ReactiveFormsModule,\n AgmCoreModule.forRoot({\n apiKey: 'AIzaSyBcLYsBQdhvhsdRoDKPzt3STCHmIXsXCNU'\n }),\n\n //soco modules \n SocoUIThemeModule,\n SocoAlertModule,\n SocoFormsModule,\n SocoModalModule,\n\n //app modules\n CoreModule\n \n ],\n exports: [AccountVerificationComponent], \n declarations: [ \n AccountVerificationComponent \n ]\n})\n\nexport class AccountVerificationModule { }\n\n","import { Injectable } from '@angular/core';\nimport { map, mergeMap } from 'rxjs/operators';\nimport { HttpClient } from '@angular/common/http';\nimport { Observable, EMPTY, of, forkJoin } from 'rxjs';\nimport { catchError } from 'rxjs/operators';\n\nimport { SocoHttpService } from '@soco/http';\nimport { SocoConfigurationService } from '@soco/configuration';\n\nimport { ApiResult } from '@soco/core';\nimport { url } from 'inspector';\n//import { AvailabilityRequest } from './availability-selection-entities';\n\n@Injectable()\nexport class AccountVerificationService {\n\n //public baseUrl = '/Reschedule/';\n //public appDataBaseUrl = '/AppData/';\n public scheduleBaseUrl = '/Scheduler/';\n public account: any = {};\n \n constructor(private http: SocoHttpService, private ngHttp: HttpClient, private config: SocoConfigurationService) { }\n\n verifyAccountAndOrderEligibity(ldc: string, orderType: string, accountNumber: string, billingZipCode: string) {\n var params: string = '';\n\n params = ldc + \"/\" + orderType + \"/\" + accountNumber + \"/\" + billingZipCode;\n\n //console.log('verifyAccount params : ', params);\n\n return this.http.get({\n url: this.scheduleBaseUrl + 'VerifyAccountAndOrderEligibility/' + params,\n });\n }\n \n // Error call back for http requests.\n private handleError(error: any) {\n\n // const errMsg = (error.message) ? error.message :\n // error.status ? `${error.status} - ${error.statusText}` : 'Server error';\n // return Observable.throw(errMsg);\n }\n\n}\n","\nexport class AppointmentConfirmationInput { \n ldc: string = '';\n\n selectedTimeSlot: string = '';\n selectedTimeSlotWindow: string = '';\n entranceInstructionsList: string[] = [];\n specialFeeMsg: string = '';\n logReferenceID: string = '';\n portalTypeID: number = 0;\n emailToList: string = '';\n}\nexport class AppointmentConfirmationOutput {\n \n}\n","module.exports = \".card {\\n border: 1px solid #d6cccc;\\n margin-bottom: 0% !important;\\n}\\n\\n.confirmDiv {\\n padding-bottom: 5%;\\n -ms-flex-align: center;\\n align-items: center;\\n border: none;\\n box-shadow: none\\n}\\n\\n.checkMarkGreen {\\n width: 75px;\\n height: 75px;\\n background: white;\\n /*background: url(../../assets/images/checkmark-green-circle.png);*/\\n}\\n\\n.AdelleSmall {\\n font-family: Adelle;\\n font-size: 13px;\\n line-height: 1.6;\\n}\\n\\n.apptConfirmationMsg {\\n margin-left: 2%;\\n margin-right: 2%;\\n margin-top: 2%;\\n font-size: 15px;\\n text-align: center\\n}\\n\\n.playIcon {\\n height: 2.5em;\\n float: left;\\n /*width: 3em;*/\\n margin-right: 0.5em !important;\\n}\\n\\n.container {\\n background: white !important;\\n}\\n\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvc2hhcmVkL2NvbXBvbmVudHMvYXBwb2ludG1lbnRjb25maXJtYXRpb24vYXBwb2ludG1lbnQtY29uZmlybWF0aW9uLmNvbXBvbmVudC5jc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7SUFDSSx5QkFBeUI7SUFDekIsNEJBQTRCO0FBQ2hDOztBQUVBO0lBQ0ksa0JBQWtCO0lBQ2xCLHNCQUFtQjtRQUFuQixtQkFBbUI7SUFDbkIsWUFBWTtJQUNaO0FBQ0o7O0FBRUE7SUFDSSxXQUFXO0lBQ1gsWUFBWTtJQUNaLGlCQUFpQjtJQUNqQixtRUFBbUU7QUFDdkU7O0FBRUE7SUFDSSxtQkFBbUI7SUFDbkIsZUFBZTtJQUNmLGdCQUFnQjtBQUNwQjs7QUFFQTtJQUNJLGVBQWU7SUFDZixnQkFBZ0I7SUFDaEIsY0FBYztJQUNkLGVBQWU7SUFDZjtBQUNKOztBQUVBO0lBQ0ksYUFBYTtJQUNiLFdBQVc7SUFDWCxjQUFjO0lBQ2QsOEJBQThCO0FBQ2xDOztBQUVBO0lBQ0ksNEJBQTRCO0FBQ2hDIiwiZmlsZSI6InNyYy9hcHAvc2hhcmVkL2NvbXBvbmVudHMvYXBwb2ludG1lbnRjb25maXJtYXRpb24vYXBwb2ludG1lbnQtY29uZmlybWF0aW9uLmNvbXBvbmVudC5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIuY2FyZCB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2Q2Y2NjYztcbiAgICBtYXJnaW4tYm90dG9tOiAwJSAhaW1wb3J0YW50O1xufVxuXG4uY29uZmlybURpdiB7XG4gICAgcGFkZGluZy1ib3R0b206IDUlO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJveC1zaGFkb3c6IG5vbmVcbn1cblxuLmNoZWNrTWFya0dyZWVuIHtcbiAgICB3aWR0aDogNzVweDtcbiAgICBoZWlnaHQ6IDc1cHg7XG4gICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgLypiYWNrZ3JvdW5kOiB1cmwoLi4vLi4vYXNzZXRzL2ltYWdlcy9jaGVja21hcmstZ3JlZW4tY2lyY2xlLnBuZyk7Ki9cbn1cblxuLkFkZWxsZVNtYWxsIHtcbiAgICBmb250LWZhbWlseTogQWRlbGxlO1xuICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICBsaW5lLWhlaWdodDogMS42O1xufVxuXG4uYXBwdENvbmZpcm1hdGlvbk1zZyB7XG4gICAgbWFyZ2luLWxlZnQ6IDIlO1xuICAgIG1hcmdpbi1yaWdodDogMiU7XG4gICAgbWFyZ2luLXRvcDogMiU7XG4gICAgZm9udC1zaXplOiAxNXB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlclxufVxuXG4ucGxheUljb24ge1xuICAgIGhlaWdodDogMi41ZW07XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgLyp3aWR0aDogM2VtOyovXG4gICAgbWFyZ2luLXJpZ2h0OiAwLjVlbSAhaW1wb3J0YW50O1xufVxuXG4uY29udGFpbmVyIHtcbiAgICBiYWNrZ3JvdW5kOiB3aGl0ZSAhaW1wb3J0YW50O1xufVxuIl19 */\"","//DSS Documentation on Angular Components - http://tiny.sc/cgangularcomponent\nimport { Component, EventEmitter, OnInit, AfterViewInit, Input, Output, Pipe, PipeTransform, HostListener } from '@angular/core';\nimport { NgModule } from '@angular/core';\n//import { ViewChild, ElementRef } from '@angular/core';\nimport { DatePipe } from '@angular/common';\nimport { SocoHttpService } from '@soco/http';\nimport { DBTraceLogService } from '../../services/dbTraceLog/dbTraceLog.service';\nimport { CoolEmailService } from '../../services/coolEmail/coolEmail.service';\nimport { AppointmentConfirmationInput, AppointmentConfirmationOutput } from '../../components/appointmentconfirmation/appointment-confirmation-entities';\nimport { AppCommonService } from '../../services/common/app-common.service';\nimport { DeviceDetectorService } from 'ngx-device-detector';\nimport { DBTraceLog, LogType } from '../../services/dbTraceLog/dbTraceLog-entities';\nimport { AppConfigurationData } from '../../services/common/app-common-entities';\nimport { AppBaseComponent } from '../base/app-base.component';\n\n@Component({\n selector: 'appointment-confirmation',\n templateUrl: 'appointment-confirmation.component.html',\n styleUrls: ['appointment-confirmation.component.css'],\n providers: [DatePipe, DBTraceLogService, AppCommonService]\n})\nexport class AppointmentConfirmationComponent extends AppBaseComponent implements OnInit {\n\n //#region Variables\n public ldc: string = ''; \n public orderNumber: string = '';\n public premiseNumber: string = ''; \n public urlCode: string;\n public errorInfo: any; \n public orderType: string = '';\n public personID: string = ''; \n public appConfigurationDataList: Array = []; \n public deviceInfo = null;\n public dbTraceLog: DBTraceLog;\n public logReferenceID: string = ''; \n public portalTypeID: number = 0; \n public appointmentConfirmationOutput: AppointmentConfirmationOutput;\n public emailToList: string;\n public specialFeeMsg: string = '';\n public selectedTimeSlot: string = '';\n public selectedTimeSlotWindow: string = '';\n public entranceInstructionsList: string[] = [];\n \n @Input() appointmentConfirmationInput: AppointmentConfirmationInput;\n //@Output() appointmentConfirmationOutputEvent = new EventEmitter();\n @Output() processErrorEvent = new EventEmitter();\n\n //#endregion\n\n constructor(public datepipe: DatePipe, public http: SocoHttpService,\n public dbTraceLogService: DBTraceLogService,\n public deviceService: DeviceDetectorService,\n public coolEmailService: CoolEmailService,\n private appCommonService: AppCommonService) {\n\n //Parent component initialization\n super(http, dbTraceLogService, coolEmailService, deviceService);\n \n this.appointmentConfirmationOutput = new AppointmentConfirmationOutput();\n };\n\n\n ngOnInit() {\n try {\n //Get appt confirmation input from parent\n this.GetAppointmentConfimationInput();\n\n }\n catch (e) {\n this.insertDBTraceLog(LogType.Error, 'Exception occured while loading ngOnInit, Error: ' + e.message.substring(0, 500));\n }\n\n } \n \n // #region Helper Methods\n \n private insertDBTraceLog(logType: string, logMessage: string) {\n\n this.dbTraceLog = new DBTraceLog();\n\n this.dbTraceLog.portalTypeID = this.portalTypeID; //From parent\n this.dbTraceLog.ldc = this.ldc;\n this.dbTraceLog.kmiUrlCode = this.urlCode;\n this.dbTraceLog.issuingApOrderID = this.orderNumber;\n this.dbTraceLog.orderType = this.orderType;\n this.dbTraceLog.logReferenceID = this.logReferenceID;\n this.dbTraceLog.logType = logType;\n this.dbTraceLog.logMessage = logMessage;\n this.dbTraceLog.emailToList = this.emailToList;\n\n super.InsertDBTraceLogThruBase(this.dbTraceLog);\n }\n\n processError(): void {\n this.processErrorEvent.emit();\n }\n\n private GetAppointmentConfimationInput() {\n\n this.selectedTimeSlot = this.appointmentConfirmationInput.selectedTimeSlot;\n this.selectedTimeSlotWindow = this.appointmentConfirmationInput.selectedTimeSlotWindow;\n this.entranceInstructionsList = this.appointmentConfirmationInput.entranceInstructionsList; \n this.specialFeeMsg = this.appointmentConfirmationInput.specialFeeMsg;\n this.emailToList = this.appointmentConfirmationInput.emailToList;\n this.ldc = this.appointmentConfirmationInput.ldc;\n this.logReferenceID = this.appointmentConfirmationInput.logReferenceID;\n this.portalTypeID = this.appointmentConfirmationInput.portalTypeID;\n }\n // #endregion\n\n}\n\n","//angular modules\n//DSS Documentation on Angular - http://tiny.sc/cgangular\nimport { NgModule } from '@angular/core';\nimport { RouterModule } from '@angular/router';\nimport { CommonModule } from '@angular/common';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\n//soco modules\nimport { SocoAlertModule } from '@soco/alert';\nimport { SocoFormsModule } from '@soco/forms';\nimport { SocoModalModule } from '@soco/modal';\nimport { SocoUIThemeModule } from '@soco/ui-theme';\n\n//app modules\nimport { CoreModule } from '../../../core/core.module';\n\n//components\n//DSS Documentation on Angular Components - http://tiny.sc/cgangularcomponent\n\nimport { AgmCoreModule } from '@agm/core';\nimport { AppointmentConfirmationComponent } from './appointment-confirmation.component';\n\n@NgModule({\n imports: [\n //angular modules\n CommonModule,\n //RouterModule.forChild(RescheduleRoutes),\n FormsModule,\n ReactiveFormsModule,\n AgmCoreModule.forRoot({\n apiKey: 'AIzaSyBcLYsBQdhvhsdRoDKPzt3STCHmIXsXCNU'\n }),\n\n //soco modules \n SocoUIThemeModule,\n SocoAlertModule,\n SocoFormsModule,\n SocoModalModule,\n\n //app modules\n CoreModule\n \n ],\n exports: [AppointmentConfirmationComponent], \n declarations: [ \n AppointmentConfirmationComponent \n ]\n})\n\nexport class AppointmentConfirmationModule { }\n\n","export class RescheduleEligibility {\n quality: number = 0;\n message: string = '';\n isRescheduleEligible: boolean = false;\n orderEffectiveDate: Date;\n scheduleWindow: number;\n}\n\nexport class AvailabilityRequest {\n ldc: string = '';\n orderNumber: string = '';\n seedDate: string = '';\n premisesNumber: string = '';\n entranceInstructionCode: string = '';\n entranceInstructionProfile: string = '';\n\n accountNumber: string = '';\n activityOrProblemType: string = '';\n isOverride: boolean = false;\n orderCategory: string = ''; \n serviceOrderActiontype: string = '';\n serviceOrderReason: string = '';\n serviceOrderType: string = '';\n specialDateCodeID: string = '';\n}\n\nexport class AvailabilityDates {\n availableDate: string = '';\n displayDay: string = '';\n displayDate: string = '';\n enabled: boolean = false;\n}\n\nexport enum NoGasClickOrderModel {\n GasOffGasOffCompanyWork = \"Gas Off#Gas Off Company Work\",\n GasOffGasOffCutatCurb = \"Gas Off#Gas Off Cut at Curb\",\n GasOffGasOffFirePolice = \"Gas Off#Gas Off Fire/Police\",\n GasOffGasOffinError = \"Gas Off#Gas Off in Error\",\n GasOffGasOffLoworHighPressure = \"Gas Off#Gas Off Low or High Pressure\",\n GasOffGasOffOutage = \"Gas Off#Gas Off Outage\",\n GasOffGasOffVandalism = \"Gas Off#Gas Off Vandalism\",\n TurnONCustomerConvenience = \"Turn ON#Customer Convenience\",\n MadeSafeGasOffEmergency = \"Made Safe#Gas Off Emergency\",\n NoGasUnknown = \"No Gas#Unknown\"\n}\n\nexport class AvailabilityInput {\n ldc: string = '';\n kmiUrlCode: string = '';\n orderNumber: string = '';\n orderType: string = '';\n premisesNumber: string = '';\n entranceInstructionCode: string = '';\n entranceInstructionProfile: string = '';\n logReferenceID: string = '';\n portalTypeID: number = 0;\n entranceCodeReminderMsg: string = '';\n emailToList: string = '';\n appointmentType: string = '';\n\n accountNumber: string = '';\n activityOrProblemType: string = '';\n isOverride: boolean = false;\n orderCategory: string = '';\n serviceOrderActiontype: string = '';\n serviceOrderReason: string = '';\n serviceOrderType: string = '';\n specialDateCodeID: string = '';\n}\nexport class AvailabilityOutput {\n selectedTimeSlot: string = ''; \n selectedScheduleDate: string = '';\n selectedScheduleWindow: string = '';\n selectedTimeSlotWindow: string = '';\n ccbAppointmentStart: string = '';\n ccbAppointmentEnd: string = '';\n}","module.exports = \"agm-map {\\n height: 300px !important;\\n}\\n\\n.container {\\n background: white !important;\\n}\\n\\n.flex-container {\\n display: -ms-flexbox;\\n display: flex;\\n -ms-flex-wrap: wrap;\\n flex-wrap: wrap;\\n /* background-color: #cccfd2; */\\n}\\n\\n.flex-container > div {\\n width: 23%;\\n margin: 1%;\\n text-align: center;\\n /* line-height: 75px;\\n font-size: 30px; */\\n }\\n\\n@media only screen and (min-width: 760px) {\\n .h-400 {\\n min-height: 444px !important;\\n }\\n\\n .flex-container {\\n width: 50%;\\n }\\n}\\n\\n.main {\\n /* background: linear-gradient(#fffcfc, #f6b6b6); */\\n /* Safari */\\n display: -ms-flexbox;\\n display: flex;\\n}\\n\\n.card {\\n border: 1px solid #d6cccc;\\n margin-bottom: 0% !important;\\n}\\n\\n.main div {\\n /* Safari 6.1+ */\\n -ms-flex: 1;\\n /* IE 10 */\\n flex: 1;\\n}\\n\\n.main i {\\n text-align: center;\\n display: block;\\n}\\n\\n.example-class {\\n background-color: aliceblue;\\n}\\n\\n.other-class {\\n background-color: aqua;\\n}\\n\\n.BerninaSanslight {\\n font-family: jaf-bernina-sans;\\n}\\n\\n.AdelleRegular {\\n font-family: Adelle;\\n}\\n\\n.AdelleBold {\\n font-family: Adelle;\\n font-weight: bold;\\n}\\n\\n.AdelleSmall {\\n font-family: Adelle;\\n font-size: 13px;\\n line-height: 1.6;\\n}\\n\\n.AdelleSmallStrongRed {\\n font-family: Adelle;\\n font-size: 12px;\\n line-height: 1.6;\\n color: #c23225;\\n}\\n\\nspan, p, strong, li {\\n font-family: jaf-bernina-sans;\\n color: black;\\n}\\n\\nb {\\n font-family: jaf-bernina-sans;\\n color: lightgray;\\n}\\n\\n.green {\\n font-size: 50px;\\n color: rgb(37, 160, 37);\\n}\\n\\n.orange {\\n font-size: 50px;\\n color: orange;\\n}\\n\\n.gray {\\n font-size: 50px;\\n color: gray;\\n}\\n\\n.gmnoprint {\\n display: none;\\n}\\n\\n.tooltip {\\n position: relative;\\n display: inline-block;\\n border-bottom: 1px dotted black;\\n}\\n\\n.tooltip .tooltiptext {\\n visibility: hidden;\\n width: 120px;\\n background-color: #555;\\n color: #fff;\\n text-align: center;\\n border-radius: 6px;\\n padding: 5px 0;\\n position: absolute;\\n z-index: 1;\\n bottom: 125%;\\n left: 50%;\\n margin-left: -60px;\\n opacity: 0;\\n transition: opacity 0.3s;\\n }\\n\\n.tooltip .tooltiptext::after {\\n content: \\\"\\\";\\n position: absolute;\\n top: 100%;\\n left: 50%;\\n margin-left: -5px;\\n border-width: 5px;\\n border-style: solid;\\n border-color: #555 transparent transparent transparent;\\n }\\n\\n.tooltip:hover .tooltiptext {\\n visibility: visible;\\n opacity: 1;\\n }\\n\\n.flex-container {\\n display: -ms-flexbox;\\n display: flex;\\n -ms-flex-wrap: nowrap;\\n flex-wrap: nowrap;\\n background-color: #eef8f9;\\n}\\n\\n.flex-container > div {\\n background-color: #eef8f9;\\n width: 100%;\\n margin: 10px;\\n text-align: center;\\n line-height: 75px;\\n font-size: 30px;\\n }\\n\\n.wizard-progress {\\n display: table;\\n width: 100%;\\n table-layout: fixed;\\n position: relative;\\n}\\n\\n.wizard-progress .step {\\n display: table-cell;\\n text-align: center;\\n vertical-align: top;\\n overflow: visible;\\n position: relative;\\n font-size: 14px;\\n color: white;\\n font-weight: bold;\\n }\\n\\n.wizard-progress .step:not(:last-child):before {\\n content: '';\\n display: block;\\n position: absolute;\\n left: 50%;\\n top: 32px;\\n background-color: #e0dddd;\\n height: 6px;\\n width: 100%;\\n margin-top: 0%;\\n }\\n\\n.wizard-progress .step .node {\\n display: inline-block;\\n /* border: 6px solid #fff; */\\n background-color: lightgray;\\n border-radius: 18px;\\n /* border-color: black; */\\n height: 25px;\\n width: 24px;\\n position: absolute;\\n top: 23px;\\n left: 50%;\\n margin-left: -18px;\\n margin-top: 0%;\\n }\\n\\n.wizard-progress .step.complete:before {\\n background-color: #b2d235;\\n margin-top: 0%;\\n }\\n\\n.wizard-progress .step.complete .node {\\n border-color: #b2d235;\\n background-color: #b2d235;\\n margin-top: 0%;\\n }\\n\\n.wizard-progress .step.active .node {\\n border-color: #b2d235;\\n background-color: #b2d235;\\n margin-top: 0%;\\n }\\n\\n.wizard-progress .step.in-progress:before {\\n background-color: #b2d235;\\n }\\n\\n.wizard-progress .step.in-progress .node {\\n border-color: #b2d235;\\n background-color: #b2d235;\\n }\\n\\n.wizard-progress .step.cgi:before {\\n background-color: red;\\n }\\n\\n.wizard-progress .step.cgi .node {\\n border-color: red;\\n background-color: red;\\n }\\n\\n.wizard-progress .step.cgi .node:before {\\n font-family: FontAwesome;\\n content: \\\"\\\\f00d\\\";\\n margin-bottom: 0% !important;\\n }\\n\\n.wizard-progress .step.complete .node:before {\\n font-family: FontAwesome;\\n content: \\\"\\\\f00c\\\";\\n margin-bottom: 1px !important;\\n }\\n\\n.wizard-progress .step.in-progress .node:before {\\n font-family: FontAwesome;\\n content: \\\"\\\\f00c\\\";\\n }\\n\\n.wizard-progress .step.active .node:before {\\n font-family: FontAwesome;\\n content: \\\"\\\\f00c\\\";\\n }\\n\\n.wizard-progress .step.in-progress:before {\\n margin-top: 0%;\\n background: #b2d235;\\n background-image: linear-gradient(to right, #b2d235 43%, lightgray 21%, #ec1c24 46%);\\n background: linear-gradient(to right, #b2d235 43%, lightgray 21%, #ec1c24 46%);\\n filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#07c', endColorstr='#fff',GradientType=1 );\\n }\\n\\n.wizard-progress .step.active:before {\\n background-image: linear-gradient(to right, #b2d235 50%, lightgray 4%, lightgray 46%);\\n background: linear-gradient(to right, #b2d235 43%, lightgray 21%, lightgray 46%);\\n background-color: black;\\n }\\n\\n.wizard-progress .step.active .node {\\n border-color: #b2d235;\\n }\\n\\n.wizard-progress .step.in-progress .node {\\n border-color: #b2d235;\\n }\\n\\n.navbarBG {\\n background-color: #003a5d !important;\\n}\\n\\n.logoHW {\\n height: 100%;\\n width: 50%;\\n}\\n\\n.NicorlogoHW {\\n height: 100%;\\n width: 50%;\\n}\\n\\n.orderReschedulingBG {\\n background-color: #00bcf1;\\n margin-bottom: 0%;\\n}\\n\\n.ldcStyle {\\n margin-left: 5%;\\n padding-bottom: 1%;\\n margin-bottom: 2%;\\n color: whitesmoke;\\n font-family: Adelle !important;\\n}\\n\\n.orderStatusColor {\\n margin-left: 5%;\\n color: whitesmoke;\\n}\\n\\n.bold {\\n font-weight: bold\\n}\\n\\n.orderStatusSB {\\n background-color: #ffffff;\\n margin-top: -2%;\\n padding-top: 2%;\\n padding-bottom: 3%;\\n}\\n\\n.imgHW {\\n height: 100%;\\n width: 97%;\\n}\\n\\n.statusMessageBG {\\n color: #bdbdbd !important;\\n}\\n\\n.statusMessageIcon {\\n font-size: 24px;\\n padding-left: 1%;\\n color: #ff9800 !important\\n}\\n\\n.cardTitleBG {\\n background-color: #ffffff !important;\\n}\\n\\n.mapTextIcon {\\n color: #bdbdbd !important;\\n}\\n\\n.padding-left-3 {\\n padding-left: 3%;\\n}\\n\\n.appointmentSB {\\n padding-top: 0%;\\n padding-left: 2%;\\n color: black;\\n font-size: 13px;\\n}\\n\\n.reminderSB {\\n padding-top: 0%;\\n padding-left: 5%;\\n color: black;\\n font-size: 13px;\\n}\\n\\n.enrouteSB {\\n padding-top: 0%;\\n padding-right: 0%;\\n color: black;\\n font-size: 13px;\\n}\\n\\n.completeSB {\\n color: black;\\n padding-top: 0%;\\n padding-right: 12%;\\n font-size: 13px;\\n}\\n\\n.whiteBG {\\n background-color: #ffffff !important;\\n}\\n\\n.techImg {\\n border-radius: 50%;\\n margin-top: 5%;\\n margin-bottom: 3%;\\n margin-left: 9%;\\n}\\n\\n.techName {\\n text-align: center;\\n font-weight: 700;\\n font-family: Adelle;\\n color: black;\\n margin-left: 7%;\\n font-size: 20px;\\n}\\n\\n.eta {\\n color: black;\\n font-weight: 600;\\n font-family: Adelle;\\n font-size: 20px;\\n margin-left: 5%;\\n margin-top: 3%;\\n padding: 0 !important;\\n}\\n\\n.etaWindow {\\n color: black;\\n font-weight: 600;\\n font-family: Adelle;\\n font-size: 20px;\\n margin-left: 5%;\\n padding: 0 !important;\\n}\\n\\n.techWarning {\\n font-size: 24px;\\n padding-right: 5px;\\n}\\n\\n.mapText {\\n font-size: 24px;\\n padding-right: 5px;\\n color: #bdbdbd !important\\n}\\n\\n.pl-3 {\\n padding-left: 3%;\\n}\\n\\n.marketerContact {\\n color: whitesmoke !important;\\n font-weight: bold;\\n font-size: 16px;\\n}\\n\\n.marginTop-7 {\\n margin-top: 7% !important;\\n}\\n\\n.marginRight-5 {\\n margin-right: 5% !important;\\n}\\n\\n.techText {\\n width: 85%;\\n float: right;\\n}\\n\\n.mapInfo {\\n font-size: 24px;\\n padding-right: 5px;\\n color: #bdbdbd !important\\n}\\n\\n.margin-left-5 {\\n margin-left: 5%\\n}\\n\\n.cardPad {\\n padding-top: 3%;\\n padding-left: 3%;\\n padding-right: 3%;\\n background-color: #ffffff;\\n}\\n\\n.sticky {\\n position: fixed;\\n left: 0;\\n bottom: 0;\\n width: 100%;\\n background-color: red;\\n color: white;\\n text-align: center !important;\\n font-family: Adelle !important;\\n}\\n\\n.alertPad {\\n width: 87%;\\n float: right;\\n}\\n\\n.statusMsgWidth {\\n float: right;\\n width: 90%;\\n}\\n\\n.pt-3 {\\n padding-top: 3% !important;\\n margin-bottom: 3% !important;\\n}\\n\\n.pt-2 {\\n padding-top: 2%;\\n}\\n\\ntextarea::-webkit-input-placeholder {\\n color: #757575 !important;\\n font-size: 13px !important;\\n font-family: Adelle !important;\\n}\\n\\ntextarea::-moz-placeholder { /* Firefox 19+ */\\n color: #757575 !important;\\n font-size: 13px !important;\\n font-family: Adelle !important;\\n}\\n\\ntextarea:-ms-input-placeholder {\\n color: #757575 !important;\\n font-size: 13px !important;\\n font-family: Adelle !important;\\n}\\n\\ntextarea::-ms-input-placeholder {\\n color: #757575 !important;\\n font-size: 13px !important;\\n font-family: Adelle !important;\\n}\\n\\ntextarea::placeholder {\\n color: #757575 !important;\\n font-size: 13px !important;\\n font-family: Adelle !important;\\n}\\n\\n.blocks .btn-default {\\n /*padding: 24px 10px;*/\\n margin-top: 0px;\\n margin-bottom: 10px;\\n margin-left: 5px;\\n margin-right: 7px;\\n border-radius: 0;\\n border-color: #c23225;\\n color: #c23225; /*StrongRed*/\\n height: 60px !important;\\n width: 80px !important;\\n padding-left: 10px !important;\\n padding-right: 10px !important;\\n text-transform: none !important;\\n}\\n\\n.btnDisabled {\\n border-color: #757575 !important;\\n color: #757575 !important;\\n}\\n\\n.roundedTextArea {\\n width: 250px !important;\\n height: 150px !important;\\n border-radius: 10px !important;\\n border: 1px solid #757575;\\n font-family: jaf-bernina-sans;\\n padding: 15px;\\n}\\n\\n.checkMarkGreen {\\n width: 75px;\\n height: 75px;\\n background: white;\\n /*background: url(../../assets/images/checkmark-green-circle.png);*/\\n}\\n\\n.btnTimeSlot {\\n /*color: #757575 !important;*/\\n /*margin: 3.5% 0% !important;*/\\n width: 185px !important;\\n height: 40px !important;\\n color: #c23225 !important;\\n border-color: #c23225 !important;\\n}\\n\\n.btnStrongRedConfirm {\\n border: 1px solid #c23225 !important;\\n /*border-radius:10px !important;*/\\n color: white !important;\\n background: #c23225 !important;\\n font-weight: bold !important;\\n width: 130px !important;\\n margin-left: 3%;\\n margin-bottom: 10px;\\n text-transform: none;\\n font-size: 14px;\\n}\\n\\n.btnStrongRedOrderStatus {\\n border: 1px solid #c23225 !important;\\n /*border-radius:10px !important;*/\\n color: white !important;\\n background: #c23225 !important;\\n font-weight: bold !important;\\n width: 240px !important;\\n margin-left: 3%;\\n}\\n\\n.btnFillStrongRed {\\n color: white !important;\\n background-color: #c23225 !important;\\n}\\n\\n.btnStrongRedNoFill {\\n border: 1px solid #c23225 !important;\\n /*border-radius:10px !important;*/\\n color: #c23225 !important;\\n background: white !important;\\n font-weight: bold !important;\\n width: 130px !important;\\n margin-left: 3%;\\n text-transform: none;\\n font-size: 14px;\\n}\\n\\n/* To hide Stepper Navigation*/\\n\\n::ng-deep .mat-horizontal-stepper-header {\\n pointer-events: none !important;\\n}\\n\\n.matHorizontalStepper {\\n margin-top: 5px !important;\\n box-shadow: none;\\n}\\n\\n.divAvailableDayTable {\\n display: table;\\n table-layout: fixed;\\n width: 100%;\\n margin-bottom: 0px;\\n}\\n\\n.divAvailableDay {\\n width: 100% !important;\\n overflow-x: scroll;\\n white-space: nowrap !important;\\n display: inline-block; /* To apply given width to available day button */\\n}\\n\\n.divAvailableDayOuter {\\n padding: 1%;\\n display: table-cell !important;\\n width: 76%;\\n}\\n\\n.divTimeSlot {\\n margin-left: 0px;\\n overflow-y: auto !important;\\n height: 200px;\\n}\\n\\n.btnAvailableDayDivArrow {\\n -webkit-appearance: none;\\n background: transparent;\\n border: none;\\n outline: none;\\n background-repeat: no-repeat;\\n cursor: pointer;\\n width: 100%;\\n padding: 1px !important;\\n}\\n\\n.divAvailableDayArrow {\\n display: table-cell !important;\\n width: 12%;\\n vertical-align: middle;\\n}\\n\\n.matArrowButtonActive {\\n color: #c23225;\\n font-size: 36px;\\n}\\n\\n.matArrowButtonInActive {\\n color: #808080;\\n font-size: 36px;\\n}\\n\\n.confirmSpinnerColor ::ng-deep .mat-progress-spinner circle, .mat-spinner circle {\\n stroke: #ff9800 !important;\\n}\\n\\n:host ::ng-deep .mat-horizontal-content-container {\\n padding: 0 !important;\\n}\\n\\n.card, .mat-stepper-horizontal {\\n margin-top: 0px !important;\\n}\\n\\n.confirmSpinnerCenter {\\n position: absolute;\\n top: 50%;\\n left: 50%;\\n -webkit-transform: translateX(-50%) translateY(-50%);\\n transform: translateX(-50%) translateY(-50%);\\n}\\n\\n.confirmSpinnerOverlay {\\n height: 100%;\\n width: 100%;\\n background-color: rgba(0, 0, 0, 0.286);\\n z-index: 10;\\n top: 0;\\n left: 0;\\n position: absolute;\\n}\\n\\n.btnMoreDates {\\n color: #c23225 !important;\\n background-color: white !important;\\n width: 60px !important;\\n padding: 5px !important;\\n font-size: 10px;\\n}\\n\\n.btnPopOverAlert {\\n border-left: none;\\n border-top: none;\\n border-right: none;\\n border-bottom: 1px dotted #c23225;\\n text-decoration: none;\\n background: transparent;\\n color: #c23225;\\n font-family: Adelle;\\n cursor: pointer;\\n}\\n\\n/* Popover Header */\\n\\n.popover-title {\\n background-color: #c23225;\\n color: #FFFFFF;\\n font-size: 10px;\\n text-align: center;\\n font-family: Adelle;\\n}\\n\\n/* Popover Body */\\n\\n.popover-content {\\n background-color: #FFFFFF;\\n color: black;\\n padding: 10px;\\n}\\n\\n/* Popover Arrow */\\n\\n.arrow {\\n border-right-color: #c23225 !important;\\n}\\n\\n.popover-header {\\n background-color: #c23225 !important;\\n color: #FFFFFF !important;\\n font-size: 10px !important;\\n text-align: center !important;\\n font-family: Adelle !important;\\n}\\n\\n/* Popover Body */\\n\\n.popover-body {\\n background-color: #FFFFFF !important;\\n color: black !important;\\n padding: 10px !important;\\n}\\n\\n/* Popover Arrow */\\n\\n.arrow {\\n border-right-color: #c23225 !important;\\n}\\n\\n.SansSerifRegular {\\n /*font-family: 'Source Sans Pro',sans-serif;*/\\n font-family: -apple-system,system-ui,BlinkMacSystemFont,\\\"Segoe UI\\\",Roboto,\\\"Helvetica Neue\\\",Arial,sans-serif;\\n font-size: 1em;\\n font-weight: normal;\\n}\\n\\n.SansSerifSmall {\\n /*font-family: 'Source Sans Pro',sans-serif;*/\\n font-family: -apple-system,system-ui,BlinkMacSystemFont,\\\"Segoe UI\\\",Roboto,\\\"Helvetica Neue\\\",Arial,sans-serif;\\n font-size: 0.8em;\\n font-weight: normal;\\n}\\n\\n.radioInput {\\n height: 1.5em;\\n width: 1.5em;\\n border: 0px;\\n vertical-align: middle\\n}\\n\\n.radioInputLabel {\\n height: 1.5em;\\n line-height: 1.5em;\\n vertical-align: sub;\\n padding-left: 0.5em;\\n}\\n\\n.radioInputLabelCombo {\\n vertical-align: middle;\\n width: 16em;\\n margin-bottom: 0px\\n}\\n\\n.playIcon {\\n height: 2.5em;\\n float: left;\\n /*width: 3em;*/\\n margin-right: 0.5em !important;\\n}\\n\\n.processStopMsg {\\n margin: 0.5em 1.3em;\\n font-weight: bold;\\n font-size: 1.1em;\\n line-height: 1.5;\\n}\\n\\n.btnStrongRedFillLong {\\n border: 1px solid #c23225 !important;\\n /*border-radius:10px !important;*/\\n color: white !important;\\n background: #c23225 !important;\\n font-weight: bold !important;\\n width: 180px !important;\\n margin-left: 3%;\\n /*margin-bottom: 10px;*/\\n text-transform: none !important;\\n font-size: 14px;\\n}\\n\\n.divAVScroll {\\n /*width: 200px;\\n height: 400px;\\n background: red;*/\\n overflow-x: scroll;\\n}\\n\\n.divAVScroll::-webkit-scrollbar {\\n /*width: 10px;*/\\n background-color: #F5F5F5;\\n height: 5px;\\n }\\n\\n.divAVScroll::-webkit-scrollbar-track {\\n -webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.3);\\n background-color: #F5F5F5;\\n }\\n\\n.divAVScroll::-webkit-scrollbar-thumb {\\n background-color: #d96a60;\\n border: 2px solid #d5857e;\\n }\\n\\n.divTimeslotScroll {\\n /*width: 200px;\\n height: 400px;\\n background: red;*/\\n overflow-y: scroll;\\n}\\n\\n.divTimeslotScroll::-webkit-scrollbar {\\n /*width: 10px;*/\\n background-color: #F5F5F5;\\n width: 5px;\\n }\\n\\n.divTimeslotScroll::-webkit-scrollbar-track {\\n -webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.3);\\n background-color: #F5F5F5;\\n }\\n\\n.divTimeslotScroll::-webkit-scrollbar-thumb {\\n background-color: #d96a60;\\n border: 2px solid #d5857e;\\n }\\n\\n.timeslotblocks .btn-default .btn-round {\\n margin-top: 0px;\\n margin-bottom: 10px;\\n /*margin-left: 5px;\\n margin-right: 7px;*/\\n border-radius: 0;\\n border-color: #c23225;\\n color: #c23225; /*StrongRed*/\\n height: 60px !important;\\n width: 80px !important;\\n padding-left: 10px !important;\\n padding-right: 10px !important;\\n text-transform: none !important;\\n}\\n\\n.apptConfirmationMsg {\\n margin-left: 2%;\\n margin-right: 2%;\\n margin-top: 2%;\\n font-size: 15px;\\n text-align: center\\n}\\n\\n.playIcon {\\n height: 2.5em;\\n float: left;\\n /*width: 3em;*/\\n margin-right: 0.5em !important;\\n}\\n\\n.divLightCyanAlert {\\n background-color: lightcyan;\\n display: block;\\n padding: 5px 10px;\\n /*margin: 0px 10px;*/\\n margin-bottom: 5px;\\n line-height: 1.2em;\\n}\\n\\n.divReminderMessageByEC {\\n width: 90%;\\n display: inline-block;\\n font-size: 14px;\\n text-align: left;\\n}\\n\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvc2hhcmVkL2NvbXBvbmVudHMvYXZhaWxhYmlsaXR5L2F2YWlsYWJpbGl0eS1zZWxlY3Rpb24uY29tcG9uZW50LmNzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtJQUNJLHdCQUF3QjtBQUM1Qjs7QUFFQTtJQUNJLDRCQUE0QjtBQUNoQzs7QUFFQTtJQUNJLG9CQUFhO0lBQWIsYUFBYTtJQUNiLG1CQUFlO1FBQWYsZUFBZTtJQUNmLCtCQUErQjtBQUNuQzs7QUFFSTtRQUNJLFVBQVU7UUFDVixVQUFVO1FBQ1Ysa0JBQWtCO1FBQ2xCO3NCQUNjO0lBQ2xCOztBQUVKO0lBQ0k7UUFDSSw0QkFBNEI7SUFDaEM7O0lBRUE7UUFDSSxVQUFVO0lBQ2Q7QUFDSjs7QUFFQTtJQUVJLG1EQUFtRDtJQUNuRCxXQUFXO0lBQ1gsb0JBQWE7SUFBYixhQUFhO0FBQ2pCOztBQUVBO0lBQ0kseUJBQXlCO0lBQ3pCLDRCQUE0QjtBQUNoQzs7QUFFQTtJQUVJLGdCQUFnQjtJQUNoQixXQUFXO0lBQ1gsVUFBVTtJQUNWLE9BQU87QUFDWDs7QUFFQTtJQUNJLGtCQUFrQjtJQUNsQixjQUFjO0FBQ2xCOztBQUVBO0lBQ0ksMkJBQTJCO0FBQy9COztBQUVBO0lBQ0ksc0JBQXNCO0FBQzFCOztBQUVBO0lBQ0ksNkJBQTZCO0FBQ2pDOztBQUVBO0lBQ0ksbUJBQW1CO0FBQ3ZCOztBQUVBO0lBQ0ksbUJBQW1CO0lBQ25CLGlCQUFpQjtBQUNyQjs7QUFFQTtJQUNJLG1CQUFtQjtJQUNuQixlQUFlO0lBQ2YsZ0JBQWdCO0FBQ3BCOztBQUVBO0lBQ0ksbUJBQW1CO0lBQ25CLGVBQWU7SUFDZixnQkFBZ0I7SUFDaEIsY0FBYztBQUNsQjs7QUFFQTtJQUNJLDZCQUE2QjtJQUM3QixZQUFZO0FBQ2hCOztBQUVBO0lBQ0ksNkJBQTZCO0lBQzdCLGdCQUFnQjtBQUNwQjs7QUFFQTtJQUNJLGVBQWU7SUFDZix1QkFBdUI7QUFDM0I7O0FBRUE7SUFDSSxlQUFlO0lBQ2YsYUFB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akIsa0JBQWtCO0FBQ3RCOztBQUVJO1FBQ0ksZUFBZTtRQUNmLHlCQUF5QjtRQUN6QixVQUFVO0lBQ2Q7O0FBRUE7UUFDSSxpREFBaUQ7UUFDakQseUJBQXlCO0lBQzdCOztBQUVBO1FBQ0kseUJBQXlCO1FBQ3pCLHlCQUF5QjtJQUM3Qjs7QUFFSjtJQUNJLGVBQWU7SUFDZixtQkFBbUI7SUFDbkI7dUJBQ21CO0lBQ25CLGdCQUFnQjtJQUNoQixxQkFBcUI7SUFDckIsY0FBYyxFQUFFLFlBQVk7SUFDNUIsdUJBQXVCO0lBQ3ZCLHNCQUFzQjtJQUN0Qiw2QkFBNkI7SUFDN0IsOEJBQThCO0lBQzlCLCtCQUErQjtBQUNuQzs7QUFFQTtJQUNJLGVBQWU7SUFDZixnQkFBZ0I7SUFDaEIsY0FBYztJQUNkLGVBQWU7SUFDZjtBQUNKOztBQUVBO0lBQ0ksYUFBYTtJQUNiLFdBQVc7SUFDWCxjQUFjO0lBQ2QsOEJBQThCO0FBQ2xDOztBQUVBO0lBQ0ksMkJBQTJCO0lBQzNCLGNBQWM7SUFDZCxpQkFBaUI7SUFDakIsb0JBQW9CO0lBQ3BCLGtCQUFrQjtJQUNsQixrQkFBa0I7QUFDdEI7O0FBRUE7SUFDSSxVQUFVO0lBQ1YscUJBQXFCO0lBQ3JCLGVBQWU7SUFDZixnQkFBZ0I7QUFDcEIiLCJmaWxlIjoic3JjL2FwcC9zaGFyZWQvY29tcG9uZW50cy9hdmFpbGFiaWxpdHkvYXZhaWxhYmlsaXR5LXNlbGVjdGlvbi5jb21wb25lbnQuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiYWdtLW1hcCB7XG4gICAgaGVpZ2h0OiAzMDBweCAhaW1wb3J0YW50O1xufVxuXG4uY29udGFpbmVyIHtcbiAgICBiYWNrZ3JvdW5kOiB3aGl0ZSAhaW1wb3J0YW50O1xufVxuXG4uZmxleC1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIC8qIGJhY2tncm91bmQtY29sb3I6ICNjY2NmZDI7ICovXG59XG5cbiAgICAuZmxleC1jb250YWluZXIgPiBkaXYge1xuICAgICAgICB3aWR0aDogMjMlO1xuICAgICAgICBtYXJnaW46IDElO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIC8qIGxpbmUtaGVpZ2h0OiA3NXB4O1xuICAgIGZvbnQtc2l6ZTogMzBweDsgKi9cbiAgICB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzYwcHgpIHtcbiAgICAuaC00MDAge1xuICAgICAgICBtaW4taGVpZ2h0OiA0NDRweCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5mbGV4LWNvbnRhaW5lciB7XG4gICAgICAgIHdpZHRoOiA1MCU7XG4gICAgfVxufVxuXG4ubWFpbiB7XG4gICAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICAgIC8qIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgjZmZmY2ZjLCAjZjZiNmI2KTsgKi9cbiAgICAvKiBTYWZhcmkgKi9cbiAgICBkaXNwbGF5OiBmbGV4O1xufVxuXG4uY2FyZCB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2Q2Y2NjYztcbiAgICBtYXJnaW4tYm90dG9tOiAwJSAhaW1wb3J0YW50O1xufVxuXG4ubWFpbiBkaXYge1xuICAgIC13ZWJraXQtZmxleDogMTtcbiAgICAvKiBTYWZhcmkgNi4xKyAqL1xuICAgIC1tcy1mbGV4OiAxO1xuICAgIC8qIElFIDEwICovXG4gICAgZmxleDogMTtcbn1cblxuLm1haW4gaSB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uZXhhbXBsZS1jbGFzcyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogYWxpY2VibHVlO1xufVxuXG4ub3RoZXItY2xhc3Mge1xuICAgIGJhY2tncm91bmQtY29sb3I6IGFxdWE7XG59XG5cbi5CZXJuaW5hU2Fuc2xpZ2h0IHtcbiAgICBmb250LWZhbWlseTogamFmLWJlcm5pbmEtc2Fucztcbn1cblxuLkFkZWxsZVJlZ3VsYXIge1xuICAgIGZvbnQtZmFtaWx5OiBBZGVsbGU7XG59XG5cbi5BZGVsbGVCb2xkIHtcbiAgICBmb250LWZhbWlseTogQWRlbGxlO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4uQWRlbGxlU21hbGwge1xuICAgIGZvbnQtZmFtaWx5OiBBZGVsbGU7XG4gICAgZm9udC1zaXplOiAxM3B4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjY7XG59XG5cbi5BZGVsbGVTbWFsbFN0cm9uZ1JlZCB7XG4gICAgZm9udC1mYW1pbHk6IEFkZWxsZTtcbiAgICBmb250LXNpemU6IDEycHg7XG4gICAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgICBjb2xvcjogI2MyMzIyNTtcbn1cblxuc3BhbiwgcCwgc3Ryb25nLCBsaSB7XG4gICAgZm9udC1mYW1pbHk6IGphZi1iZXJuaW5hLXNhbnM7XG4gICAgY29sb3I6IGJsYWNrO1xufVxuXG5iIHtcbiAgICBmb250LWZhbWlseTogamFmLWJlcm5pbmEtc2FucztcbiAgICBjb2xvcjogbGlnaHRncmF5O1xufVxuXG4uZ3JlZW4ge1xuICAgIGZvbnQtc2l6ZTogNTBweDtcbiAgICBjb2xvcjogcmdiKDM3LCAxNjAsIDM3KTtcbn1cblxuLm9yYW5nZSB7XG4gICAgZm9udC1zaXplOiA1MHB4O1xuICAgIGNvbG9yOiBvcmFuZ2U7XG59XG5cbi5ncmF5IHtcbiAgICBmb250LXNpemU6IDUwcHg7XG4gICAgY29sb3I6IGdyYXk7XG59XG5cbi5nbW5vcHJpbnQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG5cbi50b29sdGlwIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQgYmxhY2s7XG59XG5cbiAgICAudG9vbHRpcCAudG9vbHRpcHRleHQge1xuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgIHdpZHRoOiAxMjBweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzU1NTtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4O1xuICAgICAgICBwYWRkaW5nOiA1cHggMDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICBib3R0b206IDEyNSU7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC02MHB4O1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3M7XG4gICAgfVxuXG4gICAgICAgIC50b29sdGlwIC50b29sdGlwdGV4dDo6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMTAwJTtcbiAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtNXB4O1xuICAgICAgICAgICAgYm9yZGVyLXdpZHRoOiA1cHg7XG4gICAgICAgICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjNTU1IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgICAgICB9XG5cbiAgICAudG9vbHRpcDpob3ZlciAudG9vbHRpcHRleHQge1xuICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgIH1cblxuLmZsZXgtY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlZWY4Zjk7XG59XG5cbiAgICAuZmxleC1jb250YWluZXIgPiBkaXYge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVmOGY5O1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWFyZ2luOiAxMHB4O1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiA3NXB4O1xuICAgICAgICBmb250LXNpemU6IDMwcHg7XG4gICAgfVxuXG5cbi53aXphcmQtcHJvZ3Jlc3Mge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHRhYmxlLWxheW91dDogZml4ZWQ7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4gICAgLndpemFyZC1wcm9ncmVzcyAuc3RlcCB7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIH1cblxuICAgICAgICAud2l6YXJkLXByb2dyZXNzIC5zdGVwOm5vdCg6bGFzdC1jaGlsZCk6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgICB0b3A6IDMycHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTBkZGRkO1xuICAgICAgICAgICAgaGVpZ2h0OiA2cHg7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDAlO1xuICAgICAgICB9XG5cbiAgICAgICAgLndpemFyZC1wcm9ncmVzcyAuc3RlcCAubm9kZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAvKiBib3JkZXI6IDZweCBzb2xpZCAjZmZmOyAqL1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbGlnaHRncmF5O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMThweDtcbiAgICAgICAgICAgIC8qIGJvcmRlci1jb2xvcjogIGJsYWNrOyAqL1xuICAgICAgICAgICAgaGVpZ2h0OiAyNXB4O1xuICAgICAgICAgICAgd2lkdGg6IDI0cHg7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDIzcHg7XG4gICAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogLTE4cHg7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwJTtcbiAgICAgICAgfVxuXG4gICAgICAgIC53aXphcmQtcHJvZ3Jlc3MgLnN0ZXAuY29tcGxldGU6YmVmb3JlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNiMmQyMzU7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwJTtcbiAgICAgICAgfVxuXG4gICAgICAgIC53aXphcmQtcHJvZ3Jlc3MgLnN0ZXAuY29tcGxldGUgLm5vZGUge1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjYjJkMjM1O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2IyZDIzNTtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDAlO1xuICAgICAgICB9XG5cbiAgICAgICAgLndpemFyZC1wcm9ncmVzcyAuc3RlcC5hY3RpdmUgLm5vZGUge1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjYjJkMjM1O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2IyZDIzNTtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDAlO1xuICAgICAgICB9XG5cbiAgICAgICAgLndpemFyZC1wcm9ncmVzcyAuc3RlcC5pbi1wcm9ncmVzczpiZWZvcmUge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2IyZDIzNTtcbiAgICAgICAgfVxuXG4gICAgICAgIC53aXphcmQtcHJvZ3Jlc3MgLnN0ZXAuaW4tcHJvZ3Jlc3MgLm5vZGUge1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjYjJkMjM1O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2IyZDIzNTtcbiAgICAgICAgfVxuXG4gICAgICAgIC53aXphcmQtcHJvZ3Jlc3MgLnN0ZXAuY2dpOmJlZm9yZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZWQ7XG4gICAgICAgIH1cblxuICAgICAgICAud2l6YXJkLXByb2dyZXNzIC5zdGVwLmNnaSAubm9kZSB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHJlZDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJlZDtcbiAgICAgICAgfVxuXG4gICAgICAgICAgICAud2l6YXJkLXByb2dyZXNzIC5zdGVwLmNnaSAubm9kZTpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIlxcZjAwZFwiO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgLndpemFyZC1wcm9ncmVzcyAuc3RlcC5jb21wbGV0ZSAubm9kZTpiZWZvcmUge1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xuICAgICAgICAgICAgY29udGVudDogXCJcXGYwMGNcIjtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFweCAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgICAgLndpemFyZC1wcm9ncmVzcyAuc3RlcC5pbi1wcm9ncmVzcyAubm9kZTpiZWZvcmUge1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xuICAgICAgICAgICAgY29udGVudDogXCJcXGYwMGNcIjtcbiAgICAgICAgfVxuXG4gICAgICAgIC53aXphcmQtcHJvZ3Jlc3MgLnN0ZXAuYWN0aXZlIC5ub2RlOmJlZm9yZSB7XG4gICAgICAgICAgICBmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XG4gICAgICAgICAgICBjb250ZW50OiBcIlxcZjAwY1wiO1xuICAgICAgICB9XG5cbiAgICAgICAgLndpemFyZC1wcm9ncmVzcyAuc3RlcC5pbi1wcm9ncmVzczpiZWZvcmUge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMCU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjYjJkMjM1O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAjYjJkMjM1IDQzJSwgbGlnaHRncmF5IDIxJSwgI2VjMWMyNCA0NiUpO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICNiMmQyMzUgMCUsIGxpZ2h0Z3JheSAyMSUsICNlYzFjMjQgNDYlKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAjYjJkMjM1IDAlLCBsaWdodGdyYXkgMjElLCAjZWMxYzI0IDQ2JSk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICNiMmQyMzUgNDMlLCBsaWdodGdyYXkgMjElLCAjZWMxYzI0IDQ2JSk7XG4gICAgICAgICAgICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudCggc3RhcnRDb2xvcnN0cj0nIzA3YycsIGVuZENvbG9yc3RyPScjZmZmJyxHcmFkaWVudFR5cGU9MSApO1xuICAgICAgICB9XG5cbiAgICAgICAgLndpemFyZC1wcm9ncmVzcyAuc3RlcC5hY3RpdmU6YmVmb3JlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgI2IyZDIzNSA1MCUsIGxpZ2h0Z3JheSA0JSwgbGlnaHRncmF5IDQ2JSk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudCh0byByaWdodCwgI2IyZDIzNSAwJSwgbGlnaHRncmF5IDIxJSwgbGlnaHRncmF5IDQ2JSk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0byByaWdodCwgI2IyZDIzNSAwJSwgbGlnaHRncmF5IDIxJSwgbGlnaHRncmF5IDQ2JSk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICNiMmQyMzUgNDMlLCBsaWdodGdyYXkgMjElLCBsaWdodGdyYXkgNDYlKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGJsYWNrO1xuICAgICAgICB9XG5cbiAgICAgICAgLndpemFyZC1wcm9ncmVzcyAuc3RlcC5hY3RpdmUgLm5vZGUge1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjYjJkMjM1O1xuICAgICAgICB9XG5cbiAgICAgICAgLndpemFyZC1wcm9ncmVzcyAuc3RlcC5pbi1wcm9ncmVzcyAubm9kZSB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICNiMmQyMzU7XG4gICAgICAgIH1cblxuLm5hdmJhckJHIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAzYTVkICFpbXBvcnRhbnQ7XG59XG5cbi5sb2dvSFcge1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB3aWR0aDogNTAlO1xufVxuXG4uTmljb3Jsb2dvSFcge1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB3aWR0aDogNTAlO1xufVxuXG4ub3JkZXJSZXNjaGVkdWxpbmdCRyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwYmNmMTtcbiAgICBtYXJnaW4tYm90dG9tOiAwJTtcbn1cblxuLmxkY1N0eWxlIHtcbiAgICBtYXJnaW4tbGVmdDogNSU7XG4gICAgcGFkZGluZy1ib3R0b206IDElO1xuICAgIG1hcmdpbi1ib3R0b206IDIlO1xuICAgIGNvbG9yOiB3aGl0ZXNtb2tlO1xuICAgIGZvbnQtZmFtaWx5OiBBZGVsbGUgIWltcG9ydGFudDtcbn1cblxuLm9yZGVyU3RhdHVzQ29sb3Ige1xuICAgIG1hcmdpbi1sZWZ0OiA1JTtcbiAgICBjb2xvcjogd2hpdGVzbW9rZTtcbn1cblxuLmJvbGQge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkXG59XG5cbi5vcmRlclN0YXR1c1NCIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICAgIG1hcmdpbi10b3A6IC0yJTtcbiAgICBwYWRkaW5nLXRvcDogMiU7XG4gICAgcGFkZGluZy1ib3R0b206IDMlO1xufVxuXG4uaW1nSFcge1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB3aWR0aDogOTclO1xufVxuXG5cblxuLnN0YXR1c01lc3NhZ2VCRyB7XG4gICAgY29sb3I6ICNiZGJkYmQgIWltcG9ydGFudDtcbn1cblxuLnN0YXR1c01lc3NhZ2VJY29uIHtcbiAgICBmb250LXNpemU6IDI0cHg7XG4gICAgcGFkZGluZy1sZWZ0OiAxJTtcbiAgICBjb2xvcjogI2ZmOTgwMCAhaW1wb3J0YW50XG59XG5cbi5jYXJkVGl0bGVCRyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZiAhaW1wb3J0YW50O1xufVxuXG4ubWFwVGV4dEljb24ge1xuICAgIGNvbG9yOiAjYmRiZGJkICFpbXBvcnRhbnQ7XG59XG5cbi5wYWRkaW5nLWxlZnQtMyB7XG4gICAgcGFkZGluZy1sZWZ0OiAzJTtcbn1cblxuLmFwcG9pbnRtZW50U0Ige1xuICAgIHBhZGRpbmctdG9wOiAwJTtcbiAgICBwYWRkaW5nLWxlZnQ6IDIlO1xuICAgIGNvbG9yOiBibGFjaztcbiAgICBmb250LXNpemU6IDEzcHg7XG59XG5cbi5yZW1pbmRlclNCIHtcbiAgICBwYWRkaW5nLXRvcDogMCU7XG4gICAgcGFkZGluZy1sZWZ0OiA1JTtcbiAgICBjb2xvcjogYmxhY2s7XG4gICAgZm9udC1zaXplOiAxM3B4O1xufVxuXG4uZW5yb3V0ZVNCIHtcbiAgICBwYWRkaW5nLXRvcDogMCU7XG4gICAgcGFkZGluZy1yaWdodDogMCU7XG4gICAgY29sb3I6IGJsYWNrO1xuICAgIGZvbnQtc2l6ZTogMTNweDtcbn1cblxuLmNvbXBsZXRlU0Ige1xuICAgIGNvbG9yOiBibGFjaztcbiAgICBwYWRkaW5nLXRvcDogMCU7XG4gICAgcGFkZGluZy1yaWdodDogMTIlO1xuICAgIGZvbnQtc2l6ZTogMTNweDtcbn1cblxuLndoaXRlQkcge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmYgIWltcG9ydGFudDtcbn1cblxuLnRlY2hJbWcge1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBtYXJnaW4tdG9wOiA1JTtcbiAgICBtYXJnaW4tYm90dG9tOiAzJTtcbiAgICBtYXJnaW4tbGVmdDogOSU7XG59XG5cbi50ZWNoTmFtZSB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgZm9udC1mYW1pbHk6IEFkZWxsZTtcbiAgICBjb2xvcjogYmxhY2s7XG4gICAgbWFyZ2luLWxlZnQ6IDclO1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbn1cblxuLmV0YSB7XG4gICAgY29sb3I6IGJsYWNrO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgZm9udC1mYW1pbHk6IEFkZWxsZTtcbiAgICBmb250LXNpemU6IDIwcHg7XG4gICAgbWFyZ2luLWxlZnQ6IDUlO1xuICAgIG1hcmdpbi10b3A6IDMlO1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbn1cblxuLmV0YVdpbmRvdyB7XG4gICAgY29sb3I6IGJsYWNrO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgZm9udC1mYW1pbHk6IEFkZWxsZTtcbiAgICBmb250LXNpemU6IDIwcHg7XG4gICAgbWFyZ2luLWxlZnQ6IDUlO1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbn1cblxuLnRlY2hXYXJuaW5nIHtcbiAgICBmb250LXNpemU6IDI0cHg7XG4gICAgcGFkZGluZy1yaWdodDogNXB4O1xufVxuXG4ubWFwVGV4dCB7XG4gICAgZm9udC1zaXplOiAyNHB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDVweDtcbiAgICBjb2xvcjogI2JkYmRiZCAhaW1wb3J0YW50XG59XG5cbi5wbC0zIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDMlO1xufVxuXG5cbi5tYXJrZXRlckNvbnRhY3Qge1xuICAgIGNvbG9yOiB3aGl0ZXNtb2tlICFpbXBvcnRhbnQ7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgZm9udC1zaXplOiAxNnB4O1xufVxuXG5cbi5tYXJnaW5Ub3AtNyB7XG4gICAgbWFyZ2luLXRvcDogNyUgIWltcG9ydGFudDtcbn1cblxuLm1hcmdpblJpZ2h0LTUge1xuICAgIG1hcmdpbi1yaWdodDogNSUgIWltcG9ydGFudDtcbn1cblxuLnRlY2hUZXh0IHtcbiAgICB3aWR0aDogODUlO1xuICAgIGZsb2F0OiByaWdodDtcbn1cblxuLm1hcEluZm8ge1xuICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiA1cHg7XG4gICAgY29sb3I6ICNiZGJkYmQgIWltcG9ydGFudFxufVxuXG4ubWFyZ2luLWxlZnQtNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDUlXG59XG5cbi5jYXJkUGFkIHtcbiAgICBwYWRkaW5nLXRvcDogMyU7XG4gICAgcGFkZGluZy1sZWZ0OiAzJTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzJTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xufVxuXG4uc3RpY2t5IHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgbGVmdDogMDtcbiAgICBib3R0b206IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmVkO1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgICBmb250LWZhbWlseTogQWRlbGxlICFpbXBvcnRhbnQ7XG59XG5cbi5hbGVydFBhZCB7XG4gICAgd2lkdGg6IDg3JTtcbiAgICBmbG9hdDogcmlnaHQ7XG59XG5cbi5zdGF0dXNNc2dXaWR0aCB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIHdpZHRoOiA5MCU7XG59XG5cbi5wdC0zIHtcbiAgICBwYWRkaW5nLXRvcDogMyUgIWltcG9ydGFudDtcbiAgICBtYXJnaW4tYm90dG9tOiAzJSAhaW1wb3J0YW50O1xufVxuXG4ucHQtMiB7XG4gICAgcGFkZGluZy10b3A6IDIlO1xufVxuXG50ZXh0YXJlYTo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICM3NTc1NzUgIWltcG9ydGFudDtcbiAgICBmb250LXNpemU6IDEzcHggIWltcG9ydGFudDtcbiAgICBmb250LWZhbWlseTogQWRlbGxlICFpbXBvcnRhbnQ7XG59XG5cbnRleHRhcmVhOi1tb3otcGxhY2Vob2xkZXIgeyAvKiBGaXJlZm94IDE4LSAqL1xuICAgIGNvbG9yOiAjNzU3NTc1ICFpbXBvcnRhbnQ7XG4gICAgZm9udC1zaXplOiAxM3B4ICFpbXBvcnRhbnQ7XG4gICAgZm9udC1mYW1pbHk6IEFkZWxsZSAhaW1wb3J0YW50O1xufVxuXG50ZXh0YXJlYTo6LW1vei1wbGFjZWhvbGRlciB7IC8qIEZpcmVmb3ggMTkrICovXG4gICAgY29sb3I6ICM3NTc1NzUgIWltcG9ydGFudDtcbiAgICBmb250LXNpemU6IDEzcHggIWltcG9ydGFudDtcbiAgICBmb250LWZhbWlseTogQWRlbGxlICFpbXBvcnRhbnQ7XG59XG5cbnRleHRhcmVhOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICM3NTc1NzUgIWltcG9ydGFudDtcbiAgICBmb250LXNpemU6IDEzcHggIWltcG9ydGFudDtcbiAgICBmb250LWZhbWlseTogQWRlbGxlICFpbXBvcnRhbnQ7XG59XG5cbnRleHRhcmVhOjpwbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICM3NTc1NzUgIWltcG9ydGFudDtcbiAgICBmb250LXNpemU6IDEzcHggIWltcG9ydGFudDtcbiAgICBmb250LWZhbWlseTogQWRlbGxlICFpbXBvcnRhbnQ7XG59XG5cbi5ibG9ja3MgLmJ0bi1kZWZhdWx0IHtcbiAgICAvKnBhZGRpbmc6IDI0cHggMTBweDsqL1xuICAgIG1hcmdpbi10b3A6IDBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgIG1hcmdpbi1sZWZ0OiA1cHg7XG4gICAgbWFyZ2luLXJpZ2h0OiA3cHg7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBib3JkZXItY29sb3I6ICNjMjMyMjU7XG4gICAgY29sb3I6ICNjMjMyMjU7IC8qU3Ryb25nUmVkKi9cbiAgICBoZWlnaHQ6IDYwcHggIWltcG9ydGFudDtcbiAgICB3aWR0aDogODBweCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctbGVmdDogMTBweCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctcmlnaHQ6IDEwcHggIWltcG9ydGFudDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4uYnRuRGlzYWJsZWQge1xuICAgIGJvcmRlci1jb2xvcjogIzc1NzU3NSAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAjNzU3NTc1ICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkVGV4dEFyZWEge1xuICAgIHdpZHRoOiAyNTBweCAhaW1wb3J0YW50O1xuICAgIGhlaWdodDogMTUwcHggIWltcG9ydGFudDtcbiAgICBib3JkZXItcmFkaXVzOiAxMHB4ICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzc1NzU3NTtcbiAgICBmb250LWZhbWlseTogamFmLWJlcm5pbmEtc2FucztcbiAgICBwYWRkaW5nOiAxNXB4O1xufVxuXG4uY2hlY2tNYXJrR3JlZW4ge1xuICAgIHdpZHRoOiA3NXB4O1xuICAgIGhlaWdodDogNzVweDtcbiAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICAvKmJhY2tncm91bmQ6IHVybCguLi8uLi9hc3NldHMvaW1hZ2VzL2NoZWNrbWFyay1ncmVlbi1jaXJjbGUucG5nKTsqL1xufVxuXG4uYnRuVGltZVNsb3Qge1xuICAgIC8qY29sb3I6ICM3NTc1NzUgIWltcG9ydGFudDsqL1xuICAgIC8qbWFyZ2luOiAzLjUlIDAlICFpbXBvcnRhbnQ7Ki9cbiAgICB3aWR0aDogMTg1cHggIWltcG9ydGFudDtcbiAgICBoZWlnaHQ6IDQwcHggIWltcG9ydGFudDtcbiAgICBjb2xvcjogI2MyMzIyNSAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1jb2xvcjogI2MyMzIyNSAhaW1wb3J0YW50O1xufVxuXG4uYnRuU3Ryb25nUmVkQ29uZmlybSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2MyMzIyNSAhaW1wb3J0YW50O1xuICAgIC8qYm9yZGVyLXJhZGl1czoxMHB4ICFpbXBvcnRhbnQ7Ki9cbiAgICBjb2xvcjogd2hpdGUgIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kOiAjYzIzMjI1ICFpbXBvcnRhbnQ7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQgIWltcG9ydGFudDtcbiAgICB3aWR0aDogMTMwcHggIWltcG9ydGFudDtcbiAgICBtYXJnaW4tbGVmdDogMyU7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICBmb250LXNpemU6IDE0cHg7XG59XG5cbi5idG5TdHJvbmdSZWRPcmRlclN0YXR1cyB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2MyMzIyNSAhaW1wb3J0YW50O1xuICAgIC8qYm9yZGVyLXJhZGl1czoxMHB4ICFpbXBvcnRhbnQ7Ki9cbiAgICBjb2xvcjogd2hpdGUgIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kOiAjYzIzMjI1ICFpbXBvcnRhbnQ7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQgIWltcG9ydGFudDtcbiAgICB3aWR0aDogMjQwcHggIWltcG9ydGFudDtcbiAgICBtYXJnaW4tbGVmdDogMyU7XG59XG5cbi5idG5GaWxsU3Ryb25nUmVkIHtcbiAgICBjb2xvcjogd2hpdGUgIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzIzMjI1ICFpbXBvcnRhbnQ7XG59XG5cbi5idG5TdHJvbmdSZWROb0ZpbGwge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNjMjMyMjUgIWltcG9ydGFudDtcbiAgICAvKmJvcmRlci1yYWRpdXM6MTBweCAhaW1wb3J0YW50OyovXG4gICAgY29sb3I6ICNjMjMyMjUgIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kOiB3aGl0ZSAhaW1wb3J0YW50O1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkICFpbXBvcnRhbnQ7XG4gICAgd2lkdGg6IDEzMHB4ICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWxlZnQ6IDMlO1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbn1cblxuLyogVG8gaGlkZSBTdGVwcGVyIE5hdmlnYXRpb24qL1xuOjpuZy1kZWVwIC5tYXQtaG9yaXpvbnRhbC1zdGVwcGVyLWhlYWRlciB7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLm1hdEhvcml6b250YWxTdGVwcGVyIHtcbiAgICBtYXJnaW4tdG9wOiA1cHggIWltcG9ydGFudDtcbiAgICBib3gtc2hhZG93OiBub25lO1xufVxuXG4uZGl2QXZhaWxhYmxlRGF5VGFibGUge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIHRhYmxlLWxheW91dDogZml4ZWQ7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogMHB4O1xufVxuXG4uZGl2QXZhaWxhYmxlRGF5IHtcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgIG92ZXJmbG93LXg6IHNjcm9sbDtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwICFpbXBvcnRhbnQ7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyAvKiBUbyBhcHBseSBnaXZlbiB3aWR0aCB0byBhdmFpbGFibGUgZGF5IGJ1dHRvbiAqL1xufVxuXG4uZGl2QXZhaWxhYmxlRGF5T3V0ZXIge1xuICAgIHBhZGRpbmc6IDElO1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDtcbiAgICB3aWR0aDogNzYlO1xufVxuXG4uZGl2VGltZVNsb3Qge1xuICAgIG1hcmdpbi1sZWZ0OiAwcHg7XG4gICAgb3ZlcmZsb3cteTogYXV0byAhaW1wb3J0YW50O1xuICAgIGhlaWdodDogMjAwcHg7XG59XG5cbi5idG5BdmFpbGFibGVEYXlEaXZBcnJvdyB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IDFweCAhaW1wb3J0YW50O1xufVxuXG4uZGl2QXZhaWxhYmxlRGF5QXJyb3cge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDtcbiAgICB3aWR0aDogMTIlO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi5tYXRBcnJvd0J1dHRvbkFjdGl2ZSB7XG4gICAgY29sb3I6ICNjMjMyMjU7XG4gICAgZm9udC1zaXplOiAzNnB4O1xufVxuXG4ubWF0QXJyb3dCdXR0b25JbkFjdGl2ZSB7XG4gICAgY29sb3I6ICM4MDgwODA7XG4gICAgZm9udC1zaXplOiAzNnB4O1xufVxuXG4uY29uZmlybVNwaW5uZXJDb2xvciA6Om5nLWRlZXAgLm1hdC1wcm9ncmVzcy1zcGlubmVyIGNpcmNsZSwgLm1hdC1zcGlubmVyIGNpcmNsZSB7XG4gICAgc3Ryb2tlOiAjZmY5ODAwICFpbXBvcnRhbnQ7XG59XG5cbjpob3N0IDo6bmctZGVlcCAubWF0LWhvcml6b250YWwtY29udGVudC1jb250YWluZXIge1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbn1cblxuLmNhcmQsIC5tYXQtc3RlcHBlci1ob3Jpem9udGFsIHtcbiAgICBtYXJnaW4tdG9wOiAwcHggIWltcG9ydGFudDtcbn1cblxuLmNvbmZpcm1TcGlubmVyQ2VudGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgbGVmdDogNTAlO1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgdHJhbnNsYXRlWSgtNTAlKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgdHJhbnNsYXRlWSgtNTAlKTtcbn1cblxuLmNvbmZpcm1TcGlubmVyT3ZlcmxheSB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yODYpO1xuICAgIHotaW5kZXg6IDEwO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbn1cblxuLmJ0bk1vcmVEYXRlcyB7XG4gICAgY29sb3I6ICNjMjMyMjUgIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZSAhaW1wb3J0YW50O1xuICAgIHdpZHRoOiA2MHB4ICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogNXB4ICFpbXBvcnRhbnQ7XG4gICAgZm9udC1zaXplOiAxMHB4O1xufVxuXG4uYnRuUG9wT3ZlckFsZXJ0IHtcbiAgICBib3JkZXItbGVmdDogbm9uZTtcbiAgICBib3JkZXItdG9wOiBub25lO1xuICAgIGJvcmRlci1yaWdodDogbm9uZTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggZG90dGVkICNjMjMyMjU7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGNvbG9yOiAjYzIzMjI1O1xuICAgIGZvbnQtZmFtaWx5OiBBZGVsbGU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xufVxuLyogUG9wb3ZlciBIZWFkZXIgKi9cbi5wb3BvdmVyLXRpdGxlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzIzMjI1O1xuICAgIGNvbG9yOiAjRkZGRkZGO1xuICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZm9udC1mYW1pbHk6IEFkZWxsZTtcbn1cbi8qIFBvcG92ZXIgQm9keSAqL1xuLnBvcG92ZXItY29udGVudCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRjtcbiAgICBjb2xvcjogYmxhY2s7XG4gICAgcGFkZGluZzogMTBweDtcbn1cbi8qIFBvcG92ZXIgQXJyb3cgKi9cbi5hcnJvdyB7XG4gICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAjYzIzMjI1ICFpbXBvcnRhbnQ7XG59XG5cblxuLnBvcG92ZXItaGVhZGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzIzMjI1ICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6ICNGRkZGRkYgIWltcG9ydGFudDtcbiAgICBmb250LXNpemU6IDEwcHggIWltcG9ydGFudDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgICBmb250LWZhbWlseTogQWRlbGxlICFpbXBvcnRhbnQ7XG59XG4vKiBQb3BvdmVyIEJvZHkgKi9cbi5wb3BvdmVyLWJvZHkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNGRkZGRkYgIWltcG9ydGFudDtcbiAgICBjb2xvcjogYmxhY2sgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiAxMHB4ICFpbXBvcnRhbnQ7XG59XG4vKiBQb3BvdmVyIEFycm93ICovXG4uYXJyb3cge1xuICAgIGJvcmRlci1yaWdodC1jb2xvcjogI2MyMzIyNSAhaW1wb3J0YW50O1xufVxuXG4uU2Fuc1NlcmlmUmVndWxhciB7XG4gICAgLypmb250LWZhbWlseTogJ1NvdXJjZSBTYW5zIFBybycsc2Fucy1zZXJpZjsqL1xuICAgIGZvbnQtZmFtaWx5OiAtYXBwbGUtc3lzdGVtLHN5c3RlbS11aSxCbGlua01hY1N5c3RlbUZvbnQsXCJTZWdvZSBVSVwiLFJvYm90byxcIkhlbHZldGljYSBOZXVlXCIsQXJpYWwsc2Fucy1zZXJpZjtcbiAgICBmb250LXNpemU6IDFlbTtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xufVxuXG4uU2Fuc1NlcmlmU21hbGwge1xuICAgIC8qZm9udC1mYW1pbHk6ICdTb3VyY2UgU2FucyBQcm8nLHNhbnMtc2VyaWY7Ki9cbiAgICBmb250LWZhbWlseTogLWFwcGxlLXN5c3RlbSxzeXN0ZW0tdWksQmxpbmtNYWNTeXN0ZW1Gb250LFwiU2Vnb2UgVUlcIixSb2JvdG8sXCJIZWx2ZXRpY2EgTmV1ZVwiLEFyaWFsLHNhbnMtc2VyaWY7XG4gICAgZm9udC1zaXplOiAwLjhlbTtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xufVxuXG4ucmFkaW9JbnB1dCB7XG4gICAgaGVpZ2h0OiAxLjVlbTtcbiAgICB3aWR0aDogMS41ZW07XG4gICAgYm9yZGVyOiAwcHg7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZVxufVxuXG4ucmFkaW9JbnB1dExhYmVsIHtcbiAgICBoZWlnaHQ6IDEuNWVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjVlbTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogc3ViO1xuICAgIHBhZGRpbmctbGVmdDogMC41ZW07XG59XG5cbi5yYWRpb0lucHV0TGFiZWxDb21ibyB7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB3aWR0aDogMTZlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwcHhcbn1cblxuLnBsYXlJY29uIHtcbiAgICBoZWlnaHQ6IDIuNWVtO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIC8qd2lkdGg6IDNlbTsqL1xuICAgIG1hcmdpbi1yaWdodDogMC41ZW0gIWltcG9ydGFudDtcbn1cblxuLnByb2Nlc3NTdG9wTXNnIHtcbiAgICBtYXJnaW46IDAuNWVtIDEuM2VtO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGZvbnQtc2l6ZTogMS4xZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcbn1cblxuLmJ0blN0cm9uZ1JlZEZpbGxMb25nIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjYzIzMjI1ICFpbXBvcnRhbnQ7XG4gICAgLypib3JkZXItcmFkaXVzOjEwcHggIWltcG9ydGFudDsqL1xuICAgIGNvbG9yOiB3aGl0ZSAhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQ6ICNjMjMyMjUgIWltcG9ydGFudDtcbiAgICBmb250LXdlaWdodDogYm9sZCAhaW1wb3J0YW50O1xuICAgIHdpZHRoOiAxODBweCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1sZWZ0OiAzJTtcbiAgICAvKm1hcmdpbi1ib3R0b206IDEwcHg7Ki9cbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZSAhaW1wb3J0YW50O1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbn1cblxuLmRpdkFWU2Nyb2xsIHtcbiAgICAvKndpZHRoOiAyMDBweDtcbiAgICBoZWlnaHQ6IDQwMHB4O1xuICAgIGJhY2tncm91bmQ6IHJlZDsqL1xuICAgIG92ZXJmbG93LXg6IHNjcm9sbDtcbn1cblxuICAgIC5kaXZBVlNjcm9sbDo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICAgICAgICAvKndpZHRoOiAxMHB4OyovXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNGNUY1RjU7XG4gICAgICAgIGhlaWdodDogNXB4O1xuICAgIH1cblxuICAgIC5kaXZBVlNjcm9sbDo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2sge1xuICAgICAgICAtd2Via2l0LWJveC1zaGFkb3c6IGluc2V0IDAgMCA2cHggcmdiYSgwLDAsMCwwLjMpO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjVGNUY1O1xuICAgIH1cblxuICAgIC5kaXZBVlNjcm9sbDo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDk2YTYwO1xuICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAjZDU4NTdlO1xuICAgIH1cblxuLmRpdlRpbWVzbG90U2Nyb2xsIHtcbiAgICAvKndpZHRoOiAyMDBweDtcbiAgICBoZWlnaHQ6IDQwMHB4O1xuICAgIGJhY2tncm91bmQ6IHJlZDsqL1xuICAgIG92ZXJmbG93LXk6IHNjcm9sbDtcbn1cblxuICAgIC5kaXZUaW1lc2xvdFNjcm9sbDo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICAgICAgICAvKndpZHRoOiAxMHB4OyovXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNGNUY1RjU7XG4gICAgICAgIHdpZHRoOiA1cHg7XG4gICAgfVxuXG4gICAgLmRpdlRpbWVzbG90U2Nyb2xsOjotd2Via2l0LXNjcm9sbGJhci10cmFjayB7XG4gICAgICAgIC13ZWJraXQtYm94LXNoYWRvdzogaW5zZXQgMCAwIDZweCByZ2JhKDAsMCwwLDAuMyk7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNGNUY1RjU7XG4gICAgfVxuXG4gICAgLmRpdlRpbWVzbG90U2Nyb2xsOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNkOTZhNjA7XG4gICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICNkNTg1N2U7XG4gICAgfVxuXG4udGltZXNsb3RibG9ja3MgLmJ0bi1kZWZhdWx0IC5idG4tcm91bmQge1xuICAgIG1hcmdpbi10b3A6IDBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgIC8qbWFyZ2luLWxlZnQ6IDVweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDdweDsqL1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgYm9yZGVyLWNvbG9yOiAjYzIzMjI1O1xuICAgIGNvbG9yOiAjYzIzMjI1OyAvKlN0cm9uZ1JlZCovXG4gICAgaGVpZ2h0OiA2MHB4ICFpbXBvcnRhbnQ7XG4gICAgd2lkdGg6IDgwcHggIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLWxlZnQ6IDEwcHggIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4ICFpbXBvcnRhbnQ7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLmFwcHRDb25maXJtYXRpb25Nc2cge1xuICAgIG1hcmdpbi1sZWZ0OiAyJTtcbiAgICBtYXJnaW4tcmlnaHQ6IDIlO1xuICAgIG1hcmdpbi10b3A6IDIlO1xuICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXJcbn1cblxuLnBsYXlJY29uIHtcbiAgICBoZWlnaHQ6IDIuNWVtO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIC8qd2lkdGg6IDNlbTsqL1xuICAgIG1hcmdpbi1yaWdodDogMC41ZW0gIWltcG9ydGFudDtcbn1cblxuLmRpdkxpZ2h0Q3lhbkFsZXJ0IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGN5YW47XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogNXB4IDEwcHg7XG4gICAgLyptYXJnaW46IDBweCAxMHB4OyovXG4gICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjJlbTtcbn1cblxuLmRpdlJlbWluZGVyTWVzc2FnZUJ5RUMge1xuICAgIHdpZHRoOiA5MCU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuIl19 */\"","//DSS Documentation on Angular Components - http://tiny.sc/cgangularcomponent\nimport { Component, EventEmitter, OnInit, AfterViewInit, Input, Output, Pipe, PipeTransform, HostListener } from '@angular/core';\nimport { NgModule } from '@angular/core';\n//import { ViewChild, ElementRef } from '@angular/core';\nimport { DatePipe } from '@angular/common';\nimport { SocoHttpService } from '@soco/http';\nimport { DBTraceLogService } from '../../services/dbTraceLog/dbTraceLog.service';\nimport { CoolEmailService } from '../../services/coolEmail/coolEmail.service';\nimport { AppCommonService } from '../../services/common/app-common.service';\nimport { AvailabilityService } from './availability-selection.service';\nimport { DeviceDetectorService } from 'ngx-device-detector';\nimport { \n RescheduleEligibility, AvailabilityDates, NoGasClickOrderModel, AvailabilityRequest\n} from './availability-selection-entities';\nimport { DBTraceLog, LogType } from '../../services/dbTraceLog/dbTraceLog-entities';\nimport { AppConfigurationData } from '../../services/common/app-common-entities';\nimport { AvailabilityInput, AvailabilityOutput } from './availability-selection-entities';\nimport { AppBaseComponent } from '../base/app-base.component';\n\n\n@Component({\n selector: 'availability-selection',\n templateUrl: 'availability-selection.component.html',\n styleUrls: ['availability-selection.component.css'],\n providers: [DatePipe, AvailabilityService, DBTraceLogService, AppCommonService]\n})\nexport class AvailabilityComponent extends AppBaseComponent implements OnInit {\n\n //#region Variables\n public ldc: string = '';\n public seedDate: string;\n public orderNumber: string = '';\n public premiseNumber: string = '';\n public availabilityResponse: any;\n public urlCode: string;\n public sentinelAvailableDays = [];\n public timeSlots = [];\n public filteredTimeSlots = [];\n public selectedTimeSlot: string;\n public selectdScheduleDate: string;\n public selectedScheduleWindow: string;\n public selectedTimeSlotWindow: string;\n public ccbAppointmentStart: string;\n public ccbAppointmentEnd: string;\n public data: any;\n public isPageLoadReady: boolean = false;\n public showSpinner: boolean = true; \n public errorInfo: any;\n public showTimeSlotLoadingSpinner: boolean = false; \n public rescheduleEligibility: RescheduleEligibility; \n public availabilityRequest: AvailabilityRequest;\n public availabilityDates: Array = []; \n public objAvailabilityDates: AvailabilityDates;\n public firstSentinelAvailableDate: string = '';\n public maxAvailableDatesAllowed: number = 0;\n public orderType: any = '';\n public personID: string = '';\n public eligibilityReturnMessage: string = '';\n public matchOrderEffectiveDate: string = '';\n public showTimeSlots: boolean = true;\n public appConfigurationDataList: Array = [];\n public noGasClickOrderModel: NoGasClickOrderModel;\n public noGasClickOrderModelList: any;\n \n public contactPhoneNo: string = '';\n public contactHours: string = '';\n\n public deviceInfo = null;\n public dbTraceLog: DBTraceLog;\n public logReferenceID: string = '';\n public entranceCodeReminderMsg: string = '';\n public portalTypeID: number = 0; \n public availabilityOutput: AvailabilityOutput;\n public emailToList: string;\n public appointmentType: string = '';\n\n @Input() availabilityInput: AvailabilityInput;\n @Output() availabilitySelectionEvent = new EventEmitter();\n @Output() processErrorEvent = new EventEmitter();\n\n //#endregion\n\n constructor(public availabilityService: AvailabilityService,\n public datepipe: DatePipe, public http: SocoHttpService,\n public dbTraceLogService: DBTraceLogService,\n public deviceService: DeviceDetectorService,\n public coolEmailService: CoolEmailService,\n private appCommonService: AppCommonService) {\n\n //Parent component initialization\n super(http, dbTraceLogService, coolEmailService, deviceService);\n\n this.availabilityOutput = new AvailabilityOutput();\n };\n\n ngOnInit() {\n\n //Change hard coded value to config driven in later development\n this.maxAvailableDatesAllowed = 45;\n\n //Get availability input from parent\n this.GetAvailabilityInput();\n\n //Load availability\n if (this.appointmentType === 'Issue') { \n //Not checking eligibility rules while issuing as is it is new order/appt\n this.seedDate = this.datepipe.transform(Date.now(), \"yyyy-MM-dd\");\n this.GetAvailability(this.seedDate, true);\n }\n else {\n //If it's scheduling and AGLC LDC no need to check avilability eligibility rules (for now.. in future this may change for DM, Prorate ?) \n this.GetRescheduleEligibilityOnLanding();\n }\n }\n\n // #region Availability Core Methods\n\n //Get availability from respective backend services\n GetAvailability(seedDate: string, isInitialCall: boolean) {\n try {\n this.availabilityRequest = new AvailabilityRequest();\n\n this.availabilityRequest.ldc = this.ldc;\n this.availabilityRequest.orderNumber = this.orderNumber;\n this.availabilityRequest.premisesNumber = this.premiseNumber;\n this.availabilityRequest.seedDate = this.datepipe.transform(seedDate, \"MMddyyyy\");\n this.availabilityRequest.entranceInstructionCode = this.availabilityInput.entranceInstructionCode;\n this.availabilityRequest.entranceInstructionProfile = this.availabilityInput.entranceInstructionProfile;\n\n this.availabilityRequest.accountNumber = this.availabilityInput.accountNumber;\n this.availabilityRequest.activityOrProblemType = this.availabilityInput.activityOrProblemType;\n this.availabilityRequest.isOverride = false;\n this.availabilityRequest.orderCategory = this.availabilityInput.orderCategory;\n this.availabilityRequest.serviceOrderActiontype = this.availabilityInput.serviceOrderActiontype;\n this.availabilityRequest.serviceOrderReason = this.availabilityInput.serviceOrderReason;\n this.availabilityRequest.serviceOrderType = this.availabilityInput.serviceOrderType;\n this.availabilityRequest.specialDateCodeID = this.availabilityInput.specialDateCodeID;\n\n this.insertDBTraceLog(LogType.Info, 'Availability fetch initiated for seed date: ' + this.availabilityRequest.seedDate);\n\n this.availabilityService.getAvailability(this.availabilityRequest).subscribe(ApiResult => {\n\n if (ApiResult.data != null && ApiResult.statusCode == 200) {\n\n this.insertDBTraceLog(LogType.Info, 'Availability fetched successfully for seed date: ' + this.availabilityRequest.seedDate);\n\n this.availabilityResponse = ApiResult;\n\n //Prepare local object from APIResult\n this.availabilityResponse.data.availableDays.forEach(availableDay => {\n\n //Do not push available day if it's already exist during subsequent sentinel call\n if (this.sentinelAvailableDays.length == 0 ||\n (this.sentinelAvailableDays.length > 0 && !this.sentinelAvailableDays.some((el) => el.availableDate == this.datepipe.transform(availableDay.availableDate, \"yyyy-MM-dd\")))) {\n //fix the date format and push into array\n availableDay.availableDate = this.datepipe.transform(availableDay.availableDate, \"yyyy-MM-dd\");\n this.sentinelAvailableDays.push(availableDay);\n }\n });\n\n\n this.availabilityResponse.data.timeSlots.forEach(timeSlot => {\n this.timeSlots.push(timeSlot);\n });\n\n //Load first day Timeslot\n if (isInitialCall && this.sentinelAvailableDays.length > 0) {\n this.LoadSelectedDayTimeSlots(null, this.sentinelAvailableDays[0]);\n }\n\n if (this.sentinelAvailableDays.length === 0)\n this.insertDBTraceLog(LogType.Info, 'Availability initiated for seed date: ' + this.availabilityRequest.seedDate + ', but available days length is zero');\n\n this.isPageLoadReady = true; // At this stage all API's are loaded and page is ready to load\n this.showSpinner = false; // Stop the spinner and show page content \n if (this.showTimeSlotLoadingSpinner) this.showTimeSlotLoadingSpinner = false; // stop spinner after availability call\n }\n else {\n this.insertDBTraceLog(LogType.Error, 'Error occured while fetching availability, APIResult is either Null or result is not 200 - Seed date: ' + this.availabilityRequest.seedDate);\n this.processError();\n }\n\n }, ApiResult => {\n if (this.http.isInvalidResult(ApiResult) || this.http.isErrorResult(ApiResult) || this.http.isFailureResult(ApiResult)) {\n //console.log('contactPhoneNo before function', contactPhoneNo); \n this.insertDBTraceLog(LogType.Error, 'Error occured while fetching availability, APIResult is invalid - Seed date: ' + this.availabilityRequest.seedDate);\n this.processError();\n }\n });\n\n }\n catch (e) {\n this.insertDBTraceLog(LogType.Info, 'Exception occured while fetching availability, for seed date: ' + this.availabilityRequest.seedDate + ', Error: ' + e.message.substring(0, 500));\n }\n\n } \n \n /* Check if order is eligible to reschedule on selectedDate in case of matched orders - Where eligibiliy is decided based on schedule date. */\n GetRescheduleEligibilityOnSelectedDate(scheduleDate: any) {\n\n try {\n var strScheduleDate: string = '';\n\n if (scheduleDate != null && scheduleDate != '')\n strScheduleDate = this.datepipe.transform(scheduleDate, \"MMddyyyy\");\n\n //Check reschedule eligibility for selected date, this is check for matching order validations\n this.availabilityService.getRescheduleEligibility(this.ldc, this.orderNumber, this.premiseNumber, strScheduleDate).subscribe(ApiResult => {\n\n if (ApiResult.data != null) {\n //this.orderType = ApiResult.data.serviceOrderType;\n this.eligibilityReturnMessage = ApiResult.data.message;\n this.matchOrderEffectiveDate = ApiResult.data.matchOrderEffectiveDate;\n\n if (!ApiResult.data.isRescheduleEligible && this.matchOrderEffectiveDate != null) {\n this.insertDBTraceLog(LogType.Info, 'Order is NOT eligible to reschedule for selected date: ' + strScheduleDate);\n this.showTimeSlots = false;\n }\n else {\n this.insertDBTraceLog(LogType.Info, 'Order is eligible to reschedule for selected date: ' + strScheduleDate);\n this.showTimeSlots = true;\n this.LoadFilteredTimeSlots(scheduleDate);\n }\n\n if (this.showTimeSlotLoadingSpinner) this.showTimeSlotLoadingSpinner = false; // stop spinner after eligibility call\n }\n else {\n this.processError();\n }\n\n }, ApiResult => {\n if (this.http.isInvalidResult(ApiResult) || this.http.isErrorResult(ApiResult) || this.http.isFailureResult(ApiResult)) {\n this.insertDBTraceLog(LogType.Error, 'Error occured while fetching reschedule eligibility for selected date: ' + strScheduleDate);\n this.processError();\n }\n });\n\n }\n catch (e) {\n this.insertDBTraceLog(LogType.Error, 'Exception occured while checking reschedule eligibility on selected date, Error: ' + e.message.substring(0, 500));\n }\n }\n \n /* Check if order is eligible to reschedule on landing */\n GetRescheduleEligibilityOnLanding() {\n try {\n \n this.availabilityService.getRescheduleEligibility(this.ldc, this.orderNumber, this.premiseNumber, '').subscribe(ApiResult => {\n \n if (ApiResult.data != null) {\n console.log('Eligibility Api Result: ', ApiResult.data);\n\n //this.orderType = ApiResult.data.serviceOrderType;\n this.eligibilityReturnMessage = ApiResult.data.message;\n this.matchOrderEffectiveDate = ApiResult.data.matchOrderEffectiveDate;\n\n if (ApiResult.data.isRescheduleEligible || this.matchOrderEffectiveDate != null) {\n //Load initial availability\n //this.seedDate = this.datepipe.transform(ApiResult.data.orderEffectiveDate, \"MMddyyyy\");\n this.insertDBTraceLog(LogType.Info, 'Order is eligible to reschedule on landing');\n this.seedDate = this.datepipe.transform(Date.now(), \"yyyy-MM-dd\");\n this.GetAvailability(this.seedDate, true);\n }\n else {\n //Show error message if order is not in amendable status\n this.insertDBTraceLog(LogType.Info, 'Order is NOT eligible to reschedule on landing');\n this.processError();\n }\n }\n else {\n this.insertDBTraceLog(LogType.Error, 'Error occured while fetching reschedule eligibility on landing, API Result is Null');\n this.processError();\n }\n\n }, ApiResult => {\n if (this.http.isInvalidResult(ApiResult) || this.http.isErrorResult(ApiResult) || this.http.isFailureResult(ApiResult)) {\n this.insertDBTraceLog(LogType.Error, 'Error occured while fetching reschedule eligibility on landing');\n this.processError();\n }\n });\n\n }\n catch (e) {\n this.insertDBTraceLog(LogType.Error, 'Exception occured while checking reschedule eligibility on landing, Error: ' + e.message.substring(0, 500));\n }\n\n }\n\n // #endregion\n\n //#region Time Slots\n\n //Upon timeslot selection capture the details to show on next screen\n public SelectTimeSlot(event, timeSlotSelected, startTime, finishTime, scheduleWindow) {\n try {\n var tsDate = timeSlotSelected.substring(0, timeSlotSelected.indexOf(\" \")).trim();\n var tsWindow = '';\n var tsWindowFrom = '';\n var tsWindowTo = '';\n\n if (timeSlotSelected.indexOf(\"(\") > 0)\n tsWindow = timeSlotSelected.substring(timeSlotSelected.indexOf(\" \") + 1, timeSlotSelected.indexOf(\"(\")).trim();\n else\n tsWindow = timeSlotSelected.substring(timeSlotSelected.indexOf(\" \") + 1).trim();\n\n if (tsWindow != '' && tsWindow.indexOf('-') > 0) {\n tsWindowFrom = tsWindow.split('-')[0].trim();\n tsWindowTo = tsWindow.split('-')[1].trim();\n\n if (tsWindowFrom.startsWith('0', 0))\n tsWindowFrom = tsWindowFrom.substring(1);\n\n if (tsWindowTo.startsWith('0', 0))\n tsWindowTo = tsWindowTo.substring(1);\n\n tsWindow = tsWindowFrom + ' - ' + tsWindowTo;\n }\n\n var days = ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'];\n var d = new Date(tsDate);\n var dayName = days[d.getDay()];\n\n this.selectedTimeSlot = dayName + \",\" + this.datepipe.transform(tsDate, \" MMM dd, yyyy\");\n this.selectedTimeSlotWindow = tsWindow;\n this.selectdScheduleDate = startTime;\n this.selectedScheduleWindow = scheduleWindow;\n this.ccbAppointmentStart = this.datepipe.transform(startTime, \"yyyy-MM-dd\") + \"-\" + this.datepipe.transform(startTime, \"HH.mm.ss\");\n this.ccbAppointmentEnd = this.datepipe.transform(finishTime, \"yyyy-MM-dd\") + \"-\" + this.datepipe.transform(finishTime, \"HH.mm.ss\");\n\n //Prepare output object and emit to parent component.\n this.EmitOutputToParent();\n\n this.insertDBTraceLog(LogType.Info, 'Timeslot selected for ' + this.datepipe.transform(tsDate, \"MMddyyyy\") + ', ' + tsWindow);\n }\n catch (e) {\n this.insertDBTraceLog(LogType.Error, 'Exception occured while selecting time slot, Error: ' + e.message.substring(0, 500));\n }\n }\n\n public LoadSelectedDayTimeSlots(event, selectedAvailableDay) {\n try {\n var selectedDate = selectedAvailableDay.availableDate;\n\n this.firstSentinelAvailableDate = selectedDate;\n\n /*Begin - Highlight selected date*/\n if (event != null) {\n //var target = event.target || event.srcElement || event.currentTarget;\n var target = event.currentTarget;\n\n //Change selected button (if not enabled) Css class\n if (selectedAvailableDay != null && selectedAvailableDay.enabled)\n $(event.srcElement).addClass(\"btn btn-default btn-sm btnFillStrongRed\");\n\n //Loop through all buttons available in div\n $('#divAvailableDay').children('button').each(function () {\n\n //console.log(\"Button: \", $(this)[0]);\n\n //if selected button and looping button is NOT same && looping button is disabled do not make class adjustments\n if ((target.id).toString() != $(this)[0].id && !(($(this)[0] as HTMLButtonElement).disabled) && $(this)[0].id != 'btnMoreDates') {\n $(this).removeClass();\n $(this).addClass(\"btn btn-default btn-sm\");\n }\n\n });\n }\n /*End - Highlight selected date*/\n\n //Invoke eligibility service on selected date for only AGLC and where matched order found, as matched order validations are not being checked for CCB. \n if (this.matchOrderEffectiveDate != null && this.ldc === 'AGLC' && this.appointmentType !='Issue') {\n this.showTimeSlotLoadingSpinner = true;\n this.GetRescheduleEligibilityOnSelectedDate(selectedDate);\n }\n else\n this.LoadFilteredTimeSlots(selectedDate);\n }\n catch (e) {\n this.insertDBTraceLog(LogType.Error, 'Exception occured while loading timeslots for selected day, Error: ' + e.message.substring(0, 500));\n }\n }\n \n public LoadFilteredTimeSlots(selectedDate) {\n try {\n\n var tsWindowFrom = '';\n var tsWindowTo = '';\n\n /*Filter time slots for selected date*/\n this.filteredTimeSlots = [];\n this.sentinelAvailableDays.forEach(availableDay => {\n if (availableDay.availableDate == this.datepipe.transform(selectedDate, \"yyyy-MM-dd\")) {\n availableDay.timeSlots.forEach(timeSlot => {\n\n //check for duplicate timeslots before pushing\n if (this.filteredTimeSlots.length == 0 || (this.filteredTimeSlots.length > 0 && !this.filteredTimeSlots.some((el) => el.displayTimeSlot == timeSlot.displayTimeSlot)))\n\n //Remove leading zero from Display TimeSlot \n if (timeSlot.displayTimeSlot.indexOf('-') > 0) {\n tsWindowFrom = timeSlot.displayTimeSlot.split('-')[0].trim();\n tsWindowTo = timeSlot.displayTimeSlot.split('-')[1].trim();\n\n if (tsWindowFrom.startsWith('0', 0))\n tsWindowFrom = tsWindowFrom.substring(1);\n\n if (tsWindowTo.startsWith('0', 0))\n tsWindowTo = tsWindowTo.substring(1);\n\n timeSlot.displayTimeSlot = tsWindowFrom + ' - ' + tsWindowTo;\n }\n\n this.filteredTimeSlots.push(timeSlot);\n });\n\n }\n });\n\n }\n catch (e) {\n this.insertDBTraceLog(LogType.Error, 'Exception occured while filtering timeslots, Error: ' + e.message.substring(0, 500));\n }\n }\n\n //#endregion\n\n // #region Button & Scroll events\n\n public onPreviousSearchPosition(): void {\n\n //enable right arrow on click of left arrow btn\n this.ToggleRightArrow(false);\n\n var container = document.getElementById('divAvailableDay');\n var scrollAmount = 0;\n var slideTimer = setInterval(function () {\n container.scrollLeft -= 5;\n scrollAmount += 5;\n if (scrollAmount >= 100) {\n clearInterval(slideTimer);\n }\n }, 25);\n\n\n var $width = container.offsetWidth;\n var $scrollWidth = container.scrollWidth;\n var $scrollLeft = 0;\n\n\n if (container.scrollLeft >= 0)\n $scrollLeft = container.scrollLeft - 100;\n else\n $scrollLeft = container.scrollLeft;\n\n if ($scrollLeft <= 0) {\n this.ToggleLeftArrow(true);\n }\n\n }\n\n public onNextSearchPosition(): void {\n\n //by default left arrow will be disabled. Once right arrow is clicked enable left arrow.\n this.ToggleLeftArrow(false);\n\n //move div scroll\n var container = document.getElementById('divAvailableDay');\n var scrollAmount = 0;\n var slideTimer = setInterval(function () {\n container.scrollLeft += 5;\n scrollAmount += 5;\n if (scrollAmount >= 100) {\n clearInterval(slideTimer);\n }\n }, 25);\n\n\n //disable rigt arrow at the right end of scrolling\n var $width = container.offsetWidth + 34;\n var $scrollWidth = container.scrollWidth;\n var $scrollLeft = container.scrollLeft;\n\n if ($scrollWidth - $width === $scrollLeft) {\n this.ToggleRightArrow(true);\n }\n\n }\n\n /* Toggle enable/disable on Left & Right arrow buttons during scrolling */\n onScroll(event: Event) {\n //console.log((event.target as HTMLElement).scrollLeft);\n var container = document.getElementById('divAvailableDay');\n var containerTarget = event.target;\n\n var $width = container.offsetWidth;\n var $scrollWidth = container.scrollWidth;\n var $scrollLeft = container.scrollLeft;\n\n if ($scrollWidth - $width === $scrollLeft) {\n\n this.ToggleRightArrow(true);\n }\n else if ($scrollLeft <= 0) {\n this.ToggleLeftArrow(true);\n }\n else {\n\n this.ToggleLeftArrow(false);\n this.ToggleRightArrow(false);\n }\n }\n\n ToggleLeftArrow(disable: boolean) {\n\n if (disable) {\n ($('#left-button')[0] as HTMLButtonElement).disabled = true;\n ($('#left-button')[0] as HTMLButtonElement).innerHTML = 'keyboard_arrow_left';\n }\n else {\n ($('#left-button')[0] as HTMLButtonElement).disabled = false;\n ($('#left-button')[0] as HTMLButtonElement).innerHTML = 'keyboard_arrow_left';\n }\n }\n\n ToggleRightArrow(disable: boolean) {\n\n if (disable) {\n ($('#right-button')[0] as HTMLButtonElement).disabled = true;\n ($('#right-button')[0] as HTMLButtonElement).innerHTML = 'keyboard_arrow_right';\n }\n else {\n ($('#right-button')[0] as HTMLButtonElement).disabled = false;\n ($('#right-button')[0] as HTMLButtonElement).innerHTML = 'keyboard_arrow_right';\n }\n }\n\n LoadMoreDates() {\n try {\n var sentinelNextSeedDate: Date;\n var maxSentinelAvailableDate;\n\n if (this.sentinelAvailableDays.length > 0) {\n maxSentinelAvailableDate = this.sentinelAvailableDays[this.sentinelAvailableDays.length - 1].availableDate;\n\n //converting below format is required to add days to date.\n sentinelNextSeedDate = new Date(this.datepipe.transform(maxSentinelAvailableDate, \"yyyy/MM/dd\"));\n\n //modify seedDate to +1 for NoGas to get next day \n if (this.ldc === 'AGLC' && Object.values(NoGasClickOrderModel).includes(this.orderType,null)) {\n sentinelNextSeedDate = new Date(sentinelNextSeedDate.setDate(sentinelNextSeedDate.getDate() + 1));\n }\n\n this.showTimeSlotLoadingSpinner = true;\n\n this.insertDBTraceLog(LogType.Info, 'Requested to load more dates for seed date: ' + this.datepipe.transform(sentinelNextSeedDate, \"MMddyyyy\"));\n \n this.GetAvailability(this.datepipe.transform(sentinelNextSeedDate, \"yyyy-MM-dd\"), false);\n }\n\n }\n catch (e) {\n this.insertDBTraceLog(LogType.Error, 'Exception occured while loading more dates, Error: ' + e.message.substring(0, 500));\n }\n }\n\n //#endregion\n\n //#region Private Helper Methods\n\n private GetAvailabilityInput() {\n\n this.ldc = this.availabilityInput.ldc;\n this.urlCode = this.availabilityInput.kmiUrlCode;\n this.orderNumber = this.availabilityInput.orderNumber;\n this.orderType = this.availabilityInput.orderType;\n this.premiseNumber = this.availabilityInput.premisesNumber;\n this.portalTypeID = this.availabilityInput.portalTypeID;\n this.logReferenceID = this.availabilityInput.logReferenceID;\n this.entranceCodeReminderMsg = this.availabilityInput.entranceCodeReminderMsg; \n this.emailToList = this.availabilityInput.emailToList;\n this.appointmentType = this.availabilityInput.appointmentType;\n }\n\n private EmitOutputToParent() {\n\n this.availabilityOutput.selectedTimeSlot = this.selectedTimeSlot;\n this.availabilityOutput.selectedTimeSlotWindow = this.selectedTimeSlotWindow;\n this.availabilityOutput.selectedScheduleDate = this.selectdScheduleDate;\n this.availabilityOutput.selectedScheduleWindow = this.selectedScheduleWindow;\n this.availabilityOutput.ccbAppointmentStart = this.ccbAppointmentStart;\n this.availabilityOutput.ccbAppointmentEnd = this.ccbAppointmentEnd;\n \n this.availabilitySelectionEvent.emit(this.availabilityOutput);\n }\n\n private insertDBTraceLog(logType: string, logMessage: string) {\n\n this.dbTraceLog = new DBTraceLog();\n\n this.dbTraceLog.portalTypeID = this.portalTypeID; //From parent\n this.dbTraceLog.ldc = this.ldc;\n this.dbTraceLog.kmiUrlCode = this.urlCode;\n this.dbTraceLog.issuingApOrderID = this.orderNumber;\n this.dbTraceLog.orderType = this.orderType;\n this.dbTraceLog.logReferenceID = this.logReferenceID;\n this.dbTraceLog.logType = logType;\n this.dbTraceLog.logMessage = logMessage; \n this.dbTraceLog.emailToList = this.emailToList;\n\n super.InsertDBTraceLogThruBase(this.dbTraceLog);\n }\n\n processError(): void { \n this.showSpinner = false;\n this.showTimeSlotLoadingSpinner = false; \n\n this.processErrorEvent.emit();\n\n }\n \n //#endregion\n\n}\n\n","//angular modules\n//DSS Documentation on Angular - http://tiny.sc/cgangular\nimport { NgModule } from '@angular/core';\nimport { RouterModule } from '@angular/router';\nimport { CommonModule } from '@angular/common';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\n//soco modules\nimport { SocoAlertModule } from '@soco/alert';\nimport { SocoFormsModule } from '@soco/forms';\nimport { SocoModalModule } from '@soco/modal';\nimport { SocoUIThemeModule } from '@soco/ui-theme';\n\n//app modules\nimport { CoreModule } from '../../../core/core.module';\n\n//components\n//DSS Documentation on Angular Components - http://tiny.sc/cgangularcomponent\n\nimport { AgmCoreModule } from '@agm/core';\nimport { AvailabilityComponent } from './availability-selection.component';\n\n@NgModule({\n imports: [\n //angular modules\n CommonModule,\n //RouterModule.forChild(RescheduleRoutes),\n FormsModule,\n ReactiveFormsModule,\n AgmCoreModule.forRoot({\n apiKey: 'AIzaSyBcLYsBQdhvhsdRoDKPzt3STCHmIXsXCNU'\n }),\n\n //soco modules \n SocoUIThemeModule,\n SocoAlertModule,\n SocoFormsModule,\n SocoModalModule,\n\n //app modules\n CoreModule\n \n ],\n exports: [AvailabilityComponent], \n declarations: [ \n AvailabilityComponent \n ]\n})\n\nexport class AvailabilityModule { }\n\n","import { Injectable } from '@angular/core';\nimport { map, mergeMap } from 'rxjs/operators';\nimport { HttpClient } from '@angular/common/http';\nimport { Observable, EMPTY, of, forkJoin } from 'rxjs';\nimport { catchError } from 'rxjs/operators';\n\nimport { SocoHttpService } from '@soco/http';\nimport { SocoConfigurationService } from '@soco/configuration';\n\nimport { ApiResult } from '@soco/core';\nimport { url } from 'inspector';\nimport { AvailabilityRequest } from './availability-selection-entities';\n\n@Injectable()\nexport class AvailabilityService {\n\n public baseUrl = '/Reschedule/';\n public appDataBaseUrl = '/AppData/';\n public account: any = {};\n \n constructor(private http: SocoHttpService, private ngHttp: HttpClient, private config: SocoConfigurationService) { }\n\n getAvailability(availabilityRequest: AvailabilityRequest) {\n\n //console.log('availability params : ', availabilityRequest);\n\n return this.http.post({\n url: this.baseUrl + 'GetRescheduleAvailability',\n data: availabilityRequest,\n shouldIgnoreInvalidResult: true,\n pleaseWaitTimeoutDuration: 500 \n });\n }\n\n getRescheduleEligibility(ldc: string, orderNumber: string, premisesNumber: string, scheduleDate: string) {\n var params: string= '';\n\n if (scheduleDate == null || scheduleDate == '')\n scheduleDate = 'NA';\n\n if (orderNumber != null && orderNumber != '')\n params = ldc + \"/\" + orderNumber + \"/\" + scheduleDate;\n \n if (premisesNumber != null && premisesNumber != '')\n params = params + \"/\" + premisesNumber\n\n //console.log('eligibility params : ', params);\n \n return this.http.get({\n url: this.baseUrl + 'GetRescheduleEligibility/' + params, \n });\n }\n \n // Error call back for http requests.\n private handleError(error: any) {\n\n // const errMsg = (error.message) ? error.message :\n // error.status ? `${error.status} - ${error.statusText}` : 'Server error';\n // return Observable.throw(errMsg);\n }\n\n}\n","//DSS Documentation on Angular Components - http://tiny.sc/cgangularcomponent\r\nimport { Component, EventEmitter, OnInit, AfterViewInit, Input, Output, Pipe, PipeTransform, HostListener } from '@angular/core';\r\nimport { NgModule } from '@angular/core';\r\n//import { ViewChild, ElementRef } from '@angular/core';\r\nimport { SocoModalService } from '@soco/modal';\r\nimport { SocoHttpService } from '@soco/http';\r\n//import { AppBaseService } from './app-base.service';\r\nimport { DBTraceLogService } from '../../services/dbTraceLog/dbTraceLog.service';\r\nimport { DBTraceLog, LogType } from '../../services/dbTraceLog/dbTraceLog-entities';\r\nimport { CoolEmailService } from '../../services/coolEmail/coolEmail.service';\r\nimport { CoolEmailSettings } from '../../services/coolEmail/coolEmail-entities';\r\nimport { DeviceDetectorService } from 'ngx-device-detector';\r\n\r\n@Component({\r\n selector: 'app-base',\r\n template: '',\r\n providers: [DBTraceLogService, CoolEmailService, DeviceDetectorService]\r\n})\r\nexport class AppBaseComponent implements OnInit {\r\n\r\n //#region Variables\r\n \r\n public coolEmailSettings: CoolEmailSettings;\r\n //public deviceInfo = null; \r\n //public appConfigurationDataList: Array = []; \r\n\r\n //#endregion\r\n\r\n constructor(public http: SocoHttpService,\r\n public dbTraceLogService: DBTraceLogService,\r\n public coolEmailService: CoolEmailService,\r\n public deviceService: DeviceDetectorService) {\r\n\r\n //Get Device Info on base comp, so that all extended components has this info.\r\n //this.deviceInfo = this.deviceService.getDeviceInfo();\r\n\r\n };\r\n\r\n ngOnInit() {\r\n\r\n }\r\n\r\n //public GetApplicationConfigsThruBase() {\r\n ////public GetApplicationConfigsThruBase(): Array {\r\n ////public GetApplicationConfigsThruBase(): Observable {\r\n\r\n // //var appConfigurationDataList: Array = [];\r\n\r\n // this.appBaseService.getApplicationConfigs().subscribe(ApiResult => {\r\n\r\n // if (ApiResult.data != null) {\r\n\r\n // ApiResult.data.forEach(configData => {\r\n // this.appConfigurationDataList.push(configData);\r\n // });\r\n // }\r\n\r\n // });\r\n\r\n // //return this.appConfigurationDataList;\r\n // //return of(this.appConfigurationDataList);\r\n //}\r\n\r\n public InsertDBTraceLogThruBase(dbTraceLog: DBTraceLog) {\r\n\r\n var deviceInfo = this.deviceService.getDeviceInfo();\r\n\r\n if (deviceInfo != null) {\r\n dbTraceLog.deviceOS = deviceInfo.os + '_' + deviceInfo.os_version;\r\n dbTraceLog.deviceBrowser = deviceInfo.browser + '_' + deviceInfo.browser_version;\r\n }\r\n dbTraceLog.deviceType = this.getDeviceType();\r\n\r\n this.dbTraceLogService.insertDBLog(dbTraceLog).subscribe(ApiResult => {\r\n if (ApiResult != null && ApiResult.statusCode == 200) {\r\n //console.log('Log Inserted Successfully'); \r\n }\r\n else {\r\n console.log('Log insert failed');\r\n }\r\n\r\n //Trigger email when logType is Error\r\n if (dbTraceLog.logType.toUpperCase() === \"ERROR\") {\r\n this.sendEmail(dbTraceLog);\r\n }\r\n });\r\n }\r\n\r\n \r\n\r\n //#region Send Cool Email\r\n\r\n private sendEmail(dbTraceLog: DBTraceLog) {\r\n\r\n this.coolEmailSettings = new CoolEmailSettings();\r\n\r\n this.coolEmailSettings.body = this.constructEmailBody(dbTraceLog);\r\n this.coolEmailSettings.subject = 'KMI Error - ' + this.getKMIPortalType(dbTraceLog.portalTypeID);\r\n this.coolEmailSettings.to = dbTraceLog.emailToList;\r\n\r\n this.coolEmailService.sendEmail(this.coolEmailSettings).subscribe(ApiResult => {\r\n if (ApiResult != null && ApiResult.statusCode == 200) {\r\n //console.log(`SendEmail ApiResult: ${ApiResult}`);\r\n }\r\n else\r\n console.log('Error occured while sending email');\r\n });\r\n }\r\n\r\n private constructEmailBody(dbTraceLog: DBTraceLog): string {\r\n var emailBody = '';\r\n\r\n emailBody = ` \r\n \r\n Error Occured in KMI ${this.getKMIPortalType(dbTraceLog.portalTypeID)} with following details

\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
LDC ${this.isBlank(dbTraceLog.ldc)}
Order Number ${this.isBlank(dbTraceLog.issuingApOrderID)}
Order Type ${this.isBlank(dbTraceLog.orderType)}
URL Code ${this.isBlank(dbTraceLog.kmiUrlCode)}
Log Message ${this.isBlank(dbTraceLog.logMessage)}
Log Ref ID ${this.isBlank(dbTraceLog.logReferenceID)}

\r\n Please check for more details in KMIPortalLogs using above Order Number or Log Reference ID\r\n `;\r\n\r\n\r\n return emailBody;\r\n }\r\n\r\n private getKMIPortalType(portalTypeID: Number): string {\r\n\r\n var res: string = '';\r\n\r\n switch (portalTypeID) {\r\n case 1: { res = 'Customer Portal'; break; }\r\n case 2: { res = 'Rescheduling Portal'; break; }\r\n case 3: { res = 'Scheduling Portal'; break; }\r\n\r\n default: { res = 'KMI Error'; break; }\r\n }\r\n\r\n return res;\r\n }\r\n\r\n private isBlank(str): string {\r\n if (str === null || str.length === 0 || !str)\r\n return 'NA'\r\n else\r\n return str;\r\n }\r\n\r\n //#endregion\r\r\n //#region Device Info\r\n\r\n public getDeviceType(): any {\r\n\r\n var deviceType = 'Undefined';\r\n\r\n if (this.deviceService != null) {\r\n if (this.deviceService.isMobile())\r\n deviceType = 'Mobile';\r\n else if (this.deviceService.isDesktop())\r\n deviceType = 'Desktop';\r\n else if (this.deviceService.isTablet())\r\n deviceType = 'Tablet';\r\n else\r\n deviceType = 'Undefined';\r\n }\r\n\r\n return deviceType;\r\n }\r\n\r\n //#endregion\r\n\r\n}\r\n","export class Questionnaire {\n question: string = '';\n answer: string = '';\n}\n\nexport class CovidQuestionnaireInput { \n questionnaireList = [];\n ldc: string = '';\n kmiUrlCode: string = '';\n orderNumber: string = '';\n orderType: string = '';\n premisesNumber: string = ''; \n logReferenceID: string = '';\n portalTypeID: number = 0; \n emailToList: string = '';\n}\nexport class CovidQuestionnaireOutput {\n isQuestionnaireHasYes: boolean = false;\n questionnaireQnAnswerList = [];\n}","module.exports = \"\\n.AdelleSmall {\\n font-family: Adelle;\\n font-size: 13px;\\n line-height: 1.6;\\n}\\n\\n.AdelleSmallStrongRed {\\n font-family: Adelle;\\n font-size: 12px;\\n line-height: 1.6;\\n color: #c23225;\\n}\\n\\n.btnStrongRedFillLong {\\n border: 1px solid #c23225 !important;\\n /*border-radius:10px !important;*/\\n color: white !important;\\n background: #c23225 !important;\\n font-weight: bold !important;\\n width: 180px !important;\\n margin-left: 3%;\\n /*margin-bottom: 10px;*/\\n text-transform: none !important;\\n font-size: 14px;\\n}\\n\\n.SansSerifRegular {\\n /*font-family: 'Source Sans Pro',sans-serif;*/\\n font-family: -apple-system,system-ui,BlinkMacSystemFont,\\\"Segoe UI\\\",Roboto,\\\"Helvetica Neue\\\",Arial,sans-serif;\\n font-size: 1em;\\n font-weight: normal;\\n}\\n\\n.radioInput {\\n height: 1.5em;\\n width: 1.5em;\\n border: 0px;\\n vertical-align: middle\\n}\\n\\n.radioInputLabel {\\n height: 1.5em;\\n line-height: 1.5em;\\n vertical-align: sub;\\n padding-left: 0.5em;\\n}\\n\\n.radioInputLabelCombo {\\n vertical-align: middle;\\n width: 16em;\\n margin-bottom: 0px\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvc2hhcmVkL2NvbXBvbmVudHMvY292aWRxdWVzdGlvbm5haXJlL2NvdmlkLXF1ZXN0aW9ubmFpcmUuY29tcG9uZW50LmNzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQ0E7SUFDSSxtQkFBbUI7SUFDbkIsZUFBZTtJQUNmLGdCQUFnQjtBQUNwQjs7QUFFQTtJQUNJLG1CQUFtQjtJQUNuQixlQUFlO0lBQ2YsZ0JBQWdCO0lBQ2hCLGNBQWM7QUFDbEI7O0FBRUE7SUFDSSxvQ0FBb0M7SUFDcEMsaUNBQWlDO0lBQ2pDLHVCQUF1QjtJQUN2Qiw4QkFBOEI7SUFDOUIsNEJBQTRCO0lBQzVCLHVCQUF1QjtJQUN2QixlQUFlO0lBQ2YsdUJBQXVCO0lBQ3ZCLCtCQUErQjtJQUMvQixlQUFlO0FBQ25COztBQUVBO0lBQ0ksNkNBQTZDO0lBQzdDLDJHQUEyRztJQUMzRyxjQUFjO0lBQ2QsbUJBQW1CO0FBQ3ZCOztBQUVBO0lBQ0ksYUFBYTtJQUNiLFlBQVk7SUFDWixXQUFXO0lBQ1g7QUFDSjs7QUFFQTtJQUNJLGFBQWE7SUFDYixrQkFBa0I7SUFDbEIsbUJBQW1CO0lBQ25CLG1CQUFtQjtBQUN2Qjs7QUFFQTtJQUNJLHNCQUFzQjtJQUN0QixXQUFXO0lBQ1g7QUFDSiIsImZpbGUiOiJzcmMvYXBwL3NoYXJlZC9jb21wb25lbnRzL2NvdmlkcXVlc3Rpb25uYWlyZS9jb3ZpZC1xdWVzdGlvbm5haXJlLmNvbXBvbmVudC5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyJcbi5BZGVsbGVTbWFsbCB7XG4gICAgZm9udC1mYW1pbHk6IEFkZWxsZTtcbiAgICBmb250LXNpemU6IDEzcHg7XG4gICAgbGluZS1oZWlnaHQ6IDEuNjtcbn1cblxuLkFkZWxsZVNtYWxsU3Ryb25nUmVkIHtcbiAgICBmb250LWZhbWlseTogQWRlbGxlO1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBsaW5lLWhlaWdodDogMS42O1xuICAgIGNvbG9yOiAjYzIzMjI1O1xufVxuXG4uYnRuU3Ryb25nUmVkRmlsbExvbmcge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNjMjMyMjUgIWltcG9ydGFudDtcbiAgICAvKmJvcmRlci1yYWRpdXM6MTBweCAhaW1wb3J0YW50OyovXG4gICAgY29sb3I6IHdoaXRlICFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZDogI2MyMzIyNSAhaW1wb3J0YW50O1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkICFpbXBvcnRhbnQ7XG4gICAgd2lkdGg6IDE4MHB4ICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWxlZnQ6IDMlO1xuICAgIC8qbWFyZ2luLWJvdHRvbTogMTBweDsqL1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lICFpbXBvcnRhbnQ7XG4gICAgZm9udC1zaXplOiAxNHB4O1xufVxuXG4uU2Fuc1NlcmlmUmVndWxhciB7XG4gICAgLypmb250LWZhbWlseTogJ1NvdXJjZSBTYW5zIFBybycsc2Fucy1zZXJpZjsqL1xuICAgIGZvbnQtZmFtaWx5OiAtYXBwbGUtc3lzdGVtLHN5c3RlbS11aSxCbGlua01hY1N5c3RlbUZvbnQsXCJTZWdvZSBVSVwiLFJvYm90byxcIkhlbHZldGljYSBOZXVlXCIsQXJpYWwsc2Fucy1zZXJpZjtcbiAgICBmb250LXNpemU6IDFlbTtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xufVxuXG4ucmFkaW9JbnB1dCB7XG4gICAgaGVpZ2h0OiAxLjVlbTtcbiAgICB3aWR0aDogMS41ZW07XG4gICAgYm9yZGVyOiAwcHg7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZVxufVxuXG4ucmFkaW9JbnB1dExhYmVsIHtcbiAgICBoZWlnaHQ6IDEuNWVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjVlbTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogc3ViO1xuICAgIHBhZGRpbmctbGVmdDogMC41ZW07XG59XG5cbi5yYWRpb0lucHV0TGFiZWxDb21ibyB7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB3aWR0aDogMTZlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwcHhcbn0iXX0= */\"","//DSS Documentation on Angular Components - http://tiny.sc/cgangularcomponent\nimport { Component, EventEmitter, OnInit, AfterViewInit, Input, Output, Pipe, PipeTransform, HostListener } from '@angular/core';\nimport { NgModule } from '@angular/core';\n//import { ViewChild, ElementRef } from '@angular/core';\nimport { DatePipe } from '@angular/common';\nimport { SocoHttpService } from '@soco/http';\nimport { DBTraceLogService } from '../../services/dbTraceLog/dbTraceLog.service';\nimport { CoolEmailService } from '../../services/coolEmail/coolEmail.service';\nimport { AppCommonService } from '../../services/common/app-common.service';\nimport { DeviceDetectorService } from 'ngx-device-detector';\nimport {\n CovidQuestionnaireInput, CovidQuestionnaireOutput, Questionnaire\n} from './covid-questionnaire-entities';\nimport { DBTraceLog, LogType } from '../../services/dbTraceLog/dbTraceLog-entities';\nimport { AppConfigurationData } from '../../services/common/app-common-entities';\nimport { AppBaseComponent } from '../base/app-base.component';\n\n@Component({\n selector: 'covid-questionnaire',\n templateUrl: 'covid-questionnaire.component.html',\n styleUrls: ['covid-questionnaire.component.css'],\n providers: [DatePipe, DBTraceLogService, AppCommonService]\n})\nexport class CovidQuestionnaireComponent extends AppBaseComponent implements OnInit {\n\n //#region Variables\n public ldc: string = '';\n public orderNumber: string = '';\n public premiseNumber: string = '';\n public urlCode: string;\n public errorInfo: any;\n public orderType: string = '';\n public personID: string = '';\n public appConfigurationDataList: Array = [];\n public deviceInfo = null;\n public dbTraceLog: DBTraceLog;\n public logReferenceID: string = '';\n public portalTypeID: number = 0;\n public isQuestionAnswersPerformed: boolean = false;\n public isQuestionnaireHasYes: boolean = true;\n public questionnaireList = [];\n public questionnaireQnAnswerList = [];\n public questionnaire: Questionnaire;\n public covidQuestionnaireOutput: CovidQuestionnaireOutput;\n public emailToList: string;\n\n @Input() covidQuestionnaireInput: CovidQuestionnaireInput;\n @Output() covidQuestionnaireOutputEvent = new EventEmitter();\n @Output() processErrorEvent = new EventEmitter();\n\n //#endregion\n\n constructor(public datepipe: DatePipe, public http: SocoHttpService,\n public dbTraceLogService: DBTraceLogService, public deviceService: DeviceDetectorService, public coolEmailService: CoolEmailService,\n private appCommonService: AppCommonService) {\n\n //Parent component initialization\n super(http, dbTraceLogService, coolEmailService, deviceService);\n\n this.covidQuestionnaireOutput = new CovidQuestionnaireOutput();\n };\n\n\n ngOnInit() {\n try {\n //Get covid qns input from parent\n this.GetCovidQuestionnaireInput();\n\n }\n catch (e) {\n this.insertDBTraceLog(LogType.Error, 'Exception occured while loading ngOnInit, Error: ' + e.message.substring(0, 500));\n }\n\n }\n\n // #region Other Button Clicks \n\n submitCovidQuestionnaire() {\n try {\n this.isQuestionAnswersPerformed = true;\n\n //Check if if any one of the answeres has YES.\n if (this.questionnaireQnAnswerList.length > 0 && this.questionnaireQnAnswerList.some((el) => el.answer.toUpperCase() == 'YES'))\n this.isQuestionnaireHasYes = true;\n else if (this.questionnaireQnAnswerList.length === this.questionnaireList.length)\n this.isQuestionnaireHasYes = false;\n\n //Prepare output object and emit to parent component.\n this.EmitOutputToParent();\n //this.determineSchedulingAfterQuestionnaire();\n }\n catch (e) {\n this.insertDBTraceLog(LogType.Error, 'Exception occured while determining schedule after questionnaire, Error: ' + e.message.substring(0, 500));\n }\n\n }\n\n // #endregion\n\n // #region Helper Methods\n\n public captureQuestionAnswer(event) {\n try {\n this.questionnaire = new Questionnaire();\n\n this.questionnaire.question = event.target.name;\n this.questionnaire.answer = event.target.value;\n\n //If there is answer for same qn already.. remove it from array. (Saving just latest answer to each qn)\n if (this.questionnaireQnAnswerList.length > 0 && this.questionnaireQnAnswerList.some((el) => el.question == event.target.name)) {\n this.questionnaireQnAnswerList.splice(this.questionnaireQnAnswerList.findIndex(v => v.question === event.target.name), 1);\n }\n\n //Insert answers into array\n this.questionnaireQnAnswerList.push(this.questionnaire);\n }\n catch (e) {\n this.insertDBTraceLog(LogType.Error, 'Exception occured while capturing questionnaire answer, Error: ' + e.message.substring(0, 500));\n }\n }\n\n private insertDBTraceLog(logType: string, logMessage: string) {\n\n this.dbTraceLog = new DBTraceLog();\n\n this.dbTraceLog.portalTypeID = this.portalTypeID; //From parent\n this.dbTraceLog.ldc = this.ldc;\n this.dbTraceLog.kmiUrlCode = this.urlCode;\n this.dbTraceLog.issuingApOrderID = this.orderNumber;\n this.dbTraceLog.orderType = this.orderType;\n this.dbTraceLog.logReferenceID = this.logReferenceID;\n this.dbTraceLog.logType = logType;\n this.dbTraceLog.logMessage = logMessage;\n this.dbTraceLog.emailToList = this.emailToList;\n\n super.InsertDBTraceLogThruBase(this.dbTraceLog);\n }\n\n processError(): void {\n this.processErrorEvent.emit();\n }\n\n private GetCovidQuestionnaireInput() {\n\n //console.log('CovidQuestionnaire Input:', this.covidQuestionnaireInput);\n\n this.questionnaireList = this.covidQuestionnaireInput.questionnaireList;\n this.urlCode = this.covidQuestionnaireInput.kmiUrlCode;\n this.orderNumber = this.covidQuestionnaireInput.orderNumber;\n this.orderType = this.covidQuestionnaireInput.orderType;\n this.premiseNumber = this.covidQuestionnaireInput.premisesNumber;\n this.portalTypeID = this.covidQuestionnaireInput.portalTypeID;\n this.logReferenceID = this.covidQuestionnaireInput.logReferenceID;\n this.emailToList = this.covidQuestionnaireInput.emailToList;\n }\n\n private EmitOutputToParent() {\n this.covidQuestionnaireOutput.isQuestionnaireHasYes = this.isQuestionnaireHasYes;\n this.covidQuestionnaireOutput.questionnaireQnAnswerList = this.questionnaireQnAnswerList;\n\n //Clear output variables once \"Next\" performed\n if (this.questionnaireList.length === this.questionnaireQnAnswerList.length) {\n this.isQuestionAnswersPerformed = false;\n this.questionnaireQnAnswerList = [];\n }\n this.covidQuestionnaireOutputEvent.emit(this.covidQuestionnaireOutput);\n }\n\n // #endregion\n\n}\n","//angular modules\n//DSS Documentation on Angular - http://tiny.sc/cgangular\nimport { NgModule } from '@angular/core';\nimport { RouterModule } from '@angular/router';\nimport { CommonModule } from '@angular/common';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\n//soco modules\nimport { SocoAlertModule } from '@soco/alert';\nimport { SocoFormsModule } from '@soco/forms';\nimport { SocoModalModule } from '@soco/modal';\nimport { SocoUIThemeModule } from '@soco/ui-theme';\n\n//app modules\nimport { CoreModule } from '../../../core/core.module';\n\n//components\n//DSS Documentation on Angular Components - http://tiny.sc/cgangularcomponent\n\nimport { AgmCoreModule } from '@agm/core';\nimport { CovidQuestionnaireComponent } from './covid-questionnaire.component';\n\n@NgModule({\n imports: [\n //angular modules\n CommonModule,\n //RouterModule.forChild(RescheduleRoutes),\n FormsModule,\n ReactiveFormsModule,\n AgmCoreModule.forRoot({\n apiKey: 'AIzaSyBcLYsBQdhvhsdRoDKPzt3STCHmIXsXCNU'\n }),\n\n //soco modules \n SocoUIThemeModule,\n SocoAlertModule,\n SocoFormsModule,\n SocoModalModule,\n\n //app modules\n CoreModule\n \n ],\n exports: [CovidQuestionnaireComponent], \n declarations: [ \n CovidQuestionnaireComponent \n ]\n})\n\nexport class CovidQuestionnaireModule { }\n\n","import { Injectable } from '@angular/core';\nimport { map, mergeMap } from 'rxjs/operators';\nimport { HttpClient } from '@angular/common/http';\nimport { Observable, EMPTY, of, forkJoin } from 'rxjs';\nimport { catchError } from 'rxjs/operators';\nimport { SocoHttpService } from '@soco/http';\nimport { SocoConfigurationService } from '@soco/configuration';\nimport { ApiResult } from '@soco/core';\nimport { url } from 'inspector';\nimport { string } from 'prop-types';\n\n\n@Injectable()\nexport class AppCommonService {\n \n public appDataBaseUrl = '/AppData/';\n\n constructor(private http: SocoHttpService, private ngHttp: HttpClient, private config: SocoConfigurationService) { }\n\n getApplicationConfigs() {\n\n return this.http.get({\n url: this.appDataBaseUrl + 'GetApplicationConfig'\n });\n }\n}","import { number } from 'prop-types';\n\n\nexport class CoolEmailSettings { \n \n to: string = '';\n subject: string = '';\n body: string = '';\n}\n","import { Injectable } from '@angular/core';\nimport { map, mergeMap } from 'rxjs/operators';\nimport { HttpClient } from '@angular/common/http';\nimport { Observable, EMPTY, of, forkJoin } from 'rxjs';\nimport { catchError } from 'rxjs/operators';\nimport { SocoHttpService } from '@soco/http';\nimport { SocoConfigurationService } from '@soco/configuration';\nimport { ApiResult } from '@soco/core';\nimport { url } from 'inspector';\nimport { CoolEmailSettings } from './coolEmail-entities';\nimport { DBTraceLog } from '../dbTraceLog/dbTraceLog-entities';\nimport { string } from 'prop-types';\n\n\n@Injectable()\nexport class CoolEmailService {\n\n public baseUrl = '/CoolEmail/';\n public appDataBaseUrl = '/AppData/';\n public coolEmailSettings: CoolEmailSettings;\n\n constructor(private http: SocoHttpService, private ngHttp: HttpClient, private config: SocoConfigurationService) { }\n\n sendEmail(coolEmailSettings: CoolEmailSettings) {\n\n return this.http.post({\n url: this.baseUrl + 'SendEmail',\n data: coolEmailSettings,\n //alertId: alertId,\n shouldIgnoreInvalidResult: true,\n pleaseWaitTimeoutDuration: 500\n });\n }\n \n}","import { number } from 'prop-types';\n\n\nexport class DBTraceLog { \n\n portalTypeID: number = 0;\n ldc: string = '';\n kmiUrlCode: string = '';\n issuingApOrderID: string = '';\n orderType: string = '';\n logReferenceID: string = '';\n logType: string = '';\n logMessage: string = '';\n deviceType: string = '';\n deviceOS: string = '';\n deviceBrowser: string = '';\n emailToList: string = '';\n}\n\nexport enum LogType {\n Info = \"Info\",\n Error = \"Error\",\n Warning = \"Warning\"\n}","import { Injectable } from '@angular/core';\nimport { map, mergeMap } from 'rxjs/operators';\nimport { HttpClient } from '@angular/common/http';\nimport { Observable, EMPTY, of, forkJoin } from 'rxjs';\nimport { catchError } from 'rxjs/operators';\n\nimport { SocoHttpService } from '@soco/http';\nimport { SocoConfigurationService } from '@soco/configuration';\n\nimport { ApiResult } from '@soco/core';\nimport { url } from 'inspector';\nimport { DBTraceLog } from './dbTraceLog-entities';\n\n\n@Injectable()\nexport class DBTraceLogService {\n\n public baseUrl = '/PortalTraceLog/';\n\n\n constructor(public http: SocoHttpService) { }\n\n insertDBLog(dbTraceLog: DBTraceLog) {\n\n return this.http.post({\n url: this.baseUrl + 'InsertPortalTraceLog',\n data: dbTraceLog,\n //alertId: alertId,\n shouldIgnoreInvalidResult: true,\n pleaseWaitTimeoutDuration: 500\n });\n }\n}","import { Component, Output, EventEmitter, OnInit } from '@angular/core';\nimport { FormGroup, FormBuilder } from '@angular/forms';\n\n//DSS Documentation on SocoFormService - http://tiny.sc/cgsocoformservice\nimport { SocoFormService } from '@soco/forms';\n//DSS Documentation on SocoHttpService - http://tiny.sc/cgSocoHttpService\nimport { SocoHttpService } from '@soco/http';\n//DSS Documentation on SocoModalService - http://tiny.sc/cgsocomodalservice\nimport { SocoModalService } from '@soco/modal';\n\nimport { UserService } from '../user.service';\nimport { User } from '../user';\n\n@Component({\n selector: 'user-add',\n templateUrl: 'user-add.component.html'\n})\nexport class UserAddComponent implements OnInit {\n alertId: string = 'alert-user-add';\n modalId: string = 'modal-user-add';\n form: FormGroup;\n @Output() userAddClosed = new EventEmitter();\n\n constructor(\n private userService: UserService,\n //DSS Documentation on SocoFormService - http://tiny.sc/cgsocoformservice\n private socoFormService: SocoFormService,\n //DSS Documentation on SocoHttpService - http://tiny.sc/cgSocoHttpService\n private http: SocoHttpService,\n //DSS Documentation on SocoModalService - http://tiny.sc/cgsocomodalservice\n private socoModalService: SocoModalService,\n private formBuilder: FormBuilder\n ) { }\n\n ngOnInit(): void {\n this.form = this.formBuilder.group(new User());\n }\n\n //=============================================================================================================\n //EVENT HANDLERS\n //=============================================================================================================\n formSubmitted(user: User): void {\n this.add(user);\n }\n\n show(): void {\n //re-initialize a notification to clear any previous changes\n this.form = this.formBuilder.group(new User());\n\n //show the modal\n //DSS Documentation on SocoModalService - http://tiny.sc/cgsocomodalservice\n this.socoModalService.show({\n id: this.modalId,\n onClose: () => {\n this.userAddClosed.emit();\n }\n });\n }\n\n //=============================================================================================================\n //WEB METHODS\n //=============================================================================================================\n private add(user: User): void {\n this.userService.add(user, this.alertId).subscribe(result => {\n //DSS Documentation on SocoModalService - http://tiny.sc/cgsocomodalservice\n this.socoModalService.hide(); //hide the modal which will trigger the event emitter so the parent will refresh\n }, result => {\n //DSS Documentation on SocoFormService - http://tiny.sc/cgsocoformservice\n //DSS Documentation on Validation - http://tiny.sc/cgvalidation\n if (this.http.isInvalidResult(result)) {\n this.form = this.socoFormService.invalidateForm(this.form, result);\n }\n });\n }\n}\n\n","import { Component, Output, EventEmitter, OnInit } from '@angular/core';\nimport { FormGroup, FormBuilder } from '@angular/forms';\n\n//DSS Documentation on ApiResult - http://tiny.sc/cgapiresult\nimport { ApiResult } from '@soco/core';\n//DSS Documentation on SocoAlertService - http://tiny.sc/cgsocoalertservice\nimport { SocoAlertService } from '@soco/alert';\n//DSS Documentation on SocoFormService - http://tiny.sc/cgsocoformservice\nimport { SocoFormService } from '@soco/forms';\n//DSS Documentation on SocoHttpService - http://tiny.sc/cgSocoHttpService\nimport { SocoHttpService } from '@soco/http';\n//DSS Documentation on SocoModalService - http://tiny.sc/cgsocomodalservice\nimport { SocoModalService } from '@soco/modal';\n\nimport { UserService } from '../user.service';\nimport { User } from '../user';\n\n@Component({\n selector: 'user-edit',\n templateUrl: 'user-edit.component.html'\n})\nexport class UserEditComponent implements OnInit {\n alertId: string = 'alert-user-edit';\n modalId: string = 'modal-user-edit';\n form: FormGroup;\n @Output() userEditClosed = new EventEmitter();\n\n constructor(\n private userService: UserService,\n //DSS Documentation on SocoAlertService - http://tiny.sc/cgsocoalertservice\n private socoAlertService: SocoAlertService,\n //DSS Documentation on SocoFormService - http://tiny.sc/cgsocoformservice\n private socoFormService: SocoFormService,\n //DSS Documentation on SocoModalService - http://tiny.sc/cgsocomodalservice\n private socoModalService: SocoModalService,\n private http: SocoHttpService,\n private formBuilder: FormBuilder\n ) { }\n\n ngOnInit(): void {\n this.form = this.formBuilder.group(new User());\n }\n\n //=============================================================================================================\n //EVENT HANDLERS\n //=============================================================================================================\n formSubmitted(user: User): void {\n this.update(user);\n }\n\n deleteClicked(user: User): void {\n this.del(user.id);\n }\n\n show(id: number): void {\n this.getById(id);\n }\n\n //=============================================================================================================\n //WEB METHODS\n //=============================================================================================================\n private getById(id: number): void {\n this.userService.getById(id).subscribe(result => {\n //set the data on the form\n this.form = this.formBuilder.group(result.data);\n\n //show the modal\n //DSS Documentation on SocoModalService - http://tiny.sc/cgsocomodalservice\n this.socoModalService.show({\n id: this.modalId,\n onClose: () => {\n this.userEditClosed.emit();\n }\n });\n }, result => {\n // do nothing\n });\n }\n\n private update(user: User): void {\n this.userService.update(user, this.alertId).subscribe(result => {\n //DSS Documentation on SocoModalService - http://tiny.sc/cgsocomodalservice\n this.socoModalService.hide(); //hide the modal which will trigger the event emitter so the parent will refresh\n }, result => {\n //DSS Documentation on SocoFormService - http://tiny.sc/cgsocoformservice\n //DSS Documentation on Validation - http://tiny.sc/cgvalidation\n if (this.http.isInvalidResult(result)) {\n this.form = this.socoFormService.invalidateForm(this.form, result);\n }\n });\n }\n\n private del(id: number): void {\n //hide any alerts from the last time the form was submitted\n //DSS Documentation on SocoAlertService - http://tiny.sc/cgsocoalertservice\n this.socoAlertService.hide();\n\n //delete\n this.userService.del(id, this.alertId).subscribe(result => {\n //DSS Documentation on SocoModalService - http://tiny.sc/cgsocomodalservice\n this.socoModalService.hide(); //hide the modal which will trigger the event emitter so the parent will refresh\n });\n }\n}\n\n","import { Component, OnInit, ViewChild } from '@angular/core';\n\n//DSS Documentation on SocoModalService - http://tiny.sc/cgsocomodalservice\nimport { SocoModalService } from '@soco/modal';\n\nimport { UserService } from '../user.service';\nimport { User } from '../user';\nimport { UserAddComponent } from '../add/user-add.component';\nimport { UserEditComponent } from '../edit/user-edit.component';\n\n@Component({\n selector: 'user-list',\n templateUrl: 'user-list.component.html'\n})\nexport class UserListComponent implements OnInit {\n isLoading: boolean = true;\n users: User[] = [];\n\n @ViewChild(UserAddComponent, { static: false }) userAddComponent: UserAddComponent;\n @ViewChild(UserEditComponent, { static: false })userEditComponent: UserEditComponent;\n\n //DSS Documentation on SocoConfigurationService - http://tiny.sc/cgsococonfigurationservice\n //DSS Documentation on SocoModalService - http://tiny.sc/cgsocomodalservice\n constructor(private userService: UserService, private socoModalService: SocoModalService) { }\n\n ngOnInit(): void {\n this.getAll();\n }\n\n //=============================================================================================================\n //EVENT HANDLERS\n //=============================================================================================================\n add(): void {\n this.userAddComponent.show();\n }\n\n edit(id: number): void {\n this.userEditComponent.show(id);\n }\n\n delete(user: User): void {\n //DSS Documentation on SocoModalService - http://tiny.sc/cgsocomodalservice\n this.socoModalService.confirm({\n title: 'Delete?',\n body: 'Are you sure you want to delete the user?',\n dontCloseOnChoice: true,\n confirmationCallback: (confirmed: boolean) => {\n if (confirmed) {\n this.del(user.id);\n }\n else {\n this.socoModalService.hide();\n }\n }\n });\n }\n\n userAddClosed(): void {\n this.getAll();\n }\n\n userEditClosed(): void {\n this.getAll();\n }\n\n //=============================================================================================================\n //WEB METHODS\n //=============================================================================================================\n private getAll(): void {\n this.isLoading = true;\n this.userService.getAll().subscribe(result => {\n this.isLoading = false;\n this.users = result.data;\n });\n }\n\n private del(id: number): void {\n this.userService.del(id).subscribe(result => {\n //DSS Documentation on SocoModalService - http://tiny.sc/cgsocomodalservice\n this.socoModalService.hide();\n this.getAll();\n });\n }\n}\n\n","//angular modules\n//DSS Documentation on Angular - http://tiny.sc/cgangular\nimport { NgModule } from '@angular/core';\nimport { BrowserModule } from '@angular/platform-browser';\nimport { HttpClientModule } from '@angular/common/http';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\n\n//soco modules\nimport { SocoAlertModule } from '@soco/alert';\nimport { SocoCommonModule } from '@soco/common';\nimport { SocoConfigurationModule } from '@soco/configuration';\nimport { SocoCoreModule } from '@soco/core';\nimport { SocoFormsModule } from '@soco/forms';\nimport { SocoHttpModule } from '@soco/http';\nimport { SocoModalModule } from '@soco/modal';\n\n//components\n//DSS Documentation on Angular Components - http://tiny.sc/cgangularcomponent\nimport { UserAddComponent } from './add/user-add.component';\nimport { UserEditComponent } from './edit/user-edit.component';\nimport { UserListComponent } from './list/user-list.component';\n\nconst MODULE_DIRECTIVES = [\n UserAddComponent,\n UserEditComponent,\n UserListComponent\n];\n\n@NgModule({\n imports: [\n //angular modules\n BrowserModule,\n FormsModule,\n HttpClientModule,\n ReactiveFormsModule,\n\n //soco modules\n SocoAlertModule,\n SocoCommonModule,\n SocoConfigurationModule,\n SocoCoreModule,\n SocoFormsModule,\n SocoHttpModule,\n SocoModalModule\n ],\n exports: MODULE_DIRECTIVES,\n declarations: MODULE_DIRECTIVES\n})\nexport class UserModule { }\n\n","import { Injectable } from '@angular/core';\nimport { Observable } from 'rxjs';\n\n//DSS Documentation on ApiResult - http://tiny.sc/cgapiresult\nimport { ApiResult } from '@soco/core';\n//DSS Documentation on SocoHttpService - http://tiny.sc/cgSocoHttpService\nimport { SocoHttpService } from '@soco/http';\n\nimport { User } from './user';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class UserService {\n private baseUrl = 'User';\n\n //DSS Documentation on SocoHttpService - http://tiny.sc/cgSocoHttpService\n constructor(private http: SocoHttpService) { }\n\n /**\n * Retrieves all users\n * @param alertId If an error occurs and you want to use an alert other than the default alert, specify the alert id\n */\n getAll(alertId?: string): Observable> {\n //DSS Documentation on SocoHttpService - http://tiny.sc/cgSocoHttpService\n //DSS Documentation on handling exceptions - http://tiny.sc/cgclientexceptions\n return this.http.get({\n url: this.baseUrl,\n alertId: alertId\n });\n }\n\n /**\n * Retrieves the specified user\n * @param id The id of the user to be retrieved\n * @param alertId If an error occurs and you want to use an alert other than the default alert, specify the alert id\n */\n getById(id: number, alertId?: string): Observable> {\n //DSS Documentation on SocoHttpService - http://tiny.sc/cgSocoHttpService\n //DSS Documentation on handling exceptions - http://tiny.sc/cgclientexceptions\n return this.http.get({\n url: this.baseUrl + '/GetById',\n params: { id: id },\n alertId: alertId\n });\n }\n\n /**\n * Adds a new user\n * @param user The user to be added\n * @param alertId If an error occurs and you want to use an alert other than the default alert, specify the alert id\n */\n add(user: User, alertId?: string): Observable> {\n //DSS Documentation on SocoHttpService - http://tiny.sc/cgSocoHttpService\n //DSS Documentation on handling exceptions - http://tiny.sc/cgclientexceptions\n //DSS Documentation on Validation - http://tiny.sc/cgvalidation\n return this.http.post({\n url: this.baseUrl,\n data: user,\n alertId: alertId,\n shouldIgnoreInvalidResult: true,\n pleaseWaitTimeoutDuration: 500\n });\n }\n\n /**\n * Updates the specified user\n * @param user The user to be updated\n * @param alertId If an error occurs and you want to use an alert other than the default alert, specify the alert id\n */\n update(user: User, alertId?: string): Observable> {\n //DSS Documentation on SocoHttpService - http://tiny.sc/cgSocoHttpService\n //DSS Documentation on handling exceptions - http://tiny.sc/cgclientexceptions\n //DSS Documentation on Validation - http://tiny.sc/cgvalidation\n return this.http.put({\n url: this.baseUrl,\n data: user,\n alertId: alertId,\n shouldIgnoreInvalidResult: true,\n pleaseWaitTimeoutDuration: 500\n });\n }\n\n /**\n * Deletes the specified user\n * @param id The id of the user to be deleted\n * @param alertId If an error occurs and you want to use an alert other than the default alert, specify the alert id\n */\n del(id: number, alertId?: string): Observable> {\n //DSS Documentation on SocoHttpService - http://tiny.sc/cgSocoHttpService\n //DSS Documentation on handling exceptions - http://tiny.sc/cgclientexceptions\n //DSS Documentation on Validation - http://tiny.sc/cgvalidation\n return this.http.del({\n url: this.baseUrl,\n params: { id: id },\n alertId: alertId,\n pleaseWaitTimeoutDuration: 500\n });\n }\n}\n\n","//DSS Documentation on Validation - http://tiny.sc/cgvalidation\nexport class User {\n id: number = 0;\n sid: string = '';\n firstName: string = '';\n lastName: string = '';\n emailAddress: string = '';\n username: string = '';\n}\n\n","module.exports = __webpack_public_path__ + \"home.png\";","module.exports = __webpack_public_path__ + \"truck.png\";","// 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 production: false\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\n","// DSS Documentation on Angular - http://tiny.sc/cgangular\nimport { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\nimport { enableProdMode } from '@angular/core';\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\n"],"sourceRoot":""}