{"version":3,"file":"main.js","mappings":";;;;;;;;;;;;;;AAAA,oBAAoB;AAC8D;AAGlF;;;GAGG;AACH,MAAM,cAAc;IAClB,SAAS,CAAC,GAAW;QACnB,OAAO,kBAAkB,CAAC,GAAG,CAAC,CAAC;IACjC,CAAC;IAED,WAAW,CAAC,KAAa;QACvB,OAAO,kBAAkB,CAAC,KAAK,CAAC,CAAC;IACnC,CAAC;IAED,SAAS,CAAC,GAAW;QACnB,OAAO,kBAAkB,CAAC,GAAG,CAAC,CAAC;IACjC,CAAC;IAED,WAAW,CAAC,KAAa;QACvB,OAAO,kBAAkB,CAAC,KAAK,CAAC,CAAC;IACnC,CAAC;CACF;AACD,MAAM,eAAe,GAAG,IAAI,cAAc,EAAE,CAAC;AAE7C;;GAEG;AACI,MAAM,WAAW;IACtB,YACY,MAA4B,EAC5B,IAAgB;QADhB,WAAM,GAAN,MAAM,CAAsB;QAC5B,SAAI,GAAJ,IAAI,CAAY;QAIpB,aAAQ,GAAW,EAAE,CAAC;IAF9B,CAAC;IAID;;;OAGG;IACH,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC;IAC9C,CAAC;IAED;;OAEG;IACH,IAAI,OAAO,CAAC,OAAe;QACzB,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;IAC1B,CAAC;IAED;;OAEG;IACO,SAAS;QACjB,OAAO,IAAI,4DAAU,CAAC;YACpB,OAAO,EAAE,eAAe;SACzB,CAAC,CAAC;IACL,CAAC;CACF;;;;;;;;;;;;;;;;;;AC3DD;;GAEG;AAII,MAAM,oBAAoB;IAHjC;QAIE,YAAO,GAAW,kCAAkC,CAAC;KACtD;;wFAFY,oBAAoB;qHAApB,oBAAoB,WAApB,oBAAoB,mBAFnB,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;ACPpB,oBAAoB;AAC0C;AACN;AACuC;AAEjC;AACN;AACY;AACR;AACE;AACQ;;AAEtE;;GAEG;AAmBI,MAAM,aAAa;IACxB,MAAM,CAAC,OAAO,CAAC,YAA2C;QACxD,OAAO;YACL,QAAQ,EAAE,aAAa;YACvB,SAAS,EAAE;gBACT;oBACE,OAAO,EAAE,yEAAoB;oBAC7B,QAAQ,EAAE,EAAC,OAAO,EAAE,YAAY,CAAC,OAAO,EAAC;iBAC1C;aACF;SACF;IACH,CAAC;;0EAXU,aAAa;0GAAb,aAAa;+GAVb;QACT,yEAAoB;QACpB,uEAAe;QACf,iEAAY;QACZ,6EAAkB;QAClB,qEAAc;QACd,uEAAe;QACf,+EAAmB;KACpB,YAdC,kEAAgB,EAGhB,kEAAgB;mIAaP,aAAa,cAhBtB,kEAAgB,aAGhB,kEAAgB;;;;;;;;;;;;;;;;ACRpB,IAAO,WAAW,CAyBjB;AAzBD,WAAO,WAAW;IACH,gBAAI,GAAgB,MAAM,CAAC;IAC3B,gBAAI,GAAgB,MAAM,CAAC;IAC3B,iBAAK,GAAgB,OAAO,CAAC;IAC7B,yBAAa,GAAgB,cAAc,CAAC;IAC5C,uBAAW,GAAgB,YAAY,CAAC;IACxC,6BAAiB,GAAgB,iBAAiB,CAAC;IACnD,mBAAO,GAAgB,QAAQ,CAAC;IAChC,kBAAM,GAAgB,QAAQ,CAAC;IAC/B,qBAAS,GAAgB,UAAU,CAAC;IACpC,sBAAU,GAAgB,WAAW,CAAC;IACnD,SAAgB,MAAM;QACpB,OAAO;YACL,gBAAI;YACJ,gBAAI;YACJ,iBAAK;YACL,yBAAa;YACb,uBAAW;YACX,6BAAiB;YACjB,mBAAO;YACP,kBAAM;YACN,qBAAS;YACT,sBAAU;SACX,CAAC;IACJ,CAAC;IAbe,kBAAM,SAarB;AACH,CAAC,EAzBM,WAAW,KAAX,WAAW,QAyBjB;AAEqB;;;;;;;;;;;;;;;;;;;;;;ACrCoE;AAC3B;AAIG;;;;AAUlE,MAGM,eAAgB,SAAQ,sDAAa;IAWzC,YACE,MAAuB,EACvB,IAAgB;QAEhB,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IACtB,CAAC;IAED;;OAEG;IACH,uCAAuC,CAAC,OAA+B;QACrE,IAAI,QAAQ,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;QAChC,IAAI,SAAS,GAAG,IAAI,6DAAW,EAAE,CAAC;QAClC,IAAI,MAAM,GAAQ,IAAI,CAAC;QACvB,MAAM,GAAG,OAAO,CAAC;QACjB,IAAI,GAAG,GAAG,IAAI,6DAAW,CACvB,MAAM,EACN,IAAI,CAAC,OAAO,GAAG,qBAAqB,EACpC,MAAM,EACN;YACE,OAAO,EAAE,SAAS;YAClB,MAAM,EAAE,QAAQ;YAChB,YAAY,EAAE,MAAM;SACrB,CAAC,CAAC;QAEL,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAM,GAAG,CAAC,CAAC,IAAI,CACrC,sDAAQ,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,YAAY,8DAAY,CAAC,EAC1C,mDAAK,CAAC,CAAC,EAAE,EAAE,EAAE;YACX,OAAO,EAAgD,CAAC;QAC1D,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;IACD;;OAEG;IACH,+BAA+B,CAAC,OAA+B;QAC7D,OAAO,IAAI,CAAC,uCAAuC,CAAC,OAAO,CAAC,CAAC,IAAI,CAC/D,mDAAK,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,IAA4B,CAAC,CAC7C,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,6BAA6B,CAAC,KAAmC;QAC/D,IAAI,QAAQ,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;QAChC,IAAI,SAAS,GAAG,IAAI,6DAAW,EAAE,CAAC;QAClC,IAAI,MAAM,GAAQ,IAAI,CAAC;QACvB,MAAM,GAAG,KAAK,CAAC;QACf,IAAI,GAAG,GAAG,IAAI,6DAAW,CACvB,MAAM,EACN,IAAI,CAAC,OAAO,GAAG,yBAAyB,EACxC,MAAM,EACN;YACE,OAAO,EAAE,SAAS;YAClB,MAAM,EAAE,QAAQ;YAChB,YAAY,EAAE,MAAM;SACrB,CAAC,CAAC;QAEL,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAM,GAAG,CAAC,CAAC,IAAI,CACrC,sDAAQ,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,YAAY,8DAAY,CAAC,EAC1C,mDAAK,CAAC,CAAC,EAAE,EAAE,EAAE;YACX,OAAO,EAAiD,CAAC;QAC3D,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;IACD;;OAEG;IACH,qBAAqB,CAAC,KAAmC;QACvD,OAAO,IAAI,CAAC,6BAA6B,CAAC,KAAK,CAAC,CAAC,IAAI,CACnD,mDAAK,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,IAA6B,CAAC,CAC9C,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,yBAAyB,CAAC,KAA+B;QACvD,IAAI,QAAQ,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;QAChC,IAAI,SAAS,GAAG,IAAI,6DAAW,EAAE,CAAC;QAClC,IAAI,MAAM,GAAQ,IAAI,CAAC;QACvB,MAAM,GAAG,KAAK,CAAC;QACf,IAAI,GAAG,GAAG,IAAI,6DAAW,CACvB,MAAM,EACN,IAAI,CAAC,OAAO,GAAG,qBAAqB,EACpC,MAAM,EACN;YACE,OAAO,EAAE,SAAS;YAClB,MAAM,EAAE,QAAQ;YAChB,YAAY,EAAE,MAAM;SACrB,CAAC,CAAC;QAEL,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAM,GAAG,CAAC,CAAC,IAAI,CACrC,sDAAQ,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,YAAY,8DAAY,CAAC,EAC1C,mDAAK,CAAC,CAAC,EAAE,EAAE,EAAE;YACX,OAAO,EAAiD,CAAC;QAC3D,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;IACD;;OAEG;IACH,iBAAiB,CAAC,KAA+B;QAC/C,OAAO,IAAI,CAAC,yBAAyB,CAAC,KAAK,CAAC,CAAC,IAAI,CAC/C,mDAAK,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,IAA6B,CAAC,CAC9C,CAAC;IACJ,CAAC;IAED;;;;;;;;OAQG;IACH,sCAAsC,CAAC,MAA4D;QACjG,IAAI,QAAQ,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;QAChC,IAAI,SAAS,GAAG,IAAI,6DAAW,EAAE,CAAC;QAClC,IAAI,MAAM,GAAQ,IAAI,CAAC;QACvB,IAAI,MAAM,CAAC,MAAM,IAAI,IAAI;YAAE,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;QACvF,IAAI,MAAM,CAAC,QAAQ,IAAI,IAAI;YAAE,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC,UAAU,EAAE,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC;QAC7F,IAAI,MAAM,CAAC,kBAAkB,IAAI,IAAI;YAAE,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC,oBAAoB,EAAE,MAAM,CAAC,kBAAkB,CAAC,QAAQ,EAAE,CAAC,CAAC;QAC3H,IAAI,GAAG,GAAG,IAAI,6DAAW,CACvB,KAAK,EACL,IAAI,CAAC,OAAO,GAAG,oBAAoB,EACnC,MAAM,EACN;YACE,OAAO,EAAE,SAAS;YAClB,MAAM,EAAE,QAAQ;YAChB,YAAY,EAAE,MAAM;SACrB,CAAC,CAAC;QAEL,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAM,GAAG,CAAC,CAAC,IAAI,CACrC,sDAAQ,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,YAAY,8DAAY,CAAC,EAC1C,mDAAK,CAAC,CAAC,EAAE,EAAE,EAAE;YACX,OAAO,EAAgC,CAAC;QAC1C,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;IACD;;;;;;;;OAQG;IACH,8BAA8B,CAAC,MAA4D;QACzF,OAAO,IAAI,CAAC,sCAAsC,CAAC,MAAM,CAAC,CAAC,IAAI,CAC7D,mDAAK,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,IAAY,CAAC,CAC7B,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,0BAA0B,CAAC,aAAqB;QAC9C,IAAI,QAAQ,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;QAChC,IAAI,SAAS,GAAG,IAAI,6DAAW,EAAE,CAAC;QAClC,IAAI,MAAM,GAAQ,IAAI,CAAC;QAEvB,IAAI,GAAG,GAAG,IAAI,6DAAW,CACvB,KAAK,EACL,IAAI,CAAC,OAAO,GAAG,QAAQ,kBAAkB,CAAC,aAAa,CAAC,EAAE,EAC1D,MAAM,EACN;YACE,OAAO,EAAE,SAAS;YAClB,MAAM,EAAE,QAAQ;YAChB,YAAY,EAAE,MAAM;SACrB,CAAC,CAAC;QAEL,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAM,GAAG,CAAC,CAAC,IAAI,CACrC,sDAAQ,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,YAAY,8DAAY,CAAC,EAC1C,mDAAK,CAAC,CAAC,EAAE,EAAE,EAAE;YACX,OAAO,EAAgC,CAAC;QAC1C,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;IACD;;OAEG;IACH,kBAAkB,CAAC,aAAqB;QACtC,OAAO,IAAI,CAAC,0BAA0B,CAAC,aAAa,CAAC,CAAC,IAAI,CACxD,mDAAK,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,IAAY,CAAC,CAC7B,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,wCAAwC,CAAC,cAA8B;QACrE,IAAI,QAAQ,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;QAChC,IAAI,SAAS,GAAG,IAAI,6DAAW,EAAE,CAAC;QAClC,IAAI,MAAM,GAAQ,IAAI,CAAC;QACvB,IAAI,cAAc,IAAI,IAAI;YAAE,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC,gBAAgB,EAAE,cAAc,CAAC,QAAQ,EAAE,CAAC,CAAC;QACjG,IAAI,GAAG,GAAG,IAAI,6DAAW,CACvB,KAAK,EACL,IAAI,CAAC,OAAO,GAAG,sBAAsB,EACrC,MAAM,EACN;YACE,OAAO,EAAE,SAAS;YAClB,MAAM,EAAE,QAAQ;YAChB,YAAY,EAAE,MAAM;SACrB,CAAC,CAAC;QAEL,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAM,GAAG,CAAC,CAAC,IAAI,CACrC,sDAAQ,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,YAAY,8DAAY,CAAC,EAC1C,mDAAK,CAAC,CAAC,EAAE,EAAE,EAAE;YACX,OAAO,EAAiD,CAAC;QAC3D,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;IACD;;OAEG;IACH,gCAAgC,CAAC,cAA8B;QAC7D,OAAO,IAAI,CAAC,wCAAwC,CAAC,cAAc,CAAC,CAAC,IAAI,CACvE,mDAAK,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,IAA6B,CAAC,CAC9C,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,uBAAuB,CAAC,cAA8B;QACpD,IAAI,QAAQ,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;QAChC,IAAI,SAAS,GAAG,IAAI,6DAAW,EAAE,CAAC;QAClC,IAAI,MAAM,GAAQ,IAAI,CAAC;QACvB,IAAI,cAAc,IAAI,IAAI;YAAE,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC,gBAAgB,EAAE,cAAc,CAAC,QAAQ,EAAE,CAAC,CAAC;QACjG,IAAI,GAAG,GAAG,IAAI,6DAAW,CACvB,KAAK,EACL,IAAI,CAAC,OAAO,GAAG,UAAU,EACzB,MAAM,EACN;YACE,OAAO,EAAE,SAAS;YAClB,MAAM,EAAE,QAAQ;YAChB,YAAY,EAAE,MAAM;SACrB,CAAC,CAAC;QAEL,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAM,GAAG,CAAC,CAAC,IAAI,CACrC,sDAAQ,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,YAAY,8DAAY,CAAC,EAC1C,mDAAK,CAAC,CAAC,EAAE,EAAE,EAAE;YACX,OAAO,EAAwC,CAAC;QAClD,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;IACD;;OAEG;IACH,eAAe,CAAC,cAA8B;QAC5C,OAAO,IAAI,CAAC,uBAAuB,CAAC,cAAc,CAAC,CAAC,IAAI,CACtD,mDAAK,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,IAAoB,CAAC,CACrC,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,2BAA2B,CAAC,KAAuB;QACjD,IAAI,QAAQ,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;QAChC,IAAI,SAAS,GAAG,IAAI,6DAAW,EAAE,CAAC;QAClC,IAAI,MAAM,GAAQ,IAAI,CAAC;QACvB,MAAM,GAAG,KAAK,CAAC;QACf,IAAI,GAAG,GAAG,IAAI,6DAAW,CACvB,MAAM,EACN,IAAI,CAAC,OAAO,GAAG,cAAc,EAC7B,MAAM,EACN;YACE,OAAO,EAAE,SAAS;YAClB,MAAM,EAAE,QAAQ;YAChB,YAAY,EAAE,MAAM;SACrB,CAAC,CAAC;QAEL,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAM,GAAG,CAAC,CAAC,IAAI,CACrC,sDAAQ,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,YAAY,8DAAY,CAAC,EAC1C,mDAAK,CAAC,CAAC,EAAE,EAAE,EAAE;YACX,OAAO,EAAgC,CAAC;QAC1C,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;IACD;;OAEG;IACH,mBAAmB,CAAC,KAAuB;QACzC,OAAO,IAAI,CAAC,2BAA2B,CAAC,KAAK,CAAC,CAAC,IAAI,CACjD,mDAAK,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,IAAY,CAAC,CAC7B,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,4BAA4B,CAAC,cAAsB;QACjD,IAAI,QAAQ,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;QAChC,IAAI,SAAS,GAAG,IAAI,6DAAW,EAAE,CAAC;QAClC,IAAI,MAAM,GAAQ,IAAI,CAAC;QACvB,IAAI,cAAc,IAAI,IAAI;YAAE,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC,gBAAgB,EAAE,cAAc,CAAC,QAAQ,EAAE,CAAC,CAAC;QACjG,IAAI,GAAG,GAAG,IAAI,6DAAW,CACvB,MAAM,EACN,IAAI,CAAC,OAAO,GAAG,yBAAyB,EACxC,MAAM,EACN;YACE,OAAO,EAAE,SAAS;YAClB,MAAM,EAAE,QAAQ;YAChB,YAAY,EAAE,MAAM;SACrB,CAAC,CAAC;QAEL,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAM,GAAG,CAAC,CAAC,IAAI,CACrC,sDAAQ,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,YAAY,8DAAY,CAAC,EAC1C,mDAAK,CAAC,CAAC,EAAE,EAAE,EAAE;YACX,OAAO,EAAgC,CAAC;QAC1C,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;IACD;;OAEG;IACH,oBAAoB,CAAC,cAAsB;QACzC,OAAO,IAAI,CAAC,4BAA4B,CAAC,cAAc,CAAC,CAAC,IAAI,CAC3D,mDAAK,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,IAAY,CAAC,CAC7B,CAAC;IACJ,CAAC;;AA/Ue,mDAAmC,GAAG,qBAAsB;AAC5D,yCAAyB,GAAG,yBAA0B;AACtD,qCAAqB,GAAG,qBAAsB;AAC9C,kDAAkC,GAAG,oBAAqB;AAC1D,sCAAsB,GAAG,sBAAuB;AAChD,oDAAoC,GAAG,sBAAuB;AAC9D,mCAAmB,GAAG,UAAW;AACjC,uCAAuB,GAAG,cAAe;AACzC,yCAAyB,GAAG,yBAA0B;8EATlE,eAAe;gHAAf,eAAe,WAAf,eAAe,mBAFP,MAAM;AAmWM;;;;;;;;;;;;;;;;;;;;;;ACnXgE;AAC3B;AAIG;;;;AAElE,MAGM,YAAa,SAAQ,sDAAa;IAGtC,YACE,MAAuB,EACvB,IAAgB;QAEhB,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IACtB,CAAC;IAED;;OAEG;IACH,kBAAkB,CAAC,UAAkB;QACnC,IAAI,QAAQ,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;QAChC,IAAI,SAAS,GAAG,IAAI,6DAAW,EAAE,CAAC;QAClC,IAAI,MAAM,GAAQ,IAAI,CAAC;QAEvB,IAAI,GAAG,GAAG,IAAI,6DAAW,CACvB,KAAK,EACL,IAAI,CAAC,OAAO,GAAG,UAAU,kBAAkB,CAAC,UAAU,CAAC,EAAE,EACzD,MAAM,EACN;YACE,OAAO,EAAE,SAAS;YAClB,MAAM,EAAE,QAAQ;YAChB,YAAY,EAAE,MAAM;SACrB,CAAC,CAAC;QAEL,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAM,GAAG,CAAC,CAAC,IAAI,CACrC,sDAAQ,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,YAAY,8DAAY,CAAC,EAC1C,mDAAK,CAAC,CAAC,EAAE,EAAE,EAAE;YACX,OAAO,EAAgC,CAAC;QAC1C,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;IACD;;OAEG;IACH,UAAU,CAAC,UAAkB;QAC3B,OAAO,IAAI,CAAC,kBAAkB,CAAC,UAAU,CAAC,CAAC,IAAI,CAC7C,mDAAK,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,IAAY,CAAC,CAC7B,CAAC;IACJ,CAAC;;AAzCe,2BAAc,GAAG,qBAAsB;wEADnD,YAAY;6GAAZ,YAAY,WAAZ,YAAY,mBAFJ,MAAM;AAkDG;;;;;;;;;;;;;;;;;;;;;;AC1DmE;AAC3B;AAIG;;;;AAOlE,MAGM,kBAAmB,SAAQ,sDAAa;IAiB5C,YACE,MAAuB,EACvB,IAAgB;QAEhB,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IACtB,CAAC;IAED;;;;;;OAMG;IACH,8BAA8B,CAAC,MAAuD;QACpF,IAAI,QAAQ,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;QAChC,IAAI,SAAS,GAAG,IAAI,6DAAW,EAAE,CAAC;QAClC,IAAI,MAAM,GAAQ,IAAI,CAAC;QACvB,IAAI,MAAM,CAAC,OAAO,IAAI,IAAI;YAAE,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC,SAAS,EAAE,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;QAC1F,IAAI,MAAM,CAAC,KAAK,IAAI,IAAI;YAAE,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;QACpF,IAAI,GAAG,GAAG,IAAI,6DAAW,CACvB,KAAK,EACL,IAAI,CAAC,OAAO,GAAG,kBAAkB,EACjC,MAAM,EACN;YACE,OAAO,EAAE,SAAS;YAClB,MAAM,EAAE,QAAQ;YAChB,YAAY,EAAE,MAAM;SACrB,CAAC,CAAC;QAEL,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAM,GAAG,CAAC,CAAC,IAAI,CACrC,sDAAQ,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,YAAY,8DAAY,CAAC,EAC1C,mDAAK,CAAC,CAAC,EAAE,EAAE,EAAE;YACX,OAAO,EAAgC,CAAC;QAC1C,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;IACD;;;;;;OAMG;IACH,sBAAsB,CAAC,MAAuD;QAC5E,OAAO,IAAI,CAAC,8BAA8B,CAAC,MAAM,CAAC,CAAC,IAAI,CACrD,mDAAK,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,IAAY,CAAC,CAC7B,CAAC;IACJ,CAAC;IAED;;;;;;OAMG;IACH,wCAAwC,CAAC,MAAiE;QACxG,IAAI,QAAQ,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;QAChC,IAAI,SAAS,GAAG,IAAI,6DAAW,EAAE,CAAC;QAClC,IAAI,MAAM,GAAQ,IAAI,CAAC;QACvB,IAAI,MAAM,CAAC,OAAO,IAAI,IAAI;YAAE,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC,SAAS,EAAE,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;QAC1F,IAAI,MAAM,CAAC,KAAK,IAAI,IAAI;YAAE,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;QACpF,IAAI,GAAG,GAAG,IAAI,6DAAW,CACvB,KAAK,EACL,IAAI,CAAC,OAAO,GAAG,4BAA4B,EAC3C,MAAM,EACN;YACE,OAAO,EAAE,SAAS;YAClB,MAAM,EAAE,QAAQ;YAChB,YAAY,EAAE,MAAM;SACrB,CAAC,CAAC;QAEL,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAM,GAAG,CAAC,CAAC,IAAI,CACrC,sDAAQ,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,YAAY,8DAAY,CAAC,EAC1C,mDAAK,CAAC,CAAC,EAAE,EAAE,EAAE;YACX,OAAO,EAAgC,CAAC;QAC1C,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;IACD;;;;;;OAMG;IACH,gCAAgC,CAAC,MAAiE;QAChG,OAAO,IAAI,CAAC,wCAAwC,CAAC,MAAM,CAAC,CAAC,IAAI,CAC/D,mDAAK,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,IAAY,CAAC,CAC7B,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,+BAA+B,CAAC,KAA6B;QAC3D,IAAI,QAAQ,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;QAChC,IAAI,SAAS,GAAG,IAAI,6DAAW,EAAE,CAAC;QAClC,IAAI,MAAM,GAAQ,IAAI,CAAC;QACvB,MAAM,GAAG,KAAK,CAAC;QACf,IAAI,GAAG,GAAG,IAAI,6DAAW,CACvB,MAAM,EACN,IAAI,CAAC,OAAO,GAAG,mBAAmB,EAClC,MAAM,EACN;YACE,OAAO,EAAE,SAAS;YAClB,MAAM,EAAE,QAAQ;YAChB,YAAY,EAAE,MAAM;SACrB,CAAC,CAAC;QAEL,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAM,GAAG,CAAC,CAAC,IAAI,CACrC,sDAAQ,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,YAAY,8DAAY,CAAC,EAC1C,mDAAK,CAAC,CAAC,EAAE,EAAE,EAAE;YACX,OAAO,EAAgC,CAAC;QAC1C,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;IACD;;OAEG;IACH,uBAAuB,CAAC,KAA6B;QACnD,OAAO,IAAI,CAAC,+BAA+B,CAAC,KAAK,CAAC,CAAC,IAAI,CACrD,mDAAK,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,IAAY,CAAC,CAC7B,CAAC;IACJ,CAAC;IACD,mDAAmD;QACjD,IAAI,QAAQ,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;QAChC,IAAI,SAAS,GAAG,IAAI,6DAAW,EAAE,CAAC;QAClC,IAAI,MAAM,GAAQ,IAAI,CAAC;QACvB,IAAI,GAAG,GAAG,IAAI,6DAAW,CACvB,KAAK,EACL,IAAI,CAAC,OAAO,GAAG,iCAAiC,EAChD,MAAM,EACN;YACE,OAAO,EAAE,SAAS;YAClB,MAAM,EAAE,QAAQ;YAChB,YAAY,EAAE,MAAM;SACrB,CAAC,CAAC;QAEL,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAM,GAAG,CAAC,CAAC,IAAI,CACrC,sDAAQ,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,YAAY,8DAAY,CAAC,EAC1C,mDAAK,CAAC,CAAC,EAAE,EAAE,EAAE;YACX,OAAO,EAAgC,CAAC;QAC1C,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;IAAE,2CAA2C;QAC5C,OAAO,IAAI,CAAC,mDAAmD,EAAE,CAAC,IAAI,CACpE,mDAAK,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,IAAY,CAAC,CAC7B,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,8BAA8B,CAAC,UAA+C;QAC5E,IAAI,QAAQ,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;QAChC,IAAI,SAAS,GAAG,IAAI,6DAAW,EAAE,CAAC;QAClC,IAAI,MAAM,GAAQ,IAAI,CAAC;QACvB,IAAI,UAAU,IAAI,IAAI;YAAE,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC,YAAY,EAAE,UAAU,CAAC,QAAQ,EAAE,CAAC,CAAC;QACrF,IAAI,GAAG,GAAG,IAAI,6DAAW,CACvB,KAAK,EACL,IAAI,CAAC,OAAO,GAAG,wBAAwB,EACvC,MAAM,EACN;YACE,OAAO,EAAE,SAAS;YAClB,MAAM,EAAE,QAAQ;YAChB,YAAY,EAAE,MAAM;SACrB,CAAC,CAAC;QAEL,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAM,GAAG,CAAC,CAAC,IAAI,CACrC,sDAAQ,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,YAAY,8DAAY,CAAC,EAC1C,mDAAK,CAAC,CAAC,EAAE,EAAE,EAAE;YACX,OAAO,EAAgC,CAAC;QAC1C,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;IACD;;OAEG;IACH,sBAAsB,CAAC,UAA+C;QACpE,OAAO,IAAI,CAAC,8BAA8B,CAAC,UAAU,CAAC,CAAC,IAAI,CACzD,mDAAK,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,IAAY,CAAC,CAC7B,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,sBAAsB,CAAC,KAA6B;QAClD,IAAI,QAAQ,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;QAChC,IAAI,SAAS,GAAG,IAAI,6DAAW,EAAE,CAAC;QAClC,IAAI,MAAM,GAAQ,IAAI,CAAC;QACvB,MAAM,GAAG,KAAK,CAAC;QACf,IAAI,GAAG,GAAG,IAAI,6DAAW,CACvB,MAAM,EACN,IAAI,CAAC,OAAO,GAAG,iBAAiB,EAChC,MAAM,EACN;YACE,OAAO,EAAE,SAAS;YAClB,MAAM,EAAE,QAAQ;YAChB,YAAY,EAAE,MAAM;SACrB,CAAC,CAAC;QAEL,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAM,GAAG,CAAC,CAAC,IAAI,CACrC,sDAAQ,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,YAAY,8DAAY,CAAC,EAC1C,mDAAK,CAAC,CAAC,EAAE,EAAE,EAAE;YACX,OAAO,EAAgC,CAAC;QAC1C,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;IACD;;OAEG;IACH,cAAc,CAAC,KAA6B;QAC1C,OAAO,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAAC,IAAI,CAC5C,mDAAK,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,IAAY,CAAC,CAC7B,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,oCAAoC,CAAC,KAA6B;QAChE,IAAI,QAAQ,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;QAChC,IAAI,SAAS,GAAG,IAAI,6DAAW,EAAE,CAAC;QAClC,IAAI,MAAM,GAAQ,IAAI,CAAC;QACvB,MAAM,GAAG,KAAK,CAAC;QACf,IAAI,GAAG,GAAG,IAAI,6DAAW,CACvB,MAAM,EACN,IAAI,CAAC,OAAO,GAAG,2BAA2B,EAC1C,MAAM,EACN;YACE,OAAO,EAAE,SAAS;YAClB,MAAM,EAAE,QAAQ;YAChB,YAAY,EAAE,MAAM;SACrB,CAAC,CAAC;QAEL,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAM,GAAG,CAAC,CAAC,IAAI,CACrC,sDAAQ,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,YAAY,8DAAY,CAAC,EAC1C,mDAAK,CAAC,CAAC,EAAE,EAAE,EAAE;YACX,OAAO,EAAgC,CAAC;QAC1C,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;IACD;;OAEG;IACH,4BAA4B,CAAC,KAA6B;QACxD,OAAO,IAAI,CAAC,oCAAoC,CAAC,KAAK,CAAC,CAAC,IAAI,CAC1D,mDAAK,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,IAAY,CAAC,CAC7B,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,iDAAiD,CAAC,cAA6B;QAC7E,IAAI,QAAQ,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;QAChC,IAAI,SAAS,GAAG,IAAI,6DAAW,EAAE,CAAC;QAClC,IAAI,MAAM,GAAQ,IAAI,CAAC;QAEvB,IAAI,GAAG,GAAG,IAAI,6DAAW,CACvB,KAAK,EACL,IAAI,CAAC,OAAO,GAAG,6BAA6B,kBAAkB,CAAC,cAAc,CAAC,EAAE,EAChF,MAAM,EACN;YACE,OAAO,EAAE,SAAS;YAClB,MAAM,EAAE,QAAQ;YAChB,YAAY,EAAE,MAAM;SACrB,CAAC,CAAC;QAEL,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAM,GAAG,CAAC,CAAC,IAAI,CACrC,sDAAQ,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,YAAY,8DAAY,CAAC,EAC1C,mDAAK,CAAC,CAAC,EAAE,EAAE,EAAE;YACX,OAAO,EAAgC,CAAC;QAC1C,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;IACD;;OAEG;IACH,yCAAyC,CAAC,cAA6B;QACrE,OAAO,IAAI,CAAC,iDAAiD,CAAC,cAAc,CAAC,CAAC,IAAI,CAChF,mDAAK,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,IAAY,CAAC,CAC7B,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,4DAA4D,CAAC,cAA6B;QACxF,IAAI,QAAQ,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;QAChC,IAAI,SAAS,GAAG,IAAI,6DAAW,EAAE,CAAC;QAClC,IAAI,MAAM,GAAQ,IAAI,CAAC;QAEvB,IAAI,GAAG,GAAG,IAAI,6DAAW,CACvB,KAAK,EACL,IAAI,CAAC,OAAO,GAAG,kCAAkC,kBAAkB,CAAC,cAAc,CAAC,EAAE,EACrF,MAAM,EACN;YACE,OAAO,EAAE,SAAS;YAClB,MAAM,EAAE,QAAQ;YAChB,YAAY,EAAE,MAAM;SACrB,CAAC,CAAC;QAEL,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAM,GAAG,CAAC,CAAC,IAAI,CACrC,sDAAQ,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,YAAY,8DAAY,CAAC,EAC1C,mDAAK,CAAC,CAAC,EAAE,EAAE,EAAE;YACX,OAAO,EAAgC,CAAC;QAC1C,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;IACD;;OAEG;IACH,oDAAoD,CAAC,cAA6B;QAChF,OAAO,IAAI,CAAC,4DAA4D,CAAC,cAAc,CAAC,CAAC,IAAI,CAC3F,mDAAK,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,IAAY,CAAC,CAC7B,CAAC;IACJ,CAAC;IACD,wCAAwC;QACtC,IAAI,QAAQ,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;QAChC,IAAI,SAAS,GAAG,IAAI,6DAAW,EAAE,CAAC;QAClC,IAAI,MAAM,GAAQ,IAAI,CAAC;QACvB,IAAI,GAAG,GAAG,IAAI,6DAAW,CACvB,KAAK,EACL,IAAI,CAAC,OAAO,GAAG,4BAA4B,EAC3C,MAAM,EACN;YACE,OAAO,EAAE,SAAS;YAClB,MAAM,EAAE,QAAQ;YAChB,YAAY,EAAE,MAAM;SACrB,CAAC,CAAC;QAEL,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAM,GAAG,CAAC,CAAC,IAAI,CACrC,sDAAQ,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,YAAY,8DAAY,CAAC,EAC1C,mDAAK,CAAC,CAAC,EAAE,EAAE,EAAE;YACX,OAAO,EAAgC,CAAC;QAC1C,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;IAAE,gCAAgC;QACjC,OAAO,IAAI,CAAC,wCAAwC,EAAE,CAAC,IAAI,CACzD,mDAAK,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,IAAY,CAAC,CAC7B,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,mCAAmC,CAAC,uBAAgD;QAClF,IAAI,QAAQ,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;QAChC,IAAI,SAAS,GAAG,IAAI,6DAAW,EAAE,CAAC;QAClC,IAAI,MAAM,GAAQ,IAAI,CAAC;QACvB,MAAM,GAAG,uBAAuB,CAAC;QACjC,IAAI,GAAG,GAAG,IAAI,6DAAW,CACvB,MAAM,EACN,IAAI,CAAC,OAAO,GAAG,0BAA0B,EACzC,MAAM,EACN;YACE,OAAO,EAAE,SAAS;YAClB,MAAM,EAAE,QAAQ;YAChB,YAAY,EAAE,MAAM;SACrB,CAAC,CAAC;QAEL,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAM,GAAG,CAAC,CAAC,IAAI,CACrC,sDAAQ,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,YAAY,8DAAY,CAAC,EAC1C,mDAAK,CAAC,CAAC,EAAE,EAAE,EAAE;YACX,OAAQ,EAAwB,CAAC,KAAK,CAAC,EAAE,IAAI,EAAG,EAAwB,CAAC,IAAI,KAAK,MAAM,EAAE,CAAkC;QAC9H,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;IACD;;OAEG;IACH,2BAA2B,CAAC,uBAAgD;QAC1E,OAAO,IAAI,CAAC,mCAAmC,CAAC,uBAAuB,CAAC,CAAC,IAAI,CAC3E,mDAAK,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,IAAe,CAAC,CAChC,CAAC;IACJ,CAAC;IAED;;;;;;OAMG;IACH,wCAAwC,CAAC,MAAiE;QACxG,IAAI,QAAQ,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;QAChC,IAAI,SAAS,GAAG,IAAI,6DAAW,EAAE,CAAC;QAClC,IAAI,MAAM,GAAQ,IAAI,CAAC;QACvB,IAAI,MAAM,CAAC,OAAO,IAAI,IAAI;YAAE,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC,SAAS,EAAE,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;QAC1F,IAAI,MAAM,CAAC,KAAK,IAAI,IAAI;YAAE,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;QACpF,IAAI,GAAG,GAAG,IAAI,6DAAW,CACvB,KAAK,EACL,IAAI,CAAC,OAAO,GAAG,2BAA2B,EAC1C,MAAM,EACN;YACE,OAAO,EAAE,SAAS;YAClB,MAAM,EAAE,QAAQ;YAChB,YAAY,EAAE,MAAM;SACrB,CAAC,CAAC;QAEL,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAM,GAAG,CAAC,CAAC,IAAI,CACrC,sDAAQ,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,YAAY,8DAAY,CAAC,EAC1C,mDAAK,CAAC,CAAC,EAAE,EAAE,EAAE;YACX,OAAO,EAAgC,CAAC;QAC1C,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;IACD;;;;;;OAMG;IACH,gCAAgC,CAAC,MAAiE;QAChG,OAAO,IAAI,CAAC,wCAAwC,CAAC,MAAM,CAAC,CAAC,IAAI,CAC/D,mDAAK,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,IAAY,CAAC,CAC7B,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,gCAAgC,CAAC,YAAkC;QACjE,IAAI,QAAQ,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;QAChC,IAAI,SAAS,GAAG,IAAI,6DAAW,EAAE,CAAC;QAClC,IAAI,MAAM,GAAQ,IAAI,CAAC;QACvB,MAAM,GAAG,YAAY,CAAC;QACtB,IAAI,GAAG,GAAG,IAAI,6DAAW,CACvB,MAAM,EACN,IAAI,CAAC,OAAO,GAAG,uBAAuB,EACtC,MAAM,EACN;YACE,OAAO,EAAE,SAAS;YAClB,MAAM,EAAE,QAAQ;YAChB,YAAY,EAAE,MAAM;SACrB,CAAC,CAAC;QAEL,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAM,GAAG,CAAC,CAAC,IAAI,CACrC,sDAAQ,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,YAAY,8DAAY,CAAC,EAC1C,mDAAK,CAAC,CAAC,EAAE,EAAE,EAAE;YACX,OAAO,EAAgC,CAAC;QAC1C,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;IACD;;OAEG;IACH,wBAAwB,CAAC,YAAkC;QACzD,OAAO,IAAI,CAAC,gCAAgC,CAAC,YAAY,CAAC,CAAC,IAAI,CAC7D,mDAAK,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,IAAY,CAAC,CAC7B,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,iCAAiC,CAAC,cAAsB;QACtD,IAAI,QAAQ,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;QAChC,IAAI,SAAS,GAAG,IAAI,6DAAW,EAAE,CAAC;QAClC,IAAI,MAAM,GAAQ,IAAI,CAAC;QAEvB,IAAI,GAAG,GAAG,IAAI,6DAAW,CACvB,KAAK,EACL,IAAI,CAAC,OAAO,GAAG,uBAAuB,kBAAkB,CAAC,cAAc,CAAC,EAAE,EAC1E,MAAM,EACN;YACE,OAAO,EAAE,SAAS;YAClB,MAAM,EAAE,QAAQ;YAChB,YAAY,EAAE,MAAM;SACrB,CAAC,CAAC;QAEL,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAM,GAAG,CAAC,CAAC,IAAI,CACrC,sDAAQ,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,YAAY,8DAAY,CAAC,EAC1C,mDAAK,CAAC,CAAC,EAAE,EAAE,EAAE;YACX,OAAO,EAA+C,CAAC;QACzD,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;IACD;;OAEG;IACH,yBAAyB,CAAC,cAAsB;QAC9C,OAAO,IAAI,CAAC,iCAAiC,CAAC,cAAc,CAAC,CAAC,IAAI,CAChE,mDAAK,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,IAA2B,CAAC,CAC5C,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,qCAAqC,CAAC,eAA8B;QAClE,IAAI,QAAQ,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;QAChC,IAAI,SAAS,GAAG,IAAI,6DAAW,EAAE,CAAC;QAClC,IAAI,MAAM,GAAQ,IAAI,CAAC;QACvB,MAAM,GAAG,eAAe,CAAC;QACzB,IAAI,GAAG,GAAG,IAAI,6DAAW,CACvB,MAAM,EACN,IAAI,CAAC,OAAO,GAAG,4BAA4B,EAC3C,MAAM,EACN;YACE,OAAO,EAAE,SAAS;YAClB,MAAM,EAAE,QAAQ;YAChB,YAAY,EAAE,MAAM;SACrB,CAAC,CAAC;QAEL,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAM,GAAG,CAAC,CAAC,IAAI,CACrC,sDAAQ,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,YAAY,8DAAY,CAAC,EAC1C,mDAAK,CAAC,CAAC,EAAE,EAAE,EAAE;YACX,OAAO,EAAgC,CAAC;QAC1C,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;IACD;;OAEG;IACH,6BAA6B,CAAC,eAA8B;QAC1D,OAAO,IAAI,CAAC,qCAAqC,CAAC,eAAe,CAAC,CAAC,IAAI,CACrE,mDAAK,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,IAAY,CAAC,CAC7B,CAAC;IACJ,CAAC;;AA5hBe,6CAA0B,GAAG,kBAAmB;AAChD,uDAAoC,GAAG,4BAA6B;AACpE,8CAA2B,GAAG,mBAAoB;AAClD,kEAA+C,GAAG,iCAAkC;AACpF,6CAA0B,GAAG,wBAAyB;AACtD,qCAAkB,GAAG,iBAAkB;AACvC,mDAAgC,GAAG,2BAA4B;AAC/D,gEAA6C,GAAG,4CAA6C;AAC7F,2EAAwD,GAAG,iDAAkD;AAC7G,uDAAoC,GAAG,4BAA6B;AACpE,kDAA+B,GAAG,0BAA2B;AAC7D,uDAAoC,GAAG,2BAA4B;AACnE,+CAA4B,GAAG,uBAAwB;AACvD,gDAA6B,GAAG,sCAAuC;AACvE,oDAAiC,GAAG,4BAA6B;oFAf7E,kBAAkB;mHAAlB,kBAAkB,WAAlB,kBAAkB,mBAFV,MAAM;AA6jBS;;;;;;;;;;;;;;;;;;;;;;AC1kB6D;AAC3B;AAIG;;;;AASlE,MAGM,cAAe,SAAQ,sDAAa;IAOxC,YACE,MAAuB,EACvB,IAAgB;QAEhB,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IACtB,CAAC;IAED;;OAEG;IACH,gCAAgC,CAAC,KAA+B;QAC9D,IAAI,QAAQ,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;QAChC,IAAI,SAAS,GAAG,IAAI,6DAAW,EAAE,CAAC;QAClC,IAAI,MAAM,GAAQ,IAAI,CAAC;QACvB,MAAM,GAAG,KAAK,CAAC;QACf,IAAI,GAAG,GAAG,IAAI,6DAAW,CACvB,MAAM,EACN,IAAI,CAAC,OAAO,GAAG,4BAA4B,EAC3C,MAAM,EACN;YACE,OAAO,EAAE,SAAS;YAClB,MAAM,EAAE,QAAQ;YAChB,YAAY,EAAE,MAAM;SACrB,CAAC,CAAC;QAEL,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAM,GAAG,CAAC,CAAC,IAAI,CACrC,sDAAQ,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,YAAY,8DAAY,CAAC,EAC1C,mDAAK,CAAC,CAAC,EAAE,EAAE,EAAE;YACX,OAAO,EAA+C,CAAC;QACzD,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;IACD;;OAEG;IACH,wBAAwB,CAAC,KAA+B;QACtD,OAAO,IAAI,CAAC,gCAAgC,CAAC,KAAK,CAAC,CAAC,IAAI,CACtD,mDAAK,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,IAA2B,CAAC,CAC5C,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,iCAAiC,CAAC,KAAgC;QAChE,IAAI,QAAQ,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;QAChC,IAAI,SAAS,GAAG,IAAI,6DAAW,EAAE,CAAC;QAClC,IAAI,MAAM,GAAQ,IAAI,CAAC;QACvB,MAAM,GAAG,KAAK,CAAC;QACf,IAAI,GAAG,GAAG,IAAI,6DAAW,CACvB,MAAM,EACN,IAAI,CAAC,OAAO,GAAG,6BAA6B,EAC5C,MAAM,EACN;YACE,OAAO,EAAE,SAAS;YAClB,MAAM,EAAE,QAAQ;YAChB,YAAY,EAAE,MAAM;SACrB,CAAC,CAAC;QAEL,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAM,GAAG,CAAC,CAAC,IAAI,CACrC,sDAAQ,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,YAAY,8DAAY,CAAC,EAC1C,mDAAK,CAAC,CAAC,EAAE,EAAE,EAAE;YACX,OAAO,EAA6C,CAAC;QACvD,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;IACD;;OAEG;IACH,yBAAyB,CAAC,KAAgC;QACxD,OAAO,IAAI,CAAC,iCAAiC,CAAC,KAAK,CAAC,CAAC,IAAI,CACvD,mDAAK,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,IAAyB,CAAC,CAC1C,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,qCAAqC,CAAC,cAAuC;QAC3E,IAAI,QAAQ,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;QAChC,IAAI,SAAS,GAAG,IAAI,6DAAW,EAAE,CAAC;QAClC,IAAI,MAAM,GAAQ,IAAI,CAAC;QACvB,MAAM,GAAG,cAAc,CAAC;QACxB,IAAI,GAAG,GAAG,IAAI,6DAAW,CACvB,MAAM,EACN,IAAI,CAAC,OAAO,GAAG,gCAAgC,EAC/C,MAAM,EACN;YACE,OAAO,EAAE,SAAS;YAClB,MAAM,EAAE,QAAQ;YAChB,YAAY,EAAE,MAAM;SACrB,CAAC,CAAC;QAEL,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAM,GAAG,CAAC,CAAC,IAAI,CACrC,sDAAQ,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,YAAY,8DAAY,CAAC,EAC1C,mDAAK,CAAC,CAAC,EAAE,EAAE,EAAE;YACX,OAAO,EAA6C,CAAC;QACvD,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;IACD;;OAEG;IACH,6BAA6B,CAAC,cAAuC;QACnE,OAAO,IAAI,CAAC,qCAAqC,CAAC,cAAc,CAAC,CAAC,IAAI,CACpE,mDAAK,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,IAAyB,CAAC,CAC1C,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,+BAA+B,CAAC,KAAqC;QACnE,IAAI,QAAQ,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;QAChC,IAAI,SAAS,GAAG,IAAI,6DAAW,EAAE,CAAC;QAClC,IAAI,MAAM,GAAQ,IAAI,CAAC;QACvB,MAAM,GAAG,KAAK,CAAC;QACf,IAAI,GAAG,GAAG,IAAI,6DAAW,CACvB,MAAM,EACN,IAAI,CAAC,OAAO,GAAG,2BAA2B,EAC1C,MAAM,EACN;YACE,OAAO,EAAE,SAAS;YAClB,MAAM,EAAE,QAAQ;YAChB,YAAY,EAAE,MAAM;SACrB,CAAC,CAAC;QAEL,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAM,GAAG,CAAC,CAAC,IAAI,CACrC,sDAAQ,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,YAAY,8DAAY,CAAC,EAC1C,mDAAK,CAAC,CAAC,EAAE,EAAE,EAAE;YACX,OAAO,EAAgC,CAAC;QAC1C,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;IACD;;OAEG;IACH,uBAAuB,CAAC,KAAqC;QAC3D,OAAO,IAAI,CAAC,+BAA+B,CAAC,KAAK,CAAC,CAAC,IAAI,CACrD,mDAAK,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,IAAY,CAAC,CAC7B,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,8BAA8B,CAAC,cAAsC;QACnE,IAAI,QAAQ,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;QAChC,IAAI,SAAS,GAAG,IAAI,6DAAW,EAAE,CAAC;QAClC,IAAI,MAAM,GAAQ,IAAI,CAAC;QACvB,MAAM,GAAG,cAAc,CAAC;QACxB,IAAI,GAAG,GAAG,IAAI,6DAAW,CACvB,MAAM,EACN,IAAI,CAAC,OAAO,GAAG,0BAA0B,EACzC,MAAM,EACN;YACE,OAAO,EAAE,SAAS;YAClB,MAAM,EAAE,QAAQ;YAChB,YAAY,EAAE,MAAM;SACrB,CAAC,CAAC;QAEL,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAM,GAAG,CAAC,CAAC,IAAI,CACrC,sDAAQ,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,YAAY,8DAAY,CAAC,EAC1C,mDAAK,CAAC,CAAC,EAAE,EAAE,EAAE;YACX,OAAO,EAA6C,CAAC;QACvD,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;IACD;;OAEG;IACH,sBAAsB,CAAC,cAAsC;QAC3D,OAAO,IAAI,CAAC,8BAA8B,CAAC,cAAc,CAAC,CAAC,IAAI,CAC7D,mDAAK,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,IAAyB,CAAC,CAC1C,CAAC;IACJ,CAAC;;AArLe,2CAA4B,GAAG,4BAA6B;AAC5D,4CAA6B,GAAG,6BAA8B;AAC9D,gDAAiC,GAAG,gCAAiC;AACrE,0CAA2B,GAAG,2BAA4B;AAC1D,yCAA0B,GAAG,0BAA2B;4EALpE,cAAc;+GAAd,cAAc,WAAd,cAAc,mBAFN,MAAM;AA8LK;;;;;;;;;;;;;;;;;;;;;;AC7MiE;AAC3B;AAIG;;;;AAElE,MAGM,eAAgB,SAAQ,sDAAa;IAGzC,YACE,MAAuB,EACvB,IAAgB;QAEhB,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IACtB,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAsDG;IACH,oBAAoB,CAAC,MAA0C;QAC7D,IAAI,QAAQ,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;QAChC,IAAI,SAAS,GAAG,IAAI,6DAAW,EAAE,CAAC;QAClC,IAAI,MAAM,GAAQ,IAAI,CAAC;QACvB,IAAI,UAAU,GAAG,IAAI,QAAQ,EAAE,CAAC;QAChC,MAAM,GAAG,UAAU,CAAC;QACpB,IAAI,MAAM,CAAC,GAAG,IAAI,IAAI,EAAE;YAAE,UAAU,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,GAAoB,CAAC,CAAC;SAAC;QACjF,IAAI,MAAM,CAAC,KAAK,IAAI,IAAI,EAAE;YAAE,UAAU,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,KAAsB,CAAC,CAAC;SAAC;QACvF,IAAI,MAAM,CAAC,QAAQ,IAAI,IAAI,EAAE;YAAE,UAAU,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,QAAyB,CAAC,CAAC;SAAC;QAChG,IAAI,MAAM,CAAC,MAAM,IAAI,IAAI,EAAE;YAAE,UAAU,CAAC,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;SAAC;QACzF,IAAI,MAAM,CAAC,kBAAkB,IAAI,IAAI,EAAE;YAAE,UAAU,CAAC,MAAM,CAAC,oBAAoB,EAAE,MAAM,CAAC,kBAAmC,CAAC,CAAC;SAAC;QAC9H,IAAI,MAAM,CAAC,iBAAiB,IAAI,IAAI,EAAE;YAAE,UAAU,CAAC,MAAM,CAAC,mBAAmB,EAAE,MAAM,CAAC,iBAAkC,CAAC,CAAC;SAAC;QAC3H,IAAI,MAAM,CAAC,aAAa,IAAI,IAAI,EAAE;YAAE,UAAU,CAAC,MAAM,CAAC,eAAe,EAAE,MAAM,CAAC,aAA8B,CAAC,CAAC;SAAC;QAC/G,IAAI,MAAM,CAAC,YAAY,IAAI,IAAI,EAAE;YAAE,UAAU,CAAC,MAAM,CAAC,cAAc,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC;SAAC;QAC3G,IAAI,MAAM,CAAC,cAAc,IAAI,IAAI,EAAE;YAAE,UAAU,CAAC,MAAM,CAAC,gBAAgB,EAAE,MAAM,CAAC,cAA+B,CAAC,CAAC;SAAC;QAClH,IAAI,MAAM,CAAC,cAAc,IAAI,IAAI,EAAE;YAAE,UAAU,CAAC,MAAM,CAAC,gBAAgB,EAAE,MAAM,CAAC,cAA+B,CAAC,CAAC;SAAC;QAClH,IAAI,MAAM,CAAC,WAAW,IAAI,IAAI,EAAE;YAAE,UAAU,CAAC,MAAM,CAAC,aAAa,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC;SAAC;QACxG,IAAI,MAAM,CAAC,UAAU,IAAI,IAAI,EAAE;YAAE,UAAU,CAAC,MAAM,CAAC,YAAY,EAAE,MAAM,CAAC,UAA2B,CAAC,CAAC;SAAC;QACtG,IAAI,MAAM,CAAC,UAAU,IAAI,IAAI,EAAE;YAAE,UAAU,CAAC,MAAM,CAAC,YAAY,EAAE,MAAM,CAAC,UAA2B,CAAC,CAAC;SAAC;QACtG,IAAI,MAAM,CAAC,MAAM,IAAI,IAAI,EAAE;YAAE,UAAU,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAuB,CAAC,CAAC;SAAC;QAC1F,IAAI,MAAM,CAAC,aAAa,IAAI,IAAI,EAAE;YAAE,UAAU,CAAC,MAAM,CAAC,eAAe,EAAE,MAAM,CAAC,aAA8B,CAAC,CAAC;SAAC;QAC/G,IAAI,MAAM,CAAC,WAAW,IAAI,IAAI,EAAE;YAAE,UAAU,CAAC,MAAM,CAAC,aAAa,EAAE,MAAM,CAAC,WAA4B,CAAC,CAAC;SAAC;QACzG,IAAI,MAAM,CAAC,QAAQ,IAAI,IAAI,EAAE;YAAE,UAAU,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,QAAyB,CAAC,CAAC;SAAC;QAChG,IAAI,MAAM,CAAC,SAAS,IAAI,IAAI,EAAE;YAAE,UAAU,CAAC,MAAM,CAAC,WAAW,EAAE,MAAM,CAAC,SAA0B,CAAC,CAAC;SAAC;QACnG,IAAI,MAAM,CAAC,YAAY,IAAI,IAAI,EAAE;YAAE,UAAU,CAAC,MAAM,CAAC,cAAc,EAAE,MAAM,CAAC,YAA6B,CAAC,CAAC;SAAC;QAC5G,IAAI,MAAM,CAAC,aAAa,IAAI,IAAI,EAAE;YAAE,UAAU,CAAC,MAAM,CAAC,eAAe,EAAE,MAAM,CAAC,aAA8B,CAAC,CAAC;SAAC;QAC/G,IAAI,MAAM,CAAC,MAAM,IAAI,IAAI,EAAE;YAAE,UAAU,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAuB,CAAC,CAAC;SAAC;QAC1F,IAAI,MAAM,CAAC,uBAAuB,IAAI,IAAI,EAAE;YAAE,UAAU,CAAC,MAAM,CAAC,yBAAyB,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,uBAAuB,CAAC,CAAC,CAAC;SAAC;QAC5I,IAAI,MAAM,CAAC,GAAG,IAAI,IAAI,EAAE;YAAE,UAAU,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,GAAoB,CAAC,CAAC;SAAC;QACjF,IAAI,MAAM,CAAC,YAAY,IAAI,IAAI,EAAE;YAAE,UAAU,CAAC,MAAM,CAAC,cAAc,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC;SAAC;QAC3G,IAAI,MAAM,CAAC,KAAK,IAAI,IAAI,EAAE;YAAE,UAAU,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,KAAsB,CAAC,CAAC;SAAC;QACvF,IAAI,MAAM,CAAC,kBAAkB,IAAI,IAAI,EAAE;YAAE,UAAU,CAAC,MAAM,CAAC,oBAAoB,EAAE,MAAM,CAAC,kBAAmC,CAAC,CAAC;SAAC;QAC9H,IAAI,GAAG,GAAG,IAAI,6DAAW,CACvB,MAAM,EACN,IAAI,CAAC,OAAO,GAAG,WAAW,EAC1B,MAAM,EACN;YACE,OAAO,EAAE,SAAS;YAClB,MAAM,EAAE,QAAQ;YAChB,YAAY,EAAE,MAAM;SACrB,CAAC,CAAC;QAEL,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAM,GAAG,CAAC,CAAC,IAAI,CACrC,sDAAQ,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,YAAY,8DAAY,CAAC,EAC1C,mDAAK,CAAC,CAAC,EAAE,EAAE,EAAE;YACX,OAAO,EAAgC,CAAC;QAC1C,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;IACD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAsDG;IACH,YAAY,CAAC,MAA0C;QACrD,OAAO,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC,IAAI,CAC3C,mDAAK,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,IAAY,CAAC,CAC7B,CAAC;IACJ,CAAC;;AA5Ke,gCAAgB,GAAG,WAAY;8EAD3C,eAAe;gHAAf,eAAe,WAAf,eAAe,mBAFP,MAAM;AAqNM;;;;;;;;;;;;;;;;;;;;;;AC7NgE;AAC3B;AAIG;;;;AAElE,MAGM,mBAAoB,SAAQ,sDAAa;IAG7C,YACE,MAAuB,EACvB,IAAgB;QAEhB,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IACtB,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAsDG;IACH,wBAAwB,CAAC,MAAkD;QACzE,IAAI,QAAQ,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;QAChC,IAAI,SAAS,GAAG,IAAI,6DAAW,EAAE,CAAC;QAClC,IAAI,MAAM,GAAQ,IAAI,CAAC;QACvB,IAAI,UAAU,GAAG,IAAI,QAAQ,EAAE,CAAC;QAChC,MAAM,GAAG,UAAU,CAAC;QACpB,IAAI,MAAM,CAAC,GAAG,IAAI,IAAI,EAAE;YAAE,UAAU,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,GAAoB,CAAC,CAAC;SAAC;QACjF,IAAI,MAAM,CAAC,KAAK,IAAI,IAAI,EAAE;YAAE,UAAU,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,KAAsB,CAAC,CAAC;SAAC;QACvF,IAAI,MAAM,CAAC,QAAQ,IAAI,IAAI,EAAE;YAAE,UAAU,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,QAAyB,CAAC,CAAC;SAAC;QAChG,IAAI,MAAM,CAAC,MAAM,IAAI,IAAI,EAAE;YAAE,UAAU,CAAC,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;SAAC;QACzF,IAAI,MAAM,CAAC,kBAAkB,IAAI,IAAI,EAAE;YAAE,UAAU,CAAC,MAAM,CAAC,oBAAoB,EAAE,MAAM,CAAC,kBAAmC,CAAC,CAAC;SAAC;QAC9H,IAAI,MAAM,CAAC,iBAAiB,IAAI,IAAI,EAAE;YAAE,UAAU,CAAC,MAAM,CAAC,mBAAmB,EAAE,MAAM,CAAC,iBAAkC,CAAC,CAAC;SAAC;QAC3H,IAAI,MAAM,CAAC,aAAa,IAAI,IAAI,EAAE;YAAE,UAAU,CAAC,MAAM,CAAC,eAAe,EAAE,MAAM,CAAC,aAA8B,CAAC,CAAC;SAAC;QAC/G,IAAI,MAAM,CAAC,YAAY,IAAI,IAAI,EAAE;YAAE,UAAU,CAAC,MAAM,CAAC,cAAc,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC;SAAC;QAC3G,IAAI,MAAM,CAAC,cAAc,IAAI,IAAI,EAAE;YAAE,UAAU,CAAC,MAAM,CAAC,gBAAgB,EAAE,MAAM,CAAC,cAA+B,CAAC,CAAC;SAAC;QAClH,IAAI,MAAM,CAAC,cAAc,IAAI,IAAI,EAAE;YAAE,UAAU,CAAC,MAAM,CAAC,gBAAgB,EAAE,MAAM,CAAC,cAA+B,CAAC,CAAC;SAAC;QAClH,IAAI,MAAM,CAAC,WAAW,IAAI,IAAI,EAAE;YAAE,UAAU,CAAC,MAAM,CAAC,aAAa,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC;SAAC;QACxG,IAAI,MAAM,CAAC,UAAU,IAAI,IAAI,EAAE;YAAE,UAAU,CAAC,MAAM,CAAC,YAAY,EAAE,MAAM,CAAC,UAA2B,CAAC,CAAC;SAAC;QACtG,IAAI,MAAM,CAAC,UAAU,IAAI,IAAI,EAAE;YAAE,UAAU,CAAC,MAAM,CAAC,YAAY,EAAE,MAAM,CAAC,UAA2B,CAAC,CAAC;SAAC;QACtG,IAAI,MAAM,CAAC,MAAM,IAAI,IAAI,EAAE;YAAE,UAAU,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAuB,CAAC,CAAC;SAAC;QAC1F,IAAI,MAAM,CAAC,aAAa,IAAI,IAAI,EAAE;YAAE,UAAU,CAAC,MAAM,CAAC,eAAe,EAAE,MAAM,CAAC,aAA8B,CAAC,CAAC;SAAC;QAC/G,IAAI,MAAM,CAAC,WAAW,IAAI,IAAI,EAAE;YAAE,UAAU,CAAC,MAAM,CAAC,aAAa,EAAE,MAAM,CAAC,WAA4B,CAAC,CAAC;SAAC;QACzG,IAAI,MAAM,CAAC,QAAQ,IAAI,IAAI,EAAE;YAAE,UAAU,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,QAAyB,CAAC,CAAC;SAAC;QAChG,IAAI,MAAM,CAAC,SAAS,IAAI,IAAI,EAAE;YAAE,UAAU,CAAC,MAAM,CAAC,WAAW,EAAE,MAAM,CAAC,SAA0B,CAAC,CAAC;SAAC;QACnG,IAAI,MAAM,CAAC,YAAY,IAAI,IAAI,EAAE;YAAE,UAAU,CAAC,MAAM,CAAC,cAAc,EAAE,MAAM,CAAC,YAA6B,CAAC,CAAC;SAAC;QAC5G,IAAI,MAAM,CAAC,aAAa,IAAI,IAAI,EAAE;YAAE,UAAU,CAAC,MAAM,CAAC,eAAe,EAAE,MAAM,CAAC,aAA8B,CAAC,CAAC;SAAC;QAC/G,IAAI,MAAM,CAAC,MAAM,IAAI,IAAI,EAAE;YAAE,UAAU,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAuB,CAAC,CAAC;SAAC;QAC1F,IAAI,MAAM,CAAC,uBAAuB,IAAI,IAAI,EAAE;YAAE,UAAU,CAAC,MAAM,CAAC,yBAAyB,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,uBAAuB,CAAC,CAAC,CAAC;SAAC;QAC5I,IAAI,MAAM,CAAC,GAAG,IAAI,IAAI,EAAE;YAAE,UAAU,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,GAAoB,CAAC,CAAC;SAAC;QACjF,IAAI,MAAM,CAAC,YAAY,IAAI,IAAI,EAAE;YAAE,UAAU,CAAC,MAAM,CAAC,cAAc,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC;SAAC;QAC3G,IAAI,MAAM,CAAC,KAAK,IAAI,IAAI,EAAE;YAAE,UAAU,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,KAAsB,CAAC,CAAC;SAAC;QACvF,IAAI,MAAM,CAAC,kBAAkB,IAAI,IAAI,EAAE;YAAE,UAAU,CAAC,MAAM,CAAC,oBAAoB,EAAE,MAAM,CAAC,kBAAmC,CAAC,CAAC;SAAC;QAC9H,IAAI,GAAG,GAAG,IAAI,6DAAW,CACvB,MAAM,EACN,IAAI,CAAC,OAAO,GAAG,eAAe,EAC9B,MAAM,EACN;YACE,OAAO,EAAE,SAAS;YAClB,MAAM,EAAE,QAAQ;YAChB,YAAY,EAAE,MAAM;SACrB,CAAC,CAAC;QAEL,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAM,GAAG,CAAC,CAAC,IAAI,CACrC,sDAAQ,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,YAAY,8DAAY,CAAC,EAC1C,mDAAK,CAAC,CAAC,EAAE,EAAE,EAAE;YACX,OAAO,EAAgC,CAAC;QAC1C,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;IACD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAsDG;IACH,gBAAgB,CAAC,MAAkD;QACjE,OAAO,IAAI,CAAC,wBAAwB,CAAC,MAAM,CAAC,CAAC,IAAI,CAC/C,mDAAK,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,IAAY,CAAC,CAC7B,CAAC;IACJ,CAAC;;AA5Ke,wCAAoB,GAAG,eAAgB;sFADnD,mBAAmB;oHAAnB,mBAAmB,WAAnB,mBAAmB,mBAFX,MAAM;AAqNU;;;;;;;;;;;;;;;;;;;;;;;AC9NiB;AACyC;AACU;AAC7B;AACY;AACkC;;;AA+B5G,MAAM,gBAAgB;;gFAAhB,gBAAgB;6GAAhB,gBAAgB;iHA3BrB,iEAAoB,CAAC;YACjB;gBACI,IAAI,EAAE,OAAO;gBACb,SAAS,EAAE,4HAA+B;aAC7C;YACD;gBACI,IAAI,EAAE,aAAa;gBACnB,SAAS,EAAE,2GAA0B;aACxC;YACD;gBACI,IAAI,EAAE,QAAQ;gBACd,SAAS,EAAE,0FAAgB;aAC9B;YACD;gBACI,IAAI,EAAE,aAAa;gBACnB,SAAS,EAAE,8EAAgB;aAC9B;YACD;gBACI,IAAI,EAAE,IAAI;gBACV,SAAS,EAAE,iGAAoB;aAClC;SACJ,CAAC,EAGF,yDAAY;mIAGP,gBAAgB,oFAHrB,yDAAY;;;;;;;;;;;;;;;;;;;;;;;;AC3Bb,MAAM,YAAY;;wEAAZ,YAAY;0GAAZ,YAAY;QCPzB,yEAAkB;QACd,oEAAiB;QAGrB,4DAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACJoD;AAEqB;AACvB;AACT;AACL;AACI;AACa;AACf;AAEY;AACD;AACD;AAEK;AACwB;AACZ;AAExB;AACoB;AACA;AACkB;AACe;AACd;AACK;AACoB;AACd;AACT;AAC2B;AACjB;AACH;AACV;AACJ;AACF;AAC6C;AACvD;AACE;;;;;;AA4ChE,MAAM,SAAS;;kEAAT,SAAS;uGAAT,SAAS,cAFN,wDAAY;2GAtCpB,qEAAa;QACb,0DAAY;QACZ,iEAAgB;QAChB,6DAAmB,CAAC,sEAAU,EAAE,gFAAoB,CAAC;QACrD,iEAAqB,CAAC,gFAAoB,CAAC;QAC3C,iFAA8B,CAAC;YAC3B,MAAM,EAAE,EAAE;YACV,OAAO,EAAE,gFAAsB;SAClC,CAAC;QACF,0FAAuB;QACvB,mEAAgB;QAChB,yEAAqB,CAAC,EAAE,OAAO,EAAE,gFAAsB,EAAE,CAAC;QAC1D,uDAAW;QACX,+DAAY;oIA2BP,SAAS,mBAxBd,wDAAY;QACZ,4EAAe;QACf,4EAAe;QACf,kGAAoB;QACpB,6HAA+B;QAC/B,4GAA0B;QAC1B,8FAAmB;QACnB,8GAAoB;QACpB,gGAAgB;QAChB,qGAAqB;QACrB,yHAAuB;QACvB,2GAAmB;QACnB,2FAAgB;QAChB,+EAAgB;QAChB,yGAAuB;QACvB,sIAA6B;QAC7B,+FAAe;QACf,yFAAa;QACb,+FAAe;QACf,iFAAkB,aAnClB,qEAAa;QACb,0DAAY;QACZ,iEAAgB,oMAOhB,0FAAuB;QACvB,mEAAgB,qEAEhB,uDAAW;QACX,+DAAY;;;;;;;;;;;;;;;;;;AC9Cb,MAAM,eAAe;;8EAAf,eAAe;6GAAf,eAAe;QCP5B,yEAAoB;QACJ,4EAAiB;QAAA,4DAAM;QACnC,yEAAyB;QAIN,8DAAG;QAAA,4DAAI;QAAC,qEACf;QAAA,4DAAM;QACN,qEAAmG;QAEvG,4DAAM;QACN,0EAAwB;QACd,uEAAW;QAAA,4DAAO;QACxB,qEAA+E;QACnF,4DAAM;QAEV,2EAA6B;QACtB,oFAAwB;QAAA,4DAAI;QAC/B,4EAAmC;QAC/B,oEAA+B;QAC/B,wEAAM;QAAA,sGAA0C;QAAA,4DAAO;QAE3D,4EAAiC;QAC7B,oEAA+B;QAC/B,yEAAoC;QAAA,8EAAkB;QAAA,4DAAI;QAE9D,4EAAiC;QAC7B,oEAAgC;QAChC,yEAA2B;QAAA,wEAAY;QAAA,4DAAI;;;;;;;;;;;;;;;;;;;;;;;;IEd3C,mEAC4B;;;IAC5B,mEAC6B;;;ADVtC,MAAM,eAAe;IAL5B;QAOI,gBAAW,GAAG,KAAK,CAAC;KACvB;;8EAHY,eAAe;6GAAf,eAAe;QCP5B,yEAAoB;QAII,+DAAI;QAAA,4DAAS;QAAA,uEAAM;QAAA,mEAAQ;QAAA,4DAAO;QAE9C,oEAA6B;QAGjC,4DAAM;QACN,0EAC+B;QACnB,8KAAoC;QAExC,yGAC4B;QAC5B,0GAC6B;QACjC,4DAAS;QACT,2EAAwB;QAIN,wEAAY;QAAA,4DAAW;QACjC,wEAAM;QAAA,+DAAG;QAAA,4DAAO;;QAdvB,2DAAmC;QAAnC,2JAAmC;QAI5B,0DAAkB;QAAlB,kFAAkB;QAElB,0DAAiB;QAAjB,iFAAiB;;;;;;;;;;;;;;;;;;;;;;AChBM;AAGZ;AACY;;;AAKpC,MAAM,kBAAkB;IAI3B,YACY,MAAiB,EACC,QAAkB;QADpC,WAAM,GAAN,MAAM,CAAW;QACC,aAAQ,GAAR,QAAQ,CAAU;QAGxC,cAAS,GAAG,IAAI,yCAAO,EAAE,CAAC;IAF/B,CAAC;IAIJ,QAAQ;QAEJ,IAAI,CAAC,MAAM,CAAC,aAAa;aACpB,IAAI,CACD,yDAAS,CAAC,IAAI,CAAC,SAAS,CAAC,CAC5B;aACA,SAAS,CAAC,GAAG,EAAE;YAEZ,UAAU,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,aAAa,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;QACxF,CAAC,CAAC,CAAC;IACX,CAAC;IAED,WAAW;QAEP,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC1B,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC;IAC9B,CAAC;;oFA3BQ,kBAAkB,oMAMf,qDAAQ;gHANX,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;ACR0B;AACA;AACE;AACJ;AACI;AACA;AACI;;AAE/D,MAAM,iBAAiB,GAAG;IACtB,mEAAc;IACd,yEAAiB;IACjB,mEAAc;IACd,qEAAe;IACf,iEAAa;IACb,qEAAe;IACf,qEAAe;CAClB,CAAC;AAMK,MAAM,cAAc;;4EAAd,cAAc;2GAAd,cAAc;+GAHV,iBAAiB,EAV9B,mEAAc;QACd,yEAAiB;QACjB,mEAAc;QACd,qEAAe;QACf,iEAAa;QACb,qEAAe;QACf,qEAAe;mIAON,cAAc,cAbvB,mEAAc;QACd,yEAAiB;QACjB,mEAAc;QACd,qEAAe;QACf,iEAAa;QACb,qEAAe;QACf,qEAAe,aANf,mEAAc;QACd,yEAAiB;QACjB,mEAAc;QACd,qEAAe;QACf,iEAAa;QACb,qEAAe;QACf,qEAAe;;;;;;;;;;;;;;;;AChBZ,MAAM,aAAa,GAAG;IACzB,IAAI,EAAE;QACF,MAAM,EAAE,MAAM;KACjB;IACD,IAAI,EAAE;QACF,aAAa,EAAE,KAAK;KACvB;IACD,KAAK,EAAE;QACH,YAAY,EAAE,YAAY;QAC1B,aAAa,EAAE,SAAS;QACxB,GAAG,EAAE,OAAO;QACZ,kBAAkB,EAAE,MAAM;QAC1B,eAAe,EAAE,KAAK;QACtB,KAAK,EAAE,MAAM;QACb,aAAa,EAAE,oBAAoB;QACnC,WAAW,EAAE,MAAM;QACnB,aAAa,EAAE,KAAK;QACpB,aAAa,EAAE,KAAK;QACpB,MAAM,EAAE,MAAM;QACd,KAAK,EAAE,MAAM;QACb,MAAM,EAAE,mBAAmB;QAC3B,OAAO,EAAE,QAAQ;KACpB;IACD,aAAa,EAAE;QACX,cAAc,EAAE,MAAM;QACtB,cAAc,EAAE,KAAK;QACrB,OAAO,EAAE,OAAO;KACnB;IACD,aAAa,EAAE;QACX,cAAc,EAAE,SAAS;QACzB,cAAc,EAAE,KAAK;QACrB,KAAK,EAAE,MAAM;QACb,OAAO,EAAE,GAAG;QACZ,OAAO,EAAE,OAAO;KACnB;IACD,oBAAoB,EAAE;QAClB,KAAK,EAAE,aAAa;KACvB;IACD,KAAK,EAAE;QACH,kBAAkB,EAAE,MAAM;QAC1B,KAAK,EAAE,oBAAoB;QAC3B,aAAa,EAAE,sCAAsC;QACrD,WAAW,EAAE,MAAM;QACnB,cAAc,EAAE,MAAM;QACtB,OAAO,EAAE,OAAO;QAChB,QAAQ,EAAE,UAAU;QACpB,IAAI,EAAE,KAAK;QACX,GAAG,EAAE,KAAK;QACV,OAAO,EAAE,OAAO;KACnB;IACD,QAAQ,EAAE;QACN,GAAG,EAAE,MAAM;QACX,KAAK,EAAE,MAAM;KAChB;CACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;ACtDF;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;ICIQO,4DAAAA;IAEIA,oDAAAA;IACJA,0DAAAA;;;;;IADIA,uDAAAA;IAAAA,gEAAAA;;;;;;IAOAA,4DAAAA;IAEIA,oDAAAA;IACJA,0DAAAA;;;;;IADIA,uDAAAA;IAAAA,gEAAAA;;;;;;IAKJA,4DAAAA;IAEIA,oDAAAA;IACJA,0DAAAA;;;;;IADIA,uDAAAA;IAAAA,gEAAAA;;;;;;IAKJA,4DAAAA;IAEIA,oDAAAA;IACJA,0DAAAA;;;;;IADIA,uDAAAA;IAAAA,gEAAAA;;;;;;IAWJA,4DAAAA;IAAwEA,oDAAAA;IAAkCA,0DAAAA;;;;;;IAC1GA,4DAAAA;IAAuEA,oDAAAA;IAAiBA,0DAAAA;;;;;;IACxFA,4DAAAA;IAAqFA,oDAAAA;IAAaA,0DAAAA;;;;;;IAUlGA,4DAAAA;IAAsEA,oDAAAA;IAAiBA,0DAAAA;;;;;;IACvFA,4DAAAA;IAAmEA,oDAAAA;IAAkBA,0DAAAA;;;;AD5C3F,MAAOC,uBAAP,CAA8B;EAYhCC,YAC8BC,QAD9B,EAEYC,EAFZ,EAGYC,UAHZ,EAG8B;IAFA;IAClB;IACA;IALF,oBAAe,IAAIZ,uDAAJ,EAAf;IAQV,mBAAcM,wEAAd;IAEA,cAAc,IAAd;IACA,oBAA4C;MACxC,CAACA,oFAAD,GAA2B,cADa;MAExC,CAACA,kFAAD,GAAyB,YAFe;MAGxC,CAACA,iFAAD,GAAwB,WAHgB;MAIxC,CAACA,yFAAD,GAAgC;IAJQ,CAA5C;IAOA,yBAAiD;MAC7C,CAACA,oFAAD,GAA2B,0BADkB;MAE7C,CAACA,kFAAD,GAAyB,0BAFoB;MAG7C,CAACA,iFAAD,GAAwB,uBAHqB;MAI7C,CAACA,yFAAD,GAAgC;IAJa,CAAjD;;IAOA,4BAAwBW,KAAD,IAA+B;MAClD,OAAO,MAAM,KAAKC,iBAAL,CAAuBD,KAAvB,IACP;QAAE,CAACA,KAAD,GAAS,KAAKC,iBAAL,CAAuBD,KAAvB;MAAX,CADO,GAEP,IAFN;IAGH,CAJD;;IAMA,gBAAW,KAAKN,EAAL,CAAQQ,KAAR,CAAc;MACrBC,cAAc,EAAE,CAAC,IAAD,EAAO,CAACjB,+DAAD,EAAsBA,gEAAA,CAAqB,GAArB,CAAtB,EAAiD,KAAKoB,sBAAtD,CAAP,CADK;MAErBC,MAAM,EAAE,CAAC,KAAD,EAAQ,CAACrB,+DAAD,EAAuBsB,OAAD,IAA8B,CAACA,OAAO,CAACC,KAAT,GAAiB;QAAEC,gBAAgB,EAAE;MAApB,CAAjB,GAA8C,IAAlG,CAAR,CAFa;MAGrBC,aAAa,EAAE,CAAC,IAAD,EAAO,CAACzB,+DAAD,EAAsBA,4DAAtB,CAAP,CAHM;MAIrB,GAAG2B,MAAM,CAACC,WAAP,CACCD,MAAM,CAACE,IAAP,CAAY,KAAKC,YAAjB,EACCC,GADD,CACKC,CAAC,IAAI,CAACA,CAAD,EAAI,CAAC,IAAD,EAAO,KAAKC,oBAAL,CAA0BD,CAA1B,CAAP,CAAJ,CADV,CADD;IAJkB,CAAd,CAAX;;IA6CA,eAAWlB,KAAD,IAAmB,KAAKoB,QAAL,CAAcC,QAAd,CAAuBrB,KAAvB,EAA8BsB,OAA3D;;IACA,gBAAYtB,KAAD,IAAmB,KAAKoB,QAAL,CAAcC,QAAd,CAAuBrB,KAAvB,EAA8BuB,QAA9B,CAAuCvB,KAAvC,CAA9B;;IACA,gBAAYA,KAAD,IAAmB,KAAKoB,QAAL,CAAcC,QAAd,CAAuBrB,KAAvB,EAA8BwB,MAA9B,CAAqCxB,KAArC,CAA9B;EAxEI;;EATe,IAANyB,MAAM,CAAChB,KAAD,EAAkB;IACjC,KAAKW,QAAL,CAAcM,UAAd,CAAyBjB,KAAzB,EAAgC;MAAEkB,SAAS,EAAE;IAAb,CAAhC;EACH;;EA0CDrB,sBAAsB,CAACE,OAAD,EAAyB;IAE3C,MAAML,cAAc,GAAWK,OAAO,CAACC,KAAvC;;IAEA,IAAIN,cAAc,EAAEyB,OAAhB,CAAwB,MAAxB,EAAgC,EAAhC,EAAoCC,MAApC,IAA8C,EAAlD,EAAsD;MAClD,OAAO;QAAE,0BAA0B;MAA5B,CAAP;IACH;;IACD,OAAO,IAAP;EACH;;EAEDC,QAAQ;IAEJ,KAAKnC,UAAL,CAAgBoC,IAAhB,CAAqBC,UAArB,CAAgC,WAAhC,EAA6C,KAAKZ,QAAlD;IACA,KAAKA,QAAL,CAAca,YAAd,CAA2BC,SAA3B,CAAqChB,CAAC,IAAI,KAAKiB,YAAL,CAAkBC,IAAlB,CAAuBlB,CAAvB,CAA1C;EACH;;EAEDmB,WAAW;IAEP,KAAK1C,UAAL,CAAgBoC,IAAhB,CAAqBO,aAArB,CAAmC,WAAnC;EACH;;EAEDC,WAAW,CAACC,OAAD,EAAuB;IAE9B,IAAI,sBAAsBA,OAAtB,IAAiCA,OAAO,CAACC,gBAAR,CAAyBC,YAA9D,EAA4E;MACxE,KAAKC,eAAL;MACA,KAAKvB,QAAL,CAAcwB,KAAd;IACH;EACJ;;EAEDC,eAAe;IAEX,KAAKC,MAAL,GAAc,IAAIC,MAAJ,CAAW,KAAKC,QAAhB,CAAd;IACAC,UAAU,CAAC,MAAM,KAAKC,gBAAL,EAAP,CAAV;EACH;;EAMMP,eAAe;IAElB9B,MAAM,CAACsC,MAAP,CAAc,KAAKnC,YAAnB,EACKoC,OADL,CACalC,CAAC,IAAI,KAAKzB,QAAL,CAAc4D,aAAd,CAA4BnC,CAA5B,EAA+BoC,UAA/B,CAA0CC,MAA1C,EADlB;IAGA,KAAKL,gBAAL;EACH;;EAEOA,gBAAgB;IAEpB,MAAMM,QAAQ,GAAG,KAAKV,MAAL,CAAYU,QAAZ,EAAjB;IAEA3C,MAAM,CAACE,IAAP,CAAY,KAAKC,YAAjB,EAA+BoC,OAA/B,CAAuClC,CAAC,IAAG;MAEvC,MAAMlB,KAAK,GAAGwD,QAAQ,CAACC,MAAT,CAAgBvC,CAAhB,EAAmBjC,yDAAnB,CAAd;MACAe,KAAK,CAAC0D,KAAN,CAAY,KAAK1C,YAAL,CAAkBE,CAAlB,CAAZ;MAEAlB,KAAK,CAAC2D,gBAAN,CAAuB,QAAvB,EAAkCC,KAAD,IAAkC,KAAKC,mBAAL,CAAyB3C,CAAzB,EAA4B0C,KAA5B,CAAnE;MACA5D,KAAK,CAAC2D,gBAAN,CAAuB,MAAvB,EAAgCC,KAAD,IAAkC,KAAKE,iBAAL,CAAuB5C,CAAvB,EAA0B0C,KAA1B,CAAjE;IACH,CAPD;EAQH;;EAEYG,YAAY;IAAA;;IAAA;MAErB,MAAMC,SAAS,SAA8B,KAAI,CAAClB,MAAL,CAAYmB,WAAZ,CAAwB,IAAxB,CAA7C;;MAEA,IAAI7E,4DAAO,CAAC4E,SAAD,CAAX,EAAwB;QAEpB,OAAO;UAAEJ,KAAK,EAAE;QAAT,CAAP;MACH;;MAED,IAAII,SAAS,CAACxC,MAAd,EAAsB;QAElBX,MAAM,CAACE,IAAP,CAAY,KAAI,CAACC,YAAjB,EACKkD,MADL,CACYhD,CAAC,IAAI8C,SAAS,CAACxC,MAAV,CAAiBN,CAAjB,CADjB,EAEKkC,OAFL,CAEalC,CAAC,IAAG;UACT,KAAI,CAACE,QAAL,CAAcC,QAAd,CAAuBH,CAAvB,EAA0BiD,SAA1B,CAAoC;YAAE,CAACjD,CAAD,GAAK8C,SAAS,CAACxC,MAAV,CAAiBN,CAAjB;UAAP,CAApC;QACH,CAJL;QAMA,OAAO;UAAE0C,KAAK,EAAE;QAAT,CAAP;MACH;;MAED,OAAO,EACH,GAAGI,SADA;QAEH,GAAG,KAAI,CAAC5C,QAAL,CAAcX;MAFd,CAAP;IApBqB;EAwBxB;;EAEOqD,iBAAiB,CAAC9D,KAAD,EAAgB4D,KAAhB,EAA4C;IACjE,KAAKxC,QAAL,CAAcC,QAAd,CAAuBrB,KAAvB,EAA8BoE,aAA9B;EACH;;EAEOP,mBAAmB,CAAC7D,KAAD,EAAgB4D,KAAhB,EAA4C;IAEnE,KAAK3D,iBAAL,CAAuBD,KAAvB,IAAgC4D,KAAK,CAAC5D,KAAD,CAAL,CAAa4D,KAA7C;IACA,KAAKxC,QAAL,CAAcC,QAAd,CAAuBrB,KAAvB,EAA8BqE,sBAA9B;EACH;;AAlJ+B;;;mBAAvB9E,yBAAuBD,+DAAAA,CAapBH,qDAboB,GAaZG,+DAAAA,CAAAA,8DAAAA,GAAAA,+DAAAA,CAAAA,kDAAAA;AAAA;;;QAbXC;EAAuB+E;EAAAC;IAAAvB;IAAAwB;IAAAC;IAAAhC;IAAAhB;EAAA;EAAAiD;IAAAvC;EAAA;EAAAwC,WAAAA,kEAAAA;EAAAC;EAAAC;EAAAC;EAAAC;IAAA;MCdpCzF,4DAAAA,cAC6C,CAD7C,EAC6C,KAD7C,EAC6C,CAD7C,EAC6C,CAD7C,EAC6C,IAD7C;MAIYA,oDAAAA;MAAgBA,0DAAAA;MAGxBA,4DAAAA;MACIA,uDAAAA;MACAA,wDAAAA;MAIJA,0DAAAA;MAEAA,4DAAAA,cAAyB,CAAzB,EAAyB,KAAzB;MAEQA,uDAAAA;MACAA,wDAAAA;MAIJA,0DAAAA;MACAA,4DAAAA;MACIA,uDAAAA;MACAA,wDAAAA;MAIJA,0DAAAA;MACAA,4DAAAA;MACIA,uDAAAA;MACAA,wDAAAA;MAIJA,0DAAAA;MAGJA,4DAAAA,eAAwB,EAAxB,EAAwB,gBAAxB,EAAwB,EAAxB,EAAwB,EAAxB,EAAwB,WAAxB;MAEmBA,oDAAAA;MAAiBA,0DAAAA;MAC5BA,uDAAAA;MAGAA,wDAAAA;MACAA,wDAAAA;MACAA,wDAAAA;MACJA,0DAAAA;MAGJA,4DAAAA,eAAwB,EAAxB,EAAwB,gBAAxB,EAAwB,EAAxB,EAAwB,EAAxB,EAAwB,WAAxB;MAEmBA,oDAAAA;MAAMA,0DAAAA;MACjBA,uDAAAA;MAGAA,wDAAAA;MACAA,wDAAAA;MACJA,0DAAAA;MAGJA,4DAAAA,gBAAqD,EAArD,EAAqD,KAArD,EAAqD,EAArD;MAEQA,oDAAAA;MACAA,uDAAAA;MAAIA,oDAAAA;MAAUA,4DAAAA;MAAQA,oDAAAA;MAAyBA,0DAAAA;MAAUA,oDAAAA;MACzDA,uDAAAA;MAAIA,oDAAAA;MAAcA,4DAAAA;MAAQA,oDAAAA;MAA0BA,0DAAAA;MAAUA,oDAAAA;MAClEA,0DAAAA;MACAA,4DAAAA;MACIA,oDAAAA;MACJA,0DAAAA;MAGJA,4DAAAA,gBAAmC,EAAnC,EAAmC,cAAnC,EAAmC,EAAnC;MAEQA,oDAAAA;MAA2BA,4DAAAA;MAAiCA,oDAAAA;MAAoBA,0DAAAA;MAAIA,oDAAAA;MAAEA,4DAAAA;MAAuCA,oDAAAA;MAAcA,0DAAAA;MAAIA,oDAAAA;MACnJA,0DAAAA;;;;MA5EHA,wDAAAA;MASSA,uDAAAA;MAAAA,wDAAAA;MASIA,uDAAAA;MAAAA,wDAAAA;MAOAA,uDAAAA;MAAAA,wDAAAA;MAOAA,uDAAAA;MAAAA,wDAAAA;MAaMA,uDAAAA;MAAAA,wDAAAA;MACAA,uDAAAA;MAAAA,wDAAAA;MACAA,uDAAAA;MAAAA,wDAAAA;MAUAA,uDAAAA;MAAAA,wDAAAA;MACAA,uDAAAA;MAAAA,wDAAAA;MAOUA,uDAAAA;MAAAA,+DAAAA;MACIA,uDAAAA;MAAAA,+DAAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AClEH;AAC8D;AACP;AAEtB;;;;;;;;;;;;;;;ICepD,qEAIyB;;;IAEzB,qEAIyB;;;IAiBzB,4EAAqD;IAAA,6EAAkB;IAAA,4DAAY;;;IACnF,4EAAsD;IAAA,4EAAiB;IAAA,4DAAY;;;IAiBnF,4EAAqD;IAAA,gFAAqB;IAAA,4DAAY;;;IACtF,4EAAsD;IAAA,4EAAiB;IAAA,4DAAY;;;IAgBnF,4EAAkE;IAAA,iHAAsD;IAAA,4DAAY;;;IACpI,4EAAiE;IAAA,gFAAqB;IAAA,4DAAY;;;IAuB9F,4EAAiD;IAAA,4FAAiC;IAAA,4DAAY;;;IAC9F,4EAAkD;IAAA,4EAAiB;IAAA,4DAAY;;;IAY/E,4EAAgD;IAAA,4FAAiC;IAAA,4DAAY;;;IAC7F,4EAAiD;IAAA,4EAAiB;IAAA,4DAAY;;;IAe9E,4EAAwD;IAAA,4FAAiC;IAAA,4DAAY;;;IACrG,4EAAyD;IAAA,4EAAiB;IAAA,4DAAY;;;IAUlF,gFAC8B;IAC1B,uDACJ;IAAA,4DAAa;;;IAFT,sFAAyB;IACzB,0DACJ;IADI,+FACJ;;;IAEJ,4EAAqD;IAAA,4EAAiB;IAAA,4DAAY;;;IAclF,4EAAsD;IAAA,4EAAiB;IAAA,4DAAY;;;IACnF,4EAAmD;IAAA,6EAAkB;IAAA,4DAAY;;;;IAxE7F,wEAAqD;IAEjD,0EAAwB;IAEL,qEAAU;IAAA,4DAAY;IACjC,gFAMwC;IAApC,kUAAa,iGAChC,IADsD;IANvC,4DAMwC;IACxC,4IAA8F;IAC9F,4IAA+E;IACnF,4DAAiB;IAEjB,qFAAqC;IACtB,qEAAS;IAAA,4DAAY;IAChC,iFAMuC;IAAnC,mUAAa,gGAChC,IADqD;IANtC,4DAMuC;IACvC,8IAA6F;IAC7F,8IAA8E;IAClF,4DAAiB;IAGrB,2EAAwB;IAEL,6FAAiC;IAAA,4DAAY;IACxD,iFAO+C;IAA3C,mUAAa,wGAChC,IAD6D;IAP9C,4DAO+C;IAC/C,8IAAqG;IACrG,8IAAsF;IAC1F,4DAAiB;IAEjB,sFAAqC;IACtB,yEAAa;IAAA,4DAAY;IACpC,sFAI2C;IAAvC,wUAAa,oGAChC,IADyD;IACtC,gJAGa;IACjB,4DAAa;IACb,8IAAkF;IACtF,4DAAiB;IAGrB,2EAAwB;IAEL,kEAAM;IAAA,4DAAY;IAC7B,iFAMoC;IAAhC,mUAAa,6FAChC,IADkD;IANnC,4DAMoC;IACpC,8IAAmF;IACnF,8IAAiF;IACrF,4DAAiB;IAEzB,qEAAe;;;;;;;;IAhEC,0DAAmC;IAAnC,kGAAmC;IAC3B,0DAAmC;IAAnC,0FAAmC;IACnC,0DAAoC;IAApC,2FAAoC;IAW5C,0DAAkC;IAAlC,iGAAkC;IAC1B,0DAAkC;IAAlC,0FAAkC;IAClC,0DAAmC;IAAnC,2FAAmC;IAc3C,0DAA0C;IAA1C,yGAA0C;IAClC,0DAA0C;IAA1C,0FAA0C;IAC1C,0DAA2C;IAA3C,2FAA2C;IASnD,0DAAsC;IAAtC,qGAAsC;IACR,0DAAa;IAAb,uFAAa;IAKnC,0DAAuC;IAAvC,2FAAuC;IAa/C,0DAA+B;IAA/B,8FAA+B;IACvB,0DAAwC;IAAxC,2FAAwC;IACxC,0DAAqC;IAArC,wFAAqC;;;IAiBjD,4EAAoD;IAAA,4FAAiC;IAAA,4DAAY;;;IACjG,4EAAqD;IAAA,4EAAiB;IAAA,4DAAY;;;IAclF,4EAAwD;IAAA,6EAAkB;IAAA,4DAAY;;;IACtF,4EAAyD;IAAA,4EAAiB;IAAA,4DAAY;;;IActF,4EAAsD;IAAA,4EAAiB;IAAA,4DAAY;;;IACnF,4EAAmD;IAAA,6EAAkB;IAAA,4DAAY;;;;IA3C7F,wEAAoD;IAEhD,0EAAwB;IAEL,wEAAa;IAAA,4DAAY;IACpC,gFAM2C;IAAvC,kUAAa,oGAChC,IADyD;IAN1C,4DAM2C;IAC3C,4IAAiG;IACjG,4IAAkF;IACtF,4DAAiB;IAGrB,0EAAwB;IAEL,kGAAsC;IAAA,4DAAY;IAC7D,iFAM+C;IAA3C,mUAAa,wGAChC,IAD6D;IAN9C,4DAM+C;IAC/C,8IAAsF;IACtF,8IAAsF;IAC1F,4DAAiB;IAGrB,2EAAwB;IAEL,kEAAM;IAAA,4DAAY;IAC7B,iFAMoC;IAAhC,mUAAa,6FAChC,IADkD;IANnC,4DAMoC;IACpC,8IAAmF;IACnF,8IAAiF;IACrF,4DAAiB;IAEzB,qEAAe;;;;;;IAnCC,0DAAsC;IAAtC,qGAAsC;IAC9B,0DAAsC;IAAtC,0FAAsC;IACtC,0DAAuC;IAAvC,2FAAuC;IAa/C,0DAA0C;IAA1C,yGAA0C;IAClC,0DAA0C;IAA1C,0FAA0C;IAC1C,0DAA2C;IAA3C,2FAA2C;IAanD,0DAA+B;IAA/B,8FAA+B;IACvB,0DAAwC;IAAxC,2FAAwC;IACxC,0DAAqC;IAArC,wFAAqC;;;IAsBrD,4EAA+C;IAAA,uHAA4D;IAAA,4DAAY;;;IACvH,4EAAgD;IAAA,4EAAiB;IAAA,4DAAY;;;IAW7E,4EAA+C;IAAA,uHAA4D;IAAA,4DAAY;;;IAcvH,4EAA4C;IAAA,+HAAoE;IAAA,4DAAY;;;IAC5H,4EAA6C;IAAA,4EAAiB;IAAA,4DAAY;;;IAUtE,gFAC8B;IAC1B,uDACJ;IAAA,4DAAa;;;IAFT,sFAAyB;IACzB,0DACJ;IADI,+FACJ;;;IAEJ,4EAA8C;IAAA,4EAAiB;IAAA,4DAAY;;;IAc3E,4EAA+C;IAAA,+HAAoE;IAAA,4DAAY;;;IAC/H,4EAAgD;IAAA,4EAAiB;IAAA,4DAAY;;;IAc7E,4EAA6C;IAAA,8EAAmB;IAAA,4DAAY;;;IAC5E,4EAA8C;IAAA,4EAAiB;IAAA,4DAAY;;;IAMnF,mEAA+F;;;IAI3F,oEAAG;IACC,uDAKyD;;IAAA,oEAAG;IAAA,6FAAkC;IAAA,4DAAI;IAAA,shBAKtG;IAAA,4DAAI;;;IAVA,0DAKyD;IALzD,ssBAKyD;;;IAU7D,oEAAG;IACC,uDAMA;;IAAA,oEAAG;IAAA,6FAAkC;IAAA,4DAAI;IAAA,mOAE7C;IAAA,4DAAI;;;IARA,0DAMA;IANA,6rBAMA;;ADvUT,MAAM,mBAAmB;IANhC;QAWc,iBAAY,GAAG,IAAI,uDAAY,EAAgB,CAAC;QAK1D,gBAAW,GAAG,IAAI,IAAI,EAAE,CAAC;QAEzB,eAAU,GAAG;YACT,IAAI,EAAE,gBAAgB;YACtB,WAAW,EAAE;gBACT,GAAG,EAAE,OAAO;aACf;SACG,CAAC;KAsCZ;IAnDG,IAAa,MAAM,CAAC,KAAmB,IAAI,IAAI,CAAC,WAAW,GAAG,0DAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAe7E,eAAe;QAEX,UAAU,CAAC,GAAG,EAAE;YAEZ,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,SAAS,GAAG,CAAC,SAA2B,EAAE,EAAE;gBACjE,MAAM,SAAS,GAAG,SAAS,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;gBACtD,MAAM,gBAAgB,GAAG,SAAS,CAAC,QAAQ,CAAC,2BAA2B,CAAC,CAAC;gBACzE,MAAM,MAAM,GAAG,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;gBAE5C,IAAI,CAAC,SAAS,IAAI,CAAC,gBAAgB,EAAE;oBACjC,OAAO,IAAI,CAAC;iBACf;gBAED,IAAI,gBAAgB,CAAC,MAAM,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,QAAQ,EAAE;oBAC9D,OAAO,IAAI,CAAC;iBACf;gBAED,gBAAgB,CAAC,SAAS,CACtB,SAAS,CAAC,KAAK,KAAK,gBAAgB,CAAC,KAAK;oBACtC,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE;oBACpB,CAAC,CAAC,IAAI,CACb,CAAC;gBAEF,MAAM,CAAC,SAAS,CACZ,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CACpD,CAAC;YACN,CAAC,CAAC;YAEF,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,IAAI,CAC9B,oEAAoB,EAAE,EACtB,4DAAY,CAAC,GAAG,CAAC,CACpB;iBACA,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;QAC/C,CAAC,CAAC,CAAC;IAEP,CAAC;;sFAtDQ,mBAAmB;iHAAnB,mBAAmB;;;;;4LAFb,CAAC,EAAE,OAAO,EAAE,4DAAgB,EAAE,WAAW,EAAE,kDAAM,EAAE,CAAC;QCXvE,4EACgC;QAId,4DAAC;QAAA,4DAAO;QACd,qEAAI;QAAA,qEAAU;QAAA,4DAAK;QAGvB,yEAAwB;QAIhB,wNAA2C;QAC3C,uFAAkC;QAAA,oEAAQ;QAAA,4DAAmB;QAC7D,uFAAiC;QAAA,oEAAQ;QAAA,4DAAmB;QAGhE,0EAA6B;QACzB,iHAIyB;QAEzB,iHAIyB;QAC7B,4DAAM;QAGV,2EAAwB;QAEL,0EAAc;QAAA,4DAAY;QACrC,iFAS4C;QAFxC,iJAAS,uBAAuB,IAAC,uFACzB,uBAAuB,IADE;QAPrC,4DAS4C;QAC5C,8HAAmF;QACnF,8HAAmF;QACvF,4DAAiB;QAGrB,2EAAwB;QAEL,0EAAc;QAAA,4DAAY;QACrC,iFASa;QAHT,iJAAS,uBAAuB,IAAC,uFACzB,uBAAuB,IADE;QANrC,4DASa;QACb,8HAAsF;QACtF,8HAAmF;QACvF,4DAAiB;QAGrB,2EAAwB;QAEL,kFAAsB;QAAA,4DAAY;QAC7C,iFAQwD;QAFpD,iJAAS,uBAAuB,IAAC,uFACzB,uBAAuB,IADE;QANrC,4DAQwD;QACxD,8HAAoI;QACpI,8HAAkG;QACtG,4DAAiB;QAIzB,0EAAqB;QAEP,6DAAC;QAAA,4DAAO;QACd,sEAAI;QAAA,yEAAa;QAAA,4DAAK;QAG1B,sIA2Ee;QAEf,qIA8Ce;QACnB,4DAAM;QAEN,2EAAkC;QAEpB,6DAAC;QAAA,4DAAO;QACd,sEAAI;QAAA,wEAAY;QAAA,4DAAK;QAGzB,2EAAwB;QAEL,0EAAc;QAAA,4DAAY;QACrC,iFAMsC;QAAlC,qMAAiC;QANrC,4DAMsC;QACtC,8HAAuH;QACvH,8HAA6E;QACjF,4DAAiB;QAEjB,sFAAqC;QACtB,sFAA0B;QAAA,4DAAY;QACjD,iFAKsC;QAAlC,qMAAiC;QALrC,4DAKsC;QACtC,8HAAuH;QAC3H,4DAAiB;QAGrB,2EAAwB;QAEL,gEAAI;QAAA,4DAAY;QAC3B,iFAMmC;QAA/B,kMAA8B;QANlC,4DAMmC;QACnC,8HAA4H;QAC5H,8HAA0E;QAC9E,4DAAiB;QAEjB,sFAAqC;QACtB,iEAAK;QAAA,4DAAY;QAC5B,sFAIoC;QAAhC,wMAA+B;QAC/B,gIAGa;QACjB,4DAAa;QACb,8HAA2E;QAC/E,4DAAiB;QAGrB,2EAAwC;QAErB,+DAAG;QAAA,4DAAY;QAC1B,iFAMsC;QAAlC,qMAAiC;QANrC,4DAMsC;QACtC,8HAA+H;QAC/H,8HAA6E;QACjF,4DAAiB;QAEjB,sFAAqC;QACtB,iEAAK;QAAA,4DAAY;QAC5B,iFAQoC;QAAhC,mMAA+B;QARnC,4DAQoC;QACpC,8HAA4E;QAC5E,8HAA2E;QAC/E,4DAAiB;QAIzB,2EAAqD;QACjD,sIAA+F;QAE/F,gNAcc;QAEd,gNAYc;QAEd,4EAAkC;QAC9B,4JACJ;QAAA,4DAAM;QAIV,4EAAmC;QAE/B,4MAAgC;QAC5B,yFAA2B;QAAA,0EAAiC;QAAA,iFAAoB;QAAA,4DAAI;QAAA,+DAAE;QAAA,0EAAuC;QAAA,2EAAc;QAAA,4DAAI;QAAA,wFACnJ;QAAA,4DAAe;;;;;;;;;;;;;QAtVP,0DAA2C;QAA3C,sGAA2C;QACzB,0DAAe;QAAf,wEAAe;QACf,0DAAc;QAAd,uEAAc;QAI1B,0DAAoC;QAApC,oGAAoC;QAMpC,0DAAmC;QAAnC,mGAAmC;QAoBrC,0DAAuC;QAAvC,kGAAuC;QAC/B,0DAAuC;QAAvC,yFAAuC;QACvC,0DAAwC;QAAxC,0FAAwC;QAehD,0DAAuC;QAAvC,kGAAuC;QAE/B,0DAAuC;QAAvC,yFAAuC;QACvC,0DAAwC;QAAxC,0FAAwC;QAehD,0DAAmD;QAAnD,8GAAmD;QAC3C,0DAAoD;QAApD,0FAAoD;QACpD,0DAAmD;QAAnD,yFAAmD;QAWxD,0DAAoC;QAApC,oGAAoC;QA6EpC,0DAAmC;QAAnC,mGAAmC;QAgEtC,2DAAiC;QAAjC,4FAAiC;QACzB,0DAAiC;QAAjC,0FAAiC;QACjC,0DAAkC;QAAlC,2FAAkC;QAU1C,0DAAiC;QAAjC,4FAAiC;QACzB,0DAAiC;QAAjC,0FAAiC;QAazC,0DAA8B;QAA9B,yFAA8B;QACtB,0DAA8B;QAA9B,0FAA8B;QAC9B,0DAA+B;QAA/B,2FAA+B;QASvC,0DAA+B;QAA/B,0FAA+B;QACD,0DAAa;QAAb,mFAAa;QAKnC,0DAAgC;QAAhC,2FAAgC;QAaxC,0DAAiC;QAAjC,4FAAiC;QACzB,0DAAiC;QAAjC,0FAAiC;QACjC,0DAAkC;QAAlC,2FAAkC;QAS1C,0DAAoB;QAApB,iFAAoB;QAKZ,0DAA+B;QAA/B,0FAA+B;QAC/B,0DAAgC;QAAhC,2FAAgC;QAMrC,0DAAoC;QAApC,mGAAoC;QAwCnD,0DAAgC;QAAhC,2FAAgC;;;;;;;;;;;;;;;;;;;;;ACjW+B;AAIsD;;;;;ICc7H,yEAC+B;IAGnB,oEAAwC;IAK5C,4DAAM;IACN,uEAAM;IAAA,6EAAkB;IAAA,4DAAO;;;IAIvC,yEAC+B;IAEvB,kEAAmC;IACnC,uEAAM;IAAA,4EAAiB;IAAA,4DAAO;IAC9B,oEAAG;IACC,6HACJ;IAAA,4DAAI;;AD5BL,MAAM,mBAAmB;IALhC;QAac,uBAAkB,GAAG,IAAI,uDAAY,EAAgB,CAAC;QAGtD,qBAAgB,GAAG,IAAI,uDAAY,EAAc,CAAC;QAElD,sBAAiB,GAAG,IAAI,uDAAY,EAAe,CAAC;QACpD,kBAAa,GAAG,IAAI,uDAAY,EAA4B,CAAC;QAC7D,0BAAqB,GAAG,IAAI,uDAAY,EAAkE,CAAC;QAC3G,kBAAa,GAAG,IAAI,uDAAY,EAAiB,CAAC;QAE5D,yBAAoB,GAAG,iFAAoB,CAAC;KAC/C;;sFAnBY,mBAAmB;iHAAnB,mBAAmB;QCXhC,yEAAqB;QACQ,gFAAqB;QAAA,4DAAK;QAEnD,kFAWiD;QAN7C,iLAAsB,mCAA+B,IAAC,qHAElC,iCAA6B,IAFK,uHAGjC,kCAA8B,IAHG,yGAIrC,wBAAoB,IAJiB,+HAK7B,sCAAkC,IALL,+GAMrC,8BAA0B,IANW;QAO1D,4DAAe;QAGnB,gHAYM;QAEN,+GASM;;QArCE,0DAAmB;QAAnB,gFAAmB;QAcrB,0DAA4D;QAA5D,gIAA4D;QAc5D,0DAAyD;QAAzD,6HAAyD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AChC/D;AACA;AAGA;AACA;AACA;AAEA;;;;;;;;;;;;;;;;ICHQA,qEAAAA;IAEIA,4DAAAA;IAAIA,oDAAAA;IAAcA,0DAAAA;IAElBA,4DAAAA,cAAoC,CAApC,EAAoC,KAApC,EAAoC,EAApC,EAAoC,CAApC,EAAoC,IAApC;IAEYA,oDAAAA;IAAoBA,0DAAAA;IAG5BA,4DAAAA,eACgC,CADhC,EACgC,KADhC,EACgC,EADhC,EACgC,CADhC,EACgC,OADhC,EACgC,EADhC;IAOYA,wDAAAA;MAAAA,2DAAAA;MAAA;MAAA;IAAA;IAJJA,0DAAAA;IAKAA,4DAAAA;IAEIA,uDAAAA;IACAA,4DAAAA;IAAMA,oDAAAA;IAAWA,0DAAAA;IAGzBA,4DAAAA,gBAA8B,EAA9B,EAA8B,OAA9B,EAA8B,EAA9B;IAKQA,wDAAAA;MAAAA,2DAAAA;MAAA;MAAA;IAAA;IAJJA,0DAAAA;IAKAA,4DAAAA;IAEIA,uDAAAA;IACAA,4DAAAA;IAAMA,oDAAAA;IAAKA,0DAAAA;IAK/BA,mEAAAA;;;;;IAtBoBA,uDAAAA;IAAAA,wDAAAA,gDAAuC,SAAvC,EAAuCiG,oBAAvC;IAYAjG,uDAAAA;IAAAA,wDAAAA,0CAAiC,SAAjC,EAAiCiG,oBAAjC;;;;;;;;IAmBZjG,qEAAAA;IACIA,4DAAAA;IAEIA,wDAAAA;MAAAA,2DAAAA;MAAA;MAAA,OAAiBA,yDAAAA,4CAAjB;IAAmD,CAAnD,EAAoD,SAApD,EAAoD;MAAAA,2DAAAA;MAAA;MAAA,OACzCA,yDAAAA,yBADyC;IAC1B,CAD1B;IAEJA,0DAAAA;IAEAA,4DAAAA;IAEIA,wDAAAA;MAAAA,2DAAAA;MAAA;MAAA,OAAiBA,yDAAAA,4CAAjB;IAAmD,CAAnD,EAAoD,SAApD,EAAoD;MAAAA,2DAAAA;MAAA;MAAA,OACzCA,yDAAAA,yBADyC;IAC1B,CAD1B;IAEJA,0DAAAA;IACJA,mEAAAA;;;;;IAVQA,uDAAAA;IAAAA,wDAAAA;IAMAA,uDAAAA;IAAAA,wDAAAA;;;;;;;;IAMRA,4DAAAA;IAEIA,wDAAAA;MAAAA,2DAAAA;MAAA;MAAA,OAAiBA,yDAAAA,4CAAjB;IAAmD,CAAnD;IACJA,0DAAAA;;;;;IAFIA,wDAAAA;;;;;;;;IAIJA,4DAAAA;IAEIA,wDAAAA;MAAAA,2DAAAA;MAAA;MAAA,OAAiBA,yDAAAA,4CAAjB;IAAmD,CAAnD;IACJA,0DAAAA;;;;;IAFIA,wDAAAA;;;;;;IA3BZA,4DAAAA,eAC6B,CAD7B,EAC6B,KAD7B,EAC6B,EAD7B,EAC6B,CAD7B,EAC6B,IAD7B;IAGYA,oDAAAA;IAAgBA,0DAAAA;IAGxBA,4DAAAA;IACIA,wDAAAA;IAcAA,wDAAAA;IAKAA,wDAAAA;IAIJA,0DAAAA;;;;;IAvBmBA,uDAAAA;IAAAA,wDAAAA;IAcaA,uDAAAA;IAAAA,wDAAAA;IAKCA,uDAAAA;IAAAA,wDAAAA;;;;;;;;IAOrCA,qEAAAA;IACIA,4DAAAA;IAOIA,wDAAAA;MAAAA,2DAAAA;MAAA;MAAA,OAAgBA,yDAAAA,uCAAhB;IAA6C,CAA7C;IACJA,0DAAAA;IAEAA,uDAAAA;IAGJA,mEAAAA;;;;;IAXQA,uDAAAA;IAAAA,wDAAAA,8CAAqC,UAArC,EAAqCkG,uBAArC,EAAqC,qBAArC,EAAqCA,kCAArC,EAAqC,sBAArC,EAAqCA,mCAArC,EAAqC,QAArC,EAAqCA,iBAArC;IASAlG,uDAAAA;IAAAA,wDAAAA;;;;;;;;IAIRA,qEAAAA;IACIA,4DAAAA;IAGIA,wDAAAA;MAAAA,2DAAAA;MAAA;MAAA,OAAgBA,yDAAAA,yCAAhB;IAA+C,CAA/C;IACJA,0DAAAA;IAEAA,uDAAAA;IAGJA,mEAAAA;;;;;IARQA,uDAAAA;IAAAA,wDAAAA,0CAAiC,QAAjC,EAAiCmG,mBAAjC;IAMAnG,uDAAAA;IAAAA,wDAAAA;;;;;;;;IAKJA,4DAAAA;IAEIA,wDAAAA;MAAAA,2DAAAA;MAAA;MAAA,OAASA,yDAAAA,qBAAT;IAAoB,CAApB;IAEAA,oDAAAA;IACJA,0DAAAA;;;;;;;;IAEAA,4DAAAA;IAKIA,wDAAAA;MAAAA,2DAAAA;MAAA;MAAA,OAASA,yDAAAA,yBAAT;IAAwB,CAAxB;IACAA,oDAAAA;;IACJA,0DAAAA;;;;;;;;IAHIA,wDAAAA;IAEAA,uDAAAA;IAAAA,gEAAAA,sBAAAA,yDAAAA;;;;;;;;IAGJA,4DAAAA;IAKIA,wDAAAA;MAAAA,2DAAAA;MAAA;MAAA,OAASA,yDAAAA,qBAAT;IAAoB,CAApB;IACAA,oDAAAA;;IACJA,0DAAAA;;;;;;;;IAHIA,wDAAAA;IAEAA,uDAAAA;IAAAA,gEAAAA,sBAAAA,yDAAAA;;;;ADjHV,MAAOoG,oBAAP,CAA2B;EALjClG;IAac,yBAAoB,IAAIT,uDAAJ,EAApB;IACA,qBAAgB,IAAIA,uDAAJ,EAAhB;IACA,6BAAwB,IAAIA,uDAAJ,EAAxB;IAGA,0BAAqB,IAAIA,uDAAJ,EAArB;IAGA,wBAAmB,IAAIA,uDAAJ,EAAnB;IAEA,qBAAgB,IAAIA,uDAAJ,EAAhB;IAEV,yBAAoBsG,8EAApB;IACA,qBAA0CA,0FAA1C;EAsMH;;EA5LGvD,QAAQ;IAEJ,IAAI,KAAK8D,OAAL,CAAaC,mBAAb,CAAiCC,KAAjC,CAAuC5E,CAAC,IAAIA,CAAC,IAAIgE,wEAAjD,CAAJ,EAAwE;MACpE,KAAKc,aAAL,GAAqBX,oFAArB;IACH;;IAED,KAAKa,aAAL,GAAqB,IAAIZ,oEAAJ,GACpBa,OADoB,CACZ,kCAAkC,KAAKP,OAAL,CAAaQ,cAAc,EADjD,EAEpBC,KAFoB,EAArB;IAIA,KAAKH,aAAL,CACKI,KADL;IAGA,KAAKJ,aAAL,CAAmBK,EAAnB,CAAsB,mBAAtB,EAA4CH,cAAD,IAAmB;MAC1D,IAAG,KAAKR,OAAL,CAAaQ,cAAb,KAAgCA,cAAnC,EAAmD;QAC/CI,QAAQ,CAACC,IAAT,GAAgB,KAAKb,OAAL,CAAac,iBAA7B;MACH;IACJ,CAJD;IAMA,KAAKC,MAAL,GAAc,KAAKf,OAAL,CAAagB,GAAb,GAAmB,KAAKhB,OAAL,CAAaiB,gBAAhC,GAAmD,KAAKjB,OAAL,CAAakB,YAA9E;IAEA,KAAKC,eAAL,GAAuB;MACnBJ,MAAM,EAAE,KAAKf,OAAL,CAAagB,GADF;MAEnBI,GAAG,EAAE,KAAKpB,OAAL,CAAaqB,sBAFC;MAGnBC,UAAU,EAAE/B,6GAHO;MAInBiC,aAAa,EAAE;QACXC,aAAa,EAAE,WADJ;QAEXC,QAAQ,EAAE,KAAK1B,OAAL,CAAa0B,QAFZ;QAGXX,MAAM,EAAE,KAAKf,OAAL,CAAagB,GAHV;QAIXR,cAAc,EAAE,KAAKR,OAAL,CAAaQ,cAJlB;QAKXS,gBAAgB,EAAE,KAAKjB,OAAL,CAAaiB;MALpB,CAJI;MAWnBU,QAAQ,EAAE;QACNC,EAAE,EAAE,KAAK5B,OAAL,CAAa6B,mBADX;QAENC,IAAI,EAAE,KAAK9B,OAAL,CAAa+B;MAFb,CAXS;MAenBC,OAAO,EAAE;QACLC,UAAU,EAAE,KAAKjC,OAAL,CAAakC;MADpB,CAfU;MAkBnBC,UAAU,EAAE;QACRC,OAAO,EAAE,KAAKpC,OAAL,CAAaqC,cAAb,GAA8B,GAD/B;QAERtB,MAAM,EAAE,KAAKf,OAAL,CAAaiB;MAFb,CAlBO;MAsBnBqB,2BAA2B,EAAE,CAAC,KAAKtC,OAAL,CAAauC,YAtBxB;MAuBnBC,MAAM,EAAE;QACJC,QAAQ,EAAE,GADN;QAEJC,MAAM,EAAE,EAFJ;QAGJC,WAAW,EAAE,EAHT;QAIJC,YAAY,EAAE,EAJV;QAKJC,aAAa,EAAE;MALX;IAvBW,CAAvB;IAgCA,KAAKC,cAAL,GAAsB;MAClB/B,MAAM,EAAE,KAAKf,OAAL,CAAagB,GADH;MAElBI,GAAG,EAAE,KAAKpB,OAAL,CAAaqB,sBAFA;MAGlBC,UAAU,EAAE/B,sGAHM;MAIlBiC,aAAa,EAAE;QACXC,aAAa,EAAE,UADJ;QAEXC,QAAQ,EAAE,KAAK1B,OAAL,CAAa0B,QAFZ;QAGXX,MAAM,EAAE,KAAKf,OAAL,CAAagB,GAHV;QAIXR,cAAc,EAAE,KAAKR,OAAL,CAAaQ,cAJlB;QAKXS,gBAAgB,EAAE,KAAKjB,OAAL,CAAaiB;MALpB,CAJG;MAWlBU,QAAQ,EAAE;QACNqB,OAAO,EAAE,KAAKhD,OAAL,CAAaiD,UADhB;QAENnB,IAAI,EAAE,KAAK9B,OAAL,CAAa+B,qBAFb;QAGNmB,WAAW,EAAE3D,uGAA0C4D;MAHjD,CAXQ;MAgBlBhB,UAAU,EAAE;QACRC,OAAO,EAAE,KAAKpC,OAAL,CAAaqC,cAAb,GAA8B,GAD/B;QAERtB,MAAM,EAAE,KAAKf,OAAL,CAAaiB;MAFb,CAhBM;MAoBlBuB,MAAM,EAAE;QACJC,QAAQ,EAAE,GADN;QAEJC,MAAM,EAAE,EAFJ;QAGJC,WAAW,EAAE,EAHT;QAIJE,aAAa,EAAE,EAJX;QAKJD,YAAY,EAAE;MALV;IApBU,CAAtB;IA6BA,KAAKQ,YAAL,GAAoB;MAChBb,YAAY,EAAE,KAAKvC,OAAL,CAAauC,YADX;MAEhBc,mBAAmB,EAAE,QAFL;MAGhBC,cAAc,EAAE/D,wGAHA;MAIhBiE,iBAAiB,EAAE;QACf/B,aAAa,EAAE,QADA;QAEfC,QAAQ,EAAE,KAAK1B,OAAL,CAAa0B,QAFR;QAGfX,MAAM,EAAE,KAAKf,OAAL,CAAagB,GAHN;QAIfR,cAAc,EAAE,KAAKR,OAAL,CAAaQ,cAJd;QAKfS,gBAAgB,EAAE,KAAKjB,OAAL,CAAaiB;MALhB,CAJH;MAWhBwC,eAAe,EAAElE,yGAXD;MAYhBoE,kBAAkB,EAAE;QAAEnD,cAAc,EAAE,KAAKR,OAAL,CAAaQ;MAA/B,CAZJ;MAahBoD,eAAe,EAAErE,yGAbD;MAchBsE,MAAM,EAAExE,yFAdQ;MAehBmD,MAAM,EAAE;QACJC,QAAQ,EAAE,GADN;QAEJC,MAAM,EAAE,EAFJ;QAGJC,WAAW,EAAE,EAHT;QAIJC,YAAY,EAAE,EAJV;QAKJC,aAAa,EAAE;MALX;IAfQ,CAApB;IAwBA,KAAKkB,WAAL,GAAmB;MACfxB,YAAY,EAAE,KAAKvC,OAAL,CAAauC,YADZ;MAEfc,mBAAmB,EAAE,OAFN;MAGfC,cAAc,EAAE/D,wGAHD;MAIfiE,iBAAiB,EAAE;QACf/B,aAAa,EAAE,OADA;QAEfC,QAAQ,EAAE,KAAK1B,OAAL,CAAa0B,QAFR;QAGfX,MAAM,EAAE,KAAKf,OAAL,CAAagB,GAHN;QAIfR,cAAc,EAAE,KAAKR,OAAL,CAAaQ,cAJd;QAKfS,gBAAgB,EAAE,KAAKjB,OAAL,CAAaiB;MALhB,CAJJ;MAWfwC,eAAe,EAAElE,yGAXF;MAYfoE,kBAAkB,EAAE;QAAEnD,cAAc,EAAE,KAAKR,OAAL,CAAaQ;MAA/B,CAZL;MAafoD,eAAe,EAAErE,yGAbF;MAcfsE,MAAM,EAAExE,yFAdO;MAefmD,MAAM,EAAE;QACJC,QAAQ,EAAE,GADN;QAEJC,MAAM,EAAE,EAFJ;QAGJC,WAAW,EAAE,EAHT;QAIJC,YAAY,EAAE,EAJV;QAKJC,aAAa,EAAE;MALX;IAfO,CAAnB;EAuBH;;EAEDmB,qBAAqB;IAEjB,MAAMC,WAAW,GAAG,KAAKjE,OAAL,CAAaC,mBAAb,CAAiCiE,IAAjC,CAAsC5I,CAAC,IAAIA,CAAC,IAAIgE,wEAAhD,CAApB;IACA,MAAM6E,YAAY,GAAG,KAAKnE,OAAL,CAAaC,mBAAb,CAAiCiE,IAAjC,CAAsC5I,CAAC,IAAIA,CAAC,IAAIgE,yEAAhD,CAArB;IAEA,OAAO2E,WAAW,IAAIE,YAAtB;EACH;;EAEDC,iBAAiB;IAEb,OAAO,KAAKpE,OAAL,CAAaC,mBAAb,CAAiCoE,QAAjC,CAA0C,UAA1C,CAAP;EACH;;EAEDC,kBAAkB;IAEd,OAAO,KAAKtE,OAAL,CAAaC,mBAAb,CAAiCoE,QAAjC,CAA0C,WAA1C,KACA,KAAKrE,OAAL,CAAaqB,sBADb,IAEA,KAAKrB,OAAL,CAAakC,0BAFb,IAGA,KAAKlC,OAAL,CAAa6B,mBAHb,IAIA,KAAK7B,OAAL,CAAa+B,qBAJpB;EAKH;;EAEDwC,eAAe;IAEX,OAAO,KAAKvE,OAAL,CAAaC,mBAAb,CAAiCoE,QAAjC,CAA0C,QAA1C,CAAP;EACH;;EAEDG,OAAO,CAACxG,KAAD,EAAc;IAEjB,IAAIA,KAAK,KAAKoB,uGAAd,EAA8D;MAE1D/B,UAAU,CAAC,MAAMuD,QAAQ,CAACC,IAAT,GAAgB,KAAKb,OAAL,CAAac,iBAApC,EAAuD,IAAvD,CAAV;IACH;EACJ;;EAEK4D,SAAS;IAAA;;IAAA;MACX,MAAM,KAAI,CAACC,aAAL,CAAmBnI,IAAnB,CAAwB;QAAEgE,cAAc,EAAE,KAAI,CAACR,OAAL,CAAaQ;MAA/B,CAAxB,CAAN;MACAI,QAAQ,CAACC,IAAT,GAAgB,KAAI,CAACb,OAAL,CAAac,iBAA7B;IAFW;EAGd;;EAEK8D,aAAa;IAAA;;IAAA;MAEf,MAAI,CAACC,iBAAL,CAAuBrI,IAAvB,CAA4B;QAAEsI,SAAS,EAAEtF,uFAA0BuF;MAAvC,CAA5B;;MAEA,MAAMC,MAAM,SAAS,MAAI,CAACC,cAAL,CAAoB9G,YAApB,EAArB;MAEA,MAAM+G,OAAO,GAAgB,WAAWF,MAAX,GACvB;QAAEF,SAAS,EAAEtF,uFAAb;QAAyC4F,OAAO,EAAEJ,MAAM,CAAChH,KAAP,IAAgB;MAAlE,CADuB,GAEvB;QAAE8G,SAAS,EAAEtF,0FAAb;QAA4C8F,QAAQ,EAAEN;MAAtD,CAFN;;MAIA,MAAI,CAACH,iBAAL,CAAuBrI,IAAvB,CAA4B0I,OAA5B;IAVe;EAWlB;;EAEDK,SAAS;IAEL,KAAKC,aAAL,CAAmBhJ,IAAnB;EACH;;AA1N4B;;;mBAApBsD;AAAoB;;;QAApBA;EAAoBpB;EAAA+G;IAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MCfjC/L,4DAAAA,cAA8B,CAA9B,EAA8B,MAA9B,EAA8B,CAA9B,EAA8B,CAA9B;MAKQA,wDAAAA;MAuCAA,wDAAAA;MAiCAA,wDAAAA;MAgBAA,wDAAAA;MAYAA,4DAAAA;MACIA,wDAAAA;MAOAA,wDAAAA;MASAA,wDAAAA;MAQJA,0DAAAA;MAGJA,uDAAAA;MAIJA,0DAAAA;;;;MApIuBA,uDAAAA;MAAAA,wDAAAA;MAuCTA,uDAAAA;MAAAA,wDAAAA;MAiCSA,uDAAAA;MAAAA,wDAAAA;MAgBAA,uDAAAA;MAAAA,wDAAAA;MAaFA,uDAAAA;MAAAA,wDAAAA;MAOAA,uDAAAA;MAAAA,wDAAAA;MASAA,uDAAAA;MAAAA,wDAAAA;MAYbA,uDAAAA;MAAAA,wDAAAA,qCAA+B,SAA/B,EAA+BgM,WAA/B;;;;;;;;;;;;;;;;;;;;;;;ACpI4D;;;;ICSpD,qEAAoC;IAC5B,oEAAS;IAAA,4DAAK;IAClB,qEAAI;IAAA,uDAAqC;;IAAA,4DAAK;;;IAA1C,0DAAqC;IAArC,6JAAqC;;ADJtD,MAAM,gBAAgB;IAL7B;QAOa,YAAO,GAAgC,IAAI,CAAC;QAC5C,kBAAa,GAA6B,IAAI,CAAC;QAExD,sBAAiB,GAAG,8EAAiB,CAAC;KACzC;;gFANY,gBAAgB;8GAAhB,gBAAgB;QCT7B,yEAAqB;QAET,uEAAY;QAAA,4DAAK;QAEzB,yEAA6B;QAIT,uDAA8C;QAAA,4DAAK;QACvD,sEAAI;QAAA,wDAA4B;;QAAA,4DAAK;QAEzC,4GAGK;QACL,sEAAI;QACI,wDAA4F;QAAA,4DAAK;QACrG,sEAAI;QAAA,wDAA2H;;QAAA,4DAAK;QAG5I,yEAAO;QAEK,wEAAY;QAAA,4DAAK;QACrB,sEAAI;QAAA,wDAGe;;QAAA,4DAAK;QAKxC,0EAA4B;QACxB,0MACJ;QAAA,4DAAM;;QAzBc,0DAA8C;QAA9C,sHAA8C;QAC9C,0DAA4B;QAA5B,kJAA4B;QAE/B,0DAA6B;QAA7B,6FAA6B;QAK1B,0DAA4F;QAA5F,uKAA4F;QAC5F,0DAA2H;QAA3H,2PAA2H;QAM3H,0DAGe;QAHf,sVAGe;;;;;;;;;;;;;;;;;;;;;;;;;;ACvBvC;AACA;AACA;AAEA;;;;;;;;;ICPAhM,gEAAAA;;;;;;IACAA,gEAAAA;;;;;;IACAA,gEAAAA;;;;;;;;IAGIA,4DAAAA;IAMIA,wDAAAA;MAAAA,2DAAAA;MAAA;MAAA,OAAsBA,yDAAAA,mCAAtB;IAAgD,CAAhD,EAAiD,kBAAjD,EAAiD;MAAAA,2DAAAA;MAAA;MAAA,OAE7BA,yDAAAA,kCAF6B;IAEL,CAF5C,EAAiD,mBAAjD,EAAiD;MAAAA,2DAAAA;MAAA;MAAA,OAG5BA,yDAAAA,mCAH4B;IAGH,CAH9C,EAAiD,eAAjD,EAAiD;MAAAA,2DAAAA;MAAA;MAAA,OAIhCA,yDAAAA,yBAJgC;IAIjB,CAJhC,EAAiD,uBAAjD,EAAiD;MAAAA,2DAAAA;MAAA;MAAA,OAKxBA,yDAAAA,uCALwB;IAKK,CALtD,EAAiD,eAAjD,EAAiD;MAAAA,2DAAAA;MAAA;MAAA,OAMhCA,yDAAAA,uBAAc,EAAd,EANgC;IAMf,CANlC;;;;;;;IAOJA,0DAAAA;;;;;IAZIA,wDAAAA,YAAAA,yDAAAA,yBAA4B,kBAA5B,EAA4BA,yDAAAA,gCAA5B,EAA4B,oBAA5B,EAA4BA,yDAAAA,mCAA5B,EAA4B,qBAA5B,EAA4BA,yDAAAA,oCAA5B,EAA4B,cAA5B,EAA4BA,yDAAAA,6BAA5B,EAA4B,YAA5B,EAA4BA,yDAAAA,2BAA5B;;;;;;IAgBJA,4DAAAA,cACoD,CADpD,EACoD,KADpD,EACoD,CADpD;IAGQA,4DAAAA;IAAAA,4DAAAA;IACIA,uDAAAA;IACJA,0DAAAA;IACAA,6DAAAA;IAAAA,4DAAAA;IACIA,oDAAAA;IAA0BA,uDAAAA;IAC1BA,oDAAAA;IACJA,0DAAAA;;;;;;IAIJA,4DAAAA,cAAqD,CAArD,EAAqD,KAArD,EAAqD,EAArD,EAAqD,CAArD,EAAqD,KAArD,EAAqD,EAArD;IAGYA,uDAAAA,eAAwC,CAAxC,EAAwC,KAAxC,EAAwC,EAAxC,EAAwC,CAAxC,EAAwC,KAAxC,EAAwC,EAAxC,EAAwC,CAAxC,EAAwC,KAAxC,EAAwC,EAAxC,EAAwC,CAAxC,EAAwC,KAAxC,EAAwC,EAAxC;IAKJA,0DAAAA;IACAA,4DAAAA;IACIA,oDAAAA;IACJA,0DAAAA;;;;;;IAxBZA,wDAAAA;;IAYAA,wDAAAA,8FAAAA,oEAAAA;;;;;;;IAZMA,wDAAAA,SAAAA,yDAAAA,6EAAuE,UAAvE,EAAuEsM,IAAvE;;;;;;IA+BNtM,4DAAAA,eAAqC,CAArC,EAAqC,IAArC,EAAqC,EAArC;IAC6BA,oDAAAA;IAAWA,0DAAAA;IACpCA,4DAAAA;IAAGA,oDAAAA;IAAoIA,0DAAAA;;;;ADvCzI,MAAOuM,oBAAP,CAA2B;EAc7BrM,YACYsM,KADZ,EAEYC,KAFZ,EAEwB;IADZ;IACA;IAdZ,gBAAW,KAAKD,KAAL,CAAWE,MAAX,CAAkBR,uEAAlB,CAAX;IACA,2BAAsB,KAAKM,KAAL,CAAWE,MAAX,CAAkBR,kFAAlB,CAAtB;IACA,yBAAoB,KAAKM,KAAL,CAAWE,MAAX,CAAkBR,gFAAlB,CAApB;IACA,4BAAuB,KAAKM,KAAL,CAAWE,MAAX,CAAkBR,mFAAlB,CAAvB;IACA,kBAAa,KAAKM,KAAL,CAAWE,MAAX,CAAkBR,yEAAlB,CAAb;IACA,qBAAgB,KAAKM,KAAL,CAAWE,MAAX,CAAkBR,iFAAlB,CAAhB;IACA,mBAAc,KAAKM,KAAL,CAAWE,MAAX,CAAkBR,+EAAlB,CAAd;IACA,wBAAmB,KAAKM,KAAL,CAAWE,MAAX,CAAkBR,+EAAlB,CAAnB;IAEA,kBAAaE,gEAAb;IACA,0BAAqBD,wEAArB;EAKI;;EAEJ3J,QAAQ;IAEJ,KAAKiK,KAAL,CAAWU,QAAX,CAAoB,aAAad,0EAAmB,EAApD;IACA,KAAKG,KAAL,CAAWa,QAAX,CAAoBpB,4EAAA,EAApB;EACH;;EAEDd,iBAAiB,CAACoC,IAAD,EAAkB;IAE/B,KAAKf,KAAL,CAAWa,QAAX,CAAoBpB,+EAAA,CAAoC;MAAEsB;IAAF,CAApC,CAApB;EACH;;EAEDzB,aAAa;IAET,KAAKU,KAAL,CAAWa,QAAX,CAAoBpB,2EAAA,EAApB;EACH;;EAEDyB,qBAAqB,CAACH,IAAD,EAAqE;IAEtF,KAAKf,KAAL,CAAWa,QAAX,CAAoBpB,6EAAA,CAAkC;MAAEsB;IAAF,CAAlC,CAApB;EACH;;EAEDK,gBAAgB,CAACC,UAAD,EAAuB;IAEnC,KAAKrB,KAAL,CAAWa,QAAX,CAAoBpB,8EAAA,CAAmC;MAAE4B;IAAF,CAAnC,CAApB;EACH;;EAEDE,kBAAkB,CAACC,YAAD,EAA2B;IAEzC,KAAKxB,KAAL,CAAWa,QAAX,CAAoBpB,gFAAA,CAAqC;MAAE+B;IAAF,CAArC,CAApB;EACH;;EAED/C,aAAa,CAACnE,cAAD,EAAuB;IAEhC,KAAK0F,KAAL,CAAWa,QAAX,CAAoBpB,2EAAA,CAAgC;MAACnF;IAAD,CAAhC,CAApB;EACH;;AArD4B;;;mBAApByF,sBAAoBvM,+DAAAA,CAAAA,8CAAAA,GAAAA,+DAAAA,CAAAA,4DAAAA;AAAA;;;QAApBuM;EAAoBvH;EAAAM;EAAAC;EAAAC;EAAAC;IAAA;MChBjCzF,wDAAAA;;MACAA,wDAAAA;;MACAA,wDAAAA;;MAEAA,wDAAAA,gFAAAA,oEAAAA;MAiBAA,wDAAAA,+EAAAA,oEAAAA;MA+BAA,wDAAAA,iFAAAA,oEAAAA;;;;;;;;;;MApDeA,wDAAAA,SAAAA,yDAAAA,uDAAsD,UAAtD,EAAsDmO,GAAtD;MACAnO,uDAAAA;MAAAA,wDAAAA,SAAAA,yDAAAA,+CAA8C,UAA9C,EAA8CoO,GAA9C;MACApO,uDAAAA;MAAAA,wDAAAA,SAAAA,yDAAAA,uDAAqD,UAArD,EAAqDqO,GAArD;;;;;;;;;;;;;;;;;;;;;;;;;;ACIR,MAAM,qBAAqB;;0FAArB,qBAAqB;mHAArB,qBAAqB;QCNlC,wEAAuB;QACnB,mEACJ;QAAA,4DAAK;QAEL,yEAA2B;QAEnB,0LACJ;QAAA,4DAAI;QACJ,oEAAG;QACS,6EAAkB;QAAA,4DAAS;QAEvC,oEAAG;QACC,uPAEA;QAAA,wEACW;QAAA,kGAAsC;QAAA,4DAAI;QAAC,4FAC1D;QAAA,4DAAI;QACJ,qEAAG;QACS,4IAAgF;QAAA,4DAAS;QAAC,2iBAMtG;QAAA,4DAAI;QACJ,qEAAG;QACS,yJAA6F;QAAA,4DAAS;QAC9G,udAIJ;QAAA,4DAAI;QACJ,qEAAG;QACS,uGAA2C;QAAA,4DAAS;QAAC,2yCAYjE;QAAA,4DAAI;QACJ,qEAAG;QACS,0EAAc;QAAA,4DAAS;QAAC,idAIpC;QAAA,4DAAI;QAEJ,0EAA0B;QAEV,gFAAoB;QAAA,4DAAS;QAEzC,uEAAK;QAAA,oFAAwB;QAAA,4DAAM;QACnC,uEAAK;QAAA,wFAA4B;QAAA,4DAAM;QACvC,uEAAK;QAAA,0EAAc;QAAA,4DAAM;QACzB,uEAAK;QAAA,qFAAyB;QAAA,4DAAM;QACpC,uEAAK;QAAA,+EAAmB;QAAA,4DAAM;QAC9B,uEAAK;QACmE,kGAAsC;QAAA,4DAAI;QAItH,0EAA0B;QAIlB,gEACJ;QAAA,4DAAS;;;;;;;;;;;;;;;;;;;;ACtE+C;;;AAOzD,MAAM,0BAA0B;IAEnC,YACY,KAAY;QAAZ,UAAK,GAAL,KAAK,CAAO;IACrB,CAAC;IAEJ,QAAQ;QAEJ,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,oBAAoB,0EAAmB,EAAE,CAAC,CAAC;IACnE,CAAC;;oGATQ,0BAA0B;wHAA1B,0BAA0B;QCTvC,yEAAqB;QACQ,wFAA6B;QAAA,4DAAK;QAC3D,oEAAG;QAAQ,6FAAkC;QAAA,4DAAS;QAEtD,oEAAG;QACC,qIAA+D;QAAA,yEAAQ;QAAA,8EAAS;QAAA,4DAAS;QAAC,gEAAG;QAAA,0EAAQ;QAAA,0EAAI;QAAA,4DAAS;QAAA,8LACnF;QAAA,0EAAQ;QAAA,gFAAU;QAAA,4DAAS;QAAA,oKAAmG;QAAA,0EAAQ;QAAA,kFAAY;QAAA,4DAAS;QAAA,4JAE9L;QAAA,4DAAI;QACJ,qEAAG;QACC,mXAEJ;QAAA,4DAAI;QACJ,qEAAG;QAAA,0NAA8J;QAAA,4DAAI;QAErK,sEAAI;QAAA,kFAAsB;QAAA,4DAAK;QAE/B,qEAAG;QACC,+UAGJ;QAAA,4DAAI;QAEJ,sEAAI;QAAA,uIAAsE;QAAA,4DAAK;QAE/E,qEAAG;QACC,+cAGJ;QAAA,4DAAI;QAEJ,sEAAI;QAAA,kKAAiG;QAAA,4DAAK;QAC1G,qEAAG;QAAA,yJAA6F;QAAA,4DAAI;QACpG,sEAAI;QAEO,6KAA4G;QAAA,4DAAI;QAEvH,sEAAI;QACG,yLAAwH;QAAA,4DAAI;QAEnI,sEAAI;QACG,kJAAiF;QAAA,4DAAI;QAE5F,sEAAI;QACG,4IAA2E;QAAA,4DAAI;QAEtF,sEAAI;QACG,uKAA2G;QAAA,4DAAI;QAI1H,sEAAI;QAAA,uHAAsD;QAAA,4DAAK;QAC/D,qEAAG;QAAA,iMAAgI;QAAA,4DAAI;QAEvI,sEAAI;QAAA,kJAAsF;QAAA,4DAAK;QAC/F,qEAAG;QACC,ueAIJ;QAAA,4DAAI;QAEJ,sEAAI;QAAA,iGAAqC;QAAA,4DAAK;QAC9C,qEAAG;QAAA,iMAAqI;QAAA,4DAAI;QAC5I,qEAAG;QAAA,mIAAuE;QAAA,4DAAI;QAC9E,sEAAI;QAEO,qLAAyH;QAAA,4DAAI;QAEpI,sEAAI;QACG,iHAAqD;QAAA,4DAAI;QAEhE,sEAAI;QACG,kIAAsE;QAAA,4DAAI;QAGrF,qEAAG;QACC,0iBAKJ;QAAA,4DAAI;QAEJ,sEAAI;QAAA,oFAAwB;QAAA,4DAAK;QACjC,qEAAG;QAAA,4GAAgD;QAAA,4DAAI;QACvD,sEAAI;QAEO,oIAAwE;QAAA,4DAAI;QAEnF,sEAAI;QACG,kKAAiG;QAAA,wEAAgE;QAAA,gEAAI;QAAA,4DAAI;QAAA,6DAAC;QAAA,4DAAI;QAErL,sEAAI;QACG,uGAA2C;QAAA,4DAAI;QAEtD,sEAAI;QACG,8IAAkF;QAAA,4DAAI;QAE7F,sEAAI;QACG,qMAAwI;QAAA,4DAAI;QAIvJ,sEAAG;QACC,2pBAMJ;QAAA,4DAAI;QACJ,sEAAG;QACC,icAIJ;QAAA,4DAAI;QAEJ,uEAAI;QAAA,oFAAuB;QAAA,4DAAK;QAEhC,uEAAI;QAAA,gFAAmB;QAAA,4DAAK;QAC5B,sEAAG;QACC,wjBAI6D;QAAA,yEAAgE;QAAA,kGAAqC;QAAA,4DAAI;QAAA,2MAE1K;QAAA,4DAAI;QAEJ,uEAAI;QAAA,uEAAU;QAAA,4DAAK;QACnB,sEAAG;QAAA,wLAA2H;QAAA,4DAAI;QAElI,uEAAI;QAAA,oEAAO;QAAA,4DAAK;QAChB,sEAAG;QAAA,uMAA0I;QAAA,4DAAI;QAEjJ,uEAAI;QAAA,uEAAU;QAAA,4DAAK;QACnB,sEAAG;QAAA,oLAAuH;QAAA,4DAAI;QAC9H,sEAAG;QACC,kEAAI;QAAA,kEAAI;QACR,uFAAyB;QAAA,kEAAI;QAC7B,8EAAgB;QAAA,kEAAI;QACpB,yEAA2B;QAAA,yEAAY;QAAA,4DAAI;QAAA,kEAAI;QAC/C,yEAAoC;QAAA,+EAAkB;QAAA,4DAAI;QAG9D,uEAAI;QAAA,mHAAsD;QAAA,4DAAK;QAE/D,uEAAI;QAAA,uEAAU;QAAA,4DAAK;QACnB,sEAAG;QACC,4XAGwC;QAAA,yEAAgE;QAAA,kGAAqC;QAAA,4DAAI;QAAA,+DACrJ;QAAA,4DAAI;QAEJ,uEAAI;QAAA,uFAA0B;QAAA,4DAAK;QACnC,sEAAG;QACC,mSAEJ;QAAA,4DAAI;QAEJ,uEAAI;QAAA,uFAA0B;QAAA,4DAAK;QACnC,sEAAG;QACC,uTAEJ;QAAA,4DAAI;QACJ,uEAAI;QAEO,qMAAoH;QAAA,4DAAI;QAE/H,uEAAI;QACG,0GAAwC;QAAA,4DAAI;QAEnD,uEAAI;QACG,gIAAmE;QAAA,4DAAI;QAE9E,uEAAI;QACG,iJAAoF;QAAA,4DAAI;QAGnG,sEAAG;QAAA,4HAA+D;QAAA,4DAAI;QAEtE,uEAAI;QAAA,2EAAc;QAAA,4DAAK;QACvB,sEAAG;QACC,+bAMJ;QAAA,4DAAI;QAEJ,uEAAI;QAAA,gFAAmB;QAAA,4DAAK;QAC5B,sEAAG;QACC,4lCAYgE;QAAA,yEAA6E;QAAA,+GAAkD;QAAA,4DAAI;QAAA,iKAEvM;QAAA,4DAAI;QAEJ,uEAAI;QAAA,2FAA8B;QAAA,4DAAK;QACvC,sEAAG;QAAA,0NAA6J;QAAA,4DAAI;QACpK,uEAAI;QAGgB,yEAAY;QAAA,4DAAS;QAC7B,kMACJ;QAAA,4DAAI;QACJ,uEAAI;QACI,2HAA8D;QAAA,4DAAK;QACvE,uEAAI;QAAA,oIAAuE;QAAA,4DAAK;QAChF,uEAAI;QAAA,mJAAsF;QAAA,4DAAK;QAC/F,uEAAI;QAAA,qIAAwE;QAAA,4DAAK;QACjF,uEAAI;QAAA,kOAAqK;QAAA,4DAAK;QAC9K,uEAAI;QAAA,0MAAwI;QAAA,4DAAK;QAGzJ,uEAAI;QAEY,oEAAO;QAAA,4DAAS;QACxB,6IACJ;QAAA,4DAAI;QAER,uEAAI;QAEY,sEAAS;QAAA,4DAAS;QAC1B,4IACJ;QAAA,4DAAI;QAER,uEAAI;QAEY,+EAAkB;QAAA,4DAAS;QACnC,ioBAMJ;QAAA,4DAAI;QAIZ,uEAAI;QAAA,wFAA2B;QAAA,4DAAK;QACpC,sEAAG;QAAA,wHAA2D;QAAA,4DAAI;QAElE,uEAAI;QAAA,sGAAyC;QAAA,4DAAK;QAClD,sEAAG;QAAA,4JAA+F;QAAA,4DAAI;QACtG,uEAAI;QAEO,mEAAM;QAAA,yEAAkC;QAAA,6EAAgB;QAAA,4DAAI;QAEnE,uEAAI;QACG,kEAAK;QAAA,yEAA2B;QAAA,2EAAc;QAAA,4DAAI;QAEzD,uEAAI;QAEY,mFAAsB;QAAA,4DAAS;QACvC,qgBAIJ;QAAA,4DAAI;QAER,uEAAI;QAEY,+EAAkB;QAAA,4DAAS;QACnC,kQAEJ;QAAA,4DAAI;QAIZ,uEAAI;QAAA,yFAA4B;QAAA,4DAAK;QACrC,sEAAG;QAAA,+IAAkF;QAAA,4DAAI;QACzF,sEAAG;QAAA,4IAA+E;QAAA,4DAAI;QAEtF,uEAAI;QAAA,gHAAmD;QAAA,4DAAK;QAE5D,sEAAG;QACC,giBAGJ;QAAA,4DAAI;QAEJ,2EAA4B;QAIR,8GAAiD;QAAA,4DAAK;QAC1D,uEAAI;QAAA,4FAA+B;QAAA,4DAAK;QACxC,uEAAI;QAAA,gHAAmD;QAAA,4DAAK;QAGpE,0EAAO;QAEK,wEAAW;QAAA,4DAAK;QACpB,uEAAI;QAAA,gEAAG;QAAA,4DAAK;QACZ,uEAAI;QAAA,gEAAG;QAAA,4DAAK;QAEhB,uEAAI;QACI,+EAAkB;QAAA,4DAAK;QAC3B,uEAAI;QAAA,gEAAG;QAAA,4DAAK;QACZ,uEAAI;QAAA,+DAAE;QAAA,4DAAK;QAEf,uEAAI;QACI,qGAAwC;QAAA,4DAAK;QACjD,uEAAI;QAAA,+DAAE;QAAA,4DAAK;QACX,uEAAI;QAAA,gEAAG;QAAA,4DAAK;QAEhB,uEAAI;QACI,mFAAsB;QAAA,4DAAK;QAC/B,uEAAI;QAAA,gEAAG;QAAA,4DAAK;QACZ,uEAAI;QAAA,gEAAG;QAAA,4DAAK;QAEhB,uEAAI;QACI,kFAAqB;QAAA,4DAAK;QAC9B,uEAAI;QAAA,+DAAE;QAAA,4DAAK;QACX,uEAAI;QAAA,gEAAG;QAAA,4DAAK;QAEhB,uEAAI;QACI,4FAA+B;QAAA,4DAAK;QACxC,uEAAI;QAAA,gEAAG;QAAA,4DAAK;QACZ,uEAAI;QAAA,+DAAE;QAAA,4DAAK;QAEf,uEAAI;QACI,6EAAgB;QAAA,4DAAK;QACzB,uEAAI;QAAA,+DAAE;QAAA,4DAAK;QACX,uEAAI;QAAA,gEAAG;QAAA,4DAAK;QAEhB,uEAAI;QACI,gFAAmB;QAAA,4DAAK;QAC5B,uEAAI;QAAA,+DAAE;QAAA,4DAAK;QACX,uEAAI;QAAA,gEAAG;QAAA,4DAAK;QAEhB,uEAAI;QACI,mGAAsC;QAAA,4DAAK;QAC/C,uEAAI;QAAA,+DAAE;QAAA,4DAAK;QACX,uEAAI;QAAA,gEAAG;QAAA,4DAAK;QAEhB,uEAAI;QACI,kFAAqB;QAAA,4DAAK;QAC9B,uEAAI;QAAA,+DAAE;QAAA,4DAAK;QACX,uEAAI;QAAA,gEAAG;QAAA,4DAAK;QAEhB,uEAAI;QACI,uEAAU;QAAA,4DAAK;QACnB,uEAAI;QAAA,+DAAE;QAAA,4DAAK;QACX,uEAAI;QAAA,gEAAG;QAAA,4DAAK;QAEhB,uEAAI;QACI,kFAAqB;QAAA,4DAAK;QAC9B,uEAAI;QAAA,gEAAG;QAAA,4DAAK;QACZ,uEAAI;QAAA,+DAAE;QAAA,4DAAK;QAEf,uEAAI;QACI,gFAAmB;QAAA,4DAAK;QAC5B,uEAAI;QAAA,+DAAE;QAAA,4DAAK;QACX,uEAAI;QAAA,gEAAG;QAAA,4DAAK;QAM5B,uEAAI;QAAA,qEAAQ;QAAA,4DAAK;QAEjB,2EAA4B;QAIR,qEAAQ;QAAA,4DAAK;QACjB,uEAAI;QAAA,uEAAU;QAAA,4DAAK;QAG3B,0EAAO;QAEK,+FAAkC;QAAA,4DAAK;QAC3C,uEAAI;QAAA,8FAAiC;QAAA,4DAAK;QAE9C,uEAAI;QACI,kFAAqB;QAAA,4DAAK;QAC9B,uEAAI;QACA,krBAMJ;QAAA,4DAAK;QAET,uEAAI;QACI,gFAAmB;QAAA,4DAAK;QAC5B,uEAAI;QAAA,+KAAkH;QAAA,4DAAK;QAE/H,uEAAI;QACI,kFAAqB;QAAA,4DAAK;QAC9B,uEAAI;QAAA,yKAA4G;QAAA,4DAAK;QAEzH,uEAAI;QACI,6EAAgB;QAAA,4DAAK;QACzB,uEAAI;QAAA,oIAAuE;QAAA,4DAAK;QAEpF,uEAAI;QACI,wEAAW;QAAA,4DAAK;QACpB,uEAAI;QAAA,kMAAqI;QAAA,4DAAK;QAElJ,uEAAI;QACI,iFAAoB;QAAA,4DAAK;QAC7B,uEAAI;QAAA,qLAAmH;QAAA,4DAAK;QAEhI,uEAAI;QACI,gFAAmB;QAAA,4DAAK;QAC5B,uEAAI;QAAA,0KAAwG;QAAA,4DAAK;QAErH,uEAAI;QACI,4FAA+B;QAAA,4DAAK;QACxC,uEAAI;QAAA,+MAA6I;QAAA,4DAAK;QAE1J,uEAAI;QACI,+EAAkB;QAAA,4DAAK;QAC3B,uEAAI;QACA,mpBAMJ;QAAA,4DAAK;QAET,uEAAI;QACI,iFAAoB;QAAA,4DAAK;QAC7B,uEAAI;QAAA,wKAAsG;QAAA,4DAAK;QAEnH,uEAAI;QACI,mGAAsC;QAAA,4DAAK;QAC/C,uEAAI;QACA,8OAEJ;QAAA,4DAAK;QAET,uEAAI;QACI,qGAAwC;QAAA,4DAAK;QACjD,uEAAI;QACA,mcAGJ;QAAA,4DAAK;QAET,uEAAI;QACI,gFAAmB;QAAA,4DAAK;QAC5B,uEAAI;QAAA,mIAAsE;QAAA,4DAAK;QAM/F,sEAAG;QACC,kEAAI;QAAA,kEAAI;QACR,uFAAyB;QAAA,kEAAI;QAC7B,8EAAgB;QAAA,kEAAI;QACpB,yEAA2B;QAAA,yEAAY;QAAA,4DAAI;QAAA,kEAAI;QAC/C,yEAAoC;QAAA,+EAAkB;QAAA,4DAAI;QAE9D,wEAAK;QAAA,mEAAM;QAAA,4DAAM;;;;;;;;;;;;;;;;;;;;;;;;;ACvdrB;AACA;AACA;;;;;;;;;ICAYrO,gEAAAA;;;;;;IACAA,gEAAAA;;;;;;IAMJA,4DAAAA;IAAGA,oDAAAA;IAAOA,0DAAAA;;;;;;IA8GMA,4DAAAA,iBAAkE,CAAlE,EAAkE,IAAlE,EAAkE,CAAlE,EAAkE,IAAlE,EAAkE,EAAlE;IAGYA,oDAAAA;IACJA,0DAAAA;IACAA,4DAAAA;IACIA,oDAAAA;;IACJA,0DAAAA;IAEJA,4DAAAA,UAAI,CAAJ,EAAI,IAAJ,EAAI,EAAJ;IAEQA,oDAAAA;IACJA,0DAAAA;IACAA,4DAAAA;IACIA,oDAAAA;IACJA,0DAAAA;IAEJA,4DAAAA,cAAO,EAAP,EAAO,IAAP,EAAO,EAAP,EAAO,IAAP;IAGYA,oDAAAA;IACJA,0DAAAA;IACAA,4DAAAA;IACIA,oDAAAA;IACJA,0DAAAA;;;;;IAlBAA,uDAAAA;IAAAA,gEAAAA,MAAAA,yDAAAA;IAQAA,uDAAAA;IAAAA,gEAAAA;IASIA,uDAAAA;IAAAA,gEAAAA;;;;;;;;IAhIhCA,4DAAAA,cAAqB,CAArB,EAAqB,KAArB,EAAqB,CAArB,EAAqB,CAArB,EAAqB,IAArB,EAAqB,CAArB;IAEkCA,oDAAAA;IAAmBA,0DAAAA;IAC7CA,4DAAAA,cAA4B,CAA5B,EAA4B,KAA5B,EAA4B,EAA5B,EAA4B,CAA5B,EAA4B,KAA5B,EAA4B,EAA5B,EAA4B,CAA5B,EAA4B,KAA5B,EAA4B,EAA5B;IAIgBA,oDAAAA;IACJA,0DAAAA;IAEJA,4DAAAA,eAAmB,EAAnB,EAAmB,KAAnB,EAAmB,EAAnB;IAEQA,oDAAAA;IACJA,0DAAAA;IAEJA,4DAAAA,gBAAmB,EAAnB,EAAmB,KAAnB,EAAmB,EAAnB;IAEQA,oDAAAA;IACJA,0DAAAA;IAEJA,4DAAAA,gBAAmB,EAAnB,EAAmB,KAAnB,EAAmB,EAAnB;IAEQA,oDAAAA;IACJA,0DAAAA;IAGRA,4DAAAA,gBAAiB,EAAjB,EAAiB,KAAjB,EAAiB,EAAjB,EAAiB,EAAjB,EAAiB,KAAjB,EAAiB,EAAjB;IAGYA,oDAAAA;IACJA,0DAAAA;IAEJA,4DAAAA,gBAAmB,EAAnB,EAAmB,KAAnB,EAAmB,EAAnB;IAEQA,oDAAAA;IACJA,0DAAAA;IAEJA,4DAAAA,gBAAmB,EAAnB,EAAmB,KAAnB,EAAmB,EAAnB;IAEQA,oDAAAA;IACJA,0DAAAA;IAEJA,4DAAAA,gBAAmB,EAAnB,EAAmB,KAAnB,EAAmB,EAAnB;IAEQA,oDAAAA;IACJA,0DAAAA;IAMhBA,4DAAAA,eAA4B,EAA5B,EAA4B,IAA5B,EAA4B,CAA5B;IAC8BA,oDAAAA;IAAOA,0DAAAA;IACjCA,4DAAAA;IAAyBA,oDAAAA;IAAwCA,0DAAAA;IAEjEA,4DAAAA,gBAA8B,EAA9B,EAA8B,KAA9B,EAA8B,EAA9B,EAA8B,EAA9B,EAA8B,OAA9B,EAA8B,EAA9B,EAA8B,EAA9B,EAA8B,IAA9B,EAA8B,EAA9B,EAA8B,IAA9B,EAA8B,EAA9B;IAKoBA,oDAAAA;IACJA,0DAAAA;IACAA,4DAAAA;IACIA,oDAAAA;;IACJA,0DAAAA;IAEJA,4DAAAA,WAAI,EAAJ,EAAI,IAAJ,EAAI,EAAJ;IAEQA,oDAAAA;IACJA,0DAAAA;IACAA,4DAAAA;IACIA,oDAAAA;IACJA,0DAAAA;IAIRA,4DAAAA,kBAA6B,EAA7B,EAA6B,IAA7B,EAA6B,EAA7B,EAA6B,IAA7B,EAA6B,EAA7B;IAGYA,oDAAAA;IACJA,0DAAAA;IACAA,4DAAAA;IACIA,oDAAAA;;IACJA,0DAAAA;IAEJA,4DAAAA,WAAI,EAAJ,EAAI,IAAJ,EAAI,EAAJ;IAEQA,oDAAAA;IACJA,0DAAAA;IACAA,4DAAAA;IACIA,oDAAAA;IACJA,0DAAAA;IAEJA,4DAAAA,cAAO,EAAP,EAAO,IAAP,EAAO,EAAP,EAAO,IAAP;IAGYA,oDAAAA;IACJA,0DAAAA;IACAA,4DAAAA;IACIA,oDAAAA;IACJA,0DAAAA;IAKZA,wDAAAA;IA6BAA,4DAAAA,kBAA6B,EAA7B,EAA6B,IAA7B,EAA6B,EAA7B,EAA6B,IAA7B,EAA6B,EAA7B;IAGYA,oDAAAA;IACJA,0DAAAA;IACAA,4DAAAA;IACIA,oDAAAA;;IACJA,0DAAAA;IAEJA,4DAAAA,WAAI,EAAJ,EAAI,IAAJ,EAAI,EAAJ;IAEQA,oDAAAA;IACJA,0DAAAA;IACAA,4DAAAA;IACIA,oDAAAA;IACJA,0DAAAA;IAEJA,4DAAAA,cAAO,EAAP,EAAO,IAAP,EAAO,EAAP,EAAO,IAAP;IAGYA,oDAAAA;IACJA,0DAAAA;IACAA,4DAAAA;IACIA,oDAAAA;IACJA,0DAAAA;IAKZA,4DAAAA,kBAAkD,EAAlD,EAAkD,OAAlD,EAAkD,EAAlD,EAAkD,IAAlD,EAAkD,EAAlD,EAAkD,IAAlD;IAIgBA,oDAAAA;IACJA,0DAAAA;IACAA,4DAAAA;IACIA,oDAAAA;;IACJA,0DAAAA;IAMhBA,4DAAAA,gBAA8B,EAA9B,EAA8B,QAA9B,EAA8B,EAA9B;IAGQA,wDAAAA;MAAAA,2DAAAA;MAAA;MAAA,OAASA,yDAAAA,wBAAT;IAAuB,CAAvB;IAEAA,oDAAAA;IACJA,0DAAAA;IAEAA,4DAAAA;IAEIA,wDAAAA;MAAAA,2DAAAA;MAAA;MAAA,OAASA,yDAAAA,4BAAT;IAA2B,CAA3B;IAEAA,oDAAAA;IACJA,0DAAAA;;;;;IAjKQA,uDAAAA;IAAAA,gEAAAA;IAKAA,uDAAAA;IAAAA,gEAAAA;IAKAA,uDAAAA;IAAAA,gEAAAA;IAKAA,uDAAAA;IAAAA,gEAAAA;IAmBIA,uDAAAA;IAAAA,gEAAAA,MAAAA,yDAAAA;IAQAA,uDAAAA;IAAAA,gEAAAA;IAWAA,uDAAAA;IAAAA,gEAAAA,MAAAA,yDAAAA;IAQAA,uDAAAA;IAAAA,gEAAAA;IASIA,uDAAAA;IAAAA,gEAAAA;IAMRA,uDAAAA;IAAAA,wDAAAA;IAmCIA,uDAAAA;IAAAA,gEAAAA,MAAAA,yDAAAA;IAQAA,uDAAAA;IAAAA,gEAAAA;IASIA,uDAAAA;IAAAA,gEAAAA;IAaAA,uDAAAA;IAAAA,gEAAAA,MAAAA,yDAAAA;;;;;;IA3LxCA,qEAAAA;IAEIA,4DAAAA,cAAqC,CAArC,EAAqC,KAArC,EAAqC,CAArC;IAGQA,wDAAAA;IACAA,wDAAAA;IACJA,0DAAAA;IAIJA,wDAAAA,0FAAAA,oEAAAA;IAIAA,wDAAAA,6FAAAA,oEAAAA;IAsMJA,mEAAAA;;;;;;;;;;;IAhN2BA,uDAAAA;IAAAA,wDAAAA,gEAAkD,UAAlD,EAAkDyO,GAAlD;IACAzO,uDAAAA;IAAAA,wDAAAA,gEAAkD,UAAlD,EAAkD0O,GAAlD;;;;ADOrB,MAAOC,gBAAP,CAAuB;EAIzBzO,YACYsM,KADZ,EAEYoC,cAFZ,EAE0C;IAD9B;IACA;IAJZ,qBAAgB,KAAKpC,KAAL,CAAWE,MAAX,CAAkB6B,yFAAlB,CAAhB;IAQA,iBAAYC,4EAAZ;EAHI;;EAKJhM,QAAQ;IAEJ,KAAKsE,cAAL,GAAsB,KAAK8H,cAAL,CAAoBC,QAApB,CAA6BC,MAA7B,EAAqC5G,EAA3D;IACA,KAAKsE,KAAL,CAAWa,QAAX,CAAoBiB,4FAAA,CAAuC;MAAExH,cAAc,EAAE,KAAKA;IAAvB,CAAvC,CAApB;EACH;;EAEDkI,YAAY;IACRC,MAAM,CAACC,KAAP;EACH;;EAEDC,gBAAgB;IAEZ,KAAK3C,KAAL,CAAWa,QAAX,CAAoBiB,2FAAA,CAAsC;MAAExH,cAAc,EAAE,KAAKA;IAAvB,CAAtC,CAApB;EACH;;AAzBwB;;;mBAAhB6H,kBAAgB3O,+DAAAA,CAAAA,8CAAAA,GAAAA,+DAAAA,CAAAA,2DAAAA;AAAA;;;QAAhB2O;EAAgB3J;EAAAM;EAAAC;EAAAC;EAAAC;IAAA;MCb7BzF,wDAAAA;;;;;MAAeA,wDAAAA,SAAAA,yDAAAA;;;;;;;;;;;;;;;;;;;;;;;;ACAwD;;;;;AAQhE,MAAM,eAAe;IAL5B;QAQc,cAAS,GAAG,IAAI,uDAAY,EAAE,CAAC;KAE5C;;8EALY,eAAe;6GAAf,eAAe;QCR5B,yEAA0B;QAGd,kEAAkC;QAEtC,4DAAM;QACN,uEAAM;QAAA,uEAAY;QAAA,4DAAO;QACzB,oEAIgB;QACpB,4DAAM;QAEN,yEAA4B;QAIZ,oEACJ;QAAA,4DAAM;QAEV,0EAAmB;QAEX,yEACJ;QAAA,4DAAM;QAEV,0EAAmB;QAEX,0EACJ;QAAA,4DAAM;QAGd,0EAAiB;QAGL,wDACJ;;QAAA,4DAAM;QAEV,0EAAmB;QAEX,wDACJ;;QAAA,4DAAM;QAEV,0EAAmB;QAEX,oEACJ;QAAA,4DAAM;QAKlB,2EAA4B;QAGpB,wIAAS,oBAAgB,IAAC;QAE1B,4EAAU;QAAA,mEAAO;QAAA,4DAAW;QAC5B,iEACJ;QAAA,4DAAS;;QAvBG,2DACJ;QADI,+JACJ;QAII,0DACJ;QADI,0KACJ;;;;;;;;;;;;;;;;;ACzCT,MAAM,aAAa,GAAG;IACzB,IAAI,EAAE;QACF,MAAM,EAAE,MAAM;KACjB;IACD,IAAI,EAAE;QACF,aAAa,EAAE,KAAK;KACvB;IACD,KAAK,EAAE;QACH,YAAY,EAAE,YAAY;QAC1B,aAAa,EAAE,SAAS;QACxB,GAAG,EAAE,OAAO;QACZ,kBAAkB,EAAE,MAAM;QAC1B,eAAe,EAAE,KAAK;QACtB,KAAK,EAAE,MAAM;QACb,aAAa,EAAE,oBAAoB;QACnC,WAAW,EAAE,MAAM;QACnB,aAAa,EAAE,KAAK;QACpB,aAAa,EAAE,KAAK;QACpB,MAAM,EAAE,MAAM;QACd,KAAK,EAAE,MAAM;QACb,MAAM,EAAE,mBAAmB;QAC3B,OAAO,EAAE,QAAQ;KACpB;IACD,aAAa,EAAE;QACX,cAAc,EAAE,MAAM;QACtB,cAAc,EAAE,KAAK;QACrB,OAAO,EAAE,OAAO;KACnB;IACD,aAAa,EAAE;QACX,cAAc,EAAE,SAAS;QACzB,cAAc,EAAE,KAAK;QACrB,KAAK,EAAE,MAAM;QACb,OAAO,EAAE,GAAG;QACZ,OAAO,EAAE,OAAO;KACnB;IACD,oBAAoB,EAAE;QAClB,KAAK,EAAE,aAAa;KACvB;IACD,KAAK,EAAE;QACH,kBAAkB,EAAE,MAAM;QAC1B,KAAK,EAAE,oBAAoB;QAC3B,aAAa,EAAE,sCAAsC;QACrD,WAAW,EAAE,MAAM;QACnB,cAAc,EAAE,MAAM;QACtB,OAAO,EAAE,OAAO;QAChB,QAAQ,EAAE,UAAU;QACpB,IAAI,EAAE,KAAK;QACX,GAAG,EAAE,KAAK;QACV,OAAO,EAAE,OAAO;KACnB;IACD,QAAQ,EAAE;QACN,GAAG,EAAE,MAAM;QACX,KAAK,EAAE,MAAM;KAChB;CACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;ACtDF;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;ICIQA,4DAAAA;IAEIA,oDAAAA;IACJA,0DAAAA;;;;;IADIA,uDAAAA;IAAAA,gEAAAA;;;;;;IAOAA,4DAAAA;IAEIA,oDAAAA;IACJA,0DAAAA;;;;;IADIA,uDAAAA;IAAAA,gEAAAA;;;;;;IAKJA,4DAAAA;IAEIA,oDAAAA;IACJA,0DAAAA;;;;;IADIA,uDAAAA;IAAAA,gEAAAA;;;;;;IAKJA,4DAAAA;IAEIA,oDAAAA;IACJA,0DAAAA;;;;;IADIA,uDAAAA;IAAAA,gEAAAA;;;;;;IAWJA,4DAAAA;IAAwEA,oDAAAA;IAAkCA,0DAAAA;;;;;;IAC1GA,4DAAAA;IAAuEA,oDAAAA;IAAiBA,0DAAAA;;;;ADhC9F,MAAOqP,6BAAP,CAAoC;EAYtCnP,YAC8BC,QAD9B,EAEYC,EAFZ,EAGYC,UAHZ,EAG8B;IAFA;IAClB;IACA;IAbH,gBAAmB,yBAAnB;IAQC,oBAAe,IAAIZ,uDAAJ,EAAf;IAQV,mBAAcM,4EAAd;IAEA,cAAc,IAAd;IACA,oBAA4C;MACxC,CAACA,wFAAD,GAA2B,cADa;MAExC,CAACA,sFAAD,GAAyB,YAFe;MAGxC,CAACA,qFAAD,GAAwB,WAHgB;MAIxC,CAACA,6FAAD,GAAgC;IAJQ,CAA5C;IAOA,yBAAiD;MAC7C,CAACA,wFAAD,GAA2B,0BADkB;MAE7C,CAACA,sFAAD,GAAyB,0BAFoB;MAG7C,CAACA,qFAAD,GAAwB,uBAHqB;MAI7C,CAACA,6FAAD,GAAgC;IAJa,CAAjD;;IAOA,4BAAwBW,KAAD,IAA+B;MAClD,OAAO,MAAM,KAAKC,iBAAL,CAAuBD,KAAvB,IACP;QAAE,CAACA,KAAD,GAAS,KAAKC,iBAAL,CAAuBD,KAAvB;MAAX,CADO,GAEP,IAFN;IAGH,CAJD;;IAMA,gBAAW,KAAKN,EAAL,CAAQQ,KAAR,CAAc;MACrBC,cAAc,EAAE,CAAC,IAAD,EAAO,CAACjB,+DAAD,EAAsBA,gEAAA,CAAqB,GAArB,CAAtB,CAAP,CADK;MAErBqB,MAAM,EAAE,CAAC,KAAD,EAAQ,CAACrB,+DAAD,EAAuBsB,OAAD,IAA8B,CAACA,OAAO,CAACC,KAAT,GAAiB;QAAEC,gBAAgB,EAAE;MAApB,CAAjB,GAA8C,IAAlG,CAAR,CAFa;MAGrBC,aAAa,EAAE,CAAC,IAAD,EAAO,CAACzB,+DAAD,EAAsBA,4DAAtB,CAAP,CAHM;MAIrB,GAAG2B,MAAM,CAACC,WAAP,CACCD,MAAM,CAACE,IAAP,CAAY,KAAKC,YAAjB,EACCC,GADD,CACKC,CAAC,IAAI,CAACA,CAAD,EAAI,CAAC,IAAD,EAAO,KAAKC,oBAAL,CAA0BD,CAA1B,CAAP,CAAJ,CADV,CADD;IAJkB,CAAd,CAAX;;IAmCA,eAAWlB,KAAD,IAAmB,KAAKoB,QAAL,CAAcC,QAAd,CAAuBrB,KAAvB,EAA8BsB,OAA3D;;IACA,gBAAYtB,KAAD,IAAmB,KAAKoB,QAAL,CAAcC,QAAd,CAAuBrB,KAAvB,EAA8BuB,QAA9B,CAAuCvB,KAAvC,CAA9B;;IACA,gBAAYA,KAAD,IAAmB,KAAKoB,QAAL,CAAcC,QAAd,CAAuBrB,KAAvB,EAA8BwB,MAA9B,CAAqCxB,KAArC,CAA9B;EA9DI;;EATe,IAANyB,MAAM,CAAChB,KAAD,EAAkB;IACjC,KAAKW,QAAL,CAAcM,UAAd,CAAyBjB,KAAzB,EAAgC;MAAEkB,SAAS,EAAE;IAAb,CAAhC;EACH;;EA0CDG,QAAQ;IAEJ,KAAKnC,UAAL,CAAgBoC,IAAhB,CAAqBC,UAArB,CAAgC,WAAhC,EAA6C,KAAKZ,QAAlD;IACA,KAAKA,QAAL,CAAca,YAAd,CAA2BC,SAA3B,CAAqChB,CAAC,IAAI,KAAKiB,YAAL,CAAkBC,IAAlB,CAAuBlB,CAAvB,CAA1C;EACH;;EAEDmB,WAAW;IAEP,KAAK1C,UAAL,CAAgBoC,IAAhB,CAAqBO,aAArB,CAAmC,WAAnC;EACH;;EAEDC,WAAW,CAACC,OAAD,EAAuB;IAE9B,IAAI,sBAAsBA,OAAtB,IAAiCA,OAAO,CAACC,gBAAR,CAAyBC,YAA9D,EAA4E;MACxE,KAAKC,eAAL;MACA,KAAKvB,QAAL,CAAcwB,KAAd;IACH;EACJ;;EAEDC,eAAe;IAEX,KAAKC,MAAL,GAAc,IAAIC,MAAJ,CAAW,KAAKC,QAAhB,CAAd;IACAC,UAAU,CAAC,MAAM,KAAKC,gBAAL,EAAP,CAAV;EACH;;EAMMP,eAAe;IAElB9B,MAAM,CAACsC,MAAP,CAAc,KAAKnC,YAAnB,EACKoC,OADL,CACalC,CAAC,IAAI,KAAKzB,QAAL,CAAc4D,aAAd,CAA4BnC,CAA5B,EAA+BoC,UAA/B,CAA0CC,MAA1C,EADlB;IAGA,KAAKL,gBAAL;EACH;;EAEOA,gBAAgB;IAEpB,MAAMM,QAAQ,GAAG,KAAKV,MAAL,CAAYU,QAAZ,EAAjB;IAEA3C,MAAM,CAACE,IAAP,CAAY,KAAKC,YAAjB,EAA+BoC,OAA/B,CAAuClC,CAAC,IAAG;MAEvC,MAAMlB,KAAK,GAAGwD,QAAQ,CAACC,MAAT,CAAgBvC,CAAhB,EAAmBjC,yDAAnB,CAAd;MACAe,KAAK,CAAC0D,KAAN,CAAY,KAAK1C,YAAL,CAAkBE,CAAlB,CAAZ;MAEAlB,KAAK,CAAC2D,gBAAN,CAAuB,QAAvB,EAAkCC,KAAD,IAAkC,KAAKC,mBAAL,CAAyB3C,CAAzB,EAA4B0C,KAA5B,CAAnE;MACA5D,KAAK,CAAC2D,gBAAN,CAAuB,MAAvB,EAAgCC,KAAD,IAAkC,KAAKE,iBAAL,CAAuB5C,CAAvB,EAA0B0C,KAA1B,CAAjE;IACH,CAPD;EAQH;;EAEYG,YAAY;IAAA;;IAAA;MAErB,MAAMC,SAAS,SAA8B,KAAI,CAAClB,MAAL,CAAYmB,WAAZ,CAAwB,IAAxB,CAA7C;;MAEA,IAAI7E,4DAAO,CAAC4E,SAAD,CAAX,EAAwB;QAEpB,OAAO;UAAEJ,KAAK,EAAE;QAAT,CAAP;MACH;;MAED,IAAII,SAAS,CAACxC,MAAd,EAAsB;QAElBX,MAAM,CAACE,IAAP,CAAY,KAAI,CAACC,YAAjB,EACKkD,MADL,CACYhD,CAAC,IAAI8C,SAAS,CAACxC,MAAV,CAAiBN,CAAjB,CADjB,EAEKkC,OAFL,CAEalC,CAAC,IAAG;UACT,KAAI,CAACE,QAAL,CAAcC,QAAd,CAAuBH,CAAvB,EAA0BiD,SAA1B,CAAoC;YAAE,CAACjD,CAAD,GAAK8C,SAAS,CAACxC,MAAV,CAAiBN,CAAjB;UAAP,CAApC;QACH,CAJL;QAMA,OAAO;UAAE0C,KAAK,EAAE;QAAT,CAAP;MACH;;MAED,OAAO,EACH,GAAGI,SADA;QAEH,GAAG,KAAI,CAAC5C,QAAL,CAAcX;MAFd,CAAP;IApBqB;EAwBxB;;EAEOqD,iBAAiB,CAAC9D,KAAD,EAAgB4D,KAAhB,EAA4C;IACjE,KAAKxC,QAAL,CAAcC,QAAd,CAAuBrB,KAAvB,EAA8BoE,aAA9B;EACH;;EAEOP,mBAAmB,CAAC7D,KAAD,EAAgB4D,KAAhB,EAA4C;IAEnE,KAAK3D,iBAAL,CAAuBD,KAAvB,IAAgC4D,KAAK,CAAC5D,KAAD,CAAL,CAAa4D,KAA7C;IACA,KAAKxC,QAAL,CAAcC,QAAd,CAAuBrB,KAAvB,EAA8BqE,sBAA9B;EACH;;AAxIqC;;;mBAA7BsK,+BAA6BrP,+DAAAA,CAa1BH,qDAb0B,GAalBG,+DAAAA,CAAAA,8DAAAA,GAAAA,+DAAAA,CAAAA,kDAAAA;AAAA;;;QAbXqP;EAA6BrK;EAAAC;IAAAvB;IAAAwB;IAAAC;IAAAhC;IAAAhB;EAAA;EAAAiD;IAAAvC;EAAA;EAAAwC,WAAAA,kEAAAA;EAAAC;EAAAC;EAAAC;EAAAC;IAAA;MCd1CzF,4DAAAA,cACiC,CADjC,EACiC,KADjC,EACiC,CADjC,EACiC,CADjC,EACiC,IADjC;MAIYA,oDAAAA;MAASA,0DAAAA;MAGjBA,4DAAAA;MACIA,uDAAAA;MACAA,wDAAAA;MAIJA,0DAAAA;MAEAA,4DAAAA,cAAyB,CAAzB,EAAyB,KAAzB;MAEQA,uDAAAA;MACAA,wDAAAA;MAIJA,0DAAAA;MACAA,4DAAAA;MACIA,uDAAAA;MACAA,wDAAAA;MAIJA,0DAAAA;MACAA,4DAAAA;MACIA,uDAAAA;MACAA,wDAAAA;MAIJA,0DAAAA;MAGJA,4DAAAA,eAAwB,EAAxB,EAAwB,gBAAxB,EAAwB,EAAxB,EAAwB,EAAxB,EAAwB,WAAxB;MAEmBA,oDAAAA;MAAiBA,0DAAAA;MAC5BA,uDAAAA;MAGAA,wDAAAA;MACAA,wDAAAA;MACJA,0DAAAA;MAGJA,4DAAAA,gBAAqD,EAArD,EAAqD,KAArD,EAAqD,EAArD;MAEQA,oDAAAA;MACJA,0DAAAA;MACAA,4DAAAA;MACIA,oDAAAA;MACAA,uDAAAA;MAAIA,oDAAAA;MAAUA,4DAAAA;MAAQA,oDAAAA;MAAyBA,0DAAAA;MAAUA,oDAAAA;MACzDA,uDAAAA;MAAIA,oDAAAA;MAAcA,4DAAAA;MAAQA,oDAAAA;MAA0BA,0DAAAA;MAAUA,oDAAAA;MAClEA,0DAAAA;MAGJA,4DAAAA,gBAAmC,EAAnC,EAAmC,cAAnC,EAAmC,EAAnC;MAEQA,oDAAAA;MACJA,0DAAAA;;;;MAhEHA,wDAAAA;MASSA,uDAAAA;MAAAA,wDAAAA;MASIA,uDAAAA;MAAAA,wDAAAA;MAOAA,uDAAAA;MAAAA,wDAAAA;MAOAA,uDAAAA;MAAAA,wDAAAA;MAaMA,uDAAAA;MAAAA,wDAAAA;MACAA,uDAAAA;MAAAA,wDAAAA;MAUUA,uDAAAA;MAAAA,+DAAAA;MACIA,uDAAAA;MAAAA,+DAAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACzDtC;AAEA;;;;;;;;;AAQM,MAAOsP,aAAP,CAAoB;EAL1BpP;IAac,wBAAmB,IAAIT,uDAAJ,EAAnB;IACA,yBAAoB,IAAIA,uDAAJ,EAApB;EAeb;;EAbSyL,aAAa;IAAA;;IAAA;MAEf,KAAI,CAACC,iBAAL,CAAuBrI,IAAvB,CAA4B;QAAEsI,SAAS,EAAEtF,2FAA0BuF;MAAvC,CAA5B;;MAEA,MAAMC,MAAM,SAAS,KAAI,CAACC,cAAL,CAAoB9G,YAApB,EAArB;MAEA,MAAM+G,OAAO,GAAgB,WAAWF,MAAX,GACvB;QAAEF,SAAS,EAAEtF,2FAAb;QAAyC4F,OAAO,EAAEJ,MAAM,CAAChH,KAAP,IAAgB;MAAlE,CADuB,GAEvB;QAAE8G,SAAS,EAAEtF,8FAAb;QAA4C8F,QAAQ,EAAEN;MAAtD,CAFN;;MAIA,KAAI,CAACH,iBAAL,CAAuBrI,IAAvB,CAA4B0I,OAA5B;IAVe;EAWlB;;AAtBqB;;;mBAAb8D;AAAa;;;QAAbA;EAAatK;EAAA+G;IAAA;;;;;;;;;;;;;;;;;;;;;;;;MCV1B/L,4DAAAA,cAA0B,CAA1B,EAA0B,KAA1B,EAA0B,CAA1B,EAA0B,CAA1B,EAA0B,KAA1B,EAA0B,CAA1B;MAGYA,uDAAAA,YAAkC,CAAlC,EAAkC,GAAlC,EAAkC,CAAlC;MAEJA,0DAAAA;MACAA,4DAAAA;MAAMA,oDAAAA;MAAgBA,0DAAAA;MAG1BA,4DAAAA,cAA4B,CAA5B,EAA4B,KAA5B,EAA4B,CAA5B,EAA4B,CAA5B,EAA4B,KAA5B,EAA4B,CAA5B,EAA4B,EAA5B,EAA4B,KAA5B,EAA4B,CAA5B;MAIgBA,oDAAAA;MACJA,0DAAAA;MAEJA,4DAAAA,eAAmB,EAAnB,EAAmB,KAAnB,EAAmB,CAAnB;MAEQA,oDAAAA;MACJA,0DAAAA;MAEJA,4DAAAA,eAAmB,EAAnB,EAAmB,KAAnB,EAAmB,CAAnB;MAEQA,oDAAAA;MACJA,0DAAAA;MAGRA,4DAAAA,eAAiB,EAAjB,EAAiB,KAAjB,EAAiB,CAAjB,EAAiB,EAAjB,EAAiB,KAAjB,EAAiB,CAAjB;MAGYA,oDAAAA;;MACJA,0DAAAA;MAEJA,4DAAAA,eAAmB,EAAnB,EAAmB,KAAnB,EAAmB,CAAnB;MAEQA,oDAAAA;;MACJA,0DAAAA;MAEJA,4DAAAA,eAAmB,EAAnB,EAAmB,KAAnB,EAAmB,CAAnB;MAEQA,oDAAAA;MACJA,0DAAAA;MAKZA,4DAAAA,qBACuB,EADvB,EACuB,yBADvB,EACuB,EADvB,EACuB,EADvB;MASQA,wDAAAA;QAAA,OAAgBgM,iCAAhB;MAA6C,CAA7C;MACJhM,0DAAAA;MAGJA,uDAAAA;MAIAA,4DAAAA,gBAA4B,EAA5B,EAA4B,QAA5B,EAA4B,EAA5B;MAIQA,wDAAAA;QAAA,OAASgM,mBAAT;MAAwB,CAAxB;MAEAhM,4DAAAA;MAAUA,oDAAAA;MAAOA,0DAAAA;MACjBA,oDAAAA;MACJA,0DAAAA;;;;;;MAzCYA,uDAAAA;MAAAA,gEAAAA,MAAAA,yDAAAA;MAKAA,uDAAAA;MAAAA,gEAAAA,MAAAA,yDAAAA;MAeRA,uDAAAA;MAAAA,wDAAAA,mCAA6B,qBAA7B,EAA6B,EAA7B,EAA6B,sBAA7B,EAA6B,EAA7B,EAA6B,kBAA7B,EAA6BgM,oBAA7B,EAA6B,QAA7B,EAA6BA,cAA7B;MAUJhM,uDAAAA;MAAAA,wDAAAA;MAMIA,uDAAAA;MAAAA,wDAAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AClE2D;AAEsD;;;;;;;;;;;ICmB7H,wEAAkF;IAC9E,mFAEmC;IAA/B,8TAAa,iFAAgB,KAAC;IAClC,4DAAgB;IACpB,qEAAe;;;IAHP,0DAAmB;IAAnB,mFAAmB;;;;IAK3B,wEAAsF;IAClF,iFAKwB;IAFpB,gVAAoB,8FAA6B,KAAC,0RAC7B,+FAA8B,KADD;IAGtD,4DAAc;IAClB,qEAAe;;;IANP,0DAAqC;IAArC,qGAAqC;;;IAQ7C,0EAC+B;IAGnB,qEAAwC;IAK5C,4DAAM;IACN,uEAAM;IAAA,6EAAkB;IAAA,4DAAO;;;IAIvC,0EAC+B;IAEvB,mEAAmC;IACnC,uEAAM;IAAA,4EAAiB;IAAA,4DAAO;IAC9B,oEAAG;IACC,6HACJ;IAAA,4DAAI;;ADlDL,MAAM,uBAAuB;IALpC;QAYc,qBAAgB,GAAG,IAAI,uDAAY,EAAc,CAAC;QAClD,sBAAiB,GAAG,IAAI,uDAAY,EAAe,CAAC;QACpD,cAAS,GAAG,IAAI,uDAAY,EAAE,CAAC;QAEzC,4BAAuB,GAAG,wFAAuB,CAAC;QAClD,wBAAmB,GAAmC,qGAAoC,CAAC;QAC3F,yBAAoB,GAAG,qFAAoB,CAAC;KAE/C;;8FAfY,uBAAuB;qHAAvB,uBAAuB;QCTpC,yEAA4B;QACU,2EAAgB;QAAA,4DAAM;QACxD,yEAAqC;QAElB,iEAAM;QAAA,4DAAY;QAC7B,gFAEsC;QAAlC,6MAAiC;QACjC,gFACmD;QAC/C,yEACJ;QAAA,4DAAa;QACb,iFACuD;QACnD,8EACJ;QAAA,4DAAa;QAM7B,uIAKe;QAEf,uIAQe;QAEf,sHAYM;QAEN,qHASM;;QAtDU,0DAAiC;QAAjC,4FAAiC;QAE7B,0DAA8C;QAA9C,2GAA8C;QAI9C,0DAAkD;QAAlD,+GAAkD;QAQvD,0DAAiE;QAAjE,qIAAiE;QAOjE,0DAAqE;QAArE,yIAAqE;QAU9E,0DAA4D;QAA5D,gIAA4D;QAc5D,0DAAyD;QAAzD,6HAAyD;;;;;;;;;;;;;;;;;;;;;;;;;AChD/D;AACA;AACA;;;;;;;;;ICLIA,qEAAAA;IACIA,4DAAAA,cAA0B,CAA1B,EAA0B,KAA1B,EAA0B,CAA1B,EAA0B,CAA1B,EAA0B,KAA1B,EAA0B,CAA1B,EAA0B,CAA1B,EAA0B,KAA1B,EAA0B,CAA1B;IAG4CA,oDAAAA;IAAYA,0DAAAA;IAEhDA,4DAAAA,cAAmB,CAAnB,EAAmB,KAAnB,EAAmB,CAAnB;IACoCA,oDAAAA;IAAOA,0DAAAA;IAE3CA,4DAAAA,cAAmB,EAAnB,EAAmB,KAAnB,EAAmB,CAAnB;IACoCA,oDAAAA;IAAaA,0DAAAA;IAEjDA,4DAAAA,eAAmB,EAAnB,EAAmB,KAAnB,EAAmB,CAAnB;IACoCA,oDAAAA;IAAUA,0DAAAA;IAGlDA,4DAAAA,eAAiB,EAAjB,EAAiB,KAAjB,EAAiB,CAAjB,EAAiB,EAAjB,EAAiB,KAAjB,EAAiB,EAAjB;IAEyCA,oDAAAA;IAAgCA,0DAAAA;IAErEA,4DAAAA,eAAmB,EAAnB,EAAmB,KAAnB,EAAmB,EAAnB;IACqCA,oDAAAA;IAA8CA,0DAAAA;IAEnFA,4DAAAA,eAAmB,EAAnB,EAAmB,KAAnB,EAAmB,EAAnB;IACqCA,oDAAAA;IAAiCA,0DAAAA;IAEtEA,4DAAAA,eAAmB,EAAnB,EAAmB,KAAnB,EAAmB,EAAnB;IACqCA,oDAAAA;;IAAkCA,0DAAAA;IAInFA,mEAAAA;;;;;IAbiDA,uDAAAA;IAAAA,+DAAAA;IAGAA,uDAAAA;IAAAA,+DAAAA;IAGAA,uDAAAA;IAAAA,+DAAAA;IAGAA,uDAAAA;IAAAA,+DAAAA,CAAAA,yDAAAA;;;;;;IAM7CA,gEAAAA;;;;;;IACAA,gEAAAA;;;;;;IAKJA,4DAAAA;IAAGA,oDAAAA;IAAOA,0DAAAA;;;;;;;;IAIVA,4DAAAA;IAIIA,wDAAAA;MAAAA,2DAAAA;MAAA;MAAA,OAAoBA,yDAAAA,iCAApB;IAA4C,CAA5C,EAA6C,mBAA7C,EAA6C;MAAAA,2DAAAA;MAAA;MAAA,OACxBA,yDAAAA,mCADwB;IACC,CAD9C,EAA6C,WAA7C,EAA6C;MAAAA,2DAAAA;MAAA;MAAA,OAEhCA,yDAAAA,qBAFgC;IAErB,CAFxB;;;;;IAIJA,0DAAAA;;;;;IAPIA,wDAAAA,qBAAAA,yDAAAA,kCAA8C,qBAA9C,EAA8CA,yDAAAA,mCAA9C,EAA8C,YAA9C,EAA8CA,yDAAAA,0BAA9C,EAA8C,SAA9C,EAA8CA,yDAAAA,8BAA9C;;;;ADhCF,MAAO0P,gBAAP,CAAuB;EAQzBxP,YACYsM,KADZ,EAEYC,KAFZ,EAEwB;IADZ;IACA;IARZ,mBAAc,KAAKD,KAAL,CAAWE,MAAX,CAAkB6C,+EAAlB,CAAd;IACA,sBAAiB,KAAK/C,KAAL,CAAWE,MAAX,CAAkB6C,kFAAlB,CAAjB;IACA,yBAAoB,KAAK/C,KAAL,CAAWE,MAAX,CAAkB6C,2FAAlB,CAApB;IACA,mBAAc,KAAK/C,KAAL,CAAWE,MAAX,CAAkB6C,0FAAlB,CAAd;IACA,4BAAuB,KAAK/C,KAAL,CAAWE,MAAX,CAAkB6C,8FAAlB,CAAvB;IAOA,kBAAaE,gFAAb;EAFI;;EAIJjN,QAAQ;IAEJ,KAAKiK,KAAL,CAAWU,QAAX,CAAoB,gBAApB;IACA,KAAKX,KAAL,CAAWa,QAAX,CAAoBmC,yFAAA,EAApB;EACH;;EAED5B,gBAAgB,CAACC,UAAD,EAAuB;IAEnC,KAAKrB,KAAL,CAAWa,QAAX,CAAoBmC,yFAAA,CAAqC;MAAE3B;IAAF,CAArC,CAApB;EACH;;EAED1C,iBAAiB,CAACoC,IAAD,EAAkB;IAE/B,KAAKf,KAAL,CAAWa,QAAX,CAAoBmC,0FAAA,CAAsC;MAAEjC;IAAF,CAAtC,CAApB;EACH;;EAEDsC,SAAS;IAEL,KAAKrD,KAAL,CAAWa,QAAX,CAAoBmC,kFAAA,EAApB;EACH;;AAlCwB;;;mBAAhBE,kBAAgB1P,+DAAAA,CAAAA,8CAAAA,GAAAA,+DAAAA,CAAAA,4DAAAA;AAAA;;;QAAhB0P;EAAgB1K;EAAAM;EAAAC;EAAAC;EAAAC;IAAA;MCb7BzF,4DAAAA;MACIA,wDAAAA;;MAgCAA,4DAAAA;MACIA,wDAAAA;;MACAA,wDAAAA;;MACJA,0DAAAA;MAGJA,wDAAAA,2EAAAA,oEAAAA;MAIAA,wDAAAA,8EAAAA,oEAAAA;;;;;;;;MA1CmBA,uDAAAA;MAAAA,wDAAAA,SAAAA,yDAAAA;MAiCIA,uDAAAA;MAAAA,wDAAAA,SAAAA,yDAAAA,mDAAkD,UAAlD,EAAkDoO,GAAlD;MACApO,uDAAAA;MAAAA,wDAAAA,SAAAA,yDAAAA,gDAA+C,UAA/C,EAA+CmO,GAA/C;;;;;;;;;;;;;;;;;;;;;;;ACjCyC;;;AAOzD,MAAM,+BAA+B;IAExC,YACY,KAAY;QAAZ,UAAK,GAAL,KAAK,CAAO;IACrB,CAAC;IAEJ,QAAQ;QAEJ,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,0BAA0B,0EAAmB,EAAE,CAAC,CAAC;IACzE,CAAC;;8GATQ,+BAA+B;6HAA/B,+BAA+B;QCT5C,yEAAqB;QACQ,+EAAoB;QAAA,4DAAK;QAClD,oEAAG;QAAQ,yFAA8B;QAAA,4DAAS;QAElD,oEAAG;QACC,8FAAkC;QAAA,yEAAQ;QAAA,+EAAU;QAAA,4DAAS;QAAA,uFAC5D;QAAA,0EAAQ;QAAA,iFAAW;QAAA,4DAAS;QAAA,wHACI;QAAA,0EAAQ;QAAA,4EAAM;QAAA,4DAAS;QAAA,oGACxD;QAAA,0EAAQ;QAAA,2EAAK;QAAA,4DAAS;QAAC,qEAAQ;QAAA,0EAAQ;QAAA,2EAAK;QAAA,4DAAS;QAAA,8DAAE;QAAA,0EAAQ;QAAA,4EAAM;QAAA,4DAAS;QAAC,gEAC/E;QAAA,0EAAQ;QAAA,6EAAO;QAAA,4DAAS;QAAA,oLAEV;QAAA,0EAAQ;QAAA,+EAAS;QAAA,4DAAS;QAAA,mKAEnB;QAAA,0EAAQ;QAAA,8EAAQ;QAAA,4DAAS;QAAA,+DAClD;QAAA,4DAAI;QAEJ,qEAAG;QACC,mPAEJ;QAAA,4DAAI;QAEJ,qEAAG;QACC,wSAEqB;QAAA,0EAAQ;QAAA,yEAAW;QAAA,4DAAS;QAAA,uQAGnC;QAAA,0EAAQ;QAAA,wEAAU;QAAA,4DAAS;QAAA,0TAI7C;QAAA,4DAAI;QAEJ,qEAAG;QACC,qFAAwB;QAAA,wEAAoC;QAAA,8EAAkB;QAAA,4DAAI;QAAA,8DACtF;QAAA,4DAAI;QAEJ,sEAAI;QAEQ,gFAAoB;QAAA,4DAAK;QAC7B,sEAAI;QAGQ,iNAEJ;QAAA,4DAAI;QAKhB,sEAAI;QACI,sFAA0B;QAAA,4DAAK;QACnC,sEAAI;QAGQ,u2BASJ;QAAA,4DAAI;QAER,sEAAI;QAEI,giBAMJ;QAAA,4DAAI;QAER,sEAAI;QAEI,0UAGJ;QAAA,4DAAI;QAKhB,sEAAI;QACI,6FAAiC;QAAA,4DAAK;QAC1C,sEAAI;QAGQ,++BAUJ;QAAA,4DAAI;QAER,sEAAI;QAEI,ilBAMJ;QAAA,4DAAI;QAKhB,sEAAI;QACI,iGAAqC;QAAA,4DAAK;QAC9C,sEAAI;QAGQ,6qBAOJ;QAAA,4DAAI;QAER,sEAAI;QAEI,0iBAMJ;QAAA,4DAAI;QAER,sEAAI;QAEI,ucAKJ;QAAA,4DAAI;QAER,sEAAI;QAEI,6NAEJ;QAAA,4DAAI;QAER,sEAAI;QAEI,sUAGJ;QAAA,4DAAI;QAKhB,uEAAI;QACI,iGAAoC;QAAA,4DAAK;QAC7C,uEAAI;QAGQ,8cAKJ;QAAA,4DAAI;QAKhB,uEAAI;QACI,sFAAyB;QAAA,4DAAK;QAClC,uEAAI;QAGQ,uiBAMJ;QAAA,4DAAI;QAKhB,uEAAI;QACI,2FAA8B;QAAA,4DAAK;QACvC,uEAAI;QAGQ,41BASJ;QAAA,4DAAI;QAKhB,uEAAI;QACI,sFAAyB;QAAA,4DAAK;QAClC,uEAAI;QAGQ,4zBASJ;QAAA,4DAAI;QAKhB,uEAAI;QACI,wEAAW;QAAA,4DAAK;QACpB,uEAAI;QAGQ,yKAEJ;QAAA,4DAAI;QAER,uEAAI;QAEI,qUAGJ;QAAA,4DAAI;QAER,uEAAI;QAEI,w+CAgBJ;QAAA,4DAAI;QAER,uEAAI;QAEI,oLAEJ;QAAA,4DAAI;QAER,uEAAI;QAEI,kWAIJ;QAAA,4DAAI;QAKhB,uEAAI;QACI,oFAAuB;QAAA,4DAAK;QAChC,uEAAI;QAGQ,2zBASJ;QAAA,4DAAI;QAER,uEAAI;QAEI,8sBAOJ;QAAA,4DAAI;QAKhB,uEAAI;QACI,4EAAe;QAAA,4DAAK;QACxB,uEAAI;QAGQ,0uBAQJ;QAAA,4DAAI;QAKhB,uEAAI;QACI,uFAA0B;QAAA,4DAAK;QACnC,uEAAI;QAGQ,muBAQJ;QAAA,4DAAI;QAER,uEAAI;QAEI,+iBAMJ;QAAA,4DAAI;QAER,uEAAI;QAEI,gnBAMJ;QAAA,4DAAI;QAKhB,uEAAI;QACI,kFAAqB;QAAA,4DAAK;QAC9B,uEAAI;QAGQ,+wBAQJ;QAAA,4DAAI;QAER,uEAAI;QAEI,gsBAOJ;QAAA,4DAAI;QAER,uEAAI;QAEI,owBAQJ;QAAA,4DAAI;QAER,uEAAI;QAEI,gUAGJ;QAAA,4DAAI;QAER,uEAAI;QAEI,gcAKJ;QAAA,4DAAI;QAER,uEAAI;QAEI,6fAKJ;QAAA,4DAAI;QACJ,sEAAG;QACC,kEAAI;QACJ,kEAAI;QAAA,kEAAI;QACR,uFAAyB;QAAA,kEAAI;QAC7B,8EAAgB;QAAA,kEAAI;QACpB,yEAA2B;QAAA,yEAAY;QAAA,4DAAI;QAAA,kEAAI;QAC/C,yEAAoC;QAAA,+EAAkB;QAAA,4DAAI;QAGlE,uEAAI;QAEI,oQAGJ;QAAA,4DAAI;QAMpB,wEAAK;QAAA,mEAAM;QAAA,4DAAM;;;;;;;;;;;;;;;;;;;ACvckE;AACzB;;AAKvD,MAAM,wBAAwB;IAKjC,YACY,UAAsB;QAAtB,eAAU,GAAV,UAAU,CAAY;IAC/B,CAAC;IAEJ,IAAI,OAAO,KAAK,OAAO,IAAI,CAAC,UAAU,CAAC,aAA4B,CAAC,CAAC,CAAC;IAEtE,WAAW;QAEP,IAAI,CAAC,aAAa,EAAE,CAAC;IACzB,CAAC;IAED,eAAe;QAEX,uDAAuD;QACvD,0EAA0E;QAC1E,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,IAAI,CAAC,yBAAyB,EAAE,CAAC;IACrC,CAAC;IAEO,aAAa;QAEjB,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI;eACvB,IAAI,CAAC,eAAe;eACpB,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,iBAAiB,EAAE,CAAC;QAEhD,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,MAAM,EAAE,YAAY,GAAG,GAAG,GAAG,2EAAmB,EAAE,CAAC,CAAC;IAClF,CAAC;IAEO,yBAAyB;QAE7B,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,cAAc,EAAE,OAAO,2EAAmB,EAAE,EAAE,CAAC,CAAC;IAC9E,CAAC;;gGApCQ,wBAAwB;sHAAxB,wBAAwB;;;;;;;;;;;;;;;;ACN9B,SAAS,mBAAmB,CAAC,SAAiB,EAAE;IAEnD,OAAO,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,EAAE;QAE3C,4BAA4B;QAC5B,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;QACnC,OAAO,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IAC5B,CAAC,CAAC,CAAC;AACP,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACAM,MAAM,mBAAmB;IAE5B,YACW,MAAyC;QAAzC,WAAM,GAAN,MAAM,CAAmC;QAGpD,UAAK,GAAG,EAAE,CAAC;IAFR,CAAC;IAIJ,QAAQ;IACR,CAAC;;sFATQ,mBAAmB;iHAAnB,mBAAmB;QCRhC,qEAAI;QAAA,uEAAY;QAAA,4DAAK;QACrB,oFAA6D;QAC9C,gEAAK;QAAA,4DAAY;QAC5B,8EAI0B;QAHtB,sLAAmB;QADvB,4DAI0B;QAE9B,yEAA2B;QAInB,mEACJ;QAAA,4DAAS;QACT,6EAGoC;QAFhC,4IAAS,2BAAmB,IAAC;QAG7B,kEACJ;QAAA,4DAAS;;;QAhBL,0DAAmB;QAAnB,8EAAmB;QAcnB,0DAA+B;QAA/B,iFAA+B;;;;;;;;;;;;;;;;;;;;;;IElBvC,yEAC0B;IAElB,kEAAmC;IACnC,sEAAK;IAAA,0EAAe;IAAA,4DAAM;IAG9B,yEAAiC;IAC7B,uDACJ;IAAA,4DAAM;;;IADF,0DACJ;IADI,wFACJ;;ADFG,MAAM,qBAAqB;;0FAArB,qBAAqB;mHAArB,qBAAqB;QCPlC,iHAUM;;QAVA,2EAAW;;;;;;;;;;;;;;;;;;;;;;;;;;ACA8B;AAEmB;AACR;AACN;AACqC;AACf;AACM;AACrB;;AAE3D,MAAM,oBAAoB,GAAG;IACzB,kGAAwB;IACxB,yFAAqB;CACxB,CAAC;AAuBK,MAAM,YAAY;;wEAAZ,YAAY;yGAAZ,YAAY;6GAnBjB,yDAAY;QACZ,oEAAa;QACb,uDAAW;QACX,+DAAmB;QACnB,4DAAc;QACd,qEAAa,EAQb,4DAAc;QACd,uDAAW;QACX,+DAAmB;QACnB,qEAAa;mIAGR,YAAY,mBAzBrB,kGAAwB;QACxB,yFAAqB,EAcjB,mFAAmB,aATnB,yDAAY;QACZ,oEAAa;QACb,uDAAW;QACX,+DAAmB;QACnB,4DAAc;QACd,qEAAa,aAXjB,kGAAwB;QACxB,yFAAqB,EAkBjB,4DAAc;QACd,uDAAW;QACX,+DAAmB;QACnB,qEAAa;;;;;;;;;;;;;;;;;ACjC6B;AAG3C,MAAM,iBAAiB,GAAG,yDAAY,CACzC,4BAA4B,EAC5B,kDAAK,EAA2C,CACnD,CAAC;;;;;;;;;;;;;;;;;;ACHK,MAAM,kBAAkB;IAE3B,gBAAe,CAAC;;oFAFP,kBAAkB;mHAAlB,kBAAkB,WAAlB,kBAAkB;;;;;;;;;;;;;;;;;;;ACHiB;AACY;AACC;AAEtD,MAAM,kBAAkB,GAAG,0DAAa,CAC3C,0EAAsB,EAAE,EACxB,+CAAE,CAAC,mEAAoC,EAAE,CAAC,KAAK,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,KAAK,EAAE,GAAG,QAAQ,EAAE,CAAC,CAAC,CACjG,CAAC;;;;;;;;;;;;;;;;ACJK,MAAM,sBAAsB,GAAG,GAAG,EAAE;IAEvC,OAAO,EAAsB,CAAC;AAClC,CAAC;;;;;;;;;;;;;;;;;;;;;;;;ACNiD;AAIlD,MAAM,QAAQ,GAAG,MAAM,CAAC;AAEjB,MAAM,oBAAoB,GAAG,yDAAY,CAC5C,IAAI,QAAQ,wBAAwB,CACvC,CAAC;AAEK,MAAM,uBAAuB,GAAG,yDAAY,CAC/C,IAAI,QAAQ,wBAAwB,EACpC,kDAAK,EAAyB,CACjC,CAAC;AAEK,MAAM,mBAAmB,GAAG,yDAAY,CAC3C,IAAI,QAAQ,mBAAmB,CAClC,CAAC;AAEK,MAAM,qBAAqB,GAAG,yDAAY,CAC7C,IAAI,QAAQ,4BAA4B,EACxC,kDAAK,EAA4E,CACpF,CAAC;AAEK,MAAM,sBAAsB,GAAG,yDAAY,CAC9C,IAAI,QAAQ,sBAAsB,EAClC,kDAAK,EAA8B,CACtC,CAAC;AAEK,MAAM,wBAAwB,GAAG,yDAAY,CAChD,IAAI,QAAQ,wBAAwB,EACpC,kDAAK,EAAkC,CAC1C,CAAC;AAEK,MAAM,iBAAiB,GAAG,yDAAY,CACzC,IAAI,QAAQ,gBAAgB,EAC5B,kDAAK,EAAoC,CAC5C,CAAC;AAEK,MAAM,mBAAmB,GAAG,yDAAY,CAC3C,IAAI,QAAQ,kBAAkB,EAC9B,kDAAK,EAA6B,CACrC,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AC1C2C;AAIiB;AAI6B;AACF;AACQ;AAEnD;AACa;AASrC;AACoD;AACG;;;;;;AAGtE,MAAM,WAAW;IAEpB,YACY,OAAgB,EAChB,KAAoB,EACpB,SAAoB,EACpB,eAAgC;QAHhC,YAAO,GAAP,OAAO,CAAS;QAChB,UAAK,GAAL,KAAK,CAAe;QACpB,cAAS,GAAT,SAAS,CAAW;QACpB,oBAAe,GAAf,eAAe,CAAiB;QAG5C,gBAAW,GAAG,2DAAY,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAC9C,qDAAM,CAAC,+DAAgC,CAAC,EACxC,yDAAS,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC,EACvC,yDAAS,CAAC,SAAS,CAAC,EAAE;YAElB,MAAM,OAAO,GAAG;gBACZ,wCAAE,CAAC,4DAA6B,CAAC;oBAC7B,QAAQ,EAAE;wBACN,eAAe,EAAE,SAAS;qBAC7B;iBACJ,CAAC,CAAC;aACN,CAAC;YAEF,IAAI,SAAS,KAAK,kEAAyB,EAAE;gBAEzC,MAAM,gBAAgB,GAAG,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;gBAC5D,MAAM,YAAY,GAAG,IAAI,CAAC,eAAe,CAAC,+BAA+B,CAAC,EAAE,gBAAgB,EAAE,CAAC,CAAC,IAAI,CAChG,yDAAS,CAAC,OAAO,CAAC,EAAE;oBAEhB,MAAM,qBAAqB,GAAG,OAAO,CAAC,YAAY;2BAC3C,OAAO,CAAC,iBAAiB,IAAI,OAAO,CAAC,kBAAkB,IAAI,CAAC,CAAC;oBAEpE,MAAM,4BAA4B,GAAG,OAAO,CAAC,kBAAkB,GAAG,CAAC,IAAI,CAAC,qBAAqB;wBACzF,CAAC,CAAC,4CAAK,CAAC,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC,CAAC,IAAI,CAC3C,oDAAG,CAAC,GAAG,EAAE,CAAC,4DAA6B,CAAC;4BACpC,QAAQ,EAAE,EAAE,SAAS,EAAE,+DAAsB,EAAE;yBAClD,CAAC,CAAC,CACN;wBACD,CAAC,CAAC,wCAAK,CAAC;oBAEZ,OAAO,4CAAK,CACR,wCAAE,CAAC,4DAA6B,CAAC;wBAC7B,QAAQ,EAAE;4BACN,OAAO;4BACP,SAAS,EAAE,qBAAqB;gCAC5B,CAAC,CAAC,+DAAsB;gCACxB,CAAC,CAAC,wDAAe;yBACxB;qBACJ,CAAC,CAAC,EACH,4BAA4B,CAC/B,CAAC;gBACN,CAAC,CAAC,CACL,CAAC;gBAEF,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;aAC9B;YAED,OAAO,6CAAM,CACT,GAAG,OAAO,CACb,CAAC;QACN,CAAC,CAAC,CACL,CAAC,CAAC;QAEH,uBAAkB,GAAG,2DAAY,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CACrD,qDAAM,CAAC,kEAAmC,CAAC,EAC3C,+DAAc,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,0DAAa,CAAC,CAAC,EAChD,yDAAS,CAAC,CAAC,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,EAAE;YAE5B,IAAI,MAAM,CAAC,IAAI,CAAC,SAAS,KAAK,mEAA0B,EAAE;gBAEtD,OAAO,wCAAE,CAAC;oBACN,mBAAmB,EAAE,wEAA+B;oBACpD,gBAAgB,EAAE,IAAI;iBACzB,CAAC,CAAC;aACN;YAED,IAAI,MAAM,CAAC,IAAI,CAAC,SAAS,KAAK,mEAA0B,EAAE;gBAEtD,OAAO,wCAAE,CAAC;oBACN,mBAAmB,EAAE,IAAI;oBACzB,gBAAgB,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO;wBACjC,CAAC,CAAC,6EAA6E;wBAC/E,CAAC,CAAC,IAAI;iBACb,CAAC,CAAC;aACN;YAED,IAAI,MAAM,CAAC,IAAI,CAAC,SAAS,KAAK,sEAA6B,EAAE;gBAEzD,MAAM,MAAM,GAAiC;oBACzC,UAAU,EAAE,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM;oBAC5C,cAAc,EAAE,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc;oBACnD,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,aAAa;oBACzC,SAAS,EAAE,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK;oBAC1C,YAAY,EAAE,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK;oBACxC,cAAc,EAAE,OAAO,CAAC,cAAc;iBACzC,CAAC;gBAEF,OAAO,IAAI,CAAC,eAAe,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAC,IAAI,CAC1D,yDAAS,CAAC,MAAM,CAAC,EAAE;oBAEf,IAAI,MAAM,CAAC,SAAS,EAAE;wBAElB,UAAU,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,GAAG,MAAM,CAAC,kBAAkB,EAAE,IAAI,CAAC,CAAC;wBAClE,OAAO,wCAAE,CAAC,EAAE,mBAAmB,EAAE,qEAA4B,EAAE,CAAC,CAAC;qBACpE;yBACI;wBAED,OAAO,6CAAM,CACT,wCAAE,CAAC,EAAE,mBAAmB,EAAE,IAAI,EAAE,gBAAgB,EAAE,MAAM,CAAC,YAAY,EAAE,UAAU,EAAE,4DAAmB,EAAE,CAAC,EACzG,MAAM,CAAC,cAAc;4BACjB,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,2GAAqB,EAAE;gCACzC,UAAU,EAAE,qBAAqB;gCACjC,QAAQ,EAAE,OAAO;gCACjB,SAAS,EAAE,KAAK;6BACnB,CAAC,CAAC,WAAW,EAAE;4BAChB,CAAC,CAAC,wCAAK,CACd,CAAC;qBACL;gBACL,CAAC,CAAC,EACF,2DAAU,CAAC,CAAC,CAAoB,EAAE,EAAE,CAAC,wCAAE,CAAC;oBACpC,mBAAmB,EAAE,IAAI;oBACzB,gBAAgB,EAAE,CAAC,CAAC,KAAK,CAAC,YAAY;oBACtC,UAAU,EAAE,4DAAmB;iBAClC,CAAC,CAAC,CACN,CAAC;aACL;iBAEI;gBACD,OAAO,wCAAK,CAAC;aAChB;QAEL,CAAC,CAAC,EACF,oDAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,4DAA6B,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAC/D,CAAC,CAAC;QAEH,mBAAc,GAAG,2DAAY,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CACjD,qDAAM,CAAC,8DAA+B,CAAC,EACvC,+DAAc,CACV,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,0DAAa,CAAC,EAChC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,oEAAuB,CAAC,CAC7C,EACD,yDAAS,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,YAAY,CAAC,EAAE,EAAE;YAEpC,MAAM,KAAK,GAAG,IAAI,gDAAyB,EAAE,CAAC;YAC9C,KAAK,CAAC,YAAY,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;YAEzC,MAAM,MAAM,GAAiB;gBACzB,GAAG,YAAY;gBACf,aAAa,EAAE,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,aAAa,CAAC;gBACxD,kBAAkB,EAAE,YAAY,CAAC,aAAa,CAAC,SAAS,CAAC,YAAY,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,CAAC;gBAC/F,yBAAyB,EAAE,IAAI;gBAC/B,cAAc,EAAE,OAAO,CAAC,cAAc;aACzC,CAAC;YAEF,MAAM,QAAQ,GAAG,IAAI,CAAC,eAAe,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,IAAI,CAChE,yDAAS,CAAC,MAAM,CAAC,EAAE;gBAEf,IAAI,MAAM,CAAC,SAAS,EAAE;oBAElB,UAAU,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,GAAG,MAAM,CAAC,kBAAkB,EAAE,IAAI,CAAC,CAAC;oBAClE,OAAO,wCAAE,CAAC,EAAE,mBAAmB,EAAE,qEAA4B,EAAE,CAAC,CAAC;iBACpE;qBACI;oBAED,OAAO,6CAAM,CACT,wCAAE,CAAC;wBACC,mBAAmB,EAAE,IAAI;wBACzB,kBAAkB,EAAE,MAAM,CAAC,YAAY;wBACvC,YAAY,EAAE,+DAAsB;qBACvC,CAAC,EACF,MAAM,CAAC,cAAc;wBACjB,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,2GAAqB,EAAE;4BACzC,UAAU,EAAE,qBAAqB;4BACjC,QAAQ,EAAE,OAAO;4BACjB,SAAS,EAAE,KAAK;yBACnB,CAAC,CAAC,WAAW,EAAE;wBAChB,CAAC,CAAC,wCAAK,CACd,CAAC;iBACL;YACL,CAAC,CAAC,EACF,2DAAU,CAAC,CAAC,CAAoB,EAAE,EAAE,CAAC,wCAAE,CAAC;gBACpC,mBAAmB,EAAE,IAAI;gBACzB,gBAAgB,EAAE,CAAC,CAAC,KAAK,CAAC,YAAY;gBACtC,YAAY,EAAE,+DAAsB;aACvC,CAAC,CAAC,CACN,CAAC;YAEF,OAAO,4CAAK,CACR,wCAAE,CAAC,EAAE,mBAAmB,EAAE,wEAA+B,EAAE,kBAAkB,EAAE,IAAI,EAAE,CAAC,EACtF,QAAQ,CACX,CAAC;QACN,CAAC,CAAC,EACF,oDAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,4DAA6B,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAC/D,CAAC,CAAC;QAEH,2BAAsB,GAAG,2DAAY,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CACzD,qDAAM,CAAC,gEAAiC,CAAC,EACzC,uDAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,IAAI,gGAAuC,CAAC,EACrE,+DAAc,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,0DAAa,CAAC,CAAC,EAChD,oDAAG,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,GAAG,OAAO,CAAC,kBAAkB,EAAE,IAAI,CAAC,CAAC,EACxF,oDAAG,CAAC,GAAG,EAAE,CAAC,4DAA6B,CAAC;YACpC,QAAQ,EAAE;gBACN,mBAAmB,EAAE,wEAA+B;aACvD;SACJ,CAAC,CAAC,CACN,CAAC,CAAC;QAEH,mBAAc,GAAG,2DAAY,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CACjD,qDAAM,CAAC,8DAA+B,CAAC,EACvC,+DAAc,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,0DAAa,CAAC,CAAC,EAChD,yDAAS,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,EAAE;YACtB,OAAO,IAAI,CAAC,eAAe,CAAC,oBAAoB,CAAC,OAAO,CAAC,cAAc,CAAC;QAC5E,CAAC,CAAC,CACL,CAAC,CAAC;IA7MA,CAAC;IA+MJ,eAAe;QAEX,MAAM,mBAAmB,GAAG,IAAI,kDAAe,CAAC,mEAA0B,CAAC,CAAC;QAC5E,MAAM,QAAQ,GAAG,QAAQ,CAAC,aAAa,CAAC,eAAe,qFAA2B,IAAI,CAAC;eAChF,IAAI,CAAC,uBAAuB,EAAE,CAAC;QAEtC,QAAQ,CAAC,gBAAgB,CAAC,MAAM,EAAE,GAAG,EAAE,GAAG,mBAAmB,CAAC,IAAI,CAAC,kEAAyB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAClG,QAAQ,CAAC,gBAAgB,CAAC,OAAO,EAAE,GAAG,EAAE,GAAG,mBAAmB,CAAC,IAAI,CAAC,0EAAiC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAE3G,OAAO,mBAAmB,CAAC,IAAI,EAAE,CAAC;IACtC,CAAC;IAEO,uBAAuB;QAE3B,MAAM,QAAQ,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;QAClD,QAAQ,CAAC,GAAG,GAAG,qFAA2B,CAAC;QAC3C,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;QAEpC,OAAO,QAAQ,CAAC;IACpB,CAAC;;sEAzOQ,WAAW;6GAAX,WAAW,WAAX,WAAW;;;;;;;;;;;;;;;;;;;AC3BwB;AACF;AACC;AAExC,MAAM,WAAW,GAAG,0DAAa,CACpC,4DAAe,EAAE,EACjB,+CAAE,CAAC,iEAAkC,EAAE,CAAC,KAAK,EAAE,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,KAAK,EAAE,UAAU,EAAE,CAAC,CAAC,EAC7F,+CAAE,CAAC,mEAAoC,EAAE,CAAC,KAAK,EAAE,EAAE,YAAY,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,KAAK,EAAE,YAAY,EAAE,CAAC,CAAC,EACnG,+CAAE,CAAC,4DAA6B,EAAE,CAAC,KAAK,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,KAAK,EAAE,GAAG,QAAQ,EAAE,CAAC,CAAC,CAC1F,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;ACT2C;AAGtC,MAAM,sBAAsB,GAAG,CAAC,KAAa,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC;AAE7D,MAAM,aAAa,GAAG,2DAAc,CACvC,sBAAsB,EACtB,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,CACzB,CAAC;AAEK,MAAM,sBAAsB,GAAG,2DAAc,CAChD,sBAAsB,EACtB,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,gBAAgB,CAClC,CAAC;AAEK,MAAM,wBAAwB,GAAG,2DAAc,CAClD,sBAAsB,EACtB,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,kBAAkB,CACpC,CAAC;AAEK,MAAM,eAAe,GAAG,2DAAc,CACzC,sBAAsB,EACtB,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,SAAS,CAC3B,CAAC;AAEK,MAAM,yBAAyB,GAAG,2DAAc,CACnD,sBAAsB,EACtB,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,mBAAmB,CACrC,CAAC;AAEK,MAAM,uBAAuB,GAAG,2DAAc,CACjD,sBAAsB,EACtB,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,YAAY,CAC9B,CAAC;AAEK,MAAM,qBAAqB,GAAG,2DAAc,CAC/C,sBAAsB,EACtB,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,UAAU,CAC5B,CAAC;AAEK,MAAM,qBAAqB,GAAG,2DAAc,CAC/C,sBAAsB,EACtB,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,eAAe,CACjC,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;ACxCF,IAAY,kBAMX;AAND,WAAY,kBAAkB;IAE1B,yDAAmC;IACnC,yCAAmB;IACnB,uCAAiB;IACjB,uDAAiC;AACrC,CAAC,EANW,kBAAkB,KAAlB,kBAAkB,QAM7B;AAED,IAAY,WAMX;AAND,WAAY,WAAW;IAEnB,0CAA2B;IAC3B,sCAAuB;IACvB,oCAAqB;IACrB,oDAAqC;AACzC,CAAC,EANW,WAAW,KAAX,WAAW,QAMtB;AAED,IAAY,UAKX;AALD,WAAY,UAAU;IAElB,2CAA6B;IAC7B,2BAAa;IACb,yCAA2B;AAC/B,CAAC,EALW,UAAU,KAAV,UAAU,QAKrB;AAED,IAAY,oBAIX;AAJD,WAAY,oBAAoB;IAE5B,iDAAyB;IACzB,2CAAmB;AACvB,CAAC,EAJW,oBAAoB,KAApB,oBAAoB,QAI/B;AAED,IAAY,iBAGX;AAHD,WAAY,iBAAiB;IACzB,gDAA2B;IAC3B,oCAAe;AACnB,CAAC,EAHW,iBAAiB,KAAjB,iBAAiB,QAG5B;AAED,IAAY,uBAGX;AAHD,WAAY,uBAAuB;IAC/B,wDAA6B;IAC7B,gEAAqC;AACzC,CAAC,EAHW,uBAAuB,KAAvB,uBAAuB,QAGlC;AA4BD,IAAY,aAA6D;AAAzE,WAAY,aAAa;IAAG,iEAAY;IAAE,uEAAe;IAAE,iEAAY;AAAC,CAAC,EAA7D,aAAa,KAAb,aAAa,QAAgD;AAgClE,MAAM,mBAAmB,GAAI,EAAE,cAAc,EAAE,EAAE,EAAE,CAAC;AACpD,MAAM,sBAAsB,GAAK;IACpC,iBAAiB,EAAE,KAAK;IACxB,SAAS,EAAE,EAAE;IACb,QAAQ,EAAE,EAAE;CACf,CAAC;AAEK,MAAM,eAAe,GAAG,GAAG,EAAE;IAEhC,OAAO;QACH,eAAe,EAAE,kBAAkB,CAAC,eAAe;QACnD,SAAS,EAAE,UAAU,CAAC,YAAY;QAClC,UAAU,EAAE,mBAAmB;QAC/B,YAAY,EAAE,sBAAsB;KAC1B,CAAC;AACnB,CAAC;;;;;;;;;;;;;;;;;;;;ACnHsE;AACrB;AACS;AACH;AAEjD,MAAM,oBAAoB,GAAG;IAChC,gFAAkB;IAClB,iEAAa;IACb,2DAAW;IACX,oEAAc;CACjB,CAAC;;;;;;;;;;;;;;;;;;;ACVgD;AAGlD,MAAM,QAAQ,GAAG,SAAS,CAAC;AAEpB,MAAM,uBAAuB,GAAG,yDAAY,CAC/C,IAAI,QAAQ,2BAA2B,EACvC,kDAAK,EAA8B,CACtC,CAAC;AAEK,MAAM,iBAAiB,GAAG,yDAAY,CACzC,IAAI,QAAQ,gBAAgB,EAC5B,kDAAK,EAAuC,CAC/C,CAAC;AAEK,MAAM,sBAAsB,GAAG,yDAAY,CAC9C,IAAI,QAAQ,sBAAsB,EAClC,kDAAK,EAA8B,CACtC,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;AChB4D;AAED;AAC0B;AACb;AAC9B;;;;;AAGrC,MAAM,cAAc;IAEvB,YACY,OAAgB,EAChB,SAAoB,EACpB,eAAgC;QAFhC,YAAO,GAAP,OAAO,CAAS;QAChB,cAAS,GAAT,SAAS,CAAW;QACpB,oBAAe,GAAf,eAAe,CAAiB;QAG5C,sBAAiB,GAAG,2DAAY,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CACpD,qDAAM,CAAC,4FAAsC,CAAC,EAC9C,yDAAS,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,eAAe,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,EAChF,mDAAG,CAAC,OAAO,CAAC,EAAE,CAAC,sFAAgC,CAAC,EAAE,QAAQ,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,6DAAiB,EAAE,EAAE,CAAC,CAAC,CAC5G,CAAC,CAAC;QAGH,sBAAiB,GAAG,2DAAY,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CACpD,qDAAM,CAAC,2FAAqC,CAAC,EAC7C,yDAAS,CAAC,MAAM,CAAC,EAAE;YAEf,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,iGAAmB,EAAE;gBACtD,QAAQ,EAAE,OAAO;gBACjB,KAAK,EAAE,MAAM;aAChB,CAAC,CAAC;YAEH,OAAO,QAAQ,CAAC,WAAW,EAAE,CAAC,IAAI,CAC9B,sDAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAChB,yDAAS,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,mBAAmB,CAAC,EAAE,cAAc,EAAE,MAAM,CAAC,cAAc,EAAE,KAAK,EAAE,CAAC,CAAC,EAC9G,mDAAG,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC,CAC9B,CAAC;QACN,CAAC,CAAC,CACL,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC;IAxBrB,CAAC;;4EANK,cAAc;+GAAd,cAAc,WAAd,cAAc;;;;;;;;;;;;;;;;;;;ACVqB;AACK;AACD;AAE7C,MAAM,cAAc,GAAG,0DAAa,CACvC,kEAAkB,EAAE,EACpB,+CAAE,CAAC,+DAAgC,EAAE,CAAC,KAAK,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,KAAK,EAAE,GAAG,QAAQ,EAAE,CAAC,CAAC,CAC7F,CAAC;;;;;;;;;;;;;;;;ACLK,MAAM,kBAAkB,GAAG,CAAC,KAAa,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC;;;;;;;;;;;;;;;;;ACAnE,IAAY,SAGX;AAHD,WAAY,SAAS;IACjB,gCAAmB;IACnB,gCAAmB;AACvB,CAAC,EAHW,SAAS,KAAT,SAAS,QAGpB;AAQM,MAAM,kBAAkB,GAAG,GAAG,EAAE;IAEnC,OAAO;QAEH,SAAS,EAAE,SAAS,CAAC,OAAO;QAC5B,OAAO,EAAE,EAAE;KACd,CAAC;AACN,CAAC,CAAC;;;;;;;;;;;;;;;;;;;;;;ACjBqE;AACf;AACN;AACS;AAEpD,MAAM,UAAU,GAAgE;IACnF,WAAW,EAAE,gFAAkB;IAC/B,IAAI,EAAE,2DAAW;IACjB,MAAM,EAAE,iEAAa;IACrB,OAAO,EAAE,oEAAc;CAC1B,CAAC;AAEK,MAAM,oBAAoB,GAA4B;IACzD,YAAY,EAAE,CAAC,UAAU,CAAC;IAC1B,aAAa,EAAE;QACX,uBAAuB,EAAE,IAAI;QAC7B,wBAAwB,EAAE,IAAI;QAC9B,2BAA2B,EAAE,KAAK;QAClC,0BAA0B,EAAE,KAAK;KACpC;CACJ,CAAC;AAEK,SAAS,UAAU,CAAC,OAAsC;IAE7D,OAAO,CAAC,KAAyB,EAAE,MAAc,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;AACjF,CAAC;;;;;;;;;;;;;;;;;;;;;;AC5BiD;AAGlD,MAAM,QAAQ,GAAG,QAAQ,CAAC;AAEnB,MAAM,sBAAsB,GAAG,yDAAY,CAC9C,IAAI,QAAQ,6BAA6B,CAC5C,CAAC;AAEK,MAAM,mBAAmB,GAAG,yDAAY,CAC3C,IAAI,QAAQ,mBAAmB,EAC/B,kDAAK,EAAyB,CACjC,CAAC;AAEK,MAAM,iBAAiB,GAAG,yDAAY,CACzC,IAAI,QAAQ,gBAAgB,EAC5B,kDAAK,EAAsC,CAC9C,CAAC;AAEK,MAAM,uBAAuB,GAAG,yDAAY,CAC/C,IAAI,QAAQ,wBAAwB,EACpC,kDAAK,EAAyB,CACjC,CAAC;AAEK,MAAM,sBAAsB,GAAG,yDAAY,CAC9C,IAAI,QAAQ,sBAAsB,EAClC,kDAAK,EAA8B,CACtC,CAAC;AAEK,MAAM,eAAe,GAAG,yDAAY,CACvC,IAAI,QAAQ,cAAc,CAC7B,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AC5B4D;AAI6B;AACP;AACa;AAE1B;AACZ;AAER;AAC4E;;;;;;;AAIxH,MAAM,aAAa;IAEtB,YACY,OAAgB,EAChB,KAAoB,EACpB,SAAoB,EACpB,eAAgC,EAChC,IAAgB;QAJhB,YAAO,GAAP,OAAO,CAAS;QAChB,UAAK,GAAL,KAAK,CAAe;QACpB,cAAS,GAAT,SAAS,CAAW;QACpB,oBAAe,GAAf,eAAe,CAAiB;QAChC,SAAI,GAAJ,IAAI,CAAY;QAG5B,sBAAiB,GAAG,2DAAY,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CACpD,qDAAM,CAAC,yFAAoC,CAAC,EAC5C,yDAAS,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC,EACvC,yDAAS,CAAC,SAAS,CAAC,EAAE;YAElB,MAAM,OAAO,GAAG;gBACZ,wCAAE,CAAC,oFAA+B,CAAC;oBAC/B,QAAQ,EAAE;wBACN,eAAe,EAAE,SAAS;qBAC7B;iBACJ,CAAC,CAAC;aACN,CAAC;YAEF,IAAI,SAAS,KAAK,oEAAyB,EAAE;gBAEzC,MAAM,cAAc,GAAG,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC,CAAC;gBAEvE,IAAI,CAAC,cAAc,EAAE;oBAEjB,OAAO,uCAAK,CAAC;iBAChB;gBAED,MAAM,YAAY,GAAG,IAAI,CAAC,eAAe,CAAC,gCAAgC,CAAC,cAAc,CAAC,CAAC,IAAI,CAC3F,yDAAS,CAAC,OAAO,CAAC,EAAE;oBAEhB,MAAM,qBAAqB,GAAG,OAAO,CAAC,YAAY;2BAC3C,OAAO,CAAC,iBAAiB,CAAC;oBAEjC,MAAM,4BAA4B,GAAG,OAAO,CAAC,kBAAkB,GAAG,CAAC,IAAI,CAAC,qBAAqB;wBACzF,CAAC,CAAC,4CAAK,CAAC,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC,CAAC,IAAI,CAC3C,oDAAG,CAAC,GAAG,EAAE,CAAC,oFAA+B,CAAC;4BACtC,QAAQ,EAAE;gCACN,eAAe,EAAE,sEAA2B;6BAC/C;yBACJ,CAAC,CAAC,CACN;wBACD,CAAC,CAAC,uCAAK,CAAC;oBAEZ,OAAO,4CAAK,CACR,wCAAE,CAAC,oFAA+B,CAAC;wBAC/B,QAAQ,EAAE;4BACN,OAAO;4BACP,eAAe,EAAE,qBAAqB;gCAClC,CAAC,CAAC,sEAA2B;gCAC7B,CAAC,CAAC,+DAAoB;yBAC7B;qBACJ,CAAC,CAAC,EACH,4BAA4B,CAC/B,CAAC;gBACN,CAAC,CAAC,CACL,CAAC;gBAEF,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;aAC9B;YAED,OAAO,6CAAM,CACT,GAAG,OAAO,CACb,CAAC;QACN,CAAC,CAAC,CACL,CAAC,CAAC;QAEH,uBAAkB,GAAG,2DAAY,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CACrD,qDAAM,CAAC,0FAAqC,CAAC,EAC7C,+DAAc,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,4DAAa,CAAC,CAAC,EAChD,yDAAS,CAAC,CAAC,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,EAAE;YAE5B,IAAI,MAAM,CAAC,IAAI,CAAC,SAAS,KAAK,qEAA0B,EAAE;gBAEtD,OAAO,wCAAE,CAAC;oBACN,mBAAmB,EAAE,0EAA+B;oBACpD,gBAAgB,EAAE,IAAI;iBACzB,CAAC,CAAC;aACN;YAED,IAAI,MAAM,CAAC,IAAI,CAAC,SAAS,KAAK,qEAA0B,EAAE;gBAEtD,OAAO,wCAAE,CAAC;oBACN,mBAAmB,EAAE,IAAI;oBACzB,gBAAgB,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO;wBACjC,CAAC,CAAC,6EAA6E;wBAC/E,CAAC,CAAC,IAAI;iBACb,CAAC,CAAC;aACN;YAED,IAAI,MAAM,CAAC,IAAI,CAAC,SAAS,KAAK,wEAA6B,EAAE;gBAEzD,MAAM,MAAM,GAAiC;oBACzC,UAAU,EAAE,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM;oBAC5C,cAAc,EAAE,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc;oBACnD,SAAS,EAAE,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK;oBAC1C,YAAY,EAAE,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK;oBACxC,cAAc,EAAE,OAAO,CAAC,cAAc;iBACzC,CAAC;gBAEF,OAAO,IAAI,CAAC,eAAe,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAC,IAAI,CAC1D,yDAAS,CAAC,MAAM,CAAC,EAAE;oBAEf,IAAI,MAAM,CAAC,SAAS,EAAE;wBAElB,UAAU,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,GAAG,MAAM,CAAC,kBAAkB,EAAE,IAAI,CAAC,CAAC;wBAClE,OAAO,wCAAE,CAAC,EAAE,mBAAmB,EAAE,uEAA4B,EAAE,CAAC,CAAC;qBACpE;yBACI;wBAED,OAAO,6CAAM,CACT,wCAAE,CAAC,EAAE,mBAAmB,EAAE,IAAI,EAAE,gBAAgB,EAAE,MAAM,CAAC,YAAY,EAAE,UAAU,EAAE,8DAAmB,EAAE,CAAC,EACzG,MAAM,CAAC,cAAc;4BACjB,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,2GAAqB,EAAE;gCACzC,UAAU,EAAE,qBAAqB;gCACjC,QAAQ,EAAE,OAAO;gCACjB,SAAS,EAAE,KAAK;6BACnB,CAAC,CAAC,WAAW,EAAE;4BAChB,CAAC,CAAC,wCAAK,CACd,CAAC;qBACL;gBACL,CAAC,CAAC,EACF,2DAAU,CAAC,CAAC,CAAoB,EAAE,EAAE,CAAC,wCAAE,CAAC;oBACpC,mBAAmB,EAAE,IAAI;oBACzB,gBAAgB,EAAE,CAAC,CAAC,KAAK,CAAC,YAAY;oBACtC,UAAU,EAAE,8DAAmB;iBAClC,CAAC,CAAC,CACN,CAAC;aACL;iBAEI;gBACD,OAAO,wCAAK,CAAC;aAChB;QAEL,CAAC,CAAC,EACF,oDAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,oFAA+B,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CACjE,CAAC,CAAC;QAEH,eAAU,GAAG,2DAAY,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAC7C,qDAAM,CAAC,kFAA6B,CAAC,EACrC,+DAAc,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,4DAAa,CAAC,CAAC,EAChD,yDAAS,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,EAAE;YAEtB,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAwB,OAAO,CAAC,kBAAkB,EAAE,OAAO,CAAC,iBAAiB,CAAC,CAAC;QACxG,CAAC,CAAC,EACF,yDAAS,CAAC,MAAM,CAAC,EAAE;YAEf,IAAI,MAAM,CAAC,SAAS,EAAE;gBAElB,UAAU,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,GAAG,MAAM,CAAC,kBAAkB,EAAE,IAAI,CAAC,CAAC;gBAClE,OAAO,wCAAE,CAAC,EAAE,mBAAmB,EAAE,uEAA4B,EAAE,CAAC,CAAC;aACpE;iBACI;gBAED,OAAO,6CAAM,CACT,wCAAE,CAAC,EAAE,mBAAmB,EAAE,IAAI,EAAE,gBAAgB,EAAE,MAAM,CAAC,YAAY,EAAE,UAAU,EAAE,8DAAmB,EAAE,CAAC,EACzG,MAAM,CAAC,cAAc;oBACjB,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,2GAAqB,EAAE;wBACzC,UAAU,EAAE,qBAAqB;wBACjC,QAAQ,EAAE,OAAO;wBACjB,SAAS,EAAE,KAAK;qBACnB,CAAC,CAAC,WAAW,EAAE;oBAChB,CAAC,CAAC,wCAAK,CACd,CAAC;aACL;QACL,CAAC,CAAC,EACF,oDAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,oFAA+B,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CACjE,CAAC,CAAC;IAnKA,CAAC;IAqKJ,eAAe;QAEX,MAAM,mBAAmB,GAAG,IAAI,kDAAe,CAAC,qEAA0B,CAAC,CAAC;QAC5E,MAAM,QAAQ,GAAG,QAAQ,CAAC,aAAa,CAAC,eAAe,qFAA2B,IAAI,CAAC;eAChF,IAAI,CAAC,uBAAuB,EAAE,CAAC;QAEtC,QAAQ,CAAC,gBAAgB,CAAC,MAAM,EAAE,GAAG,EAAE,GAAG,mBAAmB,CAAC,IAAI,CAAC,oEAAyB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAClG,QAAQ,CAAC,gBAAgB,CAAC,OAAO,EAAE,GAAG,EAAE,GAAG,mBAAmB,CAAC,IAAI,CAAC,4EAAiC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAE3G,OAAO,mBAAmB,CAAC,IAAI,EAAE,CAAC;IACtC,CAAC;IAEO,uBAAuB;QAE3B,MAAM,QAAQ,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;QAClD,QAAQ,CAAC,GAAG,GAAG,qFAA2B,CAAC;QAC3C,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;QAEpC,OAAO,QAAQ,CAAC;IACpB,CAAC;;0EAhMQ,aAAa;+GAAb,aAAa,WAAb,aAAa;;;;;;;;;;;;;;;;;;;ACnBsB;AACG;AACD;AAE3C,MAAM,aAAa,GAAG,0DAAa,CACtC,gEAAiB,EAAE,EACnB,+CAAE,CAAC,mEAAoC,EAAE,CAAC,KAAK,EAAE,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,KAAK,EAAE,UAAU,EAAE,CAAC,CAAC,EAC/F,+CAAE,CAAC,8DAA+B,EAAE,CAAC,KAAK,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,KAAK,EAAE,GAAG,QAAQ,EAAE,CAAC,CAAC,CAC5F,CAAC;;;;;;;;;;;;;;;;;;;;;;ACR2C;AAGtC,MAAM,iBAAiB,GAAG,CAAC,KAAa,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC;AAE1D,MAAM,UAAU,GAAG,2DAAc,CACpC,iBAAiB,EACjB,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,eAAe,CACjC,CAAC;AAEK,MAAM,aAAa,GAAG,2DAAc,CACvC,iBAAiB,EACjB,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,CACzB,CAAC;AAEK,MAAM,sBAAsB,GAAG,2DAAc,CAChD,iBAAiB,EACjB,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,gBAAgB,CAClC,CAAC;AAEK,MAAM,qBAAqB,GAAG,2DAAc,CAC/C,iBAAiB,EACjB,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,UAAU,CAC5B,CAAC;AAEK,MAAM,yBAAyB,GAAG,2DAAc,CACnD,iBAAiB,EACjB,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,mBAAmB,CACrC,CAAC;;;;;;;;;;;;;;;;;;;;;;;ACzBF,IAAY,kBAMX;AAND,WAAY,kBAAkB;IAE1B,yDAAmC;IACnC,yCAAmB;IACnB,uCAAiB;IACjB,uDAAiC;AACrC,CAAC,EANW,kBAAkB,KAAlB,kBAAkB,QAM7B;AAED,IAAY,WAMX;AAND,WAAY,WAAW;IAEnB,0CAA2B;IAC3B,sCAAuB;IACvB,oCAAqB;IACrB,oDAAqC;AACzC,CAAC,EANW,WAAW,KAAX,WAAW,QAMtB;AAED,IAAY,eAIX;AAJD,WAAY,eAAe;IACvB,gCAAa;IACb,sCAAmB;IACnB,8CAA2B;AAC/B,CAAC,EAJW,eAAe,KAAf,eAAe,QAI1B;AAED,IAAY,uBAGX;AAHD,WAAY,uBAAuB;IAC/B,wDAA6B;IAC7B,gEAAqC;AACzC,CAAC,EAHW,uBAAuB,KAAvB,uBAAuB,QAGlC;AAED,IAAY,oBAIX;AAJD,WAAY,oBAAoB;IAE5B,iDAAyB;IACzB,2CAAmB;AACvB,CAAC,EAJW,oBAAoB,KAApB,oBAAoB,QAI/B;AAyBD,IAAY,aAA6D;AAAzE,WAAY,aAAa;IAAG,iEAAY;IAAE,uEAAe;IAAE,iEAAY;AAAC,CAAC,EAA7D,aAAa,KAAb,aAAa,QAAgD;AAAA,CAAC;AAsBnE,MAAM,mBAAmB,GAAI,EAAE,cAAc,EAAE,EAAE,EAAE,CAAC;AAEpD,MAAM,iBAAiB,GAAG,GAAG,EAAE;IAElC,OAAO;QAEC,eAAe,EAAE,IAAI;QACrB,eAAe,EAAE,eAAe,CAAC,IAAI;QACrC,UAAU,EAAE,mBAAmB;QAC/B,OAAO,EAAE,EAAE;KAClB,CAAC;AACN,CAAC,CAAC;;;;;;;;;;;;;;;;AC5FF,gFAAgF;AAChF,0EAA0E;AAC1E,gEAAgE;AAEzD,MAAM,WAAW,GAAG;IACvB,UAAU,EAAE,IAAI;IAChB,UAAU,EAAE,EAAE;IACd,eAAe,EAAE,oCAAoC;IACrD,OAAO,EAAE,SAAS;CACrB,CAAC;AAEF;;;;;;GAMG;AACH,sEAAsE;;;;;;;;;;;;;;;;;;AClBvB;AAGF;AACY;AAEzD,IAAI,6EAAsB,EAAE;IAC1B,6DAAc,EAAE,CAAC;CAClB;AAED,wEAAwB,CAAC,eAAe,CAAC,sDAAS,CAAC;KAChD,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;;;;;;;;;;;ACXpC;;;;;;;;;;ACAA;;;;;;;;;;ACAA;;;;;;;;;;ACAA;;;;;;;;;;ACAA;;;;;;;;;;ACAA","sources":["./Portal/base-service.ts","./Portal/epay-api-configuration.ts","./Portal/epay-api.module.ts","./Portal/models/payment-type.ts","./Portal/services/checkout.service.ts","./Portal/services/error.service.ts","./Portal/services/integration.service.ts","./Portal/services/payment.service.ts","./Portal/services/redirect.service.ts","./Portal/services/transactions.service.ts","./src/app/app-routing.module.ts","./src/app/app.component.ts","./src/app/app.component.html","./src/app/app.module.ts","./src/app/layout/footer/footer.component.ts","./src/app/layout/footer/footer.component.html","./src/app/layout/header/header.component.ts","./src/app/layout/header/header.component.html","./src/app/mat-select-safari-fix.directive.ts","./src/app/material.module.ts","./src/app/pages/ecom/pay-section/credit-card-form/clover-styles.ts","./src/app/pages/ecom/pay-section/credit-card-form/credit-card-form.component.ts","./src/app/pages/ecom/pay-section/credit-card-form/credit-card-form.component.html","./src/app/pages/ecom/pay-section/echeck-form/echeck-form.component.ts","./src/app/pages/ecom/pay-section/echeck-form/echeck-form.component.html","./src/app/pages/ecom/pay-section/pay-section.component.ts","./src/app/pages/ecom/pay-section/pay-section.component.html","./src/app/pages/ecom/pay-section/payment-form/payment-form.component.ts","./src/app/pages/ecom/pay-section/payment-form/payment-form.component.html","./src/app/pages/ecom/pay-section/summary/summary.component.ts","./src/app/pages/ecom/pay-section/summary/summary.component.html","./src/app/pages/ecom/payment-page/payment-page.component.ts","./src/app/pages/ecom/payment-page/payment-page.component.html","./src/app/pages/ecom/risk-declined/risk-declined.component.ts","./src/app/pages/ecom/risk-declined/risk-declined.component.html","./src/app/pages/privacy-policy/privacy-policy-page.component.ts","./src/app/pages/privacy-policy/privacy-policy-page.component.html","./src/app/pages/receipt/receipt.component.ts","./src/app/pages/receipt/receipt.component.html","./src/app/pages/retail/pay-section/clover/clover.component.ts","./src/app/pages/retail/pay-section/clover/clover.component.html","./src/app/pages/retail/pay-section/moto/credit-card-form/clover-styles.ts","./src/app/pages/retail/pay-section/moto/credit-card-form/credit-card-form.component.ts","./src/app/pages/retail/pay-section/moto/credit-card-form/credit-card-form.component.html","./src/app/pages/retail/pay-section/moto/moto.component.ts","./src/app/pages/retail/pay-section/moto/moto.component.html","./src/app/pages/retail/pay-section/payment-section.component.ts","./src/app/pages/retail/pay-section/payment-section.component.html","./src/app/pages/retail/payment-page/payment.component.ts","./src/app/pages/retail/payment-page/payment.component.html","./src/app/pages/terms-and-conditions/terms-and-conditions-page.component.ts","./src/app/pages/terms-and-conditions/terms-and-conditions-page.component.html","./src/app/shared/autocomplete-fix/autocomplete-fix.directive.ts","./src/app/shared/autocomplete-fix/get-unique-hashstring.ts","./src/app/shared/email-modal/email-modal.component.ts","./src/app/shared/email-modal/email-modal.component.html","./src/app/shared/error-message/error-message.component.ts","./src/app/shared/error-message/error-message.component.html","./src/app/shared/shared.module.ts","./src/app/storage/application/application.actions.ts","./src/app/storage/application/application.effects.ts","./src/app/storage/application/application.reducer.ts","./src/app/storage/application/application.state.ts","./src/app/storage/ecom/ecom.actions.ts","./src/app/storage/ecom/ecom.effects.ts","./src/app/storage/ecom/ecom.reducer.ts","./src/app/storage/ecom/ecom.selectors.ts","./src/app/storage/ecom/ecom.state.ts","./src/app/storage/effects-configuration.ts","./src/app/storage/receipt/receipt.actions.ts","./src/app/storage/receipt/receipt.effects.ts","./src/app/storage/receipt/receipt.reducer.ts","./src/app/storage/receipt/receipt.selectors.ts","./src/app/storage/receipt/receipt.state.ts","./src/app/storage/reducer-configuration.ts","./src/app/storage/retail/retail.actions.ts","./src/app/storage/retail/retail.effects.ts","./src/app/storage/retail/retail.reducer.ts","./src/app/storage/retail/retail.selectors.ts","./src/app/storage/retail/retail.state.ts","./src/environments/environment.ts","./src/main.ts","ignored|/src/MTPay.Ecommerce/ClientApp/node_modules/@microsoft/signalr/dist/esm|abort-controller","ignored|/src/MTPay.Ecommerce/ClientApp/node_modules/@microsoft/signalr/dist/esm|eventsource","ignored|/src/MTPay.Ecommerce/ClientApp/node_modules/@microsoft/signalr/dist/esm|fetch-cookie","ignored|/src/MTPay.Ecommerce/ClientApp/node_modules/@microsoft/signalr/dist/esm|node-fetch","ignored|/src/MTPay.Ecommerce/ClientApp/node_modules/@microsoft/signalr/dist/esm|tough-cookie","ignored|/src/MTPay.Ecommerce/ClientApp/node_modules/@microsoft/signalr/dist/esm|ws"],"sourcesContent":["/* tslint:disable */\nimport { HttpClient, HttpParameterCodec, HttpParams } from '@angular/common/http';\nimport { EPayApiConfiguration } from './epay-api-configuration';\n\n/**\n * Custom parameter codec to correctly handle the plus sign in parameter\n * values. See https://github.com/angular/angular/issues/18261\n */\nclass ParameterCodec implements HttpParameterCodec {\n encodeKey(key: string): string {\n return encodeURIComponent(key);\n }\n\n encodeValue(value: string): string {\n return encodeURIComponent(value);\n }\n\n decodeKey(key: string): string {\n return decodeURIComponent(key);\n }\n\n decodeValue(value: string): string {\n return decodeURIComponent(value);\n }\n}\nconst PARAMETER_CODEC = new ParameterCodec();\n\n/**\n * Base class for API services\n */\nexport class BaseService {\n constructor(\n protected config: EPayApiConfiguration,\n protected http: HttpClient\n ) {\n }\n\n private _rootUrl: string = '';\n\n /**\n * Returns the root url for API operations. If not set directly in this\n * service, will fallback to ApiConfiguration.rootUrl.\n */\n get rootUrl(): string {\n return this._rootUrl || this.config.rootUrl;\n }\n\n /**\n * Sets the root URL for API operations in this service.\n */\n set rootUrl(rootUrl: string) {\n this._rootUrl = rootUrl;\n }\n\n /**\n * Creates a new `HttpParams` with the correct codec\n */\n protected newParams(): HttpParams {\n return new HttpParams({\n encoder: PARAMETER_CODEC\n });\n }\n}\n","/* tslint:disable */\nimport { Injectable } from '@angular/core';\n\n/**\n * Global configuration for EPayApi services\n */\n@Injectable({\n providedIn: 'root',\n})\nexport class EPayApiConfiguration {\n rootUrl: string = 'https://epay.test.mt.vitupay.com';\n}\n\nexport interface EPayApiConfigurationInterface {\n rootUrl?: string;\n}\n","/* tslint:disable */\nimport { NgModule, ModuleWithProviders } from '@angular/core';\nimport { HttpClientModule } from '@angular/common/http';\nimport { EPayApiConfiguration, EPayApiConfigurationInterface } from './epay-api-configuration';\n\nimport { CheckoutService } from './services/checkout.service';\nimport { ErrorService } from './services/error.service';\nimport { IntegrationService } from './services/integration.service';\nimport { PaymentService } from './services/payment.service';\nimport { RedirectService } from './services/redirect.service';\nimport { TransactionsService } from './services/transactions.service';\n\n/**\n * Provider for all EPayApi services, plus EPayApiConfiguration\n */\n@NgModule({\n imports: [\n HttpClientModule\n ],\n exports: [\n HttpClientModule\n ],\n declarations: [],\n providers: [\n EPayApiConfiguration,\n CheckoutService,\n ErrorService,\n IntegrationService,\n PaymentService,\n RedirectService,\n TransactionsService\n ],\n})\nexport class EPayApiModule {\n static forRoot(customParams: EPayApiConfigurationInterface): ModuleWithProviders {\n return {\n ngModule: EPayApiModule,\n providers: [\n {\n provide: EPayApiConfiguration,\n useValue: {rootUrl: customParams.rootUrl}\n }\n ]\n }\n }\n}\n","/* tslint:disable */\ntype PaymentType =\n 'Card' |\n 'Cash' |\n 'Check' |\n 'BundleCredit' |\n 'ServiceFee' |\n 'CheckServiceFee' |\n 'NsfFee' |\n 'Paypal' |\n 'ApplePay' |\n 'GooglePay';\nmodule PaymentType {\n export const CARD: PaymentType = 'Card';\n export const CASH: PaymentType = 'Cash';\n export const CHECK: PaymentType = 'Check';\n export const BUNDLE_CREDIT: PaymentType = 'BundleCredit';\n export const SERVICE_FEE: PaymentType = 'ServiceFee';\n export const CHECK_SERVICE_FEE: PaymentType = 'CheckServiceFee';\n export const NSF_FEE: PaymentType = 'NsfFee';\n export const PAYPAL: PaymentType = 'Paypal';\n export const APPLE_PAY: PaymentType = 'ApplePay';\n export const GOOGLE_PAY: PaymentType = 'GooglePay';\n export function values(): PaymentType[] {\n return [\n CARD,\n CASH,\n CHECK,\n BUNDLE_CREDIT,\n SERVICE_FEE,\n CHECK_SERVICE_FEE,\n NSF_FEE,\n PAYPAL,\n APPLE_PAY,\n GOOGLE_PAY\n ];\n }\n}\n\nexport { PaymentType }","/* tslint:disable */\nimport { Injectable } from '@angular/core';\nimport { HttpClient, HttpRequest, HttpResponse, HttpHeaders } from '@angular/common/http';\nimport { BaseService as __BaseService } from '../base-service';\nimport { EPayApiConfiguration as __Configuration } from '../epay-api-configuration';\nimport { StrictHttpResponse as __StrictHttpResponse } from '../strict-http-response';\nimport { Observable as __Observable } from 'rxjs';\nimport { map as __map, filter as __filter } from 'rxjs/operators';\n\nimport { CheckoutSummaryModel } from '../models/checkout-summary-model';\nimport { CheckoutSummaryRequest } from '../models/checkout-summary-request';\nimport { PaymentSubmitResponse } from '../models/payment-submit-response';\nimport { PaymentCreditCardSubmitModel } from '../models/payment-credit-card-submit-model';\nimport { PaymentECheckSubmitModel } from '../models/payment-echeck-submit-model';\nimport { PaymentSelectionModel } from '../models/payment-selection-model';\nimport { ReceiptModel } from '../models/receipt-model';\nimport { SendRecepitModel } from '../models/send-recepit-model';\n@Injectable({\n providedIn: 'root',\n})\nclass CheckoutService extends __BaseService {\n static readonly checkoutGetCheckoutSummaryModelPath = '/getcheckoutsummary';\n static readonly checkoutPayCreditCardPath = '/checkout/paycreditcard';\n static readonly checkoutPayEcheckPath = '/checkout/payecheck';\n static readonly checkoutGetGeneratedPaymentUrlPath = '/gettestpaymenturl';\n static readonly checkoutGetAbaDataPath = '/aba/{routingNumber}';\n static readonly checkoutGetPaymentSelectionModelPath = '/getpaymentselection';\n static readonly checkoutReceiptPath = '/receipt';\n static readonly checkoutSendReceiptPath = '/sendreceipt';\n static readonly checkoutCancelPaymentPath = '/checkout/cancelpayment';\n\n constructor(\n config: __Configuration,\n http: HttpClient\n ) {\n super(config, http);\n }\n\n /**\n * @param request undefined\n */\n checkoutGetCheckoutSummaryModelResponse(request: CheckoutSummaryRequest): __Observable<__StrictHttpResponse> {\n let __params = this.newParams();\n let __headers = new HttpHeaders();\n let __body: any = null;\n __body = request;\n let req = new HttpRequest(\n 'POST',\n this.rootUrl + `/getcheckoutsummary`,\n __body,\n {\n headers: __headers,\n params: __params,\n responseType: 'json'\n });\n\n return this.http.request(req).pipe(\n __filter(_r => _r instanceof HttpResponse),\n __map((_r) => {\n return _r as __StrictHttpResponse;\n })\n );\n }\n /**\n * @param request undefined\n */\n checkoutGetCheckoutSummaryModel(request: CheckoutSummaryRequest): __Observable {\n return this.checkoutGetCheckoutSummaryModelResponse(request).pipe(\n __map(_r => _r.body as CheckoutSummaryModel)\n );\n }\n\n /**\n * @param model undefined\n */\n checkoutPayCreditCardResponse(model: PaymentCreditCardSubmitModel): __Observable<__StrictHttpResponse> {\n let __params = this.newParams();\n let __headers = new HttpHeaders();\n let __body: any = null;\n __body = model;\n let req = new HttpRequest(\n 'POST',\n this.rootUrl + `/checkout/paycreditcard`,\n __body,\n {\n headers: __headers,\n params: __params,\n responseType: 'json'\n });\n\n return this.http.request(req).pipe(\n __filter(_r => _r instanceof HttpResponse),\n __map((_r) => {\n return _r as __StrictHttpResponse;\n })\n );\n }\n /**\n * @param model undefined\n */\n checkoutPayCreditCard(model: PaymentCreditCardSubmitModel): __Observable {\n return this.checkoutPayCreditCardResponse(model).pipe(\n __map(_r => _r.body as PaymentSubmitResponse)\n );\n }\n\n /**\n * @param model undefined\n */\n checkoutPayEcheckResponse(model: PaymentECheckSubmitModel): __Observable<__StrictHttpResponse> {\n let __params = this.newParams();\n let __headers = new HttpHeaders();\n let __body: any = null;\n __body = model;\n let req = new HttpRequest(\n 'POST',\n this.rootUrl + `/checkout/payecheck`,\n __body,\n {\n headers: __headers,\n params: __params,\n responseType: 'json'\n });\n\n return this.http.request(req).pipe(\n __filter(_r => _r instanceof HttpResponse),\n __map((_r) => {\n return _r as __StrictHttpResponse;\n })\n );\n }\n /**\n * @param model undefined\n */\n checkoutPayEcheck(model: PaymentECheckSubmitModel): __Observable {\n return this.checkoutPayEcheckResponse(model).pipe(\n __map(_r => _r.body as PaymentSubmitResponse)\n );\n }\n\n /**\n * @param params The `CheckoutService.CheckoutGetGeneratedPaymentUrlParams` containing the following parameters:\n *\n * - `amount`:\n *\n * - `officeId`:\n *\n * - `allowedPaymentCode`:\n */\n checkoutGetGeneratedPaymentUrlResponse(params: CheckoutService.CheckoutGetGeneratedPaymentUrlParams): __Observable<__StrictHttpResponse> {\n let __params = this.newParams();\n let __headers = new HttpHeaders();\n let __body: any = null;\n if (params.amount != null) __params = __params.set('amount', params.amount.toString());\n if (params.officeId != null) __params = __params.set('officeId', params.officeId.toString());\n if (params.allowedPaymentCode != null) __params = __params.set('allowedPaymentCode', params.allowedPaymentCode.toString());\n let req = new HttpRequest(\n 'GET',\n this.rootUrl + `/gettestpaymenturl`,\n __body,\n {\n headers: __headers,\n params: __params,\n responseType: 'blob'\n });\n\n return this.http.request(req).pipe(\n __filter(_r => _r instanceof HttpResponse),\n __map((_r) => {\n return _r as __StrictHttpResponse;\n })\n );\n }\n /**\n * @param params The `CheckoutService.CheckoutGetGeneratedPaymentUrlParams` containing the following parameters:\n *\n * - `amount`:\n *\n * - `officeId`:\n *\n * - `allowedPaymentCode`:\n */\n checkoutGetGeneratedPaymentUrl(params: CheckoutService.CheckoutGetGeneratedPaymentUrlParams): __Observable {\n return this.checkoutGetGeneratedPaymentUrlResponse(params).pipe(\n __map(_r => _r.body as Blob)\n );\n }\n\n /**\n * @param routingNumber undefined\n */\n checkoutGetAbaDataResponse(routingNumber: number): __Observable<__StrictHttpResponse> {\n let __params = this.newParams();\n let __headers = new HttpHeaders();\n let __body: any = null;\n\n let req = new HttpRequest(\n 'GET',\n this.rootUrl + `/aba/${encodeURIComponent(routingNumber)}`,\n __body,\n {\n headers: __headers,\n params: __params,\n responseType: 'blob'\n });\n\n return this.http.request(req).pipe(\n __filter(_r => _r instanceof HttpResponse),\n __map((_r) => {\n return _r as __StrictHttpResponse;\n })\n );\n }\n /**\n * @param routingNumber undefined\n */\n checkoutGetAbaData(routingNumber: number): __Observable {\n return this.checkoutGetAbaDataResponse(routingNumber).pipe(\n __map(_r => _r.body as Blob)\n );\n }\n\n /**\n * @param trackingNumber undefined\n */\n checkoutGetPaymentSelectionModelResponse(trackingNumber?: null | string): __Observable<__StrictHttpResponse> {\n let __params = this.newParams();\n let __headers = new HttpHeaders();\n let __body: any = null;\n if (trackingNumber != null) __params = __params.set('trackingNumber', trackingNumber.toString());\n let req = new HttpRequest(\n 'GET',\n this.rootUrl + `/getpaymentselection`,\n __body,\n {\n headers: __headers,\n params: __params,\n responseType: 'json'\n });\n\n return this.http.request(req).pipe(\n __filter(_r => _r instanceof HttpResponse),\n __map((_r) => {\n return _r as __StrictHttpResponse;\n })\n );\n }\n /**\n * @param trackingNumber undefined\n */\n checkoutGetPaymentSelectionModel(trackingNumber?: null | string): __Observable {\n return this.checkoutGetPaymentSelectionModelResponse(trackingNumber).pipe(\n __map(_r => _r.body as PaymentSelectionModel)\n );\n }\n\n /**\n * @param trackingNumber undefined\n */\n checkoutReceiptResponse(trackingNumber?: null | string): __Observable<__StrictHttpResponse> {\n let __params = this.newParams();\n let __headers = new HttpHeaders();\n let __body: any = null;\n if (trackingNumber != null) __params = __params.set('trackingNumber', trackingNumber.toString());\n let req = new HttpRequest(\n 'GET',\n this.rootUrl + `/receipt`,\n __body,\n {\n headers: __headers,\n params: __params,\n responseType: 'json'\n });\n\n return this.http.request(req).pipe(\n __filter(_r => _r instanceof HttpResponse),\n __map((_r) => {\n return _r as __StrictHttpResponse;\n })\n );\n }\n /**\n * @param trackingNumber undefined\n */\n checkoutReceipt(trackingNumber?: null | string): __Observable {\n return this.checkoutReceiptResponse(trackingNumber).pipe(\n __map(_r => _r.body as ReceiptModel)\n );\n }\n\n /**\n * @param model undefined\n */\n checkoutSendReceiptResponse(model: SendRecepitModel): __Observable<__StrictHttpResponse> {\n let __params = this.newParams();\n let __headers = new HttpHeaders();\n let __body: any = null;\n __body = model;\n let req = new HttpRequest(\n 'POST',\n this.rootUrl + `/sendreceipt`,\n __body,\n {\n headers: __headers,\n params: __params,\n responseType: 'blob'\n });\n\n return this.http.request(req).pipe(\n __filter(_r => _r instanceof HttpResponse),\n __map((_r) => {\n return _r as __StrictHttpResponse;\n })\n );\n }\n /**\n * @param model undefined\n */\n checkoutSendReceipt(model: SendRecepitModel): __Observable {\n return this.checkoutSendReceiptResponse(model).pipe(\n __map(_r => _r.body as Blob)\n );\n }\n\n /**\n * @param model undefined\n */\n checkoutCacelPaymentResponse(trackingNumber: string): __Observable<__StrictHttpResponse> {\n let __params = this.newParams();\n let __headers = new HttpHeaders();\n let __body: any = null;\n if (trackingNumber != null) __params = __params.set('trackingNumber', trackingNumber.toString());\n let req = new HttpRequest(\n 'POST',\n this.rootUrl + `/checkout/cancelpayment`,\n __body,\n {\n headers: __headers,\n params: __params,\n responseType: 'blob'\n });\n\n return this.http.request(req).pipe(\n __filter(_r => _r instanceof HttpResponse),\n __map((_r) => {\n return _r as __StrictHttpResponse;\n })\n );\n }\n /**\n * @param model undefined\n */\n checkoutCacelPayment(trackingNumber: string): __Observable {\n return this.checkoutCacelPaymentResponse(trackingNumber).pipe(\n __map(_r => _r.body as Blob)\n );\n }\n\n\n}\n\nmodule CheckoutService {\n\n /**\n * Parameters for CheckoutGetGeneratedPaymentUrl\n */\n export interface CheckoutGetGeneratedPaymentUrlParams {\n amount?: number;\n officeId?: 'VRR' | 'ODLR';\n allowedPaymentCode?: null | string;\n }\n}\n\nexport { CheckoutService }\n","/* tslint:disable */\nimport { Injectable } from '@angular/core';\nimport { HttpClient, HttpRequest, HttpResponse, HttpHeaders } from '@angular/common/http';\nimport { BaseService as __BaseService } from '../base-service';\nimport { EPayApiConfiguration as __Configuration } from '../epay-api-configuration';\nimport { StrictHttpResponse as __StrictHttpResponse } from '../strict-http-response';\nimport { Observable as __Observable } from 'rxjs';\nimport { map as __map, filter as __filter } from 'rxjs/operators';\n\n@Injectable({\n providedIn: 'root',\n})\nclass ErrorService extends __BaseService {\n static readonly errorErrorPath = '/Error/{statusCode}';\n\n constructor(\n config: __Configuration,\n http: HttpClient\n ) {\n super(config, http);\n }\n\n /**\n * @param statusCode undefined\n */\n errorErrorResponse(statusCode: number): __Observable<__StrictHttpResponse> {\n let __params = this.newParams();\n let __headers = new HttpHeaders();\n let __body: any = null;\n\n let req = new HttpRequest(\n 'GET',\n this.rootUrl + `/Error/${encodeURIComponent(statusCode)}`,\n __body,\n {\n headers: __headers,\n params: __params,\n responseType: 'blob'\n });\n\n return this.http.request(req).pipe(\n __filter(_r => _r instanceof HttpResponse),\n __map((_r) => {\n return _r as __StrictHttpResponse;\n })\n );\n }\n /**\n * @param statusCode undefined\n */\n errorError(statusCode: number): __Observable {\n return this.errorErrorResponse(statusCode).pipe(\n __map(_r => _r.body as Blob)\n );\n }\n}\n\nmodule ErrorService {\n}\n\nexport { ErrorService }\n","/* tslint:disable */\nimport { Injectable } from '@angular/core';\nimport { HttpClient, HttpRequest, HttpResponse, HttpHeaders } from '@angular/common/http';\nimport { BaseService as __BaseService } from '../base-service';\nimport { EPayApiConfiguration as __Configuration } from '../epay-api-configuration';\nimport { StrictHttpResponse as __StrictHttpResponse } from '../strict-http-response';\nimport { Observable as __Observable } from 'rxjs';\nimport { map as __map, filter as __filter } from 'rxjs/operators';\n\nimport { MotoPaymentSubmitModel } from '../models/moto-payment-submit-model';\nimport { CreateTransactionModel } from '../models/create-transaction-model';\nimport { ExpirePaymentUrlRequest } from '../models/expire-payment-url-request';\nimport { GetPaymentUrlRequest } from '../models/get-payment-url-request';\nimport { ReceiptDataResponse } from '../models/receipt-data-response';\n@Injectable({\n providedIn: 'root',\n})\nclass IntegrationService extends __BaseService {\n static readonly integrationGetPaymentsPath = '/api/v1/payments';\n static readonly integrationGetUncapturedPaymentsPath = '/api/v1/uncapturedpayments';\n static readonly integrationGetCardTokenPath = '/api/v1/cardtoken';\n static readonly integrationGetAbsentTransactionInBackOfficePath = '/api/v1/unprocessedtransactions';\n static readonly integrationGetSequencePath = '/api/v1/sequencenumber';\n static readonly integrationPayPath = '/api/v1/motopay';\n static readonly integrationCreateTransactionPath = '/api/v1/createtransaction';\n static readonly integrationGetTransactionByTrackingNumberPath = '/api/v1/transactionstatus/{trackingNumber}';\n static readonly integrationGetTransactionInformationByTrackingNumberPath = '/api/v1/transactioninformation/{trackingNumber}';\n static readonly integrationGetFailedTransactionsPath = '/api/v1/failedtransactions';\n static readonly integrationExpirePaymentUrlPath = '/api/v1/expirepaymenturl';\n static readonly integrationGetTransactionDetailsPath = '/api/v1/transactionreport';\n static readonly integrationGetPaymentUrlPath = '/api/v1/getpaymenturl';\n static readonly integrationGetReceiptDataPath = '/api/v1/receiptdata/{trackingNumber}';\n static readonly integrationExpireTransactionsPath = '/api/v1/expiretransactions';\n\n constructor(\n config: __Configuration,\n http: HttpClient\n ) {\n super(config, http);\n }\n\n /**\n * @param params The `IntegrationService.IntegrationGetPaymentsParams` containing the following parameters:\n *\n * - `fromUtc`:\n *\n * - `toUtc`:\n */\n integrationGetPaymentsResponse(params: IntegrationService.IntegrationGetPaymentsParams): __Observable<__StrictHttpResponse> {\n let __params = this.newParams();\n let __headers = new HttpHeaders();\n let __body: any = null;\n if (params.fromUtc != null) __params = __params.set('fromUtc', params.fromUtc.toString());\n if (params.toUtc != null) __params = __params.set('toUtc', params.toUtc.toString());\n let req = new HttpRequest(\n 'GET',\n this.rootUrl + `/api/v1/payments`,\n __body,\n {\n headers: __headers,\n params: __params,\n responseType: 'blob'\n });\n\n return this.http.request(req).pipe(\n __filter(_r => _r instanceof HttpResponse),\n __map((_r) => {\n return _r as __StrictHttpResponse;\n })\n );\n }\n /**\n * @param params The `IntegrationService.IntegrationGetPaymentsParams` containing the following parameters:\n *\n * - `fromUtc`:\n *\n * - `toUtc`:\n */\n integrationGetPayments(params: IntegrationService.IntegrationGetPaymentsParams): __Observable {\n return this.integrationGetPaymentsResponse(params).pipe(\n __map(_r => _r.body as Blob)\n );\n }\n\n /**\n * @param params The `IntegrationService.IntegrationGetUncapturedPaymentsParams` containing the following parameters:\n *\n * - `fromUtc`:\n *\n * - `toUtc`:\n */\n integrationGetUncapturedPaymentsResponse(params: IntegrationService.IntegrationGetUncapturedPaymentsParams): __Observable<__StrictHttpResponse> {\n let __params = this.newParams();\n let __headers = new HttpHeaders();\n let __body: any = null;\n if (params.fromUtc != null) __params = __params.set('fromUtc', params.fromUtc.toString());\n if (params.toUtc != null) __params = __params.set('toUtc', params.toUtc.toString());\n let req = new HttpRequest(\n 'GET',\n this.rootUrl + `/api/v1/uncapturedpayments`,\n __body,\n {\n headers: __headers,\n params: __params,\n responseType: 'blob'\n });\n\n return this.http.request(req).pipe(\n __filter(_r => _r instanceof HttpResponse),\n __map((_r) => {\n return _r as __StrictHttpResponse;\n })\n );\n }\n /**\n * @param params The `IntegrationService.IntegrationGetUncapturedPaymentsParams` containing the following parameters:\n *\n * - `fromUtc`:\n *\n * - `toUtc`:\n */\n integrationGetUncapturedPayments(params: IntegrationService.IntegrationGetUncapturedPaymentsParams): __Observable {\n return this.integrationGetUncapturedPaymentsResponse(params).pipe(\n __map(_r => _r.body as Blob)\n );\n }\n\n /**\n * @param model undefined\n */\n integrationGetCardTokenResponse(model: MotoPaymentSubmitModel): __Observable<__StrictHttpResponse> {\n let __params = this.newParams();\n let __headers = new HttpHeaders();\n let __body: any = null;\n __body = model;\n let req = new HttpRequest(\n 'POST',\n this.rootUrl + `/api/v1/cardtoken`,\n __body,\n {\n headers: __headers,\n params: __params,\n responseType: 'blob'\n });\n\n return this.http.request(req).pipe(\n __filter(_r => _r instanceof HttpResponse),\n __map((_r) => {\n return _r as __StrictHttpResponse;\n })\n );\n }\n /**\n * @param model undefined\n */\n integrationGetCardToken(model: MotoPaymentSubmitModel): __Observable {\n return this.integrationGetCardTokenResponse(model).pipe(\n __map(_r => _r.body as Blob)\n );\n }\n integrationGetAbsentTransactionInBackOfficeResponse(): __Observable<__StrictHttpResponse> {\n let __params = this.newParams();\n let __headers = new HttpHeaders();\n let __body: any = null;\n let req = new HttpRequest(\n 'GET',\n this.rootUrl + `/api/v1/unprocessedtransactions`,\n __body,\n {\n headers: __headers,\n params: __params,\n responseType: 'blob'\n });\n\n return this.http.request(req).pipe(\n __filter(_r => _r instanceof HttpResponse),\n __map((_r) => {\n return _r as __StrictHttpResponse;\n })\n );\n } integrationGetAbsentTransactionInBackOffice(): __Observable {\n return this.integrationGetAbsentTransactionInBackOfficeResponse().pipe(\n __map(_r => _r.body as Blob)\n );\n }\n\n /**\n * @param officeType undefined\n */\n integrationGetSequenceResponse(officeType?: 'Echeck' | 'CreditCard' | 'PayPal'): __Observable<__StrictHttpResponse> {\n let __params = this.newParams();\n let __headers = new HttpHeaders();\n let __body: any = null;\n if (officeType != null) __params = __params.set('officeType', officeType.toString());\n let req = new HttpRequest(\n 'GET',\n this.rootUrl + `/api/v1/sequencenumber`,\n __body,\n {\n headers: __headers,\n params: __params,\n responseType: 'blob'\n });\n\n return this.http.request(req).pipe(\n __filter(_r => _r instanceof HttpResponse),\n __map((_r) => {\n return _r as __StrictHttpResponse;\n })\n );\n }\n /**\n * @param officeType undefined\n */\n integrationGetSequence(officeType?: 'Echeck' | 'CreditCard' | 'PayPal'): __Observable {\n return this.integrationGetSequenceResponse(officeType).pipe(\n __map(_r => _r.body as Blob)\n );\n }\n\n /**\n * @param model undefined\n */\n integrationPayResponse(model: MotoPaymentSubmitModel): __Observable<__StrictHttpResponse> {\n let __params = this.newParams();\n let __headers = new HttpHeaders();\n let __body: any = null;\n __body = model;\n let req = new HttpRequest(\n 'POST',\n this.rootUrl + `/api/v1/motopay`,\n __body,\n {\n headers: __headers,\n params: __params,\n responseType: 'blob'\n });\n\n return this.http.request(req).pipe(\n __filter(_r => _r instanceof HttpResponse),\n __map((_r) => {\n return _r as __StrictHttpResponse;\n })\n );\n }\n /**\n * @param model undefined\n */\n integrationPay(model: MotoPaymentSubmitModel): __Observable {\n return this.integrationPayResponse(model).pipe(\n __map(_r => _r.body as Blob)\n );\n }\n\n /**\n * @param model undefined\n */\n integrationCreateTransactionResponse(model: CreateTransactionModel): __Observable<__StrictHttpResponse> {\n let __params = this.newParams();\n let __headers = new HttpHeaders();\n let __body: any = null;\n __body = model;\n let req = new HttpRequest(\n 'POST',\n this.rootUrl + `/api/v1/createtransaction`,\n __body,\n {\n headers: __headers,\n params: __params,\n responseType: 'blob'\n });\n\n return this.http.request(req).pipe(\n __filter(_r => _r instanceof HttpResponse),\n __map((_r) => {\n return _r as __StrictHttpResponse;\n })\n );\n }\n /**\n * @param model undefined\n */\n integrationCreateTransaction(model: CreateTransactionModel): __Observable {\n return this.integrationCreateTransactionResponse(model).pipe(\n __map(_r => _r.body as Blob)\n );\n }\n\n /**\n * @param trackingNumber undefined\n */\n integrationGetTransactionByTrackingNumberResponse(trackingNumber: null | string): __Observable<__StrictHttpResponse> {\n let __params = this.newParams();\n let __headers = new HttpHeaders();\n let __body: any = null;\n\n let req = new HttpRequest(\n 'GET',\n this.rootUrl + `/api/v1/transactionstatus/${encodeURIComponent(trackingNumber)}`,\n __body,\n {\n headers: __headers,\n params: __params,\n responseType: 'blob'\n });\n\n return this.http.request(req).pipe(\n __filter(_r => _r instanceof HttpResponse),\n __map((_r) => {\n return _r as __StrictHttpResponse;\n })\n );\n }\n /**\n * @param trackingNumber undefined\n */\n integrationGetTransactionByTrackingNumber(trackingNumber: null | string): __Observable {\n return this.integrationGetTransactionByTrackingNumberResponse(trackingNumber).pipe(\n __map(_r => _r.body as Blob)\n );\n }\n\n /**\n * @param trackingNumber undefined\n */\n integrationGetTransactionInformationByTrackingNumberResponse(trackingNumber: null | string): __Observable<__StrictHttpResponse> {\n let __params = this.newParams();\n let __headers = new HttpHeaders();\n let __body: any = null;\n\n let req = new HttpRequest(\n 'GET',\n this.rootUrl + `/api/v1/transactioninformation/${encodeURIComponent(trackingNumber)}`,\n __body,\n {\n headers: __headers,\n params: __params,\n responseType: 'blob'\n });\n\n return this.http.request(req).pipe(\n __filter(_r => _r instanceof HttpResponse),\n __map((_r) => {\n return _r as __StrictHttpResponse;\n })\n );\n }\n /**\n * @param trackingNumber undefined\n */\n integrationGetTransactionInformationByTrackingNumber(trackingNumber: null | string): __Observable {\n return this.integrationGetTransactionInformationByTrackingNumberResponse(trackingNumber).pipe(\n __map(_r => _r.body as Blob)\n );\n }\n integrationGetFailedTransactionsResponse(): __Observable<__StrictHttpResponse> {\n let __params = this.newParams();\n let __headers = new HttpHeaders();\n let __body: any = null;\n let req = new HttpRequest(\n 'GET',\n this.rootUrl + `/api/v1/failedtransactions`,\n __body,\n {\n headers: __headers,\n params: __params,\n responseType: 'blob'\n });\n\n return this.http.request(req).pipe(\n __filter(_r => _r instanceof HttpResponse),\n __map((_r) => {\n return _r as __StrictHttpResponse;\n })\n );\n } integrationGetFailedTransactions(): __Observable {\n return this.integrationGetFailedTransactionsResponse().pipe(\n __map(_r => _r.body as Blob)\n );\n }\n\n /**\n * @param expirePaymentUrlRequest undefined\n */\n integrationExpirePaymentUrlResponse(expirePaymentUrlRequest: ExpirePaymentUrlRequest): __Observable<__StrictHttpResponse> {\n let __params = this.newParams();\n let __headers = new HttpHeaders();\n let __body: any = null;\n __body = expirePaymentUrlRequest;\n let req = new HttpRequest(\n 'POST',\n this.rootUrl + `/api/v1/expirepaymenturl`,\n __body,\n {\n headers: __headers,\n params: __params,\n responseType: 'text'\n });\n\n return this.http.request(req).pipe(\n __filter(_r => _r instanceof HttpResponse),\n __map((_r) => {\n return (_r as HttpResponse).clone({ body: (_r as HttpResponse).body === 'true' }) as __StrictHttpResponse\n })\n );\n }\n /**\n * @param expirePaymentUrlRequest undefined\n */\n integrationExpirePaymentUrl(expirePaymentUrlRequest: ExpirePaymentUrlRequest): __Observable {\n return this.integrationExpirePaymentUrlResponse(expirePaymentUrlRequest).pipe(\n __map(_r => _r.body as boolean)\n );\n }\n\n /**\n * @param params The `IntegrationService.IntegrationGetTransactionDetailsParams` containing the following parameters:\n *\n * - `fromUtc`:\n *\n * - `toUtc`:\n */\n integrationGetTransactionDetailsResponse(params: IntegrationService.IntegrationGetTransactionDetailsParams): __Observable<__StrictHttpResponse> {\n let __params = this.newParams();\n let __headers = new HttpHeaders();\n let __body: any = null;\n if (params.fromUtc != null) __params = __params.set('fromUtc', params.fromUtc.toString());\n if (params.toUtc != null) __params = __params.set('toUtc', params.toUtc.toString());\n let req = new HttpRequest(\n 'GET',\n this.rootUrl + `/api/v1/transactionreport`,\n __body,\n {\n headers: __headers,\n params: __params,\n responseType: 'blob'\n });\n\n return this.http.request(req).pipe(\n __filter(_r => _r instanceof HttpResponse),\n __map((_r) => {\n return _r as __StrictHttpResponse;\n })\n );\n }\n /**\n * @param params The `IntegrationService.IntegrationGetTransactionDetailsParams` containing the following parameters:\n *\n * - `fromUtc`:\n *\n * - `toUtc`:\n */\n integrationGetTransactionDetails(params: IntegrationService.IntegrationGetTransactionDetailsParams): __Observable {\n return this.integrationGetTransactionDetailsResponse(params).pipe(\n __map(_r => _r.body as Blob)\n );\n }\n\n /**\n * @param requestModel undefined\n */\n integrationGetPaymentUrlResponse(requestModel: GetPaymentUrlRequest): __Observable<__StrictHttpResponse> {\n let __params = this.newParams();\n let __headers = new HttpHeaders();\n let __body: any = null;\n __body = requestModel;\n let req = new HttpRequest(\n 'POST',\n this.rootUrl + `/api/v1/getpaymenturl`,\n __body,\n {\n headers: __headers,\n params: __params,\n responseType: 'blob'\n });\n\n return this.http.request(req).pipe(\n __filter(_r => _r instanceof HttpResponse),\n __map((_r) => {\n return _r as __StrictHttpResponse;\n })\n );\n }\n /**\n * @param requestModel undefined\n */\n integrationGetPaymentUrl(requestModel: GetPaymentUrlRequest): __Observable {\n return this.integrationGetPaymentUrlResponse(requestModel).pipe(\n __map(_r => _r.body as Blob)\n );\n }\n\n /**\n * @param trackingNumber undefined\n */\n integrationGetReceiptDataResponse(trackingNumber: string): __Observable<__StrictHttpResponse> {\n let __params = this.newParams();\n let __headers = new HttpHeaders();\n let __body: any = null;\n\n let req = new HttpRequest(\n 'GET',\n this.rootUrl + `/api/v1/receiptdata/${encodeURIComponent(trackingNumber)}`,\n __body,\n {\n headers: __headers,\n params: __params,\n responseType: 'json'\n });\n\n return this.http.request(req).pipe(\n __filter(_r => _r instanceof HttpResponse),\n __map((_r) => {\n return _r as __StrictHttpResponse;\n })\n );\n }\n /**\n * @param trackingNumber undefined\n */\n integrationGetReceiptData(trackingNumber: string): __Observable {\n return this.integrationGetReceiptDataResponse(trackingNumber).pipe(\n __map(_r => _r.body as ReceiptDataResponse)\n );\n }\n\n /**\n * @param trackingNumbers undefined\n */\n integrationExpireTransactionsResponse(trackingNumbers: Array): __Observable<__StrictHttpResponse> {\n let __params = this.newParams();\n let __headers = new HttpHeaders();\n let __body: any = null;\n __body = trackingNumbers;\n let req = new HttpRequest(\n 'POST',\n this.rootUrl + `/api/v1/expiretransactions`,\n __body,\n {\n headers: __headers,\n params: __params,\n responseType: 'blob'\n });\n\n return this.http.request(req).pipe(\n __filter(_r => _r instanceof HttpResponse),\n __map((_r) => {\n return _r as __StrictHttpResponse;\n })\n );\n }\n /**\n * @param trackingNumbers undefined\n */\n integrationExpireTransactions(trackingNumbers: Array): __Observable {\n return this.integrationExpireTransactionsResponse(trackingNumbers).pipe(\n __map(_r => _r.body as Blob)\n );\n }\n}\n\nmodule IntegrationService {\n\n /**\n * Parameters for IntegrationGetPayments\n */\n export interface IntegrationGetPaymentsParams {\n fromUtc?: null | string;\n toUtc?: null | string;\n }\n\n /**\n * Parameters for IntegrationGetUncapturedPayments\n */\n export interface IntegrationGetUncapturedPaymentsParams {\n fromUtc?: null | string;\n toUtc?: null | string;\n }\n\n /**\n * Parameters for IntegrationGetTransactionDetails\n */\n export interface IntegrationGetTransactionDetailsParams {\n fromUtc?: null | string;\n toUtc?: null | string;\n }\n}\n\nexport { IntegrationService }\n","/* tslint:disable */\nimport { Injectable } from '@angular/core';\nimport { HttpClient, HttpRequest, HttpResponse, HttpHeaders } from '@angular/common/http';\nimport { BaseService as __BaseService } from '../base-service';\nimport { EPayApiConfiguration as __Configuration } from '../epay-api-configuration';\nimport { StrictHttpResponse as __StrictHttpResponse } from '../strict-http-response';\nimport { Observable as __Observable } from 'rxjs';\nimport { map as __map, filter as __filter } from 'rxjs/operators';\n\nimport { CreateOrderResponse } from '../models/create-order-response';\nimport { CreatePayPalOrderRequest } from '../models/create-pay-pal-order-request';\nimport { TransactionResult } from '../models/transaction-result';\nimport { CapturePayPalOrderRequest } from '../models/capture-pay-pal-order-request';\nimport { ProcessGooglePayRequest } from '../models/process-google-pay-request';\nimport { ValidateApplePaySessionRequest } from '../models/validate-apple-pay-session-request';\nimport { ProcessApplePayRequest } from '../models/process-apple-pay-request';\n@Injectable({\n providedIn: 'root',\n})\nclass PaymentService extends __BaseService {\n static readonly paymentCreatePayPalOrderPath = '/Payment/CreatePayPalOrder';\n static readonly paymentCapturePayPalOrderPath = '/Payment/CapturePayPalOrder';\n static readonly paymentCreateGooglePayPaymentPath = '/Payment/CaptureGooglePayOrder';\n static readonly paymentValidateApplePayPath = '/Payment/ValidateApplePay';\n static readonly paymentProcessApplePayPath = '/Payment/ProcessApplePay';\n\n constructor(\n config: __Configuration,\n http: HttpClient\n ) {\n super(config, http);\n }\n\n /**\n * @param model undefined\n */\n paymentCreatePayPalOrderResponse(model: CreatePayPalOrderRequest): __Observable<__StrictHttpResponse> {\n let __params = this.newParams();\n let __headers = new HttpHeaders();\n let __body: any = null;\n __body = model;\n let req = new HttpRequest(\n 'POST',\n this.rootUrl + `/Payment/CreatePayPalOrder`,\n __body,\n {\n headers: __headers,\n params: __params,\n responseType: 'json'\n });\n\n return this.http.request(req).pipe(\n __filter(_r => _r instanceof HttpResponse),\n __map((_r) => {\n return _r as __StrictHttpResponse;\n })\n );\n }\n /**\n * @param model undefined\n */\n paymentCreatePayPalOrder(model: CreatePayPalOrderRequest): __Observable {\n return this.paymentCreatePayPalOrderResponse(model).pipe(\n __map(_r => _r.body as CreateOrderResponse)\n );\n }\n\n /**\n * @param model undefined\n */\n paymentCapturePayPalOrderResponse(model: CapturePayPalOrderRequest): __Observable<__StrictHttpResponse> {\n let __params = this.newParams();\n let __headers = new HttpHeaders();\n let __body: any = null;\n __body = model;\n let req = new HttpRequest(\n 'POST',\n this.rootUrl + `/Payment/CapturePayPalOrder`,\n __body,\n {\n headers: __headers,\n params: __params,\n responseType: 'json'\n });\n\n return this.http.request(req).pipe(\n __filter(_r => _r instanceof HttpResponse),\n __map((_r) => {\n return _r as __StrictHttpResponse;\n })\n );\n }\n /**\n * @param model undefined\n */\n paymentCapturePayPalOrder(model: CapturePayPalOrderRequest): __Observable {\n return this.paymentCapturePayPalOrderResponse(model).pipe(\n __map(_r => _r.body as TransactionResult)\n );\n }\n\n /**\n * @param processRequest undefined\n */\n paymentCreateGooglePayPaymentResponse(processRequest: ProcessGooglePayRequest): __Observable<__StrictHttpResponse> {\n let __params = this.newParams();\n let __headers = new HttpHeaders();\n let __body: any = null;\n __body = processRequest;\n let req = new HttpRequest(\n 'POST',\n this.rootUrl + `/Payment/CaptureGooglePayOrder`,\n __body,\n {\n headers: __headers,\n params: __params,\n responseType: 'json'\n });\n\n return this.http.request(req).pipe(\n __filter(_r => _r instanceof HttpResponse),\n __map((_r) => {\n return _r as __StrictHttpResponse;\n })\n );\n }\n /**\n * @param processRequest undefined\n */\n paymentCreateGooglePayPayment(processRequest: ProcessGooglePayRequest): __Observable {\n return this.paymentCreateGooglePayPaymentResponse(processRequest).pipe(\n __map(_r => _r.body as TransactionResult)\n );\n }\n\n /**\n * @param model undefined\n */\n paymentValidateApplePayResponse(model: ValidateApplePaySessionRequest): __Observable<__StrictHttpResponse> {\n let __params = this.newParams();\n let __headers = new HttpHeaders();\n let __body: any = null;\n __body = model;\n let req = new HttpRequest(\n 'POST',\n this.rootUrl + `/Payment/ValidateApplePay`,\n __body,\n {\n headers: __headers,\n params: __params,\n responseType: 'blob'\n });\n\n return this.http.request(req).pipe(\n __filter(_r => _r instanceof HttpResponse),\n __map((_r) => {\n return _r as __StrictHttpResponse;\n })\n );\n }\n /**\n * @param model undefined\n */\n paymentValidateApplePay(model: ValidateApplePaySessionRequest): __Observable {\n return this.paymentValidateApplePayResponse(model).pipe(\n __map(_r => _r.body as Blob)\n );\n }\n\n /**\n * @param processRequest undefined\n */\n paymentProcessApplePayResponse(processRequest: ProcessApplePayRequest): __Observable<__StrictHttpResponse> {\n let __params = this.newParams();\n let __headers = new HttpHeaders();\n let __body: any = null;\n __body = processRequest;\n let req = new HttpRequest(\n 'POST',\n this.rootUrl + `/Payment/ProcessApplePay`,\n __body,\n {\n headers: __headers,\n params: __params,\n responseType: 'json'\n });\n\n return this.http.request(req).pipe(\n __filter(_r => _r instanceof HttpResponse),\n __map((_r) => {\n return _r as __StrictHttpResponse;\n })\n );\n }\n /**\n * @param processRequest undefined\n */\n paymentProcessApplePay(processRequest: ProcessApplePayRequest): __Observable {\n return this.paymentProcessApplePayResponse(processRequest).pipe(\n __map(_r => _r.body as TransactionResult)\n );\n }\n}\n\nmodule PaymentService {\n}\n\nexport { PaymentService }\n","/* tslint:disable */\nimport { Injectable } from '@angular/core';\nimport { HttpClient, HttpRequest, HttpResponse, HttpHeaders } from '@angular/common/http';\nimport { BaseService as __BaseService } from '../base-service';\nimport { EPayApiConfiguration as __Configuration } from '../epay-api-configuration';\nimport { StrictHttpResponse as __StrictHttpResponse } from '../strict-http-response';\nimport { Observable as __Observable } from 'rxjs';\nimport { map as __map, filter as __filter } from 'rxjs/operators';\n\n@Injectable({\n providedIn: 'root',\n})\nclass RedirectService extends __BaseService {\n static readonly redirectPostPath = '/Redirect';\n\n constructor(\n config: __Configuration,\n http: HttpClient\n ) {\n super(config, http);\n }\n\n /**\n * @param params The `RedirectService.RedirectPostParams` containing the following parameters:\n *\n * - `VIN`:\n *\n * - `Plate`:\n *\n * - `DlNumber`:\n *\n * - `Amount`:\n *\n * - `SuccessRedirectUrl`:\n *\n * - `FailedRedirectUrl`:\n *\n * - `SecurityToken`:\n *\n * - `UtcTimestamp`:\n *\n * - `TrackingNumber`:\n *\n * - `TransactionUid`:\n *\n * - `AllowEcheck`:\n *\n * - `MiscField1`:\n *\n * - `MiscField2`:\n *\n * - `Source`:\n *\n * - `VersionNumber`:\n *\n * - `AppClientId`:\n *\n * - `OfficeId`:\n *\n * - `RequestId`:\n *\n * - `CustomerName`:\n *\n * - `CustomerEmail`:\n *\n * - `TechId`:\n *\n * - `DishonoredTransactionId`:\n *\n * - `Ttc`:\n *\n * - `NsfFeeAmount`:\n *\n * - `State`:\n *\n * - `AllowedPaymentCode`:\n */\n redirectPostResponse(params: RedirectService.RedirectPostParams): __Observable<__StrictHttpResponse> {\n let __params = this.newParams();\n let __headers = new HttpHeaders();\n let __body: any = null;\n let __formData = new FormData();\n __body = __formData;\n if (params.VIN != null) { __formData.append('VIN', params.VIN as string | Blob);}\n if (params.Plate != null) { __formData.append('Plate', params.Plate as string | Blob);}\n if (params.DlNumber != null) { __formData.append('DlNumber', params.DlNumber as string | Blob);}\n if (params.Amount != null) { __formData.append('Amount', JSON.stringify(params.Amount));}\n if (params.SuccessRedirectUrl != null) { __formData.append('SuccessRedirectUrl', params.SuccessRedirectUrl as string | Blob);}\n if (params.FailedRedirectUrl != null) { __formData.append('FailedRedirectUrl', params.FailedRedirectUrl as string | Blob);}\n if (params.SecurityToken != null) { __formData.append('SecurityToken', params.SecurityToken as string | Blob);}\n if (params.UtcTimestamp != null) { __formData.append('UtcTimestamp', JSON.stringify(params.UtcTimestamp));}\n if (params.TrackingNumber != null) { __formData.append('TrackingNumber', params.TrackingNumber as string | Blob);}\n if (params.TransactionUid != null) { __formData.append('TransactionUid', params.TransactionUid as string | Blob);}\n if (params.AllowEcheck != null) { __formData.append('AllowEcheck', JSON.stringify(params.AllowEcheck));}\n if (params.MiscField1 != null) { __formData.append('MiscField1', params.MiscField1 as string | Blob);}\n if (params.MiscField2 != null) { __formData.append('MiscField2', params.MiscField2 as string | Blob);}\n if (params.Source != null) { __formData.append('Source', params.Source as string | Blob);}\n if (params.VersionNumber != null) { __formData.append('VersionNumber', params.VersionNumber as string | Blob);}\n if (params.AppClientId != null) { __formData.append('AppClientId', params.AppClientId as string | Blob);}\n if (params.OfficeId != null) { __formData.append('OfficeId', params.OfficeId as string | Blob);}\n if (params.RequestId != null) { __formData.append('RequestId', params.RequestId as string | Blob);}\n if (params.CustomerName != null) { __formData.append('CustomerName', params.CustomerName as string | Blob);}\n if (params.CustomerEmail != null) { __formData.append('CustomerEmail', params.CustomerEmail as string | Blob);}\n if (params.TechId != null) { __formData.append('TechId', params.TechId as string | Blob);}\n if (params.DishonoredTransactionId != null) { __formData.append('DishonoredTransactionId', JSON.stringify(params.DishonoredTransactionId));}\n if (params.Ttc != null) { __formData.append('Ttc', params.Ttc as string | Blob);}\n if (params.NsfFeeAmount != null) { __formData.append('NsfFeeAmount', JSON.stringify(params.NsfFeeAmount));}\n if (params.State != null) { __formData.append('State', params.State as string | Blob);}\n if (params.AllowedPaymentCode != null) { __formData.append('AllowedPaymentCode', params.AllowedPaymentCode as string | Blob);}\n let req = new HttpRequest(\n 'POST',\n this.rootUrl + `/Redirect`,\n __body,\n {\n headers: __headers,\n params: __params,\n responseType: 'blob'\n });\n\n return this.http.request(req).pipe(\n __filter(_r => _r instanceof HttpResponse),\n __map((_r) => {\n return _r as __StrictHttpResponse;\n })\n );\n }\n /**\n * @param params The `RedirectService.RedirectPostParams` containing the following parameters:\n *\n * - `VIN`:\n *\n * - `Plate`:\n *\n * - `DlNumber`:\n *\n * - `Amount`:\n *\n * - `SuccessRedirectUrl`:\n *\n * - `FailedRedirectUrl`:\n *\n * - `SecurityToken`:\n *\n * - `UtcTimestamp`:\n *\n * - `TrackingNumber`:\n *\n * - `TransactionUid`:\n *\n * - `AllowEcheck`:\n *\n * - `MiscField1`:\n *\n * - `MiscField2`:\n *\n * - `Source`:\n *\n * - `VersionNumber`:\n *\n * - `AppClientId`:\n *\n * - `OfficeId`:\n *\n * - `RequestId`:\n *\n * - `CustomerName`:\n *\n * - `CustomerEmail`:\n *\n * - `TechId`:\n *\n * - `DishonoredTransactionId`:\n *\n * - `Ttc`:\n *\n * - `NsfFeeAmount`:\n *\n * - `State`:\n *\n * - `AllowedPaymentCode`:\n */\n redirectPost(params: RedirectService.RedirectPostParams): __Observable {\n return this.redirectPostResponse(params).pipe(\n __map(_r => _r.body as Blob)\n );\n }\n}\n\nmodule RedirectService {\n\n /**\n * Parameters for RedirectPost\n */\n export interface RedirectPostParams {\n VIN?: null | string;\n Plate?: null | string;\n DlNumber?: null | string;\n Amount?: number;\n SuccessRedirectUrl?: null | string;\n FailedRedirectUrl?: null | string;\n SecurityToken?: null | string;\n UtcTimestamp?: number;\n TrackingNumber?: null | string;\n TransactionUid?: string;\n AllowEcheck?: null | boolean;\n MiscField1?: null | string;\n MiscField2?: null | string;\n Source?: 'Unknown' | 'MtDriver' | 'ContactCenter' | 'UnifiedPaymentClient' | 'Retail' | 'NSF';\n VersionNumber?: null | string;\n AppClientId?: null | string;\n OfficeId?: null | string;\n RequestId?: null | string;\n CustomerName?: null | string;\n CustomerEmail?: null | string;\n TechId?: null | string;\n DishonoredTransactionId?: null | number;\n Ttc?: null | string;\n NsfFeeAmount?: null | number;\n State?: 'Pending' | 'Final' | 'Settled' | 'Refunded' | 'Chargeback' | 'Expired' | 'Rejected' | 'Void' | 'Failed' | 'Dishonored';\n AllowedPaymentCode?: null | string;\n }\n}\n\nexport { RedirectService }\n","/* tslint:disable */\nimport { Injectable } from '@angular/core';\nimport { HttpClient, HttpRequest, HttpResponse, HttpHeaders } from '@angular/common/http';\nimport { BaseService as __BaseService } from '../base-service';\nimport { EPayApiConfiguration as __Configuration } from '../epay-api-configuration';\nimport { StrictHttpResponse as __StrictHttpResponse } from '../strict-http-response';\nimport { Observable as __Observable } from 'rxjs';\nimport { map as __map, filter as __filter } from 'rxjs/operators';\n\n@Injectable({\n providedIn: 'root',\n})\nclass TransactionsService extends __BaseService {\n static readonly transactionsPostPath = '/transactions';\n\n constructor(\n config: __Configuration,\n http: HttpClient\n ) {\n super(config, http);\n }\n\n /**\n * @param params The `TransactionsService.TransactionsPostParams` containing the following parameters:\n *\n * - `VIN`:\n *\n * - `Plate`:\n *\n * - `DlNumber`:\n *\n * - `Amount`:\n *\n * - `SuccessRedirectUrl`:\n *\n * - `FailedRedirectUrl`:\n *\n * - `SecurityToken`:\n *\n * - `UtcTimestamp`:\n *\n * - `TrackingNumber`:\n *\n * - `TransactionUid`:\n *\n * - `AllowEcheck`:\n *\n * - `MiscField1`:\n *\n * - `MiscField2`:\n *\n * - `Source`:\n *\n * - `VersionNumber`:\n *\n * - `AppClientId`:\n *\n * - `OfficeId`:\n *\n * - `RequestId`:\n *\n * - `CustomerName`:\n *\n * - `CustomerEmail`:\n *\n * - `TechId`:\n *\n * - `DishonoredTransactionId`:\n *\n * - `Ttc`:\n *\n * - `NsfFeeAmount`:\n *\n * - `State`:\n *\n * - `AllowedPaymentCode`:\n */\n transactionsPostResponse(params: TransactionsService.TransactionsPostParams): __Observable<__StrictHttpResponse> {\n let __params = this.newParams();\n let __headers = new HttpHeaders();\n let __body: any = null;\n let __formData = new FormData();\n __body = __formData;\n if (params.VIN != null) { __formData.append('VIN', params.VIN as string | Blob);}\n if (params.Plate != null) { __formData.append('Plate', params.Plate as string | Blob);}\n if (params.DlNumber != null) { __formData.append('DlNumber', params.DlNumber as string | Blob);}\n if (params.Amount != null) { __formData.append('Amount', JSON.stringify(params.Amount));}\n if (params.SuccessRedirectUrl != null) { __formData.append('SuccessRedirectUrl', params.SuccessRedirectUrl as string | Blob);}\n if (params.FailedRedirectUrl != null) { __formData.append('FailedRedirectUrl', params.FailedRedirectUrl as string | Blob);}\n if (params.SecurityToken != null) { __formData.append('SecurityToken', params.SecurityToken as string | Blob);}\n if (params.UtcTimestamp != null) { __formData.append('UtcTimestamp', JSON.stringify(params.UtcTimestamp));}\n if (params.TrackingNumber != null) { __formData.append('TrackingNumber', params.TrackingNumber as string | Blob);}\n if (params.TransactionUid != null) { __formData.append('TransactionUid', params.TransactionUid as string | Blob);}\n if (params.AllowEcheck != null) { __formData.append('AllowEcheck', JSON.stringify(params.AllowEcheck));}\n if (params.MiscField1 != null) { __formData.append('MiscField1', params.MiscField1 as string | Blob);}\n if (params.MiscField2 != null) { __formData.append('MiscField2', params.MiscField2 as string | Blob);}\n if (params.Source != null) { __formData.append('Source', params.Source as string | Blob);}\n if (params.VersionNumber != null) { __formData.append('VersionNumber', params.VersionNumber as string | Blob);}\n if (params.AppClientId != null) { __formData.append('AppClientId', params.AppClientId as string | Blob);}\n if (params.OfficeId != null) { __formData.append('OfficeId', params.OfficeId as string | Blob);}\n if (params.RequestId != null) { __formData.append('RequestId', params.RequestId as string | Blob);}\n if (params.CustomerName != null) { __formData.append('CustomerName', params.CustomerName as string | Blob);}\n if (params.CustomerEmail != null) { __formData.append('CustomerEmail', params.CustomerEmail as string | Blob);}\n if (params.TechId != null) { __formData.append('TechId', params.TechId as string | Blob);}\n if (params.DishonoredTransactionId != null) { __formData.append('DishonoredTransactionId', JSON.stringify(params.DishonoredTransactionId));}\n if (params.Ttc != null) { __formData.append('Ttc', params.Ttc as string | Blob);}\n if (params.NsfFeeAmount != null) { __formData.append('NsfFeeAmount', JSON.stringify(params.NsfFeeAmount));}\n if (params.State != null) { __formData.append('State', params.State as string | Blob);}\n if (params.AllowedPaymentCode != null) { __formData.append('AllowedPaymentCode', params.AllowedPaymentCode as string | Blob);}\n let req = new HttpRequest(\n 'POST',\n this.rootUrl + `/transactions`,\n __body,\n {\n headers: __headers,\n params: __params,\n responseType: 'blob'\n });\n\n return this.http.request(req).pipe(\n __filter(_r => _r instanceof HttpResponse),\n __map((_r) => {\n return _r as __StrictHttpResponse;\n })\n );\n }\n /**\n * @param params The `TransactionsService.TransactionsPostParams` containing the following parameters:\n *\n * - `VIN`:\n *\n * - `Plate`:\n *\n * - `DlNumber`:\n *\n * - `Amount`:\n *\n * - `SuccessRedirectUrl`:\n *\n * - `FailedRedirectUrl`:\n *\n * - `SecurityToken`:\n *\n * - `UtcTimestamp`:\n *\n * - `TrackingNumber`:\n *\n * - `TransactionUid`:\n *\n * - `AllowEcheck`:\n *\n * - `MiscField1`:\n *\n * - `MiscField2`:\n *\n * - `Source`:\n *\n * - `VersionNumber`:\n *\n * - `AppClientId`:\n *\n * - `OfficeId`:\n *\n * - `RequestId`:\n *\n * - `CustomerName`:\n *\n * - `CustomerEmail`:\n *\n * - `TechId`:\n *\n * - `DishonoredTransactionId`:\n *\n * - `Ttc`:\n *\n * - `NsfFeeAmount`:\n *\n * - `State`:\n *\n * - `AllowedPaymentCode`:\n */\n transactionsPost(params: TransactionsService.TransactionsPostParams): __Observable {\n return this.transactionsPostResponse(params).pipe(\n __map(_r => _r.body as Blob)\n );\n }\n}\n\nmodule TransactionsService {\n\n /**\n * Parameters for TransactionsPost\n */\n export interface TransactionsPostParams {\n VIN?: null | string;\n Plate?: null | string;\n DlNumber?: null | string;\n Amount?: number;\n SuccessRedirectUrl?: null | string;\n FailedRedirectUrl?: null | string;\n SecurityToken?: null | string;\n UtcTimestamp?: number;\n TrackingNumber?: null | string;\n TransactionUid?: string;\n AllowEcheck?: null | boolean;\n MiscField1?: null | string;\n MiscField2?: null | string;\n Source?: 'Unknown' | 'MtDriver' | 'ContactCenter' | 'UnifiedPaymentClient' | 'Retail' | 'NSF';\n VersionNumber?: null | string;\n AppClientId?: null | string;\n OfficeId?: null | string;\n RequestId?: null | string;\n CustomerName?: null | string;\n CustomerEmail?: null | string;\n TechId?: null | string;\n DishonoredTransactionId?: null | number;\n Ttc?: null | string;\n NsfFeeAmount?: null | number;\n State?: 'Pending' | 'Final' | 'Settled' | 'Refunded' | 'Chargeback' | 'Expired' | 'Rejected' | 'Void' | 'Failed' | 'Dishonored';\n AllowedPaymentCode?: null | string;\n }\n}\n\nexport { TransactionsService }\n","import { NgModule } from \"@angular/core\";\nimport { RouterModule } from \"@angular/router\";\nimport { PaymentPageComponent } from \"./pages/ecom/payment-page/payment-page.component\";\nimport { PrivacyPolicyPageComponent } from \"./pages/privacy-policy/privacy-policy-page.component\";\nimport { ReceiptComponent } from \"./pages/receipt/receipt.component\";\nimport { PaymentComponent } from \"./pages/retail/payment-page/payment.component\";\nimport { TermsAndConditionsPageComponent } from \"./pages/terms-and-conditions/terms-and-conditions-page.component\";\n\n@NgModule({\n imports: [\n RouterModule.forRoot([\n {\n path: \"terms\",\n component: TermsAndConditionsPageComponent,\n },\n {\n path: \"priv_policy\",\n component: PrivacyPolicyPageComponent,\n },\n {\n path: \"retail\",\n component: PaymentComponent\n },\n {\n path: \"receipt/:id\",\n component: ReceiptComponent\n },\n {\n path: \"**\",\n component: PaymentPageComponent,\n }\n ]),\n ],\n exports: [\n RouterModule,\n ]\n})\nexport class AppRoutingModule {}\n","import { Component } from \"@angular/core\";\n\n@Component({\n selector: \"app-root\",\n templateUrl: \"./app.component.html\",\n styleUrls: [\"./app.component.scss\"]\n})\nexport class AppComponent {\n\n}\n","
\n
\n \n
\n
\n","import { BrowserModule } from \"@angular/platform-browser\";\nimport { NgModule } from \"@angular/core\";\nimport { BrowserAnimationsModule } from \"@angular/platform-browser/animations\";\nimport { HttpClientModule } from \"@angular/common/http\";\nimport { CommonModule } from \"@angular/common\";\nimport { StoreModule } from \"@ngrx/store\";\nimport { EffectsModule } from \"@ngrx/effects\";\nimport { StoreDevtoolsModule } from \"@ngrx/store-devtools\";\nimport { IMaskModule } from \"angular-imask\";\n\nimport { AppRoutingModule } from \"./app-routing.module\";\nimport { EPayApiModule } from \"Portal/epay-api.module\";\nimport { SharedModule } from \"./shared/shared.module\";\n\nimport { environment } from \"src/environments/environment\";\nimport { ReducerConfiguration, ReducerMap } from \"./storage/reducer-configuration\";\nimport { EffectsConfiguration } from \"./storage/effects-configuration\";\n\nimport { AppComponent } from \"./app.component\";\nimport { HeaderComponent } from \"./layout/header/header.component\";\nimport { FooterComponent } from \"./layout/footer/footer.component\";\nimport { PaySectionComponent } from \"./pages/ecom/pay-section/pay-section.component\";\nimport { PaymentFormComponent } from \"./pages/ecom/pay-section/payment-form/payment-form.component\";\nimport { SummaryComponent } from \"./pages/ecom/pay-section/summary/summary.component\";\nimport { RiskDeclinedComponent } from \"./pages/ecom/risk-declined/risk-declined.component\";\nimport { CreditCardFormComponent } from \"./pages/ecom/pay-section/credit-card-form/credit-card-form.component\";\nimport { ECheckFormComponent } from \"./pages/ecom/pay-section/echeck-form/echeck-form.component\";\nimport { PaymentPageComponent } from \"./pages/ecom/payment-page/payment-page.component\";\nimport { TermsAndConditionsPageComponent } from \"./pages/terms-and-conditions/terms-and-conditions-page.component\";\nimport { PrivacyPolicyPageComponent } from \"./pages/privacy-policy/privacy-policy-page.component\";\nimport { PaymentSectionComponent } from \"./pages/retail/pay-section/payment-section.component\";\nimport { CloverComponent } from \"./pages/retail/pay-section/clover/clover.component\";\nimport { PaymentComponent } from \"./pages/retail/payment-page/payment.component\";\nimport { MotoComponent } from \"./pages/retail/pay-section/moto/moto.component\";\nimport { RetailCreditCardFormComponent } from \"./pages/retail/pay-section/moto/credit-card-form/credit-card-form.component\";\nimport { ReceiptComponent } from \"./pages/receipt/receipt.component\";\nimport { MatSelectSafariFix } from \"./mat-select-safari-fix.directive\";\n\n@NgModule({\n imports: [\n BrowserModule,\n CommonModule,\n AppRoutingModule,\n StoreModule.forRoot(ReducerMap, ReducerConfiguration),\n EffectsModule.forRoot(EffectsConfiguration),\n StoreDevtoolsModule.instrument({\n maxAge: 50,\n logOnly: environment.production,\n }),\n BrowserAnimationsModule,\n HttpClientModule,\n EPayApiModule.forRoot({ rootUrl: environment.apiRootUrl }),\n IMaskModule,\n SharedModule,\n ],\n declarations: [\n AppComponent,\n HeaderComponent,\n FooterComponent,\n PaymentPageComponent,\n TermsAndConditionsPageComponent,\n PrivacyPolicyPageComponent,\n PaySectionComponent,\n PaymentFormComponent,\n SummaryComponent,\n RiskDeclinedComponent,\n CreditCardFormComponent,\n ECheckFormComponent,\n PaymentComponent,\n ReceiptComponent,\n PaymentSectionComponent,\n RetailCreditCardFormComponent,\n CloverComponent,\n MotoComponent,\n CloverComponent,\n MatSelectSafariFix,\n ],\n providers: [],\n bootstrap: [AppComponent]\n})\nexport class AppModule { }\n","import { Component } from \"@angular/core\";\n\n@Component({\n selector: \"footer\",\n templateUrl: \"./footer.component.html\",\n styleUrls: [\"./footer.component.scss\"]\n})\nexport class FooterComponent {}\n","
\n \n
\n
\n
\n
\n MVD Your Way\n
\n \"MVD\n \"MDOJ\n
\n
\n Powered by:\n \"VITU\n
\n
\n
\n Customer Support by Vitu\n \n \n 40 West 14th St Suite 4B, Helena, MT 59601\n \n \n \n mtsupport@vitu.com\n \n \n \n 406-285-8280\n \n
\n
\n
\n","import { Component } from \"@angular/core\";\n\n@Component({\n selector: \"header\",\n templateUrl: \"./header.component.html\",\n styleUrls: [\"./header.component.scss\"]\n})\nexport class HeaderComponent {\n\n menuVisible = false;\n}\n","
\n
\n
\n
\n MVD Your Way\n
\n
\n \"MVD\n \"MDOJ\n
\n
\n \n \n
\n
\n
\n","import { DOCUMENT } from \"@angular/common\";\nimport { Directive, Inject, Input, OnInit, OnDestroy } from \"@angular/core\";\nimport { MatSelect } from \"@angular/material/select\";\nimport { Subject } from \"rxjs\";\nimport { takeUntil } from \"rxjs/operators\";\n\n@Directive({\n selector: \"[safariFix]\",\n})\nexport class MatSelectSafariFix implements OnInit, OnDestroy {\n\n @Input() safariFix: boolean;\n\n constructor(\n private select: MatSelect,\n @Inject(DOCUMENT) private document: Document\n ) {}\n\n private destroyed = new Subject();\n\n ngOnInit() {\n\n this.select._openedStream\n .pipe(\n takeUntil(this.destroyed)\n )\n .subscribe(() => {\n\n setTimeout(() => this.document.defaultView.dispatchEvent(new Event(\"resize\")), 150);\n });\n }\n\n ngOnDestroy() {\n\n this.destroyed.next(null);\n this.destroyed.complete();\n }\n}\n","import { NgModule } from \"@angular/core\";\nimport { MatInputModule } from \"@angular/material/input\";\nimport { MatRadioModule } from \"@angular/material/radio\";\nimport { MatButtonModule } from \"@angular/material/button\";\nimport { MatIconModule } from \"@angular/material/icon\";\nimport { MatSelectModule } from \"@angular/material/select\";\nimport { MatDialogModule } from \"@angular/material/dialog\";\nimport { MatCheckboxModule } from \"@angular/material/checkbox\";\n\nconst exportableModules = [\n MatInputModule,\n MatCheckboxModule,\n MatRadioModule,\n MatButtonModule,\n MatIconModule,\n MatSelectModule,\n MatDialogModule,\n];\n\n@NgModule({\n imports: [...exportableModules],\n exports: [...exportableModules],\n})\nexport class MaterialModule {}\n","export const CLOVER_STYLES = {\n html: {\n height: \"auto\"\n },\n body: {\n \"padding-top\": \"6px\"\n },\n input: {\n \"box-sizing\": \"border-box\",\n \"caret-color\": \"#4FC8EC\",\n all: \"unset\",\n \"background-color\": \"#fff\",\n \"border-radius\": \"4px\",\n color: \"#000\",\n \"font-family\": \"Roboto, sans-serif\",\n \"font-size\": \"16px\",\n \"font-weight\": \"400\",\n \"line-height\": \"1.5\",\n height: \"60px\",\n width: \"100%\",\n border: \"1px solid #E0E0E0\",\n padding: \"0 10px\"\n },\n \"input:hover\": {\n \"border-color\": \"#000\",\n \"border-width\": \"2px\",\n padding: \"0 9px\"\n },\n \"input:focus\": {\n \"border-color\": \"#4FC8EC\",\n \"border-width\": \"2px\",\n color: \"#000\",\n outline: \"0\",\n padding: \"0 9px\"\n },\n \"input::placeholder\": {\n color: \"transparent\"\n },\n label: {\n \"background-color\": \"#fff\",\n color: \"rgba(0, 0, 0, 0.6)\",\n \"font-family\": \"'HCo Gotham SSm', Roboto, sans-serif\",\n \"font-size\": \"12px\",\n \"font-stretch\": \"100%\",\n display: \"block\",\n position: \"absolute\",\n left: \"5px\",\n top: \"1px\",\n padding: \"0 5px\"\n },\n \".brand\": {\n top: \"21px\",\n right: \"15px\"\n }\n};\n","import { AfterViewInit, Component, EventEmitter, Inject, Input, OnChanges, OnDestroy, OnInit, Output, SimpleChanges } from \"@angular/core\";\nimport { CLOVER_STYLES } from \"./clover-styles\";\nimport { AbstractControl, UntypedFormBuilder, NgForm, ValidatorFn, Validators } from \"@angular/forms\";\nimport { DOCUMENT } from \"@angular/common\";\nimport isEmpty from \"ramda/es/isEmpty\";\nimport { CardRecord, CARD_FIELDS, CloverTokenResponse, CloverValidationError } from \"src/app/storage/ecom/ecom.state\";\n\ndeclare const Clover: any;\n\n@Component({\n selector: \"credit-card-form\",\n templateUrl: \"./credit-card-form.component.html\",\n styleUrls: [\"./credit-card-form.component.scss\"],\n})\nexport class CreditCardFormComponent implements AfterViewInit, OnInit, OnDestroy, OnChanges {\n\n @Input() pakmsKey: string;\n @Input() agencyFeeDescriptor: string;\n @Input() serviceFeeDescriptor: string;\n @Input() cardErrorMessage: string;\n\n @Input() set record(value: CardRecord) {\n this.cardForm.patchValue(value, { emitEvent: false });\n }\n @Output() recordChange = new EventEmitter();\n\n constructor(\n @Inject(DOCUMENT) private document: Document,\n private fb: UntypedFormBuilder,\n private parentForm: NgForm,\n ) {}\n\n CARD_FIELDS = CARD_FIELDS;\n\n clover: any = null;\n cloverFields: Record = {\n [CARD_FIELDS.CARD_NUMBER]: \"#card-number\",\n [CARD_FIELDS.CARD_DATE]: \"#card-date\",\n [CARD_FIELDS.CARD_CVV]: \"#card-cvv\",\n [CARD_FIELDS.CARD_POSTAL_CODE]: \"#card-postal-code\",\n };\n\n cloverFieldErrors: Record = {\n [CARD_FIELDS.CARD_NUMBER]: \"Card number is required.\",\n [CARD_FIELDS.CARD_DATE]: \"Card expiry is required.\",\n [CARD_FIELDS.CARD_CVV]: \"Card CVV is required.\",\n [CARD_FIELDS.CARD_POSTAL_CODE]: \"Card postal code is required.\",\n };\n\n cloverFieldValidator = (field: string): ValidatorFn => {\n return () => this.cloverFieldErrors[field]\n ? { [field]: this.cloverFieldErrors[field] }\n : null;\n }\n\n cardForm = this.fb.group({\n cardHolderName: [null, [Validators.required, Validators.maxLength(100), this.validateCardHolderName]],\n accept: [false, [Validators.required, (control: AbstractControl) => !control.value ? { termsNotAccepted: true } : null]],\n customerEmail: [null, [Validators.required, Validators.email]],\n ...Object.fromEntries(\n Object.keys(this.cloverFields)\n .map(i => [i, [null, this.cloverFieldValidator(i)]])\n ),\n });\n\n validateCardHolderName(control: AbstractControl): {[key: string]: any} | null {\n\n const cardHolderName: string = control.value;\n\n if (cardHolderName?.replace(/\\D+/g, \"\").length >= 13) {\n return { 'validateCardHolderName': true };\n }\n return null;\n }\n\n ngOnInit(): void {\n\n this.parentForm.form.addControl(\"cardGroup\", this.cardForm);\n this.cardForm.valueChanges.subscribe(i => this.recordChange.emit(i));\n }\n\n ngOnDestroy(): void {\n\n this.parentForm.form.removeControl(\"cardGroup\");\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n\n if (\"cardErrorMessage\" in changes && changes.cardErrorMessage.currentValue) {\n this.resetCloverForm();\n this.cardForm.reset();\n }\n }\n\n ngAfterViewInit(): void {\n\n this.clover = new Clover(this.pakmsKey);\n setTimeout(() => this.renderCardFields());\n }\n\n touched = (field: string) => this.cardForm.controls[field].touched;\n hasError = (field: string) => this.cardForm.controls[field].hasError(field);\n getError = (field: string) => this.cardForm.controls[field].errors[field];\n\n public resetCloverForm(): void {\n\n Object.values(this.cloverFields)\n .forEach(i => this.document.querySelector(i).firstChild.remove());\n\n this.renderCardFields();\n }\n\n private renderCardFields(): void {\n\n const elements = this.clover.elements();\n\n Object.keys(this.cloverFields).forEach(i => {\n\n const field = elements.create(i, CLOVER_STYLES);\n field.mount(this.cloverFields[i]);\n\n field.addEventListener(\"change\", (error: CloverValidationError) => this.onCloverFieldChange(i, error));\n field.addEventListener(\"blur\", (error: CloverValidationError) => this.onCloverFieldBlur(i, error));\n });\n }\n\n public async getTokenData(): Promise {\n\n const tokenData: CloverTokenResponse = await this.clover.createToken(true);\n\n if (isEmpty(tokenData)) {\n\n return { error: \"generationError\" };\n }\n\n if (tokenData.errors) {\n\n Object.keys(this.cloverFields)\n .filter(i => tokenData.errors[i])\n .forEach(i => {\n this.cardForm.controls[i].setErrors({ [i]: tokenData.errors[i] });\n });\n\n return { error: \"validationError\" };\n }\n\n return {\n ...tokenData,\n ...this.cardForm.value,\n } as CloverTokenResponse;\n }\n\n private onCloverFieldBlur(field: string, error: CloverValidationError): void {\n this.cardForm.controls[field].markAsTouched();\n }\n\n private onCloverFieldChange(field: string, error: CloverValidationError): void {\n\n this.cloverFieldErrors[field] = error[field].error;\n this.cardForm.controls[field].updateValueAndValidity();\n }\n}\n","
\n\n
\n

Credit Card Info

\n
\n\n
\n
\n
\n {{ getError(CARD_FIELDS.CARD_NUMBER) }}\n
\n
\n\n
\n
\n
\n
\n {{ getError(CARD_FIELDS.CARD_DATE) }}\n
\n
\n
\n
\n
\n {{ getError(CARD_FIELDS.CARD_CVV) }}\n
\n
\n
\n
\n
\n {{ getError(CARD_FIELDS.CARD_POSTAL_CODE) }}\n
\n
\n
\n\n
\n \n Cardholder's Name\n \n Should be less than 100 characters\n Field is required\n Invalid input\n \n
\n\n
\n \n E-mail\n \n Field is required\n Email is not valid\n \n
\n\n
\n
\n This charge and the associated service fee are being processed by Motor Vehicle Software Corporation and will appear on your cardholder statement as two separate charges:\n
MVD Fee - {{ agencyFeeDescriptor }} 406-285-8250 MT.\n
Service Fee - {{ serviceFeeDescriptor }} 406-285-8250 MT\n
\n
\n An additional service fee of 2.3% will be added to express checkout and card payments. A $0.25 service fee will be added for check payments.\n
\n
\n\n
\n \n I have read and accept the Terms and Conditions, Privacy Policy, MVD Fee and Service Fee.\n \n
\n\n
\n","import clone from \"ramda/es/clone\";\nimport { AfterViewInit, Component, EventEmitter, Input, Output, ViewChild } from \"@angular/core\";\nimport { ControlContainer, UntypedFormGroup, NgForm, NgModelGroup } from \"@angular/forms\";\nimport { StateCodeModel } from \"Portal/models/state-code-model\";\nimport { debounceTime, distinctUntilChanged } from \"rxjs/operators\";\nimport { ECheckRecord } from \"src/app/storage/ecom/ecom.state\";\n\n@Component({\n selector: \"echeck-form\",\n templateUrl: \"./echeck-form.component.html\",\n styleUrls: [\"./echeck-form.component.scss\"],\n viewProviders: [{ provide: ControlContainer, useExisting: NgForm }]\n})\nexport class ECheckFormComponent implements AfterViewInit {\n\n @Input() stateCodes: StateCodeModel[];\n\n @Input() set record(value: ECheckRecord) { this.innerRecord = clone(value); }\n @Output() recordChange = new EventEmitter();\n\n @ViewChild(\"eCheckGroup\") eCheckGroup: NgModelGroup;\n\n innerRecord: ECheckRecord;\n currentDate = new Date();\n\n maskConfig = {\n mask: \"(#00) 000-0000\",\n definitions: {\n \"#\": /[2-9]/\n }\n } as any;\n\n ngAfterViewInit(): void {\n\n setTimeout(() => {\n\n this.eCheckGroup.control.validator = (formGroup: UntypedFormGroup) => {\n const accNumber = formGroup.controls[\"accountNumber\"];\n const accNumberConfirm = formGroup.controls[\"accountNumberConfirmation\"];\n const accept = formGroup.controls[\"accept\"];\n\n if (!accNumber || !accNumberConfirm) {\n return null;\n }\n\n if (accNumberConfirm.errors && !accNumberConfirm.errors.mismatch) {\n return null;\n }\n\n accNumberConfirm.setErrors(\n accNumber.value !== accNumberConfirm.value\n ? { mismatch: true }\n : null\n );\n\n accept.setErrors(\n !accept.value ? { termsNotAccepted: true } : null\n );\n };\n\n this.eCheckGroup.valueChanges.pipe(\n distinctUntilChanged(),\n debounceTime(300)\n )\n .subscribe(i => this.recordChange.emit(i));\n });\n\n }\n}\n","
\n\n
\n
\n 1\n

Check Info

\n
\n\n
\n \n Personal\n Business\n \n\n
\n \"Check\n\n \"Check\n
\n
\n\n
\n \n Routing Number\n \n Should be 9 digits\n Field is required\n \n
\n\n
\n \n Account Number\n \n Should be 4-19 digits\n Field is required\n \n
\n\n
\n \n Confirm Account Number\n \n Account Number and Confirm Account Number should match\n Should be 4-19 digits\n \n
\n
\n\n
\n
\n 2\n

Customer Info

\n
\n\n \n\n
\n \n First Name\n \n Should be less than 30 characters\n Field is required\n \n\n \n Last Name\n \n Should be less than 30 characters\n Field is required\n \n
\n\n
\n \n State Issued ID or Driver License\n \n Should be less than 35 characters\n Field is required\n \n\n \n Issuing State\n \n \n {{ state.stateName }}\n \n \n Field is required\n \n
\n\n
\n \n E-mail\n \n Field is required\n Email is not valid\n \n
\n
\n\n \n\n
\n \n Business Name\n \n Should be less than 30 characters\n Field is required\n \n
\n\n
\n \n Federal Employer Identification Number\n \n Should be 9 digits\n Field is required\n \n
\n\n
\n \n E-mail\n \n Field is required\n Email is not valid\n \n
\n
\n
\n\n
\n
\n 3\n

Billing Info

\n
\n\n
\n \n Street Address\n \n Should be less than 50 characters, allowed spaces and #'.,-/\n Field is required\n \n\n \n Apartment, Suite, Unit etc\n \n Should be less than 30 characters, allowed spaces and #'.,-/\n \n
\n\n
\n \n City\n \n Should be less than 30 characters, allowed spaces and hyphens/dashes\n Field is required\n \n\n \n State\n \n \n {{ state.stateName }}\n \n \n Field is required\n \n
\n\n
\n \n Zip\n \n Should be less than 11 characters, allowed spaces and hyphens/dashes\n Field is required\n \n\n \n Phone\n \n Should be 10 digits\n Field is required\n \n
\n
\n\n
\n \n\n \n\n

\n Today, being {{ currentDate | date: \"mediumDate\" }}, by entering the Company's routing and account\n number above and clicking “Pay” as an authorized Company representative, I authorize the\n payment in the amount indicated above to be processed as an electronic funds transfer (EFT) or draft drawn from\n the Company's checking account as indicated above and, if necessary, electronic credits to the\n Company's account to correct erroneous debits. I understand that the processing of the payment will be completed\n within 1 - 2 banking days. If the payment returns unpaid or account not found due to a typo, I authorize you or your service provider to collect the\n payment and the state return item fee and, if applicable, costs, based on the Company's locale that I have provided\n above by EFT(s) or draft(s) drawn from the Company account. I accept these terms, acknowledge these disclosures and\n authorize this payment on behalf of Company and further agree, on Company's behalf, that Company shall be bound by the NACHA\n Rules in effect, both now and as amended from time to time.\n

\n
\n\n \n\n

\n Today, being {{ currentDate | date: \"mediumDate\" }}, I, {{ innerRecord.firstName }} {{\n innerRecord.lastName }}, by entering my routing and account number above and\n clicking “Pay” I authorize my payment in the amount indicated above to be processed as\n an electronic funds transfer (EFT) or draft drawn from my checking account as indicated above\n and, if necessary, to have my account electronically credited to correct erroneous debits. I understand\n that my payment will be processed within 1 - 2 banking days. If the payment returns unpaid\n or account not found due to a typo, I authorize you or your service provider to collect the payment\n and my state's return item fee and,if applicable, costs, by EFT(s) or draft(s) drawn from my account.\n

\n
\n\n
\n An additional service fee of 2.3% will be added to card payments and $0.25 for check payments\n
\n
\n\n\n
\n \n I have read and accept the Terms and Conditions, Privacy Policy, MVD Fee and Service Fee.\n \n
\n
\n","import { Component, EventEmitter, Input, Output } from \"@angular/core\";\nimport { ApplePaySubmitEvent, GooglePaySubmitEvent, PayPalSubmitEvent } from \"@vitupay-public/ng-vitupay\";\nimport { CheckoutSummaryModel } from \"Portal/models/checkout-summary-model\";\nimport { PaymentECheckSubmitModel } from \"Portal/models/payment-echeck-submit-model\";\nimport { CardRecord, ECheckRecord, PayWithCard, SubmittingViewStates, CancelPayment } from \"src/app/storage/ecom/ecom.state\";\n\n@Component({\n selector: \"pay-section\",\n templateUrl: \"./pay-section.component.html\",\n styleUrls: [\"./pay-section.component.scss\"]\n})\nexport class PaySectionComponent {\n\n @Input() summary: CheckoutSummaryModel;\n @Input() submittingViewState: SubmittingViewStates;\n @Input() cardErrorMessage: string;\n @Input() eCheckErrorMessage: string;\n\n @Input() eCheckRecord: ECheckRecord;\n @Output() eCheckRecordChange = new EventEmitter();\n\n @Input() cardRecord: CardRecord;\n @Output() cardRecordChange = new EventEmitter();\n\n @Output() payWithCreditCard = new EventEmitter();\n @Output() payWithECheck = new EventEmitter();\n @Output() payWithPaymentSystems = new EventEmitter();\n @Output() cancelPayment = new EventEmitter();\n\n SubmittingViewStates = SubmittingViewStates;\n}\n","
\n

Confirm order and pay

\n\n \n \n
\n\n
\n
\n
\n
\n
\n
\n
\n
\n
\n Payment Processing\n
\n
\n\n
\n
\n \n Payment Success!!\n

\n Please wait a moment we will redirect you to a confirmation page\n

\n
\n
\n","import { Component, EventEmitter, Input, OnInit, Output, ViewChild } from \"@angular/core\";\nimport { ApplePayElementConfig, ApplePaySubmitEvent, GooglePayElementConfig, GooglePaySubmitEvent, PayPalElementConfig, PayPalInitErrorReason, PayPalOrderProcessIntent, PayPalSubmitEvent } from \"@vitupay-public/ng-vitupay\";\nimport { CheckoutSummaryModel } from \"Portal/models/checkout-summary-model\";\nimport { PaymentECheckSubmitModel } from \"Portal/models/payment-echeck-submit-model\";\nimport { PaymentType } from \"Portal/models/payment-type\";\nimport { PaymentService } from \"Portal/services/payment.service\";\nimport { CancelPayment, CardRecord, ECheckRecord, OperationType, PaymentMethodEnum, PayWithCard } from \"src/app/storage/ecom/ecom.state\";\nimport { CreditCardFormComponent } from \"../credit-card-form/credit-card-form.component\";\nimport { HubConnection, HubConnectionBuilder } from \"@microsoft/signalr\";\n\n@Component({\n selector: \"payment-form\",\n templateUrl: \"./payment-form.component.html\",\n styleUrls: [\"./payment-form.component.scss\"]\n})\nexport class PaymentFormComponent implements OnInit {\n\n @ViewChild(\"creditCardForm\") creditCardForm: CreditCardFormComponent;\n\n @Input() summary: CheckoutSummaryModel;\n @Input() cardErrorMessage: string;\n @Input() eCheckErrorMessage: string;\n\n @Output() payWithCreditCard = new EventEmitter();\n @Output() payWithECheck = new EventEmitter();\n @Output() payWithPaymentSystems = new EventEmitter();\n\n @Input() eCheckRecord: ECheckRecord;\n @Output() eCheckRecordChange = new EventEmitter();\n\n @Input() cardRecord: CardRecord;\n @Output() cardRecordChange = new EventEmitter();\n\n @Output() cancelPayment = new EventEmitter();\n\n PaymentMethodEnum = PaymentMethodEnum;\n paymentMethod: PaymentMethodEnum | null = PaymentMethodEnum.CREDIT_CARD;\n\n amount: number;\n payPalConfig: PayPalElementConfig;\n venmoConfig: PayPalElementConfig;\n applePayConfig: ApplePayElementConfig;\n googlePayConfig: GooglePayElementConfig;\n\n hubConnection: HubConnection;\n\n ngOnInit(): void {\n\n if (this.summary.allowedPaymentTypes.every(i => i != PaymentType.CARD)) {\n this.paymentMethod = PaymentMethodEnum.CHECK;\n }\n\n this.hubConnection = new HubConnectionBuilder()\n .withUrl(`/TransactionHub?trackingNumber=${this.summary.trackingNumber}`)\n .build();\n\n this.hubConnection\n .start();\n\n this.hubConnection.on('expireTransaction', (trackingNumber) => {\n if(this.summary.trackingNumber === trackingNumber) {\n location.href = this.summary.failedRedirectUrl;\n }\n });\n\n this.amount = this.summary.due + this.summary.serviceFeeAmount + this.summary.nsfFeeAmount;\n\n this.googlePayConfig = {\n amount: this.summary.due,\n tid: this.summary.rapidConnectTerminalId,\n processUrl: PaymentService.paymentCreateGooglePayPaymentPath,\n processParams: {\n paymentSource: \"GooglePay\",\n officeId: this.summary.officeId,\n amount: this.summary.due,\n trackingNumber: this.summary.trackingNumber,\n serviceFeeAmount: this.summary.serviceFeeAmount,\n },\n merchant: {\n id: this.summary.googlePayMerchantId,\n name: this.summary.googlePayMerchantName,\n },\n gateway: {\n merchantId: this.summary.googlePayGatewayMerchantId,\n },\n serviceFee: {\n percent: this.summary.serviceFeeRate * 100,\n amount: this.summary.serviceFeeAmount,\n },\n useGooglePayTestEnvironment: !this.summary.isProduction,\n layout: {\n minWidth: 100,\n height: 55,\n paddingLeft: 15,\n paddingRight: 15,\n paddingBottom: 30\n }\n };\n\n this.applePayConfig = {\n amount: this.summary.due,\n tid: this.summary.rapidConnectTerminalId,\n processUrl: PaymentService.paymentProcessApplePayPath,\n processParams: {\n paymentSource: \"ApplePay\",\n officeId: this.summary.officeId,\n amount: this.summary.due,\n trackingNumber: this.summary.trackingNumber,\n serviceFeeAmount: this.summary.serviceFeeAmount,\n },\n merchant: {\n appleId: this.summary.applePayId,\n name: this.summary.googlePayMerchantName,\n validateUrl: PaymentService.paymentValidateApplePayPath,\n },\n serviceFee: {\n percent: this.summary.serviceFeeRate * 100,\n amount: this.summary.serviceFeeAmount,\n },\n layout: {\n minWidth: 100,\n height: 55,\n paddingLeft: 15,\n paddingBottom: 30,\n paddingRight: 15\n }\n };\n\n this.payPalConfig = {\n isProduction: this.summary.isProduction,\n payPalFundingSource: \"PAYPAL\",\n createOrderUrl: PaymentService.paymentCreatePayPalOrderPath,\n createOrderParams: {\n paymentSource: \"PAYPAL\",\n officeId: this.summary.officeId,\n amount: this.summary.due,\n trackingNumber: this.summary.trackingNumber,\n serviceFeeAmount: this.summary.serviceFeeAmount,\n },\n captureOrderUrl: PaymentService.paymentCapturePayPalOrderPath,\n captureOrderParams: { trackingNumber: this.summary.trackingNumber },\n processOrderUrl: PaymentService.paymentCapturePayPalOrderPath,\n intent: PayPalOrderProcessIntent.Capture,\n layout: {\n minWidth: 100,\n height: 55,\n paddingLeft: 15,\n paddingRight: 15,\n paddingBottom: 30\n }\n };\n\n this.venmoConfig = {\n isProduction: this.summary.isProduction,\n payPalFundingSource: \"VENMO\",\n createOrderUrl: PaymentService.paymentCreatePayPalOrderPath,\n createOrderParams: {\n paymentSource: \"VENMO\",\n officeId: this.summary.officeId,\n amount: this.summary.due,\n trackingNumber: this.summary.trackingNumber,\n serviceFeeAmount: this.summary.serviceFeeAmount\n },\n captureOrderUrl: PaymentService.paymentCapturePayPalOrderPath,\n captureOrderParams: { trackingNumber: this.summary.trackingNumber },\n processOrderUrl: PaymentService.paymentCapturePayPalOrderPath,\n intent: PayPalOrderProcessIntent.Capture,\n layout: {\n minWidth: 100,\n height: 55,\n paddingLeft: 15,\n paddingRight: 15,\n paddingBottom: 30\n }\n };\n }\n\n cardAndCheckAvailable() {\n\n const cardPresent = this.summary.allowedPaymentTypes.some(i => i == PaymentType.CARD);\n const checkPresent = this.summary.allowedPaymentTypes.some(i => i == PaymentType.CHECK);\n\n return cardPresent && checkPresent;\n }\n\n applePayAvailable() {\n\n return this.summary.allowedPaymentTypes.includes(\"ApplePay\");\n }\n\n googlePayAvailable() {\n\n return this.summary.allowedPaymentTypes.includes(\"GooglePay\")\n && this.summary.rapidConnectTerminalId\n && this.summary.googlePayGatewayMerchantId\n && this.summary.googlePayMerchantId\n && this.summary.googlePayMerchantName;\n }\n\n payPalAvailable() {\n\n return this.summary.allowedPaymentTypes.includes(\"PayPal\");\n }\n\n onError(error: string): void {\n\n if (error !== PayPalInitErrorReason.FundingSourceNotEligible) {\n\n setTimeout(() => location.href = this.summary.failedRedirectUrl, 3000);\n }\n }\n\n async cancelPay(): Promise {\n await this.cancelPayment.emit({ trackingNumber: this.summary.trackingNumber });\n location.href = this.summary.failedRedirectUrl;\n }\n\n async payCreditCard(): Promise {\n\n this.payWithCreditCard.emit({ operation: OperationType.StartPayment });\n\n const result = await this.creditCardForm.getTokenData();\n\n const payload: PayWithCard = \"error\" in result\n ? { operation: OperationType.PaymentError, timeout: result.error == \"generationError\" }\n : { operation: OperationType.CheckoutPayment, cardData: result };\n\n this.payWithCreditCard.emit(payload);\n }\n\n payECheck(): void {\n\n this.payWithECheck.emit();\n }\n}\n","
\n\n
\n\n \n\n

Payment Method

\n\n
\n
\n

Credit Card or Check

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

Express Checkout

\n
\n\n
\n \n \n \n\n \n \n \n\n \n \n\n \n \n
\n
\n\n \n \n \n\n \n \n \n\n \n \n \n\n \n \n \n\n
\n \n\n \n\n \n
\n
\n\n \n \n
\n","import { Component, Input } from \"@angular/core\";\nimport { CheckoutSummaryModel } from \"Portal/models/checkout-summary-model\";\nimport { PaymentMethodEnum } from \"src/app/storage/ecom/ecom.state\";\n\n@Component({\n selector: \"summary\",\n templateUrl: \"./summary.component.html\",\n styleUrls: [\"./summary.component.scss\"]\n})\nexport class SummaryComponent {\n\n @Input() summary: CheckoutSummaryModel | null = null;\n @Input() paymentMethod: PaymentMethodEnum | null = null;\n\n PaymentMethodEnum = PaymentMethodEnum;\n}\n","
\n
\n

Summary Info

\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
Transaction # {{ summary.transactionNumber }} {{ summary.due | currency }}
NSF Fee: {{ summary.nsfFeeAmount | currency }}
{{ paymentMethod == PaymentMethodEnum.CREDIT_CARD ? 'Service Fee 2.3%' : 'Service Fee' }}: {{ (paymentMethod == PaymentMethodEnum.CREDIT_CARD ? summary.serviceFeeAmount : summary.echeckFlatServiceFee) | currency }}
Total Amount{{ (paymentMethod == PaymentMethodEnum.CREDIT_CARD\n ? (summary.due + summary.serviceFeeAmount + summary.nsfFeeAmount)\n : (summary.due + summary.echeckFlatServiceFee + summary.nsfFeeAmount)\n ) | currency }}
\n
\n
\n An additional service fee of 2.3% will be added to express checkout and card payments. A $0.25 service fee will be added for check payments.\n
\n
\n","import { Component, OnInit } from \"@angular/core\";\nimport { Title } from \"@angular/platform-browser\";\nimport { Store } from \"@ngrx/store\";\nimport * as EcomActions from \"../../../storage/ecom/ecom.actions\";\nimport * as EcomSelectors from \"../../../storage/ecom/ecom.selectors\";\nimport { CardRecord, CloverScriptStatus, ECheckRecord, PayWithCard, ViewStates } from \"../../../storage/ecom/ecom.state\";\nimport { IStore } from \"../../../storage/store\";\nimport { environment } from \"../../../../environments/environment\";\nimport { ApplePaySubmitEvent, GooglePaySubmitEvent, PayPalSubmitEvent } from \"@vitupay-public/ng-vitupay\";\n\n\n@Component({\n selector: \"app-payment-page\",\n templateUrl: \"./payment-page.component.html\",\n styleUrls: [\"./payment-page.component.scss\"]\n})\nexport class PaymentPageComponent implements OnInit {\n\n summary$ = this.store.select(EcomSelectors.selectSummary);\n eCheckErrorMessage$ = this.store.select(EcomSelectors.selectECheckErrorMessage);\n cardErrorMessage$ = this.store.select(EcomSelectors.selectCardErrorMessage);\n submittingViewState$ = this.store.select(EcomSelectors.selectSubmittingViewState);\n viewState$ = this.store.select(EcomSelectors.selectViewState);\n eCheckRecord$ = this.store.select(EcomSelectors.selectECheckRecordState);\n cardRecord$ = this.store.select(EcomSelectors.selectCardRecordState);\n cloverSdkStatus$ = this.store.select(EcomSelectors.selectCloverSdkStatus);\n\n ViewStates = ViewStates;\n CloverScriptStatus = CloverScriptStatus;\n\n constructor(\n private store: Store,\n private title: Title,\n ) {}\n\n ngOnInit(): void {\n\n this.title.setTitle(`Payment - ${environment.appName}`);\n this.store.dispatch(EcomActions.InitializeEcomAction());\n }\n\n payWithCreditCard(data: PayWithCard): void {\n\n this.store.dispatch(EcomActions.PayWithCreditCardAction({ data }));\n }\n\n payWithECheck(): void {\n\n this.store.dispatch(EcomActions.PayWithECheckAction());\n }\n\n payWithPaymentSystems(data: PayPalSubmitEvent | ApplePaySubmitEvent | GooglePaySubmitEvent): void {\n\n this.store.dispatch(EcomActions.PayWithPaymentSystems({ data }));\n }\n\n cardRecordChange(cardRecord: CardRecord): void {\n\n this.store.dispatch(EcomActions.CardRecordChangeAction({ cardRecord }));\n }\n\n eCheckRecordChange(eCheckRecord: ECheckRecord): void {\n\n this.store.dispatch(EcomActions.ECheckRecordChangeAction({ eCheckRecord }));\n }\n\n cancelPayment(trackingNumber: string): void{\n \n this.store.dispatch(EcomActions.CancelPaymentAction({trackingNumber}));\n }\n}\n","\n\n\n\n\n \n \n\n\n\n
\n
\n \n \n \n \n Failed to load Clover SDK.
\n If the problem persists, please contact customer support\n
\n
\n
\n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n Loading ...\n
\n
\n
\n
\n
\n\n\n
\n

Not Allowed

\n

Sorry, you don't have an active session or it has expired. Please go back to the Montana website to start the payment process again.

\n
\n
\n","import { Component } from \"@angular/core\";\n\n@Component({\n templateUrl: \"./risk-declined.component.html\",\n styleUrls: [\"./risk-declined.component.scss\"]\n})\nexport class RiskDeclinedComponent {}\n","

\n Error\n

\n\n
\n

\n We are sorry that we cannot complete your transaction. Our decision was based, in part, on information provided by TeleCheck.\n

\n

\n What is TeleCheck?\n

\n

\n TeleCheck provides payment acceptance, account screening, and fraud prevention\n services to both merchants and financial institutions by reporting on check writing histories. Please visit\n Get Assistance with Telecheck Services to learn more about TeleCheck.\n

\n

\n Why does TeleCheck need personal information about you before we can assist you? The use of some\n types of personal information, including bank account details and/or a driver’s license number, is needed to verify\n TeleCheck is communicating with the right person about the right records. TeleCheck may even request a social\n security number in order to locate and verify records reported by a bank or credit union. To a consumer worried\n about identity theft, this may seem like a lot to ask. However, TeleCheck only requests what is needed to ensure the\n accuracy of data.\n

\n

\n You may have received a decline because of unpaid debt associated with your checking account.\n TeleCheck will issue a decline alert if it has at least one record in its files of unpaid debt associated with your\n bank account and/or personal information. This type of a decline code is referred to as a “Code 4”. We encourage you\n to contact TeleCheck to learn more details about the information in its records and what you can do to resolve any\n issues related to your receipt of a Code 4 decline.\n

\n

\n You may have received a risk-based decline. TeleCheck analyzes transactions to determine whether\n they appear to be potentially high risk to protect consumers, merchants, and financial institutions from fraud and\n losses. How did TeleCheck determine this “potential risk?” Through the use of modeling tools built on the detection\n of common characteristic groupings observed in past transactions, TeleCheck statistically determines the likelihood\n that a payment may return. So, while there may have been nothing wrong with your transaction, it had certain\n characteristics that made TeleCheck question it. Receiving a risk decline does not signify to you -- or anyone else\n -- that TeleCheck holds records of bad check writing history on you. And, it does not mean you do not have enough\n money in the bank to cover your payment. TeleCheck has no visibility into your bank account balance. And finally, it\n has absolutely no effect on your credit. These risk models provide critical protection against fraud. A Code 3 is\n often the first alert a consumer receives that their account has been fraudulently compromised. Risk modeling also\n enables merchants to continue to safely accept their customers’ checks by minimizing fraud-related losses, and\n controlled loss brings cost benefits to customers.\n

\n

\n To learn more: You may call or write TeleCheck for further information. You will need to provide\n (1) the declined transaction’s record number (if provided), (2) your driver’s license number and its state of\n issuance (3) if applicable, the bank routing and account number you used for the declined transaction, and (4) your\n social security number (if the declined transaction was with a financial institution)\n

\n\n
\n

\n Contact information:\n

\n
TeleCheck Services, Inc.
\n
ATTN: Resolutions Department
\n
P. O. Box 6806
\n
Hagerstown, MD 21741-6806
\n
Tel: 1-800-366-2425
\n \n
\n\n
\n \n
\n
\n","import { Component, OnInit } from \"@angular/core\";\nimport { Title } from \"@angular/platform-browser\";\nimport { environment } from \"../../../environments/environment\";\n\n@Component({\n selector: \"app-privacy-policy-page\",\n templateUrl: \"./privacy-policy-page.component.html\",\n styleUrls: [\"./privacy-policy-page.component.scss\"]\n})\nexport class PrivacyPolicyPageComponent implements OnInit {\n\n constructor(\n private title: Title,\n ) {}\n\n ngOnInit(): void {\n\n this.title.setTitle(`Privacy Policy - ${environment.appName}`);\n }\n}\n","
\n

Privacy Policy for VituPay MT

\n

Effective Date: September 10, 2021

\n\n

\n This “Privacy Policy” explains how Vitu Payment Services, LLC (“Company” or “we”) collects, uses, discloses, and otherwise processes personal data on behalf of our customers\n – typically, merchants (any, a “Merchant”) – in connection with our application, VituPay MT, which runs on the Clover Point of Sale system (“Clover POS”).\n This Privacy Policy does not apply to Company’s privacy practices in any other context.\n

\n

\n Company’s processing of personal data in connection with our application is governed by this Privacy Policy and our agreements with Merchants.\n In the event of any conflict between this Privacy Policy and a customer agreement, the customer agreement will control to the extent permitted by applicable law.\n

\n

This Privacy Policy is not a substitute for any privacy policy that a Merchant may be required to provide to their customers, personnel, or other individuals.

\n\n

Information We Collect

\n\n

\n We may collect personal data from or on behalf of Merchants.\n Merchants determine the scope of the personal data transferred to us or that we collect, and the information we receive may vary by Merchant.\n Typically, the information we collect on behalf of Merchants includes:\n

\n\n

Information that we collect when a Merchant’s customers make a payment

\n\n

\n When a customer makes a payment via a Clover POS, we collect information about the transaction, which may include personal data.\n Information about transactions includes the payment card used, name associated with the payment card, the location of the merchant’s store,\n date and time of the transaction, transaction amount, and information about the goods or services purchased in the transaction.\n

\n\n

Additional information Merchants’ customers provide through the Clover POS ancillary to a payment

\n

We may collect additional information ancillary to the payment. This information may include:

\n
    \n
  • \n

    Customers’ email address or phone number, such as when the customer chooses to receive an electronic receipt

    \n
  • \n
  • \n

    Customers’ marketing preferences, such as whether the customer wishes to receive marketing communications or newsletters

    \n
  • \n
  • \n

    Information about participating customers’ activity in a merchant loyalty program

    \n
  • \n
  • \n

    Customers’ physical address, where needed for delivery of goods or services

    \n
  • \n
  • \n

    Other information the customer provides, such as birthdate, interests or preferences, reviews, and feedback

    \n
  • \n
\n\n

Information that we collect about Merchants’ personnel

\n

We may collect information about Merchants’ personnel and interactions with the Clover POS, such as clock-in and clock-out time.

\n\n

Additional information that Merchants provide to us about their customers or personnel

\n

\n Merchants may provide us with additional information directly, via access they grant to us, or otherwise.\n The types of information that merchants may provide to us about their customers include email addresses, phone numbers,\n and Montana Motor Vehicle Division transaction fees. The types of information that merchants may provide to us about\n their personnel include email addresses, phone numbers, shifts, and sales history.\n

\n\n

How We Use the Information We Collect

\n

We use the personal data we collect for or on behalf of Merchants, to provide our services and the functionality of our application:

\n

We may also use personal data for related internal purposes, including:

\n
    \n
  • \n

    To provide information about the application, such as important updates or changes to the application and security alerts

    \n
  • \n
  • \n

    To measure performance of and improve the application

    \n
  • \n
  • \n

    To respond to inquiries, complaints, and requests for customer support

    \n
  • \n
\n

\n In addition, Company may use personal data as we believe necessary or appropriate to\n (a) comply with applicable laws and lawful requests and legal processes, such as to respond to subpoenas or requests from government authorities;\n (b) enforce the terms and conditions that govern our application;\n (c) protect our rights, privacy, safety or property, and/or that of you or others; and\n (d) protect, investigate and deter against fraudulent, harmful, unauthorized, unethical or illegal activity.\n

\n\n

How We Share Information

\n

We may share personal data that we collect with:

\n
    \n
  • \n

    The Merchant from whom or on whose behalf we collected the personal data

    \n
  • \n
  • \n

    The platform on which our application runs, the Clover POS. You may view Clover’s Privacy Notice here.

    \n
  • \n
  • \n

    With third parties as a Merchant may direct

    \n
  • \n
  • \n

    With third party service providers that help us manage and improve the application

    \n
  • \n
  • \n

    With Company subsidiaries and corporate affiliates for the purposes described in this Privacy Policy or in our agreement with a Merchant

    \n
  • \n
\n\n

\n Company may disclose personal data to government or law enforcement officials or private parties as required by law,\n and disclose and use such information as we believe necessary or appropriate to\n (a) comply with applicable laws and lawful requests and legal processes, such as to respond to subpoenas or requests from government authorities;\n (b) enforce the terms and conditions that govern our application;\n (c) protect our rights, privacy, safety or property, and/or that of you or others; and\n (d) protect, investigate and deter against fraudulent, harmful, unauthorized, unethical or illegal activity.\n

\n

\n Company may sell or transfer some or all of its business or assets, including your personal data,\n in connection with a business transaction (or potential business transaction) such as a merger,\n consolidation, acquisition, reorganization or sale of assets or in the event of bankruptcy,\n in which case we will make reasonable efforts to require the recipient to honor this Privacy Policy.\n

\n\n

Your Rights and Choices

\n\n

Data Subject Rights

\n

\n To the extent that applicable law provides individuals with rights pertaining to their personal information,\n such as to review and request changes to their personal information, individuals should contact the Merchant\n with any requests pertaining to the Merchant’s use of our application. To the extent that Clover is responsible\n for responding to data subject rights requests under applicable law, individuals may contact Clover with\n applicable requests as explained in Clover’s Privacy Notice, https://www.clover.com/privacy-policy.\n Company will assist a Merchant, or Clover, as applicable, in responding to such requests subject to our contract with a Merchant or Clover.\n

\n\n

Complaints

\n

If you have a complaint about our handling of personal data, you may contact us via the contact information provided below.

\n\n

Updates

\n

We reserve the right to modify this Privacy Policy at any time. We will notify you of updates by updating the date of this Privacy Policy.

\n\n

Contact Us

\n

You may contact us with any questions, comments, or complaints, about this Privacy Policy or our privacy practices via:

\n

\n Vitu
\n 40 West 14th St Suite 4B
\n Helena, MT 59601
\n 406-285-8280
\n mtsupport@vitu.com\n

\n\n

Additional Information for Merchants Located in Europe

\n\n

Controller

\n

\n Company is a data processor acting for and on behalf of the Merchant that has installed our application on their Clover POS.\n That Merchant is the controller of personal data that we process on its behalf.\n Clover is also a controller of personal data in some circumstances.\n Clover’s Privacy Notice is available at https://www.clover.com/privacy-policy.\n

\n\n

Legal Basis for Processing

\n

\n Company processes personal data as directed or permitted by the Merchant that uses our application.\n The Merchant is responsible for establishing a legal basis for our processing of personal data for or on behalf of the Merchant.\n

\n\n

Cross Border Data Transfer

\n

\n When we transfer personal data outside of Europe (or the UK) to countries not deemed by the European Commission\n to provide an adequate level of protection for personal data, we make the transfer pursuant to one of the following transfer mechanisms:\n

\n
    \n
  • \n

    A contract approved by the European Commission (sometimes called “Model Clauses” or “Standard Contractual Clauses”);

    \n
  • \n
  • \n

    The recipient’s Binding Corporate Rules;

    \n
  • \n
  • \n

    The consent of the individual to whom the personal data relates; or

    \n
  • \n
  • \n

    Other mechanisms or legal grounds as may be permitted under applicable European law.

    \n
  • \n
\n

You may contact us with questions about our transfer mechanism.

\n\n

Data Retention

\n

\n Subject to our agreement with a Merchant, Company retains personal data for as long as necessary to\n (a) provide our products and services;\n (b) comply with legal obligations;\n (c) resolve disputes; and\n (d) enforce the terms of any agreement we may have with a Merchant.\n You may contact us for additional information about our data retention practices in connection with the application.\n

\n\n

Data Subject Rights

\n

\n Under certain circumstances, data subjects in Europe and the UK have certain rights relating to their personal data,\n which include the rights to request from the Controller\n (a) access to the data subject’s personal data;\n (b) correction of incomplete or inaccurate personal data;\n (c) erasure of personal data;\n (d) restriction of processing concerning the data subject; and\n (e) that the controller provide a copy of the data subject’s personal data that the data subject provided\n to the controller in a structured, commonly used and machine-readable format.\n Data subjects may also object to a controller’s processing of personal data under certain circumstances.\n Where processing is based on a data subject’s consent, the data subject has the right to withdraw consent at any time;\n however, the withdrawal of consent will not affect the lawfulness of processing based on consent before its withdrawal.\n Data subjects may also file a complaint with a supervisory authority.\n You may view contact information for supervisory authorities at https://edpb.europa.eu/about-edpb/board/members_en.\n Data subjects in Europe or the UK should direct any rights request to the appropriate Controller.\n

\n\n

Your California privacy rights

\n

As a California resident, you have the rights listed below. However, these rights are not absolute, and we may decline your request as permitted by the CCPA.

\n
    \n
  • \n

    \n Information.\n You can request the following information about how we have collected and used your Personal Information during the past 12 months:\n

    \n
      \n
    • The categories of Personal Information that we have collected.
    • \n
    • The categories of sources from which we collected Personal Information.
    • \n
    • The business or commercial purpose for collecting and/or selling Personal Information.
    • \n
    • The categories of third parties with whom we share Personal Information.
    • \n
    • Whether we have disclosed your Personal Information for a business purpose, and if so, the categories of Personal Information received by each category of recipient.
    • \n
    • Whether we’ve sold your Personal Information; and, if so, the categories of Personal Information received by each category of recipient.
    • \n
    \n
  • \n
  • \n

    \n Access.\n You can request a copy of the Personal Information that we maintain about you.\n

    \n
  • \n
  • \n

    \n Deletion.\n You can ask us to delete the Personal Information that we maintain about you.\n

    \n
  • \n
  • \n

    \n Nondiscrimination.\n You are entitled to exercise the rights described above free from discrimination.\n This means that we will not penalize you for exercising your rights by taking actions such as by denying you goods or services,\n increasing the price/rate of goods or services, decreasing the service quality, or suggesting that we may\n penalize you as described above for exercising your rights.\n However, the CCPA allows us to charge you a different price or provide a different service quality\n if that difference is reasonably related to the value of the Personal Information we are unable to use.\n

    \n
  • \n
\n\n

How to exercise your rights

\n

You may exercise your California privacy rights as follows:

\n\n

Right to information, access and deletion

\n

You can request to exercise your information, access and deletion rights in the following ways:

\n
    \n
  • \n

    Email privacy@vitu.com

    \n
  • \n
  • \n

    Call 1-844-848-8468

    \n
  • \n
  • \n

    \n Identity verification.\n The CCPA requires us to verify the identity of the individual submitting the request before providing a substantive response to the request.\n A request must be provided with sufficient detail to allow us to understand, evaluate and respond.\n The requester must provide sufficient information to allow us to reasonably verify that the individual is the person about whom we collected information.\n A request may also be made on behalf of your child under 13.\n

    \n
  • \n
  • \n

    \n Authorized agents.\n California residents can empower an “authorized agent” to submit requests on their behalf.\n We may require the authorized agent to have a written authorization confirming that authority.\n

    \n
  • \n
\n\n

Sale of personal information

\n

We do not sell, as defined under CCPA, your Personal Information to third parties.

\n

In the preceding twelve (12) months, we have not sold any personal information.

\n\n

Personal information that we collect, use and share

\n\n

\n The chart below summarizes our collection, use and sharing of Personal Information during the last 12 months before the effective date of this Privacy Policy.\n We describe the sources through which we collect your Personal Information in section above titled The Personal Data We Collect,\n and describe the purposes for which we collect, use, sell and share this information in section above titled How We Use Your Personal Data and The Parties With Whom We Share Your Personal Data.\n

\n\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
Category (see the glossary below for definitions)Do we collect this information?Do we share this information for business purposes?
IdentifiersYesYes
Online IdentifiersYesNo
Protected Classification CharacteristicsNon/a
Commercial InformationYesYes
Biometric InformationNon/a
Internet or Network InformationYesNo
Geolocation DataNon/a
Sensory InformationNon/a
Professional or Employment InformationNon/a
Education InformationNon/a
InferencesNon/a
Financial InformationYesNo
Medical InformationNon/a
\n
\n\n

Glossary

\n\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
CategoryDefinition
Categories of Personal InformationDate Elements within the Category
Biometric Information\n An individual’s physiological, biological or behavioral characteristics, including DNA, that can be used,\n singly or in combination with each other or with other identifying data, to establish an individual’s identity.\n Biometric information includes, but is not limited to, imagery of the iris, retina, fingerprint, face, hand,\n palm, vein patterns, and voice recordings, from which an identifier template, such as a face print, a minutiae template,\n or a voiceprint, can be extracted, and keystroke patterns or rhythms, gait patterns or rhythms,\n and sleep, health, or exercise data that contain identifying information.\n
Transaction HistoryProducts or services purchased, obtained, or considered, or other purchasing or consuming histories or tendencies.
Financial InformationBank account number, debit or credit card numbers, insurance policy number, and other financial information.
Geolocation DataPrecise location, e.g., derived from GPS coordinates or telemetry data.
IdentifiersReal name, alias, postal address, unique personal identifier, customer number, email address, account name other similar identifiers.
Government-issued IDSocial security number, driver’s license, passport, or other government-issued ID, including an ID number or image.
Medical InformationPersonal information about an individual’s health or healthcare, including health insurance information.
Internet or Network InformationBrowsing history, search history, and information regarding a consumer’s interaction with an Internet website, application, or advertisement.
Online Identifiers\n An online identifier or other persistent identifier that can be used to recognize a person, family or device,\n over time and across different services, including but not limited to, a device identifier;\n an Internet Protocol address; cookies, beacons, pixel tags, mobile ad identifiers, or similar technology;\n customer number, unique pseudonym, or user alias; telephone numbers, or other forms of persistent or probabilistic identifiers\n (i.e., the identification of a person or a device to a degree of certainty of more probable than not)\n that can be used to identify a particular person or device.\n
Physical DescriptionAn individual’s physical characteristics or description (e.g., hair color, eye color, height, weight).
Professional or Employment Information\n Information relating to a person's current, past or prospective employment or professional experience\n (e.g., job history, performance evaluations), and educational background.\n
Protected Classification Characteristics\n Age (40 years or older), race, color, ancestry, national origin, citizenship, religion or creed, marital status, medical condition,\n physical or mental disability, sex (including gender, gender identity, gender expression, pregnancy or childbirth and related medical conditions),\n sexual orientation, veteran or military status, genetic information (including familial genetic information).\n
Sensory InformationAudio, electronic, visual, thermal, olfactory, or similar information.
\n
\n\n

\n Vitu
\n 40 West 14th St Suite 4B
\n Helena, MT 59601
\n 406-285-8280
\n mtsupport@vitu.com\n

\n
 
\n\n
\n","import { Component, OnInit } from \"@angular/core\";\nimport { ActivatedRoute } from \"@angular/router\";\nimport { Store } from \"@ngrx/store\";\nimport * as ReceiptActions from \"src/app/storage/receipt/receipt.actions\";\nimport { selectReceiptState } from \"src/app/storage/receipt/receipt.selectors\";\nimport { ViewState } from \"src/app/storage/receipt/receipt.state\";\nimport { IStore } from \"src/app/storage/store\";\n\n@Component({\n selector: \"receipt\",\n templateUrl: \"./receipt.component.html\",\n styleUrls: [\"./receipt.component.scss\"]\n})\nexport class ReceiptComponent implements OnInit {\n\n receiptState$ = this.store.select(selectReceiptState);\n\n constructor(\n private store: Store,\n private activatedRoute: ActivatedRoute,\n ) {}\n\n trackingNumber: string;\n ViewState = ViewState;\n\n ngOnInit(): void {\n\n this.trackingNumber = this.activatedRoute.snapshot.params?.id;\n this.store.dispatch(ReceiptActions.InitializeReceiptAction({ trackingNumber: this.trackingNumber }));\n }\n\n printReceipt(): void {\n window.print();\n }\n\n sendReceiptEmail(): void {\n\n this.store.dispatch(ReceiptActions.SendReceiptEmailAction({ trackingNumber: this.trackingNumber }));\n }\n\n}\n","\n\n
\n
\n\n \n \n
\n
\n\n\n \n

loading

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

Payment Information

\n
\n
\n
\n
\n Payment Type\n
\n
\n
\n
\n Type\n
\n
\n
\n
\n Account Number\n
\n
\n
\n
\n Name on Account\n
\n
\n
\n
\n
\n
\n {{ receiptState.receipt?.cardEntryType || '-' }}\n
\n
\n
\n
\n {{ receiptState.receipt?.cardType || '-' }}\n
\n
\n
\n
\n **** **** **** {{ receiptState.receipt?.cardLast4 || '****' }}\n
\n
\n
\n
\n {{ receiptState.receipt?.accountHolderName || '-' }}\n
\n
\n
\n
\n
\n\n
\n

Receipt

\n

Please print this page for your records.

\n\n
\n
\n \n \n \n \n \n \n \n \n \n
\n Transaction Date:\n \n {{ receiptState.receipt?.transactionCreatedDate | date }}\n
\n Transaction ID:\n \n {{ receiptState.receipt?.transactionId }}\n
\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n Agency Fee:\n \n {{ receiptState.receipt?.agencyFee | currency }}\n
\n Agency Fee Auth:\n \n {{ receiptState.receipt?.agencyFeeAuth || '-' }}\n
\n Agency Fee Description:\n \n {{ receiptState.receipt?.agencyFeeDescriptor || '-' }}\n
\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n NSF Fee:\n \n {{ receiptState.receipt?.nsfFee | currency }}\n
\n NSF Fee Auth:\n \n {{ receiptState.receipt?.nsfFeeAuth || '-' }}\n
\n NSF Fee Description:\n \n {{ receiptState.receipt?.nsfFeeDescriptor || '-' }}\n
\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n Service Fee:\n \n {{ receiptState.receipt?.serviceFee | currency }}\n
\n Service Fee Auth:\n \n {{ receiptState.receipt?.serviceFeeAuth }}\n
\n Service Fee Description:\n \n {{ receiptState.receipt?.serviceFeeDescriptor }}\n
\n\n \n \n \n \n \n \n \n
\n Total Amount:\n \n {{ receiptState.receipt?.totalAmount | currency }}\n
\n
\n\n
\n \n\n \n
\n
\n
\n
\n
\n
\n\n\n","import { Component, EventEmitter, Input, Output } from \"@angular/core\";\nimport { PaymentSelectionModel } from \"Portal/models/payment-selection-model\";\n\n@Component({\n selector: \"retail-clover\",\n templateUrl: \"./clover.component.html\",\n styleUrls: [\"./clover.component.scss\"]\n})\nexport class CloverComponent {\n\n @Input() summary: PaymentSelectionModel;\n @Output() payClover = new EventEmitter();\n\n}\n","
\n
\n
\n \n \n
\n Card Present\n \"Card\n
\n\n
\n
\n
\n
\n Amount\n
\n
\n
\n
\n Service Fee\n
\n
\n
\n
\n Payment Type\n
\n
\n
\n
\n
\n
\n {{ summary.total | currency }}\n
\n
\n
\n
\n {{ summary.serviceFeeAmount | currency }}\n
\n
\n
\n
\n Retail\n
\n
\n
\n
\n\n
\n \n
\n
\n","export const CLOVER_STYLES = {\n html: {\n height: \"auto\"\n },\n body: {\n \"padding-top\": \"6px\"\n },\n input: {\n \"box-sizing\": \"border-box\",\n \"caret-color\": \"#4FC8EC\",\n all: \"unset\",\n \"background-color\": \"#fff\",\n \"border-radius\": \"4px\",\n color: \"#000\",\n \"font-family\": \"Roboto, sans-serif\",\n \"font-size\": \"16px\",\n \"font-weight\": \"400\",\n \"line-height\": \"1.5\",\n height: \"60px\",\n width: \"100%\",\n border: \"1px solid #E0E0E0\",\n padding: \"0 10px\"\n },\n \"input:hover\": {\n \"border-color\": \"#000\",\n \"border-width\": \"2px\",\n padding: \"0 9px\"\n },\n \"input:focus\": {\n \"border-color\": \"#4FC8EC\",\n \"border-width\": \"2px\",\n color: \"#000\",\n outline: \"0\",\n padding: \"0 9px\"\n },\n \"input::placeholder\": {\n color: \"transparent\"\n },\n label: {\n \"background-color\": \"#fff\",\n color: \"rgba(0, 0, 0, 0.6)\",\n \"font-family\": \"'HCo Gotham SSm', Roboto, sans-serif\",\n \"font-size\": \"12px\",\n \"font-stretch\": \"100%\",\n display: \"block\",\n position: \"absolute\",\n left: \"5px\",\n top: \"1px\",\n padding: \"0 5px\"\n },\n \".brand\": {\n top: \"21px\",\n right: \"15px\"\n }\n};\n","import { AfterViewInit, Component, EventEmitter, Inject, Input, OnChanges, OnDestroy, OnInit, Output, SimpleChanges } from \"@angular/core\";\nimport { CardRecord, CARD_FIELDS, CloverTokenResponse, CloverValidationError } from \"src/app/storage/retail/retail.state\";\nimport { CLOVER_STYLES } from \"./clover-styles\";\nimport { AbstractControl, UntypedFormBuilder, NgForm, ValidatorFn, Validators } from \"@angular/forms\";\nimport { DOCUMENT } from \"@angular/common\";\nimport isEmpty from \"ramda/es/isEmpty\";\n\ndeclare const Clover: any;\n\n@Component({\n selector: \"retail-credit-card-form\",\n templateUrl: \"./credit-card-form.component.html\",\n styleUrls: [\"./credit-card-form.component.scss\"],\n})\nexport class RetailCreditCardFormComponent implements AfterViewInit, OnInit, OnDestroy, OnChanges {\n\n @Input() pakmsKey: string = \"mt_vitupay_test_api_key\";\n @Input() agencyFeeDescriptor: string;\n @Input() serviceFeeDescriptor: string;\n @Input() cardErrorMessage: string;\n\n @Input() set record(value: CardRecord) {\n this.cardForm.patchValue(value, { emitEvent: false });\n }\n @Output() recordChange = new EventEmitter();\n\n constructor(\n @Inject(DOCUMENT) private document: Document,\n private fb: UntypedFormBuilder,\n private parentForm: NgForm,\n ) {}\n\n CARD_FIELDS = CARD_FIELDS;\n\n clover: any = null;\n cloverFields: Record = {\n [CARD_FIELDS.CARD_NUMBER]: \"#card-number\",\n [CARD_FIELDS.CARD_DATE]: \"#card-date\",\n [CARD_FIELDS.CARD_CVV]: \"#card-cvv\",\n [CARD_FIELDS.CARD_POSTAL_CODE]: \"#card-postal-code\",\n };\n\n cloverFieldErrors: Record = {\n [CARD_FIELDS.CARD_NUMBER]: \"Card number is required.\",\n [CARD_FIELDS.CARD_DATE]: \"Card expiry is required.\",\n [CARD_FIELDS.CARD_CVV]: \"Card CVV is required.\",\n [CARD_FIELDS.CARD_POSTAL_CODE]: \"Card postal code is required.\",\n };\n\n cloverFieldValidator = (field: string): ValidatorFn => {\n return () => this.cloverFieldErrors[field]\n ? { [field]: this.cloverFieldErrors[field] }\n : null;\n }\n\n cardForm = this.fb.group({\n cardHolderName: [null, [Validators.required, Validators.maxLength(100)]],\n accept: [false, [Validators.required, (control: AbstractControl) => !control.value ? { termsNotAccepted: true } : null]],\n customerEmail: [null, [Validators.required, Validators.email]],\n ...Object.fromEntries(\n Object.keys(this.cloverFields)\n .map(i => [i, [null, this.cloverFieldValidator(i)]])\n ),\n });\n\n ngOnInit(): void {\n\n this.parentForm.form.addControl(\"cardGroup\", this.cardForm);\n this.cardForm.valueChanges.subscribe(i => this.recordChange.emit(i));\n }\n\n ngOnDestroy(): void {\n\n this.parentForm.form.removeControl(\"cardGroup\");\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n\n if (\"cardErrorMessage\" in changes && changes.cardErrorMessage.currentValue) {\n this.resetCloverForm();\n this.cardForm.reset();\n }\n }\n\n ngAfterViewInit(): void {\n\n this.clover = new Clover(this.pakmsKey);\n setTimeout(() => this.renderCardFields());\n }\n\n touched = (field: string) => this.cardForm.controls[field].touched;\n hasError = (field: string) => this.cardForm.controls[field].hasError(field);\n getError = (field: string) => this.cardForm.controls[field].errors[field];\n\n public resetCloverForm(): void {\n\n Object.values(this.cloverFields)\n .forEach(i => this.document.querySelector(i).firstChild.remove());\n\n this.renderCardFields();\n }\n\n private renderCardFields(): void {\n\n const elements = this.clover.elements();\n\n Object.keys(this.cloverFields).forEach(i => {\n\n const field = elements.create(i, CLOVER_STYLES);\n field.mount(this.cloverFields[i]);\n\n field.addEventListener(\"change\", (error: CloverValidationError) => this.onCloverFieldChange(i, error));\n field.addEventListener(\"blur\", (error: CloverValidationError) => this.onCloverFieldBlur(i, error));\n });\n }\n\n public async getTokenData(): Promise {\n\n const tokenData: CloverTokenResponse = await this.clover.createToken(true);\n\n if (isEmpty(tokenData)) {\n\n return { error: \"generationError\" };\n }\n\n if (tokenData.errors) {\n\n Object.keys(this.cloverFields)\n .filter(i => tokenData.errors[i])\n .forEach(i => {\n this.cardForm.controls[i].setErrors({ [i]: tokenData.errors[i] });\n });\n\n return { error: \"validationError\" };\n }\n\n return {\n ...tokenData,\n ...this.cardForm.value,\n } as CloverTokenResponse;\n }\n\n private onCloverFieldBlur(field: string, error: CloverValidationError): void {\n this.cardForm.controls[field].markAsTouched();\n }\n\n private onCloverFieldChange(field: string, error: CloverValidationError): void {\n\n this.cloverFieldErrors[field] = error[field].error;\n this.cardForm.controls[field].updateValueAndValidity();\n }\n}\n","
\n\n
\n

Card Info

\n
\n\n
\n
\n
\n {{ getError(CARD_FIELDS.CARD_NUMBER) }}\n
\n
\n\n
\n
\n
\n
\n {{ getError(CARD_FIELDS.CARD_DATE) }}\n
\n
\n
\n
\n
\n {{ getError(CARD_FIELDS.CARD_CVV) }}\n
\n
\n
\n
\n
\n {{ getError(CARD_FIELDS.CARD_POSTAL_CODE) }}\n
\n
\n
\n\n
\n \n Cardholder's Name\n \n Should be less than 100 characters\n Field is required\n \n
\n\n
\n
\n An additional service fee of 2.3% will be added to card payments.\n
\n
\n This charge and the associated service fee are being processed by Motor Vehicle Software Corporation and will appear on your cardholder statement as two separate charges:\n
MVD Fee - {{ agencyFeeDescriptor }} 406-285-8250 MT.\n
Service Fee - {{ serviceFeeDescriptor }} 406-285-8250 MT\n
\n
\n\n
\n \n Customer accepts the MVD Fee and Service Fee.\n \n
\n\n
\n","import { Component, EventEmitter, Input, Output, ViewChild } from \"@angular/core\";\nimport { PaymentSelectionModel } from \"Portal/models/payment-selection-model\";\nimport { CardRecord, OperationType, PayWithCard } from \"src/app/storage/retail/retail.state\";\nimport { RetailCreditCardFormComponent } from \"./credit-card-form/credit-card-form.component\";\n\n@Component({\n selector: \"retail-moto\",\n templateUrl: \"./moto.component.html\",\n styleUrls: [\"./moto.component.scss\"]\n})\nexport class MotoComponent {\n\n @ViewChild(\"creditCardForm\") creditCardForm: RetailCreditCardFormComponent;\n\n @Input() summary: PaymentSelectionModel;\n @Input() cardErrorMessage: string;\n @Input() cardRecord: CardRecord;\n\n @Output() cardRecordChange = new EventEmitter();\n @Output() payWithCreditCard = new EventEmitter();\n\n async payCreditCard(): Promise {\n\n this.payWithCreditCard.emit({ operation: OperationType.StartPayment });\n\n const result = await this.creditCardForm.getTokenData();\n\n const payload: PayWithCard = \"error\" in result\n ? { operation: OperationType.PaymentError, timeout: result.error == \"generationError\" }\n : { operation: OperationType.CheckoutPayment, cardData: result };\n\n this.payWithCreditCard.emit(payload);\n }\n\n}\n","
\n
\n
\n \n \n
\n Card Not Present\n
\n\n
\n
\n
\n
\n Amount\n
\n
\n
\n
\n Service Fee\n
\n
\n
\n
\n Payment Type\n
\n
\n
\n
\n
\n
\n {{ summary.total | currency }}\n
\n
\n
\n
\n {{ summary.serviceFeeAmount | currency }}\n
\n
\n
\n
\n Retail\n
\n
\n
\n
\n\n
\n \n \n \n\n \n \n\n
\n \n
\n
\n","import { Component, EventEmitter, Input, Output } from \"@angular/core\";\nimport { PaymentSelectionModel } from \"Portal/models/payment-selection-model\";\nimport { CardRecord, PayWithCard, RetailPaymentMethodEnum, SubmittingViewStates } from \"src/app/storage/retail/retail.state\";\n\n@Component({\n selector: \"retail-payment-section\",\n templateUrl: \"./payment-section.component.html\",\n styleUrls: [\"./payment-section.component.scss\"]\n})\nexport class PaymentSectionComponent {\n\n @Input() summary: PaymentSelectionModel;\n @Input() cardErrorMessage: string;\n @Input() cardRecord: CardRecord;\n @Input() submittingViewState: SubmittingViewStates;\n\n @Output() cardRecordChange = new EventEmitter();\n @Output() payWithCreditCard = new EventEmitter();\n @Output() payClover = new EventEmitter();\n\n RetailPaymentMethodEnum = RetailPaymentMethodEnum;\n retailPaymentMethod: RetailPaymentMethodEnum | null = RetailPaymentMethodEnum.CARD_PRESENT;\n SubmittingViewStates = SubmittingViewStates;\n\n}\n","
\n
Payment Options:
\n
\n \n Option\n \n \n Card Present\n \n \n Card Not Present\n \n \n \n
\n
\n\n\n \n \n\n\n\n \n \n\n\n
\n
\n
\n
\n
\n
\n
\n
\n
\n Payment Processing\n
\n
\n\n
\n
\n \n Payment Success!!\n

\n Please wait a moment we will redirect you to a confirmation page\n

\n
\n
\n","import { Component, OnInit } from \"@angular/core\";\nimport { Title } from \"@angular/platform-browser\";\nimport { Store } from \"@ngrx/store\";\nimport { IStore } from \"src/app/storage/store\";\nimport * as RetailSelectors from \"src/app/storage/retail/retail.selectors\";\nimport * as RetailActions from \"src/app/storage/retail/retail.actions\";\nimport { CardRecord, PayWithCard, RetailViewState } from \"src/app/storage/retail/retail.state\";\n\n@Component({\n selector: \"retail-payment\",\n templateUrl: \"./payment.component.html\",\n styleUrls: [\"./payment.component.scss\"]\n})\nexport class PaymentComponent implements OnInit {\n\n retailView$ = this.store.select(RetailSelectors.selectView);\n retailSummary$ = this.store.select(RetailSelectors.selectSummary);\n cardErrorMessage$ = this.store.select(RetailSelectors.selectCardErrorMessage);\n cardRecord$ = this.store.select(RetailSelectors.selectCardRecordState);\n submittingViewState$ = this.store.select(RetailSelectors.selectSubmittingViewState);\n\n constructor(\n private store: Store,\n private title: Title,\n ) {}\n\n RetailView = RetailViewState;\n\n ngOnInit(): void {\n\n this.title.setTitle(\"Retail Payment\");\n this.store.dispatch(RetailActions.InitializeRetailAction());\n }\n\n cardRecordChange(cardRecord: CardRecord): void {\n\n this.store.dispatch(RetailActions.CardRecordChangeAction({ cardRecord }));\n }\n\n payWithCreditCard(data: PayWithCard): void {\n\n this.store.dispatch(RetailActions.PayWithCreditCardAction({ data }));\n }\n\n payClover(): void {\n\n this.store.dispatch(RetailActions.PayCloverAction());\n }\n\n}\n\n","
\n \n
\n
\n
\n
Reference ID
\n
\n
\n
Tech ID
\n
\n
\n
Customer Name
\n
\n
\n
Amount Due
\n
\n
\n
\n
\n
{{ summary.referenceId || '-' }}
\n
\n
\n
{{ summary.retailPaymentData?.techId || '-' }}
\n
\n
\n
{{ summary.customerName || '-' }}
\n
\n
\n
{{ summary.amountDue | currency }}
\n
\n
\n
\n
\n
\n \n \n
\n
\n\n\n

loading

\n
\n\n\n \n \n\n","import { Component, OnInit } from \"@angular/core\";\nimport { Title } from \"@angular/platform-browser\";\nimport { environment } from \"../../../environments/environment\";\n\n@Component({\n selector: \"app-terms-and-conditions-page\",\n templateUrl: \"./terms-and-conditions-page.component.html\",\n styleUrls: [\"./terms-and-conditions-page.component.scss\"]\n})\nexport class TermsAndConditionsPageComponent implements OnInit {\n\n constructor(\n private title: Title,\n ) {}\n\n ngOnInit(): void {\n\n this.title.setTitle(`Terms And Conditions - ${environment.appName}`);\n }\n}\n","
\n

Terms and Conditions

\n

Last update September 17, 2021

\n\n

\n Thank you for using our services (“Services”). This Service Agreement\n (“Agreement”) is between Motor Vehicle\n Software Corporation d/b/a Vitu (“Vitu”) and the person who has clicked on the\n “Pay” button (“you”, “your” or\n “yours”), and describes the terms under which Vitu permits you to access and use this service\n to renew a vehicle\n registration (“Renewal”) based on fees from Montana Department of Justice Motor Vehicle\n Division Digital\n Government Services (“MT MVD”).\n

\n\n

\n BY USING THIS WEBSITE OR PURCHASING VITU PRODUCTS OR SERVICES, YOU REPRESENT THAT YOU MAY LEGALLY ENTER INTO\n THIS AGREEMENT, AND THAT YOU AGREE WITH ALL THE TERMS OF THIS AGREEMENT.\n

\n\n

\n The following Terms and Conditions are the terms which govern your use of this website, and the offers,\n services, and or products that Vitu, its parents, subsidiaries, or affiliates, collectively herein Vitu offer\n to you on this site (\"Agreement\"). Throughout this site, the terms Vitu, We, Us, and Our refers\n to Vitu. The\n offers on this site, the offer terms, including all information, tools, services, products, available from this\n site, to You, \"the user\", are conditioned upon your acceptance of all the terms, conditions,\n policies and\n notices stated herein. Your use of the site constitutes your agreement to all such terms, conditions, offer\n terms, policies and notices contained herein in this Agreement.\n

\n\n

\n Our support team is at: mtsupport@vitu.com.\n

\n\n
    \n
  1. \n

    TERMS AND CONDITIONS

    \n
      \n
    1. \n

      \n You agree to pay for any and all products and services that you purchase on our site and you\n agree that we may charge your payment method for them.\n

      \n
    2. \n
    \n
  2. \n\n
  3. \n

    SALE OF GOODS AND SERVICES

    \n
      \n
    1. \n

      \n The following goods and services are available on this Site: MT MVD Services. The services will\n be paid for in full when the services are ordered. All information, descriptions, or images that\n we provide about our goods and services are as accurate as possible. However, we are not legally\n bound by such information, descriptions, or images as we cannot guarantee the accuracy of all\n goods and services we provide. You agree to purchase goods and services from this Site at your\n own risk. We reserve the right to modify, reject or cancel your order whenever it becomes\n necessary. If we cancel your order and have already processed your payment, we will give you a\n refund equal to the amount you paid. You agree that it is your responsibility to monitor your\n payment instrument to verify receipt of any refund.\n

      \n
    2. \n
    3. \n

      \n We accept the following payment methods on this Site: Credit Card, Debit Card, and Check. When\n you provide us with your payment information, you authorize our use of and access to the payment\n instrument you have chosen to use. By providing us with your payment information, you authorize\n us to charge the amount due to this payment instrument. If we believe your payment has violated\n any law or these Terms and Conditions, we reserve the right to cancel or reverse your\n transaction.\n

      \n
    4. \n
    5. \n

      \n Refund requests must be made within 90 days after receipt of your goods. We accept refund\n requests for goods sold on this Site for any of the following reasons: service or product not\n received. Refunds do not apply to the following goods: Service or Products received.\n

      \n
    6. \n
    \n
  4. \n\n
  5. \n

    ELECTRONIC CONTACTING AND NOTICES

    \n
      \n
    1. \n

      \n Your affirmative act of registering for a user ID and password, using this site, or purchasing\n Vitu Products, or using Vitu Services, constitutes your electronic signature to these Terms of\n Use and your consent to enter into agreements with Vitu electronically. You also agree that we\n may send to you in electronic form any notices or other communications regarding this site. We\n can send you electronically any notices or other communications to the email address that you\n provided to Vitu during registration, or by posting any notices or other communications on this\n site. The delivery of any notices or other communications from Vitu is effective when sent by\n us, regardless of whether you read such notice or other communication when you receive it or\n whether you actually receive the delivery. You can withdraw your consent to receive such notices\n or other communications electronically by canceling or discontinuing your use of this site.\n

      \n
    2. \n
    3. \n

      \n In order to receive notices or other communications electronically, you must have a personal\n computer with a modem connected to a communications source (telephone, wireless or broadband),\n and a Windows-based or Macintosh-based operating system with an Internet browser. You will need\n a printer attached to your personal computer to print any notices or other communications, if\n you so choose. All contracts completed electronically will be deemed for all legal purposes to\n be in writing and legally enforceable as a signed writing.\n

      \n
    4. \n
    \n
  6. \n\n
  7. \n

    ELECTRONIC DELIVERY OF COMMUNICATIONS

    \n
      \n
    1. \n

      \n You agree and consent to receive electronically all Communications provided to you in connection\n with your MVD Your Way Account and your use of the Services, including but not limited to Vitu.\n Communications include: (a) agreements and policies you must agree to in order to use the\n Services (e.g., the MVD Your Way Terms & Conditions and Privacy Policy), including updates to\n those agreements and policies; (b) payment authorizations and transaction receipts or\n confirmations; (c) account statements and history; and, (d) all other communications or\n documents related to or about your account and your use of the Services.\n

      \n
    2. \n
    3. \n

      \n Electronic Communications shall be deemed to be received by you upon delivery in the following\n manner: (a) posting them to your MVD Your Way account on the MVD Your Way website or in an\n associated mobile application; (b) posting them on or in a website or mobile application\n associated with Vitu or the Services; (c) sending them via electronic mail to the email address\n you used to create your MVD Your Way Account registrations; or, (d) otherwise communicating them\n to you via the Services.\n

      \n
    4. \n
    5. \n

      \n It is your responsibility to open and review Communications that we deliver to you through the\n means described above. We may, but are not obligated to under this Policy, provide you with\n notice of the availability of a Communication that is delivered in one of the methods described\n above (for example, by informing you of such Communication through a notification sent to your\n mobile device).\n

      \n
    6. \n
    7. \n

      \n By giving your consent to this Policy, you confirm that you can receive, open, and print or save\n any Communications referenced in this Policy for your records.\n

      \n
    8. \n
    9. \n

      \n Vitu reserves the right to terminate your use of the Services and the associated products if you\n decline or withdraw consent to receive electronic Communications. You may contact Vitu in\n relation to this Policy by using the Contact page in the Policy & Terms page.\n

      \n
    10. \n
    \n
  8. \n\n
  9. \n

    ACCESS COSTS, EQUIPMENT AND SOFTWARE

    \n
      \n
    1. \n

      \n You must provide at your own expense the equipment and Internet connections that you will need\n to access this site. This site may require the use of certain third-party software. You are\n responsible for all costs associated with acquiring such software, if any, and complying with\n any licenses associated with such software. We are not responsible for any costs you incur to\n access or use this site.\n

      \n
    2. \n
    \n
  10. \n\n
  11. \n

    YOUR USER ID AND PASSWORD

    \n
      \n
    1. \n

      \n You may be asked to create or enter a user ID and password during registration. You agree not to\n share your user ID and Password with anyone else. You understand that we may suspend or\n terminate your use of your user ID and Password at any time for any or no reason. If access to\n your account is suspended or terminated, you acknowledge that you have no right to access this\n site. Notwithstanding such suspension or termination, the remainder of these Terms of Use shall\n remain in effect.\n

      \n
    2. \n
    \n
  12. \n\n
  13. \n

    USE OF MATERIAL FROM THIS SITE

    \n
      \n
    1. \n

      \n All contents of this site, including but not limited to any text, software, files, graphics,\n photos, images, design, music, musical compositions, video, audiovisual works, and data found on\n this site (collectively, the \"Materials\"), are the property of and owned by Vitu, its parent\n companies or its licensors, and are protected by copyright, trademark, and other laws of the\n United States and other countries. Use of the Materials other than viewing the site, including\n but not limited to the reproduction, copying, modification, display, adaptation, publication,\n translation, public performance, reverse engineering, transfer, transmission, broadcast,\n distribution, licensing, sale, or gift in whole or in part, or the creation of derivative works\n from such Materials, is expressly prohibited.\n

      \n
    2. \n
    \n
  14. \n\n
  15. \n

    TRADEMARKS AND COPYRIGHTS

    \n
      \n
    1. \n

      \n This site may feature trademarks, service marks, logos, text, software, files, graphics, photos,\n images, design, music, video, and data that are the property of Vitu and its affiliates or\n licensors. This site also may include trademarks, service marks, logos, text, software, files,\n graphics, photos, images, design, music, video, and data of other third parties. All of these\n trademarks, service marks, logos, text, software, files, graphics, photos, images, design,\n music, video, and data are the property of their respective owners, and you agree not to use\n them in any manner without the prior permission of the applicable owner. This site and all of\n its content are protected under copyright, trademark, and other laws of the United States and\n other countries.\n

      \n
    2. \n
    \n
  16. \n\n
  17. \n

    DISCLAIMERS

    \n
      \n
    1. \n

      \n Vitu is a privately-owned company. We are not affiliated with, owned or operated by any\n government agency.\n

      \n
    2. \n
    3. \n

      \n The material contained on this site or in the vehicle report may contain inaccuracies and\n typographical errors. You agree that we are not liable for content that is provided by other\n parties. Changes are periodically made to the site and may be made at any time.\n

      \n
    4. \n
    5. \n

      \n YOUR USE OF THIS SITE IS AT YOUR SOLE RISK. THIS SITE AND THE PRODUCTS AND SERVICES PROVIDED\n THROUGH THIS SITE ARE PROVIDED ON AN \"AS IS\" AND \"AS AVAILABLE\" BASIS. WE RESERVE THE RIGHT TO\n RESTRICT OR TERMINATE YOUR ACCESS TO THIS SITE OR ANY FEATURE OR PART THEREOF AT ANY TIME. TO\n THE FULLEST EXTENT PERMITTED UNDER APPLICABLE LAW, VITU EXPRESSLY DISCLAIMS ALL WARRANTIES OF\n ANY KIND, WHETHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF\n MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE AND ANY WARRANTIES THAT MATERIALS ON THIS\n SITE ARE NON-INFRINGING; THAT ACCESS TO THIS SITE WILL BE UNINTERRUPTED OR ERROR-FREE; THAT THIS\n SITE WILL BE SECURE; THAT THIS SITE OR THE SERVER THAT MAKES THIS SITE AVAILABLE WILL BE\n VIRUS-FREE; OR THAT INFORMATION ON THIS SITE OR SERVICE WILL BE COMPLETE, ACCURATE, RELIABLE OR\n TIMELY. IF YOU DOWNLOAD ANY MATERIALS FROM THIS SITE, YOU DO SO AT YOUR OWN DISCRETION AND RISK.\n YOU WILL BE SOLELY RESPONSIBLE FOR ANY DAMAGE TO YOUR COMPUTER SYSTEM OR LOSS OF DATA THAT\n RESULTS FROM THE DOWNLOAD OF ANY SUCH MATERIALS. NO ADVICE OR INFORMATION, WHETHER ORAL OR\n WRITTEN, OBTAINED BY YOU FROM VITU OR THROUGH OR FROM THIS SITE SHALL CREATE ANY WARRANTY OF ANY\n KIND. VITU DOES NOT MAKE ANY WARRANTIES OR REPRESENTATIONS REGARDING THE USE OF THE MATERIALS\n FROM THIS SITE IN TERMS OF THEIR COMPLETENESS, CORRECTNESS, ACCURACY, ADEQUACY, USEFULNESS,\n TIMELINESS, RELIABILITY OR OTHERWISE.\n

      \n
    6. \n
    7. \n

      \n IN CERTAIN STATES, THE LAW MAY NOT PERMIT THE DISCLAIMER OF WARRANTIES, SO THE ABOVE DISCLAIMER\n MAY NOT APPLY TO YOU.\n

      \n
    8. \n
    9. \n

      \n THIS WEBSITE IS A PRIVATELY-OWNED WEBSITE AND IS NEITHER OWNED, OPERATED, OR AFFILIATED WITH ANY\n GOVERNMENT AGENCY. THERE ARE FEES IMPOSED BY YOUR STATE THAT WILL VARY WITH THE TYPE OF VEHICLE,\n USE, WEIGHT, AND ARE SET BY YOUR STATE. PLEASE REFER TO OUR TERMS OF USE FOR FURTHER\n INFORMATION.\n

      \n
    10. \n
    \n
  18. \n\n
  19. \n

    LIMITATION OF LIABILITY

    \n
      \n
    1. \n

      \n TO THE FULLEST EXTENT PERMITTED UNDER APPLICABLE LAW, YOU UNDERSTAND AND AGREE THAT NEITHER\n VITU, NOR ANY OF ITS AFFILIATES OR THIRD-PARTY CONTENT PROVIDERS SHALL BE LIABLE FOR ANY DIRECT,\n INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, CONSEQUENTIAL, PUNITIVE OR ANY OTHER DAMAGES RELATING\n TO OR RESULTING FROM YOUR USE OF OR INABILITY TO USE THIS SITE, OUR PRODUCTS AND SERVICES, OR\n ANY OTHER SITE YOU ACCESS THROUGH A LINK FROM THIS SITE OR FROM ANY ACTIONS WE TAKE OR FAIL TO\n TAKE AS A RESULT OF EMAIL MESSAGES YOU SEND US. THESE INCLUDE DAMAGES FOR ERRORS, OMISSIONS,\n INTERRUPTIONS, DEFECTS, DELAYS, COMPUTER VIRUSES, YOUR LOSS OF PROFITS, LOSS OF DATA,\n UNAUTHORIZED ACCESS TO AND ALTERATION OF YOUR TRANSMISSIONS AND DATA, AND OTHER TANGIBLE AND\n INTANGIBLE LOSSES.\n

      \n
    2. \n
    3. \n

      \n THE LIMITATION ABOVE APPLIES REGARDLESS OF WHETHER THE DAMAGES ARE CLAIMED UNDER THE TERMS OF A\n CONTRACT, AS THE RESULT OF NEGLIGENCE OR OTHERWISE ARISE OUT OF OR IN CONNECTION WITH THE USE,\n INABILITY TO USE, OR PERFORMANCE OF THE INFORMATION, SERVICES, PRODUCTS OR MATERIALS AVAILABLE\n FROM THIS SITE, AND EVEN IF WE OR OUR REPRESENTATIVES HAVE BEEN NEGLIGENT OR HAVE BEEN ADVISED\n OF THE POSSIBILITY OF SUCH DAMAGES. BECAUSE SOME JURISDICTIONS DO NOT ALLOW LIMITATIONS ON HOW\n LONG AN IMPLIED WARRANTY LASTS, OR THE EXCLUSION OR LIMITATION OF LIABILITY FOR CONSEQUENTIAL OR\n INCIDENTAL DAMAGES, ALL OR A PORTION OF THE ABOVE LIMITATION MAY NOT APPLY TO YOU.\n

      \n
    4. \n
    \n
  20. \n\n
  21. \n

    INDEMNIFICATION

    \n
      \n
    1. \n

      \n You agree to indemnify, defend and hold harmless Vitu, its affiliates and each of their\n respective officers, directors, employees, contractors, agents, licensors and suppliers, from\n and against any and all claims, losses, liabilities, expenses, damages and costs, including\n reasonable attorneys' fees and court costs, arising out of or resulting from any violation of\n these Terms of Use. If you cause a technical disruption of this site or the systems transmitting\n this site to you or others, you agree to be responsible for any and all losses, liabilities,\n expenses, damages and costs, including reasonable attorneys' fees and court costs, arising or\n resulting from that disruption.\n

      \n
    2. \n
    \n
  22. \n\n
  23. \n

    JURISDICTION & ENFORCEMENT

    \n
      \n
    1. \n

      \n Any disputes resulting from a visitor’s use of our server(s) or site(s) shall be construed and\n enforced under the laws of the State of California. Visitors hereby submit to the jurisdiction\n of the courts of Los Angeles County, California, and waive any objection to venue with respect\n to actions brought in such courts. In any dispute, the prevailing party shall be entitled to\n recover its reasonable attorney’s fees and cost from the non-prevailing party. If any provision\n of these Terms and Conditions is held invalid, illegal, or unenforceable, the validity,\n legality, or enforceability of the remaining provisions shall in no way be affected or impaired\n thereby.\n

      \n
    2. \n
    3. \n

      \n Attorney’s Fees and Costs: The parties shall be entitled to recover, in addition to costs,\n disbursements allowed by law, pre-litigation costs, reasonable attorney’s fees and costs in\n connection with enforcement of this agreement, and such fees shall be awarded to the prevailing\n party. Invalidation of any one of the covenants or terms of this Agreement, by judgment of a\n court, shall not affect any of the other provisions of this Agreement which shall remain in full\n force and effect.\n

      \n
    4. \n
    5. \n

      \n We recognize that it is possible for you to obtain access to this site from any jurisdiction in\n the world, but we have no practical ability to prevent such access. This site has been designed\n to comply with the laws of the State of Montana and of the United States. If any material on\n this site, or your use of this site, is contrary to the laws of the place where you are when you\n access it, this site is not intended for you, and you shall not use this site. You are\n responsible for informing yourself of the laws of your jurisdiction and complying with them.\n

      \n
    6. \n
    \n
  24. \n\n
  25. \n

    RULES OF CONSTRUCTION

    \n
      \n
    1. \n

      \n Amendment and Modification we reserve the right, in our sole discretion, to change these Terms\n of Use at any time by posting revised terms on this site. It is your responsibility to check\n periodically for any changes we may make to these Terms of Use. Your continued use of this site\n following the posting of changes to these terms or other policies means you accept the changes.\n No change, amendment, modification, termination or attempted waiver by you of any of the\n provisions set forth herein shall be binding unless made in writing and signed by a duly\n authorized representative of Vitu and no representation, promise, inducement or statement of\n intention has been made by either party which is not embodied herein.\n

      \n
    2. \n
    3. \n

      \n Non-Waiver: Either party’s failure to require the other party’s performance of any term or\n condition of this Agreement shall not constitute a waiver and shall not affect the right of such\n party to later enforce such provision, unless such waiver is made expressly in writing signed by\n an authorized representative of the waiving party. No waiver of any breach of any provision of\n this Agreement shall constitute a waiver of any prior, concurrent or subsequent breach of the\n same or any other provisions hereof, and no waiver shall be effective unless made in writing and\n signed by an authorized representative of the waiving party.\n

      \n
    4. \n
    5. \n

      \n Force Majeure: Neither party shall be liable for service interruptions, delays, failure to\n perform, damages, losses or destruction, or malfunction of any consequence thereof caused or\n occasioned by, or due to fire, flood, water, the elements, acts of Good, war, explosions, civil\n disturbances, governmental actions, shortages of equipment or supplies, unavailability of\n transportation, acts or omissions of third parties, or any other cause beyond the affected\n party’s reasonable control. The party so delayed or prevented from performing shall provide\n prompt notice of such event to the other party and shall exercise good faith efforts to remedy\n any such cause of delay or cause preventing performance.\n

      \n
    6. \n
    7. \n

      \n Integration: This Agreement shall constitute the entire agreement between the parties with\n respect to the subject matter hereof and shall be deemed to merge all prior and contemporaneous\n agreements, communications and understandings (both written and oral).\n

      \n
    8. \n
    9. \n

      \n Severability: If any provision herein is held to be unenforceable, the remaining provisions\n shall remain in full force and effect. All rights and remedies hereunder are cumulative. Any\n provision of this instrument prohibited by law in any state shall, as to such state, be\n ineffective to the extent of such prohibition, without invalidating the remaining provisions of\n this instrument.\n

      \n
    10. \n
    11. \n

      \n Notice: All notices, requests, demands, and other communications to Vitu hereunder shall be in\n writing and shall be deemed given at the time such communication is sent by registered or\n certified mail (return receipt requested), or recognized national overnight courier service, or\n delivered personally, to the following address (or other address as shall be specified by like\n notice and made to the attention of both the CEO and General Counsel):\n

      \n

      \n
      \n Vitu
      \n 40 West 14th St Suite 4B
      \n Helena, MT 59601
      \n 406-285-8280
      \n mtsupport@vitu.com\n

      \n
    12. \n
    13. \n

      \n Survival: Any obligations which expressly or by their nature are to continue after termination,\n cancellation, or expiration of the Agreement shall survive and remain in effect after such\n happening.\n

      \n
    14. \n
    \n
  26. \n
\n\n
 
\n
\n","import { Directive, ElementRef, OnChanges, Input, AfterViewInit } from \"@angular/core\";\nimport { getUniqueHashString } from \"./get-unique-hashstring\";\n\n@Directive({\n selector: \"[autocompleteFix]\"\n})\nexport class AutocompleteFixDirective implements OnChanges, AfterViewInit {\n\n @Input() name: string;\n @Input() formControlName: string;\n\n constructor(\n private elementRef: ElementRef,\n ) {}\n\n get element() { return this.elementRef.nativeElement as HTMLElement; }\n\n ngOnChanges() {\n\n this.setUniqueName();\n }\n\n ngAfterViewInit() {\n\n // duplicate call here because ngOnChanges isn't called\n // in case there are no template-provided input values (since Angular v10)\n this.setUniqueName();\n this.setUniqueAutocompleteAttr();\n }\n\n private setUniqueName() {\n\n const originalName = this.name\n || this.formControlName\n || this.element.tagName.toLocaleLowerCase();\n\n this.element.setAttribute(\"name\", originalName + \"-\" + getUniqueHashString());\n }\n\n private setUniqueAutocompleteAttr() {\n\n this.element.setAttribute(\"autocomplete\", `new-${getUniqueHashString()}`);\n }\n}\n","export function getUniqueHashString(length: number = 20) {\n\n return \"x\".repeat(length).replace(/[x]/g, () => {\n\n // tslint:disable:no-bitwise\n const val = Math.random() * 16 | 0;\n return val.toString(16);\n });\n}\n","import { Component, OnInit } from '@angular/core';\nimport { MatDialogRef } from '@angular/material/dialog';\n\n@Component({\n selector: 'app-email-modal',\n templateUrl: './email-modal.component.html',\n styleUrls: ['./email-modal.component.scss']\n})\nexport class EmailModalComponent implements OnInit {\n\n constructor(\n public dialog: MatDialogRef\n ) {}\n\n email = \"\";\n\n ngOnInit(): void {\n }\n\n}\n","

Send Receipt

\n\n Email\n \n\n
\n \n \n
\n","import { Component, Input } from \"@angular/core\";\n\n@Component({\n selector: \"error-message\",\n templateUrl: \"./error-message.component.html\",\n styleUrls: [\"./error-message.component.scss\"]\n})\nexport class ErrorMessageComponent {\n\n @Input() error: string;\n}\n","
\n
\n \n
Payment Failed!
\n
\n\n
\n {{ error }}\n
\n
\n","import { CommonModule } from \"@angular/common\";\nimport { NgModule } from \"@angular/core\";\nimport { FormsModule, ReactiveFormsModule } from \"@angular/forms\";\nimport { BrowserModule } from \"@angular/platform-browser\";\nimport { MaterialModule } from \"../material.module\";\nimport { AutocompleteFixDirective } from \"./autocomplete-fix/autocomplete-fix.directive\";\nimport { EmailModalComponent } from './email-modal/email-modal.component';\nimport { ErrorMessageComponent } from \"./error-message/error-message.component\";\nimport { VituPayModule } from \"@vitupay-public/ng-vitupay\";\n\nconst exportableComponents = [\n AutocompleteFixDirective,\n ErrorMessageComponent,\n];\n\n@NgModule({\n imports: [\n CommonModule,\n BrowserModule,\n FormsModule,\n ReactiveFormsModule,\n MaterialModule,\n VituPayModule,\n ],\n declarations: [\n ...exportableComponents,\n EmailModalComponent,\n ],\n exports: [\n ...exportableComponents,\n MaterialModule,\n FormsModule,\n ReactiveFormsModule,\n VituPayModule,\n ]\n})\nexport class SharedModule {}\n","import { createAction, props } from \"@ngrx/store\";\nimport { ApplicationState } from \"./application.state\";\n\nexport const ExtendStateAction = createAction(\n \"[Application] Extend State\",\n props<{ newState: Partial }>(),\n);\n","import { Injectable } from \"@angular/core\";\n\n@Injectable()\nexport class ApplicationEffects {\n\n constructor() {}\n\n}\n","import { createReducer, on } from \"@ngrx/store\";\nimport * as ApplicationActions from \"./application.actions\";\nimport { createApplicationState } from \"./application.state\";\n\nexport const ApplicationReducer = createReducer(\n createApplicationState(),\n on(ApplicationActions.ExtendStateAction, (state, { newState }) => ({ ...state, ...newState })),\n);\n","export type ApplicationState = {};\n\n\nexport const createApplicationState = () => {\n\n return {} as ApplicationState;\n}\n","import { createAction, props } from \"@ngrx/store\";\nimport { ApplePaySubmitEvent, GooglePaySubmitEvent, PayPalSubmitEvent } from \"@vitupay-public/ng-vitupay\";\nimport { CardRecord, ECheckRecord, EcomState, PayWithCard } from \"./ecom.state\";\n\nconst APP_NAME = \"ECOM\";\n\nexport const InitializeEcomAction = createAction(\n `[${APP_NAME}] Initialize Ecom Page`,\n);\n\nexport const PayWithCreditCardAction = createAction(\n `[${APP_NAME}] Pay With Credit Card`,\n props<{ data: PayWithCard }>(),\n);\n\nexport const PayWithECheckAction = createAction(\n `[${APP_NAME}] Pay With ECheck`,\n);\n\nexport const PayWithPaymentSystems = createAction(\n `[${APP_NAME}] Pay With Payment Systems`,\n props<{ data: PayPalSubmitEvent | ApplePaySubmitEvent | GooglePaySubmitEvent }>(),\n);\n\nexport const CardRecordChangeAction = createAction(\n `[${APP_NAME}] Card Record Change`,\n props<{ cardRecord: CardRecord }>(),\n);\n\nexport const ECheckRecordChangeAction = createAction(\n `[${APP_NAME}] ECheck Record Change`,\n props<{ eCheckRecord: ECheckRecord }>(),\n);\n\nexport const ExtendStateAction = createAction(\n `[${APP_NAME}] Extend State`,\n props<{ newState: Partial }>(),\n);\n\nexport const CancelPaymentAction = createAction(\n `[${APP_NAME}] Cancel Payment`,\n props<{ trackingNumber: string}>(),\n);\n","import * as JSEncryptModule from \"jsencrypt\";\nimport { HttpErrorResponse } from \"@angular/common/http\";\nimport { Injectable } from \"@angular/core\";\nimport { MatDialog } from \"@angular/material/dialog\";\nimport { Actions, createEffect, ofType } from \"@ngrx/effects\";\nimport { Store } from \"@ngrx/store\";\nimport { PaymentCreditCardSubmitModel } from \"Portal/models/payment-credit-card-submit-model\";\nimport { CheckoutService } from \"Portal/services/checkout.service\";\nimport { BehaviorSubject, concat, EMPTY, merge, NEVER, Observable, of, timer } from \"rxjs\";\nimport { catchError, filter, map, switchMap, tap, withLatestFrom } from \"rxjs/operators\";\nimport { RiskDeclinedComponent } from \"src/app/pages/ecom/risk-declined/risk-declined.component\";\nimport { IStore } from \"../store\";\nimport * as EcomActions from \"./ecom.actions\";\nimport { environment } from \"src/environments/environment\";\nimport {\n CloverScriptStatus,\n DEFAULT_CARD_RECORD,\n DEFAULT_E_CHECK_RECORD,\n ECheckRecord,\n OperationType,\n SubmittingViewStates,\n ViewStates\n} from \"./ecom.state\";\nimport { selectECheckRecordState, selectSummary } from \"./ecom.selectors\";\nimport { PayPalSubmitStatusChangedStatus } from \"@vitupay-public/ng-vitupay\";\n\n@Injectable()\nexport class EcomEffects {\n\n constructor(\n private actions: Actions,\n private store: Store,\n private matDialog: MatDialog,\n private checkoutService: CheckoutService,\n ) {}\n\n initialize$ = createEffect(() => this.actions.pipe(\n ofType(EcomActions.InitializeEcomAction),\n switchMap(() => this.appendCloverSdk()),\n switchMap(sdkStatus => {\n\n const actions = [\n of(EcomActions.ExtendStateAction({\n newState: {\n cloverSdkStatus: sdkStatus,\n },\n }))\n ];\n\n if (sdkStatus === CloverScriptStatus.LOADED) {\n\n const paymentLinkToken = location.pathname.replace(\"/\", \"\");\n const loadSummary$ = this.checkoutService.checkoutGetCheckoutSummaryModel({ paymentLinkToken }).pipe(\n switchMap(summary => {\n\n const disallowedTransaction = summary.isNotAllowed\n || summary.isTransactionPaid || summary.sessionExpiredTime == 0;\n\n const switchToNotAllowedOnTimeout$ = summary.sessionExpiredTime > 0 && !disallowedTransaction\n ? timer(summary.sessionExpiredTime * 1000).pipe(\n map(() => EcomActions.ExtendStateAction({\n newState: { viewState: ViewStates.NOT_ALLOWED },\n }))\n )\n : EMPTY;\n\n return merge(\n of(EcomActions.ExtendStateAction({\n newState: {\n summary,\n viewState: disallowedTransaction\n ? ViewStates.NOT_ALLOWED\n : ViewStates.FORM,\n },\n })),\n switchToNotAllowedOnTimeout$,\n );\n })\n );\n\n actions.push(loadSummary$);\n }\n\n return concat(\n ...actions,\n );\n })\n ));\n\n payWithCreditCard$ = createEffect(() => this.actions.pipe(\n ofType(EcomActions.PayWithCreditCardAction),\n withLatestFrom(this.store.select(selectSummary)),\n switchMap(([action, summary]) => {\n\n if (action.data.operation === OperationType.StartPayment) {\n\n return of({\n submittingViewState: SubmittingViewStates.SUBMITTING,\n cardErrorMessage: null\n });\n }\n\n if (action.data.operation === OperationType.PaymentError) {\n\n return of({\n submittingViewState: null,\n cardErrorMessage: action.data.timeout\n ? \"We are unable to process your payment at this time, please try again later.\"\n : null\n });\n }\n\n if (action.data.operation === OperationType.CheckoutPayment) {\n\n const params: PaymentCreditCardSubmitModel = {\n cardFirst6: action.data.cardData.card.first6,\n cardHolderName: action.data.cardData.cardHolderName,\n email: action.data.cardData.customerEmail,\n cardLast4: action.data.cardData.card.last4,\n paymentToken: action.data.cardData.token,\n trackingNumber: summary.trackingNumber,\n };\n\n return this.checkoutService.checkoutPayCreditCard(params).pipe(\n switchMap(result => {\n\n if (result.isSuccess) {\n\n setTimeout(() => location.href = result.successRedirectUrl, 3000);\n return of({ submittingViewState: SubmittingViewStates.SUCCESS });\n }\n else {\n\n return concat(\n of({ submittingViewState: null, cardErrorMessage: result.errorMessage, cardRecord: DEFAULT_CARD_RECORD }),\n result.isRiskDeclined\n ? this.matDialog.open(RiskDeclinedComponent, {\n panelClass: \"risk-declined-modal\",\n maxWidth: \"990px\",\n autoFocus: false,\n }).afterClosed()\n : NEVER\n );\n }\n }),\n catchError((e: HttpErrorResponse) => of({\n submittingViewState: null,\n cardErrorMessage: e.error.errorMessage,\n cardRecord: DEFAULT_CARD_RECORD\n }))\n );\n }\n\n else {\n return NEVER;\n }\n\n }),\n map(newState => EcomActions.ExtendStateAction({ newState })),\n ));\n\n payWithECheck$ = createEffect(() => this.actions.pipe(\n ofType(EcomActions.PayWithECheckAction),\n withLatestFrom(\n this.store.select(selectSummary),\n this.store.select(selectECheckRecordState),\n ),\n switchMap(([, summary, eCheckRecord]) => {\n\n const crypt = new JSEncryptModule.JSEncrypt();\n crypt.setPublicKey(summary.rsaPublicKey);\n\n const params: ECheckRecord = {\n ...eCheckRecord,\n accountNumber: crypt.encrypt(eCheckRecord.accountNumber),\n accountNumberLast4: eCheckRecord.accountNumber.substring(eCheckRecord.accountNumber.length - 4),\n accountNumberConfirmation: null,\n trackingNumber: summary.trackingNumber,\n };\n\n const request$ = this.checkoutService.checkoutPayEcheck(params).pipe(\n switchMap(result => {\n\n if (result.isSuccess) {\n\n setTimeout(() => location.href = result.successRedirectUrl, 3000);\n return of({ submittingViewState: SubmittingViewStates.SUCCESS });\n }\n else {\n\n return concat(\n of({\n submittingViewState: null,\n eCheckErrorMessage: result.errorMessage,\n eCheckRecord: DEFAULT_E_CHECK_RECORD\n }),\n result.isRiskDeclined\n ? this.matDialog.open(RiskDeclinedComponent, {\n panelClass: \"risk-declined-modal\",\n maxWidth: \"990px\",\n autoFocus: false,\n }).afterClosed()\n : NEVER\n );\n }\n }),\n catchError((e: HttpErrorResponse) => of({\n submittingViewState: null,\n cardErrorMessage: e.error.errorMessage,\n eCheckRecord: DEFAULT_E_CHECK_RECORD\n }))\n );\n\n return merge(\n of({ submittingViewState: SubmittingViewStates.SUBMITTING, eCheckErrorMessage: null }),\n request$\n );\n }),\n map(newState => EcomActions.ExtendStateAction({ newState })),\n ));\n\n payWithPaymentSystems$ = createEffect(() => this.actions.pipe(\n ofType(EcomActions.PayWithPaymentSystems),\n filter(i => i.data.status == PayPalSubmitStatusChangedStatus.Success),\n withLatestFrom(this.store.select(selectSummary)),\n tap(([, summary]) => setTimeout(() => location.href = summary.successRedirectUrl, 3000)),\n map(() => EcomActions.ExtendStateAction({\n newState: {\n submittingViewState: SubmittingViewStates.SUBMITTING,\n }\n })),\n ));\n\n cancelPayment$ = createEffect(() => this.actions.pipe(\n ofType(EcomActions.CancelPaymentAction),\n withLatestFrom(this.store.select(selectSummary)),\n switchMap(([, summary]) => {\n return this.checkoutService.checkoutCacelPayment(summary.trackingNumber)\n }),\n ));\n\n appendCloverSdk(): Observable {\n\n const scriptStatusChanged = new BehaviorSubject(CloverScriptStatus.LOADING);\n const scriptEl = document.querySelector(`script[src='${environment.cloverScriptUrl}']`)\n ?? this.createCloverSdkScriptEl();\n\n scriptEl.addEventListener(\"load\", () => { scriptStatusChanged.next(CloverScriptStatus.LOADED); });\n scriptEl.addEventListener(\"error\", () => { scriptStatusChanged.next(CloverScriptStatus.FAILED_TO_LOAD); });\n\n return scriptStatusChanged.pipe();\n }\n\n private createCloverSdkScriptEl(): HTMLElement {\n\n const scriptEl = document.createElement(\"script\");\n scriptEl.src = environment.cloverScriptUrl;\n document.body.appendChild(scriptEl);\n\n return scriptEl;\n }\n}\n","import { createReducer, on } from \"@ngrx/store\";\nimport * as EcomActions from \"./ecom.actions\";\nimport { createEcomState } from \"./ecom.state\";\n\nexport const EcomReducer = createReducer(\n createEcomState(),\n on(EcomActions.CardRecordChangeAction, (state, { cardRecord }) => ({ ...state, cardRecord })),\n on(EcomActions.ECheckRecordChangeAction, (state, { eCheckRecord }) => ({ ...state, eCheckRecord })),\n on(EcomActions.ExtendStateAction, (state, { newState }) => ({ ...state, ...newState })),\n);\n","import { createSelector } from \"@ngrx/store\";\nimport { IStore } from \"../store\";\n\nexport const selectApplicationState = (store: IStore) => store.ecom;\n\nexport const selectSummary = createSelector(\n selectApplicationState,\n state => state.summary\n);\n\nexport const selectCardErrorMessage = createSelector(\n selectApplicationState,\n state => state.cardErrorMessage\n);\n\nexport const selectECheckErrorMessage = createSelector(\n selectApplicationState,\n state => state.eCheckErrorMessage\n);\n\nexport const selectViewState = createSelector(\n selectApplicationState,\n state => state.viewState\n);\n\nexport const selectSubmittingViewState = createSelector(\n selectApplicationState,\n state => state.submittingViewState\n);\n\nexport const selectECheckRecordState = createSelector(\n selectApplicationState,\n state => state.eCheckRecord\n);\n\nexport const selectCardRecordState = createSelector(\n selectApplicationState,\n state => state.cardRecord\n);\n\nexport const selectCloverSdkStatus = createSelector(\n selectApplicationState,\n state => state.cloverSdkStatus\n);\n","import { CheckoutSummaryModel } from \"Portal/models/checkout-summary-model\";\nimport { PaymentECheckSubmitModel } from \"Portal/models/payment-echeck-submit-model\";\n\nexport enum CloverScriptStatus {\n\n MISSING_ON_PAGE = \"MISSING_ON_PAGE\",\n LOADING = \"LOADING\",\n LOADED = \"LOADED\",\n FAILED_TO_LOAD = \"FAILED_TO_LOAD\",\n}\n\nexport enum CARD_FIELDS {\n\n CARD_NUMBER = \"CARD_NUMBER\",\n CARD_DATE = \"CARD_DATE\",\n CARD_CVV = \"CARD_CVV\",\n CARD_POSTAL_CODE = \"CARD_POSTAL_CODE\",\n}\n\nexport enum ViewStates {\n\n INITIALIZING = \"initializing\",\n FORM = \"form\",\n NOT_ALLOWED = \"not_allowed\",\n}\n\nexport enum SubmittingViewStates {\n\n SUBMITTING = \"submitting\",\n SUCCESS = \"success\",\n}\n\nexport enum PaymentMethodEnum {\n CREDIT_CARD = \"CREDIT_CARD\",\n CHECK = \"CHECK\",\n}\n\nexport enum RetailPaymentMethodEnum {\n CARD_PRESENT = \"CARD_PRESENT\",\n CARD_NOT_PRESENT = \"CARD_NOT_PRESENT\",\n}\n\n\ntype ValidationError = {\n touched: boolean,\n error: string,\n};\n\nexport type CloverResponseError = { [key in keyof any]: string };\nexport type CloverValidationError = { [key in keyof any]: ValidationError };\n\n\nexport interface CloverTokenResponse {\n\n card: {\n address_zip: string,\n brand: string,\n exp_month: string,\n exp_year: string,\n first6: string,\n last4: string,\n };\n token: string;\n cardHolderName: string;\n customerEmail: string;\n errors: CloverResponseError;\n}\n\nexport enum OperationType { StartPayment, CheckoutPayment, PaymentError }\n\nexport type PayWithCard = { operation: OperationType.StartPayment }\n | { operation: OperationType.CheckoutPayment, cardData: CloverTokenResponse }\n | { operation: OperationType.PaymentError, timeout: boolean }\n\nexport interface ECheckRecord extends PaymentECheckSubmitModel {\n accountNumberConfirmation?: string;\n accept?: boolean;\n}\nexport interface CardRecord {\n\n cardHolderName?: string;\n accept?: boolean;\n}\n\nexport interface CancelPayment {\n trackingNumber?: string;\n}\n\nexport type EcomState = {\n\n cloverSdkStatus: CloverScriptStatus,\n summary: CheckoutSummaryModel;\n viewState: ViewStates;\n submittingViewState: SubmittingViewStates | null;\n cardErrorMessage: string;\n eCheckErrorMessage: string;\n eCheckRecord: ECheckRecord;\n cardRecord: CardRecord;\n};\n\nexport const DEFAULT_CARD_RECORD = { cardHolderName: \"\" };\nexport const DEFAULT_E_CHECK_RECORD = {\n isBusinessAccount: false,\n firstName: \"\",\n lastName: \"\"\n};\n\nexport const createEcomState = () => {\n\n return {\n cloverSdkStatus: CloverScriptStatus.MISSING_ON_PAGE,\n viewState: ViewStates.INITIALIZING,\n cardRecord: DEFAULT_CARD_RECORD,\n eCheckRecord: DEFAULT_E_CHECK_RECORD,\n } as EcomState;\n}\n","import { ApplicationEffects } from \"./application/application.effects\";\nimport { EcomEffects } from \"./ecom/ecom.effects\";\nimport { ReceiptEffects } from \"./receipt/receipt.effects\";\nimport { RetailEffects } from \"./retail/retail.effects\";\n\nexport const EffectsConfiguration = [\n ApplicationEffects,\n RetailEffects,\n EcomEffects,\n ReceiptEffects,\n];\n","import { createAction, props } from \"@ngrx/store\";\nimport { ReceiptState } from \"./receipt.state\";\n\nconst APP_NAME = \"RECEIPT\";\n\nexport const InitializeReceiptAction = createAction(\n `[${APP_NAME}] Initialize Receipt Page`,\n props<{ trackingNumber: string }>(),\n);\n\nexport const ExtendStateAction = createAction(\n `[${APP_NAME}] Extend State`,\n props<{ newState: Partial }>(),\n);\n\nexport const SendReceiptEmailAction = createAction(\n `[${APP_NAME}] Send Receipt Email`,\n props<{ trackingNumber: string }>(),\n);\n","import { Injectable } from \"@angular/core\";\nimport { MatDialog } from \"@angular/material/dialog\";\nimport { Actions, createEffect, ofType } from \"@ngrx/effects\";\nimport { CheckoutService } from \"Portal/services/checkout.service\";\nimport { filter, map, switchMap, tap } from \"rxjs/operators\";\nimport { EmailModalComponent } from \"src/app/shared/email-modal/email-modal.component\";\nimport * as ReceiptActions from \"src/app/storage/receipt/receipt.actions\";\nimport { ViewState } from \"./receipt.state\";\n\n@Injectable()\nexport class ReceiptEffects {\n\n constructor(\n private actions: Actions,\n private matDialog: MatDialog,\n private checkoutService: CheckoutService,\n ) {}\n\n initializeRetail$ = createEffect(() => this.actions.pipe(\n ofType(ReceiptActions.InitializeReceiptAction),\n switchMap(action => this.checkoutService.checkoutReceipt(action.trackingNumber)),\n map(receipt => ReceiptActions.ExtendStateAction({ newState: { receipt, viewState: ViewState.RECEIPT } }))\n ));\n\n\n sendReceiptEmail$ = createEffect(() => this.actions.pipe(\n ofType(ReceiptActions.SendReceiptEmailAction),\n switchMap(action => {\n\n const modalRef = this.matDialog.open(EmailModalComponent, {\n minWidth: \"300px\",\n width: \"30vw\",\n });\n\n return modalRef.afterClosed().pipe(\n filter(i => !!i),\n switchMap(email => this.checkoutService.checkoutSendReceipt({ trackingNumber: action.trackingNumber, email })),\n tap(() => modalRef.close()),\n );\n }),\n ), { dispatch: false });\n}\n","import { createReducer, on } from \"@ngrx/store\";\nimport { createReceiptState } from \"./receipt.state\";\nimport * as ReceiptActions from \"./receipt.actions\";\n\nexport const ReceiptReducer = createReducer(\n createReceiptState(),\n on(ReceiptActions.ExtendStateAction, (state, { newState }) => ({ ...state, ...newState })),\n);\n","import { IStore } from \"../store\";\n\nexport const selectReceiptState = (store: IStore) => store.receipt;\n","import { ReceiptModel } from \"Portal/models/receipt-model\";\n\nexport enum ViewState {\n LOADING = \"LOADING\",\n RECEIPT = \"RECEIPT\",\n}\n\nexport type ReceiptState = {\n\n viewState: ViewState;\n receipt?: ReceiptModel;\n};\n\nexport const createReceiptState = () => {\n\n return {\n\n viewState: ViewState.LOADING,\n receipt: {}\n };\n};\n","import { ActionReducer, Action, RootStoreConfig } from \"@ngrx/store\";\nimport { IStore } from \"./store\";\n\nimport { ApplicationReducer } from \"./application/application.reducer\";\nimport { RetailReducer } from \"./retail/retail.reducer\";\nimport { EcomReducer } from \"./ecom/ecom.reducer\";\nimport { ReceiptReducer } from \"./receipt/receipt.reducer\";\n\nexport const ReducerMap: { [key in keyof IStore]: (state: any, action: any) => any } = {\n application: ApplicationReducer,\n ecom: EcomReducer,\n retail: RetailReducer,\n receipt: ReceiptReducer,\n};\n\nexport const ReducerConfiguration: RootStoreConfig = {\n metaReducers: [ClearState],\n runtimeChecks: {\n strictStateImmutability: true,\n strictActionImmutability: true,\n strictActionSerializability: false,\n strictStateSerializability: false,\n }\n};\n\nexport function ClearState(reducer: ActionReducer): ActionReducer {\n\n return (state: IStore | undefined, action: Action) => reducer(state, action);\n}\n","import { createAction, props } from \"@ngrx/store\";\nimport { CardRecord, PayWithCard, RetailState } from \"./retail.state\";\n\nconst APP_NAME = \"RETAIL\";\n\nexport const InitializeRetailAction = createAction(\n `[${APP_NAME}] Initialize Payment Retail`,\n);\n\nexport const PayCreditCardAction = createAction(\n `[${APP_NAME}] Pay Credit Card`,\n props<{ data: PayWithCard }>(),\n);\n\nexport const ExtendStateAction = createAction(\n `[${APP_NAME}] Extend State`,\n props<{ newState: Partial }>(),\n);\n\nexport const PayWithCreditCardAction = createAction(\n `[${APP_NAME}] Pay With Credit Card`,\n props<{ data: PayWithCard }>(),\n);\n\nexport const CardRecordChangeAction = createAction(\n `[${APP_NAME}] Card Record Change`,\n props<{ cardRecord: CardRecord }>(),\n);\n\nexport const PayCloverAction = createAction(\n `[${APP_NAME}] Pay Clover`,\n);\n","import { HttpClient, HttpErrorResponse } from \"@angular/common/http\";\nimport { Injectable } from \"@angular/core\";\nimport { MatDialog } from \"@angular/material/dialog\";\nimport { Actions, createEffect, ofType } from \"@ngrx/effects\";\nimport { Store } from \"@ngrx/store\";\nimport { PaymentCreditCardSubmitModel } from \"Portal/models/payment-credit-card-submit-model\";\nimport { CheckoutService } from \"Portal/services/checkout.service\";\nimport { BehaviorSubject, concat, EMPTY, merge, NEVER, Observable, of, timer } from \"rxjs\";\nimport { catchError, filter, map, switchMap, withLatestFrom } from \"rxjs/operators\";\nimport { RiskDeclinedComponent } from \"src/app/pages/ecom/risk-declined/risk-declined.component\";\nimport { IStore } from \"../store\";\nimport * as RetailActions from \"src/app/storage/retail/retail.actions\";\nimport { environment } from \"src/environments/environment\";\nimport { EmailModalComponent } from \"src/app/shared/email-modal/email-modal.component\";\nimport { selectSummary } from \"./retail.selectors\";\nimport { CloverScriptStatus, DEFAULT_CARD_RECORD, OperationType, RetailViewState, SubmittingViewStates } from \"./retail.state\";\nimport { PaymentSubmitResponse } from \"Portal/models/payment-submit-response\";\n\n@Injectable()\nexport class RetailEffects {\n\n constructor(\n private actions: Actions,\n private store: Store,\n private matDialog: MatDialog,\n private checkoutService: CheckoutService,\n private http: HttpClient,\n ) {}\n\n initializeRetail$ = createEffect(() => this.actions.pipe(\n ofType(RetailActions.InitializeRetailAction),\n switchMap(() => this.appendCloverSdk()),\n switchMap(sdkStatus => {\n\n const actions = [\n of(RetailActions.ExtendStateAction({\n newState: {\n cloverSdkStatus: sdkStatus,\n },\n }))\n ];\n\n if (sdkStatus === CloverScriptStatus.LOADED) {\n\n const trackingNumber = location.search.match(/trackingNumber=(.*)/)[1];\n\n if (!trackingNumber) {\n\n return EMPTY;\n }\n\n const loadSummary$ = this.checkoutService.checkoutGetPaymentSelectionModel(trackingNumber).pipe(\n switchMap(summary => {\n\n const disallowedTransaction = summary.isNotAllowed\n || summary.isTransactionPaid;\n\n const switchToNotAllowedOnTimeout$ = summary.sessionExpiredTime > 0 && !disallowedTransaction\n ? timer(summary.sessionExpiredTime * 1000).pipe(\n map(() => RetailActions.ExtendStateAction({\n newState: {\n retailViewState: RetailViewState.NOT_ALLOWED\n },\n }))\n )\n : EMPTY;\n\n return merge(\n of(RetailActions.ExtendStateAction({\n newState: {\n summary,\n retailViewState: disallowedTransaction\n ? RetailViewState.NOT_ALLOWED\n : RetailViewState.CARD,\n },\n })),\n switchToNotAllowedOnTimeout$,\n );\n })\n );\n\n actions.push(loadSummary$);\n }\n\n return concat(\n ...actions,\n );\n })\n ));\n\n payWithCreditCard$ = createEffect(() => this.actions.pipe(\n ofType(RetailActions.PayWithCreditCardAction),\n withLatestFrom(this.store.select(selectSummary)),\n switchMap(([action, summary]) => {\n\n if (action.data.operation === OperationType.StartPayment) {\n\n return of({\n submittingViewState: SubmittingViewStates.SUBMITTING,\n cardErrorMessage: null\n });\n }\n\n if (action.data.operation === OperationType.PaymentError) {\n\n return of({\n submittingViewState: null,\n cardErrorMessage: action.data.timeout\n ? \"We are unable to process your payment at this time, please try again later.\"\n : null\n });\n }\n\n if (action.data.operation === OperationType.CheckoutPayment) {\n\n const params: PaymentCreditCardSubmitModel = {\n cardFirst6: action.data.cardData.card.first6,\n cardHolderName: action.data.cardData.cardHolderName,\n cardLast4: action.data.cardData.card.last4,\n paymentToken: action.data.cardData.token,\n trackingNumber: summary.trackingNumber,\n };\n\n return this.checkoutService.checkoutPayCreditCard(params).pipe(\n switchMap(result => {\n\n if (result.isSuccess) {\n\n setTimeout(() => location.href = result.successRedirectUrl, 3000);\n return of({ submittingViewState: SubmittingViewStates.SUCCESS });\n }\n else {\n\n return concat(\n of({ submittingViewState: null, cardErrorMessage: result.errorMessage, cardRecord: DEFAULT_CARD_RECORD }),\n result.isRiskDeclined\n ? this.matDialog.open(RiskDeclinedComponent, {\n panelClass: \"risk-declined-modal\",\n maxWidth: \"990px\",\n autoFocus: false,\n }).afterClosed()\n : NEVER\n );\n }\n }),\n catchError((e: HttpErrorResponse) => of({\n submittingViewState: null,\n cardErrorMessage: e.error.errorMessage,\n cardRecord: DEFAULT_CARD_RECORD\n }))\n );\n }\n\n else {\n return NEVER;\n }\n\n }),\n map(newState => RetailActions.ExtendStateAction({ newState })),\n ));\n\n payClover$ = createEffect(() => this.actions.pipe(\n ofType(RetailActions.PayCloverAction),\n withLatestFrom(this.store.select(selectSummary)),\n switchMap(([, summary]) => {\n\n return this.http.post(summary.retailPayButtonUrl, summary.retailPaymentData);\n }),\n switchMap(result => {\n\n if (result.isSuccess) {\n\n setTimeout(() => location.href = result.successRedirectUrl, 3000);\n return of({ submittingViewState: SubmittingViewStates.SUCCESS });\n }\n else {\n\n return concat(\n of({ submittingViewState: null, cardErrorMessage: result.errorMessage, cardRecord: DEFAULT_CARD_RECORD }),\n result.isRiskDeclined\n ? this.matDialog.open(RiskDeclinedComponent, {\n panelClass: \"risk-declined-modal\",\n maxWidth: \"990px\",\n autoFocus: false,\n }).afterClosed()\n : NEVER\n );\n }\n }),\n map(newState => RetailActions.ExtendStateAction({ newState })),\n ));\n\n appendCloverSdk(): Observable {\n\n const scriptStatusChanged = new BehaviorSubject(CloverScriptStatus.LOADING);\n const scriptEl = document.querySelector(`script[src='${environment.cloverScriptUrl}']`)\n ?? this.createCloverSdkScriptEl();\n\n scriptEl.addEventListener(\"load\", () => { scriptStatusChanged.next(CloverScriptStatus.LOADED); });\n scriptEl.addEventListener(\"error\", () => { scriptStatusChanged.next(CloverScriptStatus.FAILED_TO_LOAD); });\n\n return scriptStatusChanged.pipe();\n }\n\n private createCloverSdkScriptEl(): HTMLElement {\n\n const scriptEl = document.createElement(\"script\");\n scriptEl.src = environment.cloverScriptUrl;\n document.body.appendChild(scriptEl);\n\n return scriptEl;\n }\n}\n","import { createReducer, on } from \"@ngrx/store\";\nimport { createRetailState } from \"./retail.state\";\nimport * as RetailActions from \"./retail.actions\";\n\nexport const RetailReducer = createReducer(\n createRetailState(),\n on(RetailActions.CardRecordChangeAction, (state, { cardRecord }) => ({ ...state, cardRecord })),\n on(RetailActions.ExtendStateAction, (state, { newState }) => ({ ...state, ...newState })),\n);\n","import { createSelector } from \"@ngrx/store\";\nimport { IStore } from \"../store\";\n\nexport const selectRetailState = (store: IStore) => store.retail;\n\nexport const selectView = createSelector(\n selectRetailState,\n state => state.retailViewState\n);\n\nexport const selectSummary = createSelector(\n selectRetailState,\n state => state.summary\n);\n\nexport const selectCardErrorMessage = createSelector(\n selectRetailState,\n state => state.cardErrorMessage\n);\n\nexport const selectCardRecordState = createSelector(\n selectRetailState,\n state => state.cardRecord\n);\n\nexport const selectSubmittingViewState = createSelector(\n selectRetailState,\n state => state.submittingViewState\n);\n","import { PaymentSelectionModel } from \"Portal/models/payment-selection-model\";\nimport { ReceiptModel } from \"Portal/models/receipt-model\";\n\nexport enum CloverScriptStatus {\n\n MISSING_ON_PAGE = \"MISSING_ON_PAGE\",\n LOADING = \"LOADING\",\n LOADED = \"LOADED\",\n FAILED_TO_LOAD = \"FAILED_TO_LOAD\",\n}\n\nexport enum CARD_FIELDS {\n\n CARD_NUMBER = \"CARD_NUMBER\",\n CARD_DATE = \"CARD_DATE\",\n CARD_CVV = \"CARD_CVV\",\n CARD_POSTAL_CODE = \"CARD_POSTAL_CODE\",\n}\n\nexport enum RetailViewState {\n CARD = \"CARD\",\n LOADING = \"LOADING\",\n NOT_ALLOWED = \"NOT_ALLOWED\",\n}\n\nexport enum RetailPaymentMethodEnum {\n CARD_PRESENT = \"CARD_PRESENT\",\n CARD_NOT_PRESENT = \"CARD_NOT_PRESENT\",\n}\n\nexport enum SubmittingViewStates {\n\n SUBMITTING = \"submitting\",\n SUCCESS = \"success\",\n}\n\ntype ValidationError = {\n touched: boolean,\n error: string,\n};\n\nexport type CloverResponseError = { [key in keyof any]: string };\nexport type CloverValidationError = { [key in keyof any]: ValidationError };\n\nexport interface CloverTokenResponse {\n\n card: {\n address_zip: string,\n brand: string,\n exp_month: string,\n exp_year: string,\n first6: string,\n last4: string,\n };\n token: string;\n cardHolderName: string;\n errors: CloverResponseError;\n}\n\nexport enum OperationType { StartPayment, CheckoutPayment, PaymentError };\n\nexport type PayWithCard = { operation: OperationType.StartPayment }\n | { operation: OperationType.CheckoutPayment, cardData: CloverTokenResponse }\n | { operation: OperationType.PaymentError, timeout: boolean };\n\nexport interface CardRecord {\n\n cardHolderName: string;\n accept?: boolean;\n}\n\nexport type RetailState = {\n\n submittingViewState: SubmittingViewStates;\n cloverSdkStatus: CloverScriptStatus;\n retailViewState: RetailViewState;\n summary?: PaymentSelectionModel;\n cardErrorMessage: string;\n cardRecord: CardRecord;\n};\n\nexport const DEFAULT_CARD_RECORD = { cardHolderName: \"\" };\n\nexport const createRetailState = () => {\n\n return {\n\n cloverSdkStatus: null,\n retailViewState: RetailViewState.CARD,\n cardRecord: DEFAULT_CARD_RECORD,\n summary: {},\n };\n};\n","// This file can be replaced during build by using the `fileReplacements` array.\n// `ng build --prod` replaces `environment.ts` with `environment.prod.ts`.\n// The list of file replacements can be found in `angular.json`.\n\nexport const environment = {\n production: true,\n apiRootUrl: \"\",\n cloverScriptUrl: \"https://checkout.clover.com/sdk.js\",\n appName: \"VituPay\",\n};\n\n/*\n * For easier debugging in development mode, you can import the following file\n * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`.\n *\n * This import should be commented out in production mode because it will have a negative impact\n * on performance if an error is thrown.\n */\n// import 'zone.js/plugins/zone-error'; // Included with Angular CLI.\n","import { enableProdMode } from \"@angular/core\";\nimport { platformBrowserDynamic } from \"@angular/platform-browser-dynamic\";\n\nimport { AppModule } from \"./app/app.module\";\nimport { environment } from \"./environments/environment\";\n\nif (environment.production) {\n enableProdMode();\n}\n\nplatformBrowserDynamic().bootstrapModule(AppModule)\n .catch(err => console.error(err));\n","/* (ignored) */","/* (ignored) */","/* (ignored) */","/* (ignored) */","/* (ignored) */","/* (ignored) */"],"names":["EventEmitter","SimpleChanges","CLOVER_STYLES","Validators","DOCUMENT","isEmpty","CARD_FIELDS","i0","CreditCardFormComponent","constructor","document","fb","parentForm","CARD_NUMBER","CARD_DATE","CARD_CVV","CARD_POSTAL_CODE","field","cloverFieldErrors","group","cardHolderName","required","maxLength","validateCardHolderName","accept","control","value","termsNotAccepted","customerEmail","email","Object","fromEntries","keys","cloverFields","map","i","cloverFieldValidator","cardForm","controls","touched","hasError","errors","record","patchValue","emitEvent","replace","length","ngOnInit","form","addControl","valueChanges","subscribe","recordChange","emit","ngOnDestroy","removeControl","ngOnChanges","changes","cardErrorMessage","currentValue","resetCloverForm","reset","ngAfterViewInit","clover","Clover","pakmsKey","setTimeout","renderCardFields","values","forEach","querySelector","firstChild","remove","elements","create","mount","addEventListener","error","onCloverFieldChange","onCloverFieldBlur","getTokenData","tokenData","createToken","filter","setErrors","markAsTouched","updateValueAndValidity","selectors","inputs","agencyFeeDescriptor","serviceFeeDescriptor","outputs","features","decls","vars","consts","template","PayPalInitErrorReason","PayPalOrderProcessIntent","PaymentType","PaymentService","OperationType","PaymentMethodEnum","HubConnectionBuilder","ctx_r1","ctx_r3","ctx_r4","PaymentFormComponent","CREDIT_CARD","summary","allowedPaymentTypes","every","CARD","paymentMethod","CHECK","hubConnection","withUrl","trackingNumber","build","start","on","location","href","failedRedirectUrl","amount","due","serviceFeeAmount","nsfFeeAmount","googlePayConfig","tid","rapidConnectTerminalId","processUrl","paymentCreateGooglePayPaymentPath","processParams","paymentSource","officeId","merchant","id","googlePayMerchantId","name","googlePayMerchantName","gateway","merchantId","googlePayGatewayMerchantId","serviceFee","percent","serviceFeeRate","useGooglePayTestEnvironment","isProduction","layout","minWidth","height","paddingLeft","paddingRight","paddingBottom","applePayConfig","paymentProcessApplePayPath","appleId","applePayId","validateUrl","paymentValidateApplePayPath","payPalConfig","payPalFundingSource","createOrderUrl","paymentCreatePayPalOrderPath","createOrderParams","captureOrderUrl","paymentCapturePayPalOrderPath","captureOrderParams","processOrderUrl","intent","Capture","venmoConfig","cardAndCheckAvailable","cardPresent","some","checkPresent","applePayAvailable","includes","googlePayAvailable","payPalAvailable","onError","FundingSourceNotEligible","cancelPay","cancelPayment","payCreditCard","payWithCreditCard","operation","StartPayment","result","creditCardForm","payload","PaymentError","timeout","CheckoutPayment","cardData","payECheck","payWithECheck","viewQuery","ctx","EcomActions","EcomSelectors","CloverScriptStatus","ViewStates","environment","_r17","PaymentPageComponent","store","title","select","selectSummary","selectECheckErrorMessage","selectCardErrorMessage","selectSubmittingViewState","selectViewState","selectECheckRecordState","selectCardRecordState","selectCloverSdkStatus","setTitle","appName","dispatch","InitializeEcomAction","data","PayWithCreditCardAction","PayWithECheckAction","payWithPaymentSystems","PayWithPaymentSystems","cardRecordChange","cardRecord","CardRecordChangeAction","eCheckRecordChange","eCheckRecord","ECheckRecordChangeAction","CancelPaymentAction","_r5","_r3","_r7","ReceiptActions","selectReceiptState","ViewState","_r4","_r6","ReceiptComponent","activatedRoute","snapshot","params","InitializeReceiptAction","printReceipt","window","print","sendReceiptEmail","SendReceiptEmailAction","RetailCreditCardFormComponent","MotoComponent","RetailSelectors","RetailActions","RetailViewState","PaymentComponent","selectView","InitializeRetailAction","payClover","PayCloverAction"],"sourceRoot":"webpack:///","x_google_ignoreList":[82,83,84,85,86,87]}