{"version":3,"file":"main.js","mappings":";;;;;;;;;;;;;;;;;;;;;AACuD;AAEa;AACY;AACS;AACN;AACT;AACH;;;AAEvE;;GAEG;AACH,MAAM,MAAM,GAAW;IACrB;QACE,IAAI,EAAE,EAAE;QACR,SAAS,EAAE,mFAAgB;KAC5B;IACD;QACE,IAAI,EAAE,uBAAuB;QAC7B,SAAS,EAAE,4FAAmB;KAC/B;IACD;QACE,IAAI,EAAE,0BAA0B;QAChC,SAAS,EAAE,4FAAmB;KAC/B;IACD;QACE,IAAI,EAAE,mBAAmB;QACzB,SAAS,EAAE,4FAAmB;KAC/B;IACD;QACE,IAAI,EAAE,mBAAmB;QACzB,YAAY,EAAE,GAAG,EAAE,CAAC,6MAAgD,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,gBAAgB,CAAC;QACpG,OAAO,EAAE,CAAC,gFAAkB,CAAC;KAC9B;IACD;QACE,IAAI,EAAE,eAAe;QACrB,YAAY,EAAE,GAAG,EAAE,CAAC,6LAAwC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC;QACxF,OAAO,EAAE,CAAC,gFAAkB,CAAC;KAC9B;IACD;QACE,IAAI,EAAE,qBAAqB;QAC3B,YAAY,EAAE,GAAG,EAAE,CAAC,yNAAsD,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,kBAAkB,CAAC;QAC5G,OAAO,EAAE,CAAC,gFAAkB,CAAC;KAC9B;IACD;QACE,IAAI,EAAE,WAAW;QACjB,YAAY,EAAE,GAAG,EAAE,CAAC,qMAA4C,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,cAAc,CAAC;QAC9F,OAAO,EAAE,CAAC,gFAAkB,CAAC;KAC9B;IACD;QACE,IAAI,EAAE,cAAc;QACpB,SAAS,EAAE,kGAAqB;KACjC;IACD;QACE,IAAI,EAAE,WAAW;QACjB,SAAS,EAAE,yFAAkB;KAC9B;IACD;QACE,IAAI,EAAE,IAAI;QACV,SAAS,EAAE,6EAAc;KAC1B;CACF,CAAC;AAEF;;GAEG;AAKI,MAAM,gBAAgB;;gFAAhB,gBAAgB;6GAAhB,gBAAgB;iHAHjB,iEAAoB,CAAC,MAAM,EAAE,EAAE,yBAAyB,EAAE,KAAK,EAAE,sBAAsB,EAAE,QAAQ,EAAE,CAAC,EACpG,yDAAY;mIAEX,gBAAgB,oFAFjB,yDAAY;;;;;;;;;;;;;;;;;;;;;ACpEkC;;;;;;;ICC1D,wEAA0C;;ADC1C;;GAEG;AAMI,MAAM,YAAY;IASvB;;;OAGG;IACH,YAAmB,MAAc;QARjC;;WAEG;QACI,aAAQ,GAAG,KAAK,CAAC;QAMtB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;YACnC,IAAI,KAAK,YAAY,4DAAe,EAAE;gBACpC,KAAK,CAAC,GAAG,KAAK,gDAAgD;oBAC9D,KAAK,CAAC,GAAG,KAAK,4CAA4C;oBACxD,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;oBACzB,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,CAAC;aAC5B;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;OAGG;IAEI,aAAa,CAAC,KAAY;QAC/B,KAAK,CAAC,cAAc,EAAE,CAAC;IACzB,CAAC;;wEAhCU,YAAY;0GAAZ,YAAY;wJAAZ,yBAEb;;QCbA,2EAA+B;QAE/B,sHAA0C;QAC1C,iFAOC;QACsC,sEAAW;QAAA,4DAAI;;QATzC,0DAAc;QAAd,8EAAc;QAOzB,0DAAmB;QAAnB,4EAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACT0B;AAC4B;AACjB;AACF;AACH;AACM;AACD;AACqB;AAChB;AACS;AACzB;AACO;AACG;AACU;AACsC;AAC5C;AACuB;AAC4C;AACjF;AAEW;AAEF;AACT;AACF;AACuB;AACK;AACO;AACS;AACN;AACT;AACyB;AACb;AACnB;AACc;AACR;AAC6B;AACxC;AACkB;AAC1B;;AAEtD;;GAEG;AAmEI,MAAM,SAAS;;kEAAT,SAAS;uGAAT,SAAS,cAFR,wDAAY;4GA/Cb;QACT,sDAAc;QACd,kFAAgB;QAChB,0FAAiB;QACjB,sDAAc;QACd,0DAAgB;QAChB,iEAAiB;QACjB,wEAAuB;QACvB,mFAA4B;QAC5B,uEAA2B;QAC3B,kEAAsB;QACtB,mFAA4B;QAC5B,8EAA0B;QAC1B,6EAAyB;QACzB,yFAAqC;QACrC,oEAAqB;QACrB,gHAAuB;QACvB,mFAAc;QACd,6EAAY;QACZ,gHAAuB;QACvB,2FAAgB;QAChB,0EAAwB;QACxB;YACE,OAAO,EAAE,6DAAkB;YAC3B,QAAQ,EAAE,EAAE,OAAO,EAAE,gFAAyB,EAAuB;SACtE;QACD;YACE,OAAO,EAAE,6DAAkB;YAC3B,QAAQ,EAAE,IAAI;SACf;QACD;YACE,OAAO,EAAE,oEAAiB;YAC1B,QAAQ,EAAE,gGAAuB;YACjC,KAAK,EAAE,IAAI;SACZ;QACD;YACE,OAAO,EAAE,oEAAiB;YAC1B,QAAQ,EAAE,6GAAsB;YAChC,KAAK,EAAE,IAAI;SACZ;QACD;YACE,OAAO,EAAE,2DAAe;YACxB,UAAU,EAAE,CAAC,aAAuC,EAAE,EAAE,CAAC,GAAG,EAAE,CAAC,aAAa,CAAC,kBAAkB,CAAC,kEAAW,CAAC,CAAC,SAAS,EAAE;YACxH,IAAI,EAAE,CAAC,0EAAwB,CAAC;YAChC,KAAK,EAAE,IAAI;SACZ;KACF,YA5DC,0DAAY;QACZ,qEAAa;QACb,iEAAgB;QAChB,gEAAmB;QACnB,0DAAe;QACf,+DAAoB;QACpB,mEAAgB;QAChB,0FAAuB;QACvB,mEAAgB;QAChB,gEAAY;QACZ,sEAAe;QACf,wEAAY;QACZ,0DAAgB;oIAmDP,SAAS,mBAjEL,wDAAY,EAAE,6EAAc,EAAE,yFAAkB,EAAE,kGAAqB,EAAE,mFAAgB,EAAE,4FAAmB,aAE3H,0DAAY;QACZ,qEAAa;QACb,iEAAgB;QAChB,gEAAmB;QACnB,0DAAe;QACf,+DAAoB;QACpB,mEAAgB;QAChB,0FAAuB;QACvB,mEAAgB;QAChB,gEAAY;QACZ,sEAAe;QACf,wEAAY;QACZ,0DAAgB;;;;;;;;;;;;;;;;;;;;;;;;AC7CQ;AACK;AACM;AAIiC;AACR;;AAEhE;;GAEG;AAEI,MAAM,cAAe,SAAQ,iFAAqB;IA2YvD;;OAEG;IACH;QACE,KAAK,EAAE,CAAC;QA9YV;;WAEG;QACc,qBAAgB,GAAG,IAAI,iDAAe,CAAgC,EAAE,CAAC,CAAC;QAC3F;;WAEG;QACc,yBAAoB,GAAG,IAAI,iDAAe,CAAwB,EAAE,CAAC,CAAC;QACvF;;WAEG;QACc,gBAAW,GAAG,IAAI,iDAAe,CAAe,EAAE,CAAC,CAAC;QACrE;;WAEG;QACc,aAAQ,GAAG,IAAI,iDAAe,CAAY,EAAE,CAAC,CAAC;QAC/D;;WAEG;QACc,gBAAW,GAAG,IAAI,iDAAe,CAAY,EAAE,CAAC,CAAC;QAClE;;WAEG;QACc,gBAAW,GAAG,IAAI,iDAAe,CAAY,EAAE,CAAC,CAAC;QAClE;;WAEG;QACc,gBAAW,GAAG,IAAI,iDAAe,CAA2B,EAAE,CAAC,CAAC;QACjF;;WAEG;QACc,kCAA6B,GAAG,IAAI,iDAAe,CAAmC,EAAE,CAAC,CAAC;QAC3G;;WAEG;QACc,gCAA2B,GAAG,IAAI,iDAAe,CAA+B,EAAE,CAAC,CAAC;QACrG;;WAEG;QACc,6BAAwB,GAAG,IAAI,iDAAe,CAA6B,EAAE,CAAC,CAAC;QAChG;;WAEG;QACc,kBAAa,GAAG,IAAI,iDAAe,CAAiB,EAAE,CAAC,CAAC;QACzE;;WAEG;QACc,kBAAa,GAAG,IAAI,iDAAe,CAAkB,EAAE,CAAC,CAAC;QAC1E;;WAEG;QACc,qBAAgB,GAAG,IAAI,iDAAe,CAAkB,EAAE,CAAC,CAAC;QAC7E;;WAEG;QACc,qBAAgB,GAAG,IAAI,iDAAe,CAA2B,EAAE,CAAC,CAAC;QACtF;;WAEG;QACc,iBAAY,GAAG,IAAI,iDAAe,CAA2B,EAAE,CAAC,CAAC;QAClF;;WAEG;QACc,iBAAY,GAAG,IAAI,iDAAe,CAAU,KAAK,CAAC,CAAC;QACpE;;WAEG;QACc,eAAU,GAAG,IAAI,iDAAe,CAAU,KAAK,CAAC,CAAC;QAClE;;WAEG;QACc,kBAAa,GAAG,IAAI,iDAAe,CAAU,KAAK,CAAC,CAAC;QACrE;;WAEG;QACc,6BAAwB,GAAG,IAAI,iDAAe,CAAU,KAAK,CAAC,CAAC;QAChF;;WAEG;QACc,gBAAW,GAAG,IAAI,iDAAe,CAAS,EAAE,CAAC,CAAC;QAC/D;;WAEG;QACc,kBAAa,GAAG,IAAI,iDAAe,CAAS,CAAC,CAAC,CAAC;QAChE;;WAEG;QACc,iBAAY,GAAG,IAAI,iDAAe,CAAW,EAAE,CAAC,CAAC;QAClE;;WAEG;QACc,YAAO,GAAG,IAAI,iDAAe,CAAY,EAAE,CAAC,CAAC;QAC9D;;WAEG;QACc,eAAU,GAAG,IAAI,iDAAe,CAAY,EAAE,CAAC,CAAC;QACjE;;WAEG;QACc,eAAU,GAAG,IAAI,iDAAe,CAAU,EAAE,CAAC,CAAC;QAC/D;;WAEG;QACc,8BAAyB,GAAG,IAAI,iDAAe,CAAoB,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC;QACrG;;WAEG;QACc,uBAAkB,GAAG,IAAI,iDAAe,CAA+B,EAAE,CAAC,CAAC;QAC5F;;WAEG;QACc,uBAAkB,GAAG,IAAI,iDAAe,CAAS,EAAE,CAAC,CAAC;QACtE;;WAEG;QACc,gBAAW,GAAG,IAAI,iDAAe,CAA4B,EAAE,CAAC,CAAC;QAClF;;WAEG;QACc,6BAAwB,GAAG,IAAI,iDAAe,CAA4B,EAAE,CAAC,CAAC;QAC/F;;WAEG;QACc,6BAAwB,GAAG,IAAI,iDAAe,CAAiB,EAAE,CAAC,CAAC;QACpF;;WAEG;QACc,wBAAmB,GAAG,IAAI,iDAAe,CAAY,EAAE,CAAC,CAAC;QAC1E;;WAEG;QACc,cAAS,GAAG,IAAI,iDAAe,CAAa,EAAE,CAAC,CAAC;QACjE;;WAEG;QACc,eAAU,GAAG,IAAI,iDAAe,CAAgB,EAAE,CAAC,CAAC;QACrE;;WAEG;QACc,wBAAmB,GAAG,IAAI,iDAAe,CAAgB,EAAE,CAAC,CAAC;QAC9E;;WAEG;QACc,iBAAY,GAAG,IAAI,iDAAe,CAAc,EAAE,CAAC,CAAC;QACrE;;WAEG;QACc,uBAAkB,GAAG,IAAI,iDAAe,CAAgB,EAAE,CAAC,CAAC;QAC7E;;WAEG;QACc,oBAAe,GAAG,IAAI,iDAAe,CAAuB,EAAE,CAAC,CAAC;QACjF;;WAEG;QACc,mBAAc,GAAG,IAAI,iDAAe,CAAwB,EAAE,CAAC,CAAC;QACjF;;WAEG;QACc,wBAAmB,GAAG,IAAI,iDAAe,CAAuB,EAAE,CAAC,CAAC;QACrF;;WAEG;QACc,oBAAe,GAAG,IAAI,iDAAe,CAAiB,EAAE,CAAC,CAAC;QAC3E;;WAEG;QACc,gBAAW,GAAG,IAAI,iDAAe,CAAmB,EAAE,CAAC,CAAC;QACzE;;WAEG;QACc,oBAAe,GAAG,IAAI,iDAAe,CAAoB,EAAE,CAAC,CAAC;QAC9E;;WAEG;QACc,qBAAgB,GAAG,IAAI,iDAAe,CAAoB,EAAE,CAAC,CAAC;QAC/E;;WAEG;QACc,oCAA+B,GAAG,IAAI,iDAAe,CAAqB,EAAE,CAAC,CAAC;QAC/F;;WAEG;QACc,wBAAmB,GAAG,IAAI,iDAAe,CAAgB,EAAE,CAAC,CAAC;QAC9E;;WAEG;QACc,oBAAe,GAAG,IAAI,iDAAe,CAAgC,EAAE,CAAC,CAAC;QAC1F;;WAEG;QACc,kBAAa,GAAG,IAAI,iDAAe,CAAgC,EAAE,CAAC,CAAC;QACxF;;WAEG;QACc,kBAAa,GAAG,IAAI,iDAAe,CAAgC,EAAE,CAAC,CAAC;QACxF;;WAEG;QACc,mBAAc,GAAG,IAAI,iDAAe,CAAgC,EAAE,CAAC,CAAC;QACzF;;WAEG;QACc,gBAAW,GAAG,IAAI,iDAAe,CAAc,EAAE,CAAC,CAAC;QAEpE;;WAEG;QACI,6BAAwB,GAAG,IAAI,CAAC,yBAAyB,CAAC,YAAY,EAAE,CAAC;QAChF;;WAEG;QACa,oBAAe,GAAG,IAAI,CAAC,gBAAgB,CAAC,YAAY,EAAE,CAAC;QACvE;;WAEG;QACa,wBAAmB,GAAG,IAAI,CAAC,oBAAoB,CAAC,YAAY,EAAE,CAAC;QAC/E;;WAEG;QACa,YAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAE,CAAC;QACvD;;WAEG;QACa,eAAU,GAAG,IAAI,CAAC,WAAW,CAAC,YAAY,EAAE,CAAC;QAC7D;;WAEG;QACa,eAAU,GAAG,IAAI,CAAC,WAAW,CAAC,YAAY,EAAE,CAAC;QAC7D;;WAEG;QACa,eAAU,GAAG,IAAI,CAAC,WAAW,CAAC,YAAY,EAAE,CAAC;QAC7D;;WAEG;QACa,eAAU,GAAG,IAAI,CAAC,WAAW,CAAC,YAAY,EAAE,CAAC;QAC7D;;WAEG;QACa,iBAAY,GAAG,IAAI,CAAC,aAAa,CAAC,YAAY,EAAE,CAAC;QACjE;;WAEG;QACa,iBAAY,GAAG,IAAI,CAAC,aAAa,CAAC,YAAY,EAAE,CAAC;QACjE;;WAEG;QACa,oBAAe,GAAG,IAAI,CAAC,gBAAgB,CAAC,YAAY,EAAE,CAAC;QACvE;;WAEG;QACa,oBAAe,GAAG,IAAI,CAAC,gBAAgB,CAAC,YAAY,EAAE,CAAC;QACvE;;WAEG;QACa,iCAA4B,GAAG,IAAI,CAAC,6BAA6B,CAAC,YAAY,EAAE,CAAC;QACjG;;WAEG;QACa,+BAA0B,GAAG,IAAI,CAAC,2BAA2B,CAAC,YAAY,EAAE,CAAC;QAC7F;;WAEG;QACa,4BAAuB,GAAG,IAAI,CAAC,wBAAwB,CAAC,YAAY,EAAE,CAAC;QACvF;;WAEG;QACa,gBAAW,GAAG,IAAI,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC;QAC/D;;WAEG;QACa,gBAAW,GAAG,IAAI,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC;QAC/D;;WAEG;QACa,gBAAW,GAAG,IAAI,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC;QAC/D;;WAEG;QACa,cAAS,GAAG,IAAI,CAAC,UAAU,CAAC,YAAY,EAAE,CAAC;QAC3D;;WAEG;QACa,iBAAY,GAAG,IAAI,CAAC,aAAa,CAAC,YAAY,EAAE,CAAC;QACjE;;WAEG;QACa,4BAAuB,GAAG,IAAI,CAAC,wBAAwB,CAAC,YAAY,EAAE,CAAC;QACvF;;WAEG;QACa,WAAM,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC;QACrD;;WAEG;QACa,cAAS,GAAG,IAAI,CAAC,UAAU,CAAC,YAAY,EAAE,CAAC;QAC3D;;WAEG;QACa,eAAU,GAAG,IAAI,CAAC,WAAW,CAAC,YAAY,EAAE,CAAC;QAC7D;;WAEG;QACa,4BAAuB,GAAG,IAAI,CAAC,wBAAwB,CAAC,YAAY,EAAE,CAAC;QACvF;;WAEG;QACa,uBAAkB,GAAG,IAAI,CAAC,mBAAmB,CAAC,YAAY,EAAE,CAAC;QAC7E;;WAEG;QACa,cAAS,GAAG,IAAI,CAAC,UAAU,CAAC,YAAY,EAAE,CAAC;QAC3D;;WAEG;QACa,uBAAkB,GAAG,IAAI,CAAC,mBAAmB,CAAC,YAAY,EAAE,CAAC;QAC7E;;WAEG;QACa,gBAAW,GAAG,IAAI,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC;QAC/D;;WAEG;QACa,mBAAc,GAAG,IAAI,CAAC,eAAe,CAAC,YAAY,EAAE,CAAC;QACrE;;WAEG;QACa,sBAAiB,GAAG,IAAI,CAAC,kBAAkB,CAAC,YAAY,EAAE,CAAC;QAC3E;;WAEG;QACa,kBAAa,GAAG,IAAI,CAAC,cAAc,CAAC,YAAY,EAAE,CAAC;QACnE;;WAEG;QACa,mBAAc,GAAG,IAAI,CAAC,eAAe,CAAC,YAAY,EAAE,CAAC;QACrE;;WAEG;QACa,aAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE,CAAC;QACzD;;WAEG;QACa,uBAAkB,GAAG,IAAI,CAAC,mBAAmB,CAAC,YAAY,EAAE,CAAC;QAC7E;;WAEG;QACa,eAAU,GAAG,IAAI,CAAC,WAAW,CAAC,YAAY,EAAE,CAAC;QAC7D;;WAEG;QACa,sBAAiB,GAAG,IAAI,CAAC,kBAAkB,CAAC,YAAY,EAAE,CAAC;QAC3E;;WAEG;QACa,sBAAiB,GAAG,IAAI,CAAC,kBAAkB,CAAC,YAAY,EAAE,CAAC;QAC3E;;WAEG;QACa,oBAAe,GAAG,IAAI,CAAC,gBAAgB,CAAC,YAAY,EAAE,CAAC;QACvE;;WAEG;QACa,mCAA8B,GAAG,IAAI,CAAC,+BAA+B,CAAC,YAAY,EAAE,CAAC;QACrG;;WAEG;QACa,uBAAkB,GAAG,IAAI,CAAC,mBAAmB,CAAC,YAAY,EAAE,CAAC;QAC7E;;WAEG;QACa,mBAAc,GAAG,IAAI,CAAC,eAAe,CAAC,YAAY,EAAE,CAAC;QACrE;;WAEG;QACa,mBAAc,GAAG,IAAI,CAAC,eAAe,CAAC,YAAY,EAAE,CAAC;QACrE;;WAEG;QACa,iBAAY,GAAG,IAAI,CAAC,aAAa,CAAC,YAAY,EAAE,CAAC;QACjE;;WAEG;QACa,iBAAY,GAAG,IAAI,CAAC,aAAa,CAAC,YAAY,EAAE,CAAC;QACjE;;WAEG;QACa,kBAAa,GAAG,IAAI,CAAC,cAAc,CAAC,YAAY,EAAE,CAAC;QACnE;;WAEG;QACa,eAAU,GAAG,IAAI,CAAC,WAAW,CAAC,YAAY,EAAE,CAAC;IAO7D,CAAC;IACD;;OAEG;IACI,gBAAgB;QACrB,IAAI,CAAC,IAAI,CAAC,yEAAoB,CAAC,CAAC;IAClC,CAAC;IACD;;;OAGG;IACI,KAAK,CAAC,EAAU;QACrB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QACzB,KAAK,CAAC,iBAAiB,CAAC,IAAI,GAAG,EAAE,CAAC;QAClC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACnB,CAAC;IACD;;;OAGG;IACI,UAAU,CAAC,OAA0B;QAC1C,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QACzB,KAAK,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAClC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACnB,CAAC;IACD;;;OAGG;IACI,YAAY,CAAC,SAA+B;QACjD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QACzB,MAAM,YAAY,GAAmC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC;QACvF,KAAK,CAAC,iBAAiB,CAAC,eAAe,GAAG;YACxC,EAAE,EAAE,YAAY,EAAE,EAAE,IAAI,CAAC;YACzB,IAAI,EAAE,YAAY,EAAE,IAAI,IAAI,EAAE;SAC/B,CAAC;QACF,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACnB,CAAC;IACD;;;OAGG;IACI,UAAU,CAAC,OAAqB;QACrC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QACzB,MAAM,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC;QACvD,KAAK,CAAC,iBAAiB,CAAC,SAAS,GAAG,cAAc,EAAE,EAAE,IAAI,CAAC,CAAC;QAC5D,KAAK,CAAC,iBAAiB,CAAC,OAAO,GAAG;YAChC,EAAE,EAAE,cAAc,EAAE,EAAE,IAAI,CAAC;YAC3B,IAAI,EAAE,cAAc,EAAE,IAAI,IAAI,KAAK;SACpC,CAAC;QACF,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACnB,CAAC;IACD;;;;OAIG;IACI,UAAU,CAAC,kBAAoC;QACpD,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;IAChC,CAAC;IACD;;;OAGG;IACI,WAAW,CAAC,OAAgB;QACjC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QACzB,KAAK,CAAC,iBAAiB,CAAC,QAAQ,GAAG,6CAAW,CAAC,OAAO,CAAC,CAAC;QACxD,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACnB,CAAC;IACD;;;OAGG;IACI,yBAAyB,CAAC,kBAAoC;QACnE,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;IAChC,CAAC;IACD;;;OAGG;IACI,iBAAiB,CAAC,kBAAoC;QAC3D,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;IAChC,CAAC;IACD;;;OAGG;IACI,mBAAmB,CAAC,kBAAoC;QAC7D,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;IAChC,CAAC;IACD;;;OAGG;IACI,WAAW,CAAC,IAAyB;QAC1C,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QACzB,MAAM,IAAI,GAAG,mCAAM,CAAC,IAAI,EAAE,QAAQ,EAAE,sBAAsB,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,uBAAuB,CAAC,CAAC;QACzG,KAAK,CAAC,iBAAiB,CAAC,cAAc,GAAG,IAAI,CAAC;QAC9C,KAAK,CAAC,iBAAiB,CAAC,cAAc,GAAG,IAAI,CAAC;QAC9C,KAAK,CAAC,iBAAiB,CAAC,WAAW,GAAG;YACpC,SAAS,EAAE,CAAC;YACZ,UAAU,EAAE,CAAC;YACb,QAAQ,EAAE,GAAG;YACb,EAAE,EAAE,CAAC;YACL,QAAQ,EAAE,GAAG;YACb,MAAM,EAAE;gBACN,SAAS,EAAE,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,EAAE,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,WAAW;aAC9E;SACF,CAAC;QACF,KAAK,CAAC,iBAAiB,CAAC,kBAAkB,GAAG;YAC3C,SAAS,EAAE,IAAI,CAAC,QAAQ,EAAE,SAAS;YACnC,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,eAAe;YACxC,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,MAAM,EAAE,IAAI,CAAC,MAAM;SACpB,CAAC;QACF,KAAK,CAAC,iBAAiB,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC7C,gDAAgD;QAChD,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACnB,CAAC;IACD;;;OAGG;IACI,mBAAmB,CAAC,QAAqB;QAC9C,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QAEzB,IAAI,KAAK,CAAC,iBAAiB,CAAC,kBAAkB,EAAE;YAC9C,KAAK,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,UAAU,GAAG,QAAQ,CAAC,EAAE,CAAC;YACpE,KAAK,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,QAAQ,GAAG,QAAQ,CAAC,IAAI,CAAC;SACrE;QACD,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACnB,CAAC;IACD;;;OAGG;IACI,WAAW,CAAC,QAAgB;QACjC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QACzB,KAAK,CAAC,iBAAiB,CAAC,MAAM,GAAG,6CAAW,CAAC,QAAQ,CAAC,CAAC;QACvD,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACnB,CAAC;IACD;;OAEG;IACI,kBAAkB,CAAC,kBAAiD;QACzE,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;IACjD,CAAC;IACD;;OAEG;IACI,gBAAgB;QACrB,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACjC,CAAC;IACD;;;OAGG;IACI,oBAAoB,CAAC,iBAAwC;QAClE,2BAA2B;QAC3B,IAAI,iBAAiB,CAAC,YAAY,KAAK,IAAI,IAAI,iBAAiB,CAAC,YAAY,KAAK,SAAS;YACzF,CAAC,YAAY,CAAC,OAAO,CAAC,YAAY,CAAC,KAAK,EAAE,IAAI,YAAY,CAAC,OAAO,CAAC,YAAY,CAAC,KAAK,IAAI,CAAC,EAAE;YAC5F,YAAY,CAAC,OAAO,CAAC,cAAc,EAAE,IAAI,CAAC,SAAS,CAAC,iBAAiB,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC,CAAC;YACnG,YAAY,CAAC,OAAO,CAAC,eAAe,EAAE,IAAI,CAAC,SAAS,CAAC,iBAAiB,CAAC,YAAY,EAAE,aAAa,CAAC,CAAC,CAAC;YACrG,YAAY,CAAC,OAAO,CAAC,gBAAgB,EAAE,IAAI,CAAC,SAAS,CAAC,iBAAiB,CAAC,YAAY,EAAE,cAAc,CAAC,CAAC,CAAC;YACvG,YAAY,CAAC,OAAO,CAAC,iBAAiB,EAAE,IAAI,CAAC,SAAS,CAAC,iBAAiB,CAAC,YAAY,EAAE,eAAe,CAAC,CAAC,CAAC;YACzG,YAAY,CAAC,OAAO,CAAC,YAAY,EAAE,IAAI,CAAC,SAAS,CAAC,iBAAiB,CAAC,YAAY,EAAE,yBAAyB,CAAC,IAAI,EAAE,CAAC,CAAC;SACrH;QACD,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;IACpD,CAAC;IACD;;;;OAIG;IACI,8BAA8B,CAAC,IAAsC;QAC1E,IAAI,CAAC,6BAA6B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAChD,CAAC;IACD;;;OAGG;IACI,SAAS,CAAC,MAAiB;QAChC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC7B,CAAC;IACD;;;OAGG;IACI,oBAAoB,CAAC,MAAgC;QAC1D,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAChC,CAAC;IACD;;;OAGG;IACI,YAAY,CAAC,MAAiB;QACnC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAChC,CAAC;IACD;;;OAGG;IACI,YAAY,CAAC,MAAiB;QACnC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAChC,CAAC;IACD;;;OAGG;IACI,YAAY,CAAC,SAAuB;QACzC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACnC,CAAC;IACD;;;OAGG;IACI,cAAc,CAAC,WAA2B;QAC/C,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACvC,CAAC;IACD;;;OAGG;IACI,4BAA4B,CAAC,uBAAqD;QACvF,IAAI,CAAC,2BAA2B,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;IACjE,CAAC;IACD;;;OAGG;IACI,yBAAyB,CAAC,MAAkC;QACjE,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC7C,CAAC;IACD;;;OAGG;IACI,cAAc,CAAC,WAA4B;QAChD,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACvC,CAAC;IACD;;;OAGG;IACI,iBAAiB,CAAC,WAA4B;QACnD,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC1C,CAAC;IACD;;;OAGG;IACI,yBAAyB,CAAC,IAA8B;QAC7D,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACnC,CAAC;IACD;;;OAGG;IACI,qBAAqB,CAAC,IAA8B;QACzD,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC/B,CAAC;IACD;;;OAGG;IACI,aAAa,CAAC,SAAkB;QACrC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACpC,CAAC;IACD;;;OAGG;IACI,cAAc,CAAC,IAAc;QAClC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC/B,CAAC;IACD;;;OAGG;IACI,cAAc,CAAC,WAAmB;QACvC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACvC,CAAC;IACD;;;OAGG;IACI,YAAY,CAAC,SAAiB;QACnC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACnC,CAAC;IACD;;;OAGG;IACI,yBAAyB,CAAC,SAAkB;QACjD,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAChD,CAAC;IACD;;;OAGG;IACI,cAAc,CAAC,WAAoB;QACxC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACvC,CAAC;IACD;;;OAGG;IACI,WAAW,CAAC,QAAiB;QAClC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACjC,CAAC;IACD;;;OAGG;IACI,gBAAgB,CAAC,OAA0B;QAChD,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC/C,CAAC;IACD;;;OAGG;IACI,QAAQ,CAAC,IAAe;QAC7B,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;IACD;;;OAGG;IACI,WAAW,CAAC,IAAe;QAChC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC7B,CAAC;IACD;;;OAGG;IACI,WAAW,CAAC,QAAiB;QAClC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACjC,CAAC;IACD;;;OAGG;IACI,2BAA2B,CAAC,oBAA+C;QAChF,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;IAC3D,CAAC;IACD;;;OAGG;IACI,yBAAyB,CAAC,sBAAsC;QACrE,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;IAC7D,CAAC;IACD;;;OAGG;IACI,oBAAoB,CAAC,MAAiB;QAC3C,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACxC,CAAC;IACD;;;OAGG;IACI,YAAY,CAAC,IAAmB;QACrC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC7B,CAAC;IACD;;;OAGG;IACI,oBAAoB,CAAC,IAAmB;QAC7C,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACtC,CAAC;IACD;;;OAGG;IACI,gBAAgB,CAAC,QAAwB;QAC9C,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACtC,CAAC;IACD;;;OAGG;IACI,cAAc,CAAC,IAAiB;QACrC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC/B,CAAC;IACD;;;OAGG;IACI,oBAAoB,CAAC,IAAmB;QAC7C,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACrC,CAAC;IACD;;;OAGG;IACI,eAAe,CAAC,QAA+B;QACpD,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACrC,CAAC;IACD;;;OAGG;IACI,iBAAiB,CAAC,IAA0B;QACjD,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAClC,CAAC;IACD;;;OAGG;IACI,UAAU,CAAC,OAAmB;QACnC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC/B,CAAC;IACD;;;OAGG;IACI,oBAAoB,CAAC,iBAAuC;QACjE,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;IACnD,CAAC;IACD;;;OAGG;IACI,gBAAgB,CAAC,IAAsB;QAC5C,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC9B,CAAC;IACD;;;OAGG;IACI,iBAAiB,CAAC,YAA+B;QACtD,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IAC3C,CAAC;IACD;;;OAGG;IACI,gCAAgC,CAAC,aAAiC;QACvE,IAAI,CAAC,+BAA+B,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAC3D,CAAC;IACD;;;OAGG;IACI,oBAAoB,CAAC,QAAuB;QACjD,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC1C,CAAC;IACD;;;OAGG;IACI,gBAAgB,CAAC,aAAgC;QACtD,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAC3C,CAAC;IACD;;;OAGG;IACI,yBAAyB,CAAC,iBAA+C;QAC9E,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;IAClD,CAAC;IACD;;;OAGG;IACI,mBAAmB,CAAC,gBAAwB;QACjD,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;IACjD,CAAC;IACD;;;OAGG;IACI,gBAAgB,CAAC,aAA4C;QAClE,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAC3C,CAAC;IACD;;;OAGG;IACI,cAAc,CAAC,WAA0C;QAC9D,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACvC,CAAC;IACD;;;OAGG;IACI,cAAc,CAAC,WAA0C;QAC9D,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACvC,CAAC;IACD;;;OAGG;IACI,eAAe,CAAC,UAAyC;QAC9D,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACvC,CAAC;IACD;;;OAGG;IACI,YAAY,CAAC,SAAsB;QACxC,2BAA2B;QAC3B,IAAI,SAAS,CAAC,UAAU,KAAK,SAAS,IAAI,SAAS,CAAC,UAAU,KAAK,IAAI;YACrE,CAAC,YAAY,CAAC,OAAO,CAAC,YAAY,CAAC,KAAK,EAAE,IAAI,YAAY,CAAC,OAAO,CAAC,YAAY,CAAC,KAAK,IAAI,CAAC,EAAE;YAC5F,YAAY,CAAC,OAAO,CAAC,cAAc,EAAE,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC,CAAC;YACzF,YAAY,CAAC,OAAO,CAAC,eAAe,EAAE,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC,CAAC;YAC3F,YAAY,CAAC,OAAO,CAAC,gBAAgB,EAAE,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC,CAAC;YAC7F,YAAY,CAAC,OAAO,CAAC,iBAAiB,EAAE,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,UAAU,EAAE,eAAe,CAAC,CAAC,CAAC;YAC/F,2CAA2C;YAC3C,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,UAAU,EAAE,OAAO,CAAC,GAAG,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;YACtH,YAAY,CAAC,OAAO,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;SAC7C;QACD,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACnC,CAAC;IACD;;OAEG;IACH,IAAW,oBAAoB;QAC7B,OAAO,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC;IACrC,CAAC;IACD;;OAEG;IACH,IAAW,wBAAwB;QACjC,OAAO,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC;IACzC,CAAC;IACD;;OAEG;IACH,IAAW,YAAY;QACrB,OAAO,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;IAC7B,CAAC;IACD;;OAEG;IACH,IAAW,eAAe;QACxB,OAAO,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC;IAChC,CAAC;IACD;;OAEG;IACH,IAAW,gBAAgB;QACzB,OAAO,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC;IAClC,CAAC;IACD;;OAEG;IACH,IAAW,mBAAmB;QAC5B,OAAO,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC;IACrC,CAAC;IACD;;OAEG;IACH,IAAW,+BAA+B;QACxC,OAAO,IAAI,CAAC,2BAA2B,CAAC,KAAK,CAAC;IAChD,CAAC;IACD;;OAEG;IACH,IAAW,4BAA4B;QACrC,OAAO,IAAI,CAAC,wBAAwB,CAAC,KAAK,CAAC;IAC7C,CAAC;IACD;;OAEG;IACH,IAAW,iBAAiB;QAC1B,OAAO,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC;IAClC,CAAC;IACD;;OAEG;IACH,IAAW,eAAe;QACxB,OAAO,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC;IAChC,CAAC;IACD;;OAEG;IACH,IAAW,4BAA4B;QACrC,OAAO,IAAI,CAAC,wBAAwB,CAAC,KAAK,CAAC;IAC7C,CAAC;IACD;;OAEG;IACH,IAAW,cAAc;QACvB,OAAO,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC;IAClC,CAAC;IACD;;OAEG;IACH,IAAW,WAAW;QACpB,OAAO,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC;IAC/B,CAAC;IACD;;OAEG;IACH,IAAW,WAAW;QACpB,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC;IAC5B,CAAC;IACD;;OAEG;IACH,IAAW,oBAAoB;QAC7B,OAAO,IAAI,CAAC,wBAAwB,CAAC,KAAK,CAAC;IAC7C,CAAC;IACD;;OAEG;IACH,IAAW,cAAc;QACvB,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC;IAC9B,CAAC;IACD;;OAEG;IACH,IAAW,6BAA6B;QACtC,OAAO,IAAI,CAAC,yBAAyB,CAAC,KAAK,CAAC;IAC9C,CAAC;IACD;;OAEG;IACH,IAAW,4BAA4B;QACrC,OAAO,IAAI,CAAC,wBAAwB,CAAC,KAAK,CAAC;IAC7C,CAAC;IACD;;OAEG;IACH,IAAW,eAAe;QACxB,OAAO,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC;IAC/B,CAAC;IACD;;OAEG;IACH,IAAW,mBAAmB;QAC5B,OAAO,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC;IACpC,CAAC;IACD;;OAEG;IACH,IAAW,SAAS;QAClB,OAAO,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC;IACpC,CAAC;IACD;;OAEG;IACH,IAAW,uBAAuB;QAChC,OAAO,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC;IACxC,CAAC;IACD;;OAEG;IACH,IAAW,mBAAmB;QAC5B,OAAO,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC;IACpC,CAAC;IACD;;OAEG;IACH,IAAW,kBAAkB;QAC3B,OAAO,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC;IACnC,CAAC;IACD;;OAEG;IACH,IAAW,mBAAmB;QAC5B,OAAO,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC;IACpC,CAAC;IACD;;OAEG;IACH,IAAW,sBAAsB;QAC/B,OAAO,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC;IACvC,CAAC;IACD;;OAEG;IACH,IAAW,uBAAuB;QAChC,OAAO,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC;IACxC,CAAC;IACD;;OAEG;IACH,IAAW,sBAAsB;QAC/B,OAAO,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC;IACvC,CAAC;IACD;;OAEG;IACH,IAAW,eAAe;QACxB,OAAO,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC;IAChC,CAAC;IACD;;MAEE;IACF,IAAW,eAAe;QACxB,OAAO,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC;IAChC,CAAC;;4EAzkCU,cAAc;+GAAd,cAAc,WAAd,cAAc;;;;;;;;;;;;;;;;;;ACzB3B;;GAEG;AAMI,MAAM,cAAc;IACzB;;OAEG;IACH,qEAAqE;IAC9D,QAAQ,KAAU,CAAC;;4EALf,cAAc;4GAAd,cAAc;QCV3B,6EAA0B;QACxB,oEAAuE;QACvE,qEAAI;QAAA,mFAAwB;QAAA,4DAAK;QACjC,qEAAI;QAAA,wIAAwE;QAAA,4DAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AC+BvD;AACK;AACkC;AACH;AAMsD;AAGvF;AAG+B;AACmC;AACL;;;;;;;;;;;;;;;;;;AAE5F;;GAEG;AAEI,MAAM,gBAAgB;IAqJ3B;;OAEG;IACH,YACE,KAAqB,EACrB,MAAc,EACd,mBAAwC,EACxC,sBAA8C,EAC9C,2BAAwD,EACxD,iBAAoC,EACpC,cAA8B,EAC9B,oBAA0C,EAC1C,cAA8B,EAC9B,uBAAgD,EAChD,gBAAkC,EAClC,kBAAsC,EACtC,yBAAoD,EACpD,iBAAoC,EACpC,mBAAwC,EACxC,KAAuB,EACvB,WAAkC,EAClC,cAA8B,EAC9B,mBAAwC,EACxC,OAA0B;QAjD5B;;WAEG;QACc,aAAQ,GAAG,IAAI,0CAAO,EAAE,CAAC;QAM1C;;WAEG;QACI,eAAU,GAAG,GAAsC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC;QAC5F;;WAEG;QACI,mBAAc,GAAG,GAAkC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC;QACvF;;WAEG;QACI,cAAS,GAAG,GAA8B,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC;QACzE;;UAEE;QACK,mBAAc,GAAqB,KAAK,CAAC;QA2B9C,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,sBAAsB,GAAG,IAAI,2HAAsB,EAAE,CAAC;QAC3D,IAAI,CAAC,mBAAmB,GAAG,mBAAmB,CAAC;QAC/C,IAAI,CAAC,sBAAsB,GAAG,sBAAsB,CAAC;QACrD,IAAI,CAAC,2BAA2B,GAAG,2BAA2B,CAAC;QAC/D,IAAI,CAAC,oBAAoB,GAAG,oBAAoB,CAAC;QACjD,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;QACrC,IAAI,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;QAC3C,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;QACrC,IAAI,CAAC,uBAAuB,GAAG,uBAAuB,CAAC;QACvD,IAAI,CAAC,gBAAgB,GAAG,gBAAgB,CAAC;QACzC,IAAI,CAAC,kBAAkB,GAAG,kBAAkB,CAAC;QAC7C,IAAI,CAAC,yBAAyB,GAAG,yBAAyB,CAAC;QAC3D,IAAI,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;QAC3C,IAAI,CAAC,mBAAmB,GAAG,mBAAmB,CAAC;QAC/C,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACpB,IAAI,CAAC,YAAY,GAAG,IAAI,+CAAY,EAAE,CAAC;QACvC,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;QACrC,IAAI,CAAC,mBAAmB,GAAG,mBAAmB,CAAC;IACjD,CAAC;IAnMD;;OAEG;IACH,IAAW,MAAM;QACf,OAAO,IAAI,CAAC,KAAK,CAAC,sBAAsB,CAAC;IAC3C,CAAC;IACD;;OAEG;IACH,IAAW,eAAe;QACxB,OAAO,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC;IACnC,CAAC;IACD;;OAEG;IACH,IAAW,eAAe;QACxB,OAAO,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC;IAC1C,CAAC;IACD;;OAEG;IACH,IAAW,WAAW;QACpB,OAAO,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC;IACtC,CAAC;IACD;;OAEG;IACH,IAAW,QAAQ;QACjB,OAAO,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC;IACnC,CAAC;IACD;;OAEG;IACH,IAAW,KAAK;QACd,OAAO,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC;IAChC,CAAC;IAkKD;;;OAGG;IACI,WAAW;QAChB,IAAI,CAAC,mBAAmB,EAAE,CAAC;QAC3B,UAAU,CAAC,GAAG,EAAE;YACd,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YACrB,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC;QAC3B,CAAC,EAAE,IAAI,CAAC,CAAC;IACX,CAAC;IAED;;OAEG;IACI,mBAAmB;QACxB,IAAI,CAAC,YAAY,CAAC,WAAW,EAAE,CAAC;IAClC,CAAC;IACD;;;;;;OAMG;IACI,sBAAsB,CAC3B,IAAS,EACT,YAAyC,EACzC,GAAW,EACX,EAAyC;QAEzC,IAAI,CAAC,WAAW;aACb,YAAY,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,cAAc,EAAE,YAAY,EAAE,EAAY,EAAE,YAAY,EAAE,IAAc,CAAC;aACzG,IAAI,CACH,0DAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,EACxB,yDAAQ,CAAC,GAAG,EAAE;YACZ,IAAI,QAAwB,CAAC;YAE7B,IAAI,IAAI,CAAC,eAAe,EAAE;gBACxB,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;gBAC5C,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBACtC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE;oBACrB,MAAM,aAAa,GAAsB;wBACvC,cAAc,EAAE,YAAY,EAAE,EAAE;wBAChC,YAAY,EAAE,YAAY,EAAE,IAAI;wBAChC,cAAc,EAAE,IAAI,CAAC,cAAc;qBACpC;oBAED,sEAAsE;oBACtE,MAAM,cAAc,GAAG,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;oBACrD,MAAM,aAAa,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,cAAc,CAAC,EAAqB,CAAC;oBAEjG,IAAI,CAAC,oBAAoB,CAAC,aAAa,EAAE,CAAC,GAAG,EAAE,EAAE;wBAC/C,oEAAoE;wBACpE,MAAM,oBAAoB,GAAG,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC;wBACpE,MAAM,oBAAoB,GAAG,IAAI,CAAC,KAAK,CAAC,oBAAoB,CAAgB;wBAE5E,IAAI,oBAAoB,EAAE,MAAM,EAAE,UAAU,KAAK,GAAG,EAAE;4BACpD,+CAA+C;4BAC/C,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;4BAEvB,oEAAoE;4BACpE,MAAM,WAAW,GAAG,GAAG,CAAC,UAAU,EAAE,gBAAgB,KAAK,IAAI,CAAC,cAAc,CAAC;4BAC7E,MAAM,QAAQ,GAAG,GAAG,CAAC,UAAU,EAAE,QAAQ;4BAEzC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;4BAEpB,qEAAqE;4BACrE,IAAI,WAAW,EAAE;gCACf,QAAQ,GAAG;oCACT,IAAI,EAAE,IAAI,CAAC,sBAAsB,CAAC,aAAa,CAAC,SAAS,CAAC;oCAC1D,KAAK,EAAE,OAAO;oCACd,MAAM,EAAE,OAAO;oCACf,UAAU,EAAE,kBAAkB;oCAC9B,SAAS,EAAE,KAAK;oCAChB,YAAY,EAAE,KAAK;oCACnB,YAAY,EAAE,IAAI;iCACnB,CAAC;gCACF,EAAE,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gCAChC,OAAO;6BACR;4BAED,8EAA8E;4BAC9E,IAAI,QAAQ,EAAE;gCACZ,QAAQ,GAAG;oCACT,IAAI,EAAE,IAAI,CAAC,sBAAsB,CAAC,oBAAoB,CAAC,SAAS,CAAC;oCACjE,KAAK,EAAE,OAAO;oCACd,MAAM,EAAE,OAAO;oCACf,UAAU,EAAE,kBAAkB;oCAC9B,SAAS,EAAE,KAAK;oCAChB,YAAY,EAAE,KAAK;oCACnB,YAAY,EAAE,IAAI;iCACnB,CAAC;gCACF,EAAE,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gCAChC,OAAO;6BACR;4BAED,IAAI,CAAC,KAAK,CAAC,WAAW;4BACpB,2BAA2B;4BAC3B,GAAG,EAAE,UAAU,EAAE,QAAQ,KAAK,IAAI,IAAI,GAAG,EAAE,UAAU,EAAE,QAAQ,KAAK,SAAS;gCAC3E,CAAC,CAAC,GAAG,EAAE,UAAU,EAAE,QAAQ;gCAC3B,CAAC,CAAC,KAAK,CACV,CAAC;yBAEH;6BAAM;4BACL,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;4BACpB,QAAQ,GAAG;gCACT,IAAI,EAAE,IAAI,CAAC,sBAAsB,CAAC,WAAW,CAAC,SAAS,CAAC;gCACxD,KAAK,EAAE,OAAO;gCACd,MAAM,EAAE,OAAO;gCACf,UAAU,EAAE,kBAAkB;gCAC9B,SAAS,EAAE,KAAK;gCAChB,YAAY,EAAE,KAAK;gCACnB,YAAY,EAAE,IAAI;6BACnB,CAAC;4BACF,EAAE,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;yBACjC;oBACH,CAAC,CAAC,CAAC;iBACJ;qBAAM;oBACL,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,YAAY,EAAE,GAAG,EAAE,CAAC,QAAQ,EAAE,EAAE;wBACtD,EAAE,CAAC,QAAQ,CAAC,CAAC;oBACf,CAAC,CAAC,CAAC;iBACJ;aACF;iBAAM;gBACL,OAAO,CAAC,GAAG,CAAC,wCAAwC,CAAC,CAAC;gBACtD,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;aACvB;QACH,CAAC,CAAC,CACH;aACA,SAAS,EAAE,CAAC;IACjB,CAAC;IAED;;OAEG;IACI,eAAe,CAAC,UAAkB;QAEvC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;QACpB,uCAAuC;QACvC,IAAI,YAAY,GAAG,EAAE,CAAC;QAEtB,sFAAsF;QACtF,IAAI,UAAU,KAAK,+EAAiB,EAAE;YACpC,YAAY,GAAG,+gBAA+gB,CAAC;SAChiB;aAAM,IAAI,UAAU,KAAK,iFAAmB,EAAE;YAC7C,YAAY,GAAG,6ZAA6Z,CAAC;SAC9a;QAED,uDAAS,CAAC;YACR,WAAW,EAAE;gBACX,WAAW,EAAE,qBAAqB;gBAClC,KAAK,EAAE,eAAe;gBACtB,aAAa,EAAE,aAAa;aAC7B;YACD,QAAQ,EAAE,6BAA6B;YACvC,UAAU,EAAE,KAAK;YACjB,WAAW,EAAE,KAAK;YAClB,QAAQ,EAAE,SAAS;YACnB,IAAI,EAAE,YAAY;YAClB,KAAK,EAAE,KAAK;YACZ,UAAU,EAAE,IAAI;YAChB,eAAe,EAAE,IAAI;YACrB,iBAAiB,EAAE,SAAS;YAC5B,iBAAiB,EAAE,KAAK;SACzB,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE;YACX,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QAC9B,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;OAGG;IACI,wBAAwB,CAAC,UAA8B;QAC5D,IAAI,OAAO,GAAG,EAAE,CAAC;QAEjB,iEAAiE;QACjE,IAAI,UAAU,KAAK,uHAA+B,EAAE;YAClD,OAAO,GAAG,kXAAkX,CAAC;SAC9X;aAAM;YACL,OAAO,GAAG,iIAAiI,CAAC;SAC7I;QAED,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;QAEpB,sCAAsC;QACtC,uDAAS,CAAC;YACR,WAAW,EAAE;gBACX,WAAW,EAAE,qBAAqB;gBAClC,KAAK,EAAE,eAAe;gBACtB,aAAa,EAAE,aAAa;aAC7B;YACD,QAAQ,EAAE,6BAA6B;YACvC,UAAU,EAAE,KAAK;YACjB,WAAW,EAAE,KAAK;YAClB,QAAQ,EAAE,SAAS;YACnB,IAAI,EAAE,OAAO;YACb,KAAK,EAAE,KAAK;YACZ,UAAU,EAAE,IAAI;YAChB,eAAe,EAAE,IAAI;YACrB,iBAAiB,EAAE,SAAS;YAC5B,iBAAiB,EAAE,KAAK;SACzB,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE;YACX,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QAC9B,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;;;;OAMG;IACK,YAAY,CAClB,IAAS,EACT,YAAyC,EACzC,GAAW,EACX,EAAyC;QAEzC,IAAI,CAAC,YAAY,CAAC,YAAY,EAAE,IAAI,CAAC,cAAc,IAAI,EAAE,EAAE,GAAG,EAAE,CAAC,UAAU,EAAE,EAAE;YAC7E,IAAI,QAAwB,CAAC;YAC7B,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE;gBACpB,QAAQ,GAAG;oBACT,IAAI,EAAE,IAAI,CAAC,sBAAsB,CAAC,WAAW,CAAC,SAAS,CAAC;oBACxD,KAAK,EAAE,OAAO;oBACd,MAAM,EAAE,OAAO;oBACf,UAAU,EAAE,kBAAkB;oBAC9B,SAAS,EAAE,KAAK;oBAChB,YAAY,EAAE,KAAK;oBACnB,YAAY,EAAE,IAAI;iBACnB,CAAC;gBACF,EAAE,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;aACjC;iBAAM;gBACL,0DAA0D;gBAC1D,MAAM,eAAe,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,UAAU,CAAC;gBAE3D,uEAAuE;gBACvE,IAAI,eAAe,KAAK,iFAAmB,IAAI,eAAe,KAAK,+EAAiB,EAAE;oBACpF,IAAI,CAAC,eAAe,CAAC,eAAe,CAAC,CAAC;oBACtC,OAAO;iBACR;gBAED,mDAAmD;gBACnD,MAAM,WAAW,GAAuB;oBACtC,YAAY,EAAE,YAAY,EAAE,IAAI;oBAChC,cAAc,EAAE,IAAI,CAAC,cAAc;iBACpC,CAAC;gBAEF,yCAAyC;gBACzC,MAAM,YAAY,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC,WAAW,EAAE,YAAY,CAAC;gBAC/D,oEAAoE;gBACpE,MAAM,UAAU,GAAG,YAAY,KAAK,qHAAiC,IAAI,YAAY,KAAK,sHAAkC,CAAC;gBAE7H,6EAA6E;gBAC7E,IAAI,CAAC,UAAU,EAAE;oBACf,sEAAsE;oBACtE,MAAM,cAAc,GAAG,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;oBACnD,MAAM,aAAa,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,cAAc,CAAC,EAAqB,CAAC;oBAEjG,+DAA+D;oBAC/D,IAAI,CAAC,wBAAwB,CAAC,aAAa,EAAE,CAAC,QAAQ,EAAE,EAAE;wBACtD,oEAAoE;wBACpE,MAAM,oBAAoB,GAAG,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC;wBACzE,MAAM,oBAAoB,GAAG,IAAI,CAAC,KAAK,CAAC,oBAAoB,CAAgB;wBAE5E,kCAAkC;wBAClC,IAAI,CAAC,gBAAgB,CAAC,oBAAoB,CAAC,CAAC;oBAChD,CAAC,CAAC,CAAC;iBACJ;gBAED,QAAQ,GAAG,EAAE;oBACX,KAAK,wBAAwB;wBAC3B,EAAE,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,oBAAoB,CAAC,EAAE,CAAC,CAAC;wBAC5D,MAAM;oBACR,KAAK,oBAAoB;wBACvB,IAAI,CAAC,aAAa,CAAC,CAAC,QAAQ,EAAE,EAAE;4BAC9B,IAAI,QAAQ,KAAK,SAAS,EAAE;gCAC1B,EAAE,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,YAAY,EAAE,mBAAmB,CAAC,EAAE,CAAC,CAAC;6BACzE;iCAAM;gCACL,EAAE,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;6BAC3C;wBACH,CAAC,CAAC,CAAC;wBACH,MAAM;oBACR,KAAK,2BAA2B;wBAC9B,IAAI,CAAC,aAAa,CAAC,CAAC,QAAQ,EAAE,EAAE;4BAC9B,IAAI,QAAQ,KAAK,SAAS,EAAE;gCAC1B,EAAE,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,YAAY,EAAE,0BAA0B,CAAC,EAAE,CAAC,CAAC;6BAChF;iCAAM;gCACL,EAAE,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;6BAC3C;wBACH,CAAC,CAAC,CAAC;wBACH,MAAM;oBACR;wBACE,EAAE,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;iBAC9C;gBAED,IAAI,UAAU,CAAC,MAAM,IAAI,CAAC,EAAE;oBAC1B,IAAI,YAAY,CAAC,OAAO,CAAC,YAAY,CAAC,KAAK,IAAI,EAAE;wBAC/C,QAAQ,GAAG;4BACT,IAAI,EAAE,IAAI,CAAC,sBAAsB,CAAC,WAAW,CAAC,SAAS,CAAC;4BACxD,KAAK,EAAE,OAAO;4BACd,MAAM,EAAE,OAAO;4BACf,UAAU,EAAE,kBAAkB;4BAC9B,SAAS,EAAE,KAAK;4BAChB,YAAY,EAAE,KAAK;4BACnB,YAAY,EAAE,IAAI;yBACnB,CAAC;qBACH;yBAAM;wBACL,QAAQ,GAAG;4BACT,IAAI,EAAE,IAAI,CAAC,sBAAsB,CAAC,sBAAsB,EAAE;4BAC1D,KAAK,EAAE,OAAO;4BACd,MAAM,EAAE,OAAO;4BACf,UAAU,EAAE,kBAAkB;4BAC9B,SAAS,EAAE,KAAK;4BAChB,YAAY,EAAE,KAAK;4BACnB,YAAY,EAAE,IAAI;yBACnB,CAAC;qBACH;oBACD,EAAE,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;iBACjC;aACF;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IACD;;;;;;OAMG;IACK,YAAY,CAClB,YAAyC,EACzC,cAAsB,EACtB,GAAW,EACX,EAAuC;QAEvC,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAExB,MAAM,MAAM,GAAG,+CAAQ,CAAC;YACtB,IAAI,CAAC,iBAAiB,EAAE;YACxB,IAAI,CAAC,sBAAsB,EAAE;YAC7B,IAAI,CAAC,YAAY,EAAE;YACnB,IAAI,CAAC,YAAY,EAAE;YACnB,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC;YACrB,IAAI,CAAC,kBAAkB,EAAE;SAC1B,CAAC,CAAC;QAEH,MAAM,SAAS,GAAG,+CAAQ,CAAC;YACzB,IAAI,CAAC,gBAAgB,EAAE;YACvB,IAAI,CAAC,kBAAkB,EAAE;YACzB,IAAI,CAAC,yBAAyB,EAAE;YAChC,IAAI,CAAC,oBAAoB,EAAE;YAC3B,IAAI,CAAC,UAAU,EAAE;SAClB,CAAC,CAAC;QAEH,MAAM,SAAS,GAAG,+CAAQ,CAAC,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;QAEjF,+CAAQ,CAAC,CAAC,MAAM,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;aACrC,IAAI,CACH,yDAAQ,CAAC,GAAG,EAAE;YACZ,EAAE,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;QAC3B,CAAC,CAAC,EACF,0DAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CACzB;aACA,SAAS,CACR,CAAC,CACC,CAAC,cAAc,EAAE,mBAAmB,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,aAAa,CAAC,EACrF,CAAC,aAAa,EAAE,SAAS,EAAE,cAAc,EAAE,SAAS,EAAE,OAAO,CAAC,EAC9D,CAAC,QAAQ,CAAC,EACX,EAAE,EAAE;YACH,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,cAAc,CAAC,CAAC;YAC7C,IAAI,CAAC,KAAK,CAAC,oBAAoB,CAAC,mBAAmB,CAAC,CAAC;YACrD,IAAI,CAAC,KAAK,CAAC,oBAAoB,CAAC,SAAS,CAAC,CAAC;YAC3C,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;YACnC,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;YACnC,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,aAAa,CAAC,CAAC;YACvC,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,aAAa,CAAC,CAAC;YAC5C,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC;YAC3C,IAAI,CAAC,KAAK,CAAC,oBAAoB,CAAC,SAAS,CAAC,CAAC;YAC3C,IAAI,CAAC,KAAK,CAAC,yBAAyB,CAAC,cAAc,CAAC,CAAC;YACrD,IAAI,CAAC,KAAK,CAAC,qBAAqB,CAAC,SAAS,CAAC,CAAC;YAC5C,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;YAC/B,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;YACjC,MAAM,KAAK,GAAG,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC;YAEzC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC;YAC/B,MAAM,OAAO,GAAG,mCAAM,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,uBAAuB,CAAC,CAAC;YAChF,KAAK,CAAC,iBAAiB,CAAC,QAAQ,GAAG,OAAO,CAAC;YAC3C,KAAK,CAAC,iBAAiB,CAAC,OAAO,GAAG,6CAAW,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,YAAY,EAAE,cAAc,CAAC,CAAC,CAAC;YACtG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;YAE7B,+CAA+C;YAC/C,yCAAyC;YACzC,2BAA2B;YAC3B,MAAM,UAAU,GAAG,SAAS,KAAK,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;YAClE,IAAI,CAAC,KAAK,CAAC,oBAAoB,CAAC,UAAU,IAAI,EAAE,CAAC,CAAC;QACpD,CAAC,CACF,CAAC;IACN,CAAC;IACD;;;;;OAKG;IACK,YAAY,CAAC,IAA2B,EAAE,YAAyC,EAAE,cAAsB;QACjH,MAAM,WAAW,GAAmB;YAClC,QAAQ,EAAE,IAAI,CAAC,WAAW,EAAE,QAAQ,IAAI,SAAS;YACjD,YAAY,EAAE,IAAI,CAAC,WAAW,EAAE,YAAY;YAC5C,eAAe,EAAE,IAAI,CAAC,WAAW,EAAE,eAAe;SACnD,CAAC;QACF,MAAM,gBAAgB,GAAiB;YACrC,EAAE,EAAE,YAAY,EAAE,EAAE,IAAI,CAAC;YACzB,IAAI,EAAE,YAAY,EAAE,IAAI,IAAI,EAAE;YAC9B,IAAI,EAAE,YAAY,EAAE,IAAI,IAAI,EAAE;SAC/B,CAAC;QACF,MAAM,IAAI,GAAgB,EAAE,CAAC;QAC7B,MAAM,QAAQ,GACZ,CAAC,IAAI,CAAC,aAAa,EAAE,YAAY,EAAE,MAAM,IAAI,CAAC,CAAC,GAAG,CAAC;YACjD,CAAC,CAAC,IAAI,CAAC,aAAa,EAAE,YAAY,EAAE,MAAM,CAAC,IAAI,CAAC,aAAa,EAAE,YAAY,EAAE,MAAM,GAAG,CAAC,EAAE,CAAC,CAAC,IAAI,GAAG;YAClG,CAAC,CAAC,IAAI,CAAC,aAAa,EAAE,YAAY,IAAI,GAAG,CAAC;QAE9C,IAAI,QAAQ,KAAK,GAAG,EAAE;YACpB,IAAI,CAAC,YAAY,CAAC,GAAG,CACnB,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC;iBACzB,IAAI,CACH,oDAAG,CAAC,CAAC,UAAU,EAAE,EAAE;gBACjB,IAAI,UAAU,EAAE;oBACd,IAAI,CAAC,EAAE,GAAG,MAAM,CAAC,UAAU,CAAC,EAAE,IAAI,GAAG,CAAC,IAAI,CAAC,CAAC;oBAC5C,IAAI,CAAC,IAAI,GAAG,UAAU,CAAC,IAAI,IAAI,EAAE,CAAC;oBAClC,IAAI,CAAC,YAAY,GAAG,MAAM,CAAC,UAAU,CAAC,UAAU,EAAE,EAAE,IAAI,GAAG,CAAC,IAAI,CAAC,CAAC;oBAClE,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC,UAAU,EAAE,IAAI,IAAI,EAAE,CAAC;iBACrD;YACH,CAAC,CAAC,EACF,0DAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CACzB;iBACA,SAAS,EAAE,CACf,CAAC;SACH;QAED,MAAM,OAAO,GAAY;YACvB,IAAI,EAAE,IAAI,EAAE,aAAa,EAAE,QAAQ;SACpC,CAAC;QACF,MAAM,gBAAgB,GAAG,IAAI,CAAC,aAAa,IAAI,EAAE,CAAC;QAClD,MAAM,WAAW,GAAgB;YAC/B,IAAI,EAAE,CAAC,gBAAgB,CAAC,MAAM,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS;SACpF,CAAC;QACF,MAAM,qBAAqB,GAA0B;YACnD,WAAW;YACX,OAAO;SACR,CAAC;QACF,MAAM,SAAS,GAAY;YACzB,cAAc,EAAE,YAAY,EAAE,EAAE,IAAI,CAAC;YACrC,cAAc,EAAE,cAAc;YAC9B,QAAQ,EAAE,IAAI,CAAC,YAAY,EAAE,yBAAyB;YACtD,QAAQ,EAAE,MAAM,CAAC,IAAI,CAAC,YAAY,EAAE,MAAM,EAAE,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI,GAAG,CAAC;YACvF,MAAM,EAAE,IAAI,CAAC,YAAY,EAAE,MAAM,EAAE,OAAO,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,WAAW,CAAC;YACrF,SAAS,EAAE,mCAAM,CAAC,IAAI,CAAC,YAAY,EAAE,eAAe,EAAE,YAAY,CAAC,CAAC,MAAM,EAAE;YAC5E,UAAU,EAAE,CAAC,IAAI,CAAC,aAAa,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;YAC3D,WAAW,EAAE,CAAC,IAAI,CAAC,aAAa,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;YAC7D,MAAM,EAAE,CAAC,IAAI,CAAC,aAAa,EAAE,iBAAiB,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;YACjE,OAAO,EAAE,CAAC,IAAI,CAAC,aAAa,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;YAC1D,UAAU,EAAE,IAAI;YAChB,qBAAqB;YACrB,YAAY,EAAE,gBAAgB;YAC9B,IAAI;SACL,CAAC;QACF,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;QAEjC,OAAO,SAAS,CAAC;IACnB,CAAC;IACD;;;;OAIG;IACI,sBAAsB,CAAC,EAAU,EAAE,EAAmD;QAC3F,IAAI,CAAC,YAAY,CAAC,GAAG,CACnB,IAAI,CAAC,cAAc,EAAE;aAClB,IAAI,CAAC,0DAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;aAC9B,SAAS,CAAC,CAAC,QAAQ,EAAE,EAAE;YACtB,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,SAAS,CAAC;YAC9E,EAAE,CAAC,MAAM,CAAC,CAAC;QACb,CAAC,CAAC,CACL,CAAC;IACJ,CAAC;IACD;;;OAGG;IACK,aAAa,CAAC,EAAkD;QACtE,IAAI,CAAC,YAAY,CAAC,GAAG,CACnB,IAAI,CAAC,SAAS,EAAE;aACb,IAAI,CAAC,0DAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;aAC9B,SAAS,CAAC,CAAC,MAAM,EAAE,EAAE;YACpB,IAAI,MAAM,CAAC,MAAM,IAAI,CAAC,EAAE;gBACtB,EAAE,CAAC;oBACD,IAAI,EAAE,IAAI,CAAC,sBAAsB,CAAC,WAAW,CAAC,SAAS,CAAC;oBACxD,KAAK,EAAE,OAAO;oBACd,MAAM,EAAE,OAAO;oBACf,UAAU,EAAE,kBAAkB;oBAC9B,SAAS,EAAE,KAAK;oBAChB,YAAY,EAAE,KAAK;oBACnB,YAAY,EAAE,IAAI;iBACnB,CAAC,CAAC;aACJ;iBAAM;gBACL,EAAE,CAAC,SAAS,CAAC,CAAC;aACf;QACH,CAAC,CAAC,CACL,CAAC;IACJ,CAAC;IACD;;;OAGG;IACK,YAAY;QAClB,OAAO,IAAI,CAAC,mBAAmB,CAAC,+BAA+B,EAAE,CAAC,IAAI,CAAC,qDAAI,CAAC,CAAC,CAAC,EAAE,0DAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC5G,CAAC;IACD;;;OAGG;IACK,iBAAiB;QACvB,OAAO,IAAI,CAAC,sBAAsB,CAAC,GAAG,EAAE,CAAC,IAAI,CAC3C,qDAAI,CAAC,CAAC,CAAC,EACP,oDAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC,EACnD,0DAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CACzB,CAAC;IACJ,CAAC;IACD;;;OAGG;IACK,sBAAsB;QAC5B,OAAO,IAAI,CAAC,2BAA2B,CAAC,kBAAkB,EAAE,CAAC,IAAI,CAAC,qDAAI,CAAC,CAAC,CAAC,EAAE,0DAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;IACvG,CAAC;IACD;;;OAGG;IACK,YAAY;QAClB,OAAO,IAAI,CAAC,iBAAiB,CAAC,GAAG,EAAE,CAAC,IAAI,CACtC,qDAAI,CAAC,CAAC,CAAC,EACP,oDAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC,EACnD,0DAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CACzB,CAAC;IACJ,CAAC;IACD;;;OAGG;IACK,yBAAyB;QAC/B,OAAO,IAAI,CAAC,oBAAoB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,qDAAI,CAAC,CAAC,CAAC,EAAE,0DAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC1F,CAAC;IACD;;;OAGG;IACK,kBAAkB;QACxB,OAAO,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,qDAAI,CAAC,CAAC,CAAC,EAAE,0DAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;IACpF,CAAC;IACD;;;;OAIG;IACK,aAAa,CAAC,IAAY;QAChC,OAAO,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,qDAAI,CAAC,CAAC,CAAC,EAAE,0DAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC/F,CAAC;IACD;;;;;OAKG;IACK,6BAA6B,CAAC,WAAqB,EAAE,SAAiB;QAC5E,OAAO,IAAI,CAAC,cAAc;aACvB,+BAA+B,CAAC,EAAE,WAAW,EAAE,SAAS,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;aACxE,IAAI,CAAC,qDAAI,CAAC,CAAC,CAAC,EAAE,0DAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC7C,CAAC;IACD;;;OAGG;IACK,gBAAgB;QACtB,OAAO,IAAI,CAAC,uBAAuB,CAAC,GAAG,EAAE,CAAC,IAAI,CAC5C,qDAAI,CAAC,CAAC,CAAC,EACP,oDAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC,EACnD,0DAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CACzB,CAAC;IACJ,CAAC;IACD;;OAEG;IACI,oBAAoB,CAAC,EAAyC;QACnE,IAAI,CAAC,uBAAuB;aACzB,GAAG,EAAE;aACL,IAAI,CACH,qDAAI,CAAC,CAAC,CAAC,EACP,oDAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC,EACnD,0DAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CACzB;aACA,SAAS,CAAC,CAAC,QAAQ,EAAE,EAAE;YACtB,EAAE,CAAC,QAAQ,CAAC,CAAC;QACf,CAAC,CAAC,CAAC;IACP,CAAC;IACD;;;OAGG;IACK,oBAAoB;QAC1B,OAAO,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,qDAAI,CAAC,CAAC,CAAC,EAAE,0DAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;IACtF,CAAC;IACD;;;;;OAKG;IACK,WAAW,CAAC,GAAW;QAC7B,QAAQ,GAAG,EAAE;YACX,KAAK,oBAAoB;gBACvB,OAAO,IAAI,CAAC,kBAAkB,CAAC,uBAAuB,EAAE,CAAC,IAAI,CAC3D,qDAAI,CAAC,CAAC,CAAC,EACP,oDAAG,CAAC,CAAC,QAAQ,EAAE,EAAE;oBACf,MAAM,gBAAgB,GAAG,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;oBAC5E,MAAM,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAkB,CAAC;oBACpE,OAAO,aAAa,CAAC;gBACvB,CAAC,CAAC,EACF,0DAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CACzB,CAAC;gBACF,MAAM;YACR,KAAK,2BAA2B;gBAC9B,OAAO,IAAI,CAAC,kBAAkB,CAAC,uBAAuB,EAAE,CAAC,IAAI,CAC3D,qDAAI,CAAC,CAAC,CAAC,EACP,oDAAG,CAAC,CAAC,QAAQ,EAAE,EAAE;oBACf,MAAM,gBAAgB,GAAG,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;oBAC5E,MAAM,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAkB,CAAC;oBACpE,MAAM,MAAM,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,iBAAiB,KAAK,CAAC,IAAI,CAAC,CAAC,iBAAiB,KAAK,CAAC,CAAC,CAAC;oBACnG,OAAO,MAAM,CAAC;gBAChB,CAAC,CAAC,EACF,0DAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CACzB,CAAC;gBACF,MAAM;YACR;gBACE,OAAO,IAAI,CAAC,kBAAkB,CAAC,uBAAuB,EAAE,CAAC,IAAI,CAC3D,qDAAI,CAAC,CAAC,CAAC,EACP,oDAAG,CAAC,CAAC,QAAQ,EAAE,EAAE;oBACf,MAAM,gBAAgB,GAAG,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;oBAC5E,MAAM,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAkB,CAAC;oBACpE,MAAM,MAAM,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,iBAAiB,KAAK,CAAC,CAAC,CAAC;oBACtE,OAAO,MAAM,CAAC;gBAChB,CAAC,CAAC,EACF,0DAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CACzB,CAAC;SACL;IACH,CAAC;IACD;;;OAGG;IACK,UAAU;QAChB,OAAO,IAAI,CAAC,iBAAiB,CAAC,GAAG,EAAE,CAAC,IAAI,CACtC,qDAAI,CAAC,CAAC,CAAC,EACP,oDAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,IAAI,CAAC,EAAE,0DAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAC9E,CAAC;IACJ,CAAC;IACD;;;OAGG;IACK,kBAAkB;QACxB,OAAO,IAAI,CAAC,yBAAyB,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,qDAAI,CAAC,CAAC,CAAC,EAAE,0DAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;IACrG,CAAC;IACD;;;;MAIE;IACK,oBAAoB,CAAC,IAAqB,EAAE,EAAyB;QAC1E,IAAI,CAAC,mBAAmB,CAAC,oBAAoB,CAAC,IAAI,CAAC;aAChD,IAAI,CACH,qDAAI,CAAC,CAAC,CAAC,EACP,0DAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CACzB,CAAC,SAAS,CAAC,CAAC,QAAQ,EAAE,EAAE;YACvB,EAAE,CAAC,QAAQ,CAAC,CAAC;QACf,CAAC,CAAC,CAAC;IACP,CAAC;IACD;;;;KAIC;IACO,wBAAwB,CAAC,IAAqB,EAAE,EAA2B;QACjF,IAAI,CAAC,mBAAmB;aACrB,wBAAwB,CAAC,IAAI,CAAC;aAC9B,IAAI,CAAC,qDAAI,CAAC,CAAC,CAAC,EAAE,0DAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;aACvC,SAAS,CAAC,CAAC,QAAyB,EAAE,EAAE;YACvC,MAAM,oBAAoB,GAAG,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;YAChF,MAAM,oBAAoB,GAAG,IAAI,CAAC,KAAK,CAAC,oBAAoB,CAAqB;YAEjF,IAAI,oBAAoB,CAAC,MAAM,EAAE,UAAU,KAAK,GAAG,EAAE;gBACnD,IAAI,CAAC,wBAAwB,CAAC,oBAAoB,EAAE,MAAM,EAAE,UAAU,CAAC;aACxE;YACD,EAAE,CAAC,QAAQ,CAAC,CAAC;QACf,CAAC,EAAE,CAAC,KAAwB,EAAE,EAAE;YAC9B,IAAI,KAAK,CAAC,MAAM,KAAK,GAAG,EAAE;gBACxB,IAAI,CAAC,wBAAwB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;aAC7C;QACH,CAAC,CAAC,CAAC;IACP,CAAC;IAED;;;OAGG;IACK,YAAY,CAAC,IAAiB;QACpC,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;IAChC,CAAC;IACD;;;KAGC;IACO,gBAAgB,CAAC,IAAsB;QAC7C,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;IACpC,CAAC;IACD;;;OAGG;IACI,aAAa,CAAC,EAA8B;QACjD,IAAI,CAAC,YAAY,CAAC,GAAG,CACnB,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC,IAAI,CAAC,0DAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,QAAQ,EAAE,EAAE;YACnF,EAAE,CAAC,QAAQ,CAAC,MAAM,EAAE,UAAU,IAAI,CAAC,CAAC,CAAC;QACvC,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;IACD;;;OAGG;IACK,aAAa;QACnB,IAAI,MAAM,GAAkB,EAAE,CAAC;QAC/B,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,mBAAmB;aACjD,IAAI,CACH,oDAAG,CAAC,CAAC,UAAU,EAAE,EAAE;YACjB,2BAA2B;YAC3B,IAAI,UAAU,KAAK,IAAI,EAAE;gBACvB,MAAM,GAAG,UAAU,CAAC,UAAU,IAAI,EAAE,CAAC;aACtC;YACD,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE;gBACvB,MAAM,CAAC,GAAgB;oBACrB,MAAM,EAAE,CAAC;oBACT,yBAAyB,EAAE,GAAG;oBAC9B,MAAM,EAAE,gBAAgB;oBACxB,cAAc,EAAE,YAAY;iBAC7B,CAAC;gBACF,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;aAChB;QACH,CAAC,CAAC,EACF,0DAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CACzB;aACA,SAAS,EAAE,CAAC,CAAC;QAEhB,OAAO,MAAM,CAAC;IAChB,CAAC;IACD;;;OAGG;IACI,kBAAkB,CAAC,aAAgC;QACxD,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC;IAC7C,CAAC;IACD;;;OAGG;IACI,cAAc,CAAC,WAA2B;QAC/C,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;IACzC,CAAC;IACD;;OAEG;IACI,gBAAgB;QACrB,IAAI,CAAC,KAAK,CAAC,gBAAgB,EAAE,CAAC;IAChC,CAAC;IACD;;OAEG;IACI,QAAQ;QACb,OAAO,IAAI,CAAC,KAAK,CAAC,wBAAwB,CAAC;IAC7C,CAAC;IACD;;OAEG;IACI,KAAK;QACV,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC;IAC7B,CAAC;;gFAp+BU,gBAAgB;kHAAhB,gBAAgB,WAAhB,gBAAgB;;;;;;;;;;;;;;;;;;ACvD7B;;GAEG;AAMI,MAAM,kBAAkB;IAC7B;;OAEG;IACH,qEAAqE;IAC9D,QAAQ,KAAU,CAAC;;oFALf,kBAAkB;gHAAlB,kBAAkB;QCV/B,6EAA0B;QACxB,oEAAuE;QACvE,qEAAI;QAAA,gFAAqB;QAAA,4DAAK;QAC9B,qEAAI;QAAA,oIAAyE;QAAA,4DAAK;;;;;;;;;;;;;;;;;;;;;ACApF;;GAEG;AAMI,MAAM,qBAAqB;IAOhC;;OAEG;IACH,YAAmB,MAAc;QAC/B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IAEvB,CAAC;IACD;;OAEG;IACI,QAAQ;QACb,UAAU,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;IACtD,CAAC;;0FAnBU,qBAAqB;mHAArB,qBAAqB;QCXlC,6EAA0B;QACxB,oEAAuE;QACvE,qEAAI;QAAA,mFAAwB;QAAA,4DAAK;QACjC,qEAAI;QAAA,8IAA8E;QAAA,4DAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACFP;AAK6B;AAEpE;AAIqF;AACV;AAG3E;;;;;;;;;;;;;;;;;ICoB7BM,4DAAA,iBAAuF;IACrFA,oDAAA,GACF;IAAAA,0DAAA,EAAS;;;;IAF4DA,wDAAA,UAAAK,OAAA,CAAAC,EAAA,CAAiB;IACpFN,uDAAA,GACF;IADEA,gEAAA,MAAAK,OAAA,CAAAI,IAAA,SAAAJ,OAAA,CAAAK,IAAA,MACF;;;;;IAIFV,4DAAA,eAGG;IAAAA,oDAAA,GAAkB;IAAAA,0DAAA,EACpB;;;;IADEA,uDAAA,GAAkB;IAAlBA,+DAAA,CAAAY,OAAA,CAAAC,OAAA,CAAkB;;;;;IAJvBb,4DAAA,cAAwE;IACtEA,wDAAA,IAAAe,0CAAA,mBAIC;IACHf,0DAAA,EAAM;;;;;IAHDA,uDAAA,GAAgG;IAAhGA,wDAAA,SAAAgB,MAAA,CAAAC,IAAA,CAAAC,QAAA,iBAAAC,QAAA,CAAAP,OAAA,CAAAQ,IAAA,KAAAJ,MAAA,CAAAC,IAAA,CAAAC,QAAA,iBAAAG,OAAA,CAAgG;;;;;IA2CnGrB,4DAAA,eAKI;IAAAA,oDAAA,GAAkB;IAAAA,0DAAA,EAAO;;;;IAAzBA,uDAAA,GAAkB;IAAlBA,+DAAA,CAAAsB,OAAA,CAAAT,OAAA,CAAkB;;;;;IANxBb,4DAAA,cAAwE;IACtEA,wDAAA,IAAAuB,0CAAA,mBAK6B;IAC/BvB,0DAAA,EAAM;;;;;IAJDA,uDAAA,GAGC;IAHDA,wDAAA,SAAAwB,MAAA,CAAAP,IAAA,CAAAC,QAAA,mBAAAC,QAAA,CAAAG,OAAA,CAAAF,IAAA,MAAAI,MAAA,CAAAP,IAAA,CAAAC,QAAA,mBAAAO,KAAA,IAAAD,MAAA,CAAAP,IAAA,CAAAC,QAAA,mBAAAG,OAAA,EAGC;;;;;;;;;;;;;AD1EhB;;;AAQM,MAAOK,mBAAmB;EA2F9B;;;EAGA;EAEA;;;EAGAC,YACEC,OAA0B,EAC1BC,MAAc,EACdC,cAA8B,EAC9BC,MAAiB,EACjBC,MAAwB,EACxBC,WAAkC,EAClCC,YAAqC,EACrCC,OAA2B;IAxC7B;;;IAGiB,KAAAC,QAAQ,GAAG,IAAIxC,yCAAO,EAAE;IAazC;;;IAGO,KAAAyC,YAAY,GAAgC;MAAEC,KAAK,EAAE;IAAE,CAAC;IAwB7D,IAAI,CAACV,OAAO,GAAGA,OAAO;IACtB,IAAI,CAACC,MAAM,GAAGA,MAAM;IACpB,IAAI,CAACC,cAAc,GAAGA,cAAc;IACpC,IAAI,CAACC,MAAM,GAAGA,MAAM;IACpB,IAAI,CAACC,MAAM,GAAGA,MAAM;IACpB,IAAI,CAACO,gCAAgC,GAAG,IAAI1C,qIAAgC,EAAE;IAC9E,IAAI,CAAC2C,sBAAsB,GAAG,IAAI1C,2HAAsB,EAAE;IAC1D,IAAI,CAACmC,WAAW,GAAGA,WAAW;IAC9B,IAAI,CAACC,YAAY,GAAGA,YAAY,CAACO,WAAW;IAC5C,IAAI,CAACC,GAAG,GAAGb,MAAM,CAACa,GAAG;IACrB,IAAI,CAACC,KAAK,GAAG,EAAE;IACf,IAAI,CAACC,SAAS,GAAG,IAAI,CAACZ,MAAM,CAACY,SAAS,EAAE;IACxC,IAAI,CAACC,cAAc,GAAG,IAAI,CAACb,MAAM,CAACa,cAAc,EAAE;IAClD;IAEA,IAAI,CAAC5B,IAAI,GAAGkB,OAAO,CAACW,KAAK,CAAC;MACxBT,YAAY,EAAE,CAAC,IAAI,EAAE3C,gEAAmB,CAAC;MACzCsD,cAAc,EAAE,CACd,IAAI,EACJ,CAACtD,gEAAmB,EAAEA,iEAAoB,CAAC,CAAC,CAAC,EAAEA,iEAAoB,CAAC,EAAE,CAAC,CAAC,CACzE;MACDyD,OAAO,EAAE,CAAC,IAAI,EAAEzD,gEAAmB;KACpC,CAAC;IACF,QAAQ,IAAI,CAACgD,GAAG;MACd,KAAK,oBAAoB;QACvB;QACA;MACF,KAAK,2BAA2B;QAC9B;QACA;MACF;;EAEJ;EA7IA;;;EAGA;EACA;;;EAGA;EACA;;;EAGA,IAAWU,eAAeA,CAAA;IACxB,OAAO,IAAI,CAACnB,WAAW,CAACmB,eAAe;EACzC;EACA;;;EAGA,IAAWC,WAAWA,CAAA;IACpB,OAAO,IAAI,CAACpB,WAAW,CAACoB,WAAW;EACrC;EACA;;;EAGA,IAAWC,QAAQA,CAAA;IACjB,OAAO,IAAI,CAACrB,WAAW,CAACqB,QAAQ;EAClC;EAsHA;;;EAGOC,QAAQA,CAAA;IACb;IACA,IAAI,CAACvB,MAAM,CAACwB,oBAAoB,CAAEC,QAAQ,IAAI;MAC5C,IAAI,CAACzB,MAAM,CAAC0B,kBAAkB,CAACD,QAAQ,CAAC;IAC1C,CAAC,CAAC;IACF,IAAI,CAACzB,MAAM,CAAC2B,KAAK,EAAE;EACrB;EAEA;;;;EAIOC,WAAWA,CAAA;IAChB,IAAI,CAACxB,QAAQ,CAACyB,IAAI,EAAE;IACpB,IAAI,CAACzB,QAAQ,CAAC0B,QAAQ,EAAE;EAC1B;EACA;;;;EAIOC,cAAcA,CAACzD,EAAU;IAC9B,IAAI,CAACsB,OAAO,CAACoC,IAAI,EAAE;IACnB,IAAI,CAAChC,MAAM,CAACiC,sBAAsB,CAAC3D,EAAE,EAAGmD,QAAQ,IAAI;MAClD,IAAI,CAACpB,YAAY,GAAGoB,QAAQ;MAC5B,IAAI,CAAC7B,OAAO,CAACsC,IAAI,EAAE;IACrB,CAAC,CAAC;EACJ;EAEA;;;EAGOC,MAAMA,CAAA;IACX,IAAI,CAACtC,MAAM,CAACuC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC;EAC7B;EAEA;;;;EAIOC,SAASA,CAACC,IAAY;IAC3B,OAAOC,IAAI,CAACC,KAAK,CAACF,IAAI,CAAC;EACzB;EAEA;;;EAGOG,QAAQA,CAAA;IACb,IAAI,CAAC7C,OAAO,CAACoC,IAAI,EAAE;IACnB,MAAMM,IAAI,GAAG,IAAI,CAACrD,IAAI,CAACyD,KAAK;IAC5B,IAAIC,mBAAyB;IAE7B;IACA,IAAI,CAAC9B,cAAc,CAAC+B,IAAI,CAAC7E,0DAAS,CAAC,IAAI,CAACqC,QAAQ,CAAC,CAAC,CAACyC,SAAS,CAAEpB,QAAQ,IAAI;MACxEkB,mBAAmB,GAAGlB,QAAQ,CAACqB,MAAM,CAACC,CAAC,IAAIA,CAAC,CAACzE,EAAE,IAAIgE,IAAI,CAACjC,YAAY,CAAC;IACvE,CAAC,CAAC;IAEF2C,YAAY,CAACC,OAAO,CAAC,cAAc,EAAEN,mBAAmB,CAAC,CAAC,CAAC,CAAClE,IAAI,CAAC;IACjEuE,YAAY,CAACC,OAAO,CAAC,gBAAgB,EAAEX,IAAI,CAACtB,cAAc,CAAC;IAC3DgC,YAAY,CAACC,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC;IACtC,IAAI,CAACjD,MAAM,CAACkD,gBAAgB,EAAE;IAC9B,IAAI,CAAClD,MAAM,CAACmD,sBAAsB,CAACb,IAAI,EAAE,IAAI,CAACjC,YAAY,EAAE,IAAI,CAACK,GAAG,EAAGe,QAAQ,IAAI;MACjF,IAAI,CAAC7B,OAAO,CAACsC,IAAI,EAAE;MACnB,IAAI,CAAClC,MAAM,CAAC4B,WAAW,EAAE;MACzB,IAAIH,QAAQ,CAAC2B,QAAQ,KAAKC,SAAS,EAAE;QACnC,IAAI,CAACtD,MAAM,CAACuD,IAAI,CAAC3F,yHAAoB,EAAE8D,QAAQ,CAAC2B,QAAQ,CAAC;QACzD,IAAI,CAACvD,MAAM,CAACuC,QAAQ,CAACX,QAAQ,CAAC8B,MAAM,CAAC;OACtC,MAAM;QACL,IAAI,CAAC1D,MAAM,CAACuC,QAAQ,CAACX,QAAQ,CAAC8B,MAAM,EAAE;UAAEC,UAAU,EAAE,IAAI,CAAC1D;QAAc,CAAE,CAAC;;MAE5E,IAAI,CAACb,IAAI,CAACwE,KAAK,EAAE;IACnB,CAAC,CAAC;EACJ;;;mBA1NW/D,mBAAmB,EAAA1B,+DAAA,CAAA2F,2DAAA,GAAA3F,+DAAA,CAAA6F,oDAAA,GAAA7F,+DAAA,CAAA6F,4DAAA,GAAA7F,+DAAA,CAAAgG,gEAAA,GAAAhG,+DAAA,CAAAkG,uEAAA,GAAAlG,+DAAA,CAAAoG,6FAAA,GAAApG,+DAAA,CAAAsG,+GAAA,GAAAtG,+DAAA,CAAAwG,+DAAA;AAAA;;QAAnB9E,mBAAmB;EAAAgF,SAAA;EAAAC,KAAA;EAAAC,IAAA;EAAAC,MAAA;EAAAC,QAAA,WAAAC,6BAAAC,EAAA,EAAAC,GAAA;IAAA,IAAAD,EAAA;MCzBhChH,uDAAA,oBAA8C;MAE9CA,4DAAA,aAAuB;MAmBZA,oDAAA,kCAAsB;MAAAA,0DAAA,EACxB;MACDA,4DAAA,aAAsE;MAIhEA,wDAAA,oBAAAoH,sDAAAC,MAAA;QAAA,OAAUJ,GAAA,CAAAlD,cAAA,CAAAsD,MAAA,CAAAC,MAAA,CAAA5C,KAAA,CAAmC;MAAA,EAAC;MAO9C1E,4DAAA,iBAA8B;MAAAA,oDAAA,uCAA+B;MAAAA,0DAAA,EAAS;MACtEA,wDAAA,KAAAuH,sCAAA,qBAES;;;MACXvH,0DAAA,EAAS;MAEXA,wDAAA,KAAAwH,mCAAA,kBAMM;MACRxH,0DAAA,EAAM;MAIVA,4DAAA,eAA2B;MAmBpBA,oDAAA,2BAAc;MAAAA,0DAAA,EAChB;MACDA,4DAAA,cAAsE;MACpEA,uDAAA,iBAWE;MACFA,wDAAA,KAAAyH,mCAAA,kBAOM;MACRzH,0DAAA,EAAM;MAIVA,4DAAA,eAAmD;MACjDA,uDAAA,sBAAmD;MACrDA,0DAAA,EAAM;MAENA,4DAAA,eAA2B;MAEmEA,wDAAA,mBAAA0H,sDAAA;QAAA,OAAST,GAAA,CAAA9C,MAAA,EAAQ;MAAA,EAAC;MAC1GnE,uDAAA,eAAqD;MAAAA,oDAAA,eACvD;MAAAA,0DAAA,EAAS;MACTA,4DAAA,kBASC;MADCA,wDAAA,mBAAA2H,sDAAA;QAAA,OAASV,GAAA,CAAAxC,QAAA,EAAU;MAAA,EAAC;MAEpBzE,oDAAA,kBAAS;MAAAA,uDAAA,eAAwD;MACnEA,0DAAA,EAAS;;;MAjHTA,uDAAA,GAAkB;MAAlBA,wDAAA,cAAAiH,GAAA,CAAAhG,IAAA,CAAkB;MAgBhBjB,uDAAA,GAAqB;MAArBA,wDAAA,sBAAqB;MAQjBA,uDAAA,GAIE;MAJFA,wDAAA,YAAAA,6DAAA,KAAA6H,GAAA,EAAAZ,GAAA,CAAAhG,IAAA,CAAAC,QAAA,iBAAA4G,OAAA,KAAAb,GAAA,CAAAhG,IAAA,CAAAC,QAAA,iBAAAO,KAAA,IAAAwF,GAAA,CAAAhG,IAAA,CAAAC,QAAA,iBAAAG,OAAA,GAIE;MAGuBrB,uDAAA,GAA0C;MAA1CA,wDAAA,YAAAA,yDAAA,SAAAA,yDAAA,SAAAiH,GAAA,CAAApE,cAAA,WAA0C;MAKhB7C,uDAAA,GAAe;MAAfA,wDAAA,YAAAiH,GAAA,CAAA/E,YAAA,CAAe;MAgBxElC,uDAAA,GAAqB;MAArBA,wDAAA,sBAAqB;MAanBA,uDAAA,GAAqB;MAArBA,wDAAA,sBAAqB;MASnBA,uDAAA,GAA+B;MAA/BA,wDAAA,YAAAiH,GAAA,CAAA5E,YAAA,kBAAA4E,GAAA,CAAA5E,YAAA,CAAAC,KAAA,CAA+B,YAAAtC,6DAAA,KAAAiI,GAAA,EAAAhB,GAAA,CAAAhG,IAAA,CAAAC,QAAA,mBAAA4G,OAAA,KAAAb,GAAA,CAAAhG,IAAA,CAAAC,QAAA,mBAAAO,KAAA,IAAAwF,GAAA,CAAAhG,IAAA,CAAAC,QAAA,mBAAAG,OAAA;MAOsBrB,uDAAA,GAAe;MAAfA,wDAAA,YAAAiH,GAAA,CAAA/E,YAAA,CAAe;MAsBtElC,uDAAA,GAAyB;MAAzBA,wDAAA,aAAAiH,GAAA,CAAAhG,IAAA,CAAA6G,OAAA,CAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;AC1GnC,iHAAiH;AACjH,0EAA0E;AAEsD;AACV;;;;;;;;;;AACtH;;GAEG;AAMI,MAAM,gBAAgB;IAiB3B;;OAEG;IACH,kCAAkC;IAClC;;OAEG;IACH,YACE,MAAiB;QAGjB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,qCAAqC;QACrC,IAAI,CAAC,gCAAgC,GAAG,IAAI,qIAAgC,EAAE,CAAC;QAC/E,IAAI,CAAC,sBAAsB,GAAG,IAAI,2HAAsB,EAAE,CAAC;IAC7D,CAAC;IACD;;OAEG;IACH,qEAAqE;IAC9D,QAAQ;QACb,oBAAoB;IACtB,CAAC;;gFAvCU,gBAAgB;8GAAhB,gBAAgB;QCf7B,2EAA8C;QAC9C,yEAAyD;QAI9C,+GAAoD;QAAA,4DAAI;QAE7D,yEAQC;QAUG,8DAOC;QAPD,yEAOC;QACC,sEAGE;QAqCJ,4DAAM;QACN,+DAAwD;QAAxD,yEAAwD;QAAA,oFAAmB;QAAA,4DAAI;QAEjF,0EAQC;QACC,8DAOC;QAPD,2EAOC;QACC,uEAGE;QA0CJ,4DAAM;QACN,+DAAwD;QAAxD,yEAAwD;QAAA,qFAAyB;QAAA,4DAAI;QAEvF,0EAQC;QACC,8DAOC;QAPD,2EAOC;QAEG,uEAGE;QAyCJ,4DAAI;QACJ,wEAAM;QAEF,uEAAwF;QAC1F,4DAAW;QAGf,+DAAwD;QAAxD,yEAAwD;QAAA,2EAAe;QAAA,4DAAI;;QAjNxD,0DAA2B;QAA3B,oFAA2B;QAsB9C,0DAAwC;QAAxC,6IAAwC;QAmDX,2DAA0B;QAA1B,mFAA0B;QASvD,0DAA2C;QAA3C,6IAA2C;QAwDd,2DAA0B;QAA1B,mFAA0B;QASvD,0DAAoC;QAApC,6IAAoC;QA8DP,2DAA0B;QAA1B,mFAA0B;;;;;;;;;;;;;;;;;;;;ACjNf;;;;AAKlD;;GAEG;AAII,MAAM,kBAAkB;IAU7B;;OAEG;IACH,YAAmB,WAAkC,EAAE,MAAc;QACnE,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;IAED;;OAEG;IACI,OAAO;QACZ,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,eAAe,EAAE;YACrC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;SAC7B;QAED,OAAO,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC;IAC1C,CAAC;;oFA3BU,kBAAkB;mHAAlB,kBAAkB,WAAlB,kBAAkB,mBAFjB,MAAM;;;;;;;;;;;;;;;;;;;;;;ACV2F;AAGjE;AACK;;;;AAKnD;;GAEG;AAEI,MAAM,sBAAsB;IAUjC;;;;OAIG;IACH,YAAmB,MAAc,EAAE,YAA0B;QAC3D,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;IACnC,CAAC;IAED;;;;;OAKG;IACI,SAAS,CAAC,OAAyB,EAAE,IAAiB;QAC3D,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAC9B,qDAAK,CAAC,CAAC,CAAC,EACR,0DAAU,CAAC,CAAC,aAAgC,EAAE,EAAE;YAC9C,IAAI,aAAa,CAAC,MAAM,KAAK,GAAG,EAAE;gBAChC,MAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,iBAAiB,CAAC,aAAa,CAAC,CAAC;gBAEpE,MAAM,SAAS,GAAG,IAAI,GAAG,CAAc,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;gBAExE,IAAI,MAAM,GAAa,EAAE,CAAC;gBAE1B,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,MAAM,GAAG,CAAC,GAAG,MAAM,EAAE,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;aAC1G;YAED,IAAI,aAAa,CAAC,MAAM,KAAK,GAAG,EAAE;gBAChC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC;aACzC;YAED,IAAI,aAAa,CAAC,MAAM,KAAK,GAAG,EAAE;gBAChC,MAAM,KAAK,GAAa,aAAa,CAAC,KAAK,CAAC;gBAE5C,OAAO,CAAC,GAAG,CAAC,aAAa,EAAE,KAAK,CAAC,CAAC;aACnC;YAED,OAAO,gDAAU,CAAC,aAAa,CAAC,CAAC;QACnC,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;;4FArDU,sBAAsB;uHAAtB,sBAAsB,WAAtB,sBAAsB;;;;;;;;;;;;;;;;;;ACbyD;;;AAM5F;;GAEG;AAEI,MAAM,uBAAuB;IAMlC;;;OAGG;IACH,YAAmB,WAAkC;QACnD,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;IACjC,CAAC;IAED;;;;;OAKG;IACI,SAAS,CAAC,GAAqB,EAAE,IAAiB;QACvD,IAAI,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;YAC3B,IAAI,IAAI,CAAC,WAAW,CAAC,eAAe,EAAE;gBACpC,MAAM,OAAO,GAAG,GAAG,CAAC,KAAK,CAAC;oBACxB,OAAO,EAAE,IAAI,CAAC,WAAW,CAAC,UAAU,EAAE;iBACvC,CAAC,CAAC;gBAEH,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;aAC7B;SACF;QAED,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IAC1B,CAAC;;8FAhCU,uBAAuB;wHAAvB,uBAAuB,WAAvB,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;ACV2B;AAMf;AAEyE;AACtB;;;;;;AAGnG;;GAEG;AAII,MAAM,qBAAqB;IA6EhC;;OAEG;IACH,YACE,UAAsB,EACtB,wBAAkD,EAClD,MAAiB,EACjB,MAAc;QAEd,IAAI,CAAC,aAAa,GAAG,wBAAwB,CAAC;QAC9C,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,gBAAgB,GAAG,KAAK,CAAC;QAC9B,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;QAC1B,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;QACvB,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC;QACjB,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC;QACjB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,sBAAsB,GAAG,IAAI,2HAAsB,EAAE,CAAC;QAC3D,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;IAlDD;;OAEG;IACH,IAAW,eAAe;QACxB,OAAO,IAAI,CAAC,gBAAgB,CAAC;IAC/B,CAAC;IACD;;OAEG;IACH,IAAW,WAAW;QACpB,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IACD;;OAEG;IACH,IAAW,QAAQ;QACjB,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IACD;;OAEG;IACH,IAAW,KAAK;QACd,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IACD;;OAEG;IACH,IAAW,KAAK;QACd,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAuBD;;;;;;OAMG;IACI,YAAY,CACjB,KAAa,EACb,cAAsB,EACtB,cAAsB,EACtB,YAAoB;QAEpB,MAAM,IAAI,GAAG;YACX,OAAO,EAAE,KAAK;YACd,WAAW,EAAE,KAAK;YAClB,cAAc;YACd,cAAc;YACd,YAAY;SACb,CAAC;QAEF,OAAO,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAC3C,yDAAS,CAAC,CAAC,GAAG,EAAE,EAAE;YAChB,OAAO,IAAI,CAAC,UAAU;iBACnB,IAAI,CAAoB,GAAG,GAAG,eAAe,EAAE,IAAI,EAAE;gBACpD,OAAO,EAAE,IAAI,6DAAW,CAAC;oBACvB,cAAc,EAAE,kBAAkB;oBAClC,eAAe,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG;iBACjC,CAAC;aACH,CAAC;iBACD,IAAI,CACH,mDAAG,CAAC,CAAC,CAAC,EAAE,EAAE;gBACR,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC;gBACtB,2BAA2B;gBAC3B,IAAI,CAAC,CAAC,OAAO,EAAE;oBACb,IAAI,CAAC,gBAAgB,GAAG,CAAC,CAAC,OAAO,CAAC;oBAClC,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC,WAAW,CAAC;oBAClC,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,QAAQ,CAAC;oBAC5B,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC;iBAEvB;qBAAM;oBAEL,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,qGAAoB,EAAE;wBACrC,IAAI,EAAE,IAAI,CAAC,sBAAsB,CAAC,WAAW,CAAC,SAAS,CAAC;wBACxD,KAAK,EAAE,OAAO;wBACd,MAAM,EAAE,OAAO;wBACf,UAAU,EAAE,kBAAkB;wBAC9B,SAAS,EAAE,KAAK;wBAChB,YAAY,EAAE,KAAK;wBACnB,YAAY,EAAE,IAAI;qBACnB,CAAC,CAAC;oBACH,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;iBAC7B;YACH,CAAC,CAAC,CACH,CAAC;QACN,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;IAED;;;OAGG;IACI,UAAU;QACf,IAAI,OAAO,GAAG,IAAI,6DAAW,EAAE,CAAC;QAEhC,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,kBAAkB,CAAC,CAAC;QAC1D,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,eAAe,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAExD,OAAO,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;IACxC,CAAC;IAED;;;;OAIG;IACK,gBAAgB,CAAC,OAAoB;QAC3C,IAAI,IAAI,CAAC,MAAM,KAAK,EAAE,EAAE;YACtB,OAAO,OAAO,CAAC;SAChB;QACD,MAAM,UAAU,GAAG,UAAU,IAAI,CAAC,MAAM,EAAE,CAAC;QAE3C,OAAO,OAAO,CAAC,GAAG,CAAC,eAAe,EAAE,UAAU,CAAC,CAAC;IAElD,CAAC;;0FAvLU,qBAAqB;sHAArB,qBAAqB,WAArB,qBAAqB,mBAFpB,MAAM;;;;;;;;;;;;;;;;;;ACXpB;;GAEG;AAEI,MAAM,YAAY;IACvB;;;OAGG;IACI,qBAAqB,CAAC,KAAY;QACvC,OAAO,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;IAC1D,CAAC;IAED;;;OAGG;IACI,qBAAqB,CAAC,QAA2B;QACtD,OAAO,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,wBAAwB,CAAC;IACxE,CAAC;IAED;;;OAGG;IACI,wBAAwB,CAAC,QAA2B;QACzD,OAAO,QAAQ,CAAC,OAAO,CAAC;IAC1B,CAAC;IAED;;;OAGG;IACI,iBAAiB,CAAC,QAA2B;QAClD,MAAM,QAAQ,GAAa;YACzB,GAAG,QAAQ,CAAC,KAAK;SAClB,CAAC;QAEF,OAAO,QAAQ,CAAC;IAClB,CAAC;;wEAnCU,YAAY;6GAAZ,YAAY,WAAZ,YAAY;;;;;;;;;;;;;;;;;;ACPzB;;GAEG;AAII,MAAM,gBAAgB;IAEpB,YAAY;QAEjB,KAAK,CAAC,yBAAyB,CAAC;aAC7B,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;aACnC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE;YACb,YAAY,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;QACtC,CAAC,CAAC,CAAC;IACP,CAAC;;gFATU,gBAAgB;iHAAhB,gBAAgB,WAAhB,gBAAgB,mBAFf,MAAM;;;;;;;;;;;;;;;;;;ACJpB;;GAEG;AAEI,MAAM,cAAc;IACzB;;;;OAIG;IACI,QAAQ,CAAC,OAAe,EAAE,IAAU;QACzC,OAAO,CAAC,GAAG,CAAC,mBAAmB,OAAO,EAAE,EAAE,IAAI,CAAC,CAAC;IAClD,CAAC;IAED;;;;OAIG;IACI,UAAU,CAAC,OAAe,EAAE,IAAU;QAC3C,OAAO,CAAC,IAAI,CAAC,mBAAmB,OAAO,EAAE,EAAE,IAAI,CAAC,CAAC;IACnD,CAAC;IAED;;;;OAIG;IACI,QAAQ,CAAC,OAAe,EAAE,KAAa;QAC5C,gCAAgC;QAChC,OAAO,CAAC,GAAG,CAAC,mBAAmB,OAAO,EAAE,EAAE,KAAK,CAAC,CAAC;IACnD,CAAC;;4EA3BU,cAAc;+GAAd,cAAc,WAAd,cAAc;;;;;;;;;;;;;;;;;;ACF3B;;GAEG;AAEI,MAAM,uBAAuB;IADpC;QAEE;;WAEG;QACI,gBAAW,GAAmB;YACnC;gBACE,IAAI,EAAE,UAAU;gBAChB,OAAO,EAAE,6BAA6B;aACvC;YACD;gBACE,IAAI,EAAE,WAAW;gBACjB,OAAO,EAAE,gCAAgC;aAC1C;YACD;gBACE,IAAI,EAAE,WAAW;gBACjB,OAAO,EAAE,yCAAyC;aACnD;YACD;gBACE,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,8CAA8C;aACxD;YACD;gBACE,IAAI,EAAE,KAAK;gBACX,OAAO,EAAE,gDAAgD;aAC1D;YACD;gBACE,IAAI,EAAE,YAAY;gBAClB,OAAO,EAAE,8CAA8C;aACxD;SACF,CAAC;KACH;;8FA9BY,uBAAuB;wHAAvB,uBAAuB,WAAvB,uBAAuB;;;;;;;;;;;;;;;;ACRpC,sBAAsB;AACtB,IAAY,KASX;AATD,WAAY,KAAK;IACf;;OAEG;IACH,qDAAmB;IACnB;;OAEG;IACH,iDAAiB;AACnB,CAAC,EATW,KAAK,KAAL,KAAK,QAShB;;;;;;;;;;;;;;;;;;;;;;ACNwD;AACd;;;;AAI3C;;GAEG;AAEI,MAAM,kBAAkB;IA8B7B;;OAEG;IACH,YACE,KAAqB,EACrB,qCAA4E;QAtB9E;;WAEG;QACI,aAAQ,GAAG,IAAI,yCAAO,EAAW,CAAC;QACzC;;WAEG;QACa,gBAAW,GAAG,GAA4B,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC;QACpF;;WAEG;QACa,iCAA4B,GAAG,GAAiD,EAAE,CAChG,IAAI,CAAC,KAAK,CAAC,4BAA4B;QACzC;;WAEG;QACa,cAAS,GAAG,GAA0B,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC;QAQ5E,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,qCAAqC,GAAG,qCAAqC,CAAC;QACnF,IAAI,CAAC,YAAY,GAAG,IAAI,8CAAY,EAAE,CAAC;IACzC,CAAC;IACD;;;OAGG;IACI,WAAW;QAChB,IAAI,CAAC,mBAAmB,EAAE,CAAC;QAC3B,UAAU,CAAC,GAAG,EAAE;YACd,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YACrB,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC;QAC3B,CAAC,EAAE,IAAI,CAAC,CAAC;IACX,CAAC;IACD;;OAEG;IACI,mBAAmB;QACxB,IAAI,CAAC,YAAY,CAAC,WAAW,EAAE,CAAC;IAClC,CAAC;IACD;;OAEG;IACH,IAAW,MAAM;QACf,OAAO,IAAI,CAAC,KAAK,CAAC,sBAAsB,CAAC;IAC3C,CAAC;IACD;;;OAGG;IACI,iBAAiB,CAAC,EAAkD;QACzE,IAAI,CAAC,qCAAqC,CAAC,4BAA4B,CAAC,EAAE,uBAAuB,EAAE,CAAC,EAAE,CAAC;aACpG,IAAI,CAAC,yDAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;aAC9B,SAAS,CAAC,CAAC,QAAQ,EAAE,EAAE;YACtB,EAAE,CAAC,QAAQ,CAAC,CAAC;QACf,CAAC,CAAC,CAAC;IACP,CAAC;IACD;;;OAGG;IACI,cAAc,CAAC,EAAmC;QACvD,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW;aACzC,IAAI,CAAC,yDAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;aAC9B,SAAS,CAAC,CAAC,QAAQ,EAAE,EAAE;YACtB,EAAE,CAAC,QAAQ,CAAC,CAAC;QACf,CAAC,CAAC,CAAC,CAAC;IACR,CAAC;IAEM,8BAA8B,CAAC,IAAgC;QACpE,IAAI,CAAC,KAAK,CAAC,8BAA8B,CAAC,IAAI,CAAC,CAAC;IAClD,CAAC;IACD;;;OAGG;IACI,UAAU,CAAC,OAA0B;QAC1C,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QAC/B,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;IACvC,CAAC;;oFAjGU,kBAAkB;mHAAlB,kBAAkB,WAAlB,kBAAkB;;;;;;;;;;;;;;;;;;;;;ACZ0F;AAChC;;;;AAGzF;;GAEG;AAMI,MAAM,eAAe;IAa1B,YAAmB,MAAiB;QAClC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,gCAAgC,GAAG,IAAI,8HAAgC,EAAE,CAAC;IACjF,CAAC;IAEM,aAAa;QAClB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,8FAAoB,EAAE;YACrC,IAAI,EAAE,IAAI,CAAC,gCAAgC,CAAC,iBAAiB,EAAE;YAC/D,KAAK,EAAE,OAAO;YACd,MAAM,EAAE,OAAO;YACf,UAAU,EAAE,kBAAkB;YAC9B,SAAS,EAAE,KAAK;YAChB,YAAY,EAAE,KAAK;YACnB,YAAY,EAAE,IAAI;SACnB,CAAC,CAAC;IACL,CAAC;;8EA5BU,eAAe;6GAAf,eAAe;QCb5B,yEAQC;QAIK,2EAAe;QAAA,oEAAG;QAAA,6FAAkC;QAAA,4DAAI;QAAA,4KACpB;QAAA,uEAA0C;QAA1B,kIAAS,mBAAe,IAAC;QAAC,wFAAwB;QAAA,4DAAI;QAI9G,yEAWC;QAEG,uKACF;QAAA,4DAAI;QACJ,0EAOC;QAEG,qEAAsF;QACtF,wEAA0B;QAAA,gEAAI;QAAA,4DAAI;QAEpC,0EAA6F;QAC3F,sEAAyF;QACzF,wEAA0B;QAAA,+DAAG;QAAA,4DAAI;QAEnC,0EAA6F;QAC3F,sEAAoF;QACpF,wEAA0B;QAAA,+DAAG;QAAA,4DAAI;QAEnC,0EAA6F;QAC3F,sEAAkF;QAClF,wEAA0B;QAAA,+DAAG;QAAA,4DAAI;QAKvC,2EASC;QACC,sEAIE;QACJ,4DAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;IE1ER,sEAAmD;IAI3C,oEAAuE;IACzE,4DAAM;IACN,uEAWC;IACC,wFACF;IAAA,4DAAI;IACJ,uEAA8C;IAAA,2EAAgB;IAAA,4DAAI;IAGtE,yEAAmE;IACjE,qEAAiC;IACnC,4DAAM;;;;IAGN,yEAA8B;IAGxB,oEAAuE;IACzE,4DAAM;IACN,0EAOC;IACgC,sFAA2B;IAAA,4DAAI;IAC9D,wEAA2B;IAAA,2EAAgB;IAAA,4DAAI;IAEjD,0EAAwC;IACN,sSAAS,0EAAS,KAAC;IACjD,sEAAiE;IAAA,+EACnE;IAAA,4DAAS;IAEX,2EAAgF;IAC9C,sSAAS,0EAAS,KAAC;IACjD,sEAAiE;IAAA,kEACnE;IAAA,4DAAS;IAIf,2EAAqD;IACE,wDAAqC;IAAA,4DAAI;;;IAAzC,2DAAqC;IAArC,uHAAqC;;ADtD9F;;GAEG;AAMI,MAAM,eAAe;IA4B1B;;OAEG;IACH,YAAmB,MAAc;QAC/B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;IAZD;;OAEG;IACI,QAAQ;QACb,IAAI,CAAC,SAAS,GAAG,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,IAAI,GAAG,CAAC;QAC1E,IAAI,CAAC,QAAQ,GAAG,YAAY,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,IAAI,EAAE,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,IAAI,GAAG,CAAC;IAC1F,CAAC;IAOD;;OAEG;IACI,OAAO;QACZ,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE;YACpC,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;QAC3B,CAAC,CAAC,CAAC;IACL,CAAC;;8EAzCU,eAAe;6GAAf,eAAe;QCX5B,4GA0BM;QACN,wMAgCc;;;QA3DR,8FAAgC;;;;;;;;;;;;;;;;;ACEtC;;GAEG;AACI,MAAM,gCAAgC;IAA7C;QACE;;WAEG;QACc,iBAAY,GAAqB,EAAE,CAAC;IA+YvD,CAAC;IA9YC;;OAEG;IACI,iBAAiB;QACtB,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,KAAK,CAAC;QAC5C,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,QAAQ,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,OAAO,CAAC;QACvD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,KAAK,CAAC;QACrD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,KAAK,CAAC;QACrD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,KAAK,CAAC;QACrD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,KAAK,CAAC;QACtD,IAAI,CAAC,YAAY,CAAC,4BAA4B,GAAG,OAAO,CAAC;QACzD,IAAI,CAAC,YAAY,CAAC,gBAAgB;YAChC,8MAA8M,CAAC;QACjN,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,MAAM,CAAC;QAClD,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,MAAM,CAAC;QAClD,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,MAAM,CAAC;QAClD,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,MAAM,CAAC;QAClD,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,MAAM,CAAC;QAClD,IAAI,CAAC,YAAY,CAAC,uBAAuB,GAAG,MAAM,CAAC;QACnD,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,IAAI,CAAC;QAChD,IAAI,CAAC,YAAY,CAAC,yBAAyB,GAAG,IAAI,CAAC;QACnD,IAAI,CAAC,YAAY,CAAC,gBAAgB,GAAG,MAAM,CAAC;QAC5C,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,QAAQ,CAAC;QAC1C,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,IAAI,CAAC;QACtC,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,QAAQ,CAAC;QAC3C,IAAI,CAAC,YAAY,CAAC,KAAK,GAAG,aAAa,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,MAAM,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,MAAM,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,MAAM,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,MAAM,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,MAAM,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,MAAM,CAAC;QACzC,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,MAAM,CAAC;QACzC,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,MAAM,CAAC;QACzC,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,MAAM,CAAC;QACzC,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,MAAM,CAAC;QACzC,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,MAAM,CAAC;QACzC,IAAI,CAAC,YAAY,CAAC,cAAc,GAAG,MAAM,CAAC;QAC1C,IAAI,CAAC,YAAY,CAAC,gBAAgB,GAAG,MAAM,CAAC;QAC5C,IAAI,CAAC,YAAY,CAAC,mBAAmB,GAAG,MAAM,CAAC;QAC/C,IAAI,CAAC,YAAY,CAAC,UAAU,GAAG,IAAI,CAAC;QACpC,IAAI,CAAC,YAAY,CAAC,cAAc,GAAG,SAAS,CAAC;QAC7C,IAAI,CAAC,YAAY,CAAC,cAAc,GAAG,QAAQ,CAAC;QAC5C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,kBAAkB,GAAG,OAAO,CAAC;QAE/C,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IAED;;OAEG;IACI,kBAAkB,CAAC,OAAe;QACvC,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,IAAI,CAAC;QAC3C,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,OAAO,CAAC;QACvD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,OAAO,CAAC;QACvD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,KAAK,CAAC;QACrD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,KAAK,CAAC;QACrD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,KAAK,CAAC;QACrD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,KAAK,CAAC;QACtD,IAAI,CAAC,YAAY,CAAC,4BAA4B,GAAG,OAAO,CAAC;QACzD,IAAI,CAAC,YAAY,CAAC,gBAAgB,GAAG,MAAM,OAAO,MAAM,CAAC;QACzD,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,MAAM,CAAC;QAClD,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,MAAM,CAAC;QAClD,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,MAAM,CAAC;QAClD,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,MAAM,CAAC;QAClD,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,MAAM,CAAC;QAClD,IAAI,CAAC,YAAY,CAAC,uBAAuB,GAAG,MAAM,CAAC;QACnD,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,IAAI,CAAC;QAChD,IAAI,CAAC,YAAY,CAAC,yBAAyB,GAAG,IAAI,CAAC;QACnD,IAAI,CAAC,YAAY,CAAC,gBAAgB,GAAG,MAAM,CAAC;QAC5C,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,QAAQ,CAAC;QAC1C,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,IAAI,CAAC;QACtC,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,QAAQ,CAAC;QAC3C,IAAI,CAAC,YAAY,CAAC,KAAK,GAAG,aAAa,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,MAAM,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,MAAM,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,MAAM,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,MAAM,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,MAAM,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,MAAM,CAAC;QACzC,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,MAAM,CAAC;QACzC,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,MAAM,CAAC;QACzC,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,MAAM,CAAC;QACzC,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,MAAM,CAAC;QACzC,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,MAAM,CAAC;QACzC,IAAI,CAAC,YAAY,CAAC,cAAc,GAAG,MAAM,CAAC;QAC1C,IAAI,CAAC,YAAY,CAAC,gBAAgB,GAAG,MAAM,CAAC;QAC5C,IAAI,CAAC,YAAY,CAAC,mBAAmB,GAAG,MAAM,CAAC;QAC/C,IAAI,CAAC,YAAY,CAAC,UAAU,GAAG,IAAI,CAAC;QACpC,IAAI,CAAC,YAAY,CAAC,cAAc,GAAG,SAAS,CAAC;QAC7C,IAAI,CAAC,YAAY,CAAC,cAAc,GAAG,SAAS,CAAC;QAC7C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,kBAAkB,GAAG,OAAO,CAAC;QAE/C,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IAED;;OAEG;IACI,oBAAoB,CAAC,OAAe;QACzC,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,IAAI,CAAC;QAC3C,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,OAAO,CAAC;QACvD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,OAAO,CAAC;QACvD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,KAAK,CAAC;QACrD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,KAAK,CAAC;QACrD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,KAAK,CAAC;QACrD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,KAAK,CAAC;QACtD,IAAI,CAAC,YAAY,CAAC,4BAA4B,GAAG,OAAO,CAAC;QACzD,IAAI,CAAC,YAAY,CAAC,gBAAgB,GAAG,MAAM,OAAO,MAAM,CAAC;QACzD,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,MAAM,CAAC;QAClD,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,MAAM,CAAC;QAClD,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,MAAM,CAAC;QAClD,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,MAAM,CAAC;QAClD,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,MAAM,CAAC;QAClD,IAAI,CAAC,YAAY,CAAC,uBAAuB,GAAG,MAAM,CAAC;QACnD,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,IAAI,CAAC;QAChD,IAAI,CAAC,YAAY,CAAC,yBAAyB,GAAG,IAAI,CAAC;QACnD,IAAI,CAAC,YAAY,CAAC,gBAAgB,GAAG,MAAM,CAAC;QAC5C,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,QAAQ,CAAC;QAC1C,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,IAAI,CAAC;QACtC,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,QAAQ,CAAC;QAC3C,IAAI,CAAC,YAAY,CAAC,KAAK,GAAG,aAAa,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,MAAM,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,MAAM,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,MAAM,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,MAAM,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,MAAM,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,MAAM,CAAC;QACzC,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,MAAM,CAAC;QACzC,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,MAAM,CAAC;QACzC,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,MAAM,CAAC;QACzC,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,MAAM,CAAC;QACzC,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,MAAM,CAAC;QACzC,IAAI,CAAC,YAAY,CAAC,cAAc,GAAG,MAAM,CAAC;QAC1C,IAAI,CAAC,YAAY,CAAC,gBAAgB,GAAG,MAAM,CAAC;QAC5C,IAAI,CAAC,YAAY,CAAC,mBAAmB,GAAG,MAAM,CAAC;QAC/C,IAAI,CAAC,YAAY,CAAC,UAAU,GAAG,IAAI,CAAC;QACpC,IAAI,CAAC,YAAY,CAAC,cAAc,GAAG,SAAS,CAAC;QAC7C,IAAI,CAAC,YAAY,CAAC,cAAc,GAAG,SAAS,CAAC;QAC7C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,kBAAkB,GAAG,OAAO,CAAC;QAE/C,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IACD;;OAEG;IACI,iBAAiB;QACtB,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,IAAI,CAAC;QAC3C,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,OAAO,CAAC;QACvD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,OAAO,CAAC;QACvD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,KAAK,CAAC;QACrD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,KAAK,CAAC;QACrD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,KAAK,CAAC;QACrD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,KAAK,CAAC;QACtD,IAAI,CAAC,YAAY,CAAC,4BAA4B,GAAG,OAAO,CAAC;QACzD,IAAI,CAAC,YAAY,CAAC,gBAAgB,GAAG,ySAAyS,CAAC;QAC/U,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,MAAM,CAAC;QAClD,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,MAAM,CAAC;QAClD,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,MAAM,CAAC;QAClD,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,MAAM,CAAC;QAClD,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,MAAM,CAAC;QAClD,IAAI,CAAC,YAAY,CAAC,uBAAuB,GAAG,MAAM,CAAC;QACnD,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,IAAI,CAAC;QAChD,IAAI,CAAC,YAAY,CAAC,yBAAyB,GAAG,IAAI,CAAC;QACnD,IAAI,CAAC,YAAY,CAAC,gBAAgB,GAAG,MAAM,CAAC;QAC5C,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,QAAQ,CAAC;QAC1C,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,KAAK,CAAC;QACvC,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,QAAQ,CAAC;QAC3C,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,MAAM,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,MAAM,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,MAAM,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,MAAM,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,MAAM,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,MAAM,CAAC;QACzC,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,MAAM,CAAC;QACzC,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,MAAM,CAAC;QACzC,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,MAAM,CAAC;QACzC,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,MAAM,CAAC;QACzC,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,MAAM,CAAC;QACzC,IAAI,CAAC,YAAY,CAAC,cAAc,GAAG,MAAM,CAAC;QAC1C,IAAI,CAAC,YAAY,CAAC,gBAAgB,GAAG,MAAM,CAAC;QAC5C,IAAI,CAAC,YAAY,CAAC,mBAAmB,GAAG,MAAM,CAAC;QAC/C,IAAI,CAAC,YAAY,CAAC,UAAU,GAAG,IAAI,CAAC;QACpC,IAAI,CAAC,YAAY,CAAC,cAAc,GAAG,SAAS,CAAC;QAC7C,IAAI,CAAC,YAAY,CAAC,cAAc,GAAG,WAAW,CAAC;QAC/C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,kBAAkB,GAAG,OAAO,CAAC;QAE/C,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IAED;;OAEG;IACI,sBAAsB;QAC3B,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,IAAI,CAAC;QAC3C,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,OAAO,CAAC;QACvD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,OAAO,CAAC;QACvD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,KAAK,CAAC;QACrD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,KAAK,CAAC;QACrD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,KAAK,CAAC;QACrD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,KAAK,CAAC;QACtD,IAAI,CAAC,YAAY,CAAC,4BAA4B,GAAG,OAAO,CAAC;QACzD,IAAI,CAAC,YAAY,CAAC,gBAAgB,GAAG,yZAAyZ,CAAC;QAC/b,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,MAAM,CAAC;QAClD,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,MAAM,CAAC;QAClD,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,MAAM,CAAC;QAClD,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,MAAM,CAAC;QAClD,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,MAAM,CAAC;QAClD,IAAI,CAAC,YAAY,CAAC,uBAAuB,GAAG,MAAM,CAAC;QACnD,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,IAAI,CAAC;QAChD,IAAI,CAAC,YAAY,CAAC,yBAAyB,GAAG,IAAI,CAAC;QACnD,IAAI,CAAC,YAAY,CAAC,gBAAgB,GAAG,MAAM,CAAC;QAC5C,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,QAAQ,CAAC;QAC1C,IAAI,CAAC,YAAY,CAAC,UAAU,GAAG,IAAI,CAAC;QACpC,IAAI,CAAC,YAAY,CAAC,cAAc,GAAG,SAAS,CAAC;QAC7C,IAAI,CAAC,YAAY,CAAC,cAAc,GAAG,SAAS,CAAC;QAC7C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,kBAAkB,GAAG,OAAO,CAAC;QAE/C,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IAED;;OAEG;IACI,cAAc;QACnB,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,IAAI,CAAC;QAC3C,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,OAAO,CAAC;QACvD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,OAAO,CAAC;QACvD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,KAAK,CAAC;QACrD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,KAAK,CAAC;QACrD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,KAAK,CAAC;QACrD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,KAAK,CAAC;QACtD,IAAI,CAAC,YAAY,CAAC,4BAA4B,GAAG,OAAO,CAAC;QACzD,IAAI,CAAC,YAAY,CAAC,gBAAgB,GAAG,6RAA6R,CAAC;QACnU,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,MAAM,CAAC;QAClD,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,MAAM,CAAC;QAClD,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,MAAM,CAAC;QAClD,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,MAAM,CAAC;QAClD,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,MAAM,CAAC;QAClD,IAAI,CAAC,YAAY,CAAC,uBAAuB,GAAG,MAAM,CAAC;QACnD,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,IAAI,CAAC;QAChD,IAAI,CAAC,YAAY,CAAC,yBAAyB,GAAG,IAAI,CAAC;QACnD,IAAI,CAAC,YAAY,CAAC,gBAAgB,GAAG,MAAM,CAAC;QAC5C,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,QAAQ,CAAC;QAC1C,IAAI,CAAC,YAAY,CAAC,UAAU,GAAG,IAAI,CAAC;QACpC,IAAI,CAAC,YAAY,CAAC,cAAc,GAAG,YAAY,CAAC;QAChD,IAAI,CAAC,YAAY,CAAC,eAAe,GAAG,MAAM,CAAC;QAC3C,IAAI,CAAC,YAAY,CAAC,cAAc,GAAG,SAAS,CAAC;QAC7C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,kBAAkB,GAAG,OAAO,CAAC;QAE/C,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IAED;;OAEG;IACI,qBAAqB;QAC1B,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,IAAI,CAAC;QAC3C,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,OAAO,CAAC;QACvD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,OAAO,CAAC;QACvD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,KAAK,CAAC;QACrD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,KAAK,CAAC;QACrD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,KAAK,CAAC;QACrD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,KAAK,CAAC;QACtD,IAAI,CAAC,YAAY,CAAC,4BAA4B,GAAG,OAAO,CAAC;QACzD,IAAI,CAAC,YAAY,CAAC,gBAAgB,GAAG,8YAA8Y,CAAC;QACpb,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,MAAM,CAAC;QAClD,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,MAAM,CAAC;QAClD,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,MAAM,CAAC;QAClD,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,MAAM,CAAC;QAClD,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,MAAM,CAAC;QAClD,IAAI,CAAC,YAAY,CAAC,uBAAuB,GAAG,MAAM,CAAC;QACnD,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,IAAI,CAAC;QAChD,IAAI,CAAC,YAAY,CAAC,yBAAyB,GAAG,IAAI,CAAC;QACnD,IAAI,CAAC,YAAY,CAAC,gBAAgB,GAAG,MAAM,CAAC;QAC5C,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,QAAQ,CAAC;QAC1C,IAAI,CAAC,YAAY,CAAC,UAAU,GAAG,IAAI,CAAC;QACpC,IAAI,CAAC,YAAY,CAAC,cAAc,GAAG,YAAY,CAAC;QAChD,IAAI,CAAC,YAAY,CAAC,eAAe,GAAG,MAAM,CAAC;QAC3C,IAAI,CAAC,YAAY,CAAC,cAAc,GAAG,SAAS,CAAC;QAC7C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,kBAAkB,GAAG,OAAO,CAAC;QAE/C,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IAED;;OAEG;IACI,uBAAuB;QAC5B,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,IAAI,CAAC;QAC3C,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,OAAO,CAAC;QACvD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,OAAO,CAAC;QACvD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,KAAK,CAAC;QACrD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,KAAK,CAAC;QACrD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,KAAK,CAAC;QACrD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,KAAK,CAAC;QACtD,IAAI,CAAC,YAAY,CAAC,4BAA4B,GAAG,OAAO,CAAC;QACzD,IAAI,CAAC,YAAY,CAAC,gBAAgB,GAAG,kQAAkQ,CAAC;QACxS,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,MAAM,CAAC;QAClD,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,MAAM,CAAC;QAClD,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,MAAM,CAAC;QAClD,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,MAAM,CAAC;QAClD,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,MAAM,CAAC;QAClD,IAAI,CAAC,YAAY,CAAC,uBAAuB,GAAG,MAAM,CAAC;QACnD,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,IAAI,CAAC;QAChD,IAAI,CAAC,YAAY,CAAC,yBAAyB,GAAG,IAAI,CAAC;QACnD,IAAI,CAAC,YAAY,CAAC,gBAAgB,GAAG,MAAM,CAAC;QAC5C,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,QAAQ,CAAC;QAC1C,IAAI,CAAC,YAAY,CAAC,UAAU,GAAG,IAAI,CAAC;QACpC,IAAI,CAAC,YAAY,CAAC,eAAe,GAAG,MAAM,CAAC;QAC3C,IAAI,CAAC,YAAY,CAAC,cAAc,GAAG,OAAO,CAAC;QAC3C,IAAI,CAAC,YAAY,CAAC,cAAc,GAAG,SAAS,CAAC;QAC7C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,kBAAkB,GAAG,OAAO,CAAC;QAE/C,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;CAEF;;;;;;;;;;;;;;;;ACtZD;;GAEG;AACI,MAAM,wBAAwB;IAArC;QACE;;WAEG;QACc,iBAAY,GAAqB,EAAE,CAAC;IAgSvD,CAAC;IA/RC;;OAEG;IACI,WAAW;QAChB,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,IAAI,CAAC;QAC3C,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,OAAO,CAAC;QACvD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,OAAO,CAAC;QACvD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,KAAK,CAAC;QACrD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,KAAK,CAAC;QACrD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,KAAK,CAAC;QACrD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,KAAK,CAAC;QACtD,IAAI,CAAC,YAAY,CAAC,4BAA4B,GAAG,OAAO,CAAC;QACzD,IAAI,CAAC,YAAY,CAAC,UAAU,GAAG,sCAAsC,CAAC;QACtE,IAAI,CAAC,YAAY,CAAC,gBAAgB,GAAG,MAAM,CAAC;QAC5C,IAAI,CAAC,YAAY,CAAC,gBAAgB,GAAG,MAAM,CAAC;QAC5C,IAAI,CAAC,YAAY,CAAC,gBAAgB,GAAG,MAAM,CAAC;QAC5C,IAAI,CAAC,YAAY,CAAC,gBAAgB,GAAG,MAAM,CAAC;QAC5C,IAAI,CAAC,YAAY,CAAC,gBAAgB,GAAG,MAAM,CAAC;QAC5C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,MAAM,CAAC;QAC7C,IAAI,CAAC,YAAY,CAAC,gBAAgB,GAAG,IAAI,CAAC;QAC1C,IAAI,CAAC,YAAY,CAAC,mBAAmB,GAAG,IAAI,CAAC;QAC7C,IAAI,CAAC,YAAY,CAAC,gBAAgB,GAAG,UAAU,CAAC;QAChD,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,QAAQ,CAAC;QAC1C,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,IAAI,CAAC;QAChD,IAAI,CAAC,YAAY,CAAC,yBAAyB,GAAG,IAAI,CAAC;QACnD,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,KAAK,CAAC;QACvC,IAAI,CAAC,YAAY,CAAC,UAAU,GAAG,IAAI,CAAC;QACpC,IAAI,CAAC,YAAY,CAAC,cAAc,GAAG,UAAU,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,kBAAkB,GAAG,MAAM,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,cAAc,GAAG,eAAe,CAAC;QACnD,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,kBAAkB,GAAG,OAAO,CAAC;QAC/C,IAAI,CAAC,YAAY,CAAC,kBAAkB,GAAG,MAAM,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,kBAAkB,GAAG,MAAM,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,kBAAkB,GAAG,MAAM,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,kBAAkB,GAAG,MAAM,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,kBAAkB,GAAG,MAAM,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,mBAAmB,GAAG,MAAM,CAAC;QAC/C,IAAI,CAAC,YAAY,CAAC,UAAU,GAAG,IAAI,CAAC;QACpC,IAAI,CAAC,YAAY,CAAC,cAAc,GAAG,YAAY,CAAC;QAChD,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,kBAAkB,GAAG,OAAO,CAAC;QAC/C,IAAI,CAAC,YAAY,CAAC,kBAAkB,GAAG,MAAM,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,kBAAkB,GAAG,MAAM,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,kBAAkB,GAAG,MAAM,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,kBAAkB,GAAG,MAAM,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,kBAAkB,GAAG,MAAM,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,mBAAmB,GAAG,MAAM,CAAC;QAE/C,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IAED;;OAEG;IACI,WAAW;QAChB,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,IAAI,CAAC;QAC3C,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,OAAO,CAAC;QACvD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,OAAO,CAAC;QACvD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,KAAK,CAAC;QACrD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,KAAK,CAAC;QACrD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,KAAK,CAAC;QACrD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,KAAK,CAAC;QACtD,IAAI,CAAC,YAAY,CAAC,4BAA4B,GAAG,OAAO,CAAC;QACzD,IAAI,CAAC,YAAY,CAAC,UAAU,GAAG,uCAAuC,CAAC;QACvE,IAAI,CAAC,YAAY,CAAC,gBAAgB,GAAG,MAAM,CAAC;QAC5C,IAAI,CAAC,YAAY,CAAC,gBAAgB,GAAG,MAAM,CAAC;QAC5C,IAAI,CAAC,YAAY,CAAC,gBAAgB,GAAG,MAAM,CAAC;QAC5C,IAAI,CAAC,YAAY,CAAC,gBAAgB,GAAG,MAAM,CAAC;QAC5C,IAAI,CAAC,YAAY,CAAC,gBAAgB,GAAG,MAAM,CAAC;QAC5C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,MAAM,CAAC;QAC7C,IAAI,CAAC,YAAY,CAAC,gBAAgB,GAAG,IAAI,CAAC;QAC1C,IAAI,CAAC,YAAY,CAAC,mBAAmB,GAAG,IAAI,CAAC;QAC7C,IAAI,CAAC,YAAY,CAAC,yBAAyB,GAAG,IAAI,CAAC;QACnD,IAAI,CAAC,YAAY,CAAC,gBAAgB,GAAG,MAAM,CAAC;QAC5C,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,QAAQ,CAAC;QAC1C,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,KAAK,CAAC;QACvC,IAAI,CAAC,YAAY,CAAC,UAAU,GAAG,IAAI,CAAC;QACpC,IAAI,CAAC,YAAY,CAAC,cAAc,GAAG,WAAW,CAAC;QAC/C,IAAI,CAAC,YAAY,CAAC,kBAAkB,GAAG,MAAM,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,cAAc,GAAG,gBAAgB,CAAC;QACpD,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,kBAAkB,GAAG,OAAO,CAAC;QAC/C,IAAI,CAAC,YAAY,CAAC,kBAAkB,GAAG,MAAM,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,kBAAkB,GAAG,MAAM,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,kBAAkB,GAAG,MAAM,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,kBAAkB,GAAG,MAAM,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,kBAAkB,GAAG,MAAM,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,mBAAmB,GAAG,MAAM,CAAC;QAC/C,IAAI,CAAC,YAAY,CAAC,UAAU,GAAG,IAAI,CAAC;QACpC,IAAI,CAAC,YAAY,CAAC,cAAc,GAAG,IAAI,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,kBAAkB,GAAG,OAAO,CAAC;QAC/C,IAAI,CAAC,YAAY,CAAC,kBAAkB,GAAG,MAAM,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,kBAAkB,GAAG,MAAM,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,kBAAkB,GAAG,MAAM,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,kBAAkB,GAAG,MAAM,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,kBAAkB,GAAG,MAAM,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,mBAAmB,GAAG,MAAM,CAAC;QAE/C,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IACD;;OAEG;IACI,mBAAmB;QACxB,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,IAAI,CAAC;QAC3C,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,OAAO,CAAC;QACvD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,OAAO,CAAC;QACvD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,KAAK,CAAC;QACrD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,KAAK,CAAC;QACrD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,KAAK,CAAC;QACrD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,KAAK,CAAC;QACtD,IAAI,CAAC,YAAY,CAAC,4BAA4B,GAAG,OAAO,CAAC;QACzD,IAAI,CAAC,YAAY,CAAC,UAAU,GAAG,0BAA0B,CAAC;QAC1D,IAAI,CAAC,YAAY,CAAC,gBAAgB,GAAG,MAAM,CAAC;QAC5C,IAAI,CAAC,YAAY,CAAC,gBAAgB,GAAG,MAAM,CAAC;QAC5C,IAAI,CAAC,YAAY,CAAC,gBAAgB,GAAG,MAAM,CAAC;QAC5C,IAAI,CAAC,YAAY,CAAC,gBAAgB,GAAG,MAAM,CAAC;QAC5C,IAAI,CAAC,YAAY,CAAC,gBAAgB,GAAG,MAAM,CAAC;QAC5C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,MAAM,CAAC;QAC7C,IAAI,CAAC,YAAY,CAAC,gBAAgB,GAAG,IAAI,CAAC;QAC1C,IAAI,CAAC,YAAY,CAAC,mBAAmB,GAAG,IAAI,CAAC;QAC7C,IAAI,CAAC,YAAY,CAAC,yBAAyB,GAAG,IAAI,CAAC;QACnD,IAAI,CAAC,YAAY,CAAC,gBAAgB,GAAG,MAAM,CAAC;QAC5C,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,IAAI,CAAC;QACtC,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,KAAK,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,KAAK,GAAG,aAAa,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,MAAM,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,MAAM,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,MAAM,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,MAAM,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,MAAM,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,MAAM,CAAC;QACzC,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,MAAM,CAAC;QACzC,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,MAAM,CAAC;QACzC,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,MAAM,CAAC;QACzC,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,MAAM,CAAC;QACzC,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,MAAM,CAAC;QACzC,IAAI,CAAC,YAAY,CAAC,cAAc,GAAG,MAAM,CAAC;QAC1C,IAAI,CAAC,YAAY,CAAC,UAAU,GAAG,IAAI,CAAC;QACpC,IAAI,CAAC,YAAY,CAAC,cAAc,GAAG,SAAS,CAAC;QAC7C,IAAI,CAAC,YAAY,CAAC,kBAAkB,GAAG,MAAM,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,cAAc,GAAG,WAAW,CAAC;QAC/C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,kBAAkB,GAAG,OAAO,CAAC;QAC/C,IAAI,CAAC,YAAY,CAAC,kBAAkB,GAAG,MAAM,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,kBAAkB,GAAG,MAAM,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,kBAAkB,GAAG,MAAM,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,kBAAkB,GAAG,MAAM,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,kBAAkB,GAAG,MAAM,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,mBAAmB,GAAG,MAAM,CAAC;QAE/C,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IAED;;OAEG;IACI,aAAa,CAAC,OAAe;QAChC,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,IAAI,CAAC;QAC3C,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,QAAQ,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,OAAO,CAAC;QACvD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,KAAK,CAAC;QACrD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,KAAK,CAAC;QACrD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,KAAK,CAAC;QACrD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,KAAK,CAAC;QACtD,IAAI,CAAC,YAAY,CAAC,4BAA4B,GAAG,OAAO,CAAC;QACzD,IAAI,CAAC,YAAY,CAAC,gBAAgB,GAAI,kBAAkB,OAAO,6CAA6C,CAAC;QAC7G,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,MAAM,CAAC;QAClD,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,MAAM,CAAC;QAClD,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,MAAM,CAAC;QAClD,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,MAAM,CAAC;QAClD,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,MAAM,CAAC;QAClD,IAAI,CAAC,YAAY,CAAC,uBAAuB,GAAG,MAAM,CAAC;QACnD,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,IAAI,CAAC;QAChD,IAAI,CAAC,YAAY,CAAC,yBAAyB,GAAG,IAAI,CAAC;QACnD,IAAI,CAAC,YAAY,CAAC,gBAAgB,GAAG,MAAM,CAAC;QAC5C,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,QAAQ,CAAC;QAC1C,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,IAAI,CAAC;QACtC,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,QAAQ,CAAC;QAC3C,IAAI,CAAC,YAAY,CAAC,KAAK,GAAG,aAAa,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,MAAM,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,MAAM,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,MAAM,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,MAAM,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,MAAM,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,MAAM,CAAC;QACzC,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,MAAM,CAAC;QACzC,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,MAAM,CAAC;QACzC,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,MAAM,CAAC;QACzC,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,MAAM,CAAC;QACzC,IAAI,CAAC,YAAY,CAAC,gBAAgB,GAAG,MAAM,CAAC;QAC5C,IAAI,CAAC,YAAY,CAAC,mBAAmB,GAAG,MAAM,CAAC;QAC/C,IAAI,CAAC,YAAY,CAAC,UAAU,GAAG,IAAI,CAAC;QACpC,IAAI,CAAC,YAAY,CAAC,cAAc,GAAG,SAAS,CAAC;QAC7C,IAAI,CAAC,YAAY,CAAC,cAAc,GAAG,QAAQ,CAAC;QAC5C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,kBAAkB,GAAG,OAAO,CAAC;QAE/C,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IAEH;;OAEG;IACK,gBAAgB,CAAC,MAAc,EAAE,WAAmB;QAC1D,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,IAAI,CAAC;QAC3C,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,OAAO,CAAC;QACvD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,OAAO,CAAC;QACvD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,KAAK,CAAC;QACrD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,KAAK,CAAC;QACrD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,KAAK,CAAC;QACrD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,KAAK,CAAC;QACtD,IAAI,CAAC,YAAY,CAAC,4BAA4B,GAAG,OAAO,CAAC;QACzD,IAAI,CAAC,YAAY,CAAC,UAAU,GAAG,MAAM,CAAC;QACtC,IAAI,CAAC,YAAY,CAAC,gBAAgB,GAAG,MAAM,CAAC;QAC5C,IAAI,CAAC,YAAY,CAAC,gBAAgB,GAAG,MAAM,CAAC;QAC5C,IAAI,CAAC,YAAY,CAAC,gBAAgB,GAAG,MAAM,CAAC;QAC5C,IAAI,CAAC,YAAY,CAAC,gBAAgB,GAAG,MAAM,CAAC;QAC5C,IAAI,CAAC,YAAY,CAAC,gBAAgB,GAAG,MAAM,CAAC;QAC5C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,MAAM,CAAC;QAC7C,IAAI,CAAC,YAAY,CAAC,gBAAgB,GAAG,IAAI,CAAC;QAC1C,IAAI,CAAC,YAAY,CAAC,mBAAmB,GAAG,IAAI,CAAC;QAC7C,IAAI,CAAC,YAAY,CAAC,gBAAgB,GAAG,OAAO,WAAW,OAAO,CAAC;QAC/D,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,MAAM,CAAC;QAClD,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,MAAM,CAAC;QAClD,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,MAAM,CAAC;QAClD,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,MAAM,CAAC;QAClD,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,MAAM,CAAC;QAClD,IAAI,CAAC,YAAY,CAAC,uBAAuB,GAAG,MAAM,CAAC;QACnD,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,IAAI,CAAC;QAChD,IAAI,CAAC,YAAY,CAAC,yBAAyB,GAAG,IAAI,CAAC;QACnD,IAAI,CAAC,YAAY,CAAC,gBAAgB,GAAG,MAAM,CAAC;QAC5C,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,QAAQ,CAAC;QAE1C,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;CACF;;;;;;;;;;;;;;;;ACvSD;;GAEG;AACI,MAAM,sBAAsB;IAAnC;QACE;;WAEG;QACc,iBAAY,GAAqB,EAAE,CAAC;IAmbvD,CAAC;IAlbC;;OAEG;IACI,sBAAsB;QAC3B,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,IAAI,CAAC;QAC3C,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,OAAO,CAAC;QACvD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,OAAO,CAAC;QACvD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,KAAK,CAAC;QACrD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,KAAK,CAAC;QACrD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,KAAK,CAAC;QACrD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,KAAK,CAAC;QACtD,IAAI,CAAC,YAAY,CAAC,4BAA4B,GAAG,OAAO,CAAC;QACzD,IAAI,CAAC,YAAY,CAAC,gBAAgB;YAChC,uHAAuH,CAAC;QAC1H,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,MAAM,CAAC;QAClD,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,MAAM,CAAC;QAClD,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,MAAM,CAAC;QAClD,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,MAAM,CAAC;QAClD,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,MAAM,CAAC;QAClD,IAAI,CAAC,YAAY,CAAC,uBAAuB,GAAG,MAAM,CAAC;QACnD,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,IAAI,CAAC;QAChD,IAAI,CAAC,YAAY,CAAC,yBAAyB,GAAG,IAAI,CAAC;QACnD,IAAI,CAAC,YAAY,CAAC,gBAAgB,GAAG,MAAM,CAAC;QAC5C,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,QAAQ,CAAC;QAC1C,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,IAAI,CAAC;QACtC,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,QAAQ,CAAC;QAC3C,IAAI,CAAC,YAAY,CAAC,KAAK,GAAG,aAAa,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,MAAM,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,MAAM,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,MAAM,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,MAAM,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,MAAM,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,MAAM,CAAC;QACzC,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,MAAM,CAAC;QACzC,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,MAAM,CAAC;QACzC,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,MAAM,CAAC;QACzC,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,MAAM,CAAC;QACzC,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,MAAM,CAAC;QACzC,IAAI,CAAC,YAAY,CAAC,cAAc,GAAG,MAAM,CAAC;QAC1C,IAAI,CAAC,YAAY,CAAC,gBAAgB,GAAG,MAAM,CAAC;QAC5C,IAAI,CAAC,YAAY,CAAC,mBAAmB,GAAG,MAAM,CAAC;QAC/C,IAAI,CAAC,YAAY,CAAC,UAAU,GAAG,IAAI,CAAC;QACpC,IAAI,CAAC,YAAY,CAAC,cAAc,GAAG,SAAS,CAAC;QAC7C,IAAI,CAAC,YAAY,CAAC,cAAc,GAAG,QAAQ,CAAC;QAC5C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,kBAAkB,GAAG,OAAO,CAAC;QAE/C,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IACD;;;OAGG;IACI,WAAW,CAAC,OAA2B;QAC5C,IAAI,YAAY,GAAG,OAAO,CAAC;QAC3B,IAAI,CAAC,YAAY,EAAE;YACjB,YAAY,GAAG,yFAAyF;gBACtG,6IAA6I,CAAC;SACjJ;QACD,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,IAAI,CAAC;QAC3C,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,OAAO,CAAC;QACvD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,OAAO,CAAC;QACvD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,KAAK,CAAC;QACrD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,KAAK,CAAC;QACrD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,KAAK,CAAC;QACrD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,KAAK,CAAC;QACtD,IAAI,CAAC,YAAY,CAAC,4BAA4B,GAAG,OAAO,CAAC;QACzD,IAAI,CAAC,YAAY,CAAC,gBAAgB,GAAG,YAAY,CAAC;QAClD,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,MAAM,CAAC;QAClD,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,MAAM,CAAC;QAClD,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,MAAM,CAAC;QAClD,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,MAAM,CAAC;QAClD,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,MAAM,CAAC;QAClD,IAAI,CAAC,YAAY,CAAC,uBAAuB,GAAG,MAAM,CAAC;QACnD,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,IAAI,CAAC;QAChD,IAAI,CAAC,YAAY,CAAC,yBAAyB,GAAG,IAAI,CAAC;QACnD,IAAI,CAAC,YAAY,CAAC,gBAAgB,GAAG,MAAM,CAAC;QAC5C,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,QAAQ,CAAC;QAC1C,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,IAAI,CAAC;QACtC,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,QAAQ,CAAC;QAC3C,IAAI,CAAC,YAAY,CAAC,KAAK,GAAG,aAAa,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,MAAM,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,MAAM,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,MAAM,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,MAAM,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,MAAM,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,MAAM,CAAC;QACzC,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,MAAM,CAAC;QACzC,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,MAAM,CAAC;QACzC,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,MAAM,CAAC;QACzC,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,MAAM,CAAC;QACzC,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,MAAM,CAAC;QACzC,IAAI,CAAC,YAAY,CAAC,cAAc,GAAG,MAAM,CAAC;QAC1C,IAAI,CAAC,YAAY,CAAC,gBAAgB,GAAG,MAAM,CAAC;QAC5C,IAAI,CAAC,YAAY,CAAC,mBAAmB,GAAG,MAAM,CAAC;QAC/C,IAAI,CAAC,YAAY,CAAC,UAAU,GAAG,IAAI,CAAC;QACpC,IAAI,CAAC,YAAY,CAAC,cAAc,GAAG,SAAS,CAAC;QAC7C,IAAI,CAAC,YAAY,CAAC,cAAc,GAAG,QAAQ,CAAC;QAC5C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,kBAAkB,GAAG,OAAO,CAAC;QAE/C,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IACD;;OAEG;IACI,sBAAsB;QAC3B,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,IAAI,CAAC;QAC3C,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,OAAO,CAAC;QACvD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,OAAO,CAAC;QACvD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,KAAK,CAAC;QACrD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,KAAK,CAAC;QACrD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,KAAK,CAAC;QACrD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,KAAK,CAAC;QACtD,IAAI,CAAC,YAAY,CAAC,4BAA4B,GAAG,OAAO,CAAC;QACzD,IAAI,CAAC,YAAY,CAAC,UAAU;YAC1B,2GAA2G,CAAC;QAC9G,IAAI,CAAC,YAAY,CAAC,gBAAgB,GAAG,MAAM,CAAC;QAC5C,IAAI,CAAC,YAAY,CAAC,gBAAgB,GAAG,MAAM,CAAC;QAC5C,IAAI,CAAC,YAAY,CAAC,gBAAgB,GAAG,MAAM,CAAC;QAC5C,IAAI,CAAC,YAAY,CAAC,gBAAgB,GAAG,MAAM,CAAC;QAC5C,IAAI,CAAC,YAAY,CAAC,gBAAgB,GAAG,MAAM,CAAC;QAC5C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,MAAM,CAAC;QAC7C,IAAI,CAAC,YAAY,CAAC,gBAAgB,GAAG,IAAI,CAAC;QAC1C,IAAI,CAAC,YAAY,CAAC,mBAAmB,GAAG,IAAI,CAAC;QAC7C,IAAI,CAAC,YAAY,CAAC,yBAAyB,GAAG,IAAI,CAAC;QACnD,IAAI,CAAC,YAAY,CAAC,gBAAgB,GAAG,MAAM,CAAC;QAC5C,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,QAAQ,CAAC;QAC1C,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,IAAI,CAAC;QACtC,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,KAAK,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,KAAK,GAAG,aAAa,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,MAAM,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,MAAM,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,MAAM,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,MAAM,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,MAAM,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,MAAM,CAAC;QACzC,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,MAAM,CAAC;QACzC,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,MAAM,CAAC;QACzC,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,MAAM,CAAC;QACzC,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,MAAM,CAAC;QACzC,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,MAAM,CAAC;QACzC,IAAI,CAAC,YAAY,CAAC,cAAc,GAAG,MAAM,CAAC;QAC1C,IAAI,CAAC,YAAY,CAAC,gBAAgB,GAAG,MAAM,CAAC;QAC5C,IAAI,CAAC,YAAY,CAAC,mBAAmB,GAAG,MAAM,CAAC;QAC/C,IAAI,CAAC,YAAY,CAAC,UAAU,GAAG,IAAI,CAAC;QACpC,IAAI,CAAC,YAAY,CAAC,cAAc,GAAG,SAAS,CAAC;QAC7C,IAAI,CAAC,YAAY,CAAC,cAAc,GAAG,QAAQ,CAAC;QAC5C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,kBAAkB,GAAG,OAAO,CAAC;QAE/C,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IACD;;OAEG;IACI,gBAAgB;QACrB,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,IAAI,CAAC;QAC3C,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,OAAO,CAAC;QACvD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,OAAO,CAAC;QACvD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,KAAK,CAAC;QACrD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,KAAK,CAAC;QACrD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,KAAK,CAAC;QACrD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,KAAK,CAAC;QACtD,IAAI,CAAC,YAAY,CAAC,4BAA4B,GAAG,OAAO,CAAC;QACzD,IAAI,CAAC,YAAY,CAAC,gBAAgB;YAChC,oHAAoH,CAAC;QACvH,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,MAAM,CAAC;QAClD,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,MAAM,CAAC;QAClD,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,MAAM,CAAC;QAClD,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,MAAM,CAAC;QAClD,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,MAAM,CAAC;QAClD,IAAI,CAAC,YAAY,CAAC,uBAAuB,GAAG,MAAM,CAAC;QACnD,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,IAAI,CAAC;QAChD,IAAI,CAAC,YAAY,CAAC,yBAAyB,GAAG,IAAI,CAAC;QACnD,IAAI,CAAC,YAAY,CAAC,gBAAgB,GAAG,MAAM,CAAC;QAC5C,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,QAAQ,CAAC;QAC1C,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,IAAI,CAAC;QACtC,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,QAAQ,CAAC;QAC3C,IAAI,CAAC,YAAY,CAAC,KAAK,GAAG,aAAa,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,MAAM,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,MAAM,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,MAAM,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,MAAM,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,MAAM,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,MAAM,CAAC;QACzC,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,MAAM,CAAC;QACzC,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,MAAM,CAAC;QACzC,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,MAAM,CAAC;QACzC,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,MAAM,CAAC;QACzC,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,MAAM,CAAC;QACzC,IAAI,CAAC,YAAY,CAAC,cAAc,GAAG,MAAM,CAAC;QAC1C,IAAI,CAAC,YAAY,CAAC,gBAAgB,GAAG,MAAM,CAAC;QAC5C,IAAI,CAAC,YAAY,CAAC,mBAAmB,GAAG,MAAM,CAAC;QAC/C,IAAI,CAAC,YAAY,CAAC,UAAU,GAAG,IAAI,CAAC;QACpC,IAAI,CAAC,YAAY,CAAC,cAAc,GAAG,OAAO,CAAC;QAC3C,IAAI,CAAC,YAAY,CAAC,cAAc,GAAG,OAAO,CAAC;QAC3C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,kBAAkB,GAAG,OAAO,CAAC;QAE/C,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IACD;;OAEG;IACI,gBAAgB;QACrB,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,KAAK,CAAC;QAC5C,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,OAAO,CAAC;QACvD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,OAAO,CAAC;QACvD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,KAAK,CAAC;QACrD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,KAAK,CAAC;QACrD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,KAAK,CAAC;QACrD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,KAAK,CAAC;QACtD,IAAI,CAAC,YAAY,CAAC,4BAA4B,GAAG,OAAO,CAAC;QACzD,IAAI,CAAC,YAAY,CAAC,gBAAgB,GAAG;;;;;;;;KAQpC,CAAC;QACF,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,MAAM,CAAC;QAClD,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,MAAM,CAAC;QAClD,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,MAAM,CAAC;QAClD,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,MAAM,CAAC;QAClD,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,MAAM,CAAC;QAClD,IAAI,CAAC,YAAY,CAAC,uBAAuB,GAAG,MAAM,CAAC;QACnD,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,IAAI,CAAC;QAChD,IAAI,CAAC,YAAY,CAAC,yBAAyB,GAAG,IAAI,CAAC;QACnD,IAAI,CAAC,YAAY,CAAC,gBAAgB,GAAG,MAAM,CAAC;QAC5C,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,QAAQ,CAAC;QAC1C,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,KAAK,CAAC;QACvC,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,QAAQ,CAAC;QAC3C,IAAI,CAAC,YAAY,CAAC,KAAK,GAAG,aAAa,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,MAAM,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,MAAM,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,MAAM,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,MAAM,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,MAAM,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,MAAM,CAAC;QACzC,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,MAAM,CAAC;QACzC,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,MAAM,CAAC;QACzC,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,MAAM,CAAC;QACzC,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,MAAM,CAAC;QACzC,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,MAAM,CAAC;QACzC,IAAI,CAAC,YAAY,CAAC,cAAc,GAAG,MAAM,CAAC;QAC1C,IAAI,CAAC,YAAY,CAAC,gBAAgB,GAAG,MAAM,CAAC;QAC5C,IAAI,CAAC,YAAY,CAAC,mBAAmB,GAAG,MAAM,CAAC;QAC/C,IAAI,CAAC,YAAY,CAAC,UAAU,GAAG,IAAI,CAAC;QACpC,IAAI,CAAC,YAAY,CAAC,cAAc,GAAG,QAAQ,CAAC;QAC5C,IAAI,CAAC,YAAY,CAAC,cAAc,GAAG,QAAQ,CAAC;QAC5C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,kBAAkB,GAAG,OAAO,CAAC;QAE/C,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IAED;;;OAGG;IACI,aAAa,CAAC,OAA2B;QAC9C,IAAI,YAAY,GAAG,OAAO,CAAC;QAC3B,IAAI,CAAC,YAAY,EAAE;YACjB,YAAY,GAAG,4HAA4H,CAAC;SAC7I;QAED,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,IAAI,CAAC;QAC3C,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,OAAO,CAAC;QACvD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,OAAO,CAAC;QACvD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,KAAK,CAAC;QACrD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,KAAK,CAAC;QACrD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,KAAK,CAAC;QACrD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,KAAK,CAAC;QACtD,IAAI,CAAC,YAAY,CAAC,4BAA4B,GAAG,OAAO,CAAC;QACzD,IAAI,CAAC,YAAY,CAAC,gBAAgB,GAAG,YAAY,CAAC;QAClD,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,MAAM,CAAC;QAClD,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,MAAM,CAAC;QAClD,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,MAAM,CAAC;QAClD,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,MAAM,CAAC;QAClD,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,MAAM,CAAC;QAClD,IAAI,CAAC,YAAY,CAAC,uBAAuB,GAAG,MAAM,CAAC;QACnD,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,IAAI,CAAC;QAChD,IAAI,CAAC,YAAY,CAAC,yBAAyB,GAAG,IAAI,CAAC;QACnD,IAAI,CAAC,YAAY,CAAC,gBAAgB,GAAG,MAAM,CAAC;QAC5C,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,QAAQ,CAAC;QAC1C,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,IAAI,CAAC;QACtC,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,QAAQ,CAAC;QAC3C,IAAI,CAAC,YAAY,CAAC,KAAK,GAAG,aAAa,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,MAAM,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,MAAM,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,MAAM,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,MAAM,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,MAAM,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,MAAM,CAAC;QACzC,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,MAAM,CAAC;QACzC,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,MAAM,CAAC;QACzC,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,MAAM,CAAC;QACzC,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,MAAM,CAAC;QACzC,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,MAAM,CAAC;QACzC,IAAI,CAAC,YAAY,CAAC,cAAc,GAAG,MAAM,CAAC;QAC1C,IAAI,CAAC,YAAY,CAAC,gBAAgB,GAAG,MAAM,CAAC;QAC5C,IAAI,CAAC,YAAY,CAAC,mBAAmB,GAAG,MAAM,CAAC;QAC/C,IAAI,CAAC,YAAY,CAAC,UAAU,GAAG,IAAI,CAAC;QACpC,IAAI,CAAC,YAAY,CAAC,cAAc,GAAG,SAAS,CAAC;QAC7C,IAAI,CAAC,YAAY,CAAC,cAAc,GAAG,SAAS,CAAC;QAC7C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,kBAAkB,GAAG,OAAO,CAAC;QAE/C,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IAED;;;;OAIG;IACI,oBAAoB,CAAC,OAA2B;QACrD,IAAI,YAAY,GAAG,OAAO,CAAC;QAE3B,iEAAiE;QACjE,IAAI,CAAC,YAAY,EAAE;YACjB,YAAY,GAAG,wZAAwZ,CAAC;SACza;QAED,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,IAAI,CAAC;QAC3C,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,OAAO,CAAC;QACvD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,OAAO,CAAC;QACvD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,KAAK,CAAC;QACrD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,KAAK,CAAC;QACrD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,0BAA0B,GAAG,KAAK,CAAC;QACrD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,OAAO,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,2BAA2B,GAAG,KAAK,CAAC;QACtD,IAAI,CAAC,YAAY,CAAC,4BAA4B,GAAG,OAAO,CAAC;QACzD,IAAI,CAAC,YAAY,CAAC,gBAAgB,GAAG,YAAY,CAAC;QAClD,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,MAAM,CAAC;QAClD,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,MAAM,CAAC;QAClD,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,MAAM,CAAC;QAClD,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,MAAM,CAAC;QAClD,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,MAAM,CAAC;QAClD,IAAI,CAAC,YAAY,CAAC,uBAAuB,GAAG,MAAM,CAAC;QACnD,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,IAAI,CAAC;QAChD,IAAI,CAAC,YAAY,CAAC,yBAAyB,GAAG,IAAI,CAAC;QACnD,IAAI,CAAC,YAAY,CAAC,gBAAgB,GAAG,MAAM,CAAC;QAC5C,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,QAAQ,CAAC;QAC1C,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,KAAK,CAAC;QACvC,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,QAAQ,CAAC;QAC3C,IAAI,CAAC,YAAY,CAAC,KAAK,GAAG,aAAa,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,MAAM,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,MAAM,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,MAAM,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,MAAM,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,MAAM,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,MAAM,CAAC;QACzC,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,MAAM,CAAC;QACzC,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,MAAM,CAAC;QACzC,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,MAAM,CAAC;QACzC,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,MAAM,CAAC;QACzC,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,MAAM,CAAC;QACzC,IAAI,CAAC,YAAY,CAAC,cAAc,GAAG,MAAM,CAAC;QAC1C,IAAI,CAAC,YAAY,CAAC,gBAAgB,GAAG,MAAM,CAAC;QAC5C,IAAI,CAAC,YAAY,CAAC,mBAAmB,GAAG,MAAM,CAAC;QAC/C,IAAI,CAAC,YAAY,CAAC,UAAU,GAAG,IAAI,CAAC;QACpC,IAAI,CAAC,YAAY,CAAC,cAAc,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,YAAY,CAAC;QAC5E,IAAI,CAAC,YAAY,CAAC,cAAc,GAAG,SAAS,CAAC;QAC7C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,iBAAiB,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,kBAAkB,GAAG,OAAO,CAAC;QAE/C,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;CACF;;;;;;;;;;;;;;;;;;;;;;;;;;;;AC1biF;AACZ;AAUwB;AAEtB;;;;;;;;;;;;;;ICdxE9H,4DAAA,UAAsC;IACLA,wDAAA,mBAAAqI,uDAAA;MAAArI,2DAAA,CAAAuI,GAAA;MAAA,MAAAC,MAAA,GAAAxI,2DAAA;MAAA,OAASA,yDAAA,CAAAwI,MAAA,CAAAG,aAAA,CAAAH,MAAA,CAAAI,MAAA,CAAAC,eAAA,CAAqC;IAAA,EAAC;IAA+B7I,0DAAA,EAAI;;;;;IAIjHA,4DAAA,aAAkE;IAC5DA,oDAAA,GAAuB;IAAAA,0DAAA,EAAK;;;;IAA5BA,uDAAA,GAAuB;IAAvBA,+DAAA,CAAAgB,MAAA,CAAA4H,MAAA,CAAAE,UAAA,CAAuB;;;;;IAG3B9I,4DAAA,cAAsG;IACpGA,uDAAA,cAA+E;IACjFA,0DAAA,EAAM;;;;IADsBA,uDAAA,GAAkD;IAAlDA,oEAAA,sCAAAgJ,MAAA,CAAAJ,MAAA,CAAAK,KAAA,MAAAjJ,2DAAA,CAAkD;;;;;IAE9EA,4DAAA,cAA+E;IAC7EA,uDAAA,cAAiD;IACnDA,0DAAA,EAAM;;;;IADCA,uDAAA,GAAqC;IAArCA,wDAAA,cAAAmJ,OAAA,CAAAP,MAAA,CAAAQ,gBAAA,EAAApJ,4DAAA,CAAqC;;;;;IAE5CA,4DAAA,cAAyG;IACvGA,uDAAA,cAA+E;IACjFA,0DAAA,EAAM;;;;IADsBA,uDAAA,GAAkD;IAAlDA,oEAAA,sCAAAsJ,OAAA,CAAAV,MAAA,CAAAK,KAAA,MAAAjJ,2DAAA,CAAkD;;;;;IARhFA,4DAAA,UAA+D;IAC7DA,wDAAA,IAAAuJ,yCAAA,kBAEM;IACNvJ,wDAAA,IAAAwJ,yCAAA,kBAEM;IACNxJ,wDAAA,IAAAyJ,yCAAA,kBAEM;IACRzJ,0DAAA,EAAM;;;;IATiBA,uDAAA,GAA2D;IAA3DA,wDAAA,SAAAwB,MAAA,CAAAoH,MAAA,CAAAc,YAAA,IAAAlI,MAAA,CAAAoH,MAAA,CAAAe,aAAA,WAA2D;IAG3D3J,uDAAA,GAA6B;IAA7BA,wDAAA,SAAAwB,MAAA,CAAAoH,MAAA,CAAAQ,gBAAA,CAA6B;IAG7BpJ,uDAAA,GAA8D;IAA9DA,wDAAA,SAAAwB,MAAA,CAAAoH,MAAA,CAAAc,YAAA,IAAAlI,MAAA,CAAAoH,MAAA,CAAAe,aAAA,cAA8D;;;;;IAQnF3J,uDAAA,cAAoG;;;;;IADtGA,4DAAA,iBAAgG;IAC9FA,wDAAA,IAAA4J,4CAAA,kBAAoG;IACpG5J,4DAAA,eAAuB;IAAAA,oDAAA,GAA2B;IAAAA,0DAAA,EAAO;;;;IADnDA,uDAAA,GAA4B;IAA5BA,wDAAA,SAAA6J,MAAA,CAAAjB,MAAA,CAAAkB,eAAA,CAA4B;IACX9J,uDAAA,GAA2B;IAA3BA,+DAAA,CAAA6J,MAAA,CAAAjB,MAAA,CAAAmB,cAAA,CAA2B;;;;;IAUlD/J,uDAAA,cAA2G;;;;;;IAR7GA,4DAAA,iBAMC;IADCA,wDAAA,mBAAAgK,+DAAA;MAAAhK,2DAAA,CAAAiK,IAAA;MAAA,MAAAC,OAAA,GAAAlK,2DAAA;MAAA,OAASA,yDAAA,CAAAkK,OAAA,CAAAzF,QAAA,CAAAyF,OAAA,CAAAtB,MAAA,CAAAuB,cAAA,CAA+B;IAAA,EAAC;IAEzCnK,4DAAA,eAA2B;IAAAA,oDAAA,GAA2B;IAAAA,0DAAA,EAAO;IAC7DA,wDAAA,IAAAoK,4CAAA,kBAA2G;IAC7GpK,0DAAA,EAAS;;;;IAFoBA,uDAAA,GAA2B;IAA3BA,+DAAA,CAAAqK,MAAA,CAAAzB,MAAA,CAAA0B,cAAA,CAA2B;IAChDtK,uDAAA,GAA4B;IAA5BA,wDAAA,SAAAqK,MAAA,CAAAzB,MAAA,CAAA2B,eAAA,CAA4B;;;;;IAY1BvK,4DAAA,iBAAgG;IAC9FA,oDAAA,GACF;IAAAA,0DAAA,EAAS;;;;IAFuEA,wDAAA,YAAAwK,OAAA,CAAe;IAC7FxK,uDAAA,GACF;IADEA,gEAAA,MAAAwK,OAAA,CAAA9J,IAAA,MACF;;;;;IAMAV,4DAAA,eAGG;IAAAA,oDAAA,GAAkB;IAAAA,0DAAA,EACpB;;;;IADEA,uDAAA,GAAkB;IAAlBA,+DAAA,CAAA0K,QAAA,CAAA7J,OAAA,CAAkB;;;;;IAJvBb,4DAAA,UAAuC;IACrCA,wDAAA,IAAA2K,+DAAA,mBAIC;IACH3K,0DAAA,EAAM;;;;;IAHDA,uDAAA,GAAgG;IAAhGA,wDAAA,SAAA4K,OAAA,CAAA3J,IAAA,CAAAC,QAAA,iBAAAC,QAAA,CAAAuJ,QAAA,CAAAtJ,IAAA,KAAAwJ,OAAA,CAAA3J,IAAA,CAAAC,QAAA,iBAAAG,OAAA,CAAgG;;;;;IAf3GrB,4DAAA,UAA8B;IAGMA,oDAAA,qDAAyC;IAAAA,0DAAA,EAAQ;IAC/EA,4DAAA,iBAA6D;IAC3DA,wDAAA,IAAA6K,0DAAA,qBAES;;IACX7K,0DAAA,EAAS;IAEXA,4DAAA,cAA2C;IACzCA,uDAAA,UAAW;IACXA,wDAAA,KAAA8K,wDAAA,kBAMM;IACR9K,0DAAA,EAAM;;;;IAlBFA,uDAAA,GAAkB;IAAlBA,wDAAA,cAAA+K,OAAA,CAAA9J,IAAA,CAAkB;IAIMjB,uDAAA,GAAyC;IAAzCA,wDAAA,YAAAA,yDAAA,OAAA+K,OAAA,CAAAC,4BAAA,EAAyC;IAO7ChL,uDAAA,GAAe;IAAfA,wDAAA,YAAA+K,OAAA,CAAA7I,YAAA,CAAe;;;;;IAU3ClC,4DAAA,UAAsB;IACpBA,uDAAA,UAAW;IACbA,0DAAA,EAAM;;;;;IAzBRA,4DAAA,cAAsC;IACpCA,wDAAA,IAAAiL,iDAAA,mBAqBM;IACNjL,wDAAA,IAAAkL,iDAAA,kBAEM;IACRlL,0DAAA,EAAM;;;;IA1BDA,wDAAA,aAAAmL,MAAA,CAAAvC,MAAA,CAAAwC,YAAA,CAAgC;IAC7BpL,uDAAA,GAAsB;IAAtBA,wDAAA,0BAAsB;;;ADzBhC;;;AAQM,MAAOL,oBAAoB;EA2C/B;;;;EAIAgC,YAC2BiH,MAAwB,EACjDhH,OAA0B,EAC1ByJ,QAAkB,EAClBlJ,OAA2B,EAC3BJ,MAAiB,EACjBF,MAAc,EACdG,MAAyB,EACzBE,YAAqC;IAErC,IAAI,CAACN,OAAO,GAAGA,OAAO;IACtB,IAAI,CAACgH,MAAM,GAAGA,MAAM;IACpB,IAAI,CAAC3H,IAAI,GAAGkB,OAAO,CAACW,KAAK,CAAC;MACxBwI,YAAY,EAAE,CAAC,EAAE,EAAE5L,+DAAmB;KACvC,CAAC;IACF,IAAI,CAAC2L,QAAQ,GAAGA,QAAQ;IACxB,IAAI,CAACtJ,MAAM,GAAGA,MAAM;IACpB,IAAI,CAACF,MAAM,GAAGA,MAAM;IACpB,IAAI,CAAC0J,wBAAwB,GAAG,IAAIpD,uGAAwB,EAAE;IAC9D,IAAI,CAACnG,MAAM,GAAGA,MAAM;IACpB,IAAI,CAACgJ,4BAA4B,GAAG,IAAI,CAAChJ,MAAM,CAACgJ,4BAA4B,EAAE;IAC9E,IAAI,CAAC9I,YAAY,GAAGA,YAAY,CAACO,WAAW;EAC9C;EAEA;;;EAGOc,QAAQA,CAAA;IACb,IAAI,CAACiI,oCAAoC,EAAE;IAC3C,IAAI,CAACC,oCAAoC,EAAE;IAC3C,IAAI,CAACC,0CAA0C,EAAE;IACjD,IAAI,CAACC,0CAA0C,EAAE;IACjD,IAAI,CAACC,sCAAsC,EAAE;EAC/C;EACA;;;;;EAKOnH,QAAQA,CAACoH,MAAA,GAA6B,EAAE;IAC7C,IAAI,CAACjK,OAAO,CAACoC,IAAI,EAAE;IACnB,QAAQ6H,MAAM;MACZ,KAAK,UAAU;QACb,IAAI,IAAI,CAAC5K,IAAI,CAAC6G,OAAO,EAAE;UACrB,IAAI,CAACgE,eAAe,EAAE;UAEtB,OAAO,KAAK;;QAEd,MAAMxH,IAAI,GAAG,IAAI,CAACrD,IAAI,CAACyD,KAAK;QAC5B,MAAM4G,YAAY,GAAGhH,IAAI,CAACgH,YAAY,CAAC5K,IAAI;QAC3CsE,YAAY,CAACC,OAAO,CAAC,cAAc,EAAEV,IAAI,CAACwH,SAAS,CAACT,YAAY,CAAC,CAAC;QAClE,IAAI,CAACtJ,MAAM,CAACgK,aAAa,CAAC,MAAK;UAC7B,IAAI,CAAChK,MAAM,CAACiK,gBAAgB,EAAE;UAC9B,IAAI,CAACrK,OAAO,CAACsC,IAAI,EAAE;UACnB,IAAI,CAACgI,uBAAuB,EAAE;UAC9B,IAAI,CAACrK,MAAM,CAACuC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC;QAC7B,CAAC,CAAC;QACF;MACF,KAAK,WAAW;QACd,MAAMzB,KAAK,GAAG,IAAI,CAAC0B,SAAS,CAACW,YAAY,CAACmH,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;QACjEnH,YAAY,CAACC,OAAO,CAAC,YAAY,EAAEtC,KAAK,CAACrC,EAAE,CAAC;QAC5C,IAAI,CAACsB,OAAO,CAACsC,IAAI,EAAE;QACnB,IAAI,CAACrC,MAAM,CAACuC,QAAQ,CAAC,CAAC,oBAAoB,EAAE,iBAAiB,CAAC,CAAC;QAC/D;MACF,KAAK,QAAQ;QACX,IAAI,CAACxC,OAAO,CAACsC,IAAI,EAAE;QACnB,IAAI,CAACmH,QAAQ,CAACe,IAAI,EAAE;QACpB;MACF,KAAK,OAAO;QACV,IAAI,CAACxK,OAAO,CAACsC,IAAI,EAAE;QACnB,IAAI,CAACrC,MAAM,CAACuC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,CAACiI,IAAI,CAAC,MAAK;UACpCC,MAAM,CAACjB,QAAQ,CAACkB,MAAM,EAAE;QAC1B,CAAC,CAAC;QACF;MACF,KAAK,YAAY;QACf,IAAI,CAAC1K,MAAM,CAACuC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,CAACiI,IAAI,CAAC,MAAK;UACpCC,MAAM,CAAChH,IAAI,CAAC8C,qGAA8B,EAAE,QAAQ,CAAC;UACrD,IAAI,CAACxG,OAAO,CAACsC,IAAI,EAAE;QACrB,CAAC,CAAC;QACF;MACF;QACE,IAAI,CAACtC,OAAO,CAACsC,IAAI,EAAE;;EAEzB;EACA;;;EAGQsH,oCAAoCA,CAAA;IAC1CiB,QAAQ,CAACC,eAAe,CAACC,KAAK,CAACC,WAAW,CAAC,qBAAqB,EAAE,IAAI,CAAChE,MAAM,CAACiE,gBAAgB,IAAI,IAAI,CAAC;IACvGJ,QAAQ,CAACC,eAAe,CAACC,KAAK,CAACC,WAAW,CAAC,qBAAqB,EAAE,IAAI,CAAChE,MAAM,CAACkE,gBAAgB,IAAI,IAAI,CAAC;IACvGL,QAAQ,CAACC,eAAe,CAACC,KAAK,CAACC,WAAW,CAAC,qBAAqB,EAAE,IAAI,CAAChE,MAAM,CAACmE,gBAAgB,IAAI,IAAI,CAAC;IACvGN,QAAQ,CAACC,eAAe,CAACC,KAAK,CAACC,WAAW,CAAC,qBAAqB,EAAE,IAAI,CAAChE,MAAM,CAACoE,gBAAgB,IAAI,IAAI,CAAC;IACvGP,QAAQ,CAACC,eAAe,CAACC,KAAK,CAACC,WAAW,CAAC,qBAAqB,EAAE,IAAI,CAAChE,MAAM,CAACqE,gBAAgB,IAAI,IAAI,CAAC;IACvGR,QAAQ,CAACC,eAAe,CAACC,KAAK,CAACC,WAAW,CAAC,sBAAsB,EAAE,IAAI,CAAChE,MAAM,CAACsE,iBAAiB,IAAI,IAAI,CAAC;IACzGT,QAAQ,CAACC,eAAe,CAACC,KAAK,CAACC,WAAW,CAAC,qBAAqB,EAAE,IAAI,CAAChE,MAAM,CAACuE,gBAAgB,IAAI,IAAI,CAAC;IACvGV,QAAQ,CAACC,eAAe,CAACC,KAAK,CAACC,WAAW,CAAC,wBAAwB,EAAE,IAAI,CAAChE,MAAM,CAACwE,mBAAmB,IAAI,IAAI,CAAC;EAC/G;EAEA;;;EAGQ1B,0CAA0CA,CAAA;IAChDe,QAAQ,CAACC,eAAe,CAACC,KAAK,CAACC,WAAW,CAAC,2BAA2B,EAAE,IAAI,CAAChE,MAAM,CAACyE,sBAAsB,IAAI,IAAI,CAAC;IACnHZ,QAAQ,CAACC,eAAe,CAACC,KAAK,CAACC,WAAW,CAAC,2BAA2B,EAAE,IAAI,CAAChE,MAAM,CAAC0E,sBAAsB,IAAI,IAAI,CAAC;IACnHb,QAAQ,CAACC,eAAe,CAACC,KAAK,CAACC,WAAW,CAAC,2BAA2B,EAAE,IAAI,CAAChE,MAAM,CAAC2E,sBAAsB,IAAI,IAAI,CAAC;IACnHd,QAAQ,CAACC,eAAe,CAACC,KAAK,CAACC,WAAW,CAAC,2BAA2B,EAAE,IAAI,CAAChE,MAAM,CAAC4E,sBAAsB,IAAI,IAAI,CAAC;IACnHf,QAAQ,CAACC,eAAe,CAACC,KAAK,CAACC,WAAW,CAAC,2BAA2B,EAAE,IAAI,CAAChE,MAAM,CAAC6E,sBAAsB,IAAI,IAAI,CAAC;IACnHhB,QAAQ,CAACC,eAAe,CAACC,KAAK,CAACC,WAAW,CACxC,4BAA4B,EAC5B,IAAI,CAAChE,MAAM,CAAC8E,uBAAuB,IAAI,IAAI,CAC5C;IACDjB,QAAQ,CAACC,eAAe,CAACC,KAAK,CAACC,WAAW,CAAC,2BAA2B,EAAE,IAAI,CAAChE,MAAM,CAAC+E,sBAAsB,IAAI,IAAI,CAAC;IACnHlB,QAAQ,CAACC,eAAe,CAACC,KAAK,CAACC,WAAW,CACxC,8BAA8B,EAC9B,IAAI,CAAChE,MAAM,CAACgF,yBAAyB,IAAI,IAAI,CAC9C;EACH;EAEA;;;EAGQnC,oCAAoCA,CAAA;IAC1CgB,QAAQ,CAACC,eAAe,CAACC,KAAK,CAACC,WAAW,CAAC,iBAAiB,EAAE,IAAI,CAAChE,MAAM,CAACiF,YAAY,IAAI,IAAI,CAAC;IAC/FpB,QAAQ,CAACC,eAAe,CAACC,KAAK,CAACC,WAAW,CAAC,iBAAiB,EAAE,IAAI,CAAChE,MAAM,CAACkF,YAAY,IAAI,IAAI,CAAC;IAC/FrB,QAAQ,CAACC,eAAe,CAACC,KAAK,CAACC,WAAW,CAAC,iBAAiB,EAAE,IAAI,CAAChE,MAAM,CAACmF,YAAY,IAAI,IAAI,CAAC;IAC/FtB,QAAQ,CAACC,eAAe,CAACC,KAAK,CAACC,WAAW,CAAC,iBAAiB,EAAE,IAAI,CAAChE,MAAM,CAACoF,YAAY,IAAI,IAAI,CAAC;IAC/FvB,QAAQ,CAACC,eAAe,CAACC,KAAK,CAACC,WAAW,CAAC,iBAAiB,EAAE,IAAI,CAAChE,MAAM,CAACqF,YAAY,IAAI,IAAI,CAAC;IAC/FxB,QAAQ,CAACC,eAAe,CAACC,KAAK,CAACC,WAAW,CAAC,kBAAkB,EAAE,IAAI,CAAChE,MAAM,CAACsF,aAAa,IAAI,IAAI,CAAC;IACjGzB,QAAQ,CAACC,eAAe,CAACC,KAAK,CAACC,WAAW,CAAC,kBAAkB,EAAE,IAAI,CAAChE,MAAM,CAACuF,aAAa,IAAI,IAAI,CAAC;IACjG1B,QAAQ,CAACC,eAAe,CAACC,KAAK,CAACC,WAAW,CAAC,kBAAkB,EAAE,IAAI,CAAChE,MAAM,CAACwF,aAAa,IAAI,IAAI,CAAC;IACjG3B,QAAQ,CAACC,eAAe,CAACC,KAAK,CAACC,WAAW,CAAC,kBAAkB,EAAE,IAAI,CAAChE,MAAM,CAACyF,aAAa,IAAI,IAAI,CAAC;IACjG5B,QAAQ,CAACC,eAAe,CAACC,KAAK,CAACC,WAAW,CAAC,kBAAkB,EAAE,IAAI,CAAChE,MAAM,CAAC0F,aAAa,IAAI,IAAI,CAAC;IACjG7B,QAAQ,CAACC,eAAe,CAACC,KAAK,CAACC,WAAW,CAAC,kBAAkB,EAAE,IAAI,CAAChE,MAAM,CAAC2F,aAAa,IAAI,IAAI,CAAC;IACjG9B,QAAQ,CAACC,eAAe,CAACC,KAAK,CAACC,WAAW,CAAC,mBAAmB,EAAE,IAAI,CAAChE,MAAM,CAAC4F,cAAc,IAAI,IAAI,CAAC;IACnG/B,QAAQ,CAACC,eAAe,CAACC,KAAK,CAACC,WAAW,CAAC,qBAAqB,EAAE,IAAI,CAAChE,MAAM,CAAC6F,gBAAgB,IAAI,IAAI,CAAC;IACvGhC,QAAQ,CAACC,eAAe,CAACC,KAAK,CAACC,WAAW,CAAC,wBAAwB,EAAE,IAAI,CAAChE,MAAM,CAAC8F,mBAAmB,IAAI,IAAI,CAAC;EAC/G;EAEA;;;EAGQ/C,0CAA0CA,CAAA;IAChDc,QAAQ,CAACC,eAAe,CAACC,KAAK,CAACC,WAAW,CACxC,yBAAyB,EACzB,IAAI,CAAChE,MAAM,CAAC+F,0BAA0B,IAAI,IAAI,CAC/C;IACDlC,QAAQ,CAACC,eAAe,CAACC,KAAK,CAACC,WAAW,CACxC,yBAAyB,EACzB,IAAI,CAAChE,MAAM,CAACgG,0BAA0B,IAAI,IAAI,CAC/C;IACDnC,QAAQ,CAACC,eAAe,CAACC,KAAK,CAACC,WAAW,CACxC,yBAAyB,EACzB,IAAI,CAAChE,MAAM,CAACiG,0BAA0B,IAAI,IAAI,CAC/C;IACDpC,QAAQ,CAACC,eAAe,CAACC,KAAK,CAACC,WAAW,CACxC,yBAAyB,EACzB,IAAI,CAAChE,MAAM,CAACkG,0BAA0B,IAAI,IAAI,CAC/C;IACDrC,QAAQ,CAACC,eAAe,CAACC,KAAK,CAACC,WAAW,CACxC,yBAAyB,EACzB,IAAI,CAAChE,MAAM,CAACmG,0BAA0B,IAAI,IAAI,CAC/C;IACDtC,QAAQ,CAACC,eAAe,CAACC,KAAK,CAACC,WAAW,CACxC,0BAA0B,EAC1B,IAAI,CAAChE,MAAM,CAACoG,2BAA2B,IAAI,IAAI,CAChD;IACDvC,QAAQ,CAACC,eAAe,CAACC,KAAK,CAACC,WAAW,CACxC,0BAA0B,EAC1B,IAAI,CAAChE,MAAM,CAACqG,2BAA2B,IAAI,IAAI,CAChD;IACDxC,QAAQ,CAACC,eAAe,CAACC,KAAK,CAACC,WAAW,CACxC,0BAA0B,EAC1B,IAAI,CAAChE,MAAM,CAACsG,2BAA2B,IAAI,IAAI,CAChD;IACDzC,QAAQ,CAACC,eAAe,CAACC,KAAK,CAACC,WAAW,CACxC,0BAA0B,EAC1B,IAAI,CAAChE,MAAM,CAACuG,2BAA2B,IAAI,IAAI,CAChD;IACD1C,QAAQ,CAACC,eAAe,CAACC,KAAK,CAACC,WAAW,CACxC,0BAA0B,EAC1B,IAAI,CAAChE,MAAM,CAACwG,2BAA2B,IAAI,IAAI,CAChD;IACD3C,QAAQ,CAACC,eAAe,CAACC,KAAK,CAACC,WAAW,CACxC,0BAA0B,EAC1B,IAAI,CAAChE,MAAM,CAACyG,2BAA2B,IAAI,IAAI,CAChD;IACD5C,QAAQ,CAACC,eAAe,CAACC,KAAK,CAACC,WAAW,CACxC,2BAA2B,EAC3B,IAAI,CAAChE,MAAM,CAAC0G,4BAA4B,IAAI,IAAI,CACjD;EACH;EAEA;;;EAGQ1D,sCAAsCA,CAAA;IAC5Ca,QAAQ,CAACC,eAAe,CAACC,KAAK,CAACC,WAAW,CAAC,uBAAuB,EAAE,IAAI,CAAChE,MAAM,CAAC2G,kBAAkB,IAAI,IAAI,CAAC;IAC3G9C,QAAQ,CAACC,eAAe,CAACC,KAAK,CAACC,WAAW,CAAC,0BAA0B,EAAE,IAAI,CAAChE,MAAM,CAAC4G,qBAAqB,IAAI,IAAI,CAAC;IACjH/C,QAAQ,CAACC,eAAe,CAACC,KAAK,CAACC,WAAW,CAAC,sBAAsB,EAAE,IAAI,CAAChE,MAAM,CAAC6G,iBAAiB,IAAI,IAAI,CAAC;IACzGhD,QAAQ,CAACC,eAAe,CAACC,KAAK,CAACC,WAAW,CAAC,sBAAsB,EAAE,IAAI,CAAChE,MAAM,CAAC8G,iBAAiB,IAAI,IAAI,CAAC;IACzGjD,QAAQ,CAACC,eAAe,CAACC,KAAK,CAACC,WAAW,CAAC,sBAAsB,EAAE,IAAI,CAAChE,MAAM,CAAC+G,iBAAiB,IAAI,IAAI,CAAC;IACzGlD,QAAQ,CAACC,eAAe,CAACC,KAAK,CAACC,WAAW,CAAC,sBAAsB,EAAE,IAAI,CAAChE,MAAM,CAACgH,iBAAiB,IAAI,IAAI,CAAC;IACzGnD,QAAQ,CAACC,eAAe,CAACC,KAAK,CAACC,WAAW,CAAC,sBAAsB,EAAE,IAAI,CAAChE,MAAM,CAACiH,iBAAiB,IAAI,IAAI,CAAC;IACzGpD,QAAQ,CAACC,eAAe,CAACC,KAAK,CAACC,WAAW,CAAC,sBAAsB,EAAE,IAAI,CAAChE,MAAM,CAACkH,iBAAiB,IAAI,IAAI,CAAC;IACzGrD,QAAQ,CAACC,eAAe,CAACC,KAAK,CAACC,WAAW,CAAC,uBAAuB,EAAE,IAAI,CAAChE,MAAM,CAACmH,kBAAkB,IAAI,IAAI,CAAC;IAC3GtD,QAAQ,CAACC,eAAe,CAACC,KAAK,CAACC,WAAW,CAAC,uBAAuB,EAAE,IAAI,CAAChE,MAAM,CAACoH,kBAAkB,IAAI,IAAI,CAAC;IAC3GvD,QAAQ,CAACC,eAAe,CAACC,KAAK,CAACC,WAAW,CAAC,uBAAuB,EAAE,IAAI,CAAChE,MAAM,CAACqH,kBAAkB,IAAI,IAAI,CAAC;IAC3GxD,QAAQ,CAACC,eAAe,CAACC,KAAK,CAACC,WAAW,CAAC,uBAAuB,EAAE,IAAI,CAAChE,MAAM,CAACsH,kBAAkB,IAAI,IAAI,CAAC;IAC3GzD,QAAQ,CAACC,eAAe,CAACC,KAAK,CAACC,WAAW,CAAC,uBAAuB,EAAE,IAAI,CAAChE,MAAM,CAACuH,kBAAkB,IAAI,IAAI,CAAC;IAC3G1D,QAAQ,CAACC,eAAe,CAACC,KAAK,CAACC,WAAW,CAAC,uBAAuB,EAAE,IAAI,CAAChE,MAAM,CAACwH,kBAAkB,IAAI,IAAI,CAAC;IAC3G3D,QAAQ,CAACC,eAAe,CAACC,KAAK,CAACC,WAAW,CAAC,wBAAwB,EAAE,IAAI,CAAChE,MAAM,CAACyH,mBAAmB,IAAI,IAAI,CAAC;EAC/G;EACA;;;EAGOnE,uBAAuBA,CAAA;IAC5B,IAAI,CAACnK,MAAM,CAACuD,IAAI,CAAC3F,oBAAoB,EAAE;MACrC2E,IAAI,EAAE,IAAI,CAACiH,wBAAwB,CAAC+E,mBAAmB,EAAE;MACzDC,KAAK,EAAE,OAAO;MACdC,MAAM,EAAE,OAAO;MACfC,UAAU,EAAE,kBAAkB;MAC9BC,SAAS,EAAE,KAAK;MAChBC,YAAY,EAAE,KAAK;MACnBC,YAAY,EAAE;KACf,CAAC;EACJ;EACA;;;EAGO9E,eAAeA,CAAA;IACpB,IAAI,CAAC/J,MAAM,CAACuD,IAAI,CAAC3F,oBAAoB,EAAE;MACrC2E,IAAI,EAAE,IAAI,CAACiH,wBAAwB,CAACsF,WAAW,EAAE;MACjDN,KAAK,EAAE,OAAO;MACdC,MAAM,EAAE,OAAO;MACfC,UAAU,EAAE,kBAAkB;MAC9BC,SAAS,EAAE,KAAK;MAChBC,YAAY,EAAE,KAAK;MACnBC,YAAY,EAAE;KACf,CAAC;EACJ;EACA;;;;EAIOvM,SAASA,CAACC,IAAY;IAC3B,OAAOC,IAAI,CAACC,KAAK,CAACF,IAAI,CAAC;EACzB;EAEA;;;EAGOqE,aAAaA,CAACkD,MAAA,GAA6B,EAAE;IAClD,IAAI,CAACjK,OAAO,CAACoC,IAAI,EAAE;IACnB,IAAI6H,MAAM,KAAK,MAAM,EAAE,IAAI,CAAChK,MAAM,CAACuC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC;IAClD,IAAI,CAACxC,OAAO,CAACsC,IAAI,EAAE;EACrB;;;mBA9SWvE,oBAAoB,EAAAK,+DAAA,CAgDrBkI,qEAAe,GAAAlI,+DAAA,CAAA2F,0DAAA,GAAA3F,+DAAA,CAAA6F,qDAAA,GAAA7F,+DAAA,CAAAgG,8DAAA,GAAAhG,+DAAA,CAAAkG,+DAAA,GAAAlG,+DAAA,CAAAoG,mDAAA,GAAApG,+DAAA,CAAAsG,0EAAA,GAAAtG,+DAAA,CAAAwG,+GAAA;AAAA;;QAhDd7G,oBAAoB;EAAA+G,SAAA;EAAAC,KAAA;EAAAC,IAAA;EAAAC,MAAA;EAAAC,QAAA,WAAAkK,8BAAAhK,EAAA,EAAAC,GAAA;IAAA,IAAAD,EAAA;MCxBjChH,wDAAA,IAAAiR,mCAAA,iBAEM;MAENjR,4DAAA,aAAqD;MACnDA,wDAAA,IAAAkR,mCAAA,iBAEM;MACNlR,wDAAA,IAAAmR,mCAAA,iBAUM;MACRnR,0DAAA,EAAM;MAENA,4DAAA,aAAgG;MAC9FA,wDAAA,IAAAoR,sCAAA,oBAGS;MACTpR,wDAAA,IAAAqR,sCAAA,oBASS;MACXrR,0DAAA,EAAM;MAGNA,wDAAA,IAAAsR,2CAAA,gCAAAtR,oEAAA,CA4Bc;;;;MAnERA,wDAAA,SAAAiH,GAAA,CAAA2B,MAAA,CAAA4I,iBAAA,CAA8B;MAKbxR,uDAAA,GAAuB;MAAvBA,wDAAA,SAAAiH,GAAA,CAAA2B,MAAA,CAAAE,UAAA,CAAuB;MAGtC9I,uDAAA,GAA0C;MAA1CA,wDAAA,SAAAiH,GAAA,CAAA2B,MAAA,CAAA6I,gBAAA,YAA0C,aAAAC,GAAA;MAcuB1R,uDAAA,GAAuB;MAAvBA,wDAAA,SAAAiH,GAAA,CAAA2B,MAAA,CAAA+I,UAAA,CAAuB;MAQ3F3R,uDAAA,GAAuB;MAAvBA,wDAAA,SAAAiH,GAAA,CAAA2B,MAAA,CAAAgJ,UAAA,CAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AC/BmB;AAES;AACH;AACM;AACA;AACD;AACD;AAEG;AACkC;AACzB;AAEQ;;AAE7E;;GAEG;AAcI,MAAM,YAAY;;wEAAZ,YAAY;yGAAZ,YAAY;8GAFZ,CAAC,mGAAkB,EAAE,mEAAqB,EAAE,6EAAc,CAAC,YARpE,yDAAY;QACZ,kEAAgB;QAChB,qEAAe;QACf,qEAAe;QACf,iEAAgB;QAChB,qEAAa;QACb,gEAAmB;mIAIV,YAAY,mBAZR,sFAAoB,aAEjC,yDAAY;QACZ,kEAAgB;QAChB,qEAAe;QACf,qEAAe;QACf,iEAAgB;QAChB,qEAAa;QACb,gEAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACnBU;AACwB;AACd;AAIgD;;;;;;;;AAE3F;;GAEG;AAEI,MAAM,iBAAiB;IAoD5B;;OAEG;IACH,YACE,KAAqB,EACrB,qBAA4C,EAC5C,wBAAkD,EAClD,aAA4B,EAC5B,MAAc,EACd,cAA8B;QAhChC;;WAEG;QACI,aAAQ,GAAG,IAAI,yCAAO,EAAW,CAAC;QASzC;;WAEG;QACa,iCAA4B,GAAG,GAAiD,EAAE,CAChG,IAAI,CAAC,KAAK,CAAC,4BAA4B;QAEzC;;WAEG;QACa,cAAS,GAAG,GAA4B,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC;QAahF,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,qBAAqB,GAAG,qBAAqB,CAAC;QACnD,IAAI,CAAC,wBAAwB,GAAG,wBAAwB,CAAC;QACzD,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;QACnC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;QACrC,IAAI,CAAC,YAAY,GAAG,IAAI,8CAAY,EAAE,CAAC;QACvC,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;QAChB,IAAI,CAAC,YAAY,GAAG,EAAE,CAAC;IACzB,CAAC;IACD;;;OAGG;IACI,WAAW;QAChB,IAAI,CAAC,mBAAmB,EAAE,CAAC;QAC3B,UAAU,CAAC,GAAG,EAAE;YACd,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YACrB,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC;QAC3B,CAAC,EAAE,IAAI,CAAC,CAAC;IACX,CAAC;IACD;;OAEG;IACI,mBAAmB;QACxB,IAAI,CAAC,YAAY,CAAC,WAAW,EAAE,CAAC;IAClC,CAAC;IACD;;OAEG;IACI,aAAa,CAAC,EAAc;QACjC,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC,OAAO,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC;QAC/D,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;QACjE,YAAY,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC;QACxC,YAAY,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QAEjC,MAAM,kBAAkB,GAAG;YACzB,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE;YACjB,IAAI,EAAE,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,IAAI,EAAE;YAC7D,OAAO,EAAE,IAAI;YACb,YAAY,EAAE,IAAI;YAClB,QAAQ,EAAE,IAAI,IAAI,EAAE;YACpB,cAAc,EAAE,IAAI,CAAC,KAAK,CAAC,cAAc;YACzC,cAAc,EAAE,IAAI,CAAC,KAAK,CAAC,cAAc;YAEzC,MAAM,EAAE;gBACN,EAAE,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,EAAE;gBAChD,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,SAAS;gBAC9D,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,IAAI;gBACpD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,IAAI;gBACpD,gBAAgB,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,gBAAgB;gBAC5E,cAAc,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,cAAc;gBACxE,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,OAAO;gBAC1D,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,SAAS;gBAC9D,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,QAAQ;aAC7D;YACD,WAAW,EAAE;gBACX,0BAA0B,EAAE,IAAI,CAAC,YAAY;aAC9C;YACD,OAAO,EAAE;gBACP,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,UAAU;gBACjE,cAAc,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,cAAc;gBACzE,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,UAAU;gBACjE,EAAE,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,EAAE;gBACjD,cAAc,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,cAAc;gBACzE,cAAc,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,cAAc;gBACzE,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,UAAU;gBACjE,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,SAAS;gBAC/D,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,QAAQ;gBAC7D,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,QAAQ;gBAC7D,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,MAAM;gBACzD,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,SAAS;gBAC/D,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,UAAU;gBACjE,WAAW,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,WAAW;gBACnE,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,MAAM;gBACzD,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,OAAO;gBAC3D,UAAU,EAAE,IAAI;gBAChB,YAAY,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,YAAY;gBACrE,WAAW,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,WAAW;gBACnE,qBAAqB,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,qBAAqB;gBACvF,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,IAAI;aACtD;YACD,QAAQ,EAAE;gBACR,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,UAAU;gBAClE,cAAc,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,cAAc;gBAC1E,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,UAAU;gBAClE,EAAE,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,EAAE;gBAClD,cAAc,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,cAAc;gBAC1E,cAAc,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,cAAc;gBAC1E,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,UAAU;gBAClE,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,SAAS;gBAChE,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,QAAQ;gBAC9D,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,QAAQ;gBAC9D,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,MAAM;gBAC1D,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,SAAS;gBAChE,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,UAAU;gBAClE,WAAW,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,WAAW;gBACpE,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,MAAM;gBAC1D,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,OAAO;gBAC5D,UAAU,EAAE,IAAI;gBAChB,YAAY,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,YAAY;gBACtE,WAAW,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,WAAW;gBACpE,qBAAqB,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,qBAAqB;aACzF;YACD,eAAe,EAAE;gBACf,EAAE,EAAE,CAAC;gBACL,IAAI,EAAE,WAAW;aAClB;YACD,OAAO,EAAE;gBACP,EAAE,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,EAAE;gBACjD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,IAAI;aACtD;YACD,MAAM,EAAE;gBACN,EAAE,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,EAAE;gBAChD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,IAAI;gBACpD,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,UAAU;aACjE;YACD,WAAW,EAAE;gBACX,EAAE,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,WAAW,CAAC,EAAE;gBACrD,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,WAAW,CAAC,QAAQ;gBACjE,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,WAAW,CAAC,SAAS;gBACnE,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,kBAAkB,CAAC,UAAU;gBAC5E,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,WAAW,CAAC,QAAQ;gBACjE,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,WAAW,CAAC,QAAQ;gBACjE,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,WAAW,CAAC,KAAK;gBAC3D,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,WAAW,CAAC,MAAM;aAC9D;YACD,kBAAkB,EAAE;gBAClB,EAAE,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,kBAAkB,CAAC,EAAE;gBAC5D,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,kBAAkB,CAAC,QAAQ;gBACxE,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,kBAAkB,CAAC,SAAS;gBAC1E,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,kBAAkB,CAAC,UAAU;gBAC5E,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,kBAAkB,CAAC,QAAQ;gBACxE,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,kBAAkB,CAAC,QAAQ;gBACxE,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,kBAAkB,CAAC,KAAK;gBAClE,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,kBAAkB,CAAC,MAAM;aACrE;SACF,CAAC;QAEF,MAAM,cAAc,GAAmB;YACrC,SAAS,EAAE,CAAC;YACZ,SAAS,EAAE,CAAC;YACZ,UAAU,EAAE,CAAC;YACb,IAAI,EAAE,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,IAAI,EAAE;YAC7D,OAAO,EAAE,KAAK;YACd,OAAO,EAAE,eAAe,IAAI,CAAC,SAAS,CAAC,kBAAkB,CAAC,qBAAqB;YAC/E,SAAS,EAAE,IAAI,IAAI,EAAE;YACrB,OAAO,EAAE,IAAI,IAAI,EAAE;YACnB,KAAK,EAAE,IAAI;YACX,aAAa,EAAE,CAAC;YAChB,WAAW,EAAE,IAAI,IAAI,EAAE;SACxB,CAAC;QAEF,MAAM,cAAc,GAAG,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;QACtD,MAAM,aAAa,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,cAAc,CAAC,EAAqB,CAAC;QACjG,IAAI,CAAC,qBAAqB,CAAC,YAAY,CAAC,aAAa,CAAC;aACnD,IAAI,CAAC,yDAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;aAC9B,SAAS,CAAC,GAAG,EAAE;YACd,EAAE,EAAE,CAAC;QACP,CAAC,CAAC,CAAC;IACP,CAAC;IAED;;OAEG;IACI,gBAAgB;QACrB,MAAM,gBAAgB,GAAe;YACnC,aAAa,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI;YAC5E,YAAY,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,cAAc;YACxE,eAAe,EAAE,6GAA4B;YAC7C,UAAU,EAAE;sBACI,mCAAM,CAAC,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,mBAAmB,CAAC,MAAM,mCAAM,CACpG,IAAI,CAAC,KAAK,CAAC,cAAc,CAC1B;iBACI,MAAM,CAAC,IAAI,CAAC;iBACZ,MAAM,CAAC,SAAS,CAAC;gBACZ,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,kBAAkB,CAAC,QAAQ;iBAC7D,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,UAAU;qBAChD,IAAI,CAAC,YAAY;mBACnB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,WAAW,CAAC,IAAI,IAAI,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,WAAW,CAAC,OACjH;mBACW;SACd,CAAC;QAEF,MAAM,cAAc,GAAG,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC;QACxD,MAAM,aAAa,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,cAAc,CAAC,EAAqB,CAAC;QAEjG,IAAI,CAAC,wBAAwB,CAAC,sBAAsB,CAAC,aAAa,CAAC;aAChE,IAAI,CAAC,yDAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;aAC9B,SAAS,CAAC,GAAG,EAAE;YACd,IAAI,CAAC,eAAe,CAClB;gBACE,MAAM,EAAE,0BAA0B;gBAClC,SAAS,EAAE;oBACT;wBACE,IAAI,EAAE;4BACJ,WAAW,EAAE,UAAU;4BACvB,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,QAAQ;4BAC7D,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,QAAQ;4BAC/D,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;4BAC5D,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC;yBACnE;wBACD,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC,uBAAuB;wBACtC,MAAM,EAAE,YAAY,CAAC,OAAO,CAAC,sBAAsB,CAAC,IAAI,IAAI;qBAC7D;iBACF;aACF,EACD,GAAG,EAAE,GAAG,CAAC,CACV,CAAC;QACJ,CAAC,CAAC,CAAC;QACL,YAAY,CAAC,KAAK,EAAE,CAAC;QACrB,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC7B,CAAC;IAED;;;OAGG;IACI,eAAe,CAAC,IAAmB,EAAE,EAAc;QACxD,MAAM,cAAc,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QAC5C,MAAM,aAAa,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,cAAc,CAAC,EAAqB,CAAC;QACjG,IAAI,CAAC,aAAa,CAAC,eAAe,CAAC,aAAa,CAAC;aAC9C,IAAI,CAAC,yDAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;aAC9B,SAAS,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;IAC3B,CAAC;IAED;;;OAGG;IACI,SAAS,CAAC,IAAY;QAC3B,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;;kFAvSU,iBAAiB;kHAAjB,iBAAiB,WAAjB,iBAAiB;;;;;;;;;;;;;;;;ACpB9B;;GAEG;AACH,IAAY,aAGX;AAHD,WAAY,aAAa;IACrB,4DAA2C;IAC3C,4DAA2C;AAC/C,CAAC,EAHW,aAAa,KAAb,aAAa,QAGxB;;;;;;;;;;;;;;;;ACND;;GAEG;AACH,IAAY,cAKX;AALD,WAAY,cAAc;IACtB,iDAAQ;IACR,6EAAsB;IACtB,iFAAwB;IACxB,uDAAW;AACf,CAAC,EALW,cAAc,KAAd,cAAc,QAKzB;;;;;;;;;;;;;;;;ACRD;;GAEG;AACH,IAAY,eAMX;AAND,WAAY,eAAe;IACvB,sDAA8B;IAC9B,mDAA2B;IAC3B,wDAAgC;IAChC,0DAAkC;IAClC,yDAAiC;AACrC,CAAC,EANW,eAAe,KAAf,eAAe,QAM1B;;;;;;;;;;;;;;;;;;ACPD;;GAEG;AAII,MAAM,WAAW;IACtB;;;;OAIG;IACI,SAAS,CAAC,KAAqB;QACpC,IAAI,KAAK,KAAK,IAAI,EAAE;YAClB,OAAO,IAAI,CAAC;SACb;QAED,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;YACxB,OAAO,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC;SAC3B;QAED,OAAO,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC;IACzC,CAAC;;sEAhBU,WAAW;sHAAX,WAAW;;;;;;;;;;;;;;;;;;ACJxB;;GAEG;AAII,MAAM,YAAY;IACvB;;;OAGG;IACI,SAAS,CAAC,KAAU;QACzB,IAAI,CAAC,KAAK,EAAE;YACV,OAAO,EAAE,CAAC;SACX;QAED,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAEhC,MAAM,IAAI,GAAgB,EAAE,CAAC;QAE7B,IAAI,CAAC,OAAO,CAAC,CAAC,GAAW,EAAE,EAAE,CAC3B,IAAI,CAAC,IAAI,CAAC;YACR,GAAG;YACH,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC;SAClB,CAAC,CACH,CAAC;QAEF,OAAO,IAAI,CAAC;IACd,CAAC;;wEAtBU,YAAY;wHAAZ,YAAY;;;;;;;;;;;;;;;;;;;;ACPzB;;GAEG;AAII,MAAM,aAAa;IAMxB,YAAmB,SAAuB;QACxC,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;IAC5B,CAAC;IAEK,SAAS,CAAC,KAAa,EAAE,IAAY;QAC1C,QAAQ,IAAI,EAAE;YACZ,KAAK,MAAM;gBACT,OAAO,IAAI,CAAC,SAAS,CAAC,uBAAuB,CAAC,KAAK,CAAC,CAAC;YACvD,KAAK,OAAO;gBACV,OAAO,IAAI,CAAC,SAAS,CAAC,wBAAwB,CAAC,KAAK,CAAC,CAAC;YACxD,KAAK,QAAQ;gBACX,OAAO,IAAI,CAAC,SAAS,CAAC,yBAAyB,CAAC,KAAK,CAAC,CAAC;YACzD,KAAK,KAAK;gBACR,OAAO,IAAI,CAAC,SAAS,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAAC;YACtD,KAAK,aAAa;gBAChB,OAAO,IAAI,CAAC,SAAS,CAAC,8BAA8B,CAAC,KAAK,CAAC,CAAC;YAC9D;gBACE,OAAO,IAAI,CAAC,SAAS,CAAC,uBAAuB,CAAC,KAAK,CAAC,CAAC;SACxD;IACH,CAAC;;0EAzBU,aAAa;0HAAb,aAAa;;;;;;;;;;;;;;;;;;ACP1B;;GAEG;AAII,MAAM,UAAU;IACrB;;;;OAIG;IACI,SAAS,CAAC,KAAmB,EAAE,WAAmB,EAAE,EAAE,aAAsB,KAAK;QACtF,IAAI,CAAC,KAAK,IAAI,QAAQ,KAAK,EAAE,EAAE;YAC7B,OAAO,KAAc,CAAC;SACvB;QACD,MAAM,OAAO,GAAW,QAAQ,CAAC;QAEjC,MAAM,MAAM,GAA4B,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;YAC/C,IAAI,MAAM,GAAG,CAAC,CAAC;YAEf,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,SAAS,EAAE;gBAC5B,MAAM,GAAG,CAAC,CAAC,CAAC;aACb;iBAAM,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,SAAS,EAAE;gBACnC,MAAM,GAAG,CAAC,CAAC;aACZ;iBAAM;gBACL,MAAM,GAAG,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;aACzE;YAED,OAAO,UAAU,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;QAC3C,CAAC,CAAC;QAEF,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAEnB,OAAO,KAAK,CAAC;IACf,CAAC;;oEA7BU,UAAU;oHAAV,UAAU;;;;;;;;;;;;;;;;;;ACNvB;;GAEG;AAII,MAAM,SAAS;IACpB;;;;OAIG;IACI,SAAS,CAAC,KAAc;QAC7B,OAAO,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC;IACvC,CAAC;;kEARU,SAAS;kHAAT,SAAS;;;;;;;;;;;;;;;;;;;;ACPgB;AACkC;;AAExE;;GAEG;AAEI,MAAM,cAAc;IAD3B;QAGE;;WAEG;QACc,QAAG,GAAG,qDAAuB,CAAC,gGAAyB,CAAC,CAAC;QAC1E;;WAEG;QACc,OAAE,GAAG,qDAAuB,CAAC,0GAAmC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;KAqB3F;IAnBC;;OAEG;IACI,SAAS,CAAC,IAAY;QAE3B,MAAM,SAAS,GAAG,kDAAoB,CAAC,qDAAuB,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;QAE5G,OAAO,SAAS,CAAC,QAAQ,EAAE,CAAC;IAC9B,CAAC;IAED;;OAEG;IACK,SAAS,CAAC,IAAY;QAE5B,MAAM,SAAS,GAAG,kDAAoB,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;QAExE,OAAO,SAAS,CAAC,QAAQ,CAAC,+CAAiB,CAAC,CAAC;IAC/C,CAAC;;4EA7BU,cAAc;+GAAd,cAAc,WAAd,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;ACRoB;AAES;AACT;AAEwB;AACA;AACX;AACG;AACF;AACR;AACY;;AAEjE;;GAEG;AAMI,MAAM,YAAY;;wEAAZ,YAAY;yGAAZ,YAAY;6GAHb,yDAAY,EAAE,kEAAgB,EAAE,0DAAY;mIAG3C,YAAY,mBAJR,qEAAW,EAAE,wEAAY,EAAE,8DAAS,EAAE,sEAAU,EAAE,gFAAe,EAAE,0EAAa,EAAE,gFAAe,aACtG,yDAAY,EAAE,kEAAgB,EAAE,0DAAY,aAC5C,qEAAW,EAAE,wEAAY,EAAE,8DAAS,EAAE,sEAAU,EAAE,gFAAe,EAAE,gFAAe,EAAC,0EAAa;;;;;;;;;;;;;;;;;;;;ACnBhF;AACW;AAGmB;AAE1D;;GAEG;AACI,MAAe,qBAAqB;IAA3C;QACE;;WAEG;QACc,0BAAqB,GAAG,IAAI,iDAAe,CAAmB,mEAAoB,CAAC,CAAC;QAErG;;WAEG;QACI,2BAAsB,GAAG,IAAI,CAAC,qBAAqB,CAAC,YAAY,EAAE,CAAC;IAyB5E,CAAC;IAvBC;;OAEG;IACH,IAAW,KAAK;QACd,OAAO,6CAAW,CAAC,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC;IACvD,CAAC;IAED;;;OAGG;IACI,IAAI,CAAC,KAAuB;QACjC,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACzC,CAAC;IAED;;OAEG;IACI,aAAa;QAClB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QAEzB,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACnB,CAAC;CACF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACpBD;;GAEG;AACI,MAAM,MAAM,GAAW;IAC5B,EAAE,EAAE,CAAC;IACL,IAAI,EAAE,EAAE;CACT,CAAC;AAEF;;GAEG;AACI,MAAM,IAAI,GAAS;IACxB,QAAQ,EAAE,EAAE;CACb,CAAC;AAEF;;GAEG;AACI,MAAM,OAAO,GAAY;IAC9B,EAAE,EAAE,CAAC;IACL,IAAI,EAAE,EAAE;CACT,CAAC;AAEF;;GAEG;AACI,MAAM,eAAe,GAAoB;IAC9C,EAAE,EAAE,CAAC;IACL,IAAI,EAAE,EAAE;CACT,CAAC;AAEF;;GAEG;AACI,MAAM,YAAY,GAAiB;IACxC,EAAE,EAAE,CAAC;IACL,IAAI,EAAE,EAAE;IACR,IAAI,EAAE,EAAE;CACT,CAAC;AAEF;;GAEG;AACI,MAAM,WAAW,GAAgB;IACtC,EAAE,EAAE,CAAC;IACL,IAAI,EAAE,EAAE;CACT,CAAC;AAEF;;GAEG;AACI,MAAM,IAAI,GAAgB;IAC/B,EAAE,EAAE,CAAC;IACL,IAAI,EAAE,EAAE;IACR,YAAY,EAAE,CAAC;IACf,UAAU,EAAE,EAAE;CACf,CAAC;AAEF;;GAEG;AACI,MAAM,OAAO,GAAY;IAC9B,cAAc,EAAE,CAAC;IACjB,cAAc,EAAE,EAAE;IAClB,QAAQ,EAAE,EAAE;IACZ,UAAU,EAAE,EAAE;IACd,WAAW,EAAE,EAAE;IACf,MAAM,EAAE,EAAE;IACV,UAAU,EAAE,IAAI;CACjB,CAAC;AAEF;;GAEG;AACI,MAAM,WAAW,GAAgB;IACtC,cAAc,EAAE,EAAE;IAClB,YAAY,EAAE,EAAE;CACjB,CAAC;AAEF;;GAEG;AACI,MAAM,WAAW,GAAgB;IACtC,0BAA0B,EAAE,EAAE;IAC9B,0BAA0B,EAAE,EAAE;CAC/B,CAAC;AAEF;;GAEG;AACI,MAAM,OAAO,GAAY;IAC9B,oBAAoB,EAAE,EAAE;IACxB,mBAAmB,EAAE,EAAE;IACvB,iBAAiB,EAAE,EAAE;IACrB,eAAe,EAAE,EAAE;IACnB,cAAc,EAAE,EAAE;IAClB,YAAY,EAAE,EAAE;CACjB,CAAC;AAEF;;GAEG;AACI,MAAM,KAAK,GAAU;IAC1B,IAAI,EAAE,EAAE;IACR,GAAG,EAAE,EAAE;IACP,KAAK,EAAE,EAAE;CACV,CAAC;AAEF;;GAEG;AACI,MAAM,IAAI,GAAS;IACxB,IAAI,EAAE,EAAE;IACR,IAAI,EAAE,CAAC,KAAK,CAAC;CACd,CAAC;AAEF;;GAEG;AACI,MAAM,aAAa,GAAkB;IAC1C,EAAE,EAAE,CAAC;IACL,OAAO,EAAE,KAAK;IACd,YAAY,EAAE,KAAK;IACnB,IAAI,EAAE,EAAE;IACR,IAAI,EAAE,EAAE;IACR,IAAI,EAAE,CAAC,IAAI,CAAC;CACb,CAAC;AAEF;;GAEG;AACI,MAAM,cAAc,GAAmB;IAC5C,KAAK,EAAE,CAAC;IACR,IAAI,EAAE,aAAa;CACpB,CAAC;AAEF;;GAEG;AACI,MAAM,MAAM,GAAW;IAC5B,EAAE,EAAE,EAAE;IACN,SAAS,EAAE,CAAC;IACZ,IAAI,EAAE,EAAE;IACR,IAAI,EAAE,EAAE;IACR,cAAc,EAAE,CAAC;IACjB,gBAAgB,EAAE,EAAE;CACrB,CAAC;AAEF;;GAEG;AACI,MAAM,iBAAiB,GAAsB;IAClD,SAAS,EAAE,CAAC;IACZ,QAAQ,EAAE,EAAE;IACZ,cAAc,EAAE,EAAE;IAClB,cAAc,EAAE,EAAE;IAClB,MAAM;IACN,OAAO;IACP,QAAQ,EAAE,OAAO;IACjB,eAAe;IACf,OAAO;IACP,MAAM;IACN,WAAW,EAAE,IAAI;IACjB,kBAAkB,EAAE,IAAI;CACzB,CAAC;AAEF;;GAEG;AACI,MAAM,kBAAkB,GAAuB;IACpD,KAAK,EAAE,CAAC;IACR,KAAK,EAAE,CAAC;IACR,MAAM,EAAE,CAAC;IACT,IAAI,EAAE,EAAE;CACT,CAAC;AAEF;;GAEG;AACI,MAAM,oBAAoB,GAAqB;IACpD,kBAAkB;IAClB,WAAW,EAAE,KAAK;IAClB,YAAY,EAAE,KAAK;IACnB,iBAAiB;CAClB,CAAC;;;;;;;;;;;;;;;;AC7MF;;GAEG;AACI,MAAM,WAAW,GAAwB;IAC5C,UAAU,EAAE,IAAI;IAChB,aAAa,EAAE,0CAA0C;IACzD,aAAa,EAAE,kCAAkC;IACjD,kBAAkB,EAAE,iFAAiF;IACrG,cAAc,EAAE,EACf;IACD,IAAI,EAAE;QACJ,GAAG,EAAE,WAAW;QAChB,GAAG,EAAE,8DAA8D;QACnE,IAAI,EAAE,+CAA+C;QACrD,YAAY,EAAE,wDAAwD;QACtE,qBAAqB,EAAE,8DAA8D;QACrF,IAAI,EAAE,+CAA+C;QACrD,MAAM,EAAE,iDAAiD;QACzD,YAAY,EAAE,uDAAuD;QACrE,WAAW,EAAE,2DAA2D;QACxE,iBAAiB,EAAE,6DAA6D;QAChF,QAAQ,EAAE,mDAAmD;QAC7D,QAAQ,EAAE,mDAAmD;QAC7D,oBAAoB,EAAE,6DAA6D;QACnF,eAAe,EAAE,2DAA2D;QAC5E,gBAAgB,EAAE,yDAAyD;QAC3E,kBAAkB,EAAE,2DAA2D;QAC/E,kBAAkB,EAAE,4DAA4D;QAChF,UAAU,EAAE,sDAAsD;QAClE,qBAAqB,EAAE,8DAA8D;QACrF,eAAe,EAAE,wDAAwD;QACzE,YAAY,EAAE,qDAAqD;QACnE,QAAQ,EAAE,mDAAmD;QAC7D,IAAI,EAAE,+CAA+C;QACrD,SAAS,EAAE,uDAAuD;QAClE,gBAAgB,EAAC,yDAAyD;QAC1E,SAAS,EAAE,uDAAuD;KACnE;IACD,eAAe,EAAE,aAAa;CACjC,CAAC;;;;;;;;;;;;;;;;;;ACzC6C;AAGF;AACY;AAEzD,IAAI,6EAAsB,EAAE;IAC1B,6DAAc,EAAE,CAAC;CAClB;AAED,wEAAwB;KACrB,eAAe,CAAC,sDAAS,CAAC;KAC1B,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;;;;;;;;;;;ACZtC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;ACvSA","sources":["./apps/website/src/app/app-routing.module.ts","./apps/website/src/app/app.component.ts","./apps/website/src/app/app.component.html","./apps/website/src/app/app.module.ts","./apps/website/src/app/app.state.ts","./apps/website/src/app/components/error/error.component.ts","./apps/website/src/app/components/error/error.component.html","./apps/website/src/app/components/facade/validation.facade.ts","./apps/website/src/app/components/forbidden/forbidden.component.ts","./apps/website/src/app/components/forbidden/forbidden.component.html","./apps/website/src/app/components/unauthorized/unauthorized.component.ts","./apps/website/src/app/components/unauthorized/unauthorized.component.html","./apps/website/src/app/components/validation/validation.component.ts","./apps/website/src/app/components/validation/validation.component.html","./apps/website/src/app/components/welcome/welcome.component.ts","./apps/website/src/app/components/welcome/welcome.component.html","./apps/website/src/app/core/guards/authenticated.guard.ts","./apps/website/src/app/core/interceptors/server-error/server-error.interceptor.ts","./apps/website/src/app/core/interceptors/token/token.interceptor.ts","./apps/website/src/app/core/services/auth/authentication.service.ts","./apps/website/src/app/core/services/error/error.service.ts","./apps/website/src/app/core/services/ip-service/ip-service.service.ts","./apps/website/src/app/core/services/logging/logging.service.ts","./apps/website/src/app/core/services/validator-message/validator-message.service.ts","./apps/website/src/app/modules/Models/Enums/codes.enum.ts","./apps/website/src/app/modules/modify-cancel/facades/modify-cancel.facade.ts","./apps/website/src/app/shared/components/footer/footer.component.ts","./apps/website/src/app/shared/components/footer/footer.component.html","./apps/website/src/app/shared/components/header/header.component.ts","./apps/website/src/app/shared/components/header/header.component.html","./apps/website/src/app/shared/dialogs/custom-modal/config/assignment/config-modals-validation.ts","./apps/website/src/app/shared/dialogs/custom-modal/config/modify-cancel/config-modals-modify-cancel.ts","./apps/website/src/app/shared/dialogs/custom-modal/config/validation/config-modals-validation.ts","./apps/website/src/app/shared/dialogs/custom-modal/custom-modal.component.ts","./apps/website/src/app/shared/dialogs/custom-modal/custom-modal.component.html","./apps/website/src/app/shared/dialogs/dialog.module.ts","./apps/website/src/app/shared/dialogs/facade/custom-modal.facade.ts","./apps/website/src/app/shared/models/enum-account-states/account-states.enum.ts","./apps/website/src/app/shared/models/enum-status-segmenter/status-segmenter.enum.ts","./apps/website/src/app/shared/models/enum-type-interaction/type-interaction.enum.ts","./apps/website/src/app/shared/pipes/isEmpty/is-empty.pipe.ts","./apps/website/src/app/shared/pipes/keyValue/key-value.pipe.ts","./apps/website/src/app/shared/pipes/sanitizer/sanitizer.pipe.ts","./apps/website/src/app/shared/pipes/sorted-pipe/sorted.pipe.ts","./apps/website/src/app/shared/pipes/state/state.pipe.ts","./apps/website/src/app/shared/services/encrypt/encrypt.service.ts","./apps/website/src/app/shared/shared.module.ts","./apps/website/src/app/state/agent-interaction.state.ts","./apps/website/src/app/state/init-agent.const.ts","./apps/website/src/environments/environment.ts","./apps/website/src/main.ts","./node_modules/moment/locale/ sync ^\\.\\/.*$","ignored|/usr/src/app/node_modules/crypto-js|crypto"],"sourcesContent":["import { NgModule } from '@angular/core';\nimport { RouterModule, Routes } from '@angular/router';\n\nimport { ErrorComponent } from './components/error/error.component';\nimport { ForbiddenComponent } from './components/forbidden/forbidden.component';\nimport { UnauthorizedComponent } from './components/unauthorized/unauthorized.component';\nimport { ValidationComponent } from './components/validation/validation.component';\nimport { WelcomeComponent } from './components/welcome/welcome.component';\nimport { AuthenticatedGuard } from './core/guards/authenticated.guard';\n\n/**\n * Matriz de rutas\n */\nconst routes: Routes = [\n {\n path: '',\n component: WelcomeComponent,\n },\n {\n path: 'validation-assignment',\n component: ValidationComponent,\n },\n {\n path: 'validation-modify-cancel',\n component: ValidationComponent,\n },\n {\n path: 'validation-search',\n component: ValidationComponent,\n },\n {\n path: 'assignment-module',\n loadChildren: () => import('./modules/assignment/assignment.module').then((x) => x.AssignmentModule),\n canLoad: [AuthenticatedGuard],\n },\n {\n path: 'search-module',\n loadChildren: () => import('./modules/search/search.module').then((x) => x.SearchModule),\n canLoad: [AuthenticatedGuard],\n },\n {\n path: 'modifycancel-module',\n loadChildren: () => import('./modules/modify-cancel/modify-cancel.module').then((x) => x.ModifyCancelModule),\n canLoad: [AuthenticatedGuard],\n },\n {\n path: 'assistant',\n loadChildren: () => import('./modules/required/required.module').then((x) => x.RequiredModule),\n canLoad: [AuthenticatedGuard],\n },\n {\n path: 'unauthorized',\n component: UnauthorizedComponent,\n },\n {\n path: 'forbidden',\n component: ForbiddenComponent,\n },\n {\n path: '**',\n component: ErrorComponent,\n },\n];\n\n/**\n * Modulo encargado de administrar las rutas base del sistema\n */\n@NgModule({\n imports: [RouterModule.forRoot(routes, { scrollPositionRestoration: 'top', relativeLinkResolution: 'legacy' })],\n exports: [RouterModule],\n})\nexport class AppRoutingModule { }\n","import { Component, HostListener } from '@angular/core';\nimport { NavigationStart, Router } from '@angular/router';\n\n/**\n * Componente principal de la aplicación que estructura el header, footer y sección de trabajo\n */\n@Component({\n selector: 'prv-root',\n templateUrl: './app.component.html',\n styleUrls: ['./app.component.scss'],\n})\nexport class AppComponent {\n /**\n * Provides access to information about a route associated with a component that is loaded in an outlet.\n */\n private readonly router: Router;\n /**\n * Activo footer\n */\n public showHead = false;\n /**\n * initial AppComponent\n * @param router rutas\n */\n public constructor(router: Router) {\n this.router = router;\n this.router.events.forEach((event) => {\n if (event instanceof NavigationStart) {\n event.url === '/assignment-module/printTemplate/PrintSchedule' ||\n event.url === '/search-module/printTemplate/PrintSchedule'\n ? (this.showHead = false)\n : (this.showHead = true);\n }\n });\n }\n\n /**\n * Metodo que se ejecuta cuando de detecta que se recargara la pagina\n * @param event Información del Evento\n */\n @HostListener('window:beforeunload', ['$event'])\n public unloadHandler(event: Event) {\n event.preventDefault();\n }\n}\n","\n\n\n\n
Cargando...
\n\n","import { CommonModule } from '@angular/common';\nimport { HttpClientModule, HTTP_INTERCEPTORS } from '@angular/common/http';\nimport { APP_INITIALIZER, NgModule } from '@angular/core';\nimport { FlexLayoutModule } from '@angular/flex-layout';\nimport { ReactiveFormsModule } from '@angular/forms';\nimport { MatDialogModule } from '@angular/material/dialog';\nimport { BrowserModule } from '@angular/platform-browser';\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\nimport { NexaConfigurationService } from '@nexa/configuration';\nimport { EngineAvailabilityApiService } from '@prv/engine-availability';\nimport { GenderApiService } from '@prv/gender';\nimport { CountryApiService } from '@prv/georeference';\nimport { InteractionApiService } from '@prv/interaction';\nimport { ScheduleAssignedApiService } from '@prv/schedule-history';\nimport { DetailReasonStateSchedulingApiService, StateSchedulingApiService } from '@prv/scheduling-state';\nimport { TypeDocumentsApiService } from '@prv/type-document';\nimport { StructureTypologyApiService, TypeTypologyApiService } from '@prv/typology';\nimport { RecaptchaFormsModule, RecaptchaModule, RecaptchaSettings, RECAPTCHA_LANGUAGE, RECAPTCHA_SETTINGS } from 'ng-recaptcha';\nimport { NgxSpinnerModule } from 'ngx-spinner';\n\nimport { environment } from '../environments/environment';\n\nimport { AppRoutingModule } from './app-routing.module';\nimport { AppComponent } from './app.component';\nimport { AppModuleState } from './app.state';\nimport { ErrorComponent } from './components/error/error.component';\nimport { ValidationFacade } from './components/facade/validation.facade';\nimport { ForbiddenComponent } from './components/forbidden/forbidden.component';\nimport { UnauthorizedComponent } from './components/unauthorized/unauthorized.component';\nimport { ValidationComponent } from './components/validation/validation.component';\nimport { WelcomeComponent } from './components/welcome/welcome.component';\nimport { ServerErrorInterceptor } from './core/interceptors/server-error/server-error.interceptor';\nimport { TokenInterceptorService } from './core/interceptors/token/token.interceptor';\nimport { ErrorService } from './core/services/error/error.service';\nimport { IpServiceService } from './core/services/ip-service/ip-service.service';\nimport { LoggingService } from './core/services/logging/logging.service';\nimport { ValidatorMessageService } from './core/services/validator-message/validator-message.service';\nimport { DialogModule } from './shared/dialogs/dialog.module';\nimport { CustomModalFacade } from './shared/dialogs/facade/custom-modal.facade';\nimport { SharedModule } from './shared/shared.module';\n\n/**\n * Modulo principal de la aplicación\n */\n@NgModule({\n declarations: [AppComponent, ErrorComponent, ForbiddenComponent, UnauthorizedComponent, WelcomeComponent, ValidationComponent],\n imports: [\n CommonModule,\n BrowserModule,\n AppRoutingModule,\n ReactiveFormsModule,\n RecaptchaModule,\n RecaptchaFormsModule,\n HttpClientModule,\n BrowserAnimationsModule,\n FlexLayoutModule,\n SharedModule,\n MatDialogModule,\n DialogModule,\n NgxSpinnerModule,\n ],\n providers: [\n AppModuleState,\n ValidationFacade,\n CustomModalFacade,\n AppModuleState,\n GenderApiService,\n CountryApiService,\n TypeDocumentsApiService,\n EngineAvailabilityApiService,\n StructureTypologyApiService,\n TypeTypologyApiService,\n EngineAvailabilityApiService,\n ScheduleAssignedApiService,\n StateSchedulingApiService,\n DetailReasonStateSchedulingApiService,\n InteractionApiService,\n ValidatorMessageService,\n LoggingService,\n ErrorService,\n ValidatorMessageService,\n IpServiceService,\n NexaConfigurationService,\n {\n provide: RECAPTCHA_SETTINGS,\n useValue: { siteKey: environment.googleCaptcha } as RecaptchaSettings,\n },\n {\n provide: RECAPTCHA_LANGUAGE,\n useValue: 'es',\n },\n {\n provide: HTTP_INTERCEPTORS,\n useClass: TokenInterceptorService,\n multi: true,\n },\n {\n provide: HTTP_INTERCEPTORS,\n useClass: ServerErrorInterceptor,\n multi: true,\n },\n {\n provide: APP_INITIALIZER,\n useFactory: (configService: NexaConfigurationService) => () => configService.loadConfigurations(environment).toPromise(),\n deps: [NexaConfigurationService],\n multi: true,\n },\n ],\n bootstrap: [AppComponent],\n})\nexport class AppModule {}\n","import { Injectable } from '@angular/core';\nimport { AvailabilityDto } from '@prv/engine-availability';\nimport { CityDto, CountryDto, DepartmentDto, NodeDto } from '@prv/georeference';\nimport { ChannelDto } from '@prv/georeference/lib/models/channel.dto';\nimport { PositionDto, PositionTypeTypologyDto } from '@prv/position';\nimport { Contact, DoubleAdvisory, PayloadScheduling, ScheduleDto, Typify } from '@prv/schedule-history';\nimport { DetailReasonStateSchedulingDto, StateSchedulingDto } from '@prv/scheduling-state';\nimport { TypeDocumentDto } from '@prv/type-document';\nimport { PayloadTypologySettingsDto, StructureTypologyDto, TypesAttendeeDto, TypeTypologyDto } from '@prv/typology';\nimport { ServantDto } from '@prv/user';\nimport { AccountDataDto, BasicDataAffiliateDto, TypologyDto } from '@prv/ws-basic-data';\nimport { ObjectResponse } from '@prv/ws-schedule-claim/lib/models/object-response/object-response.dto';\nimport { ResponseDto } from '@prv/ws-viability';\nimport { DataSegmenterDto } from '@prv/ws-segmenter';\nimport * as _ from 'lodash';\nimport * as moment from 'moment';\nimport { BehaviorSubject } from 'rxjs';\n\nimport { DataScheduleCurrent } from './shared/models/data-schedule-current.model';\nimport { AgentInteraction } from './state/agent-interaction.interface';\nimport { AgentInteractionState } from './state/agent-interaction.state';\nimport { initAgentInteraction } from './state/init-agent.const';\n\n/**\n * Estado de AppModule\n */\n@Injectable()\nexport class AppModuleState extends AgentInteractionState {\n /**\n * Emite el listado de las disponibilidades calculadas en el motor de agendamiento\n */\n private readonly bsAvailabilities = new BehaviorSubject([]);\n /**\n * Emite los datos del afiliado obtenidos del WS Basic Data\n */\n private readonly bsBasicDataAffiliate = new BehaviorSubject({});\n /**\n * Emite lel listado de los paises\n */\n private readonly bsCountries = new BehaviorSubject([]);\n /**\n * Emite el listado de las ciudades\n */\n private readonly bsCities = new BehaviorSubject([]);\n /**\n * Emite el listado de las ciudades\n */\n private readonly bsCitiesAll = new BehaviorSubject([]);\n /**\n * Emite el listado de las ciudades\n */\n private readonly bsCitiesOne = new BehaviorSubject([]);\n /**\n * Emite la estructura key/Value de las ciudades\n */\n private readonly bsCitiesKey = new BehaviorSubject<{ [id: number]: string }>({});\n /**\n * Emite el listado de detalles de motivos de estados de agendamiento\n */\n private readonly bsDetailReasonStateScheduling = new BehaviorSubject([]);\n /**\n * Emite el listado de losa datos del detalle de la estructura de tipologia\n */\n private readonly bsDetailStructureTypologies = new BehaviorSubject([]);\n /**\n * Emite la información del detalle de la tipologia seleccionada\n */\n private readonly bsDetailTypologySelected = new BehaviorSubject({});\n /**\n * Emite los valores de los datos de la cuenta\n */\n private readonly bsDataAccount = new BehaviorSubject({});\n /**\n * Emite el listado de los departamentos\n */\n private readonly bsDepartments = new BehaviorSubject([]);\n /**\n * Emite el listado de todos los departamentos\n */\n private readonly bsDepartmentsAll = new BehaviorSubject([]);\n /**\n * Emite la estructura key/value de los departamentos\n */\n private readonly bsDepartmentsKey = new BehaviorSubject<{ [id: number]: string }>({});\n /**\n * Emite la estructura key/value de los generos\n */\n private readonly bsGendersKey = new BehaviorSubject<{ [id: number]: string }>({});\n /**\n * Emite la informacion de la bandera de habeas data\n */\n private readonly bsHabeasData = new BehaviorSubject(false);\n /**\n * Emite la informacion de la bandera de viabilidad\n */\n private readonly bsIsViable = new BehaviorSubject(false);\n /**\n * Emite la informacion de la bandera de afiliación\n */\n private readonly bsIsAffiliate = new BehaviorSubject(false);\n /**\n * Emite la informacion de la bandera de Doble Asesoria\n */\n private readonly bsIndicadorDobleAsesoria = new BehaviorSubject(false);\n /**\n * Emite los valores del indicador de agendar cita\n */\n private readonly bsIndicator = new BehaviorSubject('');\n /**\n * Emite el dato del id de solicitud de agendar cita\n */\n private readonly bsIdSolicitud = new BehaviorSubject(0);\n /**\n * Emite la lista de ids de canales\n */\n private readonly bsIdChannels = new BehaviorSubject([]);\n /**\n * Emite el listado de los nodos (oficinas)\n */\n private readonly bsNodes = new BehaviorSubject([]);\n /**\n * Emite el listado de los nodos (oficinas)\n */\n private readonly bsNodesAll = new BehaviorSubject([]);\n /**\n * Emite los datos del nodo (oficina)\n */\n private readonly bsOfficeId = new BehaviorSubject({});\n /**\n * Emite la información para el agendamiento\n */\n private readonly bsPayloadSchedulingModify = new BehaviorSubject({ contact: {} });\n /**\n * Emite el listado de las tipologias para el filtro (control select)\n */\n private readonly bsTypologiesFilter = new BehaviorSubject([]);\n /**\n * Emite los valores mas recientes de la tipologia seleccionada\n */\n private readonly bsTypologySelected = new BehaviorSubject({});\n /**\n * Emite el listado de los cargos asociados a ciertos tipos de tipologia\n */\n private readonly bsPositions = new BehaviorSubject([]);\n /**\n * Emite el listado de los cargos asociados a ciertos tipos de tipologia\n */\n private readonly bsPositionTypeTypologies = new BehaviorSubject([]);\n /**\n * Emite los valores mas recientes del motivo de la tipologia seleccionada\n */\n private readonly bsReasonTypologySelected = new BehaviorSubject({});\n /**\n * Emite el listado de las ciudades\n */\n private readonly bsResidentialCities = new BehaviorSubject([]);\n /**\n * Emite los datos del funcionario\n */\n private readonly bsServant = new BehaviorSubject({});\n /**\n * Emite el listado de las agendas\n */\n private readonly bsSchedule = new BehaviorSubject([]);\n /**\n * Emite los valores de las agendas del asistente\n */\n private readonly bsScheduleAssistant = new BehaviorSubject([]);\n /**\n * Emite los datos del agendamiento por cierto id\n */\n private readonly bsScheduleId = new BehaviorSubject({});\n /**\n * Emite el listado de agendamientos por cierta tipologia\n */\n private readonly bsScheduleTypology = new BehaviorSubject([]);\n /**\n * Emite el listado de estados de de agenda por id state\n */\n private readonly bsScheduleState = new BehaviorSubject([]);\n /**\n * Emite los valores mas recientes del stream de agenda lista\n */\n private readonly bsScheduleList = new BehaviorSubject([]);\n /**\n * Emite el valor mas reciente de la estructura de tipologia\n */\n private readonly bsStructureTypology = new BehaviorSubject({});\n /**\n * Total Agendas informacion adicional por ws\n */\n private readonly bsScheduleClaim = new BehaviorSubject({});\n /**\n * Información del servicio semanas cotizadas\n */\n private readonly bsSegmenter = new BehaviorSubject({});\n /**\n * Emite el listado de los tipos de documentos\n */\n private readonly bsTypeDocuments = new BehaviorSubject([]);\n /**\n * Emite el listado de los tipos de tipologia\n */\n private readonly bsTypeTypologies = new BehaviorSubject([]);\n /**\n * Emite los valores mas recientes del stream de tipos de asistente de la tipologia seleccionada\n */\n private readonly bsTypesAttendeeTypologySelected = new BehaviorSubject([]);\n /**\n * Emite el valor mas reciente de la tipos de tipologia\n */\n private readonly bsTypologiesFromCRM = new BehaviorSubject([]);\n /**\n * Total disponibilidades mañana\n */\n private readonly bsTotalTomorrow = new BehaviorSubject([]);\n /**\n * Total disponibilidades para esta semana\n */\n private readonly bsTotalItWeek = new BehaviorSubject([]);\n /**\n * Total disponibilidades para este año\n */\n private readonly bsTotalItYear = new BehaviorSubject([]);\n /**\n * Total disponibilidades para este mes\n */\n private readonly bsTotalItMonth = new BehaviorSubject([]);\n /**\n * Informacion de la viabilidad\n */\n private readonly bsViability = new BehaviorSubject({});\n\n /**\n * Observable Agent Interaction State\n */\n public payloadSchedulingModify$ = this.bsPayloadSchedulingModify.asObservable();\n /**\n * Observable con la información de las disponibilidades calculadas en el motor de agendamiento\n */\n public readonly availabilities$ = this.bsAvailabilities.asObservable();\n /**\n * Observable con información de los tipos de documento\n */\n public readonly basicDataAffiliate$ = this.bsBasicDataAffiliate.asObservable();\n /**\n * Observable con información de las ciudades\n */\n public readonly cities$ = this.bsCities.asObservable();\n /**\n * Observable con información de las ciudades\n */\n public readonly citiesAll$ = this.bsCitiesAll.asObservable();\n /**\n * Observable con información de las ciudades\n */\n public readonly citiesOne$ = this.bsCitiesOne.asObservable();\n /**\n * Observable con información de las ciudades\n */\n public readonly citiesKey$ = this.bsCitiesKey.asObservable();\n /**\n * Observable con información de los paises\n */\n public readonly countries$ = this.bsCountries.asObservable();\n /**\n * Observable con la información de la cuenta\n */\n public readonly dataAccount$ = this.bsDataAccount.asObservable();\n /**\n * Observable con información de los departamentos\n */\n public readonly departments$ = this.bsDepartments.asObservable();\n /**\n * Observable con información de los departamentos\n */\n public readonly departmentsAll$ = this.bsDepartmentsAll.asObservable();\n /**\n * Observable con información de los departamentos\n */\n public readonly departmentsKey$ = this.bsDepartmentsKey.asObservable();\n /**\n * Observable con información de los Estados\n */\n public readonly detailReasonStateScheduling$ = this.bsDetailReasonStateScheduling.asObservable();\n /**\n * Observable con información del detalle de la estructura de tipologia\n */\n public readonly detailStructureTypologies$ = this.bsDetailStructureTypologies.asObservable();\n /**\n * Observable con información del detalle de la tipologia seleccionada\n */\n public readonly detailTypologySelected$ = this.bsDetailTypologySelected.asObservable();\n /**\n * Observable con información de los generos\n */\n public readonly gendersKey$ = this.bsGendersKey.asObservable();\n /**\n * Observable con información del habeas data\n */\n public readonly habeasData$ = this.bsHabeasData.asObservable();\n /**\n * Observable con información de los ids de los canales\n */\n public readonly idChannels$ = this.bsIdChannels.asObservable();\n /**\n * Observable con la información de viabilidad\n */\n public readonly isViable$ = this.bsIsViable.asObservable();\n /**\n * Observable con la información de viabilidad\n */\n public readonly isAffiliate$ = this.bsIsAffiliate.asObservable();\n /**\n * Observable con la información del indicador de Doble Asesoria\n */\n public readonly indicadorDobleAsesoria$ = this.bsIndicadorDobleAsesoria.asObservable();\n /**\n * Observable con información de las oficinas\n */\n public readonly nodes$ = this.bsNodes.asObservable();\n /**\n * Observable con información de las oficinas\n */\n public readonly nodesAll$ = this.bsNodesAll.asObservable();\n /**\n * Observable con la información de los cargos que pueden atender cierta tipologia\n */\n public readonly positions$ = this.bsPositions.asObservable();\n /**\n * Observable con la información de cargos por tipos de tipologias\n */\n public readonly positionTypeTypologies$ = this.bsPositionTypeTypologies.asObservable();\n /**\n * Observable con información de las ciudades\n */\n public readonly residentialCities$ = this.bsResidentialCities.asObservable();\n /**\n * Observable con información de Agendamiento\n */\n public readonly schedule$ = this.bsSchedule.asObservable();\n /**\n * Observable con información de Calendario\n */\n public readonly scheduleAssistant$ = this.bsScheduleAssistant.asObservable();\n /**\n * Observable con información de agendamiento por id\n */\n public readonly scheduleId$ = this.bsScheduleId.asObservable();\n /**\n * Observable con información del agendamiento\n */\n public readonly scheduleState$ = this.bsScheduleState.asObservable();\n /**\n * Observable con información de Calendario por tipologia\n */\n public readonly scheduleTypology$ = this.bsScheduleTypology.asObservable();\n /**\n * Observable con la información de agenda lista\n */\n public readonly scheduleList$ = this.bsScheduleList.asObservable();\n /**\n * Observable con la información adicional de las agendas por ws\n */\n public readonly scheduleClaim$ = this.bsScheduleClaim.asObservable();\n /**\n * Observable con la información del funcionario\n */\n public readonly servant$ = this.bsServant.asObservable();\n /**\n * Observable con información de la estructura de tipologia\n */\n public readonly structureTypology$ = this.bsStructureTypology.asObservable();\n /**\n * Observable con información de la estructura de tipologia\n */\n public readonly segmenter$ = this.bsSegmenter.asObservable();\n /**\n * Observable con información del listado de tipologias para filtros (control select)\n */\n public readonly typologiesFilter$ = this.bsTypologiesFilter.asObservable();\n /**\n * Observable con información de la tipologia seleccionada\n */\n public readonly typologySelected$ = this.bsTypologySelected.asObservable();\n /**\n * Observable con información de la tipos de tipologia\n */\n public readonly typeTypologies$ = this.bsTypeTypologies.asObservable();\n /**\n * Observable con información de los tipos de asistente de la tipologia seleccionada\n */\n public readonly typesAttendeeTypologySelected$ = this.bsTypesAttendeeTypologySelected.asObservable();\n /**\n * Observable con información de la tipos de tipologia\n */\n public readonly typologiesFromCRM$ = this.bsTypologiesFromCRM.asObservable();\n /**\n * Observable con información de Tipos Documentos\n */\n public readonly typeDocuments$ = this.bsTypeDocuments.asObservable();\n /**\n * Observable con la información del las disponibilidades para mañana\n */\n public readonly totalTomorrow$ = this.bsTotalTomorrow.asObservable();\n /**\n * Observable con la información del las disponibilidades para esta semana\n */\n public readonly totalItWeek$ = this.bsTotalItWeek.asObservable();\n /**\n * Observable con la información del las disponibilidades para este año\n */\n public readonly totalItYear$ = this.bsTotalItYear.asObservable();\n /**\n * Observable con la información del las disponibilidades para este mes\n */\n public readonly totalItMonth$ = this.bsTotalItMonth.asObservable();\n /**\n * Observable con la información de viabilidad\n */\n public readonly viability$ = this.bsViability.asObservable();\n\n /**\n * Crea una nueva instancia de AapModuleState\n */\n public constructor() {\n super();\n }\n /**\n * Inicializa el estado interaction en valores nulos\n */\n public resetInteraction() {\n this.next(initAgentInteraction);\n }\n /**\n * Metodo para almacenar en el estado la Ip en el objeto del agendamiento\n * @param ip Ip del equipo donde se ejecuta la app\n */\n public setIp(ip: string) {\n const state = this.value;\n state.payloadScheduling.ipPc = ip;\n this.next(state);\n }\n /**\n * Metodo para almacenar la data del payload de la interaction\n * @param payload Estructura de la data del agendamiento\n */\n public setPayload(payload: PayloadScheduling) {\n const state = this.value;\n state.payloadScheduling = payload;\n this.next(state);\n }\n /**\n * Metodo encargado de asignar en la data del agendamiento la información del estado\n * @param stateLive Listado de estados de agendamiento\n */\n public setStateLive(stateLive: StateSchedulingDto[]) {\n const state = this.value;\n const stateCurrent: StateSchedulingDto | undefined = stateLive.find((x) => x.id === 1);\n state.payloadScheduling.stateScheduling = {\n id: stateCurrent?.id || 0,\n name: stateCurrent?.name || '',\n };\n this.next(state);\n }\n /**\n * Metodo encargado de asignar en la data del agendamiento la información del canal\n * @param channel Listado de canales\n */\n public setChannel(channel: ChannelDto[]) {\n const state = this.value;\n const channelCurrent = channel.find((x) => x.id === 1);\n state.payloadScheduling.idChannel = channelCurrent?.id || 0;\n state.payloadScheduling.channel = {\n id: channelCurrent?.id ?? 1,\n name: channelCurrent?.name ?? 'Web',\n };\n this.next(state);\n }\n /**\n * Metodo encargado de asignar en la data del agendamiento la información del contacto\n * y la fecha en que se realizó la interacción\n * @param contactInteraction Información del contacto\n */\n public setContact(contactInteraction: AgentInteraction) {\n this.next(contactInteraction);\n }\n /**\n * Metodo encargado de asignar en la data del agendamiento la información del asistente\n * @param contact Información del contacto - asistente\n */\n public setAssitent(contact: Contact) {\n const state = this.value;\n state.payloadScheduling.assitent = _.cloneDeep(contact);\n this.next(state);\n }\n /**\n * Metodo encargado de asignar la información del formulario \"tu\" a la interacción\n * @param contactInteraction Información del contacto @see AgentInteraction\n */\n public setContactFormPersonalize(contactInteraction: AgentInteraction) {\n this.next(contactInteraction);\n }\n /**\n * Metodo encargado de asignar la información del formulario \"tu\" a la interacción\n * @param contactInteraction Información del contacto @see AgentInteraction\n */\n public setContactFormYou(contactInteraction: AgentInteraction) {\n this.next(contactInteraction);\n }\n /**\n * Metodo encargado de asignar la información del formulario \"otros\" a la interacción\n * @param contactInteraction Información del contacto @see AgentInteraction\n */\n public setContactFormOther(contactInteraction: AgentInteraction) {\n this.next(contactInteraction);\n }\n /**\n * Metodo encargado de asignar la información del agendamiento\n * @param data Información del agendamiento @see DataScheduleCurrent\n */\n public setSchedule(data: DataScheduleCurrent) {\n const state = this.value;\n const date = moment(data?.metaData?.dateSchedullingInitial).locale('es').format('YYYY-MM-DD[T]HH:mm:ss');\n state.payloadScheduling.dateScheduling = date;\n state.payloadScheduling.timeScheduling = date;\n state.payloadScheduling.userCreator = {\n idServant: 0,\n idPosition: 0,\n position: 'N',\n id: 0,\n fullName: 'N',\n office: {\n idChannel: 1, channel: 'Web', regional: '0', idRegional: 0, name: 'Sitio Web',\n },\n };\n state.payloadScheduling.userGestorAssigned = {\n idServant: data.metaData?.idServant,\n fullName: data.metaData?.fullNameServant,\n idPosition: data.idPosition,\n position: data.position,\n office: data.office,\n };\n state.payloadScheduling.office = data.office;\n // State.payloadScheduling.typify = data.typify;\n this.next(state);\n }\n /**\n * Metodo encargado de asignar en la data del agendamiento la información del cargo del funcionario\n * @param position Data del cargo\n */\n public setSchedulePosition(position: PositionDto) {\n const state = this.value;\n\n if (state.payloadScheduling.userGestorAssigned) {\n state.payloadScheduling.userGestorAssigned.idPosition = position.id;\n state.payloadScheduling.userGestorAssigned.position = position.name;\n }\n this.next(state);\n }\n /**\n * Metodo encargado de asignar en la data del agendamiento la información de la tipologia\n * @param typology tipologia\n */\n public setTypology(typology: Typify) {\n const state = this.value;\n state.payloadScheduling.typify = _.cloneDeep(typology);\n this.next(state);\n }\n /**\n * Actualiza los valores para disponibilidad de citas\n */\n public setAvailableEngine(resultAvailability: AvailabilityDto[] | undefined) {\n this.bsAvailabilities.next(resultAvailability);\n }\n /**\n * Actualiza los valores en iniciales de disponibilidad de citas\n */\n public resetAvalilables() {\n this.bsAvailabilities.next([]);\n }\n /**\n * Metodo encargado de asignar los datos basicos de afiliado en el localStorage\n * @param basicDataAfiliate modelo dto de datos basicos de afiliado\n */\n public setBasicDataAfiliate(basicDataAfiliate: BasicDataAffiliateDto) {\n // eslint-disable-next-line\n if (basicDataAfiliate.datosBasicos !== null && basicDataAfiliate.datosBasicos !== undefined &&\n (localStorage.getItem('clientName') === '' || localStorage.getItem('clientName') === null)) {\n localStorage.setItem('primerNombre', JSON.stringify(basicDataAfiliate.datosBasicos?.primerNombre));\n localStorage.setItem('segundoNombre', JSON.stringify(basicDataAfiliate.datosBasicos?.segundoNombre));\n localStorage.setItem('primerApellido', JSON.stringify(basicDataAfiliate.datosBasicos?.primerApellido));\n localStorage.setItem('segundoApellido', JSON.stringify(basicDataAfiliate.datosBasicos?.segundoApellido));\n localStorage.setItem('clientName', JSON.stringify(basicDataAfiliate.datosBasicos?.nombresApellidosCompletos) || '');\n }\n this.bsBasicDataAffiliate.next(basicDataAfiliate);\n }\n /**\n * Metodo encargade de almacenar la informacion de los detalles de motivos\n * de los estados de agendamiento\n * @param data informacion de los detalles de motivos de los estados de agendamiento\n */\n public setDetailReasonStateScheduling(data: DetailReasonStateSchedulingDto[]) {\n this.bsDetailReasonStateScheduling.next(data);\n }\n /**\n * Metodo de actualiza los valores de las ciudades en el stream\n * @param cities Ciudades mas recientes en el stream\n */\n public setCities(cities: CityDto[]) {\n this.bsCities.next(cities);\n }\n /**\n * Metodo de actualiza los valores de las ciudades en el stream por KeyAndValue\n * @param cities Ciudades mas recientes en el stream\n */\n public setCitiesKeyAndValue(cities: { [id: number]: string }) {\n this.bsCitiesKey.next(cities);\n }\n /**\n * Metodo de actualiza los valores de las ciudades en el stream\n * @param cities Ciudades mas recientes en el stream\n */\n public setCitiesOne(cities: CityDto[]) {\n this.bsCitiesOne.next(cities);\n }\n /**\n * Metodo de actualiza los valores de las ciudades en el stream\n * @param cities Ciudades mas recientes en el stream\n */\n public setCitiesAll(cities: CityDto[]) {\n this.bsCitiesAll.next(cities);\n }\n /**\n * Metodo de actualiza los valores de los Paises en el stream\n * @param countries Paises mas recientes en el stream\n */\n public setCountries(countries: CountryDto[]) {\n this.bsCountries.next(countries);\n }\n /**\n * Actualiza los datos de la cuenta\n * @param dataAccount Datos de la cuenta\n */\n public setDataAccount(dataAccount: AccountDataDto) {\n this.bsDataAccount.next(dataAccount);\n }\n /**\n * Metodo de actualiza los valores del detalle de la estructura de tipologia\n * @param detailStructureTypology Detalle de la estructura de tipologia mas reciente en el stream\n */\n public setDetailStructureTypologies(detailStructureTypology: PayloadTypologySettingsDto[]) {\n this.bsDetailStructureTypologies.next(detailStructureTypology);\n }\n /**\n * Actualiza el valor del detalle de la tipologia seleccionada\n * @param detail Tipologia seleccionada\n */\n public setDetailTypologySelected(detail: PayloadTypologySettingsDto) {\n this.bsDetailTypologySelected.next(detail);\n }\n /**\n * Metodo de actualiza los valores de los departamentos en el stream\n * @param departments Departamentos mas recientes en el stream\n */\n public setDepartments(departments: DepartmentDto[]) {\n this.bsDepartments.next(departments);\n }\n /**\n * Metodo de actualiza los valores de los departamentos en el stream\n * @param departments Departamentos mas recientes en el stream\n */\n public setDepartmentsAll(departments: DepartmentDto[]) {\n this.bsDepartmentsAll.next(departments);\n }\n /**\n * Metodo de actualiza los valores de los departamentos en el stream\n * @param data Departamentos en key/value\n */\n public setDepartmentsKeyAndValue(data: { [id: number]: string }) {\n this.bsDepartmentsKey.next(data);\n }\n /**\n * Actualiza los valores de los generos en el stream\n * @param data Generos mas recientes en el stream\n */\n public setGendersKeyAndValue(data: { [id: number]: string }) {\n this.bsGendersKey.next(data);\n }\n /**\n * Metodo para almacenar el valor seleccionado por el usuario para habeas data\n * @param indicator Valor de la bandera de habeas data\n */\n public setHabeasData(indicator: boolean) {\n this.bsHabeasData.next(indicator);\n }\n /**\n * Metodo de actualiza los valores de los ids de canal en el stream\n * @param data Ids de canales que son capturados al seleccionar el canal\n */\n public setIdsChannels(data: number[]) {\n this.bsIdChannels.next(data);\n }\n /**\n * Metodo que actualiza el id de solicitud de agenda\n * @param idSolicitud Id interaction de agendamiento\n */\n public setIdSolicitud(idSolicitud: number) {\n this.bsIdSolicitud.next(idSolicitud);\n }\n /**\n * Actualiza el indicador de agenda\n * @param indicator Indicador de agendamiento\n */\n public setIndicator(indicator: string) {\n this.bsIndicator.next(indicator);\n }\n /**\n * Metodo que actualiza el valor de la bandera de la doble asesoria\n * @param indicador Valor de la bandera de doble asesoria\n */\n public setIndicadorDobleAsesoria(indicador: boolean) {\n this.bsIndicadorDobleAsesoria.next(indicador);\n }\n /**\n * Metodo que actualiza el valor de la bandera de la afiliación del contacto\n * @param isAffiliate Valor de la bandera de afiliación\n */\n public setIsAffiliate(isAffiliate: boolean) {\n this.bsIsAffiliate.next(isAffiliate);\n }\n /**\n * Metodo que actualiza el valor de la bandera de la viabilidad del contacto\n * @param isViable Valor de la bandera de viabilidad\n */\n public setIsViable(isViable: boolean) {\n this.bsIsViable.next(isViable);\n }\n /**\n * Metodo para almacena el payload de la interaction temporal en modificar\n * @param payload Estructura de la data del agendamiento\n */\n public setModifyPayload(payload: PayloadScheduling) {\n this.bsPayloadSchedulingModify.next(payload);\n }\n /**\n * Metodo de actualiza el valor de los nodos (oficinas)\n * @param node Listado de nodos (oficinas)\n */\n public setNodes(node: NodeDto[]) {\n this.bsNodes.next(node);\n }\n /**\n * Metodo de actualiza el valor de las oficinas\n * @param node oficinas\n */\n public setNodesAll(node: NodeDto[]) {\n this.bsNodesAll.next(node);\n }\n /**\n * Guarda la información de la oficina\n * @param officeId información de la oficina\n */\n public setOfficeId(officeId: NodeDto) {\n this.bsOfficeId.next(officeId);\n }\n /**\n * Actualiza el valor de cargos por tipos de tipologias\n * @param positionTypeTypology Información de cargos por tipos de tipologias\n */\n public setPositionByTypeTypologies(positionTypeTypology: PositionTypeTypologyDto[]) {\n this.bsPositionTypeTypologies.next(positionTypeTypology);\n }\n /**\n * Actualiza el valor del motivo de la tipologia seleccionada\n * @param reasonTypologySelected Motivo dce Tipologia seleccionada\n */\n public setReasonTypologySelected(reasonTypologySelected: DoubleAdvisory) {\n this.bsReasonTypologySelected.next(reasonTypologySelected);\n }\n /**\n * Metodo de actualiza los valores de las ciudades en el stream\n * @param cities Ciudades mas recientes en el stream\n */\n public setResidentialCities(cities: CityDto[]) {\n this.bsResidentialCities.next(cities);\n }\n /**\n * Metodo encargado de almacenar la informacion de los agendamientos\n * @param data Listado de los agendamientos\n */\n public setSchedules(data: ScheduleDto[]) {\n this.bsSchedule.next(data);\n }\n /**\n * Metodo encargado de almacenar la informacion de los agendamientos del asistente\n * @param data Listado de los agendamientos\n */\n public setSchedulesAssitant(data: ScheduleDto[]) {\n this.bsScheduleAssistant.next(data);\n }\n /**\n * Actualiza los valores de la información adicional del contacto al validar la tipologia\n * @param response Información adicional\n */\n public setScheduleClaim(response: ObjectResponse) {\n this.bsScheduleClaim.next(response);\n }\n /**\n * Metodo encargado de almacenar la informacion del agendamiento\n * @param data informacion del agendamiento\n */\n public setSchedulesId(data: ScheduleDto) {\n this.bsScheduleId.next(data);\n }\n /**\n * Metodo encargade de almacenar la informacion de los agendamientos por tipologia\n * @param data informacion del agendamiento\n */\n public setSchedulesTypology(data: ScheduleDto[]) {\n this.bsScheduleTypology.next(data);\n }\n /**\n * Actualiza el valor agenda lista\n * @param infoCita Información de agenda\n */\n public setScheduleList(infoCita: DataScheduleCurrent[]) {\n this.bsScheduleList.next(infoCita);\n }\n /**\n * Metodo encargado de almacenar la información de los estados de agendamiento\n * @param data informacion del agendamiento\n */\n public setSchedulesState(data: StateSchedulingDto[]) {\n this.bsScheduleState.next(data);\n }\n /**\n * Guarda la información de la oficina\n * @param servant información de la oficina\n */\n public setServant(servant: ServantDto) {\n this.bsServant.next(servant);\n }\n /**\n * Metodo de actualiza el valor de la estructura de tipologia\n * @param structureTypology Estructura de tipologia mas recientes en el stream\n */\n public setStructureTypology(structureTypology: StructureTypologyDto) {\n this.bsStructureTypology.next(structureTypology);\n }\n /**\n * Metodo de actualiza el valor de semanas cotizadas\n * @param data Estructura de datos para el segmentador\n */\n public setSegmenterData(data: DataSegmenterDto) {\n this.bsSegmenter.next(data);\n }\n /**\n * Metodo de actualizar los tipos de tipologias\n * @param typeTypology Tipos de tipologias mas recientes en el stream\n */\n public setTypeTypologies(typeTypology: TypeTypologyDto[]) {\n this.bsTypeTypologies.next(typeTypology);\n }\n /**\n * Actualiza el valor de los tipos de asistente de la tipologia seleccionada\n * @param typesAttendee Tipos de asistente de la tipologia seleccionada\n */\n public setTypesAttendeeTypologySelected(typesAttendee: TypesAttendeeDto[]) {\n this.bsTypesAttendeeTypologySelected.next(typesAttendee);\n }\n /**\n * Metodo de actualiza los valores de tipologias de contacto del ws datos basicos\n * @param Typology tipologias del contacto\n */\n public setTypologiesFromCRM(Typology: TypologyDto[]) {\n this.bsTypologiesFromCRM.next(Typology);\n }\n /**\n * Actualiza los valores de los tipos de documentos en el stream\n * @param typeDocuments Tipos de documentos mas recientes en el stream\n */\n public setTypeDocuments(typeDocuments: TypeDocumentDto[]) {\n this.bsTypeDocuments.next(typeDocuments);\n }\n /**\n * Metodo de actualiza el listado de las tipologias segun el tipo de tipología\n * @param PayloadTypologies Objeto de las tipologias obtenidas en la consulta de la facade\n */\n public setTypologiesByTypeFilter(PayloadTypologies: PayloadTypologySettingsDto[]) {\n this.bsTypologiesFilter.next(PayloadTypologies);\n }\n /**\n * Actualiza el valor de la tipologia seleccionada\n * @param typologySelected Tipologia seleccionada\n */\n public setTypologySelected(typologySelected: Typify) {\n this.bsTypologySelected.next(typologySelected);\n }\n /**\n * Actualiza el valor de las disponibilidades de mañana\n * @param totalTomorrow Información de las disponibilidades de mañana\n */\n public setTotalTomorrow(totalTomorrow: AvailabilityDto[] | undefined) {\n this.bsTotalTomorrow.next(totalTomorrow);\n }\n /**\n * Actualiza el valor de las disponibilidades de esta semana\n * @param totalItWeek Información de las disponibilidades de esta semana\n */\n public setTotalItWeek(totalItWeek: AvailabilityDto[] | undefined) {\n this.bsTotalItWeek.next(totalItWeek);\n }\n /**\n * Actualiza el valor de las disponibilidades de esta año\n * @param totalItYear Información de las disponibilidades de este año\n */\n public setTotalItYear(totalItYear: AvailabilityDto[] | undefined) {\n this.bsTotalItYear.next(totalItYear);\n }\n /**\n * Actualiza el valor de las disponibilidades de esta semana\n * @param totalMonth Información de las disponibilidades de mes\n */\n public setTotalItMonth(totalMonth: AvailabilityDto[] | undefined) {\n this.bsTotalItMonth.next(totalMonth);\n }\n /**\n * Metodo que actualiza la informacion de la viabilidad del contacto\n * @param viability Informacion de la viabilidad del contacto\n */\n public setViability(viability: ResponseDto) {\n // eslint-disable-next-line\n if (viability.viabilidad !== undefined && viability.viabilidad !== null &&\n (localStorage.getItem('clientName') === '' || localStorage.getItem('clientName') === null)) {\n localStorage.setItem('primerNombre', JSON.stringify(viability.viabilidad?.primerNombre));\n localStorage.setItem('segundoNombre', JSON.stringify(viability.viabilidad?.segundoNombre));\n localStorage.setItem('primerApellido', JSON.stringify(viability.viabilidad?.primerApellido));\n localStorage.setItem('segundoApellido', JSON.stringify(viability.viabilidad?.segundoApellido));\n // eslint-disable-next-line prefer-template\n const nombres = JSON.stringify(viability.viabilidad?.nombres) + ' ' + JSON.stringify(viability.viabilidad?.apellidos);\n localStorage.setItem('clientName', nombres);\n }\n this.bsViability.next(viability);\n }\n /**\n * Gets bsAvailabilities Observable\n */\n public get availabilitiesObject() {\n return this.bsAvailabilities.value;\n }\n /**\n * Gets basicDataAffiliate Observable\n */\n public get basicDataAffiliateObject() {\n return this.bsBasicDataAffiliate.value;\n }\n /**\n * Get last value cities\n */\n public get citiesObject() {\n return this.bsCities.value;\n }\n /**\n * Get last value cities\n */\n public get citiesAllObject() {\n return this.bsCitiesAll.value;\n }\n /**\n * Get last value department\n */\n public get departmentObject() {\n return this.bsDepartments.value;\n }\n /**\n * Get last value department\n */\n public get departmentAllObject() {\n return this.bsDepartmentsAll.value;\n }\n /**\n * Get last value detailStructureTypologies\n */\n public get detailStructureTypologiesObject() {\n return this.bsDetailStructureTypologies.value;\n }\n /**\n * Gets Detalle de la tipologia seleccionada Observable\n */\n public get detailTypologySelectedObject() {\n return this.bsDetailTypologySelected.value;\n }\n /**\n * Gets id solicitud Observable\n */\n public get idSolicitudObject() {\n return this.bsIdSolicitud.value;\n }\n /**\n * Gets Indicator Observable\n */\n public get indicatorObject() {\n return this.bsIndicator.value;\n }\n /**\n * Gets Indicator Doble Asesoria Observable\n */\n public get indicatorDobleAsesoriaObject() {\n return this.bsIndicadorDobleAsesoria.value;\n }\n /**\n * Get last value isAffiliate\n */\n public get isAffiliateBit() {\n return this.bsIsAffiliate.value;\n }\n /**\n * Get last value isViable\n */\n public get isViableBit() {\n return this.bsIsViable.value;\n }\n /**\n * Get last value nodes\n */\n public get nodesObject() {\n return this.bsNodes.value;\n }\n /**\n * Get last value positionTypeTypologyBehaviorSubject\n */\n public get positionTypeTypology() {\n return this.bsPositionTypeTypologies.value;\n }\n /**\n * Get last value position\n */\n public get positionObject() {\n return this.bsServant.value;\n }\n /**\n * Get last value payloadSchedulingModify\n */\n public get payloadSchedulingModifyObject() {\n return this.bsPayloadSchedulingModify.value;\n }\n /**\n * Get last value ReasonTypologySelected\n */\n public get reasonTypologySelectedObject() {\n return this.bsReasonTypologySelected.value;\n }\n /**\n * Get last value schedules\n */\n public get schedulesObject() {\n return this.bsSchedule.value;\n }\n /**\n * Get last value scheduleState\n */\n public get scheduleStateObject() {\n return this.bsScheduleState.value;\n }\n /**\n * Get last value statelive\n */\n public get stateLive() {\n return this.bsScheduleState.value;\n }\n /**\n * Get last value structureTypology\n */\n public get structureTypologyObject() {\n return this.bsStructureTypology.value;\n }\n /**\n * Get last value scheduleClaim\n */\n public get scheduleClaimObject() {\n return this.bsScheduleClaim.value;\n }\n /**\n * Get last value scheduleList\n */\n public get scheduleListObject() {\n return this.bsScheduleList.value;\n }\n /**\n * Get last value typeDocuments\n */\n public get typeDocumentsObject() {\n return this.bsTypeDocuments.value;\n }\n /**\n * Get last value typologiesFilter\n */\n public get typologiesFilterObject() {\n return this.bsTypologiesFilter.value;\n }\n /**\n * Get last value typologiesFromCRM\n */\n public get typologiesFromCRMObject() {\n return this.bsTypologiesFromCRM.value;\n }\n /**\n * Get last value typologySelected\n */\n public get typologySelectedObject() {\n return this.bsTypologySelected.value;\n }\n /**\n * Get last value viability\n */\n public get viabilityObject() {\n return this.bsViability.value;\n }\n /**\n * Get last value segmenter\n */\n public get segmenterObject() {\n return this.bsSegmenter.value;\n }\n}\n","import { Component, OnInit } from '@angular/core';\n\n/**\n * Componente encargado de administrar los errores\n */\n@Component({\n selector: 'prv-error',\n templateUrl: './error.component.html',\n styleUrls: ['./error.component.scss'],\n})\nexport class ErrorComponent implements OnInit {\n /**\n * It is invoked only once when the directive is instantiated.\n */\n // eslint-disable-next-line @angular-eslint/no-empty-lifecycle-method\n public ngOnInit(): void {}\n}\n","\n \n
Ups!! Server Error (500)
\n
Ha ocurrido un error provocado por la petición al servicio. Lo sentimos!
\n\n","import { Injectable, OnDestroy } from '@angular/core';\nimport { HttpErrorResponse } from '@angular/common/http';\nimport { GenderApiService } from '@prv/gender';\nimport {\n CityApiService,\n CityDto,\n CountryApiService,\n CountryDto,\n DepartmentApiService,\n NodeApiService,\n NodeDto,\n} from '@prv/georeference';\nimport { ChannelApiService, ChannelDto } from '@prv/platform';\nimport {\n AdditionalInformation,\n CityContact,\n Contact,\n ProductData,\n Segment,\n ScheduleApiService,\n ScheduleDto,\n TypeDocument,\n} from '@prv/schedule-history';\nimport { StateSchedulingApiService, StateSchedulingDto } from '@prv/scheduling-state';\nimport { TypeDocumentDto, TypeDocumentsApiService } from '@prv/type-document';\nimport {\n StructureTypologyApiService,\n StructureTypologyDto,\n TypeTypologyApiService,\n TypeTypologyDto,\n} from '@prv/typology';\nimport { AccountDataDto, BasicDataAffiliateDto, BasicDataApiService, TypologyDto } from '@prv/ws-basic-data';\nimport { DataExternalDto, InputsDocumentDto, ResponseDto, ViabilityApiService } from '@prv/ws-viability';\nimport { DataSegmenterDto, InputsDocumentsDto, SegmenterApiService } from '@prv/ws-segmenter';\nimport * as _ from 'lodash';\nimport * as moment from 'moment';\nimport { forkJoin, Observable, Subject, Subscription } from 'rxjs';\nimport { finalize, map, take, takeUntil } from 'rxjs/operators';\n\nimport { AppModuleState } from '../../app.state';\nimport { DialogModalDto } from '../../core/models/dialog.modal.dto';\nimport { AuthenticationService } from '../../core/services/auth/authentication.service';\nimport { IpServiceService } from '../../core/services/ip-service/ip-service.service';\nimport { ConfigModalsValidation } from '../../shared/dialogs/custom-modal/config/validation/config-modals-validation';\nimport { DataConfirmModule } from '../../shared/models/data-confirm-module';\nimport { EncryptService } from '../../shared/services/encrypt/encrypt.service';\nimport Swal from 'sweetalert2';\nimport { Router } from '@angular/router';\nimport { NgxSpinnerService } from 'ngx-spinner';\nimport { Codes } from '../../modules/Models/Enums/codes.enum';\nimport { SegmenterCodes } from '../../shared/models/enum-status-segmenter/status-segmenter.enum';\nimport { AccountStates } from '../../shared/models/enum-account-states/account-states.enum';\n\n/**\n * Capa intermedia que centraliza la logica del Validation\n */\n@Injectable()\nexport class ValidationFacade implements OnDestroy {\n /**\n * Consulta del estado la interacción actual del usuario\n */\n public get state$() {\n return this.state.agentInteractionState$;\n }\n /**\n * Consulta del estado los estados de asignación\n */\n public get stateScheduling() {\n return this.state.scheduleState$;\n }\n /**\n * Consulta del tocken del servicio la bandera de la autenticación del usuario\n */\n public get isAuthenticated() {\n return this.authService.isAuthenticated;\n }\n /**\n * Consulta del tocken del servicio la bandera de la afiliación del usuario\n */\n public get isAffiliate() {\n return this.authService.isAffiliate;\n }\n /**\n * Consulta del tocken del servicio la bandera de la viabilidad del usuario\n */\n public get isViable() {\n return this.authService.isViable;\n }\n /**\n * Consulta del tocken del servicio la bandera de la viabilidad del usuario\n */\n public get error() {\n return this.authService.error;\n }\n\n /**\n * Spinner Service\n */\n private readonly spinner: NgxSpinnerService;\n\n /**\n * A service that provides navigation and URL manipulation capabilities.\n */\n private readonly router: Router;\n /**\n * Atributo encargado de obtener la configuración del contenido de la ventana modal\n */\n public readonly configModalsValidation: ConfigModalsValidation;\n /**\n * Servicio ciudades\n */\n private readonly basicDataApiService: BasicDataApiService;\n /**\n * Servicio consulta semanas cotizadas\n */\n private readonly segmenterApiService: SegmenterApiService;\n /**\n * Service de tipologias\n */\n private readonly typeTypologyApiService: TypeTypologyApiService;\n /**\n * Service de estructura tipologias\n */\n private readonly structureTypologyApiService: StructureTypologyApiService;\n /**\n * Servicio para pais\n */\n private readonly countryApiService: CountryApiService;\n /**\n * Servicio para pais\n */\n private readonly departmentApiService: DepartmentApiService;\n /**\n * Servicio ciudades\n */\n private readonly cityApiService: CityApiService;\n /**\n * Servicio encargado de interactuar con el microservicio de georeferencia cuidades\n */\n private readonly nodeApiService: NodeApiService;\n /**\n * Api que permite interactuar con el servicio de tipo de documentos\n */\n private readonly typeDocumentsApiService: TypeDocumentsApiService;\n /**\n * Servicio Generos\n */\n private readonly genderApiService: GenderApiService;\n /**\n * Servicio de History\n */\n private readonly scheduleApiService: ScheduleApiService;\n /**\n * Servicio de History\n */\n private readonly stateSchedulingApiService: StateSchedulingApiService;\n /**\n * Servicio de History\n */\n private readonly channelApiService: ChannelApiService;\n /**\n * Servicio de History\n */\n private readonly viabilityApiService: ViabilityApiService;\n /**\n * Encargado de proveer la ip address\n */\n private readonly httpIp: IpServiceService;\n /**\n * Servicio encargado de controlar la autenticación\n */\n private readonly authService: AuthenticationService;\n /**\n * Servicio encargado de interactuar con el servicio de encriptacion\n */\n private readonly encryptService: EncryptService;\n /**\n * Estados para tipologias\n */\n private readonly state: AppModuleState;\n /**\n * Observable encargado de eliminar los diferentes sucriptores\n */\n private readonly destroy$ = new Subject();\n /**\n * cancelar suscripciones\n */\n private readonly subscription: Subscription;\n\n /**\n * Observable de los datos basicos del afiliado\n */\n public basicData$ = (): Observable => this.state.basicDataAffiliate$;\n /**\n * Observable de tipos de documentos\n */\n public typeDocuments$ = (): Observable => this.state.typeDocuments$;\n /**\n * Observable de agendamientos\n */\n public schedule$ = (): Observable => this.state.schedule$;\n /**\n * Constante que define el codigoViabilidad para no clientes vinculados a otros fondos pensionales\n */\n public CODE_OTHER_AFP: string | boolean = \"037\";\n\n /**\n * Crea una nueva instancia de SelectTypologyFacade\n */\n public constructor(\n state: AppModuleState,\n router: Router,\n basicDataApiService: BasicDataApiService,\n typeTypologyApiService: TypeTypologyApiService,\n structureTypologyApiService: StructureTypologyApiService,\n countryApiService: CountryApiService,\n cityApiService: CityApiService,\n departmentApiService: DepartmentApiService,\n nodeApiService: NodeApiService,\n typeDocumentsApiService: TypeDocumentsApiService,\n genderApiService: GenderApiService,\n scheduleApiService: ScheduleApiService,\n stateSchedulingApiService: StateSchedulingApiService,\n channelApiService: ChannelApiService,\n viabilityApiService: ViabilityApiService,\n httIp: IpServiceService,\n authService: AuthenticationService,\n encryptService: EncryptService,\n segmenterApiService: SegmenterApiService,\n spinner: NgxSpinnerService,\n ) {\n this.spinner = spinner;\n this.state = state;\n this.router = router;\n this.configModalsValidation = new ConfigModalsValidation();\n this.basicDataApiService = basicDataApiService;\n this.typeTypologyApiService = typeTypologyApiService;\n this.structureTypologyApiService = structureTypologyApiService;\n this.departmentApiService = departmentApiService;\n this.cityApiService = cityApiService;\n this.countryApiService = countryApiService;\n this.nodeApiService = nodeApiService;\n this.typeDocumentsApiService = typeDocumentsApiService;\n this.genderApiService = genderApiService;\n this.scheduleApiService = scheduleApiService;\n this.stateSchedulingApiService = stateSchedulingApiService;\n this.channelApiService = channelApiService;\n this.viabilityApiService = viabilityApiService;\n this.httpIp = httIp;\n this.subscription = new Subscription();\n this.authService = authService;\n this.encryptService = encryptService;\n this.segmenterApiService = segmenterApiService;\n }\n\n /**\n * A callback method that performs custom clean-up, invoked immediately\n * before a directive, pipe, or service instance is destroyed.\n */\n public ngOnDestroy(): void {\n this.destroySubscription();\n setTimeout(() => {\n this.destroy$.next();\n this.destroy$.complete();\n }, 3000);\n }\n\n /**\n * Metodo encargado de desuscribir los observables de la facade\n */\n public destroySubscription(): void {\n this.subscription.unsubscribe();\n }\n /**\n * Se encarga de autenticar el cliente mediante googleToken\n * @param data contenido del formulario Dinamico @see any\n * @param typeDocument contenido de tipos de documentos @see TypeDocumentDto\n * @param url URL del modulo actual @see string\n * @param fn Funcion Callback\n */\n public authenticateClientAuth(\n data: any,\n typeDocument: TypeDocumentDto | undefined,\n url: string,\n fn: (response: DataConfirmModule) => void,\n ): void {\n this.authService\n .authenticate(data.captcha, data.numberDocument, typeDocument?.id as number, typeDocument?.mask as string)\n .pipe(\n takeUntil(this.destroy$),\n finalize(() => {\n let objModal: DialogModalDto;\n\n if (this.isAuthenticated) {\n this.state.setIsAffiliate(this.isAffiliate);\n this.state.setIsViable(this.isViable);\n if (!this.isAffiliate) {\n const dataViability: InputsDocumentDto = {\n idTypeDocument: typeDocument?.id,\n typeDocument: typeDocument?.mask,\n numberDocument: data.numberDocument\n }\n\n // Transforma los datos de envío a una cadena serializada y encriptada\n const dataSerialized = JSON.stringify(dataViability);\n const dataEncrypted = { data: this.encryptService.toEncrypt(dataSerialized) } as DataExternalDto;\n\n this.getViabilityExternal(dataEncrypted, (res) => {\n // Transforma los datos del response deserializando y desencriptando\n const responseDesencrypted = this.encryptService.toDecrypt(res.data)\n const responseDeserialized = JSON.parse(responseDesencrypted) as ResponseDto\n\n if (responseDeserialized?.status?.statusCode === 200) {\n // Guarda la respuesta del servicio en el state\n this.setViability(res);\n\n // Flag que valida si el no cliente pertenece a otro fondo pensional\n const hasOtherAFP = res.viabilidad?.codigoViabilidad === this.CODE_OTHER_AFP;\n const isViable = res.viabilidad?.esViable\n\n this.spinner.hide();\n\n // Valida la flag, muestra el modal y saca al no cliente del servicio\n if (hasOtherAFP) {\n objModal = {\n data: this.configModalsValidation.modalOtherAFP(undefined),\n width: '720px',\n height: '400px',\n panelClass: 'dialog-container',\n autoFocus: false,\n restoreFocus: false,\n disableClose: true,\n };\n fn({ objModal, routes: ['/'] });\n return;\n }\n\n // Valida si el no cliente es viable para direccionarlo a la linea de servicio\n if (isViable) {\n objModal = {\n data: this.configModalsValidation.modalLineAttentionDA(undefined),\n width: '720px',\n height: '430px',\n panelClass: 'dialog-container',\n autoFocus: false,\n restoreFocus: false,\n disableClose: true,\n };\n fn({ objModal, routes: ['/'] });\n return;\n }\n\n this.state.setIsViable(\n // eslint-disable-next-line\n res?.viabilidad?.esViable !== null && res?.viabilidad?.esViable !== undefined\n ? res?.viabilidad?.esViable\n : false,\n );\n\n } else {\n this.spinner.hide();\n objModal = {\n data: this.configModalsValidation.modalNoData(undefined),\n width: '720px',\n height: '420px',\n panelClass: 'dialog-container',\n autoFocus: false,\n restoreFocus: false,\n disableClose: true,\n };\n fn({ objModal, routes: ['/'] });\n }\n });\n } else {\n this.redirectPath(data, typeDocument, url, (response) => {\n fn(response);\n });\n }\n } else {\n console.log('Inconveniente [authenticateClientAuth]');\n fn({ routes: ['/'] });\n }\n }),\n )\n .subscribe();\n }\n\n /**\n * Metodo encargado de mostrar el modal si no tiene información en la fecha de nacimiento.\n */\n public showCustomModal(statusCode: number) {\n\n this.spinner.hide();\n //Variable para almacenar el statusCode\n let modalContent = '';\n\n //Validamos el estado recibido para definir el mensaje que se debe mostrar en el modal\n if (statusCode === Codes.onlyProduct) {\n modalContent = `
Le informamos que este servicio está únicamente disponible para la asignación de citas relacionadas con productos de Pensiones. Si desea realizar una solicitud de Cesantías, lo invitamos a visitar nuestros canales de servicio en nuestra página web: Todos los canales de servicio - Canales de servicio (porvenir.com.co)
`;\n }\n\n Swal.fire({\n customClass: {\n closeButton: 'button-close-global',\n popup: 'modal-content',\n confirmButton: 'button-next',\n },\n imageUrl: './assets/images/warning.png',\n imageWidth: '120',\n imageHeight: '120',\n imageAlt: 'Warning',\n html: modalContent,\n width: '750',\n heightAuto: true,\n showCloseButton: true,\n confirmButtonText: 'Aceptar',\n allowOutsideClick: false,\n }).then(() => {\n this.router.navigate(['/']);\n });\n }\n\n /**\n * Metodo que valida el statsuCode del segmentador y retorna el modal necesario\n * @param statusCode código de estado a validar\n */\n public segmenterStatusValidator(statusCode: number | undefined) {\n let message = '';\n\n // Valida el statusCode del servicio y define el mensaje a enviar\n if (statusCode === SegmenterCodes.CLIENT_NOT_FOUND) {\n message = `
Lamentamos informarte que no fue posible validar tu información pensional; por favor contáctanos a través de nuestra Línea de Servicio: Bogotá: 601 744 7678 Cali: 602 485 72 72 Barranquilla: 605 385 51 51 Medellín: 604 604 15 55 Resto de Colombia: 01 8000 510 800 Resto de Colombia desde celular #857
`;\n } else {\n message = `
03. Estamos experimentando una falla técnica con nuestro servicio, por favor intenta más tarde.
`;\n }\n\n this.spinner.hide();\n\n // Representa los parametros del modal\n Swal.fire({\n customClass: {\n closeButton: 'button-close-global',\n popup: 'modal-content',\n confirmButton: 'button-next',\n },\n imageUrl: './assets/images/warning.png',\n imageWidth: '120',\n imageHeight: '120',\n imageAlt: 'Warning',\n html: message,\n width: '750',\n heightAuto: true,\n showCloseButton: true,\n confirmButtonText: 'Aceptar',\n allowOutsideClick: false,\n }).then(() => {\n this.router.navigate(['/']);\n });\n }\n\n /**\n * Se encarga de redireccionar la aplicacion segun el modulo\n * @param data contenido del formulario Dinamico @see any\n * @param typeDocument contenido de tipos de documentos @see TypeDocumentDto\n * @param url URL del modulo actual @see string\n * @param fn Funcion Callback @see DataConfirmModule\n */\n private redirectPath(\n data: any,\n typeDocument: TypeDocumentDto | undefined,\n url: string,\n fn: (response: DataConfirmModule) => void,\n ) {\n this.BuildInitial(typeDocument, data.numberDocument || '', url, (tipologies) => {\n let objModal: DialogModalDto;\n if (!this.getBasic()) {\n objModal = {\n data: this.configModalsValidation.modalNoData(undefined),\n width: '720px',\n height: '420px',\n panelClass: 'dialog-container',\n autoFocus: false,\n restoreFocus: false,\n disableClose: true,\n };\n fn({ objModal, routes: ['/'] });\n } else {\n // Define el codigo de estado de la respuesta del servicio\n const statusBasicData = this.getBasic().status?.statusCode;\n\n // Valida los casos para fecha de nacimiento y único producto cesantías\n if (statusBasicData === Codes.emptyBirthday || statusBasicData === Codes.onlyProduct) {\n this.showCustomModal(statusBasicData);\n return;\n }\n\n // Construye el objeto para el servicio segmentador\n const dataRequest: InputsDocumentsDto = {\n typeDocument: typeDocument?.mask,\n numberDocument: data.numberDocument\n };\n\n // Define el estado de cuenta del cliente\n const stateAccount = this.getBasic().datosCuenta?.estadoCuenta;\n // Valida el estado de cuenta del afiliado para los diferentes casos\n const isBenefits = stateAccount === AccountStates.PRESTACION_DEFINIDA || stateAccount === AccountStates.PRESTACION_ENTRAMITE;\n\n // Si no cumple con la codición de estado de cuenta no consume el segmentador\n if (!isBenefits) {\n // Transforma los datos de envío a una cadena serializada y encriptada\n const dataSerialized = JSON.stringify(dataRequest);\n const dataEncrypted = { data: this.encryptService.toEncrypt(dataSerialized) } as DataExternalDto;\n\n // Realiza consumo del servicio segmentador (Semanas cotizadas)\n this.getSegmenterDataExternal(dataEncrypted, (response) => {\n // Transforma los datos del response deserializando y desencriptando\n const responseDesencrypted = this.encryptService.toDecrypt(response.data)\n const responseDeserialized = JSON.parse(responseDesencrypted) as ResponseDto\n \n // Guarda la respuesta en el state\n this.setSegmenterData(responseDeserialized);\n });\n }\n\n switch (url) {\n case '/validation-assignment':\n fn({ objModal: undefined, routes: ['/assignment-module'] });\n break;\n case '/validation-search':\n this.getScheduleSt((response) => {\n if (response === undefined) {\n fn({ objModal: response, routes: ['/assistant', 'validation-search'] });\n } else {\n fn({ objModal: response, routes: ['/'] });\n }\n });\n break;\n case '/validation-modify-cancel':\n this.getScheduleSt((response) => {\n if (response === undefined) {\n fn({ objModal: response, routes: ['/assistant', 'validation-modify-cancel'] });\n } else {\n fn({ objModal: response, routes: ['/'] });\n }\n });\n break;\n default:\n fn({ objModal: undefined, routes: ['/'] });\n }\n\n if (tipologies.length <= 0) {\n if (localStorage.getItem('clientName') === null) {\n objModal = {\n data: this.configModalsValidation.modalNoData(undefined),\n width: '720px',\n height: '420px',\n panelClass: 'dialog-container',\n autoFocus: false,\n restoreFocus: false,\n disableClose: true,\n };\n } else {\n objModal = {\n data: this.configModalsValidation.modalWithoutTypologies(),\n width: '720px',\n height: '380px',\n panelClass: 'dialog-container',\n autoFocus: false,\n restoreFocus: false,\n disableClose: true,\n };\n }\n fn({ objModal, routes: ['/'] });\n }\n }\n });\n }\n /**\n * Construye todos los estados necesarios para la app no asistido\n * @param typeDocument id tipo de documento @see TypeDocumentDto\n * @param documentNumber numero de documento @see string\n * @param url URL en la que se encuentra\n * @param fn Funcion Callback\n */\n private BuildInitial(\n typeDocument: TypeDocumentDto | undefined,\n documentNumber: string,\n url: string,\n fn: (tipologies: TypologyDto[]) => void,\n ) {\n this.resetInteraction();\n\n const object = forkJoin([\n this.getTypeTypologies(),\n this.getStructureTypologies(),\n this.getBasicData(),\n this.getCountries(),\n this.getSchedule(url),\n this.getSchedulingState(),\n ]);\n\n const objectOne = forkJoin([\n this.getTypeDocuments(),\n this.getCitykeyAndValue(),\n this.getDepartmentskeyAndValue(),\n this.getGenderkeyAndValue(),\n this.getChannel(),\n ]);\n\n const objectTwo = forkJoin([this.getNodesByChannelAndIdCountry([2, 3, 5], 170)]);\n\n forkJoin([object, objectOne, objectTwo])\n .pipe(\n finalize(() => {\n fn(this.getTypologies());\n }),\n takeUntil(this.destroy$),\n )\n .subscribe(\n ([\n [typeTypologies, structureTypologies, basicData, countries, schedules, scheduleState],\n [typeDocuments, citiesKey, departmentsKey, genderKey, channel],\n [nodesAll],\n ]) => {\n this.state.setTypeTypologies(typeTypologies);\n this.state.setStructureTypology(structureTypologies);\n this.state.setBasicDataAfiliate(basicData);\n this.state.setCountries(countries);\n this.state.setSchedules(schedules);\n this.state.setStateLive(scheduleState);\n this.state.setSchedulesState(scheduleState);\n this.state.setTypeDocuments(typeDocuments);\n this.state.setCitiesKeyAndValue(citiesKey);\n this.state.setDepartmentsKeyAndValue(departmentsKey);\n this.state.setGendersKeyAndValue(genderKey);\n this.state.setChannel(channel);\n this.state.setNodesAll(nodesAll);\n const datos = basicData ? basicData : {};\n\n const state = this.state.value;\n const dateNow = moment(new Date()).locale('es').format('YYYY-MM-DD[T]HH:mm:ss');\n state.payloadScheduling.dateCall = dateNow;\n state.payloadScheduling.contact = _.cloneDeep(this.buildContact(datos, typeDocument, documentNumber));\n this.state.setContact(state);\n\n // This.state.setIsAffiliate(this.isAffiliate);\n // This.state.setIsViable(this.isViable);\n // eslint-disable-next-line\n const tipologias = basicData !== null ? basicData.tipologias : [];\n this.state.setTypologiesFromCRM(tipologias || []);\n },\n );\n }\n /**\n * Metodo que construye el objeto de informacion basica contacto para almacenarla en el estado\n * @param data informacion obtenida del ws datos basicos @see BasicDataAffiliateDto\n * @param typeDocument id tipo documento @see number\n * @param documentNumber numero del documento @see string\n */\n private buildContact(data: BasicDataAffiliateDto, typeDocument: TypeDocumentDto | undefined, documentNumber: string) {\n const dataAccount: AccountDataDto = {\n idCuenta: data.datosCuenta?.idCuenta || undefined,\n estadoCuenta: data.datosCuenta?.estadoCuenta,\n estadoSubCuenta: data.datosCuenta?.estadoSubCuenta,\n };\n const dataTypeDocument: TypeDocument = {\n id: typeDocument?.id || 0,\n mark: typeDocument?.mask || '',\n name: typeDocument?.name || '',\n };\n const city: CityContact = {};\n const cityCode =\n (data.datosContacto?.codigoCiudad?.length || 0) > 3\n ? data.datosContacto?.codigoCiudad?.substr(data.datosContacto?.codigoCiudad?.length - 3, 3) || '0'\n : data.datosContacto?.codigoCiudad || '0';\n\n if (cityCode !== '0') {\n this.subscription.add(\n this.getCityByCode(cityCode)\n .pipe(\n map((cityByCode) => {\n if (cityByCode) {\n city.id = Number(cityByCode.id || '0') || 0;\n city.name = cityByCode.name || '';\n city.idDepartment = Number(cityByCode.department?.id || '0') || 0;\n city.department = cityByCode.department?.name || '';\n }\n }),\n takeUntil(this.destroy$),\n )\n .subscribe(),\n );\n }\n\n const segment: Segment = {\n name: data?.datosSegmento?.segmento,\n };\n const productDataArray = data.datosProducto || [];\n const productData: ProductData = {\n name: (productDataArray.length || 0) > 0 ? productDataArray[0].producto : undefined,\n };\n const additionalInformation: AdditionalInformation = {\n productData,\n segment,\n };\n const basicData: Contact = {\n idTypeDocument: typeDocument?.id || 0,\n numberDocument: documentNumber,\n fullName: data.datosBasicos?.nombresApellidosCompletos,\n idGender: Number(data.datosBasicos?.genero?.replace('F', '1').replace('M', '2') || '0'),\n gender: data.datosBasicos?.genero?.replace('F', 'Femenino').replace('M', 'Masculino'),\n birthdate: moment(data.datosBasicos?.fechaNacimiento, 'DD/MM/YYYY').toDate(),\n cellPhones: [data.datosContacto?.celular?.toString() || ''],\n localPhones: [data.datosContacto?.telefono?.toString() || ''],\n emails: [data.datosContacto?.correoElectronico?.toString() || ''],\n address: [data.datosContacto?.direccion?.toString() || ''],\n habeasData: true,\n additionalInformation,\n typeDocument: dataTypeDocument,\n city,\n };\n this.setDataAccount(dataAccount);\n\n return basicData;\n }\n /**\n * Metodo que obtiene los tipo de documento del estado\n * @param id Id Tipo documento @see number\n * @param fn Funcion Callback @see TypeDocumentDto\n */\n public getTypeDocumentsByIdSt(id: number, fn: (response: TypeDocumentDto | undefined) => void) {\n this.subscription.add(\n this.typeDocuments$()\n .pipe(takeUntil(this.destroy$))\n .subscribe((response) => {\n const result = response.find((x) => Number(x.id) === Number(id)) || undefined;\n fn(result);\n }),\n );\n }\n /**\n * Metodo que obtiene los agendamientos del estado\n * @param fn Funcion Callback @see DialogModalDto\n */\n private getScheduleSt(fn: (objModal: DialogModalDto | undefined) => void) {\n this.subscription.add(\n this.schedule$()\n .pipe(takeUntil(this.destroy$))\n .subscribe((result) => {\n if (result.length <= 0) {\n fn({\n data: this.configModalsValidation.modalNoData(undefined),\n width: '720px',\n height: '420px',\n panelClass: 'dialog-container',\n autoFocus: false,\n restoreFocus: false,\n disableClose: true,\n });\n } else {\n fn(undefined);\n }\n }),\n );\n }\n /**\n * Metodo que consume el servicio de Datos Basicos\n * @returns Observable de tipo @see Observable\n */\n private getBasicData(): Observable {\n return this.basicDataApiService.getBasicDataAuthRequestExternal().pipe(take(1), takeUntil(this.destroy$));\n }\n /**\n * Metodo que consulta los tipos de tipologias\n * @returns Observable de los tipos de tipologia con tipo @see TypeTypologyDto[]\n */\n private getTypeTypologies(): Observable {\n return this.typeTypologyApiService.all().pipe(\n take(1),\n map((data) => data.filter((x) => x.state === true)),\n takeUntil(this.destroy$),\n );\n }\n /**\n * Metodo que consulta la estrucutra de tipologia en estado activo\n * @returns Observable de la estructura de tipologia con tipo @see StructureTypologyDto\n */\n private getStructureTypologies(): Observable {\n return this.structureTypologyApiService.getStructureActive().pipe(take(1), takeUntil(this.destroy$));\n }\n /**\n * Metodo que consulta todos los Paises en estado activo\n * @returns Observable de las paises con tipo @see CountryDto[]\n */\n private getCountries(): Observable {\n return this.countryApiService.all().pipe(\n take(1),\n map((data) => data.filter((x) => x.state === true)),\n takeUntil(this.destroy$),\n );\n }\n /**\n * Metodo que consulta key/Value de los Departamentos en estado activo\n * @returns Observable de los departamentos con tipo key/value\n */\n private getDepartmentskeyAndValue(): Observable<{ [id: number]: string }> {\n return this.departmentApiService.keyValue(true).pipe(take(1), takeUntil(this.destroy$));\n }\n /**\n * Metodo que consulta key/Value de las ciudades en estado activo\n * @returns Observable de las ciudades con tipo key/value\n */\n private getCitykeyAndValue(): Observable<{ [id: number]: string }> {\n return this.cityApiService.keyValue(true).pipe(take(1), takeUntil(this.destroy$));\n }\n /**\n * Metodo que consulta la ciudad por codigo\n * @param code Codigo de la ciudad a consultar @see srtring\n * @returns Observable de la ciudad con tipo @see CityDto\n */\n private getCityByCode(code: string): Observable {\n return this.cityApiService.getCityByCode(code, true).pipe(take(1), takeUntil(this.destroy$));\n }\n /**\n * Metodo que consulta los Nodos por liasta de canal, codigo de pais y estado activo\n * @param codsChannel Lista de codigos de canal a consultar ([2, 3]) @see number[]\n * @param idCountry Id del pais a consultar (170) @see number\n * @returns Observable de los nodos con tipo @see NodeDto[]\n */\n private getNodesByChannelAndIdCountry(codsChannel: number[], idCountry: number): Observable {\n return this.nodeApiService\n .getNodesByCodesChannelIdCountry({ codsChannel, idCountry, state: true })\n .pipe(take(1), takeUntil(this.destroy$));\n }\n /**\n * Metodo que consulta todos los tipos de documentos en estado activo\n * @returns Observable de los tipos de documento con tipo @see TypeDocumentDto[]\n */\n private getTypeDocuments(): Observable {\n return this.typeDocumentsApiService.all().pipe(\n take(1),\n map((data) => data.filter((x) => x.state === true)),\n takeUntil(this.destroy$),\n );\n }\n /**\n * Metodo que consulta todos los tipos de documentos en estado activo\n */\n public getTempTypeDocuments(fn: (response: TypeDocumentDto[]) => void) {\n this.typeDocumentsApiService\n .all()\n .pipe(\n take(1),\n map((data) => data.filter((x) => x.state === true)),\n takeUntil(this.destroy$),\n )\n .subscribe((response) => {\n fn(response);\n });\n }\n /**\n * Metodo que consulta todos los generos en estado activo\n * @returns Observable de los generos con tipo key/value\n */\n private getGenderkeyAndValue(): Observable<{ [id: number]: string }> {\n return this.genderApiService.keyValue(true).pipe(take(1), takeUntil(this.destroy$));\n }\n /**\n * Metodo que consulta todo los agendamientos segun el numero de documento\n * obtenido en la autenticación\n * @param url URL de la opcion a ejecutar (crear, modificar, consultar) @see string\n * @returns Observable de los agendamientos con tipo @see ScheduleDto[]\n */\n private getSchedule(url: string): Observable {\n switch (url) {\n case '/validation-search':\n return this.scheduleApiService.getByNumberDocumentAuth().pipe(\n take(1),\n map((response) => {\n const dataDesencrypted = this.encryptService.toDecrypt(response.data || '');\n const dataSchedules = JSON.parse(dataDesencrypted) as ScheduleDto[];\n return dataSchedules;\n }),\n takeUntil(this.destroy$),\n );\n break;\n case '/validation-modify-cancel':\n return this.scheduleApiService.getByNumberDocumentAuth().pipe(\n take(1),\n map((response) => {\n const dataDesencrypted = this.encryptService.toDecrypt(response.data || '');\n const dataSchedules = JSON.parse(dataDesencrypted) as ScheduleDto[];\n const result = dataSchedules.filter((x) => x.idStateScheduling !== 3 && x.idStateScheduling !== 4);\n return result;\n }),\n takeUntil(this.destroy$),\n );\n break;\n default:\n return this.scheduleApiService.getByNumberDocumentAuth().pipe(\n take(1),\n map((response) => {\n const dataDesencrypted = this.encryptService.toDecrypt(response.data || '');\n const dataSchedules = JSON.parse(dataDesencrypted) as ScheduleDto[];\n const result = dataSchedules.filter((x) => x.idStateScheduling !== 3);\n return result;\n }),\n takeUntil(this.destroy$),\n );\n }\n }\n /**\n * Metodo que consulta todo los canales en estado activo\n * @returns Observable de los canales con tipo @see ChannelDto[]\n */\n private getChannel(): Observable {\n return this.channelApiService.all().pipe(\n take(1),\n map((data) => data.filter((x) => x.state === true), takeUntil(this.destroy$)),\n );\n }\n /**\n * Metodo que consulta todos los agendamiento en estado vivo\n * @returns Observable de los estados de agendamiento con tipo @see StateSchedulingDto[]\n */\n private getSchedulingState(): Observable {\n return this.stateSchedulingApiService.GetByStateLive(true).pipe(take(1), takeUntil(this.destroy$));\n }\n /**\n * Método encargado de obtener la viabilidad para aplicaciones externas\n * @param data Objeto con información del documento de identificación del afiliado encriptada\n * @param fn Callback al ejecutarse el metodo\n */\n public getViabilityExternal(data: DataExternalDto, fn: (result: any) => void) {\n this.viabilityApiService.getViabilityExternal(data)\n .pipe(\n take(1),\n takeUntil(this.destroy$),\n ).subscribe((response) => {\n fn(response);\n });\n }\n /**\n * Metodo que consulta el servicio de semanas cotizadas para aplicaciones externas\n * @param data Datos de documento del afilaido @see DataSegmenterDto\n * @param fn Funciion CallBack @see ResponseDto\n */\n private getSegmenterDataExternal(data: DataExternalDto, fn: (response: any) => void) {\n this.segmenterApiService\n .getSegmenterDataExternal(data)\n .pipe(take(1), takeUntil(this.destroy$))\n .subscribe((response: DataExternalDto) => {\n const responseDesencrypted = this.encryptService.toDecrypt(response.data || '');\n const responseDeserialized = JSON.parse(responseDesencrypted) as DataSegmenterDto\n\n if (responseDeserialized.status?.statusCode !== 200) {\n this.segmenterStatusValidator(responseDeserialized?.status?.statusCode)\n }\n fn(response);\n }, (error: HttpErrorResponse) => {\n if (error.status !== 200) {\n this.segmenterStatusValidator(error.status);\n }\n });\n }\n\n /**\n * Metodo encargado de almacenar en el estado los datos de la viabilidad\n * @param data Datos de la viabilidad @see ResponseDto\n */\n private setViability(data: ResponseDto) {\n this.state.setViability(data);\n }\n /**\n * Metodo encargado de almacenar en el estado los datos del segmentador\n * @param data Datos del segmentador @see DataSegmenterDto\n */\n private setSegmenterData(data: DataSegmenterDto) {\n this.state.setSegmenterData(data);\n }\n /**\n * Metodo que consulta el codigo del estado de ws datos basicos\n * @param fn Fuancion CallBack @see number\n */\n public getStatusCode(fn: (response: number) => void) {\n this.subscription.add(\n this.state.basicDataAffiliate$.pipe(takeUntil(this.destroy$)).subscribe((response) => {\n fn(response.status?.statusCode || 0);\n }),\n );\n }\n /**\n * Metodo que consulta el listado de tipologias del estado de ws datos basicos\n * @returns Listado de tipologias con tipo @see TypologyDto[]\n */\n private getTypologies(): TypologyDto[] {\n let params: TypologyDto[] = [];\n this.subscription.add(this.state.basicDataAffiliate$\n .pipe(\n map((tipologies) => {\n // eslint-disable-next-line\n if (tipologies !== null) {\n params = tipologies.tipologias || [];\n }\n if (params.length === 0) {\n const a: TypologyDto = {\n codigo: 2,\n indicadorValidarTipologia: '2',\n nombre: 'DOBLE ASESORÍA',\n tiempoAtencion: '30 minutos',\n };\n params.push(a);\n }\n }),\n takeUntil(this.destroy$),\n )\n .subscribe());\n\n return params;\n }\n /**\n * Metodo encargado de actualizar el estado con los tipos de documento\n * @param typeDocuments Lista de tipos de documento a almacenar @see TypeDocumentDto[]\n */\n public setTypeDocumentsSt(typeDocuments: TypeDocumentDto[]) {\n this.state.setTypeDocuments(typeDocuments);\n }\n /**\n * Metodo que actualiza los datos del contacto en el estado\n * @param dataAccount Objeto con los datos del contacto de tipo @see AccountDataDto\n */\n public setDataAccount(dataAccount: AccountDataDto) {\n this.state.setDataAccount(dataAccount);\n }\n /**\n * Metodo que inicializa el estado interaction en valores nulos\n */\n public resetInteraction() {\n this.state.resetInteraction();\n }\n /**\n * Metodo que obtiene los datos de basic data\n */\n public getBasic(): BasicDataAffiliateDto {\n return this.state.basicDataAffiliateObject;\n }\n /**\n * Metodo que obtiene la ip address\n */\n public getIP() {\n this.httpIp.getIPAddress();\n }\n}\n","import { Component, OnInit } from '@angular/core';\n\n/**\n * Componente encargado de mostarar al usuario que no se encuentra autorizado\n */\n@Component({\n selector: 'prv-forbidden',\n templateUrl: './forbidden.component.html',\n styleUrls: ['./forbidden.component.scss'],\n})\nexport class ForbiddenComponent implements OnInit {\n /**\n * It is invoked only once when the directive is instantiated.\n */\n // eslint-disable-next-line @angular-eslint/no-empty-lifecycle-method\n public ngOnInit(): void {}\n}\n","\n \n
Ups!! Forbidden (403)
\n
No tiene los permisos suficientes para ingresar al servicio. Lo sentimos!
\n\n","import { Component, OnInit } from '@angular/core';\nimport { Router } from '@angular/router';\n\n/**\n * Componente encargado de mostarar al usuario que no se encuentra autorizado\n */\n@Component({\n selector: 'prv-unauthorized',\n templateUrl: './unauthorized.component.html',\n styleUrls: ['./unauthorized.component.scss'],\n})\nexport class UnauthorizedComponent implements OnInit {\n\n /**\n * Provides access to information about a route associated with a component that is loaded in an outlet.\n */\n private readonly router: Router;\n\n /**\n * Crea una nueva instancia de ValidationComponent\n */\n public constructor(router: Router) {\n this.router = router;\n\n }\n /**\n * It is invoked only once when the directive is instantiated.\n */\n public ngOnInit(): void {\n setTimeout(() => this.router.navigate(['/']), 5000);\n }\n}\n","\n \n
Ups!! Unauthorized (404)
\n
No se encuentra autorizad@ para realizar la petición al servicio. Lo sentimos!
\n\n","import { Component, OnDestroy, OnInit } from '@angular/core';\nimport { UntypedFormBuilder, UntypedFormGroup, Validators } from '@angular/forms';\nimport { MatDialog } from '@angular/material/dialog';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { ScheduleDto } from '@prv/schedule-history';\nimport { TypeDocumentDto } from '@prv/type-document';\nimport { CustomModalComponent } from 'apps/website/src/app/shared/dialogs/custom-modal/custom-modal.component';\nimport { NgxSpinnerService } from 'ngx-spinner';\nimport { Observable, Subject } from 'rxjs';\n\nimport { AuthenticationService } from '../../core/services/auth/authentication.service';\nimport { ValidatorMessageService } from '../../core/services/validator-message/validator-message.service';\nimport { ConfigModalsAssignmentValidation } from '../../shared/dialogs/custom-modal/config/assignment/config-modals-validation';\nimport { ConfigModalsValidation } from '../../shared/dialogs/custom-modal/config/validation/config-modals-validation';\nimport { ITypeMessage } from '../../shared/models/type-message.model';\nimport { ValidationFacade } from '../facade/validation.facade';\nimport { takeUntil } from 'rxjs/operators';\n\n/**\n * Componente encargado de validar e iniciar el proceso de autenticación\n */\n@Component({\n selector: 'prv-validation',\n templateUrl: './validation.component.html',\n styleUrls: ['./validation.component.scss'],\n})\nexport class ValidationComponent implements OnInit, OnDestroy {\n /**\n * Permite detectar la plataforma\n */\n //public deviceService: DeviceDetectorService;\n /**\n * Dispositivo\n */\n //private deviceInfo!: DeviceInfo;\n /**\n * Autenticación de usuario\n */\n public get isAuthenticated() {\n return this.authService.isAuthenticated;\n }\n /**\n * Affiliate de usuario\n */\n public get isAffiliate() {\n return this.authService.isAffiliate;\n }\n /**\n * Viable de usuario\n */\n public get isViable() {\n return this.authService.isViable;\n }\n /**\n * Servicio pantalla carga\n */\n private readonly spinner: NgxSpinnerService;\n /**\n * Provides access to information about a route associated with a component that is loaded in an outlet.\n */\n private readonly router: Router;\n /**\n * Provides access to information about a route associated with a component that is loaded in an outlet.\n */\n private readonly activatedRoute: ActivatedRoute;\n /**\n * Permite desplegar un modal\n */\n public dialog: MatDialog;\n /**\n * Atributo encargado de obtener la configuración del contenido de la ventana modal\n */\n public configModalsAssignmentValidation: ConfigModalsAssignmentValidation;\n /**\n * Atributo encargado de obtener la configuración del contenido de la ventana modal\n */\n public configModalsValidation: ConfigModalsValidation;\n /**\n * Capa intermedia que centraliza la logica del agente\n */\n private readonly facade: ValidationFacade;\n /**\n * Servicio encargado de controlar la autenticación\n */\n private readonly authService: AuthenticationService;\n /**\n * Observable History\n */\n public readonly schedule$: Observable;\n /**\n * Observable Types Documents\n */\n public readonly typeDocuments$: Observable;\n /**\n * Observable para destruir las suscripciones\n */\n private readonly destroy$ = new Subject();\n /**\n * Url desde donde fue invocado\n */\n private readonly url: string;\n /**\n * Formulario de Validación\n */\n public form: UntypedFormGroup;\n /**\n * listado de mensajes de error\n */\n public typeMessages: ITypeMessage[];\n /**\n * Objecto tipo documento\n */\n public typeDocument: TypeDocumentDto | undefined = { regex: ''};\n /**\n * Almaccenar el observable\n */\n public datos: any[];\n /**\n * Almaccenar el regex\n */\n // public regex = '';\n\n /**\n * Crea una nueva instancia de ValidationComponent\n */\n public constructor(\n spinner: NgxSpinnerService,\n router: Router,\n activatedRoute: ActivatedRoute,\n dialog: MatDialog,\n facade: ValidationFacade,\n authService: AuthenticationService,\n typeMessages: ValidatorMessageService,\n builder: UntypedFormBuilder,\n //deviceService: DeviceDetectorService,\n ) {\n this.spinner = spinner;\n this.router = router;\n this.activatedRoute = activatedRoute;\n this.dialog = dialog;\n this.facade = facade;\n this.configModalsAssignmentValidation = new ConfigModalsAssignmentValidation();\n this.configModalsValidation = new ConfigModalsValidation();\n this.authService = authService;\n this.typeMessages = typeMessages.typeMessage;\n this.url = router.url;\n this.datos = [];\n this.schedule$ = this.facade.schedule$();\n this.typeDocuments$ = this.facade.typeDocuments$();\n //this.deviceService = deviceService;\n\n this.form = builder.group({\n typeDocument: [null, Validators.required],\n numberDocument: [\n null,\n [Validators.required, Validators.minLength(4), Validators.maxLength(20)],\n ],\n captcha: [null, Validators.required],\n });\n switch (this.url) {\n case '/validation-search':\n /* This.SendFailOtp(); */\n break;\n case '/validation-modify-cancel':\n /* This.SendFailOtp(); */\n break;\n default:\n }\n }\n\n /**\n * It is invoked only once when the directive is instantiated.\n */\n public ngOnInit(): void {\n //this.OnNavigate();\n this.facade.getTempTypeDocuments((response) => {\n this.facade.setTypeDocumentsSt(response);\n });\n this.facade.getIP();\n }\n\n /**\n * A callback method that performs custom clean-up, invoked immediately\n * before a directive, pipe, or service instance is destroyed.\n */\n public ngOnDestroy(): void {\n this.destroy$.next();\n this.destroy$.complete();\n }\n /**\n * Obtiene el objecto seleccionado y cambia el regex\n * @param id Id del tipo documento\n */\n public onChangeSelect(id: number) {\n this.spinner.show();\n this.facade.getTypeDocumentsByIdSt(id, (response) => {\n this.typeDocument = response;\n this.spinner.hide();\n });\n }\n\n /**\n * Evento para navegar a la pagina anterior\n */\n public onBack(): void {\n this.router.navigate(['/']);\n }\n\n /**\n * Convierte string a json\n * @param data que recibe una cadena\n */\n public parseJson(data: string) {\n return JSON.parse(data);\n }\n\n /**\n * Evento encargado de procesar el formulario\n */\n public onSubmit() {\n this.spinner.show();\n const data = this.form.value;\n let typeDocumentCurrent : any;\n\n // Obtiene el tipo de documento del afiliado\n this.typeDocuments$.pipe(takeUntil(this.destroy$)).subscribe((response) => {\n typeDocumentCurrent = response.filter(x => x.id == data.typeDocument)\n });\n\n localStorage.setItem(`typeDocument`, typeDocumentCurrent[0].mask);\n localStorage.setItem(`documentNumber`, data.numberDocument);\n localStorage.setItem(`clientName`, '');\n this.facade.resetInteraction();\n this.facade.authenticateClientAuth(data, this.typeDocument, this.url, (response) => {\n this.spinner.hide();\n this.facade.ngOnDestroy();\n if (response.objModal !== undefined) {\n this.dialog.open(CustomModalComponent, response.objModal);\n this.router.navigate(response.routes);\n } else {\n this.router.navigate(response.routes, { relativeTo: this.activatedRoute });\n }\n this.form.reset();\n });\n }\n}\n","\n\n\n
\n \n \n
\n","import { Component, OnInit } from '@angular/core';\nimport { MatDialog } from '@angular/material/dialog';\n//import { CustomModalComponent } from 'apps/website/src/app/shared/dialogs/custom-modal/custom-modal.component';\n//import { DeviceDetectorService, DeviceInfo } from 'ngx-device-detector';\n\nimport { ConfigModalsAssignmentValidation } from '../../shared/dialogs/custom-modal/config/assignment/config-modals-validation';\nimport { ConfigModalsValidation } from '../../shared/dialogs/custom-modal/config/validation/config-modals-validation';\n/**\n * Componente que permite al usuario seleccionar la operación a realizar\n */\n@Component({\n selector: 'prv-welcome',\n templateUrl: './welcome.component.html',\n styleUrls: ['./welcome.component.scss'],\n})\nexport class WelcomeComponent implements OnInit {\n /**\n * Permite desplegar un modal\n */\n public dialog: MatDialog;\n /**\n * Permite detectar la plataforma\n */\n //public deviceService: DeviceDetectorService;\n /**\n * Atributo encargado de obtener la configuración del contenido de la ventana modal\n */\n public configModalsAssignmentValidation: ConfigModalsAssignmentValidation;\n /**\n * Atributo encargado de obtener la configuración del contenido de la ventana modal\n */\n public configModalsValidation: ConfigModalsValidation;\n /**\n * Dispositivo\n */\n //private deviceInfo!: DeviceInfo;\n /**\n * Crea una nueva instancia WelcomeComponent\n */\n public constructor(\n dialog: MatDialog,\n //deviceService: DeviceDetectorService,\n ) {\n this.dialog = dialog;\n //this.deviceService = deviceService;\n this.configModalsAssignmentValidation = new ConfigModalsAssignmentValidation();\n this.configModalsValidation = new ConfigModalsValidation();\n }\n /**\n * It is invoked only once when the directive is instantiated.\n */\n // eslint-disable-next-line @angular-eslint/no-empty-lifecycle-method\n public ngOnInit(): void {\n //this.OnNavigate();\n }\n /**\n * Metodo encargado de identificar el dispositivo\n * console.log(this.deviceInfo);\n */\n /*private OnNavigate() {\n this.deviceInfo = this.deviceService.getDeviceInfo();\n if (this.deviceInfo.os === 'iOS' || this.deviceInfo.os === 'Mac') {\n const currentDialog = this.dialog.open(CustomModalComponent, {\n data: this.configModalsAssignmentValidation.modalBrowserOpera(),\n width: '720px',\n height: '350px',\n panelClass: 'dialog-container',\n autoFocus: false,\n restoreFocus: false,\n disableClose: true,\n });\n currentDialog.beforeClosed().subscribe(() => {\n window.location.href = 'https://www.porvenir.com.co/web/personas/inicio';\n });\n }\n }*/\n}\n","\n
\n
\n
\n
\n
Selecciona una de estas tres opciones para continuar
\n
\n
\n
\n \n
Asignación de citas
\n
\n
\n \n
Cancelar / Modificar Cita
\n
\n
\n \n
Consultar Citas
\n
\n
\n
\n
\n
\n","import { Injectable } from '@angular/core';\nimport { CanLoad, Router } from '@angular/router';\nimport { Observable } from 'rxjs';\n\nimport { AuthenticationService } from '../services/auth/authentication.service';\n\n/**\n * Guard que se encarga de asegurar los modulos de trabajo\n */\n@Injectable({\n providedIn: 'root',\n})\nexport class AuthenticatedGuard implements CanLoad {\n /**\n * Servicio que controla la autenticación\n */\n private readonly authService: AuthenticationService;\n /**\n * A service that provides navigation and URL manipulation capabilities.\n */\n private readonly router: Router;\n\n /**\n * Crea una nueva instancia de AuthenticatedGuard\n */\n public constructor(authService: AuthenticationService, router: Router) {\n this.authService = authService;\n this.router = router;\n }\n\n /**\n * Metodo que valida si el usuario se encuentra autenticado\n */\n public canLoad(): boolean | Observable | Promise {\n if (!this.authService.isAuthenticated) {\n this.router.navigate(['/']);\n }\n\n return this.authService.isAuthenticated;\n }\n}\n","import { HttpErrorResponse, HttpEvent, HttpHandler, HttpInterceptor, HttpRequest } from '@angular/common/http';\nimport { Injectable } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { Observable, throwError } from 'rxjs';\nimport { catchError, retry } from 'rxjs/operators';\n\nimport { Error500 } from '../../models/error.500.model';\nimport { ErrorService } from '../../services/error/error.service';\n\n/**\n * Interceptor encargado de reintentar la petición y de validar los errores específicos\n */\n@Injectable()\nexport class ServerErrorInterceptor implements HttpInterceptor {\n /**\n * A service that provides navigation and URL manipulation capabilities.\n */\n private readonly router: Router;\n /**\n * Servicio para procesar el error\n */\n private readonly errorService: ErrorService;\n\n /**\n * Crea una nueva instancia de ServerErrorInterceptor\n * @param router A service that provides navigation and URL manipulation capabilities.\n * @param errorService Servicio para procesar el error\n */\n public constructor(router: Router, errorService: ErrorService) {\n this.router = router;\n this.errorService = errorService;\n }\n\n /**\n * Identifies and handles a given HTTP request.\n * @param req The outgoing request object to handle.\n * @param next The next interceptor in the chain, or the backend if no interceptors remain in the chain.\n * @returns An observable of the event stream.\n */\n public intercept(request: HttpRequest, next: HttpHandler): Observable> {\n return next.handle(request).pipe(\n retry(2),\n catchError((errorResponse: HttpErrorResponse) => {\n if (errorResponse.status === 400) {\n const error400 = this.errorService.getServerError400(errorResponse);\n\n const filedsMap = new Map(Object.entries(error400.errors));\n\n let errors: string[] = [];\n\n Object.keys(error400.errors).forEach((x: string) => (errors = [...errors, ...(filedsMap.get(x) || [])]));\n }\n\n if (errorResponse.status === 401) {\n this.router.navigate(['/unauthorized']);\n }\n\n if (errorResponse.status === 500) {\n const error: Error500 = errorResponse.error;\n\n console.log('Interceptor', error);\n }\n\n return throwError(errorResponse);\n }),\n );\n }\n}\n","import { HttpEvent, HttpHandler, HttpInterceptor, HttpRequest } from '@angular/common/http';\nimport { Injectable } from '@angular/core';\nimport { Observable } from 'rxjs';\n\nimport { AuthenticationService } from '../../services/auth/authentication.service';\n\n/**\n * Interceptor encargado de agregar el token a la solicitud\n */\n@Injectable()\nexport class TokenInterceptorService implements HttpInterceptor {\n /**\n * Servicio encargado de administrar la autenticación del usuario\n */\n private readonly authService: AuthenticationService;\n\n /**\n * Crea una nueva instancia de @see TokenInterceptorService\n * @param authService Servicio encargado de administrar la autenticación del usuario\n */\n public constructor(authService: AuthenticationService) {\n this.authService = authService;\n }\n\n /**\n * Identifies and handles a given HTTP request.\n * @param req The outgoing request object to handle.\n * @param next The next interceptor in the chain, or the backend if no interceptors remain in the chain.\n * @returns An observable of the event stream.\n */\n public intercept(req: HttpRequest, next: HttpHandler): Observable> {\n if (req.url.includes('api')) {\n if (this.authService.isAuthenticated) {\n const request = req.clone({\n headers: this.authService.getHeaders(),\n });\n\n return next.handle(request);\n }\n }\n\n return next.handle(req);\n }\n}\n","import { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { Injectable } from '@angular/core';\nimport { MatDialog } from '@angular/material/dialog';\nimport { Router } from '@angular/router';\nimport { NexaConfigurationService } from '@nexa/configuration';\nimport { Observable } from 'rxjs';\nimport { switchMap, tap } from 'rxjs/operators';\n\nimport { ConfigModalsValidation } from '../../../shared/dialogs/custom-modal/config/validation/config-modals-validation';\nimport { CustomModalComponent } from '../../../shared/dialogs/custom-modal/custom-modal.component';\nimport { AuthenticationDto } from '../../models/authentication.dto';\n\n/**\n * Servicio encargado de controlar la autenticación\n */\n@Injectable({\n providedIn: 'root',\n})\nexport class AuthenticationService {\n /**\n * This service is available as an injectable class, with methods to perform HTTP requests.\n */\n private readonly httpClient: HttpClient;\n /**\n * Servicio encargado de obtener las configuraciones del entorno\n */\n private readonly configuration: NexaConfigurationService;\n /**\n * Propiedad de control para determinar si se encuentra autenticado\n */\n // eslint-disable-next-line @typescript-eslint/naming-convention,no-underscore-dangle,id-blacklist,id-match\n private _isAuthenticated: boolean;\n /**\n * Propiedad de control para determinar si se encuentra autenticado\n */\n // eslint-disable-next-line @typescript-eslint/naming-convention,no-underscore-dangle,id-blacklist,id-match\n private _isAffiliate: boolean;\n /**\n * Propiedad de control para determinar si se encuentra autenticado\n */\n // eslint-disable-next-line @typescript-eslint/naming-convention,no-underscore-dangle,id-blacklist,id-match\n private _isViable: boolean;\n /**\n * Propiedad de control para determinar si se encuentra autenticado\n */\n // eslint-disable-next-line @typescript-eslint/naming-convention,no-underscore-dangle,id-blacklist,id-match\n private _error: string;\n /**\n * Propiedad que contiene el access token\n */\n // eslint-disable-next-line @typescript-eslint/naming-convention, no-underscore-dangle, id-blacklist, id-match\n private _token: string;\n /**\n * Permite desplegar un modal\n */\n public dialog: MatDialog;\n /**\n * Atributo encargado de obtener la configuración del contenido de la ventana modal\n */\n public configModalsValidation: ConfigModalsValidation;\n /**\n * Provides access to information about a route associated with a component that is loaded in an outlet.\n */\n private readonly router: Router;\n /**\n * Gets the is authenticated\n */\n public get isAuthenticated(): boolean {\n return this._isAuthenticated;\n }\n /**\n * Gets the is affiliate\n */\n public get isAffiliate(): boolean {\n return this._isAffiliate;\n }\n /**\n * Gets the is viable\n */\n public get isViable(): boolean {\n return this._isViable;\n }\n /**\n * Gets the error\n */\n public get error(): string {\n return this._error;\n }\n /**\n * Gets the access token\n */\n public get token(): string {\n return this._token;\n }\n\n /**\n * Crea una nueva instancia de AuthService\n */\n public constructor(\n httpClient: HttpClient,\n nexaConfigurationService: NexaConfigurationService,\n dialog: MatDialog,\n router: Router,\n ) {\n this.configuration = nexaConfigurationService;\n this.httpClient = httpClient;\n this._isAuthenticated = false;\n this._isAffiliate = false;\n this._isViable = false;\n this._error = '';\n this._token = '';\n this.dialog = dialog;\n this.configModalsValidation = new ConfigModalsValidation();\n this.router = router;\n }\n\n /**\n * Servicio encargado de iniciar el proceso de autenticación\n * @param token Token retornado por google\n * @param numberDocument Numero de documento del usuario\n * @param idTypeDocument Id del tipo de documento\n * @param typeDocument Tipo de documento\n */\n public authenticate(\n token: string,\n numberDocument: string,\n idTypeDocument: number,\n typeDocument: string,\n ): Observable {\n const json = {\n swagger: false,\n googleToken: token,\n numberDocument,\n idTypeDocument,\n typeDocument,\n };\n\n return this.configuration.getApi('auth').pipe(\n switchMap((uri) => {\n return this.httpClient\n .post(`${uri}/Control/Auth`, json, {\n headers: new HttpHeaders({\n 'Content-Type': 'application/json',\n 'referer-route': this.router.url,\n }),\n })\n .pipe(\n tap((x) => {\n this._error = x.error;\n // eslint-disable-next-line\n if (x.isValid) {\n this._isAuthenticated = x.isValid;\n this._isAffiliate = x.isAffiliate;\n this._isViable = x.isViable;\n this._token = x.token;\n\n } else {\n\n this.dialog.open(CustomModalComponent, {\n data: this.configModalsValidation.modalNoData(undefined),\n width: '720px',\n height: '420px',\n panelClass: 'dialog-container',\n autoFocus: false,\n restoreFocus: false,\n disableClose: true,\n });\n this.router.navigate(['/']);\n }\n }),\n );\n }),\n );\n }\n\n /**\n * Metodo encargado de construir los header para peticiones Http\n * @returns Retorna un objeto HttpHeaders con el token y content-type\n */\n public getHeaders(): HttpHeaders {\n let headers = new HttpHeaders();\n\n headers = headers.set('Content-Type', 'application/json');\n headers = headers.set('referer-route', this.router.url);\n\n return this.appendAuthHeader(headers);\n }\n\n /**\n * Metodo encargado de asociar el token al header Authorization\n * @param headers Objeto al cual se le asociara el header Authorization con el token\n * @returns Retorna el objeto HttpHeaders con el encabezado Authorization\n */\n private appendAuthHeader(headers: HttpHeaders): HttpHeaders {\n if (this._token === '') {\n return headers;\n }\n const tokenValue = `Bearer ${this._token}`;\n\n return headers.set('Authorization', tokenValue);\n\n }\n}\n","import { HttpErrorResponse } from '@angular/common/http';\nimport { Injectable } from '@angular/core';\n\nimport { Error400 } from '../../models/error.400.model';\n\n/**\n * Servicio de error para analizar mensajes y las trazas de pila.\n */\n@Injectable()\nexport class ErrorService {\n /**\n * Metodo encargado de retornar el error del cliente\n * @param error Error del cliente a procesar\n */\n public getClientErrorMessage(error: Error): string {\n return error.message ? error.message : error.toString();\n }\n\n /**\n * Metodo encargado de obtener el mensaje del error del servidor\n * @param response Error del servidor a procesar\n */\n public getServerErrorMessage(response: HttpErrorResponse): string {\n return navigator.onLine ? response.message : 'No Internet Connection';\n }\n\n /**\n * Metodo encargado de obtener la traza del error del servidor\n * @param response Error del servidor a procesar\n */\n public getServerErrorStackTrace(response: HttpErrorResponse): string {\n return response.message;\n }\n\n /**\n * Metodo encargado de obtener el detalle del error con codigo 400\n * @param response Información del Error\n */\n public getServerError400(response: HttpErrorResponse): Error400 {\n const error400: Error400 = {\n ...response.error,\n };\n\n return error400;\n }\n}\n","import { Injectable } from '@angular/core';\n\n/**\n * servicio encargado de proveer la ip address\n */\n@Injectable({\n providedIn: 'root',\n})\nexport class IpServiceService {\n\n public getIPAddress() {\n\n fetch('https://ipv4.jsonip.com')\n .then((response) => response.json())\n .then((info) => {\n localStorage.setItem('ip', info.ip);\n });\n }\n}\n","import { Injectable } from '@angular/core';\n\n/**\n * Servicio para registrar los logs.\n */\n@Injectable()\nexport class LoggingService {\n /**\n * Level Debug\n * @param message Mensaje a escribir\n * @param args Información a realacionar\n */\n public logDebug(message: string, args?: any) {\n console.log(`LoggingService: ${message}`, args);\n }\n\n /**\n * Level Warning\n * @param message Mensaje a escribir\n * @param args Información a realacionar\n */\n public logWarning(message: string, args?: any) {\n console.warn(`LoggingService: ${message}`, args);\n }\n\n /**\n * Metodo encargado de almacenar el error para su posterior procesamiento\n * @param message Mensaje de error\n * @param stack Traza del error\n */\n public logError(message: string, stack: string) {\n /* Send errors to server here */\n console.log(`LoggingService: ${message}`, stack);\n }\n}\n","import { Injectable } from '@angular/core';\n\nimport { ITypeMessage } from '../../../shared/models/type-message.model';\n\n/**\n * Servicio encargado de administrar los tipos de do\n */\n@Injectable()\nexport class ValidatorMessageService {\n /**\n * tipo de errores\n */\n public typeMessage: ITypeMessage[] = [\n {\n type: 'required',\n message: '¡Este campo es obligatorio!',\n },\n {\n type: 'minlength',\n message: '¡No cumple la longitud minima!',\n },\n {\n type: 'maxlength',\n message: '¡Este campo execede la longitud maxima!',\n },\n {\n type: 'pattern',\n message: '¡Este campo no contiene el formato correcto!',\n },\n {\n type: 'min',\n message: '¡El contenido del campo debe ser mayor a cero!',\n },\n {\n type: 'phonevalid',\n message: '¡Este campo no contiene el formato correcto!',\n },\n ];\n}\n","//Codigos de respuesta\nexport enum Codes {\n /**\n * Status Code 206 cuando fecha nacimiento es vacia\n */\n emptyBirthday = 206,\n /**\n * Status Code cuando el producto es solo cesantias\n */\n onlyProduct = 207\n}\n","import { Injectable, OnDestroy } from '@angular/core';\nimport { NodeDto } from '@prv/georeference';\nimport { PayloadScheduling, ScheduleDto } from '@prv/schedule-history';\nimport { DetailReasonStateSchedulingApiService, DetailReasonStateSchedulingDto, ReasonStateSchedulingDto } from '@prv/scheduling-state';\nimport { Observable, Subject, Subscription } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\n\nimport { AppModuleState } from '../../../app.state';\n\n/**\n * Capa intermedia que centraliza la logica del modulo de consulta\n */\n@Injectable()\nexport class ModifyCancelFacade implements OnDestroy {\n /**\n * State de schedule\n */\n private readonly state: AppModuleState;\n /**\n * Informacion de los estados\n */\n private readonly detailReasonStateSchedulingApiService: DetailReasonStateSchedulingApiService;\n /**\n * cancelar suscripciones\n */\n private readonly subscription: Subscription;\n /**\n * Observable encargado de eliminar los diferentes sucriptores\n */\n public destroy$ = new Subject();\n /**\n * Observable de schedules\n */\n public readonly scheduleId$ = (): Observable => this.state.scheduleId$;\n /**\n * Observable de DetailReasonStateScheduling\n */\n public readonly detailReasonStateScheduling$ = (): Observable =>\n this.state.detailReasonStateScheduling$\n /**\n * Observable de Nodos todos\n */\n public readonly nodesAll$ = (): Observable => this.state.nodesAll$;\n /**\n * Crea una nueva instancia de SearchFacade\n */\n public constructor(\n state: AppModuleState,\n detailReasonStateSchedulingApiService: DetailReasonStateSchedulingApiService,\n ) {\n this.state = state;\n this.detailReasonStateSchedulingApiService = detailReasonStateSchedulingApiService;\n this.subscription = new Subscription();\n }\n /**\n * A callback method that performs custom clean-up, invoked immediately\n * before a directive, pipe, or service instance is destroyed.\n */\n public ngOnDestroy(): void {\n this.destroySubscription();\n setTimeout(() => {\n this.destroy$.next();\n this.destroy$.complete();\n }, 3000);\n }\n /**\n * Metodo encargado de desuscribir los observables de la facade\n */\n public destroySubscription(): void {\n this.subscription.unsubscribe();\n }\n /**\n * Asignación de citas\n */\n public get state$() {\n return this.state.agentInteractionState$;\n }\n /**\n * Metodo que obtiene los estados de cancelacion con el id 3\n * @param fn Funcion CallBack @see ReasonStateSchedulingDto[]\n */\n public getscheduleStates(fn: (response: ReasonStateSchedulingDto[]) => void) {\n this.detailReasonStateSchedulingApiService.GetByIdReasonStateScheduling({ idReasonStateScheduling: 3 })\n .pipe(takeUntil(this.destroy$))\n .subscribe((response) => {\n fn(response);\n });\n }\n /**\n * Metodo que obtiene del estado los agendamientos\n * @param fn Funcion CallBack @see ScheduleDto\n */\n public getSchedulesSt(fn: (response: ScheduleDto) => void) {\n this.subscription.add(this.state.scheduleId$\n .pipe(takeUntil(this.destroy$))\n .subscribe((response) => {\n fn(response);\n }));\n }\n\n public setDetailReasonStateScheduling(data: ReasonStateSchedulingDto[]) {\n this.state.setDetailReasonStateScheduling(data);\n }\n /**\n * Almacena en el estado el payload de la interaction\n * @param payload recibe un modelo PayloadScheduling\n */\n public setPayload(payload: PayloadScheduling) {\n this.state.setPayload(payload);\n this.state.setModifyPayload(payload);\n }\n}\n","import { Component } from '@angular/core';\nimport { ConfigModalsAssignmentValidation } from '../../dialogs/custom-modal/config/assignment/config-modals-validation';\nimport { CustomModalComponent } from '../../dialogs/custom-modal/custom-modal.component';\nimport { MatDialog } from '@angular/material/dialog';\n\n/**\n * Componente encargado de administrar el footer de la pagina\n */\n@Component({\n selector: 'prv-footer',\n templateUrl: './footer.component.html',\n styleUrls: ['./footer.component.scss'],\n})\nexport class FooterComponent {\n /**\n * It is invoked only once when the directive is instantiated.\n */\n /**\n * Permite desplegar un modal\n */\n private readonly dialog: MatDialog;\n /**\n * Atributo encargado de obtener la configuración del contenido de la ventana modal\n */\n public configModalsAssignmentValidation: ConfigModalsAssignmentValidation;\n\n public constructor(dialog: MatDialog) {\n this.dialog = dialog;\n this.configModalsAssignmentValidation = new ConfigModalsAssignmentValidation();\n }\n\n public openDataModal() {\n this.dialog.open(CustomModalComponent, {\n data: this.configModalsAssignmentValidation.modalDataConsumer(),\n width: '720px',\n height: '400px',\n panelClass: 'dialog-container',\n autoFocus: false,\n restoreFocus: false,\n disableClose: true,\n });\n }\n}\n","
\n\n
\n
\n Cuentas con un Defensor del Consumidor Financiero, Dra. Ana María Giraldo Rincón, quien dará trámite a tu\n queja de forma objetiva y gratuita. Ver toda la información.\n
\n
\n \n
\n
\n Te recomendamos usar los siguientes navegadores para que tu experiencia con este servicio sea óptima\n
\n
\n
\n \n
Edge
\n
\n
\n \n
50+
\n
\n
\n \n
50+
\n
\n
\n \n
50+
\n
\n
\n
\n \n
\n \n
\n
\n","import { Component, Input, OnInit } from '@angular/core';\nimport { Router } from '@angular/router';\n\n/**\n * Componenten encargado de administrar el header de la pagina\n */\n@Component({\n selector: 'prv-header',\n templateUrl: './header.component.html',\n styleUrls: ['./header.component.scss'],\n})\nexport class HeaderComponent implements OnInit {\n /**\n * Estado en el Tipo de Header\n */\n @Input() public typeHeader: string | undefined;\n\n /**\n * Estado en el Tipo de Header\n */\n public fullName: string | undefined;\n\n /**\n * Provides access to information about a route associated with a component that is loaded in an outlet.\n */\n private readonly router: Router;\n\n /**\n * almacena la ip address\n */\n public ipAddress: string | undefined;\n\n /**\n * Es la varibles que recibira el header para que sea dinamico\n */\n public ngOnInit(): void {\n this.ipAddress = localStorage.getItem('ip')?.replace(/['\"]+/g, '') || ' ';\n this.fullName = localStorage.getItem('clientName')?.trim().replace(/['\"]+/g, '') || ' ';\n }\n /**\n * Crea una nueva instancia de VerifyDataComponent\n */\n public constructor(router: Router) {\n this.router = router;\n }\n /**\n * Refrescar pagina web\n */\n public refresh(): void {\n this.router.navigate(['/']).then(() => {\n window.location.reload();\n });\n }\n}\n","
\n
\n
\n
\n \n
\n
\n Agenda tu cita con nosotros\n
\n
#AvancemosJuntos
\n
\n
\n
\n \n
\n
\n\n
\n
\n
\n \n
\n
\n
Agenda tu cita con nosotros
\n
#AvancemosJuntos
\n
\n
\n \n
\n
\n \n
\n
\n
\n
\n
{{ fullName }} | IP : {{ ipAddress }}
\n
\n\n","import { CustomModalModel } from '../../models/custom-modal.model';\n\n/**\n * Componentes modales para el modulo de asignación de citas validacionces\n */\nexport class ConfigModalsAssignmentValidation {\n /**\n * Configuración del modal\n */\n private readonly configDialog: CustomModalModel = {};\n /**\n * Metodo encargado de crear un componente modal\n */\n public modalBrowserOpera(): CustomModalModel {\n this.configDialog.closeCornerButton = false;\n this.configDialog.closeCornerButtonPosAxisXl = ' 679px';\n this.configDialog.closeCornerButtonPosCrossXl = '-45px';\n this.configDialog.closeCornerButtonPosAxisLg = '679px';\n this.configDialog.closeCornerButtonPosCrossLg = '-45px';\n this.configDialog.closeCornerButtonPosAxisMd = '76%';\n this.configDialog.closeCornerButtonPosCrossMd = '-45px';\n this.configDialog.closeCornerButtonPosAxisSm = '74%';\n this.configDialog.closeCornerButtonPosCrossSm = '-45px';\n this.configDialog.closeCornerButtonPosAxisXs = '73%';\n this.configDialog.closeCornerButtonPosCrossXs = '-45px';\n this.configDialog.closeCornerButtonPosAxisXss = '72%';\n this.configDialog.closeCornerButtonPosCrossXss = '-45px';\n this.configDialog.textContentModal =\n '
Apreciado afiliado, actualmente estamos trabajando para ofrecerte un mejor servicio desde tu celular iOS y computador MAC, por ahora, te invitamos a agendar tus citas a través de otros dispositivos.
Ahora podrás acceder a nuestra Doble Asesoría de inmediato a través de nuestra Línea de Servicio. Solo necesitas contar con 30 minutos y estarás listo para recibirla. ¡Contáctanos ahora mismo en:
Con la reforma pensional identificamos que haces parte de la población de Nueva Ley, por lo que no debe preocuparte toda vez que tu ahorro se mantendrá en Porvenir, si tienes inquietudes sobre la reforma pensional, te invitamos a visitar nuestra página web www.porvenir.com.co
Debes tomar tu Doble Asesoría de forma Inmediata a través de nuestra línea de servicio: Bogotá: 601 744 7678 Cali: 602 485 72 72 Barranquilla: 605 385 51 51 Medellín: 604 604 15 55 Resto de Colombia: 01 8000 510 800 Resto de Colombia desde celular #857 Solo necesitas contar con 30 minutos y estarás listo para recibirla. ¡Contáctanos ahora mismo!
Para modificar tu cita y agendar tu Doble Asesoría, por favor comunícate con nuestra Línea de Servicio. •\tBogotá: 601 7425454 • Cali: 602 4857171 •\tBarranquilla: 605 3856363 •\tMedellín: 604 6043222 •\tResto de Colombia: 018000518440
Por favor valide la identificación registrada e ingrese con los datos del afiliado. ' +\n 'Si su documento esta correcto y usted se encuentra vinculado con Porvenir por favor contáctese con nuestra Línea de servicio al cliente
Señor afiliado: Si deseas consultar o gestionar tu cita te invitamos a contactar a uno de nuestros asesores a través de la línea de servicio al cliente:
Actualmente no te encuentras vinculado con Porvenir al producto de Pensiones Obligatorias, verifica tu información.
';\n }\n\n this.configDialog.closeCornerButton = true;\n this.configDialog.closeCornerButtonPosAxisXl = '679px';\n this.configDialog.closeCornerButtonPosCrossXl = '-45px';\n this.configDialog.closeCornerButtonPosAxisLg = '679px';\n this.configDialog.closeCornerButtonPosCrossLg = '-45px';\n this.configDialog.closeCornerButtonPosAxisMd = '76%';\n this.configDialog.closeCornerButtonPosCrossMd = '-45px';\n this.configDialog.closeCornerButtonPosAxisSm = '74%';\n this.configDialog.closeCornerButtonPosCrossSm = '-45px';\n this.configDialog.closeCornerButtonPosAxisXs = '73%';\n this.configDialog.closeCornerButtonPosCrossXs = '-45px';\n this.configDialog.closeCornerButtonPosAxisXss = '72%';\n this.configDialog.closeCornerButtonPosCrossXss = '-45px';\n this.configDialog.textContentModal = messageModal;\n this.configDialog.sizeTextContentModalXl = '24px';\n this.configDialog.sizeTextContentModalLg = '24px';\n this.configDialog.sizeTextContentModalMd = '24px';\n this.configDialog.sizeTextContentModalSm = '22px';\n this.configDialog.sizeTextContentModalXs = '22px';\n this.configDialog.sizeTextContentModalXss = '20px';\n this.configDialog.topTextContentGapValue = '2%';\n this.configDialog.bottomTextContentGapValue = '1%';\n this.configDialog.typeContentModal = 'text';\n this.configDialog.typeTemplate = 'cancel';\n this.configDialog.contentImage = true;\n this.configDialog.locationImage = 'bottom';\n this.configDialog.image = 'warning.png';\n this.configDialog.widthImageXl = '91px';\n this.configDialog.widthImageLg = '91px';\n this.configDialog.widthImageMd = '91px';\n this.configDialog.widthImageSm = '91px';\n this.configDialog.widthImageXs = '91px';\n this.configDialog.widthImageXss = '91px';\n this.configDialog.heightImageXl = '91px';\n this.configDialog.heightImageLg = '91px';\n this.configDialog.heightImageMd = '91px';\n this.configDialog.heightImageSm = '91px';\n this.configDialog.heightImageXs = '91px';\n this.configDialog.heightImageXss = '91px';\n this.configDialog.topImageGapValue = '20px';\n this.configDialog.bottomImageGapValue = '50px';\n this.configDialog.buttonNext = true;\n this.configDialog.caseButtonNext = 'Default';\n this.configDialog.textNextButton = 'Aceptar';\n this.configDialog.buttonNextWidthXl = '158px';\n this.configDialog.buttonNextWidthLg = '158px';\n this.configDialog.buttonNextWidthMd = '158px';\n this.configDialog.buttonNextWidthSm = '158px';\n this.configDialog.buttonNextWidthXs = '158px';\n this.configDialog.buttonNextWidthXss = '158px';\n\n return this.configDialog;\n }\n\n /**\n * Metodo encargado de crear un componente modal para redireccionar a los no clientes\n * viables a la linea de atención al cliente\n * @param message Mensaje personalizado @see string\n */\n public modalLineAttentionDA(message: string | undefined): CustomModalModel {\n let messageModal = message;\n\n // Valida si el mensaje no es undefinied y settea uno por defecto\n if (!messageModal) {\n messageModal = `
Ahora podrás acceder a nuestra Doble Asesoría de inmediato a través de nuestra Línea de Servicio: Bogotá: 601 744 7678 Cali: 602 485 72 72 Barranquilla: 605 385 51 51 Medellín: 604 604 15 55 Resto de Colombia: 01 8000 510 800 Resto de Colombia desde celular #857 Solo necesitas contar con 30 minutos y estarás listo para recibirla. ¡Contáctanos ahora mismo!
`;\n }\n\n this.configDialog.closeCornerButton = true;\n this.configDialog.closeCornerButtonPosAxisXl = '679px';\n this.configDialog.closeCornerButtonPosCrossXl = '-45px';\n this.configDialog.closeCornerButtonPosAxisLg = '679px';\n this.configDialog.closeCornerButtonPosCrossLg = '-45px';\n this.configDialog.closeCornerButtonPosAxisMd = '76%';\n this.configDialog.closeCornerButtonPosCrossMd = '-45px';\n this.configDialog.closeCornerButtonPosAxisSm = '74%';\n this.configDialog.closeCornerButtonPosCrossSm = '-45px';\n this.configDialog.closeCornerButtonPosAxisXs = '73%';\n this.configDialog.closeCornerButtonPosCrossXs = '-45px';\n this.configDialog.closeCornerButtonPosAxisXss = '72%';\n this.configDialog.closeCornerButtonPosCrossXss = '-45px';\n this.configDialog.textContentModal = messageModal;\n this.configDialog.sizeTextContentModalXl = '24px';\n this.configDialog.sizeTextContentModalLg = '24px';\n this.configDialog.sizeTextContentModalMd = '24px';\n this.configDialog.sizeTextContentModalSm = '22px';\n this.configDialog.sizeTextContentModalXs = '22px';\n this.configDialog.sizeTextContentModalXss = '20px';\n this.configDialog.topTextContentGapValue = '2%';\n this.configDialog.bottomTextContentGapValue = '1%';\n this.configDialog.typeContentModal = 'text';\n this.configDialog.typeTemplate = 'cancel';\n this.configDialog.contentImage = false;\n this.configDialog.locationImage = 'bottom';\n this.configDialog.image = 'warning.png';\n this.configDialog.widthImageXl = '91px';\n this.configDialog.widthImageLg = '91px';\n this.configDialog.widthImageMd = '91px';\n this.configDialog.widthImageSm = '91px';\n this.configDialog.widthImageXs = '91px';\n this.configDialog.widthImageXss = '91px';\n this.configDialog.heightImageXl = '91px';\n this.configDialog.heightImageLg = '91px';\n this.configDialog.heightImageMd = '91px';\n this.configDialog.heightImageSm = '91px';\n this.configDialog.heightImageXs = '91px';\n this.configDialog.heightImageXss = '91px';\n this.configDialog.topImageGapValue = '20px';\n this.configDialog.bottomImageGapValue = '50px';\n this.configDialog.buttonNext = true;\n this.configDialog.caseButtonNext = !messageModal ? 'Default' : 'Micrositio';\n this.configDialog.textNextButton = 'Aceptar';\n this.configDialog.buttonNextWidthXl = '158px';\n this.configDialog.buttonNextWidthLg = '158px';\n this.configDialog.buttonNextWidthMd = '158px';\n this.configDialog.buttonNextWidthSm = '158px';\n this.configDialog.buttonNextWidthXs = '158px';\n this.configDialog.buttonNextWidthXss = '158px';\n\n return this.configDialog;\n }\n}\n","import { Location } from '@angular/common';\nimport { Component, Inject, OnInit } from '@angular/core';\nimport { UntypedFormBuilder, UntypedFormGroup, Validators } from '@angular/forms';\nimport { MatDialog, MAT_DIALOG_DATA } from '@angular/material/dialog';\nimport { Router } from '@angular/router';\nimport { DetailReasonStateSchedulingDto } from '@prv/scheduling-state';\nimport { NgxSpinnerService } from 'ngx-spinner';\nimport { Observable } from 'rxjs';\n\nimport { ValidatorMessageService } from '../../../core/services/validator-message/validator-message.service';\nimport { ITypeMessage } from '../../models/type-message.model';\nimport { CustomModalFacade } from '../facade/custom-modal.facade';\n\nimport { ConfigModalsModifyCancel } from './config/modify-cancel/config-modals-modify-cancel';\nimport { CustomModalModel } from './models/custom-modal.model';\nimport { environment } from 'apps/website/src/environments/environment';\n\n/**\n * Componente de ventanas modales personalizadas\n */\n@Component({\n selector: 'prv-custom-modal',\n templateUrl: './custom-modal.component.html',\n styleUrls: ['./custom-modal.component.scss'],\n})\nexport class CustomModalComponent implements OnInit {\n /**\n * Configuración interna de la ventana modal\n */\n @Inject(MAT_DIALOG_DATA) public config: CustomModalModel;\n /**\n * Servicio pantalla carga\n */\n private readonly spinner: NgxSpinnerService;\n /**\n * Control de paginación\n */\n private readonly location: Location;\n /**\n * Capa intermedia que centraliza la logica del agente\n */\n private readonly facade: CustomModalFacade;\n /**\n * Provides access to information about a route associated with a component that is loaded in an outlet.\n */\n private readonly router: Router;\n /**\n * Observable con información de los Estados\n */\n public readonly detailReasonStateScheduling$: Observable;\n\n /**\n * Atributo encargado de obtener la configuración del contenido de la ventana modal\n */\n public configModalsModifyCancel: ConfigModalsModifyCancel;\n /**\n * Permite desplegar un modal\n */\n public dialog: MatDialog;\n /**\n * Formulario de Validación\n */\n public form: UntypedFormGroup;\n /**\n * listado de mensajes de error\n */\n public typeMessages: ITypeMessage[];\n\n /**\n * Crea una nueva instancia del componente\n * @param config Configuración interna de la ventana modal\n */\n public constructor(\n @Inject(MAT_DIALOG_DATA) config: CustomModalModel,\n spinner: NgxSpinnerService,\n location: Location,\n builder: UntypedFormBuilder,\n dialog: MatDialog,\n router: Router,\n facade: CustomModalFacade,\n typeMessages: ValidatorMessageService,\n ) {\n this.spinner = spinner;\n this.config = config;\n this.form = builder.group({\n optionCancel: ['', Validators.required],\n });\n this.location = location;\n this.dialog = dialog;\n this.router = router;\n this.configModalsModifyCancel = new ConfigModalsModifyCancel();\n this.facade = facade;\n this.detailReasonStateScheduling$ = this.facade.detailReasonStateScheduling$();\n this.typeMessages = typeMessages.typeMessage;\n }\n\n /**\n * Inicializador del componente\n */\n public ngOnInit(): void {\n this.loadConfigurationScssPropertiesTitle();\n this.loadConfigurationScssPropertiesImage();\n this.loadConfigurationScssPropertiesTextContent();\n this.loadConfigurationScssPropertiesButtonClose();\n this.loadConfigurationScssPropertiesButtons();\n }\n /**\n * Metodo que captura los eventos de click de boton en los modal\n * @param option Opcion del tipo de boton @see string\n * @returns Retorna indicador de bandera del resultado final @see boolean\n */\n public onSubmit(option: string | undefined = '') {\n this.spinner.show();\n switch (option) {\n case 'Cancelar':\n if (this.form.invalid) {\n this.openModalCancel();\n\n return false;\n }\n const data = this.form.value;\n const optionCancel = data.optionCancel.name;\n localStorage.setItem('OptionCancel', JSON.stringify(optionCancel));\n this.facade.cancelShedule(() => {\n this.facade.setWsinteraction();\n this.spinner.hide();\n this.openModalCancelApproved();\n this.router.navigate(['/']);\n });\n break;\n case 'Modificar':\n const datos = this.parseJson(localStorage.getItem('Datos') || '');\n localStorage.setItem('idSchedule', datos.id);\n this.spinner.hide();\n this.router.navigate(['/assignment-module', 'typology-modify']);\n break;\n case 'Volver':\n this.spinner.hide();\n this.location.back();\n break;\n case 'Salir':\n this.spinner.hide();\n this.router.navigate(['/']).then(() => {\n window.location.reload();\n });\n break;\n case 'Micrositio':\n this.router.navigate(['/']).then(() => {\n window.open(environment.urlMicrositeReform, '_blank');\n this.spinner.hide();\n });\n break;\n default:\n this.spinner.hide();\n }\n }\n /**\n * Función encargada de cargar la configuración de las propiedades Scss del titulo de las ventanas modal\n */\n private loadConfigurationScssPropertiesTitle() {\n document.documentElement.style.setProperty('--size-titleModalXl', this.config.sizeTitleModalXl || null);\n document.documentElement.style.setProperty('--size-titleModalLg', this.config.sizeTitleModalLg || null);\n document.documentElement.style.setProperty('--size-titleModalMd', this.config.sizeTitleModalMd || null);\n document.documentElement.style.setProperty('--size-titleModalSm', this.config.sizeTitleModalSm || null);\n document.documentElement.style.setProperty('--size-titleModalXs', this.config.sizeTitleModalXs || null);\n document.documentElement.style.setProperty('--size-titleModalXss', this.config.sizeTitleModalXss || null);\n document.documentElement.style.setProperty('--top-titleGapValue', this.config.topTitleGapValue || null);\n document.documentElement.style.setProperty('--bottom-titleGapValue', this.config.bottomTitleGapValue || null);\n }\n\n /**\n * Función encargada de cargar la configuración de las propiedades Scss del texto de contenido de las ventanas modal\n */\n private loadConfigurationScssPropertiesTextContent() {\n document.documentElement.style.setProperty('--size-textContentModalXl', this.config.sizeTextContentModalXl || null);\n document.documentElement.style.setProperty('--size-textContentModalLg', this.config.sizeTextContentModalLg || null);\n document.documentElement.style.setProperty('--size-textContentModalMd', this.config.sizeTextContentModalMd || null);\n document.documentElement.style.setProperty('--size-textContentModalSm', this.config.sizeTextContentModalSm || null);\n document.documentElement.style.setProperty('--size-textContentModalXs', this.config.sizeTextContentModalXs || null);\n document.documentElement.style.setProperty(\n '--size-textContentModalXss',\n this.config.sizeTextContentModalXss || null,\n );\n document.documentElement.style.setProperty('--top-textContentGapValue', this.config.topTextContentGapValue || null);\n document.documentElement.style.setProperty(\n '--bottom-textContentGapValue',\n this.config.bottomTextContentGapValue || null,\n );\n }\n\n /**\n * Función encargada de cargar la configuración de las propiedades Scss de la imagen de contenido de las ventanas modal\n */\n private loadConfigurationScssPropertiesImage() {\n document.documentElement.style.setProperty('--width-imageXl', this.config.widthImageXl || null);\n document.documentElement.style.setProperty('--width-imageLg', this.config.widthImageLg || null);\n document.documentElement.style.setProperty('--width-imageMd', this.config.widthImageMd || null);\n document.documentElement.style.setProperty('--width-imageSm', this.config.widthImageSm || null);\n document.documentElement.style.setProperty('--width-imageXs', this.config.widthImageXs || null);\n document.documentElement.style.setProperty('--width-imageXss', this.config.widthImageXss || null);\n document.documentElement.style.setProperty('--height-imageXl', this.config.heightImageXl || null);\n document.documentElement.style.setProperty('--height-imageLg', this.config.heightImageLg || null);\n document.documentElement.style.setProperty('--height-imageMd', this.config.heightImageMd || null);\n document.documentElement.style.setProperty('--height-imageSm', this.config.heightImageSm || null);\n document.documentElement.style.setProperty('--height-imageXs', this.config.heightImageXs || null);\n document.documentElement.style.setProperty('--height-imageXss', this.config.heightImageXss || null);\n document.documentElement.style.setProperty('--top-imageGapValue', this.config.topImageGapValue || null);\n document.documentElement.style.setProperty('--bottom-imageGapValue', this.config.bottomImageGapValue || null);\n }\n\n /**\n * Función encargada de cargar la configuración de las propiedades Scss del botón de cerrar de las ventanas modal\n */\n private loadConfigurationScssPropertiesButtonClose() {\n document.documentElement.style.setProperty(\n '--buttonClose-PosAxisXl',\n this.config.closeCornerButtonPosAxisXl || null,\n );\n document.documentElement.style.setProperty(\n '--buttonClose-PosAxisLg',\n this.config.closeCornerButtonPosAxisLg || null,\n );\n document.documentElement.style.setProperty(\n '--buttonClose-PosAxisMd',\n this.config.closeCornerButtonPosAxisMd || null,\n );\n document.documentElement.style.setProperty(\n '--buttonClose-PosAxisSm',\n this.config.closeCornerButtonPosAxisSm || null,\n );\n document.documentElement.style.setProperty(\n '--buttonClose-PosAxisXs',\n this.config.closeCornerButtonPosAxisXs || null,\n );\n document.documentElement.style.setProperty(\n '--buttonClose-PosAxisXss',\n this.config.closeCornerButtonPosAxisXss || null,\n );\n document.documentElement.style.setProperty(\n '--buttonClose-PosCrossXl',\n this.config.closeCornerButtonPosCrossXl || null,\n );\n document.documentElement.style.setProperty(\n '--buttonClose-PosCrossLg',\n this.config.closeCornerButtonPosCrossLg || null,\n );\n document.documentElement.style.setProperty(\n '--buttonClose-PosCrossMd',\n this.config.closeCornerButtonPosCrossMd || null,\n );\n document.documentElement.style.setProperty(\n '--buttonClose-PosCrossSm',\n this.config.closeCornerButtonPosCrossSm || null,\n );\n document.documentElement.style.setProperty(\n '--buttonClose-PosCrossXs',\n this.config.closeCornerButtonPosCrossXs || null,\n );\n document.documentElement.style.setProperty(\n '--buttonClose-PosCrossXss',\n this.config.closeCornerButtonPosCrossXss || null,\n );\n }\n\n /**\n * Función encargada de cargar la configuración de las propiedades Scss de alineación de los botones en el modal\n */\n private loadConfigurationScssPropertiesButtons(): void {\n document.documentElement.style.setProperty('--top-buttonsGapValue', this.config.topButtonsGapValue || null);\n document.documentElement.style.setProperty('--bottom-buttonsGapValue', this.config.bottomButtonsGapValue || null);\n document.documentElement.style.setProperty('--buttons-betweenGap', this.config.buttonsBetweenGap || null);\n document.documentElement.style.setProperty('--buttonNext-WidthXl', this.config.buttonNextWidthXl || null);\n document.documentElement.style.setProperty('--buttonNext-WidthLg', this.config.buttonNextWidthLg || null);\n document.documentElement.style.setProperty('--buttonNext-WidthMd', this.config.buttonNextWidthMd || null);\n document.documentElement.style.setProperty('--buttonNext-WidthSm', this.config.buttonNextWidthSm || null);\n document.documentElement.style.setProperty('--buttonNext-WidthXs', this.config.buttonNextWidthXs || null);\n document.documentElement.style.setProperty('--buttonNext-WidthXss', this.config.buttonNextWidthXss || null);\n document.documentElement.style.setProperty('--buttonNext-HeightXl', this.config.buttonNextHeightXl || null);\n document.documentElement.style.setProperty('--buttonNext-HeightLg', this.config.buttonNextHeightLg || null);\n document.documentElement.style.setProperty('--buttonNext-HeightMd', this.config.buttonNextHeightMd || null);\n document.documentElement.style.setProperty('--buttonNext-HeightSm', this.config.buttonNextHeightSm || null);\n document.documentElement.style.setProperty('--buttonNext-HeightXs', this.config.buttonNextHeightXs || null);\n document.documentElement.style.setProperty('--buttonNext-HeightXss', this.config.buttonNextHeightXss || null);\n }\n /**\n * Metodo que muestra el modal de dialogo para confirmar la cancelación del agendamiento\n */\n public openModalCancelApproved() {\n this.dialog.open(CustomModalComponent, {\n data: this.configModalsModifyCancel.modalCancelApproved(),\n width: '720px',\n height: '326px',\n panelClass: 'dialog-container',\n autoFocus: false,\n restoreFocus: false,\n disableClose: true,\n });\n }\n /**\n * Metodo que muestra el modal de dialogo para cancelar la cancelación del agendamiento\n */\n public openModalCancel() {\n this.dialog.open(CustomModalComponent, {\n data: this.configModalsModifyCancel.modalCancel(),\n width: '720px',\n height: '355px',\n panelClass: 'dialog-container',\n autoFocus: false,\n restoreFocus: false,\n disableClose: true,\n });\n }\n /**\n * Convierte string a json\n * @param data cadena a separar @see string\n */\n public parseJson(data: string) {\n return JSON.parse(data);\n }\n\n /**\n * Metodo que gestiona las acciones para el botón de cerrar\n */\n public onSubmitClose(option: string | undefined = '') {\n this.spinner.show()\n if (option === 'Root') this.router.navigate(['/']);\n this.spinner.hide();\n }\n}\n","\n
\n \n
\n\n
\n
\n
{{ config.titleModal }}
\n
\n
\n
\n \n
\n
\n \n
\n
\n \n
\n
\n
\n\n
\n \n \n
\n\n\n\n
\n
\n \n
\n
\n \n
\n
\n\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { FlexLayoutModule } from '@angular/flex-layout';\nimport { ReactiveFormsModule } from '@angular/forms';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatDialogModule } from '@angular/material/dialog';\nimport { BrowserModule } from '@angular/platform-browser';\nimport { InteractionApiService } from '@prv/interaction';\n\nimport { AppRoutingModule } from '../../app-routing.module';\nimport { ModifyCancelFacade } from '../../modules/modify-cancel/facades/modify-cancel.facade';\nimport { EncryptService } from '../services/encrypt/encrypt.service';\n\nimport { CustomModalComponent } from './custom-modal/custom-modal.component';\n\n/**\n * Modulo para los modals\n */\n@NgModule({\n declarations: [CustomModalComponent],\n imports: [\n CommonModule,\n FlexLayoutModule,\n MatButtonModule,\n MatDialogModule,\n AppRoutingModule,\n BrowserModule,\n ReactiveFormsModule,\n ],\n providers: [ModifyCancelFacade, InteractionApiService, EncryptService],\n})\nexport class DialogModule {}\n","import { Injectable, OnDestroy } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { InteractionApiService, InteractionDto } from '@prv/interaction';\nimport { DataExternalDto } from '@prv/interaction/lib/models/data-external.dto';\nimport { ScheduleDto } from '@prv/schedule-history';\nimport { DetailReasonStateSchedulingDto } from '@prv/scheduling-state';\nimport { CcmApiService, SmsRequestDto } from '@prv/ws-ccm';\nimport { InteractionCrmApiService, RequestDto } from '@prv/ws-interaction';\nimport * as moment from 'moment';\nimport { Observable, Subject, Subscription } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\n\nimport { AppModuleState } from '../../../app.state';\nimport { EncryptService } from '../../services/encrypt/encrypt.service';\nimport { TypeInteraction } from '../../models/enum-type-interaction/type-interaction.enum';\n\n/**\n * Capa intermedia que centraliza la logica del modulo de consulta\n */\n@Injectable()\nexport class CustomModalFacade implements OnDestroy {\n /**\n * State de schedule\n */\n private readonly state: AppModuleState;\n /**\n * Llamada al interactionApiService\n */\n private readonly interactionApiService: InteractionApiService;\n /**\n * Llamada al interactionApiService\n */\n private readonly interactionCrmApiService: InteractionCrmApiService;\n /**\n * Servicio encargado de interactuar con el microservicio de interaccion\n */\n private readonly ccmApiService: CcmApiService;\n /**\n * Servicio encargado de interactuar con el servicio de encriptacion\n */\n private readonly encryptService: EncryptService;\n /**\n * Provides access to information about a route associated with a component that is loaded in an outlet.\n */\n private readonly router: Router;\n /**\n * cancelar suscripciones\n */\n private readonly subscription: Subscription;\n /**\n * Observable encargado de eliminar los diferentes sucriptores\n */\n public destroy$ = new Subject();\n /**\n * Almacenar el observable\n */\n public datos: any;\n /**\n * Almacenar la Opcion de cancelacion\n */\n public optionCancel: string;\n /**\n * Observable de schedules\n */\n public readonly detailReasonStateScheduling$ = (): Observable =>\n this.state.detailReasonStateScheduling$\n\n /**\n * Observable de schedules\n */\n public readonly schedule$ = (): Observable => this.state.scheduleId$;\n\n /**\n * Crea una nueva instancia de SearchFacade\n */\n public constructor(\n state: AppModuleState,\n interactionApiService: InteractionApiService,\n interactionCrmApiService: InteractionCrmApiService,\n ccmApiService: CcmApiService,\n router: Router,\n encryptService: EncryptService,\n ) {\n this.state = state;\n this.interactionApiService = interactionApiService;\n this.interactionCrmApiService = interactionCrmApiService;\n this.ccmApiService = ccmApiService;\n this.router = router;\n this.encryptService = encryptService;\n this.subscription = new Subscription();\n this.datos = {};\n this.optionCancel = '';\n }\n /**\n * A callback method that performs custom clean-up, invoked immediately\n * before a directive, pipe, or service instance is destroyed.\n */\n public ngOnDestroy(): void {\n this.destroySubscription();\n setTimeout(() => {\n this.destroy$.next();\n this.destroy$.complete();\n }, 3000);\n }\n /**\n * Metodo encargado de desuscribir los observables de la facade\n */\n public destroySubscription(): void {\n this.subscription.unsubscribe();\n }\n /**\n * Metodo encargado de enviar de enviar la interacion y cancelar el agendamiento\n */\n public cancelShedule(fn: () => void) {\n this.optionCancel = localStorage.getItem('OptionCancel') || '';\n this.datos = this.parseJson(localStorage.getItem('Datos') || '');\n localStorage.removeItem('OptionCancel');\n localStorage.removeItem('Datos');\n\n const payloadInteraction = {\n id: this.datos.id,\n ipPc: localStorage.getItem('ip')?.replace(/['\"]+/g, '') || '',\n isValid: true,\n isSubscribed: true,\n dateCall: new Date(),\n dateScheduling: this.datos.dateScheduling,\n timeScheduling: this.datos.dateScheduling,\n\n typify: {\n id: this.parseJson(this.datos.payload).typify.id,\n idHomolog: this.parseJson(this.datos.payload).typify.idHomolog,\n guid: this.parseJson(this.datos.payload).typify.guid,\n name: this.parseJson(this.datos.payload).typify.name,\n colorHexadecimal: this.parseJson(this.datos.payload).typify.colorHexadecimal,\n maxTimeMinutes: this.parseJson(this.datos.payload).typify.maxTimeMinutes,\n isValid: this.parseJson(this.datos.payload).typify.isValid,\n structure: this.parseJson(this.datos.payload).typify.structure,\n metadata: this.parseJson(this.datos.payload).typify.metadata,\n },\n cancelation: {\n nameDetailReasonByAfiliado: this.optionCancel,\n },\n contact: {\n isComplete: this.parseJson(this.datos.payload).contact.isComplete,\n disabledFields: this.parseJson(this.datos.payload).contact.disabledFields,\n hideFields: this.parseJson(this.datos.payload).contact.hideFields,\n id: this.parseJson(this.datos.payload).contact.id,\n idTypeDocument: this.parseJson(this.datos.payload).contact.idTypeDocument,\n numberDocument: this.parseJson(this.datos.payload).contact.numberDocument,\n firstNames: this.parseJson(this.datos.payload).contact.firstNames,\n lastNames: this.parseJson(this.datos.payload).contact.lastNames,\n fullName: this.parseJson(this.datos.payload).contact.fullName,\n idGender: this.parseJson(this.datos.payload).contact.idGender,\n gender: this.parseJson(this.datos.payload).contact.gender,\n birthDate: this.parseJson(this.datos.payload).contact.birthDate,\n cellPhones: this.parseJson(this.datos.payload).contact.cellPhones,\n localPhones: this.parseJson(this.datos.payload).contact.localPhones,\n emails: this.parseJson(this.datos.payload).contact.emails,\n address: this.parseJson(this.datos.payload).contact.address,\n habeasData: true,\n typeDocument: this.parseJson(this.datos.payload).contact.typeDocument,\n typeContact: this.parseJson(this.datos.payload).contact.typeContact,\n additionalInformation: this.parseJson(this.datos.payload).contact.additionalInformation,\n city: this.parseJson(this.datos.payload).contact.city,\n },\n assitent: {\n isComplete: this.parseJson(this.datos.payload).assitent.isComplete,\n disabledFields: this.parseJson(this.datos.payload).assitent.disabledFields,\n hideFields: this.parseJson(this.datos.payload).assitent.hideFields,\n id: this.parseJson(this.datos.payload).assitent.id,\n idTypeDocument: this.parseJson(this.datos.payload).assitent.idTypeDocument,\n numberDocument: this.parseJson(this.datos.payload).assitent.numberDocument,\n firstNames: this.parseJson(this.datos.payload).assitent.firstNames,\n lastNames: this.parseJson(this.datos.payload).assitent.lastNames,\n fullName: this.parseJson(this.datos.payload).assitent.fullName,\n idGender: this.parseJson(this.datos.payload).assitent.idGender,\n gender: this.parseJson(this.datos.payload).assitent.gender,\n birthDate: this.parseJson(this.datos.payload).assitent.birthDate,\n cellPhones: this.parseJson(this.datos.payload).assitent.cellPhones,\n localPhones: this.parseJson(this.datos.payload).assitent.localPhones,\n emails: this.parseJson(this.datos.payload).assitent.emails,\n address: this.parseJson(this.datos.payload).assitent.address,\n habeasData: true,\n typeDocument: this.parseJson(this.datos.payload).assitent.typeDocument,\n typeContact: this.parseJson(this.datos.payload).assitent.typeContact,\n additionalInformation: this.parseJson(this.datos.payload).assitent.additionalInformation,\n },\n stateScheduling: {\n id: 3,\n name: 'Cancelado',\n },\n channel: {\n id: this.parseJson(this.datos.payload).channel.id,\n name: this.parseJson(this.datos.payload).channel.name,\n },\n office: {\n id: this.parseJson(this.datos.payload).office.id,\n name: this.parseJson(this.datos.payload).office.name,\n typeOffice: this.parseJson(this.datos.payload).office.typeOffice,\n },\n userCreator: {\n id: this.parseJson(this.datos.payload).userCreator.id,\n userName: this.parseJson(this.datos.payload).userCreator.userName,\n idServant: this.parseJson(this.datos.payload).userCreator.idServant,\n idPosition: this.parseJson(this.datos.payload).userGestorAssigned.idPosition,\n position: this.parseJson(this.datos.payload).userCreator.position,\n fullName: this.parseJson(this.datos.payload).userCreator.fullName,\n token: this.parseJson(this.datos.payload).userCreator.token,\n office: this.parseJson(this.datos.payload).userCreator.office,\n },\n userGestorAssigned: {\n id: this.parseJson(this.datos.payload).userGestorAssigned.id,\n userName: this.parseJson(this.datos.payload).userGestorAssigned.userName,\n idServant: this.parseJson(this.datos.payload).userGestorAssigned.idServant,\n idPosition: this.parseJson(this.datos.payload).userGestorAssigned.idPosition,\n position: this.parseJson(this.datos.payload).userGestorAssigned.position,\n fullName: this.parseJson(this.datos.payload).userGestorAssigned.fullName,\n token: this.parseJson(this.datos.payload).userGestorAssigned.token,\n office: this.parseJson(this.datos.payload).userGestorAssigned.office,\n },\n };\n\n const interactionDto: InteractionDto = {\n idChannel: 1,\n idContact: 0,\n idSequence: 2,\n ipPc: localStorage.getItem('ip')?.replace(/['\"]+/g, '') || '',\n version: '1.0',\n payload: `{\"payload\": ${JSON.stringify(payloadInteraction)}, \"version\": \"1.0\"}`,\n startDate: new Date(),\n endDate: new Date(),\n state: true,\n idUserCreator: 0,\n dateCreated: new Date(),\n };\n\n const dataSerialized = JSON.stringify(interactionDto);\n const dataEncrypted = { data: this.encryptService.toEncrypt(dataSerialized) } as DataExternalDto;\n this.interactionApiService.postExternal(dataEncrypted)\n .pipe(takeUntil(this.destroy$))\n .subscribe(() => {\n fn();\n });\n }\n\n /**\n * Envia los datos al Ws de Intercación de CRM Porvenir\n */\n public setWsinteraction() {\n const wsInteractionDto: RequestDto = {\n tipoIdCliente: this.parseJson(this.datos.payload).assitent.typeDocument.mark,\n numIdCliente: this.parseJson(this.datos.payload).assitent.numberDocument,\n tipoInteraccion: TypeInteraction.CANCELLATION,\n comentario: `Detalle de la interacción:\n Fecha y Hora: ${moment(this.datos.dateScheduling).locale('es').format('dddd DD [de] MMMM')} / ${moment(\n this.datos.timeScheduling,\n )\n .locale('es')\n .format('HH:mm a')}\n Asesor: ${this.parseJson(this.datos.payload).userGestorAssigned.fullName}\n Oficina: ${this.parseJson(this.datos.payload).office.typeOffice}\n Observacion: ${this.optionCancel}\n Creado Por ${this.parseJson(this.datos.payload).userCreator.name} ${this.parseJson(this.datos.payload).userCreator.address\n }\n Tipo: Manual`,\n };\n\n const dataSerialized = JSON.stringify(wsInteractionDto);\n const dataEncrypted = { data: this.encryptService.toEncrypt(dataSerialized) } as DataExternalDto;\n\n this.interactionCrmApiService.postInteractionExtenal(dataEncrypted)\n .pipe(takeUntil(this.destroy$))\n .subscribe(() => {\n this.sendCcmExternal(\n {\n cardId: '5fed1e2c995f340b3435283f',\n customers: [\n {\n data: {\n tipoPersona: 'Afiliado',\n nombres: this.parseJson(this.datos.payload).assitent.fullName,\n apellidos: this.parseJson(this.datos.payload).assitent.fullName,\n email: this.parseJson(this.datos.payload).assitent.emails[0],\n celular: this.parseJson(this.datos.payload).assitent.cellPhones[0],\n },\n id: this.datos.numberDocumentAssistant,\n typeId: localStorage.getItem('AssitantTypeDocument') || 'CC',\n },\n ],\n },\n () => { },\n );\n });\n localStorage.clear();\n this.router.navigate(['']);\n }\n\n /**\n * Metodo encargado de consumir el servicio para emitir el SMS para axplicación externa\n * @param data Objeto para enviar el SMS @see SmsRequestDto\n */\n public sendCcmExternal(data: SmsRequestDto, fn: () => void) {\n const dataSerialized = JSON.stringify(data);\n const dataEncrypted = { data: this.encryptService.toEncrypt(dataSerialized) } as DataExternalDto;\n this.ccmApiService.sendCcmExternal(dataEncrypted)\n .pipe(takeUntil(this.destroy$))\n .subscribe(() => fn());\n }\n\n /**\n * Convierte string a json\n * @param data Cadena de payload @see string\n */\n public parseJson(data: string) {\n return JSON.parse(data);\n }\n}\n","/**\n * Tipos de estado de cuenta del cliente para la validación\n */\nexport enum AccountStates {\n PRESTACION_DEFINIDA = 'PRESTACION_DEFINIDA',\n PRESTACION_ENTRAMITE = 'PRESTACION_TRAMITE'\n}\n","/**\n * Tipos de respuesta del Ws Segmentador\n */\nexport enum SegmenterCodes {\n OK = 200,\n CLIENT_NOT_FOUND = 206,\n MISSING_PARAMETERS = 400,\n ERROR = 500\n}\n","/**\n * Tipos de interactiones para Ws de Interaction\n */\nexport enum TypeInteraction {\n ASSIGNMENT = 'Asignación cita',\n ATTENTION = 'Atención cita',\n PREPARATION = 'Preparación cita',\n MODIFICATION = 'Modificación cita',\n CANCELLATION = 'Cancelación cita'\n}","import { Pipe, PipeTransform } from '@angular/core';\n\n/**\n * Pipe encargado de validar si un objeto se encuentra vacio\n */\n@Pipe({\n name: 'isEmpty',\n})\nexport class IsEmptyPipe implements PipeTransform {\n /**\n * Metodo encargado de validar si el array or object is empty\n * @param value Object or Array to validate\n * @returns True if value is empty.\n */\n public transform(value: {} | [] | null): boolean {\n if (value === null) {\n return true;\n }\n\n if (Array.isArray(value)) {\n return value.length === 0;\n }\n\n return Object.keys(value).length === 0;\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\n\nimport { IKeyValue } from '../../models/key-value.model';\n\n/**\n * Pipe encargado de procesar de convertir un objeto key-value a una lista procesable\n */\n@Pipe({\n name: 'keyvalue',\n})\nexport class KeyValuePipe implements PipeTransform {\n /**\n * Metodo encargado de transformar los valores\n * @param value Valor a procesar\n */\n public transform(value: any): IKeyValue[] {\n if (!value) {\n return [];\n }\n\n const keys = Object.keys(value);\n\n const data: IKeyValue[] = [];\n\n keys.forEach((key: string) =>\n data.push({\n key,\n value: value[key],\n }),\n );\n\n return data;\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\nimport { DomSanitizer, SafeHtml, SafeResourceUrl, SafeScript, SafeStyle, SafeUrl } from '@angular/platform-browser';\n\n/**\n * Pipe encargado de sanetizar base64\n */\n@Pipe({\n name: 'sanitizer',\n})\nexport class SanitizerPipe implements PipeTransform {\n /**\n * Calling any of the `bypassSecurityTrust...` APIs disables Angular's built-in\n */\n private readonly sanitizer: DomSanitizer;\n\n public constructor(sanitizer: DomSanitizer) {\n this.sanitizer = sanitizer;\n }\n\n public transform(value: string, type: string): SafeHtml | SafeStyle | SafeScript | SafeUrl | SafeResourceUrl {\n switch (type) {\n case 'html':\n return this.sanitizer.bypassSecurityTrustHtml(value);\n case 'style':\n return this.sanitizer.bypassSecurityTrustStyle(value);\n case 'script':\n return this.sanitizer.bypassSecurityTrustScript(value);\n case 'url':\n return this.sanitizer.bypassSecurityTrustUrl(value);\n case 'resourceUrl':\n return this.sanitizer.bypassSecurityTrustResourceUrl(value);\n default:\n return this.sanitizer.bypassSecurityTrustHtml(value);\n }\n }\n\n}\n","import { Pipe, PipeTransform } from '@angular/core';\n\n/**\n * Pipe para ordenar la información de un array de objetos\n */\n@Pipe({\n name: 'sorted',\n})\nexport class SortedPipe implements PipeTransform {\n /**\n * Metodo encargado de tranformar la información\n * @param value Arreglo que se va a ordenar\n * @param descending Argumento que indica si el ordenamiento es o no descendente\n */\n public transform(value: any[] | null, property: string = '', descending: boolean = false): any[] {\n if (!value || property === '') {\n return value as any[];\n }\n const element: string = property;\n\n const sortFn: (a: any, b: any) => any = (a, b) => {\n let result = 0;\n\n if (a[element] === undefined) {\n result = -1;\n } else if (b[element] === undefined) {\n result = 1;\n } else {\n result = a[element] > b[element] ? 1 : b[element] > a[element] ? -1 : 0;\n }\n\n return descending ? result * -1 : result;\n };\n\n value.sort(sortFn);\n\n return value;\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\n\n/**\n * Pipe encargado de transformar un valor booleano a un string (Activo | Inactivo)\n */\n@Pipe({\n name: 'state',\n})\nexport class StatePipe implements PipeTransform {\n /**\n * Transforma un valor booleano a string\n * @param value Valor a transformar\n * @returns Retorna Activo cuando el valor booleano es true, de lo contrario retorna Inactivo\n */\n public transform(value: boolean): string {\n return value ? 'Activo' : 'Inactivo';\n }\n}\n","import { Injectable } from '@angular/core';\nimport * as CryptoJS from 'crypto-js';\nimport { environment } from 'apps/website/src/environments/environment';\n\n/**\n * Servicio encargado de administrar los tipos de do\n */\n@Injectable()\nexport class EncryptService {\n\n /**\n * Llave privada\n */\n private readonly key = CryptoJS.enc.Utf8.parse(environment.signingAesKey);\n /**\n * Algoritmo\n */\n private readonly iv = CryptoJS.enc.Utf8.parse(environment.signingAesKey.substring(0, 16));\n\n /**\n * Metodo encargado de encriptar informacion\n */\n public toEncrypt(data: string): string {\n\n const encrypted = CryptoJS.AES.encrypt(CryptoJS.enc.Utf8.parse(data.toString()), this.key, { iv: this.iv });\n\n return encrypted.toString();\n }\n\n /**\n * Metodo encargado de desencriptar informacion\n */\n public toDecrypt(data: string): string {\n\n const decrypted = CryptoJS.AES.decrypt(data, this.key, { iv: this.iv });\n\n return decrypted.toString(CryptoJS.enc.Utf8);\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { FlexLayoutModule } from '@angular/flex-layout';\nimport { RouterModule } from '@angular/router';\n\nimport { FooterComponent } from './components/footer/footer.component';\nimport { HeaderComponent } from './components/header/header.component';\nimport { IsEmptyPipe } from './pipes/isEmpty/is-empty.pipe';\nimport { KeyValuePipe } from './pipes/keyValue/key-value.pipe';\nimport { SortedPipe } from './pipes/sorted-pipe/sorted.pipe';\nimport { StatePipe } from './pipes/state/state.pipe';\nimport { SanitizerPipe } from './pipes/sanitizer/sanitizer.pipe';\n\n/**\n * Modulo de componentes compartidos\n */\n@NgModule({\n declarations: [IsEmptyPipe, KeyValuePipe, StatePipe, SortedPipe, HeaderComponent, SanitizerPipe, FooterComponent],\n imports: [CommonModule, FlexLayoutModule, RouterModule],\n exports: [IsEmptyPipe, KeyValuePipe, StatePipe, SortedPipe, HeaderComponent, FooterComponent,SanitizerPipe],\n})\nexport class SharedModule {}\n","import * as _ from 'lodash';\nimport { BehaviorSubject } from 'rxjs';\n\nimport { AgentInteraction } from './agent-interaction.interface';\nimport { initAgentInteraction } from './init-agent.const';\n\n/**\n * AgentState\n */\nexport abstract class AgentInteractionState {\n /**\n * BehaviorSubject - State Base\n */\n private readonly agentInteractionState = new BehaviorSubject(initAgentInteraction);\n\n /**\n * Observable Agent Interaction State\n */\n public agentInteractionState$ = this.agentInteractionState.asObservable();\n\n /**\n * Get the value state\n */\n public get value() {\n return _.cloneDeep(this.agentInteractionState.value);\n }\n\n /**\n * Metodo encargado de asignar el estado\n * @param state Nuevo estado a asignar\n */\n public next(state: AgentInteraction) {\n this.agentInteractionState.next(state);\n }\n\n /**\n * Asinga el estado de inicialización\n */\n public setInitialize() {\n const state = this.value;\n\n this.next(state);\n }\n}\n","import {\n Cancelation,\n Channel,\n CityContact,\n Contact,\n Field,\n Form,\n Gestion,\n MetadataTypify,\n Office,\n PayloadScheduling,\n Preparation,\n StateScheduling,\n StructureForm,\n TypeContact,\n TypeDocument,\n Typify,\n User,\n} from '@prv/schedule-history';\n\nimport { AgentInteraction } from './agent-interaction.interface';\nimport { HistoryInteraction } from './history/history-interaction.interface';\n\n/**\n * Estado inicial de la oficina\n */\nexport const office: Office = {\n id: 0,\n name: '',\n};\n\n/**\n * Estado inicial del usuario\n */\nexport const user: User = {\n fullName: '',\n};\n\n/**\n * Estado inicial de canal\n */\nexport const channel: Channel = {\n id: 0,\n name: '',\n};\n\n/**\n * Estado inicial de estados de agendamiento\n */\nexport const stateScheduling: StateScheduling = {\n id: 0,\n name: '',\n};\n\n/**\n * Estado inicial del tipo de documento\n */\nexport const typeDocument: TypeDocument = {\n id: 0,\n name: '',\n mark: '',\n};\n\n/**\n * Estado inicial del tipo de contacto\n */\nexport const typeContact: TypeContact = {\n id: 0,\n name: '',\n};\n\n/**\n * Estado inicial de ciudad\n */\nexport const city: CityContact = {\n id: 0,\n name: '',\n idDepartment: 0,\n department: '',\n};\n\n/**\n * Estado inicial del contacto\n */\nexport const contact: Contact = {\n idTypeDocument: 0,\n numberDocument: '',\n fullName: '',\n cellPhones: [],\n localPhones: [],\n emails: [],\n habeasData: true,\n};\n\n/**\n * Estado inicial de la cancelación\n */\nexport const preparation: Preparation = {\n contactGestion: '',\n observations: '',\n};\n\n/**\n * Estado inicial de la cancelación\n */\nexport const cancelation: Cancelation = {\n nameDetailReasonByPorvenir: '',\n nameDetailReasonByAfiliado: '',\n};\n\n/**\n * Estado inicial de la gestion\n */\nexport const gestion: Gestion = {\n attendendAppointment: '',\n efectiveAppointment: '',\n typeThirdAttorney: '',\n causalAttendend: '',\n causalEfective: '',\n observations: '',\n};\n\n/**\n * Estado inicial de campos de formulario\n */\nexport const field: Field = {\n type: '',\n key: '',\n value: '',\n};\n\n/**\n * Estado inicial del formulario dinámico\n */\nexport const form: Form = {\n name: '',\n data: [field],\n};\n\n/**\n * Estado inicial de la estructura de tipificación\n */\nexport const structureForm: StructureForm = {\n id: 0,\n isValid: false,\n isSubscribed: false,\n name: '',\n type: '',\n data: [form],\n};\n\n/**\n * Estado inicial de la metadata de tipificación\n */\nexport const metadataTypify: MetadataTypify = {\n index: 0,\n form: structureForm,\n};\n\n/**\n * Estado inicial del tipificacion\n */\nexport const typify: Typify = {\n id: '',\n idHomolog: 0,\n guid: '',\n name: '',\n maxTimeMinutes: 0,\n colorHexadecimal: '',\n};\n\n/**\n * InteractionScheduling\n */\nexport const payloadScheduling: PayloadScheduling = {\n idChannel: 0,\n dateCall: '',\n dateScheduling: '',\n timeScheduling: '',\n typify,\n contact,\n assitent: contact,\n stateScheduling,\n channel,\n office,\n userCreator: user,\n userGestorAssigned: user,\n};\n\n/**\n * HistoryInteraction\n */\nexport const historyInteraction: HistoryInteraction = {\n count: 0,\n limit: 0,\n offset: 0,\n rows: [],\n};\n\n/**\n * Estado Inicial\n */\nexport const initAgentInteraction: AgentInteraction = {\n historyInteraction,\n isCompleted: false,\n isInitialize: false,\n payloadScheduling,\n};\n","import { PorvenirEnvironment } from '../app/shared/models/environments.model';\n\n/**\n * Configuración del entorno\n */\nexport const environment: PorvenirEnvironment = {\n production: true,\n googleCaptcha: '6LcIbywkAAAAAIwp42pXYDn1DcF3enmoXZei1hRb',\n signingAesKey: 'F3gLZRh7Z7meR7hQx3f1SOrfgGPxMaGE',\n urlMicrositeReform: 'https://www.porvenir.com.co/web/porvenir/porvenir-te-responde/reforma-pensional',\n identityServer: {\n },\n apis: {\n sts: 'undefined',\n acl: 'https://agendamiento.porvenir.com.co/access-control-list/api',\n auth: 'https://agendamiento.porvenir.com.co/auth/api',\n 'basic-data': 'https://agendamiento.porvenir.com.co/ws-basic-data/api',\n 'engine-availability': 'https://agendamiento.porvenir.com.co/engine-availability/api',\n form: 'https://agendamiento.porvenir.com.co/form/api',\n gender: 'https://agendamiento.porvenir.com.co/gender/api',\n georeference: 'https://agendamiento.porvenir.com.co/georeference/api',\n interaction: 'https://agendamiento.porvenir.com.co/schedule-history/api',\n 'interaction-crm': 'https://agendamiento.porvenir.com.co/ws-interaction-crm/api',\n platform: 'https://agendamiento.porvenir.com.co/platform/api',\n position: 'https://agendamiento.porvenir.com.co/position/api',\n 'regular-expression': 'https://agendamiento.porvenir.com.co/regular-expression/api',\n 'request-visit': 'https://agendamiento.porvenir.com.co/ws-request-visit/api',\n 'schedule-claim': 'https://agendamiento.porvenir.com.co/ws-reclamation/api',\n 'schedule-history': 'https://agendamiento.porvenir.com.co/schedule-history/api',\n 'scheduling-state': 'https://agendamiento.porvenir.com.co/scheduling-states/api',\n 'send-ccm': 'https://agendamiento.porvenir.com.co/ws-send-ccm/api',\n 'template-time-table': 'https://agendamiento.porvenir.com.co/template-time-table/api',\n 'type-document': 'https://agendamiento.porvenir.com.co/type-document/api',\n 'type-phone': 'https://agendamiento.porvenir.com.co/type-phone/api',\n typology: 'https://agendamiento.porvenir.com.co/typology/api',\n user: 'https://agendamiento.porvenir.com.co/user/api',\n viability: 'https://agendamiento.porvenir.com.co/ws-viability/api',\n 'data-treatment':'https://agendamiento.porvenir.com.co/data-treatment/api',\n segmenter: 'https://agendamiento.porvenir.com.co/ws-segmenter/api'\n },\n environmentName: 'Development',\n};\n","import { enableProdMode } from '@angular/core';\nimport { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\n\nimport { AppModule } from './app/app.module';\nimport { environment } from './environments/environment';\n\nif (environment.production) {\n enableProdMode();\n}\n\nplatformBrowserDynamic()\n .bootstrapModule(AppModule)\n .catch((err) => console.error(err));\n","var map = {\n\t\"./af\": 8685,\n\t\"./af.js\": 8685,\n\t\"./ar\": 254,\n\t\"./ar-dz\": 4312,\n\t\"./ar-dz.js\": 4312,\n\t\"./ar-kw\": 2614,\n\t\"./ar-kw.js\": 2614,\n\t\"./ar-ly\": 8630,\n\t\"./ar-ly.js\": 8630,\n\t\"./ar-ma\": 8674,\n\t\"./ar-ma.js\": 8674,\n\t\"./ar-ps\": 6235,\n\t\"./ar-ps.js\": 6235,\n\t\"./ar-sa\": 9032,\n\t\"./ar-sa.js\": 9032,\n\t\"./ar-tn\": 4730,\n\t\"./ar-tn.js\": 4730,\n\t\"./ar.js\": 254,\n\t\"./az\": 3052,\n\t\"./az.js\": 3052,\n\t\"./be\": 150,\n\t\"./be.js\": 150,\n\t\"./bg\": 3069,\n\t\"./bg.js\": 3069,\n\t\"./bm\": 3466,\n\t\"./bm.js\": 3466,\n\t\"./bn\": 8516,\n\t\"./bn-bd\": 557,\n\t\"./bn-bd.js\": 557,\n\t\"./bn.js\": 8516,\n\t\"./bo\": 6273,\n\t\"./bo.js\": 6273,\n\t\"./br\": 9588,\n\t\"./br.js\": 9588,\n\t\"./bs\": 9815,\n\t\"./bs.js\": 9815,\n\t\"./ca\": 3331,\n\t\"./ca.js\": 3331,\n\t\"./cs\": 1320,\n\t\"./cs.js\": 1320,\n\t\"./cv\": 2219,\n\t\"./cv.js\": 2219,\n\t\"./cy\": 8266,\n\t\"./cy.js\": 8266,\n\t\"./da\": 6427,\n\t\"./da.js\": 6427,\n\t\"./de\": 7435,\n\t\"./de-at\": 2871,\n\t\"./de-at.js\": 2871,\n\t\"./de-ch\": 2994,\n\t\"./de-ch.js\": 2994,\n\t\"./de.js\": 7435,\n\t\"./dv\": 2357,\n\t\"./dv.js\": 2357,\n\t\"./el\": 5649,\n\t\"./el.js\": 5649,\n\t\"./en-au\": 9961,\n\t\"./en-au.js\": 9961,\n\t\"./en-ca\": 9878,\n\t\"./en-ca.js\": 9878,\n\t\"./en-gb\": 3924,\n\t\"./en-gb.js\": 3924,\n\t\"./en-ie\": 864,\n\t\"./en-ie.js\": 864,\n\t\"./en-il\": 1579,\n\t\"./en-il.js\": 1579,\n\t\"./en-in\": 940,\n\t\"./en-in.js\": 940,\n\t\"./en-nz\": 6181,\n\t\"./en-nz.js\": 6181,\n\t\"./en-sg\": 4301,\n\t\"./en-sg.js\": 4301,\n\t\"./eo\": 5291,\n\t\"./eo.js\": 5291,\n\t\"./es\": 4529,\n\t\"./es-do\": 3764,\n\t\"./es-do.js\": 3764,\n\t\"./es-mx\": 2584,\n\t\"./es-mx.js\": 2584,\n\t\"./es-us\": 3425,\n\t\"./es-us.js\": 3425,\n\t\"./es.js\": 4529,\n\t\"./et\": 5203,\n\t\"./et.js\": 5203,\n\t\"./eu\": 678,\n\t\"./eu.js\": 678,\n\t\"./fa\": 3483,\n\t\"./fa.js\": 3483,\n\t\"./fi\": 6262,\n\t\"./fi.js\": 6262,\n\t\"./fil\": 2521,\n\t\"./fil.js\": 2521,\n\t\"./fo\": 4555,\n\t\"./fo.js\": 4555,\n\t\"./fr\": 3131,\n\t\"./fr-ca\": 8239,\n\t\"./fr-ca.js\": 8239,\n\t\"./fr-ch\": 1702,\n\t\"./fr-ch.js\": 1702,\n\t\"./fr.js\": 3131,\n\t\"./fy\": 267,\n\t\"./fy.js\": 267,\n\t\"./ga\": 3821,\n\t\"./ga.js\": 3821,\n\t\"./gd\": 1753,\n\t\"./gd.js\": 1753,\n\t\"./gl\": 4074,\n\t\"./gl.js\": 4074,\n\t\"./gom-deva\": 2762,\n\t\"./gom-deva.js\": 2762,\n\t\"./gom-latn\": 5969,\n\t\"./gom-latn.js\": 5969,\n\t\"./gu\": 2809,\n\t\"./gu.js\": 2809,\n\t\"./he\": 5402,\n\t\"./he.js\": 5402,\n\t\"./hi\": 315,\n\t\"./hi.js\": 315,\n\t\"./hr\": 410,\n\t\"./hr.js\": 410,\n\t\"./hu\": 8288,\n\t\"./hu.js\": 8288,\n\t\"./hy-am\": 7928,\n\t\"./hy-am.js\": 7928,\n\t\"./id\": 1334,\n\t\"./id.js\": 1334,\n\t\"./is\": 6959,\n\t\"./is.js\": 6959,\n\t\"./it\": 4864,\n\t\"./it-ch\": 1124,\n\t\"./it-ch.js\": 1124,\n\t\"./it.js\": 4864,\n\t\"./ja\": 6141,\n\t\"./ja.js\": 6141,\n\t\"./jv\": 9187,\n\t\"./jv.js\": 9187,\n\t\"./ka\": 2136,\n\t\"./ka.js\": 2136,\n\t\"./kk\": 4332,\n\t\"./kk.js\": 4332,\n\t\"./km\": 8607,\n\t\"./km.js\": 8607,\n\t\"./kn\": 4305,\n\t\"./kn.js\": 4305,\n\t\"./ko\": 234,\n\t\"./ko.js\": 234,\n\t\"./ku\": 6003,\n\t\"./ku-kmr\": 9619,\n\t\"./ku-kmr.js\": 9619,\n\t\"./ku.js\": 6003,\n\t\"./ky\": 5061,\n\t\"./ky.js\": 5061,\n\t\"./lb\": 2786,\n\t\"./lb.js\": 2786,\n\t\"./lo\": 6183,\n\t\"./lo.js\": 6183,\n\t\"./lt\": 29,\n\t\"./lt.js\": 29,\n\t\"./lv\": 4169,\n\t\"./lv.js\": 4169,\n\t\"./me\": 8577,\n\t\"./me.js\": 8577,\n\t\"./mi\": 8177,\n\t\"./mi.js\": 8177,\n\t\"./mk\": 337,\n\t\"./mk.js\": 337,\n\t\"./ml\": 5260,\n\t\"./ml.js\": 5260,\n\t\"./mn\": 2325,\n\t\"./mn.js\": 2325,\n\t\"./mr\": 4695,\n\t\"./mr.js\": 4695,\n\t\"./ms\": 5334,\n\t\"./ms-my\": 7151,\n\t\"./ms-my.js\": 7151,\n\t\"./ms.js\": 5334,\n\t\"./mt\": 3570,\n\t\"./mt.js\": 3570,\n\t\"./my\": 7963,\n\t\"./my.js\": 7963,\n\t\"./nb\": 8028,\n\t\"./nb.js\": 8028,\n\t\"./ne\": 6638,\n\t\"./ne.js\": 6638,\n\t\"./nl\": 302,\n\t\"./nl-be\": 6782,\n\t\"./nl-be.js\": 6782,\n\t\"./nl.js\": 302,\n\t\"./nn\": 3501,\n\t\"./nn.js\": 3501,\n\t\"./oc-lnc\": 563,\n\t\"./oc-lnc.js\": 563,\n\t\"./pa-in\": 869,\n\t\"./pa-in.js\": 869,\n\t\"./pl\": 5302,\n\t\"./pl.js\": 5302,\n\t\"./pt\": 9687,\n\t\"./pt-br\": 4884,\n\t\"./pt-br.js\": 4884,\n\t\"./pt.js\": 9687,\n\t\"./ro\": 9107,\n\t\"./ro.js\": 9107,\n\t\"./ru\": 3627,\n\t\"./ru.js\": 3627,\n\t\"./sd\": 355,\n\t\"./sd.js\": 355,\n\t\"./se\": 3427,\n\t\"./se.js\": 3427,\n\t\"./si\": 1848,\n\t\"./si.js\": 1848,\n\t\"./sk\": 4590,\n\t\"./sk.js\": 4590,\n\t\"./sl\": 184,\n\t\"./sl.js\": 184,\n\t\"./sq\": 6361,\n\t\"./sq.js\": 6361,\n\t\"./sr\": 8965,\n\t\"./sr-cyrl\": 1287,\n\t\"./sr-cyrl.js\": 1287,\n\t\"./sr.js\": 8965,\n\t\"./ss\": 5456,\n\t\"./ss.js\": 5456,\n\t\"./sv\": 451,\n\t\"./sv.js\": 451,\n\t\"./sw\": 7558,\n\t\"./sw.js\": 7558,\n\t\"./ta\": 2702,\n\t\"./ta.js\": 2702,\n\t\"./te\": 3693,\n\t\"./te.js\": 3693,\n\t\"./tet\": 1243,\n\t\"./tet.js\": 1243,\n\t\"./tg\": 2500,\n\t\"./tg.js\": 2500,\n\t\"./th\": 5768,\n\t\"./th.js\": 5768,\n\t\"./tk\": 7761,\n\t\"./tk.js\": 7761,\n\t\"./tl-ph\": 5780,\n\t\"./tl-ph.js\": 5780,\n\t\"./tlh\": 9590,\n\t\"./tlh.js\": 9590,\n\t\"./tr\": 3807,\n\t\"./tr.js\": 3807,\n\t\"./tzl\": 3857,\n\t\"./tzl.js\": 3857,\n\t\"./tzm\": 654,\n\t\"./tzm-latn\": 8806,\n\t\"./tzm-latn.js\": 8806,\n\t\"./tzm.js\": 654,\n\t\"./ug-cn\": 845,\n\t\"./ug-cn.js\": 845,\n\t\"./uk\": 9232,\n\t\"./uk.js\": 9232,\n\t\"./ur\": 7052,\n\t\"./ur.js\": 7052,\n\t\"./uz\": 7967,\n\t\"./uz-latn\": 2233,\n\t\"./uz-latn.js\": 2233,\n\t\"./uz.js\": 7967,\n\t\"./vi\": 8615,\n\t\"./vi.js\": 8615,\n\t\"./x-pseudo\": 2320,\n\t\"./x-pseudo.js\": 2320,\n\t\"./yo\": 1313,\n\t\"./yo.js\": 1313,\n\t\"./zh-cn\": 4490,\n\t\"./zh-cn.js\": 4490,\n\t\"./zh-hk\": 5910,\n\t\"./zh-hk.js\": 5910,\n\t\"./zh-mo\": 8262,\n\t\"./zh-mo.js\": 8262,\n\t\"./zh-tw\": 4223,\n\t\"./zh-tw.js\": 4223\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = 6700;","/* (ignored) */"],"names":["Validators","CustomModalComponent","Subject","ConfigModalsAssignmentValidation","ConfigModalsValidation","takeUntil","i0","ɵɵelementStart","ɵɵtext","ɵɵelementEnd","ɵɵproperty","item_r3","id","ɵɵadvance","ɵɵtextInterpolate2","mask","name","ɵɵtextInterpolate","item_r4","message","ɵɵtemplate","ValidationComponent_div_15_span_1_Template","ctx_r1","form","controls","hasError","type","touched","item_r7","ValidationComponent_div_22_span_1_Template","ctx_r2","dirty","ValidationComponent","constructor","spinner","router","activatedRoute","dialog","facade","authService","typeMessages","builder","destroy$","typeDocument","regex","configModalsAssignmentValidation","configModalsValidation","typeMessage","url","datos","schedule$","typeDocuments$","group","required","numberDocument","minLength","maxLength","captcha","isAuthenticated","isAffiliate","isViable","ngOnInit","getTempTypeDocuments","response","setTypeDocumentsSt","getIP","ngOnDestroy","next","complete","onChangeSelect","show","getTypeDocumentsByIdSt","hide","onBack","navigate","parseJson","data","JSON","parse","onSubmit","value","typeDocumentCurrent","pipe","subscribe","filter","x","localStorage","setItem","resetInteraction","authenticateClientAuth","objModal","undefined","open","routes","relativeTo","reset","ɵɵdirectiveInject","i1","NgxSpinnerService","i2","Router","ActivatedRoute","i3","MatDialog","i4","ValidationFacade","i5","AuthenticationService","i6","ValidatorMessageService","i7","UntypedFormBuilder","selectors","decls","vars","consts","template","ValidationComponent_Template","rf","ctx","ɵɵelement","ɵɵlistener","ValidationComponent_Template_select_change_9_listener","$event","target","ValidationComponent_option_12_Template","ValidationComponent_div_15_Template","ValidationComponent_div_22_Template","ValidationComponent_Template_button_click_27_listener","ValidationComponent_Template_button_click_30_listener","ɵɵpureFunction1","_c0","invalid","ɵɵpipeBind2","ɵɵpipeBind1","_c1","MAT_DIALOG_DATA","ConfigModalsModifyCancel","environment","CustomModalComponent_div_0_Template_a_click_1_listener","ɵɵrestoreView","_r8","ctx_r7","ɵɵnextContext","ɵɵresetView","onSubmitClose","config","caseButtonClose","titleModal","ɵɵpropertyInterpolate1","ctx_r9","image","ɵɵsanitizeUrl","ctx_r10","textContentModal","ɵɵsanitizeHtml","ctx_r11","CustomModalComponent_div_3_div_1_Template","CustomModalComponent_div_3_div_2_Template","CustomModalComponent_div_3_div_3_Template","contentImage","locationImage","CustomModalComponent_button_5_img_1_Template","ctx_r3","imageButtonBack","textBackButton","CustomModalComponent_button_6_Template_button_click_0_listener","_r15","ctx_r14","caseButtonNext","CustomModalComponent_button_6_img_3_Template","ctx_r4","textNextButton","imageButtonNext","row_r20","ɵɵtextInterpolate1","item_r22","CustomModalComponent_ng_template_7_div_1_div_10_span_1_Template","ctx_r19","CustomModalComponent_ng_template_7_div_1_option_6_Template","CustomModalComponent_ng_template_7_div_1_div_10_Template","ctx_r16","detailReasonStateScheduling$","CustomModalComponent_ng_template_7_div_1_Template","CustomModalComponent_ng_template_7_div_2_Template","ctx_r6","typeTemplate","location","optionCancel","configModalsModifyCancel","loadConfigurationScssPropertiesTitle","loadConfigurationScssPropertiesImage","loadConfigurationScssPropertiesTextContent","loadConfigurationScssPropertiesButtonClose","loadConfigurationScssPropertiesButtons","option","openModalCancel","stringify","cancelShedule","setWsinteraction","openModalCancelApproved","getItem","back","then","window","reload","urlMicrositeReform","document","documentElement","style","setProperty","sizeTitleModalXl","sizeTitleModalLg","sizeTitleModalMd","sizeTitleModalSm","sizeTitleModalXs","sizeTitleModalXss","topTitleGapValue","bottomTitleGapValue","sizeTextContentModalXl","sizeTextContentModalLg","sizeTextContentModalMd","sizeTextContentModalSm","sizeTextContentModalXs","sizeTextContentModalXss","topTextContentGapValue","bottomTextContentGapValue","widthImageXl","widthImageLg","widthImageMd","widthImageSm","widthImageXs","widthImageXss","heightImageXl","heightImageLg","heightImageMd","heightImageSm","heightImageXs","heightImageXss","topImageGapValue","bottomImageGapValue","closeCornerButtonPosAxisXl","closeCornerButtonPosAxisLg","closeCornerButtonPosAxisMd","closeCornerButtonPosAxisSm","closeCornerButtonPosAxisXs","closeCornerButtonPosAxisXss","closeCornerButtonPosCrossXl","closeCornerButtonPosCrossLg","closeCornerButtonPosCrossMd","closeCornerButtonPosCrossSm","closeCornerButtonPosCrossXs","closeCornerButtonPosCrossXss","topButtonsGapValue","bottomButtonsGapValue","buttonsBetweenGap","buttonNextWidthXl","buttonNextWidthLg","buttonNextWidthMd","buttonNextWidthSm","buttonNextWidthXs","buttonNextWidthXss","buttonNextHeightXl","buttonNextHeightLg","buttonNextHeightMd","buttonNextHeightSm","buttonNextHeightXs","buttonNextHeightXss","modalCancelApproved","width","height","panelClass","autoFocus","restoreFocus","disableClose","modalCancel","Location","CustomModalFacade","CustomModalComponent_Template","CustomModalComponent_div_0_Template","CustomModalComponent_div_2_Template","CustomModalComponent_div_3_Template","CustomModalComponent_button_5_Template","CustomModalComponent_button_6_Template","CustomModalComponent_ng_template_7_Template","ɵɵtemplateRefExtractor","closeCornerButton","typeContentModal","_r5","buttonBack","buttonNext"],"sourceRoot":"webpack:///","x_google_ignoreList":[51,52]}