{"version":3,"file":"main.js","mappings":";;;;;;;;;;;;;;;;;AACsD;;;;;AAQ/C,MAAM,SAAS;IAEpB,YAAoB,WAAwB,EAAU,MAAc,EAAU,QAAyB;QAAnF,gBAAW,GAAX,WAAW,CAAa;QAAU,WAAM,GAAN,MAAM,CAAQ;QAAU,aAAQ,GAAR,QAAQ,CAAiB;IAAG,CAAC;IAC3G,WAAW;QACT,IAAI,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,EAAE;YAC/B,OAAO,IAAI,CAAC;SACb;QACD,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;QACnC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;QAChC,OAAO,KAAK,CAAC;IACf,CAAC;;kEAVU,SAAS;0GAAT,SAAS,WAAT,SAAS,mBAFR,MAAM;;;;;;;;;;;;;;;;;ACHb,MAAM,0BAA0B;IACnC,aAAa,CAAC,SAAsC;QAChD,IAAI,SAAS,CAAC,cAAc,CAAC,KAAK,EAAE;YAChC,OAAO,OAAO,CAAC,sEAAsE,CAAC,CAAC;SAC1F;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;;oGANQ,0BAA0B;2HAA1B,0BAA0B,WAA1B,0BAA0B;;;;;;;;;;;;;;;;;;ACGT;AAEO;;AAI9B,MAAM,mBAAmB;IADhC;QAEI,kIAAkI;QAClI,YAAO,GAAG,8DAA8D,CAAC;KA4C5E;IA1CU,SAAS,CAAC,GAAqB,EAAE,IAAiB;QACrD,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CACxB,mDAAG,CAAC,CAAC,KAAqB,EAAE,EAAE;YAC1B,IAAI,KAAK,YAAY,8DAAY,EAAE;gBAC/B,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC;gBACxB,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;aAC5B;QACL,CAAC,EAAE,CAAC,GAAQ,EAAE,EAAE;YACZ,IAAI,GAAG,YAAY,mEAAiB,EAAE;gBAClC,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG,EAAE;iBACvB;aACJ;QACL,CAAC,CAAC,CACL,CAAC;IACN,CAAC;IAED,aAAa,CAAC,IAAI;QACd,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,SAAS,EAAE;YACrC,OAAO,IAAI,CAAC;SACf;QAED,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE;YAC1B,OAAO,IAAI,CAAC;SACf;QAED,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;YACjC,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC;YACxB,IAAI,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE;gBACvB,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC;aAC/B;iBAAM,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;gBAClC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;aAC7B;SACJ;IACL,CAAC;IAED,SAAS,CAAC,KAAK;QACX,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS,EAAE;YACvC,OAAO,KAAK,CAAC;SAChB;QAED,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACpC,CAAC;;sFA7CQ,mBAAmB;oHAAnB,mBAAmB,WAAnB,mBAAmB;;;;;;;;;;;;;;;;;ACZ6B;AAC+B;;AAIrF,MAAM,mBAAmB;IAC5B,gBAAe,CAAC;IAEhB,SAAS,CAAC,GAAqB,EAAE,IAAiB;QAC9C,MAAM,OAAO,GAAG,GAAG,CAAC,KAAK,CAAC,8EAAuB,CAAC,CAAC;QACnD,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC;QACrC,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAChC,CAAC;;sFAPQ,mBAAmB;oHAAnB,mBAAmB,WAAnB,mBAAmB;;;;;;;;;;;;;;;;;;ACNhC,mCAAmC;AACsB;AACK;AAEA;AAG9D,qDAAqD;AAC9C,MAAM,wBAAwB,GAAG;IACtC,EAAE,OAAO,EAAE,mEAAiB,EAAE,QAAQ,EAAE,uEAAmB,EAAE,KAAK,EAAE,IAAI,EAAE;IAC1E,EAAE,OAAO,EAAE,mEAAiB,EAAE,QAAQ,EAAE,uEAAmB,EAAE,KAAK,EAAE,IAAI,EAAE;CAC3E,CAAC;;;;;;;;;;;;;;;ACJK,MAAM,eAAe;CAG3B;;;;;;;;;;;;;;;;;ACT2C;;AAKrC,MAAM,cAAe,SAAQ,sDAAW;IAE7C,SAAS,CAAC,KAAoB;QAC5B,OAAO,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;IAC3C,CAAC;;yQAJU,cAAc,SAAd,cAAc;yHAAd,cAAc;;;;;;;;;;;;;;;;;ACL3B;;;;;;;;EAQE;AAEK,MAAM,mBAAmB;IADhC;QAGI,mBAAc,GAAG,0BAA0B,CAAC;KA2B/C;IAzBG,SAAS,CAAC,KAAa;QAEnB,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS,EAAE;YACvC,OAAO,EAAE,CAAC;SACb;QAED,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC;YAChC,OAAO,KAAK,CAAC;QAEjB,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;YACtB,KAAK,GAAG,IAAI,GAAG,KAAK;SACvB;QACD,IAAI,UAAU,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC;QACjC,IAAI,OAAO,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;QAC5B,IAAI,QAAQ,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;QAE7B,IAAI,UAAU,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC;QACpC,IAAI,KAAK,GAAG,UAAU,CAAC,CAAC,CAAC;QACzB,IAAI,IAAI,GAAG,UAAU,CAAC,CAAC,CAAC;QACxB,IAAI,IAAI,GAAG,UAAU,CAAC,CAAC,CAAC;QAExB,IAAI,UAAU,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;QAE5D,OAAO,GAAG,UAAU,QAAQ,IAAI,OAAO;IAC3C,CAAC;;sFA5BQ,mBAAmB;sIAAnB,mBAAmB;;;;;;;;;;;;;;;;;;;;;;ACV0C;AAGpC;AACM;;;;;;AAIrC,MAAM,oBAAoB;IAI7B,YAAoB,aAA4B,EAAU,QAAyB,EACrE,KAAa,EAAU,eAAgC;QADjD,kBAAa,GAAb,aAAa,CAAe;QAAU,aAAQ,GAAR,QAAQ,CAAiB;QACrE,UAAK,GAAL,KAAK,CAAQ;QAAU,oBAAe,GAAf,eAAe,CAAiB;QAJrE,eAAU,GAAG,CAAC,CAAC;QACf,aAAQ,GAAG,EAAE,CAAC;IAG0D,CAAC;IACzE,OAAO,CAAC,KAA6B;QACjC,OAAO,IAAI,CAAC,eAAe,CAAC,qBAAqB,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,IAAI,CAClF,0DAAU,CAAE,KAAK,CAAC,EAAE;YAChB,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,iCAAiC,CAAC,CAAC;YACvD,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC;YACnC,OAAO,wCAAE,CAAC,IAAI,CAAC,CAAC;QACpB,CAAC,CAAC,CACL,CAAC;IAEN,CAAC;;wFAfQ,oBAAoB;qHAApB,oBAAoB,WAApB,oBAAoB;;;;;;;;;;;;;;;;;;;;;ACPyC;AAGpC;AACM;;;;;AAGrC,MAAM,oBAAoB;IAC7B,YAAoB,aAA4B,EACpC,MAAc,EAAU,eAAgC;QADhD,kBAAa,GAAb,aAAa,CAAe;QACpC,WAAM,GAAN,MAAM,CAAQ;QAAU,oBAAe,GAAf,eAAe,CAAiB;IAAG,CAAC;IAExE,OAAO,CAAC,KAA6B;QACjC,OAAO,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;aACtD,IAAI,CAAC,0DAAU,CAAC,KAAK,CAAC,EAAE;YACrB,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAClC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;YAClC,OAAO,wCAAE,CAAC,IAAI,CAAC,CAAC;QACpB,CAAC,CAAC,CAAC,CAAC;IACR,CAAC;;wFAXQ,oBAAoB;qHAApB,oBAAoB,WAApB,oBAAoB;;;;;;;;;;;;;;;;;;;;;ACPyC;AAGpC;AACM;;;;;AAIrC,MAAM,mBAAmB;IAC5B,YAAoB,aAA4B,EACpC,MAAc,EAAU,eAAgC;QADhD,kBAAa,GAAb,aAAa,CAAe;QACpC,WAAM,GAAN,MAAM,CAAQ;QAAU,oBAAe,GAAf,eAAe,CAAiB;IAAG,CAAC;IAExE,OAAO,CAAC,KAA6B;QACjC,OAAO,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;aAClF,IAAI,CACH,0DAAU,CAAC,KAAK,CAAC,EAAE;YACjB,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAClC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;YAClC,OAAO,wCAAE,CAAC,IAAI,CAAC,CAAC;QAClB,CAAC,CAAC,CACH,CAAC;IACR,CAAC;;sFAbQ,mBAAmB;oHAAnB,mBAAmB,WAAnB,mBAAmB;;;;;;;;;;;;;;;;;ACHzB,MAAM,eAAe;IAE5B,gBAAgB,CAAC;IAEf,OAAO,CAAC,OAAe,EAAE,UAAqB;QAE5C,QAAQ,CAAC,OAAO,CAAC,OAAO,EAAE,UAAU,CAAC;YACnC,IAAI,CAAC,EAAE;gBACL,UAAU,EAAE,CAAC;aACd;iBAAM,GAAE;QACX,CAAC,CAAC,CAAC,GAAG,CAAC,EAAC,OAAO,EAAC,cAAc,EAAC,CAAC,CAAC;IACnC,CAAC;IAED,OAAO,CAAC,OAAe;QACrB,QAAQ,CAAC,GAAG,CAAC,UAAU,EAAE,UAAU,EAAE,YAAY,CAAC,CAAC;QACnD,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAC5B,CAAC;IACD,KAAK,CAAC,OAAe;QACnB,QAAQ,CAAC,GAAG,CAAC,UAAU,EAAE,UAAU,EAAE,YAAY,CAAC,CAAC;QACjD,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAC5B,CAAC;IAED,OAAO,CAAC,OAAe;QACrB,QAAQ,CAAC,GAAG,CAAC,UAAU,EAAE,UAAU,EAAE,YAAY,CAAC,CAAC;QACjD,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAC9B,CAAC;IAED,OAAO,CAAC,OAAe;QACrB,QAAQ,CAAC,GAAG,CAAC,UAAU,EAAE,UAAU,EAAE,YAAY,CAAC,CAAC;QACjD,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAC9B,CAAC;;8EA9BU,eAAe;gHAAf,eAAe,WAAf,eAAe,mBAFd,MAAM;;;;;;;;;;;;;;;;;;;;;ACHoC;AACF;AACO;AACV;;;AAO5C,MAAM,WAAW;IAKtB,YAAoB,IAAgB;QAAhB,SAAI,GAAJ,IAAI,CAAY;QAJpC,YAAO,GAAG,yEAAkB,GAAG,OAAO,CAAC;QACvC,cAAS,GAAG,IAAI,gEAAgB,EAAE,CAAC;IAGI,CAAC;IAExC,KAAK,CAAC,KAAU;QACd,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,GAAG,OAAO,EAAE,KAAK,CAAC,CAAC,IAAI,CACvD,mDAAG,CAAC,CAAC,QAAa,EAAE,EAAE;YACpB,MAAM,IAAI,GAAG,QAAQ,CAAC;YACtB,IAAI,IAAI,EAAE;gBACR,YAAY,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;gBAC1C,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBAC3D,kCAAkC;aACnC;QACH,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;IACD;;;MAGE;IACF,QAAQ,CAAC,KAAU;QACjB,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,GAAG,UAAU,EAAE,KAAK,CAAC,CAAC;IAC1D,CAAC;IACD;;MAEE;IACF,QAAQ;QACN,MAAM,KAAK,GAAG,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAC5C,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;IACzE,CAAC;IACD;;MAEE;IACF,eAAe;QACb,MAAM,KAAK,GAAG,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAC5C,IAAI,KAAK,EAAE;YACT,MAAM,eAAe,GAAG,qEAA0B,CAAC,KAAK,CAAC,CAAC;YAC1D,IAAI,eAAe,CAAC,GAAG,IAAI,OAAO;gBAAE,OAAO,IAAI,CAAC;iBAC3C;gBACH,OAAO,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAC;gBAC9C,OAAO,KAAK,CAAC;aACd;SACF;QACD,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC;QACrC,OAAO,KAAK,CAAC;IACf,CAAC;IAED,WAAW;QACT,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAa,yEAAkB,GAAG,mBAAmB,CAAC,CAAC;IAC7E,CAAC;IAED,WAAW,CAAC,EAAW;QACrB,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAM,yEAAkB,GAAG,mBAAmB,GAAE,EAAE,CAAC,CAAC;IAC1E,CAAC;IAED,UAAU,CAAC,KAAU;QACnB,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,GAAG,YAAY,EAAE,KAAK,CAAC,CAAC;IAC5D,CAAC;;sEA5DU,WAAW;4GAAX,WAAW,WAAX,WAAW,mBAFV,MAAM;;;;;;;;;;;;;;;;;ACLb,MAAM,WAAW;IAEtB,gBAAgB,CAAC;IAEjB,OAAO,CAAC,KAAW;QACjB,IAAI,KAAK,IAAI,IAAI,EAAE;YACjB,OAAO,IAAI,CAAC;SACb;aAAM;YACL,MAAM,GAAG,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;YAChC,MAAM,GAAG,GAAG,KAAK,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;YACjC,MAAM,GAAG,GAAG,KAAK,CAAC,OAAO,EAAE,CAAC;YAE5B,MAAM,UAAU,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;YAC/C,OAAO,UAAU,CAAC;SACnB;IACH,CAAC;IAED,YAAY,CAAC,KAAW;QACtB,MAAM,OAAO,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC;QAChC,MAAM,EAAE,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;QAC7B,MAAM,EAAE,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;QAC9B,MAAM,IAAI,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;QACnC,MAAM,MAAM,GAAG,CAAC,SAAS,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM;YAClE,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,SAAS,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC;QAEtE,MAAM,UAAU,GAAG,MAAM,CAAC,EAAE,CAAC,GAAG,GAAG,GAAG,EAAE,GAAG,IAAI,GAAG,IAAI,CAAC;QACvD,OAAO,UAAU,CAAC;IACpB,CAAC;IAED,iBAAiB,CAAC,SAAe,EAAE,OAAa;QAC9C,MAAM,MAAM,GAAG,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC;QACnC,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,EAAE,CAAC;QAC/B,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;QAChC,MAAM,OAAO,GAAG,MAAM,CAAC,WAAW,EAAE,CAAC;QAErC,MAAM,MAAM,GAAG,IAAI,IAAI,CAAC,OAAO,CAAC,CAAC;QACjC,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,EAAE,CAAC;QAC/B,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;QAChC,MAAM,OAAO,GAAG,MAAM,CAAC,WAAW,EAAE,CAAC;QAErC,MAAM,MAAM,GAAG,CAAC,SAAS,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM;YAClE,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,SAAS,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC;QAEtE,IAAI,OAAO,KAAK,OAAO,EAAC;YACtB,IAAI,KAAK,KAAK,KAAK,EAAC;gBAClB,OAAO,MAAM,CAAC,KAAK,CAAC,GAAG,GAAG,GAAG,KAAK,GAAG,GAAG,GAAG,KAAK,GAAG,IAAI,GAAG,OAAO,CAAC;aACnE;iBAAI;gBACH,OAAO,MAAM,CAAC,KAAK,CAAC,GAAG,GAAG,GAAG,KAAK,GAAG,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,GAAG,GAAI,KAAK,GAAG,IAAI,GAAG,OAAO,CAAC;aAC1F;SACF;aAAI;YACH,OAAO,MAAM,CAAC,KAAK,CAAC,GAAG,GAAG,GAAG,KAAK,GAAE,IAAI,GAAG,OAAO,GAAG,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,GAAG,GAAG,KAAK,GAAG,IAAI,GAAG,OAAO,CAAC;SACzG;IACH,CAAC;IACD,sBAAsB;QACpB,MAAM,KAAK,GAAG,IAAI,IAAI,EAAE,CAAC;QACzB,MAAM,EAAE,GAAG,KAAK,CAAC,OAAO,EAAE,CAAC;QAC3B,MAAM,EAAE,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC;QAC5B,MAAM,IAAI,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;QACjC,MAAM,MAAM,GAAG,CAAC,SAAS,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM;YAClE,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,SAAS,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC;QAEtE,MAAM,UAAU,GAAG,MAAM,CAAC,EAAE,CAAC,GAAG,GAAG,GAAG,EAAE,GAAG,IAAI,GAAG,IAAI,CAAC;QACvD,OAAO,UAAU,CAAC;IACpB,CAAC;;sEA/DU,WAAW;4GAAX,WAAW,WAAX,WAAW,mBAFV,MAAM;;;;;;;;;;;;;;;;;;;;;ACFuD;AAChB;AAEd;AAGW;;;;AASjD,MAAM,eAAe;IAE1B,4CAA4C;IAC5C,+CAA+C;IAE/C,YAAoB,IAAgB,EAAU,QAAyB;QAAnD,SAAI,GAAJ,IAAI,CAAY;QAAU,aAAQ,GAAR,QAAQ,CAAiB;QAJvE,YAAO,GAAG,4EAAkB,CAAC;IAI6C,CAAC;IAE3E,QAAQ,CAAC,UAAkB;QACzB,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,GAAG,oBAAoB,GAAG,UAAU,EAAC;YACpE,YAAY,EAAG,MAAM;YACrB,OAAO,EAAE,IAAI,6DAAW,EAAE,CAAC,MAAM,CAAC,cAAc,EAAE,kBAAkB,CAAC;SACtE,CAAC,CAAC;IACL,CAAC;IACD,wCAAwC;IACxC,iGAAiG;IACjG,mFAAmF;IACnF,IAAI;IACJ,uFAAuF;IACvF,iGAAiG;IACjG,IAAI;IACJ,0FAA0F;IAC1F,qGAAqG;IACrG,IAAI;IACJ,2FAA2F;IAC3F,sGAAsG;IACtG,IAAI;IACJ,gFAAgF;IAChF,qGAAqG;IACrG,IAAI;IAEJ,8CAA8C;IAC9C,mCAAmC,CAAC,EAAU,EAAE,KAA0B;QACxE,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,GAAG,iDAAiD,GAAG,EAAE,EAAE,KAAK,EAAE;YAClG,YAAY,EAAG,MAAM;YACrB,OAAO,EAAE,IAAI,6DAAW,EAAE,CAAC,MAAM,CAAC,cAAc,EAAE,kBAAkB,CAAC;SACtE,CAAC,CAAC;IACL,CAAC;IACD,0BAA0B,CAAC,EAAU,EAAE,KAAyB;QAC9D,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,GAAG,6BAA6B,GAAG,EAAE,EAAE,KAAK,EAAE;YAC9E,YAAY,EAAG,MAAM;YACrB,OAAO,EAAE,IAAI,6DAAW,EAAE,CAAC,MAAM,CAAC,cAAc,EAAE,kBAAkB,CAAC;SACtE,CAAC,CAAC;IACL,CAAC;IACD,6BAA6B,CAAC,EAAU,EAAE,KAAyB;QACjE,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,GAAG,iCAAiC,GAAG,EAAE,EAAE,KAAK,EAAE;YAClF,YAAY,EAAG,MAAM;YACrB,OAAO,EAAE,IAAI,6DAAW,EAAE,CAAC,MAAM,CAAC,cAAc,EAAE,kBAAkB,CAAC;SACtE,CAAC,CAAC;IACL,CAAC;IACD,8BAA8B,CAAC,EAAU,EAAE,KAAyB;QAClE,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,GAAG,kCAAkC,GAAG,EAAE,EAAE,KAAK,EAAE;YACnF,YAAY,EAAG,MAAM;YACrB,OAAO,EAAE,IAAI,6DAAW,EAAE,CAAC,MAAM,CAAC,cAAc,EAAE,kBAAkB,CAAC;SACtE,CAAC,CAAC;IACL,CAAC;IACD,mBAAmB,CAAC,EAAU,EAAE,KAAyB;QACvD,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,GAAG,iCAAiC,GAAG,EAAE,EAAE,KAAK,EAAE;YAClF,YAAY,EAAG,MAAM;YACrB,OAAO,EAAE,IAAI,6DAAW,EAAE,CAAC,MAAM,CAAC,cAAc,EAAE,kBAAkB,CAAC;SACtE,CAAC,CAAC;IACL,CAAC;IAED,oBAAoB,CAAC,KAAe;QAClC,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,GAAG,yBAAyB,EAAE,KAAK,EAAE;YACrE,YAAY,EAAG,MAAM;YACrB,OAAO,EAAE,IAAI,6DAAW,EAAE,CAAC,MAAM,CAAC,cAAc,EAAE,kBAAkB,CAAC;SACtE,CAAC,CAAC;IACL,CAAC;IAED,qBAAqB,CAAC,IAAK,EAAE,YAAa,EAAE,YAAa,EAAE,oBAAqB,EAC5E,WAAY,EAAE,UAAW,EAAE,SAAU,EAAE,OAAQ;QAEjD,MAAM,eAAe,GAAgC,IAAI,+DAAe,EAAc,CAAC;QAEvF,IAAI,MAAM,GAAG,IAAI,4DAAU,EAAE,CAAC;QAE9B,IAAI,IAAI,IAAI,IAAI,IAAI,YAAY,IAAI,IAAI,EAAE;YACxC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;YAC3C,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;SAClD;QAED,IAAI,YAAY,IAAI,IAAI,EAAE;YACxB,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,cAAc,EAAE,YAAY,CAAC,CAAC;SACtD;QACD,IAAI,oBAAoB,IAAI,IAAI,EAAE;YAChC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,sBAAsB,EAAE,oBAAoB,CAAC,CAAC;SACtE;QACD,IAAI,WAAW,IAAI,IAAI,EAAE;YACvB,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,aAAa,EAAE,WAAW,CAAC,CAAC;SACpD;QACD,IAAI,UAAU,IAAI,IAAI,EAAE;YACtB,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;SAClD;QACD,IAAI,SAAS,IAAI,IAAI,IAAI,OAAO,IAAI,IAAI,EAAE;YACxC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;YAC/C,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;SAC5C;QAED,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAa,IAAI,CAAC,OAAO,GAAG,iBAAiB,EAAE,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC;aAClG,IAAI,CACH,mDAAG,CAAC,QAAQ,CAAC,EAAE;YACb,eAAe,CAAC,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC;YACvC,IAAI,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,IAAI,IAAI,EAAE;gBAC5C,eAAe,CAAC,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC;aAC/E;YACD,OAAO,eAAe,CAAC;QACzB,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;;8EA5GU,eAAe;gHAAf,eAAe,WAAf,eAAe,mBAFd,MAAM;;;;;;;;;;;;;;;;;;;ACbuC;;;;AAQpD,MAAM,sBAAsB;IAEnC,YACU,IAAgB,EACf,QAAyB;QAD1B,SAAI,GAAJ,IAAI,CAAY;QACf,aAAQ,GAAR,QAAQ,CAAiB;QAHlC,YAAO,GAAG,4EAAkB,CAAC;IAGS,CAAC;IAEtC,kBAAkB,CAAC,EAAU;QAC3B,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAM,qDAAqD,GAAG,EAAE,GAAG,KAAK,CAAC,CAAC;IAChG,CAAC;;4FARS,sBAAsB;uHAAtB,sBAAsB,WAAtB,sBAAsB,mBAFrB,MAAM;;;;;;;;;;;;;;;;;;;;;ACNyC;AACc;AAYnB;AACnB;AAqBc;;;AAK5C,MAAM,aAAa;IAExB,YAAoB,IAAgB;QAAhB,SAAI,GAAJ,IAAI,CAAY;QADpC,YAAO,GAAG,yEAAkB,CAAC;IACW,CAAC;IAEzC,aAAa;IACb,UAAU,CAAC,IAAK,EAAE,YAAa,EAAE,UAAW,EAAE,YAAa,EAAE,UAAW,EAAE,WAAY,EAAE,SAAU,EAAE,OAAQ,EACxG,QAAS,EAAE,MAAO,EAAE,WAAY;QAElC,MAAM,eAAe,GAA8B,IAAI,+DAAe,EAAY,CAAC;QAEnF,IAAI,MAAM,GAAG,IAAI,4DAAU,EAAE,CAAC;QAE9B,IAAI,IAAI,IAAI,IAAI,IAAI,YAAY,IAAI,IAAI,EAAE;YACxC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;YAC3C,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;SAClD;QACD,IAAI,UAAU,IAAI,IAAI,EAAE;YACtB,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;SAClD;QACD,IAAI,YAAY,IAAI,IAAI,EAAE;YACxB,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,cAAc,EAAE,YAAY,CAAC,CAAC;SACtD;QACD,IAAI,UAAU,IAAI,IAAI,EAAE;YACtB,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;SAClD;QACD,IAAI,WAAW,IAAI,IAAI,EAAE;YACvB,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,aAAa,EAAE,WAAW,CAAC,CAAC;SACpD;QACD,IAAI,SAAS,IAAI,IAAI,IAAI,OAAO,IAAI,IAAI,EAAE;YACxC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;YAC/C,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;SAC5C;QACD,IAAI,QAAQ,IAAI,IAAI,EAAE;YACpB,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;SAC9C;QACD,IAAI,MAAM,IAAI,IAAI,EAAE;YAClB,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;SAC3C;QACD,IAAI,WAAW,IAAI,IAAI,EAAE;YACvB,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,aAAa,EAAE,WAAW,CAAC,CAAC;SACpD;QAED,OAAO,IAAI,CAAC,IAAI;aACb,GAAG,CAAW,IAAI,CAAC,OAAO,GAAG,SAAS,EAAE,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC;aACxE,IAAI,CACH,mDAAG,CAAC,QAAQ,CAAC,EAAE;YACb,eAAe,CAAC,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC;YACvC,IAAI,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,IAAI,IAAI,EAAE;gBAC9C,eAAe,CAAC,UAAU,GAAG,IAAI,CAAC,KAAK,CACrC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,CACnC,CAAC;aACH;YACD,OAAO,eAAe,CAAC;QACzB,CAAC,CAAC,CACH,CAAC;IACN,CAAC;IAED,iBAAiB;QACf,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAW,IAAI,CAAC,OAAO,GAAG,gBAAgB,CAAC,CAAC;IAClE,CAAC;IACD,aAAa;QACX,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAW,IAAI,CAAC,OAAO,GAAG,aAAa,CAAC,CAAC;IAC/D,CAAC;IAED,SAAS,CAAC,EAAE;QACX,IAAI,CAAC,eAAe,EAAE,CAAC;QACtB,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAS,IAAI,CAAC,OAAO,GAAG,UAAU,GAAG,EAAE,CAAC,CAAC;IAC/D,CAAC;IACD,qBAAqB,CAAC,IAAK,EAAE,YAAa,EAAE,UAAW,EAAE,YAAa,EAAE,UAAW,EAAE,WAAY,EAAE,SAAU,EAAE,OAAQ;QAErH,MAAM,eAAe,GAA8B,IAAI,+DAAe,EAAY,CAAC;QACnF,IAAI,MAAM,GAAG,IAAI,4DAAU,EAAE,CAAC;QAE9B,IAAI,IAAI,IAAI,IAAI,IAAI,YAAY,IAAI,IAAI,EAAE;YACxC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;YAC3C,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;SAClD;QACD,IAAI,UAAU,IAAI,IAAI,EAAE;YACtB,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;SAClD;QACD,IAAI,YAAY,IAAI,IAAI,EAAE;YACxB,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,cAAc,EAAE,YAAY,CAAC,CAAC;SACtD;QACD,IAAI,UAAU,IAAI,IAAI,EAAE;YACtB,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;SAClD;QACD,IAAI,WAAW,IAAI,IAAI,EAAE;YACvB,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,aAAa,EAAE,WAAW,CAAC,CAAC;SACpD;QACD,IAAI,SAAS,IAAI,IAAI,IAAI,OAAO,IAAI,IAAI,EAAE;YACxC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;YAC/C,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;SAC5C;QACD,6BAA6B;QAC7B,wDAAwD;QACxD,IAAI;QAEJ,uEAAuE;QAEvE,OAAO,IAAI,CAAC,IAAI;aACb,GAAG,CAAW,IAAI,CAAC,OAAO,GAAG,oBAAoB,EAAE,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC;aACnF,IAAI,CACH,mDAAG,CAAC,QAAQ,CAAC,EAAE;YACb,eAAe,CAAC,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC;YACvC,IAAI,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,IAAI,IAAI,EAAE;gBAC9C,eAAe,CAAC,UAAU,GAAG,IAAI,CAAC,KAAK,CACrC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,CACnC,CAAC;aACH;YACD,OAAO,eAAe,CAAC;QACzB,CAAC,CAAC,CACH,CAAC;IACN,CAAC;IACD,wBAAwB,CAAC,OAAe;QACtC,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAe,IAAI,CAAC,OAAO,GAAG,qBAAqB,GAAG,kBAAkB,CAAC,OAAO,CAAC,CAAC,CAAC;IACzG,CAAC;IACD,eAAe;QACb,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAiB,IAAI,CAAC,OAAO,GAAG,eAAe,CAAC,CAAC;IACvE,CAAC;IACD,OAAO;QACL,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAQ,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,CAAC;IACrD,CAAC;IACD,cAAc,CAAC,EAAE;QACf,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAQ,IAAI,CAAC,OAAO,GAAG,MAAM,GAAG,EAAE,CAAC,CAAC;IAC1D,CAAC;IAED,YAAY;QACV,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAa,IAAI,CAAC,OAAO,GAAG,YAAY,CAAC,CAAC;IAChE,CAAC;IAED,WAAW;QACT,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAY,IAAI,CAAC,OAAO,GAAG,WAAW,CAAC,CAAC;IAC9D,CAAC;IACD,qBAAqB;QACnB,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAY,IAAI,CAAC,OAAO,GAAG,iCAAiC,CAAC,CAAC;IACpF,CAAC;IACD,UAAU;QACR,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAW,IAAI,CAAC,OAAO,GAAG,SAAS,CAAC,CAAC;IAC3D,CAAC;IACD,qBAAqB,CAAC,EAAE;QACtB,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAW,IAAI,CAAC,OAAO,GAAG,kBAAkB,GAAG,EAAE,CAAC,CAAC;IACzE,CAAC;IACD,oBAAoB,CAAC,EAAE;QACrB,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAc,IAAI,CAAC,OAAO,GAAG,mBAAmB,GAAG,EAAE,CAAC,CAAC;IAC7E,CAAC;IACD,aAAa,CAAC,KAAK;QACjB,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAW,IAAI,CAAC,OAAO,GAAG,aAAa,GAAG,KAAK,CAAC,CAAC;IACvE,CAAC;IACD,qBAAqB,CAAC,KAAK,EAAE,QAAQ;QACnC,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAClB,IAAI,CAAC,OAAO,GAAG,gBAAgB,GAAG,KAAK,GAAG,UAAU,GAAG,QAAQ,CAChE,CAAC;IACJ,CAAC;IACD,aAAa;QACX,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAc,IAAI,CAAC,OAAO,GAAG,YAAY,CAAC,CAAC;IACjE,CAAC;IACD,YAAY;QACV,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAc,IAAI,CAAC,OAAO,GAAG,YAAY,CAAC,CAAC;IACjE,CAAC;IACD,YAAY;QACV,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAc,IAAI,CAAC,OAAO,GAAG,YAAY,CAAC,CAAC;IACjE,CAAC;IACD,eAAe;QACb,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAgB,IAAI,CAAC,OAAO,GAAG,cAAc,CAAC,CAAC;IACrE,CAAC;IACD,aAAa;QACX,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAc,IAAI,CAAC,OAAO,GAAG,aAAa,CAAC,CAAC;IAClE,CAAC;IACD,aAAa;QACX,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAW,IAAI,CAAC,OAAO,GAAG,SAAS,CAAC,CAAC;IAC3D,CAAC;IACD,iBAAiB;QACf,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAe,IAAI,CAAC,OAAO,GAAG,aAAa,CAAC,CAAC;IACnE,CAAC;IACD,uBAAuB;QACrB,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAClB,IAAI,CAAC,OAAO,GAAG,mBAAmB,CACnC,CAAC;IACJ,CAAC;IACD,QAAQ;QACN,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAS,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,CAAC;IACvD,CAAC;IACD,UAAU;QACR,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAW,IAAI,CAAC,OAAO,GAAG,SAAS,CAAC,CAAC;IAC3D,CAAC;IACD,eAAe;QACb,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAgB,IAAI,CAAC,OAAO,GAAG,cAAc,CAAC,CAAC;IACrE,CAAC;IAED,aAAa,CAAC,IAAK,EAAE,YAAa,EAAE,UAAW,EAAE,YAAa,EAAE,UAAW,EAAE,WAAY,EAAE,QAAS;QAClG,MAAM,eAAe,GAAiC,IAAI,+DAAe,EAAe,CAAC;QACzF,IAAI,MAAM,GAAG,IAAI,4DAAU,EAAE,CAAC;QAE9B,IAAI,IAAI,IAAI,IAAI,IAAI,YAAY,IAAI,IAAI,EAAE;YACxC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;YAC3C,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;SAClD;QACD,IAAI,UAAU,IAAI,IAAI,EAAE;YACtB,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;SAClD;QACD,IAAI,YAAY,IAAI,IAAI,EAAE;YACxB,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,cAAc,EAAE,YAAY,CAAC,CAAC;SACtD;QACD,IAAI,UAAU,IAAI,IAAI,EAAE;YACtB,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;SAClD;QACD,IAAI,WAAW,IAAI,IAAI,EAAE;YACvB,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,aAAa,EAAE,WAAW,CAAC,CAAC;SACpD;QACD,IAAI,QAAQ,IAAI,IAAI,EAAE;YACpB,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;SAC9C;QAED,OAAO,IAAI,CAAC,IAAI;aACb,GAAG,CAAc,IAAI,CAAC,OAAO,GAAG,wBAAwB,EAAE,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC;aAC1F,IAAI,CACH,mDAAG,CAAC,QAAQ,CAAC,EAAE;YACb,eAAe,CAAC,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC;YACvC,IAAI,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,IAAI,IAAI,EAAE;gBAC9C,eAAe,CAAC,UAAU,GAAG,IAAI,CAAC,KAAK,CACrC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,CACnC,CAAC;aACH;YACD,OAAO,eAAe,CAAC;QACzB,CAAC,CAAC,CACH,CAAC;IACN,CAAC;IAED,kBAAkB;QAChB,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAoB,IAAI,CAAC,OAAO,GAAG,kBAAkB,CAAC,CAAC;IAC7E,CAAC;IACD,cAAc,CAAC,EAAE;QACf,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAClB,IAAI,CAAC,OAAO,GAAG,aAAa,GAAG,EAAE,GAAG,SAAS,CAC9C,CAAC;IACJ,CAAC;IACD,aAAa,CAAC,QAAQ,EAAE,aAAa;QACnC,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAClB,IAAI,CAAC,OAAO;YACZ,aAAa;YACb,QAAQ;YACR,UAAU;YACV,aAAa;YACb,OAAO,CACR,CAAC;IACJ,CAAC;IAED,cAAc,CAAC,EAAE;QACf,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAgB,IAAI,CAAC,OAAO,GAAG,cAAc,GAAG,EAAE,CAAC,CAAC;IAC1E,CAAC;IACD,kBAAkB,CAAC,EAAE;QACnB,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAa,IAAI,CAAC,OAAO,GAAG,kBAAkB,GAAG,EAAE,CAAC,CAAC;IAC3E,CAAC;IACD,gBAAgB,CAAC,EAAE;QACjB,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAU,IAAI,CAAC,OAAO,GAAG,cAAc,GAAG,EAAE,CAAC,CAAC;IACpE,CAAC;IACD,cAAc,CAAC,EAAE;QACf,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAc,IAAI,CAAC,OAAO,GAAG,cAAc,GAAG,EAAE,CAAC,CAAC;IACxE,CAAC;IACD,sBAAsB,CAAC,EAAE;QACvB,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAY,IAAI,CAAC,OAAO,GAAG,oBAAoB,GAAG,EAAE,CAAC,CAAC;IAC5E,CAAC;IACD,YAAY,CAAC,EAAE;QACb,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAY,IAAI,CAAC,OAAO,GAAG,aAAa,GAAG,EAAE,CAAC,CAAC;IACrE,CAAC;IACD,iCAAiC,CAC/B,QAAQ;QAER,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAClB,IAAI,CAAC,OAAO,GAAG,6BAA6B,GAAG,QAAQ,CACxD,CAAC;IACJ,CAAC;IACD,2BAA2B;QACzB,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAClB,IAAI,CAAC,OAAO,GAAG,0BAA0B,CAC1C,CAAC;IACJ,CAAC;IACD,mBAAmB;QACjB,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAqB,IAAI,CAAC,OAAO,GAAG,kBAAkB,CAAC,CAAC;IAC9E,CAAC;IACD,UAAU;QACR,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAM,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,CAAC;IACpD,CAAC;IACD,QAAQ;QACN,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAQ,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC,CAAC;IACpD,CAAC;IACD,oBAAoB;QAClB,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAS,IAAI,CAAC,OAAO,GAAG,kBAAkB,CAAC,CAAC;IAClE,CAAC;IACD,0BAA0B;QACxB,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAS,IAAI,CAAC,OAAO,GAAG,qBAAqB,CAAC,CAAC;IACrE,CAAC;IAED,WAAW;QACT,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAS,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,CAAC;IACtD,CAAC;IAED,gBAAgB,CAAC,IAAK,EAAE,YAAa,EAAC,MAAO;QAC3C,MAAM,eAAe,GAA4B,IAAI,+DAAe,EAAU,CAAC;QAC/E,IAAI,MAAM,GAAG,IAAI,4DAAU,EAAE,CAAC;QAE9B,IAAI,IAAI,IAAI,IAAI,IAAI,YAAY,IAAI,IAAI,EAAE;YACxC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;YAC3C,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;SAClD;QACD,IAAI,MAAM,IAAI,IAAI,EAAE;YAClB,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;SAC1C;QAED,OAAO,IAAI,CAAC,IAAI;aACb,GAAG,CAAS,IAAI,CAAC,OAAO,GAAG,YAAY,EAAE,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC;aACzE,IAAI,CACH,mDAAG,CAAC,QAAQ,CAAC,EAAE;YACb,eAAe,CAAC,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC;YACvC,IAAI,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,IAAI,IAAI,EAAE;gBAC9C,eAAe,CAAC,UAAU,GAAG,IAAI,CAAC,KAAK,CACrC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,CACnC,CAAC;aACH;YACD,OAAO,eAAe,CAAC;QACzB,CAAC,CAAC,CACH,CAAC;IACN,CAAC;IAED,iBAAiB,CAAC,EAAU;QAC1B,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAQ,IAAI,CAAC,OAAO,GAAG,eAAe,GAAG,EAAE,CAAC,CAAC;IACnE,CAAC;IAED,aAAa,CAAC,KAAU;QACtB,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAM,IAAI,CAAC,OAAO,GAAG,YAAY,EAAE,KAAK,CAAC,CAAC;IACjE,CAAC;IACD,YAAY,CAAC,KAAU;QACrB,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAM,IAAI,CAAC,OAAO,GAAG,eAAe,EAAE,KAAK,CAAC,CAAC;IACpE,CAAC;IACD,uBAAuB,CAAC,EAAE,EAAE,MAAM;QAChC,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAO,IAAI,CAAC,OAAO,GAAG,WAAW,GAAG,EAAE,GAAG,UAAU,GAAG,MAAM,CAAC,CAAC;IACpF,CAAC;IACD,0BAA0B,CAAC,EAAE,EAAE,KAAK;QAClC,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAS,IAAI,CAAC,OAAO,GAAG,UAAU,GAAG,EAAE,GAAG,UAAU,GAAG,KAAK,GAAG,eAAe,CAAC,CAAC;IACtG,CAAC;IACD,kBAAkB,CAAC,EAAE,EAAE,SAAS;QAC9B,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAS,IAAI,CAAC,OAAO,GAAG,UAAU,GAAG,EAAE,GAAG,UAAU,GAAG,SAAS,GAAG,MAAM,CAAC,CAAC;IACjG,CAAC;IACD,yBAAyB,CAAC,EAAE,EAAE,OAAO,EAAE,MAAM;QAC3C,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAS,IAAI,CAAC,OAAO,GAAG,UAAU,GAAG,EAAE,GAAG,UAAU,GAAG,OAAO,GAAG,QAAQ,GAAG,MAAM,GAAG,UAAU,CAAC,CAAC;IACvH,CAAC;IACD;;MAEE;IACF,YAAY,CAAC,KAAU,EAAE,EAAE;QACzB,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CACnB,IAAI,CAAC,OAAO,GAAG,iBAAiB,GAAG,EAAE,GAAG,QAAQ,EAChD,KAAK,CACN,CAAC;IACJ,CAAC;IACD,eAAe,CAAC,KAAU;QACxB,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CACnB,IAAI,CAAC,OAAO,GAAG,oBAAoB,EACnC,KAAK,CACN,CAAC;IACJ,CAAC;IACD,aAAa,CAAC,KAAU;QACtB,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAM,IAAI,CAAC,OAAO,GAAG,oBAAoB,EAAE,KAAK,CAAC,CAAC;IACzE,CAAC;IACD,cAAc,CAAC,KAAU;QACvB,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAM,IAAI,CAAC,OAAO,GAAG,WAAW,EAAE,KAAK,CAAC,CAAC;IAChE,CAAC;IACD,YAAY,CAAC,KAAU;QACrB,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAM,IAAI,CAAC,OAAO,GAAG,QAAQ,EAAE,KAAK,CAAC,CAAC;IAC7D,CAAC;IACD,eAAe,CAAC,KAAU;QACxB,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAM,IAAI,CAAC,OAAO,GAAG,WAAW,EAAE,KAAK,CAAC,CAAC;IAChE,CAAC;IACD,eAAe,CAAC,KAAU;QACxB,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAM,IAAI,CAAC,OAAO,GAAG,WAAW,EAAE,KAAK,CAAC,CAAC;IAChE,CAAC;IACD,eAAe,CAAC,KAAU;QACxB,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAM,IAAI,CAAC,OAAO,GAAG,YAAY,EAAE,KAAK,CAAC,CAAC;IACjE,CAAC;IACD,iBAAiB,CAAC,KAAU;QAC1B,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAM,IAAI,CAAC,OAAO,GAAG,aAAa,EAAE,KAAK,CAAC,CAAC;IAClE,CAAC;IACD,iBAAiB,CAAC,KAAU;QAC1B,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAM,IAAI,CAAC,OAAO,GAAG,aAAa,EAAE,KAAK,CAAC,CAAC;IAClE,CAAC;IACD,kBAAkB,CAAC,KAAU;QAC3B,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAM,IAAI,CAAC,OAAO,GAAG,cAAc,EAAE,KAAK,CAAC,CAAC;IACnE,CAAC;IACD,8BAA8B,CAAC,KAAU;QACvC,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CACnB,IAAI,CAAC,OAAO,GAAG,iCAAiC,EAChD,KAAK,CACN,CAAC;IACJ,CAAC;IACD,sBAAsB,CAAC,KAAU;QAC/B,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAM,IAAI,CAAC,OAAO,GAAG,yBAAyB,EAAE,KAAK,CAAC,CAAC;IAC9E,CAAC;IACD,yBAAyB,CAAC,KAAU;QAClC,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAM,IAAI,CAAC,OAAO,GAAG,gBAAgB,EAAE,KAAK,CAAC,CAAC;IACrE,CAAC;IACD,0BAA0B,CAAC,KAAU;QACnC,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CACnB,IAAI,CAAC,OAAO,GAAG,0BAA0B,EACzC,KAAK,CACN,CAAC;IACJ,CAAC;IACD,eAAe,CAAC,KAAU;QACxB,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAM,IAAI,CAAC,OAAO,GAAG,YAAY,EAAE,KAAK,CAAC,CAAC;IACjE,CAAC;IACD,WAAW,CAAC,KAAU;QACpB,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CACnB,IAAI,CAAC,OAAO,GAAG,mBAAmB,EAClC,KAAK,CACN,CAAC;IACJ,CAAC;IACD,yBAAyB,CAAC,KAAU;QAClC,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAM,IAAI,CAAC,OAAO,GAAG,YAAY,EAAE,KAAK,CAAC,CAAC;IACjE,CAAC;IACD,YAAY,CAAC,KAAU;QACrB,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAM,IAAI,CAAC,OAAO,GAAG,UAAU,EAAE,KAAK,CAAC,CAAC;IAC/D,CAAC;IACD,YAAY,CAAC,EAAU,EAAE,KAAU;QACjC,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,GAAG,UAAU,GAAG,EAAE,EAAE,KAAK,CAAC,CAAC;IAC9D,CAAC;IACD,sDAAsD;IACtD,sBAAsB,CAAC,KAAU;QAC/B,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,GAAG,yBAAyB,EAAE,KAAK,CAAC,CAAC;IACxE,CAAC;IAED,iBAAiB,CAAC,KAAU;QAC1B,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,GAAG,oBAAoB,EAAE,KAAK,CAAC,CAAC;IACpE,CAAC;IACD,qBAAqB,CACnB,WAAmB,EACnB,QAAgB,EAChB,KAAU;QAEV,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAClB,IAAI,CAAC,OAAO,GAAG,YAAY,GAAG,WAAW,GAAG,UAAU,GAAG,QAAQ,EACjE,KAAK,CACN,CAAC;IACJ,CAAC;IAED,qBAAqB,CAAC,EAAU,EAAE,MAAc;QAC9C,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAS,IAAI,CAAC,OAAO,GAAG,UAAU,GAAG,EAAE,GAAG,kBAAkB,GAAG,MAAM,CAAC,CAAC;IAC7F,CAAC;IACD,UAAU,CAAC,EAAU;QACnB,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,CAAM,IAAI,CAAC,OAAO,GAAG,OAAO,GAAG,EAAE,CAAC,CAAC;IAC5D,CAAC;IACD,kBAAkB,CAAC,EAAU;QAC3B,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,CAAM,IAAI,CAAC,OAAO,GAAG,eAAe,GAAG,EAAE,CAAC,CAAC;IACpE,CAAC;IACD,YAAY,CAAC,EAAU;QACrB,MAAM,KAAK,GAAG,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAC5C,MAAM,OAAO,GAAG,IAAI,6DAAW,CAAC;YAC9B,eAAe,EAAE,SAAS,GAAG,KAAK;SACnC,CAAC,CAAC;QACH,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,CAAM,IAAI,CAAC,OAAO,GAAG,uBAAuB,GAAG,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;IACzF,CAAC;IAED,iBAAiB,CAAC,KAAU;QAC1B,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAM,IAAI,CAAC,OAAO,GAAG,cAAc,EAAE,KAAK,CAAC,CAAC;IACnE,CAAC;IAED,sBAAsB,CAAC,EAAU;QAC/B,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,CAAM,IAAI,CAAC,OAAO,GAAG,cAAc,GAAG,EAAE,CAAC,CAAC;IACnE,CAAC;IAED,oBAAoB,CAAC,EAAU;QAC7B,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAM,IAAI,CAAC,OAAO,GAAG,cAAc,GAAG,EAAE,CAAC,CAAC;IAChE,CAAC;IAED,iBAAiB,CAAC,EAAU,EAAE,KAAU;QACtC,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,GAAG,cAAc,GAAG,EAAE,EAAE,KAAK,CAAC,CAAC;IAClE,CAAC;IAED,4BAA4B,CAAC,IAAK,EAAE,YAAa,EAAE,UAAW,EAAE,YAAa,EAAE,UAAW,EAAE,WAAY;QACtG,MAAM,eAAe,GAAmC,IAAI,+DAAe,EAAiB,CAAC;QAC7F,IAAI,MAAM,GAAG,IAAI,4DAAU,EAAE,CAAC;QAE9B,IAAI,IAAI,IAAI,IAAI,IAAI,YAAY,IAAI,IAAI,EAAE;YACxC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;YAC3C,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;SAClD;QACD,IAAI,UAAU,IAAI,IAAI,EAAE;YACtB,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;SAClD;QACD,IAAI,YAAY,IAAI,IAAI,EAAE;YACxB,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,cAAc,EAAE,YAAY,CAAC,CAAC;SACtD;QACD,IAAI,UAAU,IAAI,IAAI,EAAE;YACtB,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;SAClD;QACD,IAAI,WAAW,IAAI,IAAI,EAAE;YACvB,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,aAAa,EAAE,WAAW,CAAC,CAAC;SACpD;QAGD,OAAO,IAAI,CAAC,IAAI;aACb,GAAG,CAAgB,IAAI,CAAC,OAAO,GAAG,0BAA0B,EAAE,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC;aAC9F,IAAI,CACH,mDAAG,CAAC,QAAQ,CAAC,EAAE;YACb,eAAe,CAAC,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC;YACvC,IAAI,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,IAAI,IAAI,EAAE;gBAC9C,eAAe,CAAC,UAAU,GAAG,IAAI,CAAC,KAAK,CACrC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,CACnC,CAAC;aACH;YACD,OAAO,eAAe,CAAC;QACzB,CAAC,CAAC,CACH,CAAC;IACN,CAAC;IAED,eAAe;QACb,MAAM,KAAK,GAAG,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAC5C,IAAI,KAAK,EAAE;YACT,MAAM,eAAe,GAAG,qEAA0B,CAAC,KAAK,CAAC,CAAC;YAC1D,IAAI,eAAe,CAAC,GAAG,IAAI,OAAO;gBAAE,OAAO,IAAI,CAAC;iBAC3C;gBACH,OAAO,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAC;gBAC9C,OAAO,KAAK,CAAC;aACd;SACF;QACD,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC;QACrC,OAAO,KAAK,CAAC;IACf,CAAC;;0EA7gBU,aAAa;8GAAb,aAAa,WAAb,aAAa,mBAFZ,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IEtClB,0EAAyD;IACvD;IAAA,0EAAwB;IACtB;IAAA,6EAA6F;IAArC,uWAAS,8FAA0B,KAAC;IAAC,uDAA6B;;IAAA,4DAAS;IACrI;IAAA,4DAAM;IACR;IAAA,4DAAM;;;IAF2F,0DAA6B;IAA7B,kJAA6B;;;;IAM9H,0EAA+C;IAC7C;IAAA,0EAAwB;IACtB;IAAA,6EAAqF;IAA3B,kWAAS,oFAAgB,KAAC;IAAC,uDAAwB;;IAAA,4DAAS;IACxH;IAAA,4DAAM;IACR;IAAA,4DAAM;;;IAFmF,0DAAwB;IAAxB,6IAAwB;;;;IAMjH,0EAAqD;IACnD;IAAA,0EAAwB;IACtB;IAAA,6EAA4F;IAAjC,yWAAS,4FAAsB,KAAC;IAAC,uDAA2B;;IAAA,4DAAS;IAClI;IAAA,4DAAM;IACR;IAAA,4DAAM;;;IAF0F,0DAA2B;IAA3B,iJAA2B;;;IA+BvH,yEAA6H;IAC1H,uDACD;IAAA,2EAA6C;IAAA,uDAAoD;;IAAA,4DAAO;IAC1G;IAAA,4DAAK;;;IAFF,0DACD;IADC,iIACD;IAA6C,0DAAoD;IAApD,8KAAoD;;;ADpClG,MAAM,0BAA0B;IAcrC,YACU,YAA4B,EAC5B,aAA4B,EAC5B,QAAyB,EACzB,KAAa,EACb,WAAwB;QAJxB,iBAAY,GAAZ,YAAY,CAAgB;QAC5B,kBAAa,GAAb,aAAa,CAAe;QAC5B,aAAQ,GAAR,QAAQ,CAAiB;QACzB,UAAK,GAAL,KAAK,CAAQ;QACb,gBAAW,GAAX,WAAW,CAAa;QATlC,WAAM,GAAG,KAAK,CAAC;QACf,cAAS,GAAG,KAAK,CAAC;QAClB,UAAK,GAAQ,EAAE,CAAC;IAQb,CAAC;IAEJ,QAAQ;QACN,IAAI,CAAC,iBAAiB,GAAG,YAAY,CAAC;QACtC,IAAI,CAAC,aAAa,EAAE,CAAC;IACvB,CAAC;IACD,aAAa;QACX,IAAI,CAAC,aAAa,CAAC,YAAY,EAAE,CAAC,SAAS,CACzC,CAAC,SAAqB,EAAE,EAAE;YACxB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC7B,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CACF,CAAC;IACJ,CAAC;IACD,WAAW,CAAC,KAAK;QACf,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,SAAS,CAC/C,CAAC,OAAiB,EAAE,EAAE;YACpB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACzB,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CACF,CAAC;IACJ,CAAC;IACD,sBAAsB,CAAC,KAAK,EAAE,QAAQ;QACpC,IAAI,CAAC,aAAa;aACf,qBAAqB,CAAC,KAAK,EAAE,QAAQ,CAAC;aACtC,SAAS,CACR,CAAC,iBAA8B,EAAE,EAAE;YACjC,IAAI,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;YAC3C,uCAAuC;QACzC,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CACF,CAAC;IACN,CAAC;IACD,QAAQ,CAAC,EAAE;QACT,IAAI,CAAC,aAAa,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC,SAAS,CAC7C,CAAC,IAAW,EAAE,EAAE;YACd,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACnB,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CACF,CAAC;IACJ,CAAC;IACD,gBAAgB,CAAC,CAAC;QAChB,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QACpB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;QACnB,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IACjB,CAAC;IACD,WAAW,CAAC,CAAC;QACX,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QACf,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,EAAE,CAAC;QACxB,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QACvB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC1B,CAAC;IACD,cAAc,CAAC,CAAC;QACd,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACtB,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;QACpD,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,CAAC,CAAC,EAAE,CAAC;QAC3B,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,MAAM,CAAC;QACzD,2BAA2B;IAC7B,CAAC;IACD,cAAc;QACZ,IAAI,CAAC,KAAK,CAAC,gBAAgB,GAAG,IAAI,CAAC,cAAc,CAAC;QAClD,IAAI,CAAC,KAAK,CAAC,iBAAiB,GAAG,IAAI,CAAC,iBAAiB,CAAC;QACtD,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACxB,IAAI,CAAC,aAAa,CAAC,yBAAyB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,SAAS,CAChE,GAAG,EAAE;YACH,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,iCAAiC,CAAC,CAAC;QAC3D,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAC;QACrD,CAAC,CACF,CAAC;QACF,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACxC,sEAAsE;IACxE,CAAC;;oGArGU,0BAA0B;wHAA1B,0BAA0B;QChBvC,yEAAsB;QACpB;QAAA,sHAIM;QACR;QAAA,4DAAM;QACN;QAAA,gEAAI;QACJ;QAAA,yEAAqC;QACnC;QAAA,sHAIM;QACR;QAAA,4DAAM;QACN;QAAA,iEAAI;QACJ;QAAA,0EAAqC;QACnC;QAAA,wHAIM;QACR;QAAA,4DAAM;QACN;QAAA,iEAAI;QAEJ;QAAA,0EAAsB;QACpB;QAMA;QAAA,0EAAsB;QACpB;QAAA,0EAAiB;QACf;QAAA,0EAAsB;QACpB;QAAA,yEAAO;QAAA,2EAAe;QAAA,4DAAQ;QAC9B;QAAA,4EACwB;QADgB,uMAA4B;QAApE,4DACwB;QAC1B;QAAA,4DAAM;QACN;QAAA,0EAAsB;QACpB;QAAA,yEAAO;QAAA,8EAAkB;QAAA,4DAAQ;QACjC;QAAA,4EAAyH;QAAjF,0MAA+B;QAAvE,4DAAyH;QAC3H;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAAA,0EAA2B;QACzB;QAAA,6EAA2F;QAA3B,mJAAS,oBAAgB,IAAC;QAAC,gEAAI;QAAA,4DAAS;QAC1G;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAAA,2EAAsB;QACpB;QAAA,0EAAuB;QACrB;QAAA,uHAGK;QACP;QAAA,4DAAK;QACP;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;;QAxD4B,0DAAY;QAAZ,kFAAY;QAQjB,0DAAO;QAAP,6EAAO;QAQJ,0DAAU;QAAV,gFAAU;QAmBY,2DAA4B;QAA5B,uFAA4B;QAK5B,0DAA+B;QAA/B,0FAA+B;QAIjE,0DAAuB;QAAvB,oFAAuB;QAKF,0DAAoB;QAApB,0FAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACzChD,MAAM,kBAAkB;IAE7B,YAAsB,WAAwB,EACpC,QAAyB,EACzB,KAAa;QAFD,gBAAW,GAAX,WAAW,CAAa;QACpC,aAAQ,GAAR,QAAQ,CAAiB;QACzB,UAAK,GAAL,KAAK,CAAQ;IAGvB,CAAC;IAED,QAAQ;QAEN,IAAI,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;QAC7E,IAAG,CAAC,QAAQ,EAAC;YACX,OAAO,CAAC,GAAG,CAAC,0CAA0C,CAAC,CAAC;YACxD,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,0CAA0C,CAAC,CAAC;YAChE,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC;SACtC;IACH,CAAC;;oFAjBU,kBAAkB;gHAAlB,kBAAkB;QCT/B,yEAAuB;QACnB;QAAA,wEAAiB;QAAA,yEAAc;QAAA,4DAAK;QACpC;QAAA,wEAA4B;QAC1B;QAAA,wEAA4B;QAC1B;QAAA,uEAAY;QAAA,gEAAI;QAAA,4DAAI;QACtB;QAAA,4DAAK;QACL;QAAA,yEAA4B;QAC1B;QAAA,wEAAY;QAAA,mEAAO;QAAA,4DAAI;QACzB;QAAA,4DAAK;QACL;QAAA,yEAAmC;QAAA,oEAAQ;QAAA,4DAAK;QAClD;QAAA,4DAAK;QACL;QAAA,0EAAkB;QACd;QAAA,0EAAQ;QACN;QAAA,0EAA8B;QAC5B;QAAA,6EAAiC;QACnC;QAAA,4DAAM;QACN;QAAA,0EAAwB;QACtB;QAAA,qFAAiD;QACnD;QAAA,4DAAM;QACN;QAAA,0EAA8B;QAC5B;QAAA,sFAAmD;QACrD;QAAA,4DAAM;QACN;QAAA,2EAAsB;QAAA,2EAAe;QAAA,4DAAM;QAC7C;QAAA,4DAAS;QACb;QAAA,4DAAM;QACV;QAAA,4DAAM;;;;;;;;;;;;;;;;;;;;;;;;;ACzByD;;;;;;;;;;;ICc7C,wEAAwI;IACpI,uDACA;;IAAA,2EAA4C;IAAA,mEAA2B;IAAC,kEAAM;IAAA,4DAAO;IAC7F;IAAA,4DAAI;;;IAFI,0DACA;IADA,4MACA;;;;IAiBhB,yEAAyC;IACrC;IACA;IAAA,0EAAkB;IAChB;IAAA,0EAAyB;IACvB,uDACF;IAAA,4DAAM;IACN;IAAA,0EAAuB;IACrB;IAAA,qEAAG;IAAA,wDAA8B;IAAA,4DAAI;IACrC;IAAA,qEAAG;IAAA,wDAAgC;IAAA,4DAAI;IACvC;IAAA,qEAAG;IAAA,wDAA6C;IAAA,4DAAI;IACtD;IAAA,4DAAM;IACN;IAAA,2EAAyB;IACvB;IAAA,2EAA8B;IAC1B;IAAA,8EAAoG;IAA5F,oXAAS,2FAAwC,KAAC;IAA0C,kEAAM;IAAA,4DAAS;IACnH;IAAA,8EAAgF;IAAxE,0SAAS,oFAAkB,KAAC;IAA4C,iEAAK;IAAA,4DAAS;IAClG;IAAA,4DAAM;IACR;IAAA,4DAAM;IACR;IAAA,4DAAM;IACV;IAAA,4DAAM;;;IAdE,0DACF;IADE,oJACF;IAEK,0DAA8B;IAA9B,2GAA8B;IAC9B,0DAAgC;IAAhC,6GAAgC;IAChC,0DAA6C;IAA7C,0KAA6C;;;;IAuBtD,yEAA4C;IACxC;IACA;IAAA,0EAAkB;IAChB;IAAA,0EAAyB;IACvB,uDACF;IAAA,4DAAM;IACN;IAAA,0EAAuB;IACrB;IAAA,qEAAG;IAAA,wDAAiC;IAAA,4DAAI;IACxC;IAAA,qEAAG;IAAA,wDAAyC;IAAA,4DAAI;IAChD;IAAA,qEAAG;IAAA,wDAA2C;IAAA,4DAAI;IACpD;IAAA,4DAAM;IACN;IAAA,2EAAyB;IACvB;IAAA,2EAA8B;IAC1B;IAAA,8EAAwG;IAAlF,sXAAS,4FAA2C,KAAC;IAA6B,kEAAM;IAAA,4DAAS;IACvH;IAAA,8EAAmD;IAAA,iEAAK;IAAA,4DAAS;IACrE;IAAA,4DAAM;IACR;IAAA,4DAAM;IACR;IAAA,4DAAM;IACV;IAAA,4DAAM;;;IAdE,0DACF;IADE,wJACF;IAEK,0DAAiC;IAAjC,8GAAiC;IACjC,0DAAyC;IAAzC,sHAAyC;IACzC,0DAA2C;IAA3C,wKAA2C;;;IAqC5C,6EAAmE;IAAA,uDAAiB;IAAA,4DAAS;;;IAAlD,6FAAuB;IAAC,0DAAiB;IAAjB,kFAAiB;;;IAMpF,6EAAoD;IAAA,uDAAY;IAAA,4DAAS;;;IAAxC,wFAAkB;IAAC,0DAAY;IAAZ,6EAAY;;;;IA5B9E;IAAA,0EAA0B;IACxB;IAAA,yEAAkC;IAAA,wEAAa;IAAA,4DAAK;IACpD;IAAA,6EAA4F;IAA1B,kTAAS,iFAAe,KAAC;IACzF;IAAA,2EAAyB;IAAA,iEAAO;IAAA,4DAAO;IACzC;IAAA,4DAAS;IACX;IAAA,4DAAM;IACN;IAAA,2EAAwB;IACtB;IAAA,kFAAiC;IAC/B;IAAA,4EAAU;IACN;IAAA,2EAAwB;IACpB;IAAA,6EAEC;IADD,wUAAa,2FAAuB,IAAP;IAD7B,4DAEC;IACH;IAAA,4DAAM;IACN;IAAA,2EAAwB;IACpB;IAAA,6EAEC;IADD,wUAAa,4FAAwB,IAAP;IAD9B,4DAEC;IACL;IAAA,4DAAM;IACN;IAAA,2EAAwB;IACpB;IAAA,8EACS;IADwC,yUAAa,iGAC3E,IADiG;IAEpF;IAAA,6IAA6F;IAC/F;IAAA,4DAAS;IACX;IAAA,4DAAM;IACN;IAAA,2EAAwB;IACpB;IAAA,8EACS;IADmC,yUAAa,4FACtE,IADuF;IAE1E;IAAA,6IAAyE;IAC3E;IAAA,4DAAS;IACX;IAAA,4DAAM;IACZ;IAAA,4DAAW;IACb;IAAA,4DAAO;IACT;IAAA,4DAAM;IACN;IAAA,2EAA0B;IACxB;IAAA,2EAA8B;IAC1B;IAAA,8EAAqF;IAA7E,mTAAS,2FAAyB,KAAC;IAA0C,gEAAI;IAAA,4DAAS;IAClG;IAAA,8EAAqF;IAA7E,mTAAS,yFAAuB,KAAC;IAA4C,iEAAK;IAAA,4DAAS;IACvG;IAAA,4DAAM;IACR;IAAA,4DAAM;IACR;;;IA7Bc,2DAA6B;IAA7B,2FAA6B;IAK3B,0DAA8B;IAA9B,4FAA8B;IAImB,0DAAmC;IAAnC,iGAAmC;IAEvD,0DAAY;IAAZ,qFAAY;IAIG,0DAA8B;IAA9B,4FAA8B;IAElD,0DAAO;IAAP,gFAAO;;;IAqC7B,6EAA6D;IAAA,uDAAe;IAAA,4DAAS;;;IAA9C,2FAAqB;IAAC,0DAAe;IAAf,gFAAe;;;;IAtB1F;IAAA,0EAA0B;IACxB;IAAA,yEAAkC;IAAA,2EAAgB;IAAA,4DAAK;IACvD;IAAA,6EAA4F;IAA1B,kTAAS,iFAAe,KAAC;IACzF;IAAA,2EAAyB;IAAA,iEAAO;IAAA,4DAAO;IACzC;IAAA,4DAAS;IACX;IAAA,4DAAM;IACN;IAAA,2EAAwB;IACtB;IAAA,kFAAiC;IAC/B;IAAA,4EAAU;IACN;IAAA,2EAAwB;IACpB;IAAA,6EAEC;IADD,wUAAa,8FAA0B,IAAP;IADhC,4DAEC;IACH;IAAA,4DAAM;IACN;IAAA,2EAAwB;IACpB;IAAA,6EAEC;IADD,wUAAa,qGAAiC,IAAP;IADvC,4DAEC;IACL;IAAA,4DAAM;IACN;IAAA,2EAAwB;IACpB;IAAA,8EACS;IAD0C,yUAAa,kGAC/E,IADsG;IAEvF;IAAA,6IAAqF;IACvF;IAAA,4DAAS;IACX;IAAA,4DAAM;IACN;IAMN;IAAA,4DAAW;IACb;IAAA,4DAAO;IACT;IAAA,4DAAM;IACN;IAAA,2EAA0B;IACxB;IAAA,2EAA8B;IAC1B;IAAA,8EAAwF;IAAhF,mTAAS,8FAA4B,KAAC;IAA0C,gEAAI;IAAA,4DAAS;IACrG;IAAA,8EAAqF;IAA7E,mTAAS,yFAAuB,KAAC;IAA4C,iEAAK;IAAA,4DAAS;IACvG;IAAA,4DAAM;IACR;IAAA,4DAAM;IACR;;;IA7Bc,2DAAgC;IAAhC,8FAAgC;IAK9B,0DAAuC;IAAvC,qGAAuC;IAIY,0DAAoC;IAApC,kGAAoC;IAE5D,0DAAU;IAAV,mFAAU;;ADxIlD,MAAM,yBAAyB;IAuCpC,YACU,YAA4B,EAC5B,aAA4B,EAC5B,QAAyB,EACzB,KAAa,EACb,WAAwB;QAJxB,iBAAY,GAAZ,YAAY,CAAgB;QAC5B,kBAAa,GAAb,aAAa,CAAe;QAC5B,aAAQ,GAAR,QAAQ,CAAiB;QACzB,UAAK,GAAL,KAAK,CAAQ;QACb,gBAAW,GAAX,WAAW,CAAa;QA3ClC,uBAAkB,GAAQ;YACxB;gBACE,IAAI,EAAE,QAAQ;aACf;YACD;gBACE,IAAI,EAAE,UAAU;aACjB;SACF,CAAC;QAGF,UAAK,GAAQ,EAAE,CAAC;QAGhB,mBAAc,GAAQ,EAAE,CAAC;QAEzB,sBAAiB,GAAQ,EAAE,CAAC;QAI5B,eAAU,GAAG,KAAK,CAAC;QACnB,kBAAa,GAAG,KAAK,CAAC;QAMf,eAAU,GAAQ;YACvB,IAAI,EAAE,IAAI;YACV,KAAK,EAAE,IAAI;YACX,KAAK,EAAE,IAAI;YACX,UAAU,EAAE,IAAI;SACjB,CAAC;QACK,kBAAa,GAAQ;YAC1B,IAAI,EAAE,IAAI;YACV,WAAW,EAAE,IAAI;YACjB,QAAQ,EAAE,IAAI;SACf,CAAC;IAQC,CAAC;IAEJ,QAAQ;QACN,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,IAAI,CAAC,cAAc,EAAE,CAAC;QACtB,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,IAAI,CAAC,YAAY,EAAE,CAAC;QACpB,IAAI,CAAC,QAAQ,EAAE,CAAC;IAClB,CAAC;IAED,cAAc,CAAC,eAAe;QAC5B,IAAI,eAAe,IAAI,IAAI,EAAE;YAC3B,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,eAAe,CAAC;YAClC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAEhC,IAAI,CAAC,aAAa,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,SAAS,CACrD,GAAG,EAAE;gBACH,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,+BAA+B,CAAC,CAAC;YACzD,CAAC,EACD,KAAK,CAAC,EAAE;gBACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC;YACnD,CAAC,CACF,CAAC;YAEF,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;YAC7B,IAAI,CAAC,eAAe,GAAG,EAAE,CAAC;SAC3B;IACH,CAAC;IAED,aAAa;QACX,IAAI,CAAC,aAAa,CAAC,YAAY,EAAE,CAAC,SAAS,CACzC,CAAC,SAAqB,EAAE,EAAE;YACxB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;YAC3B,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC9B,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CACF,CAAC;IACJ,CAAC;IACD,cAAc;QACZ,IAAI,CAAC,aAAa,CAAC,aAAa,EAAE,CAAC,SAAS,CAC1C,CAAC,UAAuB,EAAE,EAAE;YAC1B,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC/B,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CACF,CAAC;IACJ,CAAC;IACD,YAAY;QACV,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,CAAC,SAAS,CACxC,CAAC,QAAmB,EAAE,EAAE;YACtB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QAC3B,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CACF,CAAC;IACJ,CAAC;IACD,WAAW;QACT,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,CAAC,SAAS,CACvC,CAAC,OAAiB,EAAE,EAAE;YACpB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACzB,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CACF,CAAC;IACJ,CAAC;IACD,QAAQ;QACN,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,CAAC,SAAS,CACpC,CAAC,IAAW,EAAE,EAAE;YACd,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACnB,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CACF,CAAC;IACJ,CAAC;IACD,cAAc,CAAC,KAAqB;QAClC,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC,IAAI,CAAC;QACjC,IAAI,CAAC,UAAU,CAAC,EAAE,GAAG,IAAI,CAAC,cAAc,CAAC,EAAE,CAAC;QAC5C,IAAI,CAAC,UAAU,CAAC,IAAI,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC;QAChD,IAAI,CAAC,UAAU,CAAC,KAAK,GAAG,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC;QAClD,IAAI,CAAC,UAAU,CAAC,KAAK,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC;QACpD,IAAI,CAAC,UAAU,CAAC,UAAU,GAAG,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,EAAE,CAAC;QAC9D,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,IAAI,CAAC;QACvD,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QACvB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAC/B,CAAC;IACD,iBAAiB,CAAC,KAAqB;QACrC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACxB,IAAI,CAAC,iBAAiB,GAAG,KAAK,CAAC,IAAI,CAAC;QACpC,IAAI,CAAC,aAAa,CAAC,IAAI,GAAG,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC;QACtD,IAAI,CAAC,aAAa,CAAC,WAAW,GAAG,IAAI,CAAC,iBAAiB,CAAC,WAAW,CAAC;QACpE,IAAI,CAAC,aAAa,CAAC,QAAQ,GAAG,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC;QAC9D,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QAChC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;IAC5B,CAAC;IACD,gBAAgB;QACd,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;QACxB,IAAI,CAAC,cAAc,GAAG,EAAE,CAAC;IAC3B,CAAC;IACD,qBAAqB,CAAC,QAA0B;QAC9C,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACnD,CAAC;IACD,qBAAqB;QACnB,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;IACvB,CAAC;IACD,uBAAuB;QACrB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAC7B,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,SAAS,CACxD,GAAG,EAAE;YACH,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC;YAC3C,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YACrB,IAAI,CAAC,WAAW,EAAE,CAAC;YACnB,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;YACxB,IAAI,CAAC,UAAU,CAAC,IAAI,GAAG,IAAI,CAAC;QAC9B,CAAC,EAAE,KAAK,CAAC,EAAE;YACT,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CACF,CAAC;IACJ,CAAC;IACD,0BAA0B;QACxB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAClC,CAAC;;kGA3KU,yBAAyB;uHAAzB,yBAAyB;QClBtC,yEAAkB;QAChB;QAAA,yEAAiB;QACf;QAAA,yEAAsB;QAClB;QAAA,yEAAiB;QACf;QAAA,yEAAyB;QACrB;QAAA,4EACsG;QAArG,uMAA6B,qGAAuC,uCAA+B,IAAtE;QAD9B,4DACsG;QACrG;QAAA,0EAAgC;QAC7B;QAAA,6EAAuE;QAA1C,kJAAS,uCAA+B,IAAC;QAAE,iEAAI;QAAA,4DAAS;QACxF;QAAA,4DAAM;QACX;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAAA,0EAAsB;QACpB;QAAA,0EAAwB;QAChB;QAAA,mHAGA;QAEN;QAAA,4DAAM;QACV;QAAA,4DAAM;QACV;QAAA,4DAAM;QACN;QAAA,2EAA2B;QACzB;QAAA,0EAAiB;QACf;QAAA,0EAAyB;QACrB;QAAA,6EAKqB;QALd,sMAA4B,uHAGd,0BAAsB,IAHR;QAAnC,4DAKqB;QACzB;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAAA,yHAkBM;QACR;QAAA,4DAAM;QAEN;QAAA,2EAA2B;QACvB;QAAA,0EAAiB;QACf;QAAA,0EAAyB;QACrB;QAAA,6EAKqB;QALd,qMAA2B,uHAGb,6BAAyB,IAHZ;QAAlC,4DAKqB;QACzB;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAAA,yHAkBM;QACR;QAAA,4DAAM;QACV;QAAA,4DAAM;QACR;QAAA,4DAAM;QAEN;QAAA,qNAyCgB;QAEd;QAAA,qNAyCgB;QAClB;;QAvKe,2DAA6B;QAA7B,wFAA6B;QAQD,2DAAY;QAAZ,kFAAY;QAWpC,2DAA4B;QAA5B,uFAA4B;QAQnC,0DAAgB;QAAhB,gFAAgB;QAwBP,0DAA2B;QAA3B,sFAA2B;QAQlC,0DAAmB;QAAnB,mFAAmB;;;;;;;;;;;;;;;;;;;;;;;;;ACjE8B;;;;;;;;;;;ICa7D,yEAA4C;IAC1C;IAAA,0EAAiB;IACf;IAAA,0EAAiB;IACf;IAAA,qEAAuB;IACvB;IAAA,qEAAuB;IACvB;IAAA,sEAAuB;IACvB;IAAA,sEAAuB;IACvB;IAAA,sEAAuB;IACvB;IAAA,sEAAuB;IACvB;IAAA,sEAAuB;IACvB;IAAA,sEAAuB;IACvB;IAAA,sEAA0B;IAC5B;IAAA,4DAAM;IACR;IAAA,4DAAM;IACR;IAAA,4DAAM;;;;IAYA,qEAA+C;IAC7C;IAAA,yEAAgB;IAAA,uDAAS;IAAA,4DAAK;IAC9B;IAAA,qEAAI;IAAA,uDAA8B;;IAAA,4DAAK;IACvC;IAAA,qEAAI;IAAA,wDAA0B;;IAAA,4DAAK;IACnC;IAAA,sEAAI;IACF;IAAA,4EAAkG;IAAtD,kbAAS,mGAA2C,KAAC;IAAC,oEAA2B;IAAC,mEAAM;IAAA,4DAAO;IAC3I;IAAA,4EAAoF;IAA1C,kbAAS,iGAA+B,KAAC;IAAC,oEAA0B;IAAC,iEAAI;IAAA,4DAAO;IAC5H;IAAA,4DAAK;IACP;IAAA,4DAAK;;;;IAPa,0DAAS;IAAT,0EAAS;IACrB,0DAA8B;IAA9B,6KAA8B;IAC9B,0DAA0B;IAA1B,0KAA0B;;;IAbpC,4EAAuD;IACrD;IAAA,wEAAO;IACL;IAAA,yEAA0B;IACxB;IAAA,yEAAgB;IAAA,4DAAC;IAAA,4DAAK;IACtB;IAAA,yEAAgB;IAAA,qEAAS;IAAA,4DAAK;IAC9B;IAAA,0EAAgB;IAAA,gEAAI;IAAA,4DAAK;IACzB;IAAA,0EAAgB;IAAA,kEAAM;IAAA,4DAAK;IAC7B;IAAA,4DAAK;IACP;IAAA,4DAAQ;IACR;IAAA,yEAAO;IACL;IAAA,yHAQK;IACP;IAAA,4DAAQ;IACV;IAAA,4DAAQ;;;IAViB,2DAAc;IAAd,qFAAc;;;;IAYzC,0EAAuC;IACrC;IAAA,0EAAiD;IAC/C;IAAA,0EAAwC;IACtC;IAAA,iFAE4E;IAD1E,6TAAa,kGAA8B,IAAP,iQAAgB,qFAAmB,KAAnC;IAEtC;IAAA,4DAAa;IACf;IAAA,4DAAM;IACR;IAAA,4DAAM;IACR;IAAA,4DAAM;;;IANY,0DAAsB;IAAtB,+EAAsB;;;IAmC9B,6EAAmE;IAAA,uDAAiB;IAAA,4DAAS;;;IAAlD,6FAAuB;IAAC,0DAAiB;IAAjB,kFAAiB;;;;IAzB5F;IAAA,0EAA0B;IACxB;IAAA,yEAAkC;IAAA,uEAAY;IAAA,4DAAK;IACnD;IAAA,6EAA4F;IAA1B,2SAAS,iFAAe,KAAC;IACzF;IAAA,2EAAyB;IAAA,iEAAO;IAAA,4DAAO;IACzC;IAAA,4DAAS;IACX;IAAA,4DAAM;IACN;IAAA,kFAA8B;IAC5B;IAAA,2EAAwB;IACtB;IAAA,2EAAsB;IACpB;IAAA,6EACmC;IAD4B,iUAAa,6FACjF,IADmG;IAA9F,4DACmC;IACrC;IAAA,4DAAM;IACN;IAQC;IAAA,2EAA2B;IAC1B;IACA;IAAA,kFACgE;IAA9D,kUAAa,yFAAqB,IAAP;IAC3B;IAAA,8EAA2B;IAAA,yEAAa;IAAA,4DAAS;IACjD;IAAA,sIAA6F;IAC/F;IAAA,4DAAS;IACX;IAAA,4DAAM;IAEN;IAAA,2EAA2B;IACzB;IAAA,6EACmC;IADgC,iUAAa,6FACrF,IADuG;IAAlG,4DACmC;IACrC;IAAA,4DAAM;IACN;IAAA,2EAA2B;IACzB;IAAA,6EAC0C;IADiC,iUAAa,oGAC7F,IADsH;IAAjH,4DAC0C;IAC5C;IAAA,4DAAM;IACN;IAAA,2EAAyB;IACvB;IAAA,2EAA8B;IAC1B;IAAA,8EAC8B;IAA9B,4SAAS,qFAAmB,KAAC;IAAC,gEAAI;IAAA,4DAAS;IAC3C;IAAA,8EAC6B;IAA7B,4SAAS,oFAAkB,KAAC;IAAC,iEAAK;IAAA,4DAAS;IAC/C;IAAA,4DAAM;IACR;IAAA,4DAAM;IACR;IAAA,4DAAM;IACR;IAAA,4DAAO;IACT;;;;IAtCuE,2DAA+B;IAA/B,6FAA+B;IAc5F,0DAA2B;IAA3B,yFAA2B;IAEE,0DAAY;IAAZ,qFAAY;IAKwB,0DAA+B;IAA/B,6FAA+B;IAIvB,0DAAsC;IAAtC,oGAAsC;IAKvF,0DAAiC;IAAjC,iFAAiC;;;IA6BzD,6EAAmE;IAAA,uDAAiB;IAAA,4DAAS;;;IAAlD,6FAAuB;IAAC,0DAAiB;IAAjB,kFAAiB;;;;IAlB5F;IAAA,0EAA0B;IACxB;IAAA,yEAAkC;IAAA,oEAAS;IAAA,4DAAK;IAChD;IAAA,6EAA4F;IAA1B,2SAAS,iFAAe,KAAC;IACzF;IAAA,2EAAyB;IAAA,iEAAO;IAAA,4DAAO;IACzC;IAAA,4DAAS;IACX;IAAA,4DAAM;IACN;IAAA,kFAA8B;IAC5B;IAAA,2EAAwB;IACtB;IAAA,2EAAsB;IACpB;IAAA,6EACmC;IAD4B,iUAAa,6FACjF,IADmG;IAA9F,4DACmC;IACrC;IAAA,4DAAM;IAEL;IAAA,2EAA2B;IAC1B;IACA;IAAA,kFACgE;IAA9D,kUAAa,yFAAqB,IAAP;IAC3B;IAAA,8EAA2B;IAAA,yEAAa;IAAA,4DAAS;IACjD;IAAA,sIAA6F;IAC/F;IAAA,4DAAS;IACX;IAAA,4DAAM;IAEN;IAAA,2EAAyB;IACvB;IAAA,2EAA8B;IAC1B;IAAA,8EAC+B;IAA/B,4SAAS,sFAAoB,KAAC;IAAC,gEAAI;IAAA,4DAAS;IAC5C;IAAA,8EAC8B;IAA9B,4SAAS,qFAAmB,KAAC;IAAC,iEAAK;IAAA,4DAAS;IAChD;IAAA,4DAAM;IACR;IAAA,4DAAM;IACR;IAAA,4DAAM;IACR;IAAA,4DAAO;IACT;;;;IAvBuE,2DAA+B;IAA/B,6FAA+B;IAO5F,0DAA2B;IAA3B,yFAA2B;IAEE,0DAAY;IAAZ,qFAAY;IAMjB,0DAAiC;IAAjC,iFAAiC;;;;IAW/D;IAAA,0EAA0B;IACxB;IAAA,yEAAkC;IAAA,gFAAqB;IAAA,4DAAK;IAC9D;IAAA,4DAAM;IACN;IAAA,0EAAwB;IACvB,wHAAoD;IAAA,gEAAI;IACvD;IAAA,8EAAoE;IAA5D,4SAAS,8EAAY,KAAC;IAAsC,kEAAM;IAAA,4DAAS;IACrF;IAAA,4DAAM;IACR;;;AD9IG,MAAM,kBAAkB;IAe7B,YAAoB,YAA4B,EACtC,WAAwB,EACxB,QAAyB,EACzB,aAA4B;QAHlB,iBAAY,GAAZ,YAAY,CAAgB;QACtC,gBAAW,GAAX,WAAW,CAAa;QACxB,aAAQ,GAAR,QAAQ,CAAiB;QACzB,kBAAa,GAAb,aAAa,CAAe;QAbtC,iBAAY,GAAE,IAAI,CAAC;QACZ,aAAQ,GAAG;YAChB,EAAE,EAAE,IAAI;YACR,QAAQ,EAAE,IAAI;YACd,IAAI,EAAE,IAAI;YACV,QAAQ,EAAE,IAAI;YACd,eAAe,EAAE,IAAI;SACtB,CAAC;IAMwC,CAAC;IAE3C,QAAQ;QACN,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC;QACpB,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;QACnB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,EAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC9C,IAAI,CAAC,SAAS,EAAE,CAAC;IACnB,CAAC;IAED,SAAS,CAAC,QAA0B;QAClC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACnD,CAAC;IAGD,aAAa,CAAC,QAA0B,EAAE,EAAU;QAElD,IAAG,EAAE,IAAI,IAAI,EAAE;YACb,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,SAAS,CACxC,CAAC,IAAS,EAAE,EAAE;gBACZ,IAAI,CAAC,QAAQ,CAAC,EAAE,GAAG,IAAI,CAAC,EAAE,CAAC;gBAC3B,IAAI,CAAC,QAAQ,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;gBACvC,IAAI,CAAC,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC;YAEnC,CAAC,EAAE,KAAK,CAAC,EAAE;gBACT,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;YAC7C,CAAC,CACF,CAAC;SACH;QACD,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACnD,CAAC;IACD,eAAe,CAAC,QAA0B,EAAE,EAAU;QACpD,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACjD,IAAI,CAAC,YAAY,GAAG,EAAE,CAAC;IACzB,CAAC;IACD,iBAAiB;QACf,IAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,KAAK,IAAI,CAAC,QAAQ,CAAC,eAAe,EAAE;YAC3D,OAAO,CAAC,GAAG,CAAC,UAAU,EAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YACtC,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,SAAS,CAChD,GAAG,EAAE;gBACH,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,6BAA6B,CAAC,CAAC;gBACrD,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,EAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAChD,CAAC,EAAE,KAAK,CAAC,EAAE;gBACT,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC;YAChD,CAAC,CACF,CAAC;SACH;aAAM;YACL,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,yBAAyB,CAAC,CAAC;SAChD;IACH,CAAC;IAED,kBAAkB;QAChB,IAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,IAAI,IAAI,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,IAAI,IAAI,EAAE;YAE/D,qBAAqB;YACrB,IAAI,CAAC,QAAQ,CAAC,QAAQ,GAAG,UAAU,CAAC;YACpC,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,SAAS,CAClD,GAAG,EAAE;gBACH,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,4BAA4B,CAAC,CAAC;gBACpD,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,EAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAChD,CAAC,EAAE,KAAK,CAAC,EAAE;gBACT,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAC;YAC/C,CAAC,CACF,CAAC;SACH;aAAM;YACL,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,sCAAsC,CAAC,CAAC;SAC7D;IACH,CAAC;IACD,UAAU;QAER,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,SAAS,CACxD,GAAG,EAAE;YACH,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,2BAA2B,CAAC,CAAC;YACnD,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,EAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAC9C,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;QACvB,CAAC,EAAE,KAAK,CAAC,EAAE;YACT,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CACF,CAAC;IACJ,CAAC;IACD,gBAAgB;QACd,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;IACvB,CAAC;IACD,iBAAiB;QACf,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;IACvB,CAAC;IACD,SAAS,CAAC,EAAO,EAAE,EAAO;QACxB,IAAI,CAAC,aAAa,CAAC,gBAAgB,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,SAAS,CACnD,CAAC,KAA8B,EAAE,EAAE;YACjC,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,MAAM,CAAC;YAC9B,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC,UAAU,CAAC;YACnC,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;QAC5B,CAAC,EAAE,KAAK,CAAC,EAAE;YACT,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC;YAC5C,IAAI,CAAC,YAAY,GAAC,KAAK,CAAC;QAC1B,CAAC,CACF,CAAC;IACJ,CAAC;IAMA,WAAW,CAAC,KAAU;QACpB,IAAI,CAAC,UAAU,CAAC,WAAW,GAAG,KAAK,CAAC,IAAI,CAAC;QACzC,IAAI,CAAC,WAAW,EAAE,CAAC;IACrB,CAAC;IAED,WAAW;QACT,IAAI,CAAC,aAAa,CAAC,gBAAgB,CACjC,IAAI,CAAC,UAAU,CAAC,WAAW,EAC3B,IAAI,CAAC,UAAU,CAAC,YAAY,CAC7B,CAAC,SAAS,CACT,CAAC,KAA8B,EAAE,EAAE;YAClC,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,MAAM,CAAC;YAC9B,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC,UAAU,CAAC;YACnC,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;QAC3B,CAAC,EACD,CAAC,KAAK,EAAE,EAAE;YACR,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC;YAC5C,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;QAC5B,CAAC,CACF,CAAC;IACJ,CAAC;IAGD,SAAS;QACR,IAAI,CAAC,WAAW,CAAC,WAAW,EAAE,CAAC,SAAS,CACtC,CAAC,KAAiB,EAAE,EAAE;YACpB,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;QACzB,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC;QACnD,CAAC,CACF,CAAC;IACJ,CAAC;;oFAxJU,kBAAkB;gHAAlB,kBAAkB;;QCd/B,yEAAuB;QACrB;QAAA,yEAAsB;QACpB;QAAA,wEAA0B;QACxB;QAAA,wEAA0B;QACxB;QAAA,uEAAwD;QAA7B,mRAAS,4EAAkB,KAAC;QACrD;QAAA,mEAA0B;QAAC,4EAAe;QAAA,4DAAI;QAClD;QAAA,4DAAK;QACL;QAAA,yEAA0B;QACxB;QAAA,wEAA2D;QACzD;QAAA,mEAA6B;QAAC,wFAA2B;QAAA,4DAAI;QACjE;QAAA,4DAAK;QACP;QAAA,4DAAK;QACP;QAAA,4DAAM;QACN;QAAA,iHAcM;QACN;QAAA,0EAAsB;QACpB;QAAA,qHAoBQ;QACV;QAAA,4DAAM;QACN;QAAA,kHASM;QACR;QAAA,4DAAM;QAEN;QAAA,8MAgDgB;QAEd;QAAA,8MAiCc;QAEd;QAAA,8MAQgB;QAClB;;QArJmC,2DAA+B;QAA/B,6IAA+B;QAK1D,0DAAkB;QAAlB,kFAAkB;QAgBY,0DAAmB;QAAnB,mFAAmB;QAsBrC,0DAAmB;QAAnB,mFAAmB;;;;;;;;;;;;;;;;;;;;;;ACjDe;;;;;;AAQ/C,MAAM,YAAY;IAGvB,YAAoB,WAAwB;QAAxB,gBAAW,GAAX,WAAW,CAAa;QAF5C,cAAS,GAAG,IAAI,gEAAgB,EAAE,CAAC;IAEY,CAAC;IAEhD,QAAQ;QACN,MAAM,KAAK,GAAG,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAC5C,IAAI,KAAK,EAAE;YACT,IAAI,CAAC,WAAW,CAAC,YAAY,GAAG,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;SACnE;IAEH,CAAC;;wEAXU,YAAY;0GAAZ,YAAY;QCTzB;QAAA,qEAAmB;QACnB;QACA;QACA;QAAA,2EAA+B;QAC/B;QACA;QAAA,wEAAyB;QACzB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACP0D;AAEF;AACX;AACa;AACV;AACE;AACY;AACN;AACI;AACN;AACM;AACF;AACF;AACT;AACM;AACF;AACJ;AAE/C,6CAA6C;AACkC;AACD;AAE/B;AACmB;AACf;AACI;AACD;AACY;AACH;AACQ;AACX;AAC0B;AACpB;AAC9B;AACa;AACU;AACe;AACc;AACjB;AACN;AACoB;AACG;AACR;AACL;AACoB;AACK;AACf;AACC;AACc;AACuB;AACQ;AAC1D;AAC2B;AACM;AACG;AACN;AAC0B;AACpD;AACY;AACH;AAC1B;AACc;AACuD;AACpD;AACuB;AACG;AACvB;AACa;AACgC;AAC7B;AAC6B;AAClB;AACM;AACgB;AACzB;AACxB;AACa;AAC7B;AACoB;AACM;AACG;AACG;AACrB;AACpB;AAC0B;AACJ;AACA;AACI;AAChB;AACR;AAC+E;AAChC;AACc;AACR;AACoB;AACd;;;;;;;;;;;;;;AAE7G,SAAS,WAAW;IACzB,OAAO,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;AACvC,CAAC;AA+GM,MAAM,SAAS;;kEAAT,SAAS;uGAAT,SAAS,cAFR,wDAAY;4GAbb;QACT,0FAAwB;QACxB,+DAAW;QACX,uEAAe;QACf,0DAAS;QACT,oEAAa;QACb,oFAAoB;QACpB,8FAA0B;QAC1B,kFAAmB;QACnB,oFAAoB;QACpB,gEAAW;QACX,sFAAsB;KACvB;QAxCC,gBAAgB;QAChB,qEAAa;QACb,mEAAgB;QAChB,0FAAuB;QACvB,yFAAwB;QACxB,wDAAW;QACX,kEAAoB,CAAC,8CAAQ,EAAE,EAAE,sBAAsB,EAAE,QAAQ,EAAE,CAAC;QACpE,6EAAwB,EAAE;QAC1B,+EAAwB,EAAE;QAC1B,mEAAkB,EAAE;QACpB,qEAAmB,EAAE;QACrB,iFAA0B,EAAE;QAC5B,gEAAmB;QACnB,2BAA2B;QAC3B,yEAAqB,EAAE;QACvB,8DAAgB;QAChB,6EAAuB,EAAE;QACzB,2EAAsB,EAAE;QACxB,2EAAsB,EAAE;QACxB,+EAAwB,EAAE;QAC1B,kEAAiB,CAAC;YAChB,MAAM,EAAE;gBACN,WAAW,EAAE,WAAW;gBACxB,cAAc,EAAE,CAAC,EAAE,CAAC;gBACpB,gBAAgB,EAAE,CAAC,WAAW,CAAC;aAChC;SACF,CAAC;oIAiBO,SAAS,mBA3GlB,wDAAY;QACZ,2EAAiB;QACjB,4DAAY;QACZ,+DAAa;QACb,2EAAiB;QACjB,gFAAkB;QAClB,qEAAe;QACf,+FAAuB;QACvB,4EAAiB;QACjB,oFAAmB;QACnB,kGAAuB;QACvB,iFAAkB;QAClB,2EAAgB;QAChB,+FAAsB;QACtB,kGAAuB;QACvB,0FAAqB;QACrB,yGAAuB;QACvB,8GAA2B;QAC3B,gGAAuB;QACvB,8GAA2B;QAC3B,qIAAkC;QAClC,6IAAoC;QACpC,8GAA2B;QAC3B,oHAA6B;QAC7B,uHAA8B;QAC9B,iHAA4B;QAC5B,2IAAoC;QACpC,kEAAc;QACd,0EAAmB;QACnB,uFAAoB;QACpB,mGAAqB;QACrB,gGAAoB;QACpB,sEAAe;QACf,oFAAmB;QACnB,2IAAoC;QACpC,uFAAkB;QAClB,8GAAyB;QACzB,iHAA0B;QAC1B,0FAAqB;QACrB,uGAAsB;QACtB,uIAAgC;QAChC,0GAAuB;QACvB,uIAAgC;QAChC,qHAA0B;QAC1B,2HAA4B;QAC5B,2IAA+B;QAC/B,kHAA0B;QAC1B,0FAAqB;QACrB,uGAAsB;QACtB,0EAAa;QACb,8FAAmB;QACnB,oGAAqB;QACrB,uGAAsB;QACtB,0GAAqB;QACrB,2FAAmB;QACnB,uFAAkB;QAClB,kJAAkC;QAClC,kHAAwB;QACxB,gIAA4B;QAC5B,wHAA0B;QAC1B,4IAAgC;QAChC,8HAA4B;QAG5B,gBAAgB;QAChB,qEAAa;QACb,mEAAgB;QAChB,0FAAuB;QACvB,yFAAwB;QACxB,wDAAW,qZAOX,gEAAmB,qEAGnB,8DAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACvL2C;AAIK;;;;;;;;;;;;;;ICmB1D,6EAAqE;IAAA,uDAAiB;IAAA,4DAAS;;;IAApD,+FAAyB;IAAC,0DAAiB;IAAjB,kFAAiB;;;IAMtF,6EAA+D;IAAA,uDAAgB;IAAA,4DAAS;;;IAAjD,6FAAuB;IAAC,0DAAgB;IAAhB,iFAAgB;;;IAM/E,6EAAkE;IAAA,uDAAgB;IAAA,4DAAS;;;IAAlD,8FAAwB;IAAC,0DAAgB;IAAhB,iFAAgB;;;IAkBlF,6EAAgE;IAAA,uDAAgB;IAAA,4DAAS;;;IAA/C,2FAAqB;IAAC,0DAAgB;IAAhB,iFAAgB;;;IAOhF,6EAA2D;IAAA,uDAAiB;IAAA,4DAAS;;;IAA9C,yFAAmB;IAAC,0DAAiB;IAAjB,kFAAiB;;;;IAkB9E,6EACwC;IADhC,qWAAS,gGAA0B,KAAC;IACJ,uDAAe;IAAA,4DAAS;;;IAAxB,0DAAe;IAAf,gFAAe;;;IAU7D,yEAA4C;IAC1C;IAAA,0EAAiB;IACf;IAAA,0EAAiB;IACf;IAAA,qEAAuB;IACvB;IAAA,qEAAuB;IACvB;IAAA,sEAAuB;IACvB;IAAA,sEAAuB;IACvB;IAAA,sEAAuB;IACvB;IAAA,sEAAuB;IACvB;IAAA,sEAAuB;IACvB;IAAA,sEAAuB;IACvB;IAAA,sEAA0B;IAC5B;IAAA,4DAAM;IACR;IAAA,4DAAM;IACR;IAAA,4DAAM;;;IAGF,0EAA8D;IAC5D;IAAA,sFAA+D;IACjE;IAAA,4DAAM;;;IADkB,0DAAiB;IAAjB,8EAAiB;;;IAF3C,0EAA4C;IAC1C;IAAA,uHAEM;IACR;IAAA,4DAAM;;;IAHoB,0DAAU;IAAV,mFAAU;;;;IAKpC,0EAAiE;IAC/D;IAAA,iFAGqB;IAFsB,8TAAa,qGACzD,IADiF,kQAC/D,qFAAmB,KAD4C;IAGhF;IAAA,4DAAa;IACf;IAAA,4DAAM;;;IALQ,0DAAsB;IAAtB,+EAAsB;;;;IActC;IAAA,0EAA0B;IACxB;IAAA,yEAAkC;IAAA,0EAAe;IAAA,4DAAK;IACtD;IAAA,6EAA4F;IAA1B,4SAAS,iFAAe,KAAC;IACzF;IAAA,2EAAyB;IAAA,iEAAO;IAAA,4DAAO;IACzC;IAAA,4DAAS;IACX;IAAA,4DAAM;IACN;IAAA,kFAA+B;IAC7B;IAAA,2EAAwB;IACtB;IAAA,6EACW;IADuD,4ZAAwB;IAA1F,4DACW;IACX;IAAA,4EAAU;IACR;IAAA,2EAA6B;IAC3B;IAAA,2EAA0C;IACxC;IAAA,wEAAkF;IAClF;IAAA,6EAAwD;IAAA,2EAAe;IAAA,4DAAQ;IACjF;IAAA,4DAAM;IACR;IAAA,4DAAM;IACR;IAAA,4DAAW;IACb;IAAA,4DAAM;IACR;IAAA,4DAAO;IACP;IAAA,2EAA0B;IACxB;IAAA,8EACyB;IAAvB,6SAAS,8EAAY,KAAC;IAAC,gEAAI;IAAA,4DAAS;IAExC;IAAA,4DAAM;IACR;;;;IAjBwE,2DAAwB;IAAxB,uFAAwB;IAa/B,2DAAkC;IAAlC,iFAAkC;;;AD5H5F,MAAM,kBAAkB;IA+B7B,YACU,aAA4B,EAC5B,QAAyB,EACzB,WAAwB,EACxB,WAAwB,EACxB,YAA4B;QAJ5B,kBAAa,GAAb,aAAa,CAAe;QAC5B,aAAQ,GAAR,QAAQ,CAAiB;QACzB,gBAAW,GAAX,WAAW,CAAa;QACxB,gBAAW,GAAX,WAAW,CAAa;QACxB,iBAAY,GAAZ,YAAY,CAAgB;QAlCtC,eAAU,GAAQ,EAAE,CAAC;QACrB,eAAU,GAAG,CAAC,CAAC;QACf,aAAQ,GAAG,EAAE,CAAC;QAGd,iBAAY,GAAG,IAAI,CAAC;QAKpB,UAAK,GAAQ,EAAE,CAAC;QAchB,gBAAW,GAAQ,EAAE,CAAC;IAWlB,CAAC;IAEL,QAAQ;QACN,uBAAuB;QACvB,sBAAsB;QAEtB,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,IAAI,CAAC,YAAY,EAAE,CAAC;QACpB,IAAI,CAAC,UAAU,EAAE,CAAC;QAClB,IAAI,CAAC,SAAS,EAAE,CAAC;QACjB,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAEzB,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC5D,CAAC;IACD,oBAAoB,CAAC,EAAE,EAAE,EAAE;QACzB,MAAM,SAAS,GAAG,YAAY,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;QAEzD,IAAI,SAAS,EAAE;YACb,OAAO,CAAC,GAAG,CAAC,UAAU,GAAG,SAAS,CAAC,CAAC;YACpC,IAAI,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;YAE1C,IAAI,CAAC,cAAc,GAAG,aAAa,CAAC,UAAU,CAAC;YAC/C,IAAI,CAAC,YAAY,GAAG,aAAa,CAAC,YAAY,CAAC;YAC/C,IAAI,CAAC,WAAW,GAAG,aAAa,CAAC,WAAW,CAAC;YAC7C,IAAI,CAAC,UAAU,GAAG,aAAa,CAAC,UAAU,CAAC;YAC3C,IAAI,aAAa,CAAC,SAAS,KAAK,SAAS,EAAE;gBACzC,IAAI,CAAC,eAAe,GAAG,aAAa,CAAC,SAAS,CAAC;aAChD;YAED,IAAI,aAAa,CAAC,OAAO,IAAI,SAAS,EAAE;gBACtC,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC,OAAO,CAAC;aAC5C;YACD,IAAI,aAAa,CAAC,OAAO,GAAG,CAAC,EAAE;gBAC7B,IAAI,CAAC,MAAM,GAAG,aAAa,CAAC,OAAO,CAAC;aACrC;YACD,IAAI,aAAa,CAAC,QAAQ,EAAE;gBAC1B,IAAI,CAAC,QAAQ,GAAG,aAAa,CAAC,QAAQ,CAAC;aACxC;YACD,IAAI,aAAa,CAAC,WAAW,IAAI,SAAS,EAAE;gBAC1C,IAAI,CAAC,mBAAmB,GAAG,aAAa,CAAC,WAAW,CAAC;aACtD;YAED,IAAI,WAAW,GAAG,IAAI,CAAC,UAAU,CAAC;YAClC,IAAI,OAAO,GAAG,YAAY,CAAC,OAAO,CAAC,qBAAqB,CAAC,CAAC;YAC1D,IAAI,OAAO,EAAE;gBACX,WAAW,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC;aACjC;YACD,IAAI,eAAe,GAAG,IAAI,CAAC,QAAQ,CAAC;YACpC,IAAI,OAAO,GAAG,YAAY,CAAC,OAAO,CAAC,yBAAyB,CAAC,CAAC;YAC9D,IAAI,OAAO,EAAE;gBACX,eAAe,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC;aACrC;YAED,IAAI,CAAC,UAAU,CAAC,WAAW,GAAG,WAAW,CAAC;YAC1C,IAAI,CAAC,UAAU,CAAC,YAAY,GAAG,eAAe,CAAC;YAC/C,IAAI,CAAC,UAAU,CAAC,UAAU,GAAG,IAAI,CAAC;YAClC,IAAI,CAAC,aAAa,EAAE,CAAC;YACrB,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;SAC3B;aACI;YACH,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC;YAChC,IAAI,CAAC,WAAW,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;SAC1B;IACH,CAAC;IACD,WAAW,CAAC,EAAE,EAAE,EAAE;QAChB,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,SAAS,CAC7C,CAAC,OAAkC,EAAE,EAAE;YACrC,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;YAC1B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC;YAC9B,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;QACvC,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CACF,CAAC;IACJ,CAAC;IACD,aAAa;QACX,IAAI,CAAC,aAAa;aACf,UAAU,CACT,IAAI,CAAC,UAAU,CAAC,WAAW,EAC3B,IAAI,CAAC,UAAU,CAAC,YAAY,EAC5B,IAAI,CAAC,cAAc,EACnB,IAAI,CAAC,YAAY,EACjB,IAAI,CAAC,UAAU,EACf,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,eAAe,EACpB,IAAI,CAAC,aAAa,EAClB,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,mBAAmB,CACzB;aACA,SAAS,CACR,CAAC,GAA8B,EAAE,EAAE;YACjC,IAAI,CAAC,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC;YAC1B,IAAI,CAAC,UAAU,GAAG,GAAG,CAAC,UAAU,CAAC;QACnC,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CACF,CAAC;IACN,CAAC;IAED,WAAW,CAAC,KAAU;QACpB,IAAI,CAAC,UAAU,CAAC,WAAW,GAAG,KAAK,CAAC,IAAI,CAAC;QACzC,YAAY,CAAC,OAAO,CAAC,qBAAqB,EAAE,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;QACzE,YAAY,CAAC,OAAO,CAAC,yBAAyB,EAAE,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;QAC9E,IAAI,CAAC,aAAa,EAAE,CAAC;IACvB,CAAC;IAED,WAAW;QACT,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,CAAC,SAAS,CACvC,CAAC,OAAiB,EAAE,EAAE;YACpB,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC;QAC7B,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CACF,CAAC;IACJ,CAAC;IACD,QAAQ;IACR,CAAC;IACD,cAAc;QACZ,IAAI,CAAC,aAAa,CAAC,aAAa,EAAE,CAAC,SAAS,CAC1C,CAAC,UAAuB,EAAE,EAAE;YAC1B,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC/B,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CACF,CAAC;IACJ,CAAC;IACD,aAAa;QACX,IAAI,CAAC,aAAa,CAAC,YAAY,EAAE,CAAC,SAAS,CACzC,CAAC,SAAqB,EAAE,EAAE;YACxB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC7B,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CACF,CAAC;IACJ,CAAC;IACD,YAAY;QACV,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,CAAC,SAAS,CACxC,CAAC,QAAmB,EAAE,EAAE;YACtB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QAC3B,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CACF,CAAC;IACJ,CAAC;IACD,WAAW;QACT,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,CAAC,SAAS,CACvC,CAAC,OAAiB,EAAE,EAAE;YACpB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACzB,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CACF,CAAC;IACJ,CAAC;IACD,UAAU;QACR,IAAI,CAAC,aAAa,CAAC,aAAa,EAAE,CAAC,SAAS,CAC1C,CAAC,UAAoB,EAAE,EAAE;YACvB,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC/B,CAAC,EAAE,KAAK,CAAC,EAAE;YACT,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAC;QAC/C,CAAC,CACF,CAAC;IACJ,CAAC;IACD,SAAS;QACP,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,CAAC,SAAS,CACxC,CAAC,KAAa,EAAE,EAAE;YAChB,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;QACzB,CAAC,EAAE,KAAK,CAAC,EAAE;YACT,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC;QAC9C,CAAC,CACF,CAAC;IACJ,CAAC;IACD,iBAAiB;QACf,IAAI,CAAC,aAAa,CAAC,iBAAiB,CAAC,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,SAAS,CAClF,CAAC,OAAc,EAAE,EAAE;YACjB,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC;QAC5B,CAAC,EAAE,KAAK,CAAC,EAAE;YACT,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC;QAChD,CAAC,CACF,CAAC;IACJ,CAAC;IAED,QAAQ;QACN,IAAI,CAAC,UAAU,CAAC,WAAW,GAAG,IAAI,CAAC,UAAU,CAAC;QAE9C,IAAI,CAAC,aAAa,EAAE,CAAC;QAErB,IAAI,aAAa,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;QAC1C,YAAY,CAAC,OAAO,CAAC,gBAAgB,EAAE,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC,CAAC;QACtE,YAAY,CAAC,OAAO,CAAC,qBAAqB,EAAE,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;QACzE,YAAY,CAAC,OAAO,CAAC,yBAAyB,EAAE,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;IAChF,CAAC;IAED,WAAW;QACT,mBAAmB;QACnB,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;QACzB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;QACxB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QACvB,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;QAC3B,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;QACxB,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;QAC5B,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;QAC1B,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;QACrB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;QACnB,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC;QAChC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;IACnD,CAAC;IAED,iBAAiB,CAAC,KAAW;QAC3B,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QACvD,MAAM,KAAK,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;QACnC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IACvD,CAAC;IACD,eAAe,CAAC,KAAW;QACzB,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IACvD,CAAC;IACD,mBAAmB,CAAC,KAAqB;QACvC,IAAI,CAAC,mBAAmB,GAAG,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC;IACpD,CAAC;IAED,cAAc;QACZ,IAAI,QAAQ,GAAQ,EAAE,CAAC;QACvB,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC;QAChC,QAAQ,CAAC,UAAU,GAAG,IAAI,CAAC,cAAc,CAAC;QAC1C,QAAQ,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC;QAC1C,QAAQ,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;QACxC,QAAQ,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;QACtC,IAAI,IAAI,CAAC,eAAe,IAAI,IAAI,EAAE;YAChC,QAAQ,CAAC,SAAS,GAAG,IAAI,CAAC,eAAe,CAAC;SAC3C;QACD,IAAI,IAAI,CAAC,aAAa,IAAI,IAAI,EAAE;YAC9B,QAAQ,CAAC,OAAO,GAAG,IAAI,CAAC,aAAa,CAAC;SACvC;QACD,QAAQ,CAAC,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC;QAC/B,QAAQ,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;QAClC,IAAI,IAAI,CAAC,mBAAmB,IAAI,IAAI,EAAE;YACpC,QAAQ,CAAC,WAAW,GAAG,IAAI,CAAC,mBAAmB,CAAC;SACjD;QACD,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,UAAU;QACR,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;QACzC,IAAI,CAAC,WAAW,CAAC,SAAS,GAAG,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,MAAM,CAAC;QAClE,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAE9B,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,SAAS,CACzD,GAAG,EAAE;YACH,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;YACrC,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACzB,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;QACvB,CAAC,EAAE,KAAK,CAAC,EAAE;YACT,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;QAC7C,CAAC,CACF,CAAC;IACJ,CAAC;IACD,mBAAmB,CAAC,QAA0B;QAC5C,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACnD,CAAC;IACD,kBAAkB,CAAC,MAAW;QAC5B,IAAI,CAAC,YAAY,GAAG,MAAM,CAAC,YAAY,CAAC;QACxC,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC;QACtC,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;QACpC,IAAI,CAAC,cAAc,GAAG,MAAM,CAAC,UAAU,CAAC;QACxC,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC;QAEtC,kFAAkF;QAClF,8BAA8B;QAC9B,4BAA4B;QAE5B,IAAI,MAAM,CAAC,QAAQ,GAAG,CAAC,EAAE;YACvB,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;SACjC;QACD,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE;YACrB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;SAC7B;QACD,IAAI,MAAM,CAAC,WAAW,IAAI,IAAI,EAAE;YAC9B,IAAI,CAAC,mBAAmB,GAAG,MAAM,CAAC,WAAW,CAAC;SAC/C;QACD,IAAI,CAAC,QAAQ,EAAE,CAAC;IAClB,CAAC;;oFAtUU,kBAAkB;gHAAlB,kBAAkB;;QCvB/B,yEAAuB;QACrB;QAAA,wEAAiB;QAAA,qEAAU;QAAA,4DAAK;QAChC;QAAA,wEAAuB;QACrB;QAAA,wEAA4B;QAC1B;QAAA,uEAAY;QAAA,gEAAI;QAAA,4DAAI;QACtB;QAAA,4DAAK;QACL;QAAA,yEAA4B;QAC1B;QAAA,wEAAY;QAAA,sEAAU;QAAA,4DAAI;QAC5B;QAAA,4DAAK;QACL;QAAA,yEAAmC;QAAA,6EAAiB;QAAA,4DAAK;QAC3D;QAAA,4DAAK;QACL;QAAA,sEAAI;QAAC,wDAAyC;QAAA,4DAAK;QACnD;QAAA,uEAAK;QACH;QACA;QAAA,0EAAwB;QACtB;QAAA,0EAAsB;QACpB;QAAA,yEAAO;QAAA,uEAAW;QAAA,4DAAQ;QAC1B;QAAA,4EACmC;QAD5B,+LAA4B,0GACZ,cAAU,IADE;QAAnC,4DACmC;QACrC;QAAA,4DAAM;QACN;QAAA,0EAAsB;QACpB;QAAA,4EAA2B;QAAA,oEAAQ;QAAA,4DAAQ;QAC3C;QAAA,8EAAwG;QAApC,8LAA0B;QAC5F;QAAA,uHAA+F;QACjG;QAAA,4DAAS;QACX;QAAA,4DAAM;QACN;QAAA,0EAAsB;QACpB;QAAA,6EAAyB;QAAA,kEAAM;QAAA,4DAAQ;QACvC;QAAA,8EAAkG;QAAlC,4LAAwB;QACtF;QAAA,uHAAwF;QAC1F;QAAA,4DAAS;QACX;QAAA,4DAAM;QACN;QAAA,2EAAsB;QACpB;QAAA,6EAAgC;QAAA,mEAAO;QAAA,4DAAQ;QAC/C;QAAA,8EAA2G;QAAnC,6LAAyB;QAC/F;QAAA,uHAA2F;QAC7F;QAAA,4DAAS;QACX;QAAA,4DAAM;QACN;QAAA,0EAAsB;QACpB;QAAA,6EAA0B;QAAA,sEAAU;QAAA,4DAAQ;QAC5C;QAAA,6EAEe;QAFkD,0LAAuB,wGACrE,6BAAyB,IAD4C;QAAxF,4DAEe;QACjB;QAAA,4DAAM;QACN;QAAA,0EAAsB;QACpB;QAAA,6EAA0B;QAAA,oEAAQ;QAAA,4DAAQ;QAC1C;QAAA,6EAEe;QAFgD,wLAAqB,wGACjE,2BAAuB,IAD0C;QAApF,4DAEe;QACjB;QAAA,4DAAM;QACN;QAAA,2EAAsB;QACpB;QAAA,6EAAgC;QAAA,kEAAM;QAAA,4DAAQ;QAC9C;QAAA,8EAAqG;QAAhC,0LAAsB;QACzF;QAAA,uHAAyF;QAC3F;QAAA,4DAAS;QACX;QAAA,4DAAM;QAEN;QAAA,2EAAsB;QACpB;QAAA,8EAAgC;QAAA,kEAAK;QAAA,4DAAQ;QAC7C;QAAA,+EAAiG;QAA9B,yLAAoB;QACrF;QAAA,yHAAqF;QACvF;QAAA,4DAAS;QACX;QAAA,4DAAM;QAEN;QAAA,4EAAsB;QACpB;QAAA,8EAAgC;QAAA,yEAAY;QAAA,4DAAQ;QACpD;QAAA,8EACyE;QADlE,qMAAiC,iHACI,+BAA2B,IAD/B;QAAxC,4DACyE;QAC3E;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAAA,4EAA6C;QAC3C;QAAA,+EAAkE;QAArB,4IAAS,cAAU,IAAC;QAAC,qEAA4B;QAAC,oEAAM;QAAA,4DAAS;QAC9G;QAAA,+EAAkE;QAAxB,4IAAS,iBAAa,IAAC;QAAC,qEAA4B;QAAC,mEAAK;QAAA,4DAAS;QAC7G;QAAA,+EAAoF;QAA7C,2RAAS,sFAAkC,KAAC;QAAC,qEAA0B;QAC5G,kFAAW;QAAA,4DAAS;QACxB;QAAA,4DAAM;QACN;QAAA,4EAAiB;QACf;QAAA,4EAA+C;QAC7C;QAAA,yHACgE;QAClE;QAAA,4DAAM;QACR;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAMA;QAAA,oHAcM;QACN;QAAA,wEAAK;QACH;QAAA,mHAIM;QAEN;QAAA,mHAMM;QACR;QAAA,4DAAM;QAEN;QACA;QACA;QACF;QAAA,4DAAM;QAEN;QAAA,gNA0Bc;;QA5IP,2DAAyC;QAAzC,oHAAyC;QAMjC,2DAA4B;QAA5B,uFAA4B;QAKiC,0DAA0B;QAA1B,qFAA0B;QAC/D,0DAAY;QAAZ,kFAAY;QAKqB,0DAAwB;QAAxB,mFAAwB;QAC3D,0DAAU;QAAV,gFAAU;QAKiC,0DAAyB;QAAzB,oFAAyB;QACnE,0DAAW;QAAX,iFAAW;QAKwB,0DAAuB;QAAvB,kFAAuB;QAMzB,0DAAqB;QAArB,gFAAqB;QAMf,0DAAsB;QAAtB,iFAAsB;QAC9D,0DAAa;QAAb,mFAAa;QAMyB,0DAAoB;QAApB,+EAAoB;QAC5D,0DAAY;QAAZ,kFAAY;QAMhC,0DAAiC;QAAjC,4FAAiC;QAYwB,2DAAa;QAAb,mFAAa;QAW7E,0DAAkB;QAAlB,kFAAkB;QAgBC,0DAAmB;QAAnB,mFAAmB;QAME,0DAAmB;QAAnB,mFAAmB;;;;;;;;;;;;;;;;;;;;;;;ACvG5D,MAAM,uBAAuB;IAElC,gBAAgB,CAAC;IAEjB,QAAQ;IACR,CAAC;;8FALU,uBAAuB;qHAAvB,uBAAuB;QCRpC,yEAGwE;QACtE;QAAA,yEAAqC;QAAA,uDAAwB;QAAA,4DAAM;QACnE;QAAA,yEAAuB;QACrB;QAAA,yEAAiB;QACf;QAAA,yEAAsB;QACpB;QAAA,qEAAwE;QAC1E;QAAA,4DAAM;QACN;QAAA,0EAAsB;QACpB;QAAA,yEAAmC;QAAA,wDAAyB;QAAA,4DAAK;QACnE;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAAA,yEAAkC;QAAA,wDAC5B;;;QAAA,4DAAK;QACb;QAAA,4DAAM;QACN;QAAA,0EAAwB;QACtB;QAAA,yEAAqE;QACnE,wDACF;;;QAAA,4DAAI;QACN;QAAA,4DAAM;QACN;QAAA,yEAAuB;QACrB;QAAA,0EAA8E;QAC5E,wDACF;;QAAA,4DAAK;QACL;QAAA,0EAA8E;QAC5E,wDACF;;QAAA,4DAAK;QACL;QAAA,0EAAsD;QACpD;QAAA,sEAAI;QAAA,wDAA0B;QAAA,4DAAK;QACrC;QAAA,4DAAK;QACP;QAAA,4DAAK;QACP;QAAA,4DAAM;;QAjCiB,uLAA6D;QAGxD,6JAA2C;QAChC,0DAAwB;QAAxB,sJAAwB;QAIlD,0DAAyC;QAAzC,0OAAyC;QAGX,0DAAyB;QAAzB,wJAAyB;QAG9B,0DAC5B;QAD4B,0VAC5B;QAIJ,0DACF;QADE,oXACF;QAIE,0DACF;QADE,oNACF;QAEE,0DACF;QADE,yNACF;QAEM,0DAA0B;QAA1B,uJAA0B;;;;;;;;;;;;;;;;;;ACvB7B,MAAM,uBAAuB;IAElC,gBAAgB,CAAC;IAEjB,QAAQ;IACR,CAAC;;8FALU,uBAAuB;qHAAvB,uBAAuB;QCPpC,wEAAiB;QAAA,yEAAc;QAAA,4DAAK;QACpC;QAAA,yEAAiB;QACf;QAAA,yEAA+C;QAC7C;QAAA,yEAAQ;QAAA,gFAAqB;QAAA,4DAAS;QAAC,gFACvC;QAAA,wEAA+B;QAAA,qGAE/B;QAAA,4DAAI;QACJ;QAAA,6EAAqD;QAAA,uEAAW;QAAA,4DAAS;QAC3E;QAAA,4DAAM;QACN;QAAA,0EAA+C;QAC7C;QAAA,0EAAQ;QAAA,sEAAU;QAAA,4DAAS;QAAC,wFAC5B;QAAA,wEAA+B;QAAA,wFAA4B;QAAA,4DAAI;QACjE;QAAA,4DAAM;QACN;QAAA,0EAA2C;QACzC;QAAA,0EAAQ;QAAA,sEAAU;QAAA,4DAAS;QAAC,wFAC5B;QAAA,wEAA+B;QAAA,wFAA4B;QAAA,4DAAI;QAAA,iEACjE;QAAA,4DAAM;QACN;QAAA,0EAAgD;QAC9C;QAAA,0EAAQ;QAAA,sEAAU;QAAA,4DAAS;QAAC,wFAC5B;QAAA,wEAA+B;QAAA,wFAA4B;QAAA,4DAAI;QAAA,iEACjE;QAAA,4DAAM;QACN;QAAA,0EAA+C;QAC7C;QAAA,0EAAQ;QAAA,sEAAU;QAAA,4DAAS;QAAC,wFAC5B;QAAA,wEAA+B;QAAA,wFAA4B;QAAA,4DAAI;QAAA,iEACjE;QAAA,4DAAM;QACN;QAAA,0EAA0C;QACxC;QAAA,0EAAQ;QAAA,sEAAU;QAAA,4DAAS;QAAC,wFAC5B;QAAA,wEAA+B;QAAA,wFAA4B;QAAA,4DAAI;QACjE;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;;;;;;;;;;;;;;;;;;ACvBO,MAAM,gBAAgB;IAE3B,gBAAgB,CAAC;IAEjB,QAAQ;IACR,CAAC;;gFALU,gBAAgB;8GAAhB,gBAAgB;QCP7B,wEAAyB;QACvB;QAAA,wEAAqB;QACnB;QAAA,uEAA0D;QAAA,+DAAI;QAAA,4DAAI;QACpE;QAAA,4DAAK;QACL;QAAA,wEAAqB;QACnB;QAAA,wEAAsD;QAAA,mEAAO;QAAA,4DAAI;QACnE;QAAA,4DAAK;QACL;QAAA,yEAAqB;QACnB;QAAA,wEAAsC;QAAA,oEAAQ;QAAA,4DAAI;QACpD;QAAA,4DAAK;QACL;QAAA,yEAA8B;QAC5B;QAAA,wEAA6H;QAAA,oEAAQ;QAAA,4DAAI;QACzI;QAAA,0EAA2B;QACzB;QAAA,wEAAkC;QAAA,kEAAM;QAAA,4DAAI;QAC5C;QAAA,wEAAkC;QAAA,0EAAc;QAAA,4DAAI;QACpD;QAAA,wEAAkC;QAAA,+EAAmB;QAAA,4DAAI;QACzD;QAAA,qEAAoC;QACpC;QAAA,wEAAkC;QAAA,0EAAc;QAAA,4DAAI;QACtD;QAAA,4DAAM;QACR;QAAA,4DAAK;QACP;QAAA,4DAAK;QACL;QAAA,2EAA2C;QACzC;QAAA,2EAAiD;QAC/C;QAAA,qEAAG;QAAA,mfAG0D;QAAA,4DAAI;QACnE;QAAA,4DAAM;QACN;QAAA,2EAAwC;QACtC;QAAA,qEAAG;QAAA,ieAGgD;QAAA,4DAAI;QACzD;QAAA,4DAAM;QACN;QAAA,2EAA0C;QACxC;QAAA,qEAAG;QAAA,gaAEwG;QAAA,4DAAI;QACjH;QAAA,4DAAM;QACN;QAAA,2EAA0C;QACxC;QAAA,qEAAG;QAAA,2bAGO;QAAA,4DAAI;QAChB;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;;;;;;;;;;;;;;;;;;ACvCO,MAAM,kBAAkB;IAE7B,gBAAgB,CAAC;IAEjB,QAAQ;IACR,CAAC;;oFALU,kBAAkB;gHAAlB,kBAAkB;QCP/B,sEAAK;QACH;QAAA,wEAAuB;QAAA,qEAAU;QAAA,4DAAK;QACtC;QAAA,2EAAiC;QAC/B;QAAA,wEAAO;QACL;QAAA,wEAA0B;QACxB;QAAA,yEAAgB;QAAA,gEAAI;QAAA,4DAAK;QACzB;QAAA,yEAAgB;QAAA,0EAAc;QAAA,4DAAK;QACnC;QAAA,yEAAgB;QAAA,0EAAc;QAAA,4DAAK;QACnC;QAAA,yEAAgB;QAAA,0EAAc;QAAA,4DAAK;QACrC;QAAA,4DAAK;QACP;QAAA,4DAAQ;QACR;QAAA,yEAAO;QACL;QAAA,sEAAI;QACF;QAAA,yEAAgB;QAAA,mEAAO;QAAA,4DAAK;QAC5B;QAAA,sEAAI;QAAA,0EAAc;QAAA,4DAAK;QACvB;QAAA,sEAAI;QAAA,0EAAc;QAAA,4DAAK;QACvB;QAAA,sEAAI;QAAA,0EAAc;QAAA,4DAAK;QACzB;QAAA,4DAAK;QAEP;QAAA,4DAAQ;QACV;QAAA,4DAAQ;QACV;QAAA,4DAAM;QACN;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACVO,MAAM,uBAAuB;IAUlC,YACU,aAA4B,EAC5B,QAAyB,EAC1B,WAAwB;QAFvB,kBAAa,GAAb,aAAa,CAAe;QAC5B,aAAQ,GAAR,QAAQ,CAAiB;QAC1B,gBAAW,GAAX,WAAW,CAAa;QAXjC,mBAAc,GAAQ,EAAE,CAAC;QAMzB,qBAAgB,GAAQ,EAAE,CAAC;IAMvB,CAAC;IAEL,QAAQ;IACR,CAAC;IAED,+BAA+B;QAC7B,IAAI,CAAC,cAAc,CAAC,wBAAwB,GAAG,IAAI,CAAC,wBAAwB,CAAC;QAC7E,IAAI,CAAC,cAAc,CAAC,gBAAgB,GAAG,IAAI,CAAC;QAC5C,IAAI,CAAC,cAAc,CAAC,kBAAkB,GAAG,IAAI,CAAC;QAC9C,IAAI,CAAC,cAAc,CAAC,iBAAiB,GAAG,IAAI,CAAC,iBAAiB,CAAC;QAC/D,IAAI,CAAC,cAAc,CAAC,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;QAC9C,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;QAE1C,IAAI,CAAC,aAAa,CAAC,eAAe,CAAC,IAAI,CAAC,cAAc,CAAC;aACtD,SAAS,CACR,CAAC,aAAkB,EAAE,EAAE;YACrB,IAAI,CAAC,gBAAgB,GAAG,aAAa,CAAC;YACtC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,mCAAmC,CAAC,CAAC;QAC7D,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,+BAA+B,CAAC,CAAC;QACvD,CAAC,CACF,CAAC;IACJ,CAAC;;8FArCU,uBAAuB;qHAAvB,uBAAuB;QCZpC,yEAAsB;QACpB;QAAA,yEAAiC;QAC/B;QAAA,2EAAyB;QAAA,iFAAsB;QAAA,4DAAQ;QACvD;QAAA,2EAC0E;QAAxC,6MAAsC;QADxE,4DAC0E;QAC5E;QAAA,4DAAM;QACJ;QAAA,0EAAsB;QACpB;QAAA,yEAAO;QAAA,2EAAe;QAAA,4DAAQ;QAC9B;QAAA,4EAAiG;QAAzD,uMAA+B;QAAvE,4DAAiG;QACnG;QAAA,4DAAM;QACV;QAAA,4DAAM;QACN;QAAA,6EAAiF;QAA5C,gJAAS,qCAAiC,IAAC;QAAC,mEAA0B;QAAC,iEAAI;QAAA,4DAAS;QACzH;;QARsC,0DAAsC;QAAtC,iGAAsC;QAI9B,0DAA+B;QAA/B,0FAA+B;;;;;;;;;;;;;;;;;;;;;;;ACP9B;AAIiB;;;;;;;;ICkCtD,yEAA4C;IAAA,uDAAiD;;IAAA,4DAAK;;;IAAtD,0DAAiD;IAAjD,4OAAiD;;;IAJ/F,qEAAwC;IACtC;IAAA,qEAAI;IACF;IAAA,yEAAQ;IAAA,uDAAsB;IAAA,4DAAS;IACzC;IAAA,4DAAK;IACL;IAAA,iIAAkG;IACpG;IAAA,4DAAK;;;;IAHO,0DAAsB;IAAtB,yIAAsB;IAE3B,0DAA8B;IAA9B,iGAA8B;;;;AD1BtC,MAAM,gCAAgC;IAW3C,YACU,aAA4B,EAC5B,QAAyB,EAC1B,WAAwB;QAFvB,kBAAa,GAAb,aAAa,CAAe;QAC5B,aAAQ,GAAR,QAAQ,CAAiB;QAC1B,gBAAW,GAAX,WAAW,CAAa;QATjC,wBAAmB,GAAG,KAAK,CAAC;QAC5B,YAAO,GAAG,yEAAkB,CAAC;QAC7B,OAAE,GAAG,CAAC,CAAE;QACR,eAAU,GAAG,CAAC,CAAC;QACf,WAAM,GAAG,CAAC,CAAC;IAMP,CAAC;IAEL,QAAQ;QACN,+BAA+B;QAC/B,IAAI,CAAC,kBAAkB,EAAE,CAAC;IAC5B,CAAC;IACD,YAAY,CAAC,CAAM;QACjB,IAAI,CAAC,mBAAmB,GAAG,CAAC,CAAC;IAC/B,CAAC;IAED,kBAAkB;QAChB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,MAAM,CAAC;QACnD,IAAI,CAAC,QAAQ,GAAG,IAAI,yDAAY,CAAC;YAC/B,GAAG,EAAE,IAAI,CAAC,OAAO,GAAG,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,EAAE,GAAG,UAAU,GAAG,IAAI,CAAC,UAAU,GAAG,QAAQ,GAAG,IAAI,CAAC,MAAM,GAAG,QAAQ;YACnH,SAAS,EAAE,SAAS,GAAG,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC;YACpD,OAAO,EAAE,IAAI;YACb,eAAe,EAAE;gBACf,KAAK;gBACL,OAAO;gBACP,KAAK;gBACL,OAAO;gBACP,MAAM;gBACN,MAAM;gBACN,MAAM;gBACN,OAAO;gBACP,MAAM;gBACN,KAAK;gBACL,KAAK;gBACL,KAAK;gBACL,MAAM;aACP;YACD,iBAAiB,EAAE,IAAI;YACvB,UAAU,EAAE,KAAK;YACjB,WAAW,EAAE,EAAE,GAAG,IAAI,GAAG,IAAI,CAAC,YAAY;SAC3C,CAAC,CAAC;QAEH,IAAI,CAAC,QAAQ,CAAC,iBAAiB,GAAG,IAAI,CAAC,EAAE;YACvC,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC;QAC/B,CAAC,CAAC;QAEF,IAAI,CAAC,QAAQ,CAAC,cAAc,GAAG,CAAC,IAAS,EAAE,QAAa,EAAE,MAAW,EAAE,MAAW,EAAE,EAAE;YACpF,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,wBAAwB,CAAC,CAAC;QAClD,CAAC,CAAC;IACJ,CAAC;;gHA1DU,gCAAgC;8HAAhC,gCAAgC;QCZ7C;QAAA,yEAAsB;QAEpB;QAAA,yEAAsB;QAEpB;QAAA,qEAAI;QAAA,oEAAS;QAAA,4DAAK;QAElB;QAAA,yEAI0D;QAFxD,iKAAY,wBAAoB,IAAC;QAGjC;QAAA,mEAAkC;QAClC,6FACF;QAAA,4DAAM;QAEN;QAIF;QAAA,4DAAM;QAEN;QAAA,0EAAkD;QAEhD;QAAA,sEAAI;QAAA,wEAAY;QAAA,4DAAK;QACrB;QAAA,qEAAG;QAAA,wDAA2C;QAAA,4DAAI;QAElD;QAAA,4EAAqB;QACnB;QAAA,yEAAO;QACL;QAAA,sEAAI;QACF;QAAA,yEAAgB;QAAA,gEAAI;QAAA,4DAAK;QACzB;QAAA,sEAAI;QAAA,gEAAI;QAAA,4DAAK;QACf;QAAA,4DAAK;QACP;QAAA,4DAAQ;QACR;QAAA,yEAAO;QACL;QAAA,6HAKK;QACP;QAAA,4DAAQ;QACV;QAAA,4DAAQ;QAER;QAAA,uEAAK;QACH;QAAA,uEAAK;QACH,+FACA;QAAA,0EAA2B;QACzB;QAAA,qEAAoG;QACtG;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAAA,8EAA4I;QAAnF,yJAAS,wBAAoB,IAAC;QACrF;QAAA,uEAAkC;QAAC,2EACrC;QAAA,4DAAS;QACT;QAAA,8EAA2H;QAAlE,yJAAS,wBAAoB,IAAC;QACrF;QAAA,uEAA+B;QAAC,2EAClC;QAAA,4DAAS;QACT;QAAA,8EAA4H;QAApE,yJAAS,yBAAqB,IAAC;QACrF;QAAA,uEAAiC;QAAC,2EACpC;QAAA,4DAAS;QACX;QAAA,4DAAM;QAER;QAAA,4DAAM;QAER;QAAA,4DAAM;QACN;;QAzDM,0DAAiD;QAAjD,mKAAiD;QAiBhD,2DAA2C;QAA3C,mLAA2C;QAUrB,2DAAiB;QAAjB,uFAAiB;QAaS,2DAAgD;QAAhD,wKAAgD;QAGT,0DAAmD;QAAnD,gHAAmD;QAGnD,0DAAkC;QAAlC,+FAAkC;QAGlC,0DAAmC;QAAnC,gGAAmC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IEvC7H,qFAA6E;;;;IAajE,uEAAqE;IAAA,0EAAe;IAAA,4DAAI;;;IAA9D,8JAA0C;;;IAExE,0EAAwD;IACpD;IAAA,qEACW;IACf;IAAA,4DAAM;;;IAFG,0DAAqB;IAArB,2JAAqB;;;IAQhC,0EAA6C;IAC3C;IAAA,0EAAiC;IAC/B;IAAA,4EAAyB;IAAA,sEAAW;IAAA,4DAAQ;IAC5C;IAAA,0EAA8C;IAAA,uDAA0B;;IAAA,4DAAM;IAChF;IAAA,4DAAM;IACN;IAAA,2EAAiC;IAC/B;IAAA,6EAAyB;IAAA,oEAAQ;IAAA,4DAAQ;IACzC;IAAA,2EAA8C;IAAA,wDAAkB;;IAAA,4DAAM;IACxE;IAAA,4DAAM;IACN;IAAA,2EAAiC;IAC/B;IAAA,6EAAyB;IAAA,kEAAM;IAAA,4DAAQ;IACvC;IAAA,2EAA8C;IAAA,wDAAsB;;IAAA,4DAAM;IAC5E;IAAA,4DAAM;IACR;IAAA,4DAAM;;;IAV4C,0DAA0B;IAA1B,mJAA0B;IAI1B,2DAAkB;IAAlB,iJAAkB;IAIlB,2DAAsB;IAAtB,gJAAsB;;;IAGxE,0EAA6C;IAC3C;IAAA,0EAAiC;IAC/B;IAAA,4EAAyB;IAAA,mEAAQ;IAAA,4DAAQ;IACzC;IAAA,0EAA8C;IAAA,uDAA4B;;IAAA,4DAAM;IAClF;IAAA,4DAAM;IACN;IAAA,2EAAiC;IAC/B;IAAA,6EAAyB;IAAA,kEAAM;IAAA,4DAAQ;IACvC;IAAA,2EAA8C;IAAA,wDAA8B;;IAAA,4DAAM;IACpF;IAAA,4DAAM;IACR;IAAA,4DAAM;;;IAN4C,0DAA4B;IAA5B,qJAA4B;IAI5B,2DAA8B;IAA9B,8JAA8B;;;IAGhF,+FAA0G;;;IAApD,iFAAmB;;;;IAiHzE,0EAAoD;IAClD;IAAA,0EAAsC;IACpC;IAAA,4EAAyB;IAAA,oFAAyB;IAAA,4DAAQ;IAC1D;IAAA,4EACoG;IADtB,ibAAyC,8QACjE,8GAA4C,KADqB;IAAvH,4DACoG;IACpG;IAAA,iFAA0F;IAA3C,sbAAyC;IAAE,4DAAa;IACzG;IAAA,4DAAM;IACN;IAAA,2EAAsC;IACpC;IAAA,6EAAyB;IAAA,mFAAuB;IAAA,4DAAQ;IACxD;IAAA,6EAC6F;IADf,ibAAwC,+QACjE,wGAAsC,KAD2B;IAAtH,4DAC6F;IAC7F;IAAA,kFAAwF;IAA1C,sbAAwC;IAAE,4DAAa;IACvG;IAAA,4DAAM;IACR;IAAA,4DAAM;;;IAV4E,0DAAyC;IAAzC,wGAAyC;IAExE,0DAAyC;IAAzC,wGAAyC;IAIV,0DAAwC;IAAxC,uGAAwC;IAExE,0DAAwC;IAAxC,uGAAwC;;;;IAG1F,0EAA8C;IAC5C;IAAA,0EAAsC;IACpC;IAAA,4EAAyB;IAAA,8EAAmB;IAAA,4DAAQ;IACpD;IAAA,4EACwF;IADV,2aAAmC,8QACjE,wGAAsC,KAD2B;IAAjH,4DACwF;IACxF;IAAA,iFAA8E;IAArC,gbAAmC;IAAE,4DAAa;IAC7F;IAAA,4DAAM;IACN;IAAA,2EAAsC;IACpC;IAAA,6EAAyB;IAAA,6EAAiB;IAAA,4DAAQ;IAClD;IAAA,6EACoF;IADN,0aAAiC,+QACjE,sGAAoC,KAD6B;IAA/G,4DACoF;IACpF;IAAA,kFAA0E;IAAnC,+aAAiC;IAAE,4DAAa;IACzF;IAAA,4DAAM;IACR;IAAA,4DAAM;;;IAV4E,0DAAmC;IAAnC,kGAAmC;IAExE,0DAAmC;IAAnC,kGAAmC;IAIE,0DAAiC;IAAjC,gGAAiC;IAExE,0DAAiC;IAAjC,gGAAiC;;;;IAxLpF,+EAAyG;IACvG;IAEA;IAAA,0EAAuB;IACrB;IAAA,6EAA8B;IAC5B;IAAA,0EAAwC;IACtC;IAAA,2EAA2B;IACzB;IAAA,2EAAiC;IAC/B;IAAA,6EAAyB;IAAA,oEAAQ;IAAA,4DAAQ;IACzC;IAAA,iFAC+C;IADxC,2ZAA2B,8QAA+E,kFAAgB,KAA/F;IAAlC,4DAC+C;IAC7C;IAAA,yHAAwF;IAC5F;IAAA,4DAAM;IACN;IAAA,6HAGM;IACN;IAIF;IAAA,4DAAM;IACN;IAAA,8HAaM;IACN;IAAA,8HASM;IACN;IAAA,iLAA0G;IAC1G;IAAA,4DAAM;IACN;IAAA,2EAAqB;IACnB;IAAA,sFAA6D;IAC/D;IAAA,4DAAM;IACR;IAAA,2EAAgC;IAC9B;IAAA,2EAA2B;IACzB;IAAA,2EAAiC;IAC/B;IAAA,6EAAyB;IAAA,gEAAI;IAAA,4DAAQ;IACrC;IAAA,6EAC2B;IADa,uZAAuB;IAA/D,4DAC2B;IAC7B;IAAA,4DAAM;IACN;IAAA,2EAAiC;IAC/B;IAAA,6EAAyB;IAAA,8DAAE;IAAA,4DAAQ;IACnC;IAAA,6EACwB;IADgB,qZAAqB;IAA7D,4DACwB;IAC1B;IAAA,4DAAM;IACN;IAAA,2EAAiC;IAC/B;IAAA,6EAAyB;IAAA,qEAAS;IAAA,4DAAQ;IAC1C;IAAA,6EAAuG;IAA/D,sZAAsB;IAA9D,4DAAuG;IACzG;IAAA,4DAAM;IACR;IAAA,4DAAM;IACR;IAAA,4DAAM;IACN;IAAA,2EAAqC;IACnC;IAAA,2EAA2B;IACzB;IAAA,2EAAiC;IAC/B;IAAA,6EAAyB;IAAA,+EAAmB;IAAA,4DAAQ;IACpD;IAAA,6EAAmI;IAA3F,+ZAA+B;IAAvE,4DAAmI;IACrI;IAAA,4DAAM;IACR;IAAA,4DAAM;IACN;IAAA,2EAA2B;IACzB;IAAA,2EAAiC;IAC/B;IAAA,6EAAyB;IAAA,4EAAgB;IAAA,4DAAQ;IACjD;IAAA,6EAEgD;IAF7B,wZAAwB,sQAExB,6FAA2B,KAFH;IAA3C,4DAEgD;IAChD;IAAA,kFAAwD;IAA5C,6ZAAwB;IAAoB,4DAAa;IACvE;IAAA,4DAAM;IAEN;IAAA,2EAAiC;IAC/B;IAAA,6EAAyB;IAAA,mFAAuB;IAAA,4DAAQ;IACxD;IAAA,6EAEgE;IAF7C,uaAAuC,sQAEtC,4GAA0C,KAFJ;IAA1D,4DAEgE;IAChE;IAAA,mFAAsF;IAA1E,6aAAuC;IAAmC,4DAAa;IACrG;IAAA,4DAAM;IAEN;IAAA,4EAAiC;IAC/B;IAAA,8EAAyB;IAAA,0EAAa;IAAA,4DAAQ;IAC9C;IAAA,8EAEsD;IAFwB,+ZAA8B,uQAEzF,mGAAiC,KAFwD;IAA5G,4DAEsD;IACtD;IAAA,mFAAoE;IAAhC,oaAA8B;IAAE,4DAAa;IACnF;IAAA,4DAAM;IACR;IAAA,4DAAM;IACN;IAAA,4EAAsB;IAEpB;IAAA,4EAAiC;IAC/B;IAAA,8EAAyB;IAAA,oFAAuB;IAAA,4DAAQ;IACxD;IAAA,8EAC2G;IAD1C,uaAAsC,uQACvC,2GAAyC,KADF;IAAvG,4DAC2G;IAC3G;IAAA,mFAAoF;IAAxE,4aAAsC;IAAkC,4DAAa;IACnG;IAAA,4DAAM;IACN;IAAA,4EAAiC;IAC/B;IAAA,8EAAyB;IAAA,mFAAsB;IAAA,4DAAQ;IACvD;IAAA,8EAC4F;IADd,saAAqC,uQACjE,0GAAwC,KADyB;IAAnH,4DAC4F;IAC5F;IAAA,mFAAkF;IAAvC,2aAAqC;IAAE,4DAAa;IACjG;IAAA,4DAAM;IACR;IAAA,4DAAM;IAEN;IAAA,4EAAsB;IACpB;IAAA,4EAAiC;IAC/B;IAAA,8EAAyB;IAAA,8EAAiB;IAAA,4DAAQ;IAClD;IAAA,8EAC6D;IADiB,qaAAoC,uQAC/F,yGAAuC,KADwD;IAAlH,4DAC6D;IAC7D;IAAA,mFAA+E;IAAnE,0aAAoC;IAA+B,4DAAa;IAC9F;IAAA,4DAAM;IACN;IAAA,4EAAiC;IAC/B;IAAA,8EAAyB;IAAA,iFAAoB;IAAA,4DAAQ;IACrD;IAAA,8EAC2D;IADmB,maAAkC,uQAC7F,uGAAqC,KADwD;IAAhH,4DAC2D;IAC3D;IAAA,mFAA2E;IAAnC,waAAkC;IAAC,4DAAa;IAC1F;IAAA,4DAAM;IACR;IAAA,4DAAM;IAEN;IAAA,4EAAsB;IACpB;IAAA,4EAAiC;IAC/B;IAAA,8EAAyB;IAAA,2EAAc;IAAA,4DAAQ;IAC/C;IAAA,8EAC+D;IADe,+ZAA8B,uQACzF,mGAAiC,KADwD;IAA5G,4DAC+D;IAC/D;IAAA,mFAAoE;IAAhC,oaAA8B;IAAE,4DAAa;IACnF;IAAA,4DAAM;IACN;IAAA,4EAAiC;IAC/B;IAAA,8EAAyB;IAAA,8EAAiB;IAAA,4DAAQ;IAClD;IAAA,8EAC+F;IADjB,maAAkC,uQACjE,uGAAqC,KAD4B;IAAhH,4DAC+F;IAC/F;IAAA,mFAA4E;IAApC,waAAkC;IAAE,4DAAa;IAC3F;IAAA,4DAAM;IACN;IAAA,4EAAiC;IAC/B;IAAA,8EAAyB;IAAA,4FAA+B;IAAA,4DAAQ;IAChE;IAAA,8EACuH;IADzC,+aAA8C,uQACjE,mHAAiD,KADgB;IAA5H,4DACuH;IACvH;IAAA,mFAAoG;IAAhD,obAA8C;IAAE,4DAAa;IACnH;IAAA,4DAAM;IACR;IAAA,4DAAM;IACN;IAAA,4EAAsB;IACpB;IAAA,+EAAgG;IAAtC,0SAAS,6FAA2B,KAAC;IAAC,oEAA0B;IAAA,6FACjH;IAAA,4DAAS;IAClB;IAAA,+EAA6F;IAAnC,0SAAS,0FAAwB,KAAC;IAAC,oEAA0B;IAAA,0FAC/G;IAAA,4DAAS;IACnB;IAAA,4DAAM;IAEN;IAAA,gIAaM;IACN;IAAA,gIAaM;IACR;IAAA,4DAAM;IACR;IAAA,4DAAS;IACX;IAAA,4DAAM;IAEN;IAAA,4EAAsB;IACpB;IAAA,+EAAoI;IAA7G,0SAAS,sFAAoB,KAAC;IAA+E,gFAAmB;IAAA,4DAAS;IAClK;IAAA,4DAAM;IACR;IAAA,4DAAO;;;;IAzLY,2DAA2B;IAA3B,yFAA2B;IAE5B,0DAAoB;IAApB,uFAAoB;IAEtB,0DAAoB;IAApB,uFAAoB;IAStB,0DAAoB;IAApB,uFAAoB;IAcpB,0DAAoB;IAApB,uFAAoB;IAUM,0DAAoB;IAApB,uFAAoB;IAG7B,0DAAiB;IAAjB,iFAAiB;IAMI,2DAAuB;IAAvB,qFAAuB;IAKvB,0DAAqB;IAArB,mFAAqB;IAKrB,0DAAsB;IAAtB,oFAAsB;IAQtB,2DAA+B;IAA/B,6FAA+B;IAMpD,2DAAwB;IAAxB,sFAAwB;IAG/B,0DAAwB;IAAxB,sFAAwB;IAKjB,0DAAuC;IAAvC,qGAAuC;IAG9C,0DAAuC;IAAvC,qGAAuC;IAK2B,0DAA8B;IAA9B,4FAA8B;IAGxE,0DAA8B;IAA9B,4FAA8B;IAOD,2DAAsC;IAAtC,oGAAsC;IAE3F,0DAAsC;IAAtC,oGAAsC;IAI4B,0DAAqC;IAArC,mGAAqC;IAExE,0DAAqC;IAArC,mGAAqC;IAOF,2DAAoC;IAApC,kGAAoC;IAEtG,0DAAoC;IAApC,kGAAoC;IAI8B,0DAAkC;IAAlC,gGAAkC;IAExE,0DAAkC;IAAlC,gGAAkC;IAOI,2DAA8B;IAA9B,4FAA8B;IAExE,0DAA8B;IAA9B,4FAA8B;IAIY,0DAAkC;IAAlC,gGAAkC;IAExE,0DAAkC;IAAlC,gGAAkC;IAII,0DAA8C;IAA9C,4GAA8C;IAExE,0DAA8C;IAA9C,4GAA8C;IAUhG,2DAA2B;IAA3B,8FAA2B;IAc3B,0DAAqB;IAArB,wFAAqB;IAmBuB,0DAAiC;IAAjC,gFAAiC;;;IAI7F,0EAAoD;IAClD;IAAA,+FAAsI;IACxI;IAAA,4DAAM;;;IAD2B,0DAAkD;IAAlD,iHAAkD;;;ADrM5E,MAAM,sBAAsB;IA8EjC,YACU,YAA4B,EAC5B,aAA4B,EAC5B,QAAyB,EACzB,KAAa,EACb,WAAwB;QAJxB,iBAAY,GAAZ,YAAY,CAAgB;QAC5B,kBAAa,GAAb,aAAa,CAAe;QAC5B,aAAQ,GAAR,QAAQ,CAAiB;QACzB,UAAK,GAAL,KAAK,CAAQ;QACb,gBAAW,GAAX,WAAW,CAAa;QAhFlC,8BAAyB,GAAS,IAAI,IAAI,EAAE,CAAC;QAG7C,6BAAwB,GAAS,IAAI,IAAI,EAAE,CAAC;QAG5C,4BAAuB,GAAS,IAAI,IAAI,EAAE,CAAC;QAG3C,qBAAgB,GAAS,IAAI,IAAI,EAAE,CAAC;QAGpC,yBAAoB,GAAS,IAAI,IAAI,EAAE,CAAC;QAGxC,qCAAgC,GAAS,IAAI,IAAI,EAAE,CAAC;QAGpD,eAAU,GAAS,IAAI,IAAI,EAAE,CAAC;QAG9B,2BAAsB,GAAS,IAAI,IAAI,EAAE,CAAC;QAG1C,yBAAoB,GAAS,IAAI,IAAI,EAAE,CAAC;QAKxC,qBAAgB,GAAS,IAAI,IAAI,EAAE,CAAC;QAGpC,gCAA2B,GAAS,IAAI,IAAI,EAAE,CAAC;QAG/C,+BAA0B,GAAS,IAAI,IAAI,EAAE,CAAC;QAG9C,0BAAqB,GAAS,IAAI,IAAI,EAAE,CAAC;QAGzC,wBAAmB,GAAS,IAAI,IAAI,EAAE,CAAC;QAGvC,0BAAqB,GAAG,KAAK,CAAC;QAC9B,oBAAe,GAAG,KAAK,CAAC;QASxB,aAAQ,GAAG,CAAC,CAAC;QAUb,UAAK,GAAQ,EAAE,CAAC;QAEhB,yBAAoB,GAAG,KAAK,CAAC;QAE7B,2BAAsB,GAAQ,EAAE,CAAC;QAEjC,mBAAc,GAAG,KAAK,CAAC;QAEvB,qBAAgB,GAAG,KAAK,CAAC;IAStB,CAAC;IAEJ,QAAQ;QACN,IAAI,CAAC,WAAW,EAAE,CAAC;IACrB,CAAC;IAED,sBAAsB;QACpB,IAAI,CAAC,gBAAgB,GAAG,CAAC,IAAI,CAAC,gBAAgB,CAAC;IACjD,CAAC;IACD,yBAAyB;QACvB,IAAI,CAAC,qBAAqB,GAAG,CAAC,IAAI,CAAC,qBAAqB,CAAC;IAC3D,CAAC;IACD,sBAAsB;QACpB,IAAI,CAAC,eAAe,GAAG,CAAC,IAAI,CAAC,eAAe,CAAC;IAC/C,CAAC;IAED,kCAAkC,CAAC,KAAW;QAC5C,IAAI,CAAC,yBAAyB,GAAG,KAAK,CAAC;IACzC,CAAC;IACD,iCAAiC,CAAC,KAAW;QAC3C,IAAI,CAAC,wBAAwB,GAAG,KAAK,CAAC;IACxC,CAAC;IACD,gCAAgC,CAAC,KAAW;QAC1C,IAAI,CAAC,uBAAuB,GAAG,KAAK,CAAC;IACvC,CAAC;IACD,yBAAyB,CAAC,KAAW;QACnC,IAAI,CAAC,gBAAgB,GAAG,KAAK,CAAC;IAChC,CAAC;IACD,6BAA6B,CAAC,KAAW;QACvC,IAAI,CAAC,oBAAoB,GAAG,KAAK,CAAC;IACpC,CAAC;IACD,yCAAyC,CAAC,KAAW;QACnD,IAAI,CAAC,gCAAgC,GAAG,KAAK,CAAC;IAChD,CAAC;IACD,mBAAmB,CAAC,KAAW;QAC7B,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;IAC1B,CAAC;IACD,yBAAyB,CAAC,KAAW;QACnC,IAAI,CAAC,gBAAgB,GAAG,KAAK,CAAC;IAChC,CAAC;IACD,oCAAoC,CAAC,KAAW;QAC9C,IAAI,CAAC,2BAA2B,GAAG,KAAK,CAAC;IAC3C,CAAC;IACD,8BAA8B,CAAC,KAAW;QACxC,IAAI,CAAC,0BAA0B,GAAG,KAAK,CAAC;IAC1C,CAAC;IACD,8BAA8B,CAAC,KAAW;QACxC,IAAI,CAAC,qBAAqB,GAAG,KAAK,CAAC;IACrC,CAAC;IACD,4BAA4B,CAAC,KAAW;QACtC,IAAI,CAAC,mBAAmB,GAAG,KAAK,CAAC;IACnC,CAAC;IAED,+BAA+B,CAAC,KAAW;QACzC,IAAI,CAAC,sBAAsB,GAAG,KAAK,CAAC;IACtC,CAAC;IACD,6BAA6B,CAAC,KAAW;QACvC,IAAI,CAAC,oBAAoB,GAAG,KAAK,CAAC;IACpC,CAAC;IAED,QAAQ,CAAC,KAAqB;QAC5B,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC,IAAI,CAAC;QACjC,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC;QACzB,2DAA2D;QAC3D,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,cAAc,CAAC,EAAE,CAAC;QACvC,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,IAAI,CAAC;QAClD,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC;QAC3C,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC;QAC/C,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC;QAC/D,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC;QAC7C,IAAI,CAAC,WAAW,GAAG,KAAK,GAAG,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,cAAc,CAAC;QAEtE,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;IAC7B,CAAC;IAID,kBAAkB;QAEhB,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;QACpC,IAAI,CAAC,KAAK,CAAC,gBAAgB,GAAG,IAAI,CAAC,UAAU,CAAC;QAC9C,IAAI,CAAC,KAAK,CAAC,iBAAiB,GAAG,IAAI,CAAC,iBAAiB,CAAC;QACtD,IAAI,CAAC,KAAK,CAAC,qBAAqB,GAAG,IAAI,CAAC,yBAAyB,CAAC;QAClE,IAAI,CAAC,KAAK,CAAC,aAAa,GAAG,IAAI,CAAC,gBAAgB,CAAC;QACjD,IAAI,CAAC,KAAK,CAAC,YAAY,GAAG,IAAI,CAAC,gBAAgB,CAAC;QAChD,IAAI,CAAC,KAAK,CAAC,oBAAoB,GAAG,IAAI,CAAC,wBAAwB,CAAC;QAChE,IAAI,CAAC,KAAK,CAAC,mBAAmB,GAAG,IAAI,CAAC,uBAAuB,CAAC;QAC9D,IAAI,CAAC,KAAK,CAAC,YAAY,GAAG,IAAI,CAAC,gBAAgB,CAAC;QAChD,IAAI,CAAC,KAAK,CAAC,yBAAyB,GAAG,IAAI,CAAC,gCAAgC,CAAC;QAC7E,IAAI,CAAC,KAAK,CAAC,gBAAgB,GAAG,IAAI,CAAC,oBAAoB,CAAC;QAExD,IAAI,CAAC,KAAK,CAAC,eAAe,GAAG,IAAI,CAAC,sBAAsB,CAAE;QAC1D,IAAI,CAAC,KAAK,CAAC,mBAAmB,GAAG,IAAI,CAAC,oBAAoB,CAAE;QAE5D,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC;QACrC,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC;QACjC,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;QACpC,IAAI,CAAC,KAAK,CAAC,qBAAqB,GAAG,IAAI,CAAC,qBAAqB,CAAC;QAC9D,IAAI,CAAC,KAAK,CAAC,eAAe,GAAG,IAAI,CAAC,eAAe,CAAC;QAClD,IAAI,CAAC,KAAK,CAAC,uBAAuB,GAAG,IAAI,CAAC,2BAA2B,CAAC;QACtE,IAAI,CAAC,KAAK,CAAC,sBAAsB,GAAG,IAAI,CAAC,0BAA0B,CAAC;QACpE,IAAI,CAAC,KAAK,CAAC,iBAAiB,GAAG,IAAI,CAAC,qBAAqB,CAAC;QAC1D,IAAI,CAAC,KAAK,CAAC,eAAe,GAAG,IAAI,CAAC,mBAAmB,CAAC;QAEtD,2BAA2B;QAE3B,IAAI,CAAC,aAAa,CAAC,0BAA0B,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,SAAS,CACjE,CAAC,aAAkB,EAAE,EAAE;YACrB,IAAI,CAAC,sBAAsB,GAAG,aAAa,CAAC;YAC5C,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;YACzC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,yCAAyC,CAAC,CAAC;YACjE,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC;QACnC,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,yBAAyB,CAAC,CAAC;QACjD,CAAC,CACF,CAAC;IACJ,CAAC;IAED,WAAW;QACT,IAAI,CAAC,aAAa,CAAC,aAAa,EAAE,CAAC,SAAS,CAC1C,CAAC,OAAiB,EAAE,EAAE;YACpB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACzB,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CACF,CAAC;IACJ,CAAC;;4FApNU,sBAAsB;oHAAtB,sBAAsB;QCpBnC,yEAA4B;QAC1B;QAAA,wEAAuB;QACrB;QAAA,wEAA4B;QAC1B;QAAA,uEAAkC;QAAA,yEAAc;QAAA,4DAAI;QACtD;QAAA,4DAAK;QACP;QAAA,4DAAK;QACL;QAAA,yEAA0B;QACxB;QAAA,yEAA0B;QACxB;QAAA,wEAA8D;QAAnC,0IAAS,4BAAwB,IAAC;QAC3D;QAAA,mEAA0B;QAAC,mEAAM;QAAA,4DAAI;QACzC;QAAA,4DAAK;QACL;QAIF;QAAA,4DAAK;QACL;QAAA,yEAAiB;QAAA,gFAAoB;QAAA,4DAAK;QAC1C;QAAA,uEAAK;QACH;QAAA,4JAA6E;QAC/E;QAAA,4DAAM;QACN;QAAA,0HAkMO;QACT;QAAA,4DAAM;QACN;QAAA,qHAEM;QACN;;QAxNS,0DAA8B;QAA9B,6IAA8B;QAeT,2DAAuB;QAAvB,uFAAuB;QAEI,0DAA+C;QAA/C,mHAA+C;QAoMlG,0DAA0B;QAA1B,0FAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IElN9B,yEAA4C;IACxC;IAAA,yEAAiB;IACf;IAAA,yEAAiB;IACb;IAAA,oEAAuB;IACzB;IAAA,oEAAuB;IACvB;IAAA,qEAAuB;IACvB;IAAA,qEAAuB;IACvB;IAAA,qEAAuB;IACvB;IAAA,qEAAuB;IACvB;IAAA,qEAAuB;IACvB;IAAA,qEAAuB;IACvB;IAAA,sEAA0B;IAC5B;IAAA,4DAAM;IACR;IAAA,4DAAM;IACV;IAAA,4DAAM;;;IAgCQ,yEAAuG;IACrG;IAAA,yEAAoB;IAAyB,8EAAmB;IAAA,4DAAI;IACpE;IAAA,yEAAoB;IAAyB,wEAAa;IAAA,4DAAI;IAC9D;IAAA,0EAAoB;IAAyB,oFAAwB;IAAA,4DAAI;IAC3E;IAAA,4DAAK;;;;IAnBf,yEAAiI;IAAjD,2XAAS,0GAAsC,KAAC;IAC9H;IAAA,qEAAI;IAAA,uDAAS;IAAA,4DAAK;IAClB;IAAA,yEAAuE;;IACrE,uDAAuG;;IAAA,4DAAK;IAC9G;IAAA,sEAAI;IAAA,wDAAgD;;IAAA,4DAAK;IACzD;IAAA,sEAAI;IAAA,wDAAuC;IAAA,4DAAK;IAChD;IAAA,sEAAI;IAAA,wDAAsC;IAAA,4DAAK;IAC/C;IAAA,sEAAI;IAAA,wDAAmC;IAAA,4DAAK;IAC5C;IAAA,sEAAI;IAAA,wDAAyD;;IAAA,4DAAK;IAClE;IAAA,sEAAI;IAAA,wDAA0C;;IAAA,4DAAK;IACnD;IAAA,sEAAI;IACA;IAAA,2EAAgC;IAC5B;IAAA,8EAA4I;IAC1I,uFAAO;IAAA,uEAA2B;IACpC;IAAA,4DAAS;IACT;IAAA,yIAIK;IACP;IAAA,4DAAM;IACZ;IAAA,4DAAK;IACP;IAAA,4DAAK;;;;IArBC,0DAAS;IAAT,yEAAS;IACT,0DAAkE;IAAlE,6LAAkE;IACpE,0DAAuG;IAAvG,+RAAuG;IACrG,0DAAgD;IAAhD,4KAAgD;IAChD,0DAAuC;IAAvC,uGAAuC;IACvC,0DAAsC;IAAtC,8IAAsC;IACtC,0DAAmC;IAAnC,mGAAmC;IACnC,0DAAyD;IAAzD,yNAAyD;IACzD,0DAA0C;IAA1C,kKAA0C;;;IAxBpD,4EAAuD;IACrD;IAAA,wEAAO;IACL;IAAA,yEAA0B;IACxB;IAAA,yEAAgB;IAAA,4DAAC;IAAA,4DAAK;IACtB;IAAA,yEAAgB;IAAA,4EAAgB;IAAA,4DAAK;IACrC;IAAA,0EAAgB;IAAA,kEAAM;IAAA,4DAAK;IAC3B;IAAA,0EAAgB;IAAA,iEAAK;IAAA,4DAAK;IAC1B;IAAA,0EAAgB;IAAA,iEAAK;IAAA,4DAAK;IAC1B;IAAA,0EAAgB;IAAA,qEAAS;IAAA,4DAAK;IAC9B;IAAA,0EAAgB;IAAA,iEAAK;IAAA,4DAAK;IAC1B;IAAA,0EAAgB;IAAA,8DAAE;IAAA,4DAAK;IACvB;IAAA,0EAAgB;IAAA,kEAAM;IAAA,4DAAK;IAC7B;IAAA,4DAAK;IACP;IAAA,4DAAQ;IACR;IAAA,yEAAO;IACL;IAAA,oIAsBK;IACP;IAAA,4DAAQ;IACV;IAAA,4DAAQ;;;IAxBiC,2DAA+B;IAA/B,sGAA+B;;;;;IAgI9D,0EAAoD;IAClD;IAAA,0EAAsC;IACpC;IAAA,4EAAyB;IAAA,oFAAyB;IAAA,4DAAQ;IAC1D;IAAA,4EACgH;IADlC,6bAAyC,0RACpG,8GAA4C,KADwD;IAAvH,4DACgH;IAChH;IAAA,iFAA0F;IAA3C,kcAAyC;IAAE,4DAAa;IACzG;IAAA,4DAAM;IACN;IAAA,2EAAsC;IACpC;IAAA,6EAAyB;IAAA,mFAAuB;IAAA,4DAAQ;IACxD;IAAA,6EAC0G;IAD5B,6bAAwC,2RACnG,wGAAsC,KAD6D;IAAtH,4DAC0G;IAC1G;IAAA,kFAAwF;IAA1C,kcAAwC;IAAE,4DAAa;IACvG;IAAA,4DAAM;IACR;IAAA,4DAAM;;;IAV4E,0DAAyC;IAAzC,wGAAyC;IAExE,0DAAyC;IAAzC,wGAAyC;IAIV,0DAAwC;IAAxC,uGAAwC;IAExE,0DAAwC;IAAxC,uGAAwC;;;;IAG1F,0EAA8C;IAC5C;IAAA,0EAAsC;IACpC;IAAA,4EAAyB;IAAA,8EAAmB;IAAA,4DAAQ;IACpD;IAAA,4EAC0G;IAD5B,ubAAmC,0RAC9F,wGAAsC,KADwD;IAAjH,4DAC0G;IAC1G;IAAA,iFAA8E;IAArC,4bAAmC;IAAE,4DAAa;IAC7F;IAAA,4DAAM;IACN;IAAA,2EAAsC;IACpC;IAAA,6EAAyB;IAAA,6EAAiB;IAAA,4DAAQ;IAClD;IAAA,6EACwG;IAD1B,sbAAiC,2RAC5F,sGAAoC,KADwD;IAA/G,4DACwG;IACxG;IAAA,kFAA0E;IAAnC,2bAAiC;IAAE,4DAAa;IACzF;IAAA,4DAAM;IACR;IAAA,4DAAM;;;IAV4E,0DAAmC;IAAnC,kGAAmC;IAExE,0DAAmC;IAAnC,kGAAmC;IAIE,0DAAiC;IAAjC,gGAAiC;IAExE,0DAAiC;IAAjC,gGAAiC;;;;IA/HlF,0EAAqD;IACnD;IAAA,6EAA8B;IAC5B;IAAA,0EAAqC;IACnC;IAAA,0EAA2B;IACzB;IAAA,0EAAiC;IAC/B;IAAA,6EAAyB;IAAA,gEAAI;IAAA,4DAAQ;IACrC;IAAA,6EAAmH;IAA3E,oaAAuB;IAA/D,4DAAmH;IACrH;IAAA,4DAAM;IACN;IAAA,2EAAiC;IAC/B;IAAA,6EAAyB;IAAA,8DAAE;IAAA,4DAAQ;IACnC;IAAA,6EAA+G;IAAvE,kaAAqB;IAA7D,4DAA+G;IACjH;IAAA,4DAAM;IACN;IAAA,2EAAiC;IAC/B;IAAA,6EAAyB;IAAA,qEAAS;IAAA,4DAAQ;IAC1C;IAAA,6EAAuG;IAA/D,maAAsB;IAA9D,4DAAuG;IACzG;IAAA,4DAAM;IACN;IAAA,2EAAiC;IAC/B;IAAA,6EAAyB;IAAA,+EAAmB;IAAA,4DAAQ;IACpD;IAAA,6EAAmI;IAA3F,4aAA+B;IAAvE,4DAAmI;IACrI;IAAA,4DAAM;IACR;IAAA,4DAAM;IACN;IAAA,2EAA2B;IACzB;IAAA,2EAAiC;IAC/B;IAAA,6EAAyB;IAAA,4EAAgB;IAAA,4DAAQ;IACjD;IAAA,6EACwG;IADrF,qaAAwB,mRACf,6FAA2B,KADZ;IAA3C,4DACwG;IACxG;IAAA,kFAAwD;IAA5C,0aAAwB;IAAoB,4DAAa;IACvE;IAAA,4DAAM;IAEN;IAAA,2EAAiC;IAC/B;IAAA,6EAAyB;IAAA,mFAAuB;IAAA,4DAAQ;IACxD;IAAA,6EACuH;IADpG,obAAuC,mRAC9B,4GAA0C,KADZ;IAA1D,4DACuH;IACvH;IAAA,kFAAsF;IAA1E,ybAAuC;IAAmC,4DAAa;IACrG;IAAA,4DAAM;IAEN;IAAA,2EAAiC;IAC/B;IAAA,6EAAyB;IAAA,yEAAa;IAAA,4DAAQ;IAC9C;IAAA,6EAC8G;IADhC,2aAA8B,mRAChF,mGAAiC,KAD+C;IAA5G,4DAC8G;IAC9G;IAAA,kFAAoE;IAAhC,gbAA8B;IAAE,4DAAa;IACnF;IAAA,4DAAM;IACR;IAAA,4DAAM;IACN;IAAA,2EAAsB;IACpB;IAAA,2EAAiC;IAC/B;IAAA,6EAAyB;IAAA,mFAAuB;IAAA,4DAAQ;IACxD;IAAA,6EAC6G;IAD5C,mbAAsC,mRACpF,2GAAyC,KAD2C;IAAvG,4DAC6G;IAC7G;IAAA,kFAAmF;IAAvE,wbAAsC;IAAiC,4DAAa;IAClG;IAAA,4DAAM;IACN;IAAA,2EAAiC;IAC/B;IAAA,6EAAyB;IAAA,kFAAsB;IAAA,4DAAQ;IACvD;IAAA,6EAC4G;IAD9B,kbAAqC,mRAChG,0GAAwC,KADwD;IAAnH,4DAC4G;IAC5G;IAAA,kFAAiF;IAAtC,ubAAqC;IAAC,4DAAa;IAChG;IAAA,4DAAM;IACR;IAAA,4DAAM;IAEN;IAAA,2EAAsB;IACpB;IAAA,2EAAiC;IAC/B;IAAA,8EAAyB;IAAA,8EAAiB;IAAA,4DAAQ;IAClD;IAAA,8EAC2G;IAD7B,kbAAoC,oRAC/F,yGAAuC,KADwD;IAAlH,4DAC2G;IAC3G;IAAA,mFAA+E;IAAnE,ubAAoC;IAA+B,4DAAa;IAC9F;IAAA,4DAAM;IACN;IAAA,4EAAiC;IAC/B;IAAA,8EAAyB;IAAA,iFAAoB;IAAA,4DAAQ;IACrD;IAAA,8EACyG;IAD3B,gbAAkC,oRAC7F,uGAAqC,KADwD;IAAhH,4DACyG;IACzG;IAAA,mFAA2E;IAAnC,qbAAkC;IAAC,4DAAa;IAC1F;IAAA,4DAAM;IACR;IAAA,4DAAM;IAEN;IAAA,4EAAsB;IACpB;IAAA,4EAAiC;IAC/B;IAAA,8EAAyB;IAAA,2EAAc;IAAA,4DAAQ;IAC/C;IAAA,8EAC8G;IADhC,4aAA8B,oRACzF,mGAAiC,KADwD;IAA5G,4DAC8G;IAC9G;IAAA,mFAAoE;IAAhC,ibAA8B;IAAE,4DAAa;IACnF;IAAA,4DAAM;IACN;IAAA,4EAAiC;IAC/B;IAAA,8EAAyB;IAAA,8EAAiB;IAAA,4DAAQ;IAClD;IAAA,8EACkH;IADpC,gbAAkC,oRAC7F,uGAAqC,KADwD;IAAhH,4DACkH;IAClH;IAAA,mFAA4E;IAApC,qbAAkC;IAAE,4DAAa;IAC3F;IAAA,4DAAM;IACN;IAAA,4EAAiC;IAC/B;IAAA,8EAAyB;IAAA,4FAA+B;IAAA,4DAAQ;IAChE;IAAA,8EACsK;IADxF,4bAA8C,oRACjE,mHAAiD,KADgB;IAA5H,4DACsK;IACtK;IAAA,mFAAoG;IAAhD,icAA8C;IAAE,4DAAa;IACnH;IAAA,4DAAM;IACR;IAAA,4DAAM;IACN;IAAA,4EAAsB;IACpB;IAAA,+EAAgG;IAAtC,uTAAS,6FAA2B,KAAC;IAC7F;IAAA,qEAA0B;IAAA,8FAC5B;IAAA,4DAAS;IACT;IAAA,+EAA6F;IAAnC,uTAAS,0FAAwB,KAAC;IAC1F;IAAA,qEAA0B;IAAA,2FAC5B;IAAA,4DAAS;IACX;IAAA,4DAAM;IAEN;IAAA,4IAaM;IACN;IAAA,4IAaM;IACR;IAAA,4DAAM;IACR;IAAA,4DAAS;IACX;IAAA,4DAAM;;;IA9H4C,2DAAuB;IAAvB,sFAAuB;IAIvB,0DAAqB;IAArB,oFAAqB;IAIrB,0DAAsB;IAAtB,qFAAsB;IAItB,0DAA+B;IAA/B,8FAA+B;IAMpD,2DAAwB;IAAxB,uFAAwB;IAE/B,0DAAwB;IAAxB,uFAAwB;IAKjB,0DAAuC;IAAvC,sGAAuC;IAE9C,0DAAuC;IAAvC,sGAAuC;IAK2B,0DAA8B;IAA9B,6FAA8B;IAExE,0DAA8B;IAA9B,6FAA8B;IAMD,2DAAsC;IAAtC,qGAAsC;IAE3F,0DAAsC;IAAtC,qGAAsC;IAI4B,0DAAqC;IAArC,oGAAqC;IAExE,0DAAqC;IAArC,oGAAqC;IAOF,2DAAoC;IAApC,mGAAoC;IAEtG,0DAAoC;IAApC,mGAAoC;IAI8B,0DAAkC;IAAlC,iGAAkC;IAExE,0DAAkC;IAAlC,iGAAkC;IAOI,2DAA8B;IAA9B,6FAA8B;IAExE,0DAA8B;IAA9B,6FAA8B;IAIY,0DAAkC;IAAlC,iGAAkC;IAExE,0DAAkC;IAAlC,iGAAkC;IAII,0DAA8C;IAA9C,6GAA8C;IAExE,0DAA8C;IAA9C,6GAA8C;IAYhG,2DAA2B;IAA3B,+FAA2B;IAc3B,0DAAqB;IAArB,yFAAqB;;;;IAmB/B,6EAAiK;IAA3I,wTAAS,sFAAoB,KAAC;IAA6G,8EAAmB;IAAA,4DAAS;;;;IAAxI,iFAAiC;;;IAxI5F,+EAA8E;IAC1E;IAAA,oIAoIM;IAEN;IAAA,0EAAsB;IACpB;IAAA,uIAA6L;IAC/L;IAAA,4DAAM;IACR;IAAA,4DAAO;;;IAzImB,0DAA2B;IAA3B,8FAA2B;IAuIuC,0DAA2B;IAA3B,8FAA2B;;;IAI3H,yEAAoD;IAClD;IAAA,+FAAmI;IACrI;IAAA,4DAAM;;;IAD2B,0DAAiD;IAAjD,iHAAiD;;;AD7L3E,MAAM,4BAA4B;IAkFvC,YACU,YAA4B,EAC5B,aAA4B,EAC5B,QAAyB,EACzB,KAAa,EACb,WAAwB,EACxB,GAAmB;QALnB,iBAAY,GAAZ,YAAY,CAAgB;QAC5B,kBAAa,GAAb,aAAa,CAAe;QAC5B,aAAQ,GAAR,QAAQ,CAAiB;QACzB,UAAK,GAAL,KAAK,CAAQ;QACb,gBAAW,GAAX,WAAW,CAAa;QACxB,QAAG,GAAH,GAAG,CAAgB;QArF7B,oBAAe,GAAG,KAAK,CAAC;QAExB,8BAAyB,GAAS,IAAI,IAAI,EAAE,CAAC;QAG7C,6BAAwB,GAAS,IAAI,IAAI,EAAE,CAAC;QAG5C,4BAAuB,GAAS,IAAI,IAAI,EAAE,CAAC;QAG3C,qBAAgB,GAAS,IAAI,IAAI,EAAE,CAAC;QAGpC,yBAAoB,GAAS,IAAI,IAAI,EAAE,CAAC;QAGxC,qCAAgC,GAAS,IAAI,IAAI,EAAE,CAAC;QAGpD,eAAU,GAAS,IAAI,IAAI,EAAE,CAAC;QAG9B,2BAAsB,GAAS,IAAI,IAAI,EAAE,CAAC;QAG1C,yBAAoB,GAAS,IAAI,IAAI,EAAE,CAAC;QAKxC,qBAAgB,GAAS,IAAI,IAAI,EAAE,CAAC;QAGpC,gCAA2B,GAAS,IAAI,IAAI,EAAE,CAAC;QAG/C,+BAA0B,GAAS,IAAI,IAAI,EAAE,CAAC;QAG9C,0BAAqB,GAAS,IAAI,IAAI,EAAE,CAAC;QAGzC,wBAAmB,GAAS,IAAI,IAAI,EAAE,CAAC;QAGvC,0BAAqB,GAAG,KAAK,CAAC;QAC9B,oBAAe,GAAG,KAAK,CAAC;QASxB,aAAQ,GAAG,CAAC,CAAC;QACb,qBAAgB,GAAG,CAAC,CAAC;QAUrB,UAAK,GAAQ,EAAE,CAAC;QAEhB,yBAAoB,GAAG,KAAK,CAAC;QAE7B,2BAAsB,GAAQ,EAAE,CAAC;QAEjC,mBAAc,GAAG,KAAK,CAAC;QAEvB,qBAAgB,GAAG,KAAK,CAAC;QAEzB,iBAAY,GAAG,IAAI,CAAC;IASjB,CAAC;IAEJ,QAAQ;QACN,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC;QAClD,IAAI,CAAC,yBAAyB,EAAE,CAAC;IACnC,CAAC;IAED,yBAAyB;QACvB,IAAI,CAAC,aAAa;aACf,iCAAiC,CAAC,IAAI,CAAC,QAAQ,CAAC;aAChD,SAAS,CACR,CAAC,cAAsC,EAAE,EAAE;YACzC,IAAI,CAAC,0BAA0B,GAAG,cAAc,CAAC;YACjD,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;QAC5B,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CACF,CAAC;IACN,CAAC;IACD,uBAAuB;IACvB,gBAAgB,CAAC,cAAc;QAC7B,IAAI,CAAC,eAAe,GAAG,CAAC,IAAI,CAAC,eAAe,CAAC;QAE7C,IAAI,CAAC,gBAAgB,GAAG,cAAc,CAAC,EAAE,CAAC;QAE1C,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;QAC9B,IAAI,CAAC,SAAS,GAAG,cAAc,CAAC,QAAQ,CAAC;QACzC,IAAI,CAAC,OAAO,GAAG,cAAc,CAAC,MAAM,CAAC;QACrC,IAAI,CAAC,QAAQ,GAAG,cAAc,CAAC,QAAQ,CAAC;QACxC,IAAI,CAAC,UAAU,GAAG,cAAc,CAAC,gBAAgB,CAAC;QAClD,IAAI,CAAC,UAAU,GAAG,cAAc,CAAC,gBAAgB,CAAC;QAClD,IAAI,CAAC,iBAAiB,GAAG,cAAc,CAAC,iBAAiB,CAAC;QAE1D,IAAI,CAAC,sBAAsB,GAAG,cAAc,CAAC,eAAe,CAAC;QAC7D,IAAI,CAAC,sBAAsB,GAAG,cAAc,CAAC,eAAe,CAAC;QAC7D,IAAI,CAAC,oBAAoB,GAAG,cAAc,CAAC,mBAAmB,CAAC;QAC/D,IAAI,CAAC,oBAAoB,GAAG,cAAc,CAAC,mBAAmB,CAAC;QAE/D,IAAI,CAAC,gBAAgB,GAAG,cAAc,CAAC,YAAY,CAAC;QACpD,IAAI,CAAC,gBAAgB,GAAG,cAAc,CAAC,YAAY,CAAC;QACpD,IAAI,CAAC,yBAAyB,GAAG,cAAc,CAAC,qBAAqB,CAAC;QACtE,IAAI,CAAC,yBAAyB,GAAG,cAAc,CAAC,qBAAqB,CAAC;QACtE,IAAI,CAAC,wBAAwB,GAAG,cAAc,CAAC,oBAAoB,CAAC;QACpE,IAAI,CAAC,wBAAwB,GAAG,cAAc,CAAC,oBAAoB,CAAC;QACpE,IAAI,CAAC,uBAAuB,GAAG,cAAc,CAAC,mBAAmB,CAAC;QAClE,IAAI,CAAC,uBAAuB,GAAG,cAAc,CAAC,mBAAmB,CAAC;QAClE,IAAI,CAAC,gBAAgB,GAAG,cAAc,CAAC,YAAY,CAAC;QACpD,IAAI,CAAC,gBAAgB,GAAG,cAAc,CAAC,YAAY,CAAC;QACpD,IAAI,CAAC,oBAAoB,GAAG,cAAc,CAAC,gBAAgB,CAAC;QAC5D,IAAI,CAAC,oBAAoB,GAAG,cAAc,CAAC,gBAAgB,CAAC;QAC5D,IAAI,CAAC,gCAAgC,GAAG,cAAc,CAAC,yBAAyB,CAAC;QACjF,IAAI,CAAC,gCAAgC,GAAG,cAAc,CAAC,yBAAyB,CAAC;QACjF,IAAI,CAAC,2BAA2B,GAAG,cAAc,CAAC,uBAAuB,CAAC;QAC1E,IAAI,CAAC,2BAA2B,GAAG,cAAc,CAAC,uBAAuB,CAAC;QAC1E,IAAI,CAAC,0BAA0B,GAAG,cAAc,CAAC,sBAAsB,CAAC;QACxE,IAAI,CAAC,0BAA0B,GAAG,cAAc,CAAC,sBAAsB,CAAC;QACxE,IAAI,CAAC,qBAAqB,GAAG,cAAc,CAAC,iBAAiB,CAAC;QAC9D,IAAI,CAAC,qBAAqB,GAAG,cAAc,CAAC,iBAAiB,CAAC;QAC9D,IAAI,CAAC,mBAAmB,GAAG,cAAc,CAAC,eAAe,CAAC;QAC1D,IAAI,CAAC,mBAAmB,GAAG,cAAc,CAAC,eAAe,CAAC;QAE1D,IAAI,CAAC,qBAAqB,GAAG,cAAc,CAAC,qBAAqB,CAAC;QAClE,IAAI,CAAC,eAAe,GAAG,cAAc,CAAC,eAAe,CAAC;QAEtD,IAAI,CAAC,MAAM,GAAG,cAAc,CAAC,MAAM,CAAC;QACpC,+BAA+B;QAC/B,IAAI,CAAC,oBAAoB,GAAG,KAAK,CAAC;IACpC,CAAC;IAED,sBAAsB;QACpB,IAAI,CAAC,gBAAgB,GAAG,CAAC,IAAI,CAAC,gBAAgB,CAAC;IACjD,CAAC;IACD,yBAAyB;QACvB,IAAI,CAAC,qBAAqB,GAAG,CAAC,IAAI,CAAC,qBAAqB,CAAC;IAC3D,CAAC;IACD,sBAAsB;QACpB,IAAI,CAAC,eAAe,GAAG,CAAC,IAAI,CAAC,eAAe,CAAC;IAC/C,CAAC;IAED,kCAAkC,CAAC,KAAW;QAC5C,IAAI,CAAC,yBAAyB,GAAG,KAAK,CAAC;IACzC,CAAC;IACD,iCAAiC,CAAC,KAAW;QAC3C,IAAI,CAAC,wBAAwB,GAAG,KAAK,CAAC;IACxC,CAAC;IACD,gCAAgC,CAAC,KAAW;QAC1C,IAAI,CAAC,uBAAuB,GAAG,KAAK,CAAC;IACvC,CAAC;IACD,yBAAyB,CAAC,KAAW;QACnC,IAAI,CAAC,gBAAgB,GAAG,KAAK,CAAC;IAChC,CAAC;IACD,6BAA6B,CAAC,KAAW;QACvC,IAAI,CAAC,oBAAoB,GAAG,KAAK,CAAC;IACpC,CAAC;IACD,yCAAyC,CAAC,KAAW;QACnD,IAAI,CAAC,gCAAgC,GAAG,KAAK,CAAC;IAChD,CAAC;IACD,mBAAmB,CAAC,KAAW;QAC7B,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;IAC1B,CAAC;IACD,yBAAyB,CAAC,KAAW;QACnC,IAAI,CAAC,gBAAgB,GAAG,KAAK,CAAC;IAChC,CAAC;IACD,oCAAoC,CAAC,KAAW;QAC9C,IAAI,CAAC,2BAA2B,GAAG,KAAK,CAAC;IAC3C,CAAC;IACD,8BAA8B,CAAC,KAAW;QACxC,IAAI,CAAC,0BAA0B,GAAG,KAAK,CAAC;IAC1C,CAAC;IACD,8BAA8B,CAAC,KAAW;QACxC,IAAI,CAAC,qBAAqB,GAAG,KAAK,CAAC;IACrC,CAAC;IACD,4BAA4B,CAAC,KAAW;QACtC,IAAI,CAAC,mBAAmB,GAAG,KAAK,CAAC;IACnC,CAAC;IACD,+BAA+B,CAAC,KAAW;QACzC,IAAI,CAAC,sBAAsB,GAAG,KAAK,CAAC;IACtC,CAAC;IACD,6BAA6B,CAAC,KAAW;QACvC,IAAI,CAAC,oBAAoB,GAAG,KAAK,CAAC;IACpC,CAAC;IAED,kBAAkB;QAChB,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,IAAI,CAAC,gBAAgB,CAAC;QAEtC,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;QACpC,IAAI,CAAC,KAAK,CAAC,gBAAgB,GAAG,IAAI,CAAC,UAAU,CAAC;QAE9C,IAAI,CAAC,KAAK,CAAC,iBAAiB,GAAG,IAAI,CAAC,iBAAiB,CAAC;QACtD,IAAI,CAAC,KAAK,CAAC,qBAAqB,GAAG,IAAI,CAAC,yBAAyB,CAAC;QAClE,IAAI,CAAC,KAAK,CAAC,aAAa,GAAG,IAAI,CAAC,gBAAgB,CAAC;QACjD,IAAI,CAAC,KAAK,CAAC,YAAY,GAAG,IAAI,CAAC,gBAAgB,CAAC;QAChD,IAAI,CAAC,KAAK,CAAC,oBAAoB,GAAG,IAAI,CAAC,wBAAwB,CAAC;QAChE,IAAI,CAAC,KAAK,CAAC,mBAAmB,GAAG,IAAI,CAAC,uBAAuB,CAAC;QAC9D,IAAI,CAAC,KAAK,CAAC,YAAY,GAAG,IAAI,CAAC,gBAAgB,CAAC;QAChD,IAAI,CAAC,KAAK,CAAC,yBAAyB,GAAG,IAAI,CAAC,gCAAgC,CAAC;QAC7E,IAAI,CAAC,KAAK,CAAC,gBAAgB,GAAG,IAAI,CAAC,oBAAoB,CAAC;QAExD,IAAI,CAAC,KAAK,CAAC,eAAe,GAAG,IAAI,CAAC,sBAAsB,CAAE;QAC1D,IAAI,CAAC,KAAK,CAAC,mBAAmB,GAAG,IAAI,CAAC,oBAAoB,CAAE;QAE5D,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC;QACrC,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC;QACjC,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;QACpC,IAAI,CAAC,KAAK,CAAC,qBAAqB,GAAG,IAAI,CAAC,qBAAqB,CAAC;QAC9D,IAAI,CAAC,KAAK,CAAC,eAAe,GAAG,IAAI,CAAC,eAAe,CAAC;QAClD,IAAI,CAAC,KAAK,CAAC,uBAAuB,GAAG,IAAI,CAAC,2BAA2B,CAAC;QACtE,IAAI,CAAC,KAAK,CAAC,sBAAsB,GAAG,IAAI,CAAC,0BAA0B,CAAC;QACpE,IAAI,CAAC,KAAK,CAAC,iBAAiB,GAAG,IAAI,CAAC,qBAAqB,CAAC;QAC1D,IAAI,CAAC,KAAK,CAAC,eAAe,GAAG,IAAI,CAAC,mBAAmB,CAAC;QAEtD,2BAA2B;QAC3B,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;QACzB,IAAI,CAAC,aAAa,CAAC,0BAA0B,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,SAAS,CACjE,CAAC,aAAkB,EAAE,EAAE;YACrB,IAAI,CAAC,sBAAsB,GAAG,aAAa,CAAC;YAC5C,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,yCAAyC,CAAC,CAAC;YACjE,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC;YACjC,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;YAC1B,IAAI,CAAC,yBAAyB,EAAE,CAAC;QACnC,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,yBAAyB,CAAC,CAAC;QACjD,CAAC,CACF,CAAC;IACJ,CAAC;;wGA/PU,4BAA4B;0HAA5B,4BAA4B;QCdzC,yEAAuB;QACrB;QAAA,wEAAuB;QACrB;QAAA,wEAA4B;QAC1B;QAAA,uEAAkC;QAAA,qFAA0B;QAAA,4DAAI;QAClE;QAAA,4DAAK;QACP;QAAA,4DAAK;QACL;QAAA,2HAcM;QAEN;QAAA,+HAuCQ;QACR;QAAA,6HA0IS;QACX;QAAA,4DAAM;QACN;QAAA,0HAEM;QAGN;;QA5MS,0DAA8B;QAA9B,6IAA8B;QAG/B,0DAAkB;QAAlB,kFAAkB;QAgBhB,0DAAmB;QAAnB,mFAAmB;QAwC4B,0DAAqB;QAArB,qFAAqB;QA4IxE,0DAA0B;QAA1B,0FAA0B;;;;;;;;;;;;;;;;;;;;;;;ACvMD;AACO;;;;;ICgIxB,yEAAyD;IACvD;IAAA,0EAAuD;IACrD,iHACF;IAAA,4DAAM;IACN;IAAA,0EAAyD;IACvD,uDACF;;IAAA,4DAAM;IACN;IAAA,0EAAyD;IACvD,wDACF;;IAAA,4DAAM;IACN;IAAA,2EAAyD;IACvD,wDACF;;IAAA,4DAAM;IACR;IAAA,4DAAM;;;IARF,0DACF;IADE,mOACF;IAEE,0DACF;IADE,kOACF;IAEE,0DACF;IADE,gOACF;;;IAGF,yEAA+D;IAC7D;IAAA,0EAAuD;IACrD,2HACF;IAAA,4DAAM;IACN;IAAA,0EAAyD;IACvD,uDACF;;IAAA,4DAAM;IACN;IAAA,0EAAyD;IACvD,wDACF;;IAAA,4DAAM;IACN;IAAA,2EAAyD;IACvD,wDACF;;IAAA,4DAAM;IACR;IAAA,4DAAM;;;IARF,0DACF;IADE,yOACF;IAEE,0DACF;IADE,yOACF;IAEE,0DACF;IADE,oOACF;;ADpJT,MAAM,gCAAgC;IAO3C,gBAAe,CAAC;IAEhB,QAAQ;QACN,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC;QAC1D,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,MAAM,CAAC;QAC9D,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;QAClC,4BAA4B;IAC9B,CAAC;IAEM,aAAa;QAChB,MAAM,IAAI,GAAG,QAAQ,CAAC,cAAc,CAAC,kBAAkB,CAAC,CAAC;QACzD,kDAAW,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE;YAChC,gCAAgC;YAChC,MAAM,QAAQ,GAAG,GAAG,CAAC;YACrB,MAAM,UAAU,GAAG,GAAG,CAAC;YACvB,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,GAAG,QAAQ,GAAG,MAAM,CAAC,KAAK,CAAC;YAC1D,MAAM,UAAU,GAAG,SAAS,CAAC;YAE7B,MAAM,cAAc,GAAG,MAAM,CAAC,SAAS,CAAC,WAAW,CAAC;YACpD,MAAM,GAAG,GAAG,IAAI,kCAAK,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,sBAAsB;YAC9D,MAAM,QAAQ,GAAG,CAAC,CAAC;YACnB,GAAG,CAAC,QAAQ,CAAC,cAAc,EAAE,KAAK,EAAE,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC;YACtE,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,gBAAgB;QACzC,CAAC,CAAC,CAAC;IACL,CAAC;;gHA/BU,gCAAgC;8HAAhC,gCAAgC;QCX7C,sEAAK;QACH;QAAA,yEAA2B;QACvB;QAAA,yEAAiB;QACb;QAAA,yEAA0D;QACpD;QACA;QAAA,qEAAI;QAAA,wDAAyC;QAAA,4DAAK;QACxD;QAAA,4DAAM;QACN;QAAA,0EAAqD;QAC/C;QAAA,sEAAI;QAAA,wGAA4C;QAAA,4DAAK;QAC3D;QAAA,4DAAM;QACN;QAAA,0EAA0D;QACxD;QAAA,sEAAI;QAAA,wDAAuD;QAAA,4DAAK;QAClE;QAAA,4DAAM;QACV;QAAA,4DAAM;QACJ;QAAA,iEAAI;QAEN;QAAA,0EAAiB;QACX;QAAA,0EAAsB;QACpB;QAAA,0EAAkB;QAChB;QAAA,qEAAsI;QACtI;QAAA,0EAAuB;QACrB;QAAA,yEAAuB;QAAA,wDAAmE;;;QAAA,4DAAK;QACjG;QAAA,4DAAM;QACN;QAAA,yEAAwC;QACtC;QAAA,0EAA4B;QAAA,wDAAiD;;QAAA,4DAAK;QAClF;QAAA,0EAA4B;QAAA,wDAAyC;;QAAA,4DAAK;QAC1E;QAAA,0EAA4B;QAAA,wDAA+F;;;QAAA,4DAAK;QAChI;QAAA,0EAA4B;QAAA,wDAAsD;;QAAA,4DAAK;QACvF;QAAA,0EAA4B;QAAA,wDAA0C;;QAAA,4DAAK;QAC3E;QAAA,0EAA4B;QAAA,wDAA8C;;QAAA,4DAAK;QAC/E;QAAA,0EAA4B;QAAA,wDAAuD;;QAAA,4DAAK;QACxF;QACF;QAAA,4DAAK;QACP;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAAA,2EAAsB;QACpB;QAAA,0EAAqD;QACnD;QAAA,sEAAI;QAAA,oFAAwB;QAAA,4DAAK;QACnC;QAAA,4DAAM;QACN;QAAA,0EAAiB;QACf;QAAA,2EAAuD;QACrD,gHACF;QAAA,4DAAM;QACN;QAAA,2EAAyD;QACvD,wDACF;;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAAA,0EAAiB;QACf;QAAA,2EAAuD;QACrD,yIACF;QAAA,4DAAM;QACN;QAAA,4EAAyD;QACvD,yDACF;;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAQA;QAAA,2EAAiB;QACf;QAAA,4EAAuD;QACrD,iHACF;QAAA,4DAAM;QACN;QAAA,4EAAyD;QACvD,yDACF;;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAAA,2EAAiB;QACf;QAAA,4EAAuD;QACrD,+GACF;QAAA,4DAAM;QACN;QAAA,4EAAyD;QACvD,yDACF;;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAAA,4EAAsB;QACpB;QAAA,4EAAoD;QAClD,sHACF;QAAA,4DAAM;QACN;QAAA,4EAAyD;QACvD,yDACF;;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAAA,2EAAqD;QACnD;QAAA,uEAAI;QAAA,oFAAuB;QAAA,4DAAK;QAClC;QAAA,4DAAM;QACN;QAAA,2EAAiB;QACf;QAAA,4EAAyD;QAEzD;QAAA,4DAAM;QACN;QAAA,4EAAyD;QACvD,uGACF;QAAA,4DAAM;QACN;QAAA,4EAAyD;QACvD,qGACF;QAAA,4DAAM;QACN;QAAA,4EAAyD;QAEzD;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAAA,2EAAiB;QACf;QAAA,4EAAuD;QACrD,qIACF;QAAA,4DAAM;QACN;QAAA,4EAAyD;QACvD,yDACF;;QAAA,4DAAM;QACN;QAAA,4EAAyD;QACvD,yDACF;;QAAA,4DAAM;QACN;QAAA,4EAAyD;QACvD,yDACF;;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAAA,2EAAiB;QACf;QAAA,4EAAuD;QACrD,4IACF;QAAA,4DAAM;QACN;QAAA,4EAAyD;QACvD,yDACF;;QAAA,4DAAM;QACN;QAAA,4EAAyD;QACvD,yDACF;;QAAA,4DAAM;QACN;QAAA,4EAAyD;QACvD,yDACF;;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAAA,mIAaM;QAEN;QAAA,mIAaM;QACN;QAAA,2EAAiB;QACf;QAAA,4EAAuD;QACrD,qJACF;QAAA,4DAAM;QACN;QAAA,4EAAyD;QACvD,yDACF;;QAAA,4DAAM;QACN;QAAA,4EAAyD;QACvD,yDACF;;QAAA,4DAAM;QACN;QAAA,4EAAyD;QACvD,yDACF;;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAAA,4EAAsB;QACpB;QAAA,4EAAoD;QAClD,mIACF;QAAA,4DAAM;QACN;QAAA,4EAAyD;QACvD,yDACF;;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAAA,2EAAqD;QACnD;QAAA,uEAAI;QAAA,oEAAO;QAAA,4DAAK;QAClB;QAAA,4DAAM;QACN;QAAA,2EAAiB;QACf;QAAA,4EAAuD;QACrD,+GACF;QAAA,4DAAM;QACN;QAAA,4EAAyD;QACxD,yDACD;;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAAA,2EAAiB;QACf;QAAA,4EAAuD;QACrD,kHACF;QAAA,4DAAM;QACN;QAAA,4EAAyD;QACxD,yDACD;;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAAA,2EAAiB;QACf;QAAA,4EAAsD;QACpD,+HACF;QAAA,4DAAM;QACN;QAAA,4EAAyD;QACxD,yDACD;;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAAA,2EAAiB;QACf;QAAA,4EAAoD;QAClD,wJACF;QAAA,4DAAM;QACN;QAAA,4EAAyD;QACxD,yDACD;;QAAA,4DAAM;QACR;QAAA,4DAAM;QACR;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAAA,4EAA4C;QACxC;QAAA,+EAA2G;QAA1B,0JAAS,mBAAe,IAAC;QAAC,qEAA8B;QAAC,sEAAQ;QAAA,4DAAS;QAC3J;QAEJ;QAAA,4DAAM;QACZ;QAAA,4DAAM;QACV;QAAA,4DAAM;QACN;;QA9NoB,2DAAyC;QAAzC,oJAAyC;QAM7C,2DAAuD;QAAvD,yLAAuD;QAQP,2DAAuC;QAAvC,0KAAuC;QAE9D,0DAAmE;QAAnE,4TAAmE;QAG9D,0DAAiD;QAAjD,6MAAiD;QACjD,0DAAyC;QAAzC,6KAAyC;QACzC,0DAA+F;QAA/F,+VAA+F;QAC/F,0DAAsD;QAAtD,2KAAsD;QACtD,0DAA0C;QAA1C,4KAA0C;QAC1C,0DAA8C;QAA9C,gLAA8C;QAC9C,0DAAuD;QAAvD,yLAAuD;QAcnF,2DACF;QADE,2MACF;QAOE,2DACF;QADE,uOACF;QAeE,2DACF;QADE,8NACF;QAOE,2DACF;QADE,2OACF;QAOE,2DACF;QADE,wNACF;QAwBE,2DACF;QADE,8NACF;QAEE,0DACF;QADE,kOACF;QAEE,0DACF;QADE,uOACF;QAOE,2DACF;QADE,iOACF;QAEE,0DACF;QADE,qOACF;QAEE,0DACF;QADE,+NACF;QAEgB,0DAAqC;QAArC,qGAAqC;QAerC,0DAA2C;QAA3C,2GAA2C;QAmBzD,0DACF;QADE,sOACF;QAEE,0DACF;QADE,qOACF;QAEE,0DACF;QADE,mPACF;QAOE,2DACF;QADE,kNACF;QAUC,2DACD;QADC,uNACD;QAOC,2DACD;QADC,+LACD;QAOC,2DACD;QADC,oNACD;QAOC,2DACD;QADC,4NACD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACxN+C;;;;;;;;;;;;;;;;ICSzD,6EAAqE;IAAA,uDAAiB;IAAA,4DAAS;;;IAApD,8FAAyB;IAAC,0DAAiB;IAAjB,iFAAiB;;;IAMtF,6EAA+D;IAAA,uDAAe;IAAA,4DAAS;;;IAAhD,6FAAuB;IAAC,0DAAe;IAAf,gFAAe;;;IAM9E,6EAAkE;IAAA,uDAAgB;IAAA,4DAAS;;;IAAlD,8FAAwB;IAAC,0DAAgB;IAAhB,iFAAgB;;;IAWlF,6EAAqE;IAAA,uDAAe;IAAA,4DAAS;;;IAA9C,2FAAqB;IAAC,0DAAe;IAAf,gFAAe;;;IAS1F,0EAA4C;IAC1C;IAAA,0EAAiB;IACf;IAAA,0EAAiB;IACf;IAAA,qEAAuB;IACvB;IAAA,qEAAuB;IACvB;IAAA,sEAAuB;IACvB;IAAA,sEAAuB;IACvB;IAAA,sEAAuB;IACvB;IAAA,sEAAuB;IACvB;IAAA,sEAAuB;IACvB;IAAA,sEAAuB;IACvB;IAAA,sEAA0B;IAC5B;IAAA,4DAAM;IACR;IAAA,4DAAM;IACR;IAAA,4DAAM;;;;IA2CI,yEAAuG;IACrG;IAAA,yEAAoB;IAClB;IAAA,wEAAoE;IAA3C,+dAAS,kGAAgC,KAAC;IAAC,wEAAa;IAAA,4DAAI;IACvF;IAAA,4DAAK;IACL;IAEF;IAAA,4DAAK;;;;;IAjCX,qEAAiE;IAC/D;IAAA,yEAAgB;IAAA,uDAAS;IAAA,4DAAK;IAC9B;IAAA,yEAA6D;IAAA,uDACb;;IAAA,4DAAK;IACrD;IACA;IAAA,sEAAI;IAAA,wDAA2C;;IAAA,4DAAK;IACpD;IAAA,sEAAI;IAAA,wDAAiD;;IAAA,4DAAK;IAC1D;IAAA,sEAAI;IAAA,wDAA+C;;IAAA,4DAAK;IACxD;IAAA,sEAAI;IAAA,wDAAiD;;IAAA,4DAAK;IAC1D;IAAA,0EAA4C;IAAxC,6bAAS,+FAA6B,KAAC;IACzC;IAAA,4EAQ6C;IAC3C,wDAAkC;IAAA,4DAAO;IAC7C;IAAA,4DAAK;IACL;IAAA,sEAAI;IACF;IAAA,2EAAgC;IAC9B;IAAA,8EACiC;IAC/B,iFAAO;IAAA,uEAA2B;IACpC;IAAA,4DAAS;IACT;IAAA,sIAMK;IACP;IAAA,4DAAM;IACR;IAAA,4DAAK;IACP;IAAA,4DAAK;;;;IAnCa,0DAAS;IAAT,0EAAS;IACrB,0DAAwD;IAAxD,sKAAwD;IAAC,0DACb;IADa,qVACb;IAE5C,0DAA2C;IAA3C,kMAA2C;IAC3C,0DAAiD;IAAjD,6PAAiD;IACjD,0DAA+C;IAA/C,yPAA+C;IAC/C,0DAAiD;IAAjD,yMAAiD;IAGjD,0DAAwD;IAAxD,gHAAwD;IAOxD,kHAA0C;IAC1C,0DAAkC;IAAlC,wHAAkC;;;IAlC5C,4EAAuD;IACrD;IAAA,wEAAO;IACL;IAAA,yEAA0B;IACxB;IAAA,yEAAgB;IAAA,4DAAC;IAAA,4DAAK;IACtB;IAAA,yEAAgB;IAAA,oEAAQ;IAAA,4DAAK;IAC7B;IACA;IAAA,0EAAgB;IAAA,0EAAc;IAAA,4DAAK;IACnC;IAAA,0EAAgB;IAAA,oEAAQ;IAAA,4DAAK;IAC7B;IAAA,0EAAgB;IAAA,kEAAM;IAAA,4DAAK;IAC3B;IAAA,0EAAgB;IAAA,gEAAI;IAAA,4DAAK;IACzB;IAAA,0EAAgB;IAAA,kEAAM;IAAA,4DAAK;IAC3B;IAAA,0EAAgB;IAAA,kEAAM;IAAA,4DAAK;IAC7B;IAAA,4DAAK;IACP;IAAA,4DAAQ;IACR;IAAA,yEAAO;IACL;IAAA,kIAoCK;IACP;IAAA,4DAAQ;IACV;IAAA,4DAAQ;;;IAtCsB,2DAA2B;IAA3B,kGAA2B;;;;IAuCzD,0EAAuC;IACrC;IAAA,0EAA8B;IAC5B;IAAA,0EAAwC;IACtC;IAAA,iFAE4E;IAD1E,qUAAa,kGAA8B,IAAP,yQAAgB,qFAAmB,KAAnC;IAEtC;IAAA,4DAAa;IACf;IAAA,4DAAM;IACR;IAAA,4DAAM;IACR;IAAA,4DAAM;;;IANY,0DAAsB;IAAtB,+EAAsB;;;IA2BhC,6EAAqE;IAAA,uDAAe;IAAA,4DAAS;;;IAA9C,2FAAqB;IAAC,0DAAe;IAAf,gFAAe;;;;IAnB1F;IAAA,0EAA0B;IACxB;IAAA,yEAAkC;IAAA,kFAAuB;IAAA,4DAAK;IAC9D;IAAA,6EAA4F;IAA1B,mTAAS,iFAAe,KAAC;IACzF;IAAA,2EAAyB;IAAA,iEAAO;IAAA,4DAAO;IACzC;IAAA,4DAAS;IACX;IAAA,4DAAM;IACN;IAAA,4EAAoC;IAClC;IAAA,2EAAwB;IACtB;IAUA;IAAA,8EAA2G;IAAzE,kaAAsB,8PAA2B,wFAAsB,KAAjD;IACtD;IAAA,6IAA6F;IAC/F;IAAA,4DAAS;IACT;IAAA,8EAAuE;IAAlC,oTAAS,yFAAuB,KAAC;IAAC,gEAAI;IAAA,4DAAS;IACtF;IAAA,4DAAM;IACR;IAAA,4DAAO;IACT;;;IANwC,2DAAsB;IAAtB,oFAAsB;IAC3B,0DAAkB;IAAlB,2FAAkB;;ADxH9C,MAAM,0BAA0B;IAqCrC,YACU,YAA4B,EAC5B,aAA4B,EAC5B,QAAyB,EACzB,KAAa,EACb,WAAwB;QAJxB,iBAAY,GAAZ,YAAY,CAAgB;QAC5B,kBAAa,GAAb,aAAa,CAAe;QAC5B,aAAQ,GAAR,QAAQ,CAAiB;QACzB,UAAK,GAAL,KAAK,CAAQ;QACb,gBAAW,GAAX,WAAW,CAAa;QAvClC,UAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAInB,sBAAiB,GAAQ,EAAE,CAAC;QAC5B,aAAQ,GAAG,CAAC,CAAC;QASb,iBAAY,GAAG,IAAI,CAAC;QAIpB,UAAU;QACV,gBAAW,GAMP;YACA,UAAU,EAAE,EAAE;YACd,YAAY,EAAE,EAAE;YAChB,UAAU,EAAE,EAAE;YACd,WAAW,EAAE,EAAE;YACf,QAAQ,EAAE,CAAC;SAEZ,CAAC;IAQA,CAAC;IAEL,QAAQ;QACN,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC;QACpB,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;QACnB,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC7D,IAAI,CAAC,uBAAuB,EAAE,CAAC;QAC/B,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,IAAI,CAAC,YAAY,EAAE,CAAC;IACtB,CAAC;IAGD,uBAAuB,CAAC,EAAO,EAAE,EAAO;QACtC,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,SAAS,CAChD,CAAC,UAAwC,EAAE,EAAE;YAC3C,IAAI,CAAC,cAAc,GAAG,UAAU,CAAC,MAAM,CAAC;YACxC,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC,cAAc,CAAC;YAClD,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC,UAAU,CAAC;YACxC,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;QAC5B,CAAC,EACD,CAAC,KAAK,EAAE,EAAE;YACR,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,+CAA+C,CAAC,CAAC;YACrE,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;QAC5B,CAAC,CACF,CAAC;IACJ,CAAC;IAED,uBAAuB;QACrB,IAAI,CAAC,aAAa,CAAC,kBAAkB,EAAE,CAAC,SAAS,CAC/C,CAAC,eAAkC,EAAE,EAAE;YACrC,IAAI,CAAC,eAAe,GAAG,eAAe,CAAC;QACzC,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CACF,CAAC;IACJ,CAAC;IAED,SAAS,CAAC,QAA0B,EAAE,CAAS;QAC7C,IAAI,CAAC,iBAAiB,GAAG,CAAC,CAAC;QAC3B,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACnD,CAAC;IACD,qBAAqB;QACnB,IAAI,CAAC,aAAa;aACf,qBAAqB,CAAC,IAAI,CAAC,iBAAiB,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC;aACxE,SAAS,CACR,GAAG,EAAE;YACH,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,0BAA0B,CAAC,CAAC;YAClD,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YACrB,IAAI,CAAC,QAAQ,EAAE,CAAC;QAClB,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CACF,CAAC;IACN,CAAC;IACD,oBAAoB;IAEpB,CAAC;IAED,WAAW;QACT,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,CAAC,SAAS,CACvC,CAAC,OAAiB,EAAE,EAAE;YACpB,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC;QAC7B,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CACF,CAAC;IACJ,CAAC;IACD,QAAQ;IACR,CAAC;IACD,cAAc;QACZ,IAAI,CAAC,aAAa,CAAC,aAAa,EAAE,CAAC,SAAS,CAC1C,CAAC,UAAuB,EAAE,EAAE;YAC1B,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC/B,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CACF,CAAC;IACJ,CAAC;IACD,aAAa;QACX,IAAI,CAAC,aAAa,CAAC,YAAY,EAAE,CAAC,SAAS,CACzC,CAAC,SAAqB,EAAE,EAAE;YACxB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC7B,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CACF,CAAC;IACJ,CAAC;IACD,YAAY;QACV,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,CAAC,SAAS,CACxC,CAAC,QAAmB,EAAE,EAAE;YACtB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QAC3B,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CACF,CAAC;IACJ,CAAC;IACD,WAAW;QACT,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,CAAC,SAAS,CACvC,CAAC,OAAiB,EAAE,EAAE;YACpB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACzB,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CACF,CAAC;IACJ,CAAC;IACD,QAAQ;QACN,IAAI,CAAC,0BAA0B,EAAE,CAAC;IACpC,CAAC;IAED,YAAY;QAEV,IAAI,CAAC,WAAW,CAAC,YAAY,GAAG,IAAI,CAAC;QACrC,IAAI,CAAC,WAAW,CAAC,WAAW,GAAG,IAAI,CAAC;QACpC,IAAI,CAAC,WAAW,CAAC,UAAU,GAAG,IAAI,CAAC;QACnC,IAAI,CAAC,WAAW,CAAC,UAAU,GAAG,IAAI,CAAC;QACnC,IAAI,CAAC,WAAW,CAAC,QAAQ,GAAG,IAAI,CAAC;QACjC,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC/D,CAAC;IAMD,WAAW,CAAC,KAAU;QACpB,IAAI,CAAC,UAAU,CAAC,WAAW,GAAG,KAAK,CAAC,IAAI,CAAC;QACzC,IAAI,CAAC,0BAA0B,EAAE,CAAC;IACpC,CAAC;IAED,0BAA0B;QACxB,IAAI,CAAC,aAAa,CAAC,aAAa,CAC9B,IAAI,CAAC,UAAU,CAAC,WAAW,EAC3B,IAAI,CAAC,UAAU,CAAC,YAAY,EAC5B,IAAI,CAAC,WAAW,CAAC,UAAU,EAC3B,IAAI,CAAC,WAAW,CAAC,YAAY,EAC7B,IAAI,CAAC,WAAW,CAAC,UAAU,EAC3B,IAAI,CAAC,WAAW,CAAC,WAAW,EAC5B,IAAI,CAAC,WAAW,CAAC,QAAQ,CAC1B,CAAC,SAAS,CACT,CAAC,UAAwC,EAAE,EAAE;YAC3C,IAAI,CAAC,cAAc,GAAG,UAAU,CAAC,MAAM,CAAC;YACxC,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC,cAAc,CAAC;YAClD,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC,UAAU,CAAC;YACxC,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;QAC5B,CAAC,EACD,CAAC,KAAK,EAAE,EAAE;YACR,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,oDAAoD,CAAC,CAAC;YAC1E,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;QAC5B,CAAC,CACF,CAAC;IACJ,CAAC;IAED,qBAAqB;QACnB,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,UAAU,IAAI,IAAI,IAAI,IAAI,CAAC,WAAW,CAAC,UAAU,IAAI,EAAE,CAAC;eACzE,CAAC,IAAI,CAAC,WAAW,CAAC,WAAW,IAAI,IAAI,IAAI,IAAI,CAAC,WAAW,CAAC,WAAW,IAAI,EAAE,CAAC;eAC5E,CAAC,IAAI,CAAC,WAAW,CAAC,YAAY,IAAI,IAAI,IAAI,IAAI,CAAC,WAAW,CAAC,YAAY,IAAI,EAAE,CAAC;eAC9E,CAAC,IAAI,CAAC,WAAW,CAAC,UAAU,IAAI,IAAI,IAAI,IAAI,CAAC,WAAW,CAAC,UAAU,IAAI,EAAE,CAAC;eAC1E,CAAC,IAAI,CAAC,WAAW,CAAC,QAAQ,IAAI,IAAI,IAAI,IAAI,CAAC,WAAW,CAAC,QAAQ,IAAI,CAAC,CAAC,EAAE;YAC1E,OAAO,KAAK,CAAC;SACd;QACD,OAAO,IAAI,CAAC;IACd,CAAC;;oGApNU,0BAA0B;wHAA1B,0BAA0B;QCpBvC,yEAAwB;QACtB;QAAA,yEAAsB;QACpB;QAAA,wEAAO;QAAA,sEAAW;QAAA,4DAAQ;QAC1B;QAAA,2EACmC;QAD5B,8MAAoC,iHACpB,cAAU,IADU;QAA3C,4DACmC;QACrC;QAAA,4DAAM;QACN;QAAA,0EAAsB;QACpB;QAAA,4EAA2B;QAAA,oEAAQ;QAAA,4DAAQ;QAC3C;QAAA,6EAAoH;QAAhD,kNAAsC;QACxG;QAAA,8HAA+F;QACjG;QAAA,4DAAS;QACX;QAAA,4DAAM;QACN;QAAA,0EAAsB;QACpB;QAAA,4EAAyB;QAAA,kEAAM;QAAA,4DAAQ;QACvC;QAAA,6EAA8G;QAA9C,gNAAoC;QAClG;QAAA,8HAAuF;QACzF;QAAA,4DAAS;QACX;QAAA,4DAAM;QACN;QAAA,0EAAsB;QACpB;QAAA,4EAAgC;QAAA,mEAAO;QAAA,4DAAQ;QAC/C;QAAA,8EAAuH;QAA/C,iNAAqC;QAC3G;QAAA,8HAA2F;QAC7F;QAAA,4DAAS;QACX;QAAA,4DAAM;QACN;QAAA,0EAAsB;QACpB;QAAA,6EAA0B;QAAA,sEAAU;QAAA,4DAAQ;QAC5C;QAAA,6EACoB;QADkD,kMAAuB;QAA7F,4DACoB;QACtB;QAAA,4DAAM;QACN;QAAA,0EAAsB;QACpB;QAAA,6EAA4B;QAAA,kEAAM;QAAA,4DAAQ;QAC1C;QAAA,8EAAiG;QAA/D,8MAAkC;QAClE;QAAA,8HAA6F;QAC/F;QAAA,4DAAS;QACX;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAAA,2EAAkD;QAChD;QAAA,8EAAkE;QAArB,mJAAS,cAAU,IAAC;QAAC,oEAA4B;QAAC,mEAAM;QAAA,4DAAS;QAC9G;QAAA,8EAAwG;QAA9D,mJAAS,kBAAc,IAAC;QAAsC,oEAC7E;QAAC,kEAAK;QAAA,4DAAS;QAC5C;QAAA,4DAAM;QACN;QAAA,0HAcM;QACN;QAAA,8HAqDQ;QACR;QAAA,0HASM;QACN;QAAA,sNAyBc;;QA9IH,0DAAoC;QAApC,+FAAoC;QAKyB,0DAAsC;QAAtC,iGAAsC;QAC3E,0DAAY;QAAZ,kFAAY;QAKqB,0DAAoC;QAApC,+FAAoC;QACvE,0DAAU;QAAV,gFAAU;QAKiC,0DAAqC;QAArC,gGAAqC;QAC/E,0DAAW;QAAX,iFAAW;QAK6B,0DAAuB;QAAvB,kFAAuB;QAK3D,0DAAkC;QAAlC,6FAAkC;QACvC,0DAAkB;QAAlB,wFAAkB;QAMkB,2DAAoC;QAApC,iGAAoC;QAGnG,0DAAkB;QAAlB,kFAAkB;QAeU,0DAAmB;QAAnB,mFAAmB;QAsDnC,0DAAmB;QAAnB,mFAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IEjFzB,yEAAuG;IACrG;IAAA,yEAAoB;IAAmE,mEAAQ;IAAA,4DAAI;IACnG;IAKF;IAAA,4DAAK;;;IAN0C,0DAAyB;IAAzB,oKAAyB;;;IAjB9E,wEAA4D;IAC1D;IAAA,wEAAgB;IACd;IAAA,4EAA+E;IAC7E,uDACF;IAAA,4DAAS;IAEX;IAAA,4DAAK;IACL;IAAA,qEAAI;IAAA,uDAA4B;IAAA,4DAAK;IACrC;IAAA,sEAAI;IAAA,wDAA0C;IAAA,4DAAK;IACnD;IAAA,sEAAI;IAAA,wDAAgC;;IAAA,4DAAK;IACzC;IAAA,sEAAI;IAAkC,wDAAuC;;IAAA,4DAAO;IACpF;IAAA,sEAAI;IACF;IAAA,0EAAgC;IAC9B;IAAA,8EAA8H;IAC5H,0FAAc;IAAA,uEAA2B;IAC3C;IAAA,4DAAS;IACT;IAAA,wHAOK;IACP;IAAA,4DAAM;IACR;IAAA,4DAAK;IACP;IAAA,4DAAK;;;IAxB6C,0DAAgC;IAAhC,uGAAgC;IAC5E,0DACF;IADE,oHACF;IAGE,0DAA4B;IAA5B,kIAA4B;IAC5B,0DAA0C;IAA1C,0GAA0C;IAC1C,0DAAgC;IAAhC,wJAAgC;IACE,0DAAuC;IAAvC,6JAAuC;;ADR9E,MAAM,qBAAqB;IAKhC,YACU,YAA4B,EAC5B,aAA4B,EAC5B,QAAyB,EACzB,KAAa,EACb,WAAwB;QAJxB,iBAAY,GAAZ,YAAY,CAAgB;QAC5B,kBAAa,GAAb,aAAa,CAAe;QAC5B,aAAQ,GAAR,QAAQ,CAAiB;QACzB,UAAK,GAAL,KAAK,CAAQ;QACb,gBAAW,GAAX,WAAW,CAAa;QATlC,gBAAW,GAAG,KAAK,CAAC;IAUhB,CAAC;IAEL,QAAQ;QACN,IAAI,CAAC,oBAAoB,EAAE,CAAC;IAC9B,CAAC;IACD,oBAAoB;QAClB,IAAI,CAAC,aAAa,CAAC,mBAAmB,EAAE,CAAC,SAAS,CAChD,CAAC,iBAAqC,EAAE,EAAE;YACxC,IAAI,CAAC,gBAAgB,GAAG,iBAAiB,CAAC;YAC1C,OAAO,CAAC,GAAG,CAAC,KAAK,EAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;QAC3C,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,wCAAwC,CAAC;QAC/D,CAAC,CACF,CAAC;IACJ,CAAC;;0FA1BU,qBAAqB;mHAArB,qBAAqB;QCflC,yEAAkB;QAChB;QAAA,2EAAiC;QAC/B;QAAA,wEAAO;QACL;QAAA,wEAA0B;QACxB;QAAA,wEAAgB;QAAA,+DAAI;QAAA,4DAAK;QACzB;QAAA,yEAAgB;QAAA,oEAAQ;QAAA,4DAAK;QAC7B;QAAA,yEAAgB;QAAA,6EAAiB;QAAA,4DAAK;QACtC;QAAA,yEAAgB;QAAA,oEAAQ;QAAA,4DAAK;QAC7B;QAAA,yEAAgB;QAAA,oEAAQ;QAAA,4DAAK;QAC7B;QAAA,yEAAgB;QAAA,kEAAM;QAAA,4DAAK;QAC7B;QAAA,4DAAK;QACP;QAAA,4DAAQ;QACR;QAAA,yEAAO;QACL;QAAA,mHA0BK;QACP;QAAA,4DAAQ;QACV;QAAA,4DAAQ;QACV;QAAA,4DAAM;;QA7BuC,2DAAmB;QAAnB,yFAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACD9B;;;;;;;;;;;;;;;ICsClC,0EAA4C;IACxC;IAAA,0EAAiB;IACf;IAAA,0EAAiB;IACb;IAAA,qEAAuB;IACzB;IAAA,qEAAuB;IACvB;IAAA,sEAAuB;IACvB;IAAA,sEAAuB;IACvB;IAAA,sEAAuB;IACvB;IAAA,sEAAuB;IACvB;IAAA,sEAAuB;IACvB;IAAA,sEAAuB;IACvB;IAAA,sEAA0B;IAC5B;IAAA,4DAAM;IACR;IAAA,4DAAM;IACV;IAAA,4DAAM;;;;IAgBc,yEAAuG;IACrG;IAAA,yEAAoB;IAAyB,sSAAS,kGAA0B,KAAC;IAAC,uEAAY;IAAA,4DAAI;IAClG;IAEF;IAAA,4DAAK;;;;IAiBL,yEAAuG;IACrG;IAAA,yEAAoB;IAAyB,8YAAS,wHAA+C,KAAC;IAAC,mEAAQ;IAAA,4DAAI;IACnH;IAEF;IAAA,4DAAK;;;IAhBjB,wEAA0D;IACxD;IAAA,qEAAI;IACF;IAAA,yEAAgB;IAAA,uDAAS;IAAA,4DAAK;IAC9B;IAAA,qEAAI;IAAA,uDAA+D;IAAA,4DAAK;IACxE;IAAA,sEAAI;IAAA,wDAAyG;;IAAA,4DAAK;IAClH;IAAA,sEAAI;IAAA,wDAAkC;IAAA,4DAAK;IAC3C;IAAA,sEAAI;IAAA,wDAA2B;IAAA,4EAA+B;IAAA,wDAA0C;;IAAA,4DAAO;IAC/G;IAAA,sEAAI;IACA;IAAA,2EAAgC;IAC5B;IAAA,8EAA4I;IAC1I,2FAAO;IAAA,uEAA2B;IACpC;IAAA,4DAAS;IACT;IAAA,kIAIK;IACP;IAAA,4DAAM;IACZ;IAAA,4DAAK;IACP;IAAA,4DAAK;IACP;IAAA,4DAAQ;;;;IAlBY,0DAAS;IAAT,yEAAS;IACrB,0DAA+D;IAA/D,6IAA+D;IAC/D,0DAAyG;IAAzG,uPAAyG;IACzG,0DAAkC;IAAlC,kGAAkC;IAClC,0DAA2B;IAA3B,2FAA2B;IAA+B,0DAA0C;IAA1C,4KAA0C;;;;IA7BpH,sEAA2B;IACvB;IAAA,4EAAiC;IAC7B;IAAA,wEAAO;IACL;IAAA,yEAA0B;IACxB;IAAA,yEAAgB;IAAA,4DAAC;IAAA,4DAAK;IACtB;IAAA,0EAAgB;IAAA,oEAAQ;IAAA,4DAAK;IAC7B;IAAA,0EAAgB;IAAA,uFAA2B;IAAA,4DAAK;IAChD;IAAA,0EAAgB;IAAA,yEAAa;IAAA,4DAAK;IAClC;IAAA,0EAAgB;IAAA,gEAAI;IAAA,4DAAK;IACzB;IAAA,0EAAgB;IACZ;IAAA,2EAAgC;IAC5B;IAAA,8EAA0I;IACxI,2FAAO;IAAA,uEAA2B;IACpC;IAAA,4DAAS;IACT;IAAA,yHAIK;IACP;IAAA,4DAAM;IACZ;IAAA,4DAAK;IACP;IAAA,4DAAK;IACP;IAAA,4DAAQ;IACR;IAAA,iIAoBQ;IACV;IAAA,4DAAQ;IACR;IAAA,2EAAwC;IACpC;IAAA,kFAKoG;IAFlG,iUAAa,kGACpB,IAD2C,qQACrB,qFAAmB,KADE;IAGtC;IAAA,4DAAa;IAClB;IAAA,4DAAM;IACX;IAAA,4DAAM;;;IA/B8B,2DAAkB;IAAlB,yFAAkB;IAuBhC,0DAAsB;IAAtB,+EAAsB;;;AD7FrC,MAAM,qBAAqB;IA0BhC,YAAoB,aAA4B,EAAU,QAAyB,EACvE,KAAqB,EAAU,eAAgC,EAC/D,WAAwB;QAFhB,kBAAa,GAAb,aAAa,CAAe;QAAU,aAAQ,GAAR,QAAQ,CAAiB;QACvE,UAAK,GAAL,KAAK,CAAgB;QAAU,oBAAe,GAAf,eAAe,CAAiB;QAC/D,gBAAW,GAAX,WAAW,CAAa;QAbpC,mBAAc,GAAQ,EAAE,CAAC;QAGzB,iBAAY,GAAG,IAAI,CAAC;IAUoB,CAAC;IAEzC,QAAQ;QACN,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CACvB,IAAI,CAAC,EAAE;YACL,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC,MAAM,CAAC;YAC9C,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC,UAAU,CAAC;YAC/C,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;QAC5B,CAAC,CACF,CAAC;QACF,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,IAAI,CAAC,sBAAsB,EAAE,CAAC;QAC9B,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,IAAI,CAAC,WAAW,EAAE,CAAC;IAErB,CAAC;IACD,aAAa;QACX,IAAI,CAAC,eAAe,CAAC,qBAAqB,CAAC,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE,IAAI,CAAC,UAAU,CAAC,YAAY,EAChG,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,oBAAoB,EAAE,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,eAAe,EACrG,IAAI,CAAC,aAAa,CAAC;aACtB,SAAS,CACR,CAAC,GAAgC,EAAE,EAAE;YACnC,IAAI,CAAC,aAAa,GAAG,GAAG,CAAC,MAAM,CAAC;YAChC,IAAI,CAAC,UAAU,GAAG,GAAG,CAAC,UAAU,CAAC;YACjC,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;QAC5B,CAAC,EAAE,KAAK,CAAC,EAAE;YACT,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,0BAA0B,CAAC,CAAC;QAClD,CAAC,CACF,CAAC;IACJ,CAAC;IACD,aAAa;QACX,IAAI,CAAC,aAAa,CAAC,YAAY,EAAE,CAAC,SAAS,CACzC,CAAC,SAAqB,EAAE,EAAE;YACxB,IAAI,CAAC,aAAa,GAAG,SAAS,CAAC;QACjC,CAAC,EAAE,KAAK,CAAC,EAAE;YACT,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;QAC/B,CAAC,CACF,CAAC;IACJ,CAAC;IACD,sBAAsB;QACpB,IAAI,CAAC,aAAa,CAAC,uBAAuB,EAAE,CAAC,SAAS,CACpD,CAAC,kBAAsC,EAAE,EAAE;YACzC,IAAI,CAAC,yBAAyB,GAAG,kBAAkB,CAAC;QACtD,CAAC,EAAE,KAAK,CAAC,EAAE;YACT,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;QAC/B,CAAC,CACF,CAAC;IACJ,CAAC;IACD,WAAW;QACT,IAAI,CAAC,aAAa,CAAC,iBAAiB,EAAE,CAAC,SAAS,CAC9C,CAAC,OAAiB,EAAE,EAAE;YACpB,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC;QAC7B,CAAC,EAAE,KAAK,CAAC,EAAE;YACT,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAC;QAC/C,CAAC,CACF,CAAC;IACJ,CAAC;IAED,WAAW;QACT,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,CAAC,SAAS,CACvC,CAAC,OAAiB,EAAE,EAAE;YACpB,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC;QAC7B,CAAC,EAAE,KAAK,CAAC,EAAE;YACT,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;QAC/B,CAAC,CACF,CAAC;IACJ,CAAC;IAED,gBAAgB,CAAC,KAAqB;QACpC,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;IACtC,CAAC;IACD,wBAAwB,CAAC,KAAqB;QAC5C,IAAI,CAAC,oBAAoB,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;IAC9C,CAAC;IACD,mBAAmB,CAAC,KAAqB;QACvC,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC;IAC5C,CAAC;IACD,kBAAkB,CAAC,KAAqB;QACtC,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;IACpC,CAAC;IACD,WAAW,CAAC,KAAU;QACpB,IAAI,CAAC,UAAU,CAAC,WAAW,GAAG,KAAK,CAAC,IAAI,CAAC;QACzC,IAAI,CAAC,aAAa,EAAE,CAAC;IACvB,CAAC;IACD,iBAAiB,CAAC,KAAW;QAC3B,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QACvD,MAAM,KAAK,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;QACnC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IACvD,CAAC;IACD,eAAe,CAAC,KAAW;QACzB,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IACvD,CAAC;IACD,gBAAgB,CAAC,CAAS,EAAE,QAAgB;QAC1C,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,CACxC,IAAI,CAAC,EAAE;YACL,yBAAyB;YACzB,qBAAqB;YACrB,2CAA2C;YAC3C,oCAAoC;YACpC,kDAAM,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;YACvB,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,qBAAqB,CAAC,CAAC;QAC/C,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAC;QACrD,CAAC,CACF,CAAC;IACJ,CAAC;IACD,WAAW,CAAC,iBAAwB;QAClC,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,iBAAiB,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;YAC7D,IAAI,CAAC,gBAAgB,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,iBAAiB,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,CAAC;SACvF;IACH,CAAC;IACD,WAAW;QACT,IAAI,CAAC,YAAY,GAAG,IAAI,CAAE;QAC1B,IAAI,CAAC,oBAAoB,GAAI,IAAI,CAAE;QACnC,IAAI,CAAC,WAAW,GAAI,IAAI,CAAE;QAC1B,IAAI,CAAC,UAAU,GAAI,IAAI,CAAE;QACzB,IAAI,CAAC,eAAe,GAAI,IAAI,CAAE;QAC9B,IAAI,CAAC,aAAa,GAAI,IAAI,CAAE;QAC5B,IAAI,CAAC,aAAa,EAAE,CAAC;IACvB,CAAC;;0FApJU,qBAAqB;mHAArB,qBAAqB;QCnBlC,yEAAwB;QACtB;QAAA,gFAA2B;QACvB;QAAA,yEAA4B;QACxB;QAAA,yEAA6B;QACzB;QAAA,2EAEwG;QADtE,+LAA0B,kHACiB,4BAAwB,IADzC;QAD5D,4DAEwG;QAC5G;QAAA,4DAAM;QAEN;QAAA,0EAA6B;QACzB;QAAA,4EAE4H;QAD1F,wMAAkC,mHACqB,oCAAgC,IADrD;QADpE,4DAE4H;QAChI;QAAA,4DAAM;QAEN;QAAA,0EAA6B;QACzB;QAAA,4EAEgH;QADrF,+LAAyB,mHAC8B,+BAA2B,IADzD;QADpD,4DAEgH;QACpH;QAAA,4DAAM;QAEN;QAAA,0EAA6B;QACzB;QAAA,4EAEwG;QAD9E,8LAAwB,mHACyB,8BAA0B,IADnD;QADlD,4DAEwG;QAC5G;QAAA,4DAAM;QAEN;QAAA,0EAA6B;QAC3B;QAAA,4EAKa;QAFb,6LAAuB,2GAAkB,6BAAyB,IAA3C;QAHvB,4DAKa;QACf;QAAA,4DAAM;QACN;QAAA,0EAA6B;QAC3B;QAAA,4EAKa;QAFb,2LAAqB,2GAAkB,2BAAuB,IAAzC;QAHrB,4DAKa;QACf;QAAA,4DAAM;QACV;QAAA,4DAAM;QACN;QAAA,0EAA4B;QACxB;QAAA,8EAAyI;QAA/D,8IAAS,mBAAe,IAAC;QAAsC,oEAA4B;QAAC,mEAAM;QAAA,4DAAS;QACrL;QAAA,8EAAkF;QAA5D,8IAAS,iBAAa,IAAC;QAAqC,oEAA4B;QAAC,kEAAK;QAAA,4DAAS;QACjI;QAAA,4DAAM;QACR;QAAA,4DAAO;QACX;QAAA,4DAAM;QACN;QAAA,qHAcM;QAEN;QAAA,qHAsDM;;;QAnH0C,0DAA0B;QAA1B,qFAA0B;QAM1B,0DAAkC;QAAlC,6FAAkC;QAMzC,0DAAyB;QAAzB,oFAAyB;QAM1B,0DAAwB;QAAxB,mFAAwB;QAQpD,0DAAuB;QAAvB,kFAAuB;QAQvB,0DAAqB;QAArB,gFAAqB;QAMD,0DAAmD;QAAnD,8FAAmD;QAK7E,2DAAkB;QAAlB,kFAAkB;QAgBlB,0DAAmB;QAAnB,mFAAmB;;;;;;;;;;;;;;;;;;;;;;;;ACjEoC;AACd;;;;;;;;;ICEzC,6EAA2E;IAAA,uDAAgB;IAAA,4DAAS;;;IAAhD,qHAAsB;IAAC,0DAAgB;IAAhB,0GAAgB;;;IA2CvF,yEAA4C;IAAA,uDAAiD;;IAAA,4DAAK;;;IAAtD,0DAAiD;IAAjD,4OAAiD;;;IAJ/F,qEAAwC;IACtC;IAAA,qEAAI;IACF;IAAA,yEAAQ;IAAA,uDAAsB;IAAA,4DAAS;IACzC;IAAA,4DAAK;IACL;IAAA,wHAAkG;IACpG;IAAA,4DAAK;;;;IAHO,0DAAsB;IAAtB,yIAAsB;IAE3B,0DAA8B;IAA9B,iGAA8B;;;;ADlCtC,MAAM,uBAAuB;IAYlC,YACU,aAA4B,EAC5B,QAAyB,EAC1B,WAAwB;QAFvB,kBAAa,GAAb,aAAa,CAAe;QAC5B,aAAQ,GAAR,QAAQ,CAAiB;QAC1B,gBAAW,GAAX,WAAW,CAAa;QAXjC,wBAAmB,GAAG,KAAK,CAAC;QAC5B,YAAO,GAAG,yEAAkB,CAAC;QAC7B,OAAE,GAAG,CAAC,CAAE;QAIR,UAAK,GAAQ,EAAE,CAAC;IAMb,CAAC;IAEJ,QAAQ;QACN,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAC5B,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAC1B,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,MAAM,CAAC;IACrD,CAAC;IAED,YAAY,CAAC,CAAM;QACjB,IAAI,CAAC,mBAAmB,GAAG,CAAC,CAAC;IAC/B,CAAC;IAED,kBAAkB;QAChB,IAAI,CAAC,QAAQ,GAAG,IAAI,yDAAY,CAAC;YAC/B,GAAG,EAAE,IAAI,CAAC,OAAO,GAAG,WAAW,GAAG,IAAI,CAAC,QAAQ,GAAG,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,QAAQ,GAAG,IAAI,CAAC,MAAM,GAAE,QAAQ;YAC/G,SAAS,EAAE,SAAS,GAAG,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC;YACpD,OAAO,EAAE,IAAI;YACb,eAAe,EAAE;gBACf,KAAK;gBACL,OAAO;gBACP,KAAK;gBACL,OAAO;gBACP,MAAM;gBACN,MAAM;gBACN,MAAM;gBACN,OAAO;gBACP,MAAM;gBACN,KAAK;gBACL,KAAK;gBACL,KAAK;gBACL,MAAM;aACP;YACD,iBAAiB,EAAE,IAAI;YACvB,UAAU,EAAE,KAAK;YACjB,WAAW,EAAE,EAAE,GAAG,IAAI,GAAG,IAAI,CAAC,YAAY;SAC3C,CAAC,CAAC;QAEH,IAAI,CAAC,QAAQ,CAAC,iBAAiB,GAAG,IAAI,CAAC,EAAE;YACvC,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC;QAC/B,CAAC,CAAC;QACF,IAAI,CAAC,QAAQ,CAAC,cAAc,GAAG,CAAC,IAAS,EAAE,QAAa,EAAE,MAAW,EAAE,MAAW,EAAE,EAAE;YACpF,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,wBAAwB,CAAC,CAAC;QAClD,CAAC,CAAC;IACJ,CAAC;IACD,oBAAoB;QAClB,IAAI,CAAC,aAAa,CAAC,uBAAuB,EAAE,CAAC,SAAS,CACpD,CAAC,MAA0B,EAAE,EAAE;YAC7B,IAAI,CAAC,oBAAoB,GAAG,MAAM,CAAC;YACnC,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC;QACtB,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CACF,CAAC;IACJ,CAAC;IACD,KAAK;QACH,IAAI,CAAC,kBAAkB,EAAE,CAAC;IAC5B,CAAC;;8FAzEU,uBAAuB;qHAAvB,uBAAuB;QCbpC,yEAAsB;QACpB;QAAA,yEAAiC;QAC/B;QAAA,2EAAsB;QAAA,4EAAiB;QAAA,4DAAQ;QAC/C;QAAA,+EAA0G;QAA7E,iJAAU,WAAO,IAAC;QAC7C;QAAA,2HAAoG;QACtG;QAAA,4DAAS;QACX;QAAA,4DAAM;QACR;QAAA,4DAAM;QAEN;QAAA,0EAAsB;QAEpB;QAAA,0EAAsB;QAEpB;QAAA,sEAAI;QAAA,2EAAe;QAAA,4DAAK;QAExB;QAAA,0EAI0D;QAFxD,yJAAY,wBAAoB,IAAC;QAGjC;QAAA,mEAAkC;QAClC,6FACF;QAAA,4DAAM;QAEN;QAIF;QAAA,4DAAM;QAEN;QAAA,2EAAkD;QAEhD;QAAA,sEAAI;QAAA,wEAAY;QAAA,4DAAK;QACrB;QAAA,qEAAG;QAAA,wDAA2C;QAAA,4DAAI;QAElD;QAAA,6EAAqB;QACnB;QAAA,yEAAO;QACL;QAAA,sEAAI;QACF;QAAA,0EAAgB;QAAA,gEAAI;QAAA,4DAAK;QACzB;QAAA,sEAAI;QAAA,gEAAI;QAAA,4DAAK;QACf;QAAA,4DAAK;QACP;QAAA,4DAAQ;QACR;QAAA,yEAAO;QACL;QAAA,qHAKK;QACP;QAAA,4DAAQ;QACV;QAAA,4DAAQ;QAER;QAAA,uEAAK;QACH;QAAA,uEAAK;QACH,+FACA;QAAA,2EAA2B;QACzB;QAAA,sEAAoG;QACtG;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAAA,8EAA4I;QAAnF,gJAAS,wBAAoB,IAAC;QACrF;QAAA,uEAAkC;QAAC,2EACrC;QAAA,4DAAS;QACT;QAAA,8EAA2H;QAAlE,gJAAS,wBAAoB,IAAC;QACrF;QAAA,uEAA+B;QAAC,2EAClC;QAAA,4DAAS;QACT;QAAA,8EAA4H;QAApE,gJAAS,yBAAqB,IAAC;QACrF;QAAA,uEAAiC;QAAC,2EACpC;QAAA,4DAAS;QACX;QAAA,4DAAM;QAER;QAAA,4DAAM;QAER;QAAA,4DAAM;;QArEwD,0DAAsB;QAAtB,iFAAsB;QACnD,0DAAuB;QAAvB,6FAAuB;QAYlD,2DAAiD;QAAjD,oKAAiD;QAiBhD,2DAA2C;QAA3C,mLAA2C;QAUrB,2DAAiB;QAAjB,uFAAiB;QAaS,2DAAgD;QAAhD,wKAAgD;QAGT,0DAAmD;QAAnD,gHAAmD;QAGnD,0DAAkC;QAAlC,+FAAkC;QAGlC,0DAAmC;QAAnC,gGAAmC;;;;;;;;;;;;;;;;;;;;;;;;;;;IEnD/H,0FAAgF;;;ADP3E,MAAM,iBAAiB;IAG5B;QADA,eAAU,GAAG,KAAK,CAAC;IACH,CAAC;IAEjB,QAAQ;IACR,CAAC;IACD,gBAAgB;QACd,IAAI,CAAC,UAAU,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC;QACnC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAC/B,CAAC;;kFAVU,iBAAiB;+GAAjB,iBAAiB;QCP9B,yEAA4B;QAC1B;QAAA,wEAAuB;QACrB;QAAA,wEAA4B;QAC1B;QAAA,uEAAkC;QAAA,wEAAa;QAAA,4DAAI;QACrD;QAAA,4DAAK;QACP;QAAA,4DAAK;QACL;QAAA,yEAA0B;QACxB;QAAA,yEAA0B;QACxB;QAAA,wEAAwD;QAA7B,qIAAS,sBAAkB,IAAC;QAAC,mEAA0B;QAAC,yEAAY;QAAA,4DAAI;QACrG;QAAA,4DAAK;QACL;QAGF;QAAA,4DAAK;QACL;QAAA,iKAAgF;QAChF;QAAA,gFAAuC;QACvC;QACF;QAAA,4DAAM;QAGN;;QAjBS,0DAA8B;QAA9B,6IAA8B;QAWN,2DAAgB;QAAhB,gFAAgB;;;;;;;;;;;;;;;;;;;;;;;;;ACdc;AAKC;AAEjB;;;;;;;;;;ICQrC,6EAA2E;IAAA,uDAAgB;IAAA,4DAAS;;;IAAhD,qHAAsB;IAAC,0DAAgB;IAAhB,0GAAgB;;;IAU3F,6EAAoE;IAAA,uDAAkB;IAAA,4DAAS;;;IAApD,yHAAwB;IAAC,0DAAkB;IAAlB,8GAAkB;;;IA+CpF,yEAA4C;IAAA,uDAAiD;;IAAA,4DAAK;;;IAAtD,0DAAiD;IAAjD,4OAAiD;;;IAJ/F,qEAAwC;IACtC;IAAA,qEAAI;IACF;IAAA,yEAAQ;IAAA,uDAAsB;IAAA,4DAAS;IACzC;IAAA,4DAAK;IACL;IAAA,iIAAkG;IACpG;IAAA,4DAAK;;;;IAHO,0DAAsB;IAAtB,yIAAsB;IAE3B,0DAA8B;IAA9B,iGAA8B;;;;IA8B7C;IAAA,0EAA0B;IACxB;IAAA,yEAAkC;IAAA,gFAAqB;IAAA,4DAAK;IAC5D;IAAA,6EAA4F;IAA1B,yTAAS,iFAAe,KAAC;IACzF;IAAA,2EAAyB;IAAA,iEAAO;IAAA,4DAAO;IACzC;IAAA,4DAAS;IACX;IAAA,4DAAM;IACN;IAAA,2EAAwB;IACtB;IAAA,0EAAsB;IACpB;IAAA,6EAAiI;IAA7D,kbAAiC;IAArG,4DAAiI;IACnI;IAAA,4DAAM;IACN;IAAA,2EAA2B;IACzB;IAAA,6EAA4I;IAAvE,ubAAsC;IAA3G,4DAA4I;IAC9I;IAAA,4DAAM;IACN;IAAA,8EAAmF;IAAhC,0TAAS,uFAAqB,KAAC;IAAC,gEAAI;IAAA,4DAAS;IAClG;IAAA,4DAAM;IACR;;;IAP0E,2DAAiC;IAAjC,+FAAiC;IAGhC,0DAAsC;IAAtC,oGAAsC;;;;ADjG1G,MAAM,+BAA+B;IAoB1C,YACU,aAA4B,EAC5B,QAAyB,EAC1B,WAAwB,EACvB,YAA4B;QAH5B,kBAAa,GAAb,aAAa,CAAe;QAC5B,aAAQ,GAAR,QAAQ,CAAiB;QAC1B,gBAAW,GAAX,WAAW,CAAa;QACvB,iBAAY,GAAZ,YAAY,CAAgB;QArBtC,wBAAmB,GAAG,KAAK,CAAC;QAC5B,YAAO,GAAG,yEAAkB,CAAC;QAC7B,OAAE,GAAG,CAAC,CAAC;QAMP,UAAK,GAAQ,EAAE,CAAC;QAChB,0BAAqB,GAAQ,EAAE,CAAC;QAEhC,eAAU,GAAG,KAAK,CAAC;IAWhB,CAAC;IAEJ,QAAQ;QACN,IAAI,CAAC,4BAA4B,EAAE,CAAC;QACpC,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAC1B,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,MAAM,CAAC;IACrD,CAAC;IAED,YAAY,CAAC,CAAM;QACjB,IAAI,CAAC,mBAAmB,GAAG,CAAC,CAAC;IAC/B,CAAC;IAED,kBAAkB;QAEhB,IAAI,CAAC,QAAQ,GAAG,IAAI,yDAAY,CAAC;YAC/B,GAAG,EACD,IAAI,CAAC,OAAO;gBACZ,+BAA+B;gBAC/B,IAAI,CAAC,KAAK,CAAC,IAAI;gBACf,QAAQ;gBACR,IAAI,CAAC,KAAK,CAAC,WAAW;gBACtB,YAAY;gBACZ,IAAI,CAAC,KAAK,CAAC,UAAU;gBACrB,QAAQ;gBACR,IAAI,CAAC,KAAK,CAAC,MAAM;gBACjB,cAAc;gBACd,IAAI,CAAC,KAAK,CAAC,EAAE;YACf,SAAS,EAAE,SAAS,GAAG,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC;YACpD,OAAO,EAAE,IAAI;YACb,eAAe,EAAE;gBACf,KAAK;gBACL,OAAO;gBACP,KAAK;gBACL,OAAO;gBACP,MAAM;gBACN,MAAM;gBACN,MAAM;gBACN,OAAO;gBACP,MAAM;gBACN,KAAK;gBACL,KAAK;gBACL,KAAK;gBACL,MAAM;aACP;YACD,iBAAiB,EAAE,IAAI;YACvB,UAAU,EAAE,KAAK;YACjB,WAAW,EAAE,EAAE,GAAG,IAAI,GAAG,IAAI,CAAC,YAAY;SAC3C,CAAC,CAAC;QAEH,IAAI,CAAC,QAAQ,CAAC,cAAc,GAAG,CAAC,IAAS,EAAE,QAAa,EAAE,MAAW,EAAE,MAAW,EAAE,EAAE;YACpF,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,wBAAwB,CAAC,CAAC;QAClD,CAAC,CAAC;IAEJ,CAAC;IACD,4BAA4B;QAC1B,IAAI,CAAC,aAAa,CAAC,2BAA2B,EAAE,CAAC,SAAS,CACxD,CAAC,cAA0C,EAAE,EAAE;YAC7C,IAAI,CAAC,oBAAoB,GAAG,cAAc,CAAC;YAC3C,+BAA+B;QACjC,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CACF,CAAC;IACJ,CAAC;IACD,aAAa;QACX,IAAI,CAAC,aAAa,CAAC,YAAY,EAAE,CAAC,SAAS,CACzC,CAAC,SAAqB,EAAE,EAAE;YACxB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC7B,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CACF,CAAC;IACJ,CAAC;IACD,yBAAyB;QACvB,IAAI,CAAC,aAAa,CAAC,sBAAsB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC,GAAG,EAAE;YACjE,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,2BAA2B,CAAC,CAAC;QACrD,CAAC,EAAE,KAAK,CAAC,EAAE;YACT,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,mCAAmC,CAAC,CAAC;QAC3D,CAAC,CAAC,CAAC;QAEL,IAAI,CAAC,QAAQ,CAAC,iBAAiB,GAAG,IAAI,CAAC,EAAE;YACvC,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC;QAC/B,CAAC,CAAC;IACJ,CAAC;IACD,KAAK;QACH,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC,oBAAoB,CAAC;QAC5C,IAAI,CAAC,KAAK,CAAC,WAAW,GAAG,IAAI,CAAC,2BAA2B,CAAC;QAC1D,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAChC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACxB,IAAI,CAAC,kBAAkB,EAAE,CAAC;IAC5B,CAAC;IACD,aAAa;QACX,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC,oBAAoB,CAAC;QAC5C,IAAI,CAAC,KAAK,CAAC,WAAW,GAAG,IAAI,CAAC,2BAA2B,CAAC;QAC1D,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACxB,IAAI,CAAC,kBAAkB,EAAE,CAAC;IAC5B,CAAC;IACD,gBAAgB;QACd,IAAI,CAAC,UAAU,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC;IACrC,CAAC;IACD,SAAS,CAAC,QAA0B;QAClC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACnD,CAAC;IAED,mBAAmB;QACjB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;QACtC,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;QACzD,IAAI,CAAC,qBAAqB,CAAC,IAAI,GAAG,IAAI,CAAC,mBAAmB,CAAC;QAC3D,IAAI,CAAC,qBAAqB,CAAC,KAAK,GAAG,IAAI,CAAC,wBAAwB,CAAC;QAEjE,IAAI,CAAC,aAAa,CAAC,8BAA8B,CAAC,IAAI,CAAC,qBAAqB,CAAC;aAC5E,SAAS,CACR,GAAG,EAAE;YACH,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,+BAA+B,CAAC,CAAC;YACvD,IAAI,CAAC,4BAA4B,EAAE,CAAC;QACtC,CAAC,EAAE,KAAK,CAAC,EAAE;YACT,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,kCAAkC,CAAC,CAAC;QAC1D,CAAC,CACF,CAAC;QAEF,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;IACvB,CAAC;;8GArJU,+BAA+B;6HAA/B,+BAA+B;;QChB5C,yEAAuB;QACrB;QAAA,yEAAyB;QACvB,iGACF;QAAA,4DAAM;QACN;QAAA,yEAAuB;QACrB;QAAA,yEAAiB;QACf;QAAA,yEAAiC;QAC/B;QAAA,4EAAkC;QAAA,yEAAa;QAAA,4DAAQ;QACvD;QAAA,4EAAkJ;QAA/H,kNAAkC;QAArD,4DAAkJ;QACpJ;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAAA,0EAAsB;QACpB;QAAA,0EAAiC;QAC/B;QAAA,4EAAsB;QAAA,sFAA0B;QAAA,4DAAQ;QACxD;QAAA,kFAA0G;QAA7E,0JAAU,WAAO,IAAC;QAC7C;QAAA,oIAAoG;QACtG;QAAA,4DAAS;QACX;QAAA,4DAAM;QACN;QAAA,2EAAsC;QACpC;QAAA,8EAAoF;QAA9B,uSAAS,4EAAmB,KAAC;QAAC,oEAAiC;QAAA,4DAAS;QAChI;QAAA,4DAAM;QACN;QAAA,0EAAiC;QAC/B;QAAA,4EAAsB;QAAA,oEAAQ;QAAA,4DAAQ;QACtC;QAAA,kFACW;QADkB,0JAAU,WAAO,IAAC;QAE7C;QAAA,oIAA+F;QACjG;QAAA,4DAAS;QACX;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAAA,0EAAiB;QACf;QAAA,2EAAkC;QAChC;QAAA,6EAAyC;QAAA,+FAAmC;QAAA,4DAAQ;QACpF;QAAA,gFAA2M;QAA5K,wJAAQ,mBAAe,IAAC;QAAoJ,4DAAW;QACxN;QAAA,4DAAM;QACR;QAAA,4DAAM;QACR;QAAA,4DAAM;QAEN;QAAA,2EAAgC;QAE9B;QAAA,2EAAsB;QAEpB;QAAA,sEAAI;QAAA,qEAAS;QAAA,4DAAK;QAElB;QAAA,2EAC0D;QADS,iKAAY,wBAAoB,IAAC;QAElG;QAAA,oEAAkC;QAClC,iGACF;QAAA,4DAAM;QAEN;QAIF;QAAA,4DAAM;QAEN;QAAA,2EAAkD;QAEhD;QAAA,sEAAI;QAAA,wEAAY;QAAA,4DAAK;QACrB;QAAA,qEAAG;QAAA,wDAA2C;QAAA,4DAAI;QAElD;QAAA,6EAAqB;QACnB;QAAA,yEAAO;QACL;QAAA,sEAAI;QACF;QAAA,0EAAgB;QAAA,gEAAI;QAAA,4DAAK;QACzB;QAAA,sEAAI;QAAA,gEAAI;QAAA,4DAAK;QACf;QAAA,4DAAK;QACP;QAAA,4DAAQ;QACR;QAAA,yEAAO;QACL;QAAA,+HAKK;QACP;QAAA,4DAAQ;QACV;QAAA,4DAAQ;QAER;QAAA,wEAAK;QACH;QAAA,wEAAK;QACH,oGACA;QAAA,4EAA2B;QACzB;QAAA,uEAAoG;QACtG;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAAA,+EAA4I;QAAnF,yJAAS,wBAAoB,IAAC;QACrF;QAAA,wEAAkC;QAAC,8EACrC;QAAA,4DAAS;QACT;QAAA,+EAA2H;QAAlE,yJAAS,wBAAoB,IAAC;QACrF;QAAA,wEAA+B;QAAC,8EAClC;QAAA,4DAAS;QACT;QAAA,+EAA4H;QAApE,yJAAS,yBAAqB,IAAC;QACrF;QAAA,wEAAiC;QAAC,8EACpC;QAAA,4DAAS;QACX;QAAA,4DAAM;QAER;QAAA,4DAAM;QAER;QAAA,4DAAM;QAER;QAAA,4DAAM;QAEN;QAAA,6NAgBc;QAKd;;QAlH2B,2DAAkC;QAAlC,6FAAkC;QAMK,2DAAsB;QAAtB,iFAAsB;QACnD,0DAAuB;QAAvB,6FAAuB;QAQM,2DAA8B;QAA9B,yFAA8B;QAEzD,0DAAY;QAAZ,kFAAY;QAOa,2DAAyC;QAAzC,oGAAyC;QAWlF,2DAAiD;QAAjD,oKAAiD;QAe/D,2DAA2C;QAA3C,mLAA2C;QAUrB,2DAAiB;QAAjB,uFAAiB;QAaS,2DAAgD;QAAhD,wKAAgD;QAGT,0DAAmD;QAAnD,gHAAmD;QAGnD,0DAAkC;QAAlC,+FAAkC;QAGlC,0DAAmC;QAAnC,gGAAmC;;;;;;;;;;;;;;;;;;;;;;;;;;ACpF/F;;;;;;;;;;;ICcpC,yEAAsD;IACpD;IAAA,yEAAsB;IACpB;IAAA,yEAAmE;IAA9D,uWAAS,qLAAmD,KAAC;IAChE;IAAA,oEAAgJ;IAClJ;IAAA,4DAAM;IACR;IAAA,4DAAM;IACN;IAAA,0EAAsB;IACpB;IAAA,wEAAiE;IAA9D,sWAAS,qLAAmD,KAAC;IAAC,mEAA8B;IAC7F;IAAA,4EAA0B;IAAE,wDAAsC;IAAA,4DAAQ;IAC1E;IAAA,0EAA8C;IAC7C,wDACD;IAAA,4DAAM;IACR;IAAA,4DAAI;IACJ;IAAA,4EAA2C;IAAA,wDAAyC;;IAAA,4DAAO;IAC3F;IAAA,4EAA6C;IAAA,wDAAoC;;IAAA,4DAAO;IAC1F;IAAA,4DAAM;IACR;IAAA,4DAAM;;;IAbwB,0DAAmD;IAAnD,2NAAmD;IAK/C,2DAAsC;IAAtC,6IAAsC;IAEjE,0DACD;IADC,8IACD;IAEyC,0DAAyC;IAAzC,4LAAyC;IACvC,0DAAoC;IAApC,yLAAoC;;ADnB9E,MAAM,4BAA4B;IAOvC,YAAoB,aAA4B,EAAU,QAAyB,EACzE,KAAqB,EAAU,GAAW,EAAU,eAAgC,EAAU,WAAwB;QAD5G,kBAAa,GAAb,aAAa,CAAe;QAAU,aAAQ,GAAR,QAAQ,CAAiB;QACzE,UAAK,GAAL,KAAK,CAAgB;QAAU,QAAG,GAAH,GAAG,CAAQ;QAAU,oBAAe,GAAf,eAAe,CAAiB;QAAU,gBAAW,GAAX,WAAW,CAAa;IAAI,CAAC;IAErI,QAAQ;QACN,IAAI,CAAC,cAAc,EAAE,CAAC;IACxB,CAAC;IAED,cAAc;QACZ,IAAI,CAAC,aAAa,CAAC,kBAAkB,CAAC,IAAI,CAAC,MAAM,IAAI,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,SAAS,CAAC,CAAC,SAAqB,EAAE,EAAE;YACpI,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,MAAM,CAAC;YACnD,IAAI,CAAC,gBAAgB,GAAG,SAAS,CAAC;YAClC,IAAI,IAAI,CAAC,gBAAgB,IAAI,IAAI,IAAI,IAAI,CAAC,gBAAgB,IAAI,SAAS,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,EAAE;gBAC9F,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,IAAI,IAAI,CAAC,MAAM,CAAC,CAAC;aAC/E;QACH,CAAC,EAAE,KAAK,CAAC,EAAE;YACT,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CAAC,CAAC;IACL,CAAC;IAED,gBAAgB,CAAC,CAAS,EAAE,QAAgB;QAC1C,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,CACxC,IAAI,CAAC,EAAE;YACL,yBAAyB;YACzB,qBAAqB;YACrB,2CAA2C;YAC3C,oCAAoC;YACpC,kDAAM,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;YACvB,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,qBAAqB,CAAC,CAAC;QAC/C,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAC;QACrD,CAAC,CACF,CAAC;IACJ,CAAC;IACD,WAAW,CAAC,iBAAwB;QAClC,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,iBAAiB,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;YAC7D,IAAI,CAAC,gBAAgB,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,iBAAiB,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,CAAC;SACvF;IACH,CAAC;;wGA7CU,4BAA4B;0HAA5B,4BAA4B;QCKzC;QAAA,yHAgBM;QAEN;QAAA,gEAAI;QACJ;QAAA,sEAAK;QACH;QAAA,4EAAsF;QAAhE,oJAAS,+BAAuB,IAAC;QAA+B,kEAA8B;QAAC,wEAAY;QAAA,4DAAS;QAC5I;QAAA,4DAAM;;QArBqB,0DAAa;QAAb,mFAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACZN;;;;;;;;;;;;;;;ICO5B,0EAAgE;IAC9D;IAAA,yEAAQ;IAAA,sEAAW;IAAA,4DAAS;IAAA,gIAC9B;IAAA,4DAAM;;;;ADAL,MAAM,gCAAgC;IAa3C,YAAoB,aAA4B,EACtC,QAAyB,EACzB,KAAqB,EACrB,YAA4B,EAC5B,WAAwB,EACxB,MAAc,EACd,eAAgC,EAChC,WAAwB,EACxB,GAAmB;QART,kBAAa,GAAb,aAAa,CAAe;QACtC,aAAQ,GAAR,QAAQ,CAAiB;QACzB,UAAK,GAAL,KAAK,CAAgB;QACrB,iBAAY,GAAZ,YAAY,CAAgB;QAC5B,gBAAW,GAAX,WAAW,CAAa;QACxB,WAAM,GAAN,MAAM,CAAQ;QACd,oBAAe,GAAf,eAAe,CAAiB;QAChC,gBAAW,GAAX,WAAW,CAAa;QACxB,QAAG,GAAH,GAAG,CAAgB;QAhB7B,oBAAoB;QACpB,oBAAe,GAAQ,EAAE,CAAC;QAC1B,mBAAc,GAAQ,EAAE,CAAC;QAClB,YAAO,GAAG,KAAK,CAAC;QAEhB,eAAU,GAAG,CAAC,CAAC;QAsNtB,uBAAkB,GAAQ,EAAE,CAAC;IA3MI,CAAC;IAElC,QAAQ;QACN,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC;QACjD,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC;QAClD,IAAI,CAAC,qBAAqB,EAAE,CAAC;QAC7B,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACjC,CAAC;IAED,qBAAqB;QACnB,IAAI,CAAC,aAAa,CAAC,oBAAoB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,SAAS,CACnE,CAAC,WAAwB,EAAE,EAAE;YAC3B,IAAI,CAAC,0BAA0B,CAAC,WAAW,CAAC,CAAC;QAC/C,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CACF,CAAC;IACJ,CAAC;IAED,0BAA0B,CAAC,WAAgB;QACzC,IAAI,CAAC,aAAa,GAAG,WAAW,EAAE,aAAa,CAAC;QAChD,IAAI,CAAC,sBAAsB,GAAG,WAAW,EAAE,sBAAsB,CAAC;QAClE,IAAI,CAAC,0BAA0B,GAAG,WAAW,EAAE,0BAA0B,CAAC;QAC1E,IAAI,CAAC,YAAY,GAAG,WAAW,EAAE,YAAY,CAAC;QAC9C,IAAI,CAAC,oBAAoB,GAAG,WAAW,EAAE,oBAAoB,CAAC;QAC9D,IAAI,CAAC,oBAAoB,GAAG,WAAW,EAAE,oBAAoB,CAAC;QAC9D,IAAI,CAAC,QAAQ,GAAG,WAAW,EAAE,QAAQ,CAAC;QACtC,IAAI,CAAC,EAAE,GAAG,WAAW,EAAE,EAAE,CAAC;QAC1B,IAAI,CAAC,WAAW,GAAG,WAAW,EAAE,WAAW,CAAC;QAC5C,IAAI,CAAC,WAAW,GAAG,WAAW,EAAE,WAAW,CAAC;QAC5C,IAAI,CAAC,cAAc,GAAG,WAAW,EAAE,cAAc,CAAC;QAClD,IAAI,CAAC,cAAc,GAAG,WAAW,EAAE,cAAc,CAAC;IACpD,CAAC;IAED,UAAU,CAAC,QAAa;QACtB,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,SAAS,CAAC,CAAC,OAAe,EAAE,EAAE;YACnE,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC;QACxB,CAAC,EAAE,KAAK,CAAC,EAAE;YACT,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CAAC,CAAC;IACL,CAAC;IAED,eAAe;QACb,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;QACtC,IAAI,CAAC,aAAa,CAAC,qBAAqB,CAAC,IAAI,CAAC,mBAAmB,EAAE,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,SAAS,CAChH,CAAC,OAAe,EAAE,EAAE;YAClB,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YACrB,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,gCAAgC,CAAC,CAAC;YACxD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC;QACxC,CAAC,EAAE,KAAK,CAAC,EAAE;YACT,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAC;QACpD,CAAC,CACF,CAAC;IACJ,CAAC;IAED,2BAA2B,CAAC,QAAgB;QAC1C,IAAI,CAAC,mBAAmB,EAAE,CAAC;QAC3B,OAAO,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAC;QAEtC,IAAI,CAAC,eAAe,CAAC,mCAAmC,CAAC,QAAQ,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC,SAAS,CAChG,IAAI,CAAC,EAAE;YACL,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YAClB,kDAAM,CAAC,IAAI,EAAE,IAAI,CAAC,eAAe,CAAC,WAAW,GAAG,UAAU,CAAC,CAAC;YAC5D,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,qBAAqB,CAAC,CAAC;QAC/C,CAAC,EAAE,KAAK,CAAC,EAAE;YACT,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC;QAC9C,CAAC,CACF,CAAC;IACJ,CAAC;IAED,mBAAmB;QACjB,4BAA4B;QAC5B,IAAI,CAAC,eAAe,CAAC,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC,sBAAsB,EAAE,CAAC;QAC5E,IAAI,CAAC,eAAe,CAAC,SAAS,GAAG,IAAI,CAAC,WAAW,CAAC,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;QAC1H,IAAI,CAAC,eAAe,CAAC,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC;QAC1D,IAAI,CAAC,eAAe,CAAC,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC1E,IAAI,CAAC,eAAe,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC;QAC1D,IAAI,CAAC,eAAe,CAAC,gBAAgB,GAAG,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC;QACpE,IAAI,CAAC,eAAe,CAAC,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC;QAC3D,IAAI,CAAC,eAAe,CAAC,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC;QAClD,IAAI,CAAC,eAAe,CAAC,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC;QACvD,IAAI,CAAC,eAAe,CAAC,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC;QACjE,IAAI,CAAC,eAAe,CAAC,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC;QAC5D,IAAI,CAAC,eAAe,CAAC,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC;QAC7D,IAAI,CAAC,eAAe,CAAC,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC;QAC5D,IAAI,CAAC,eAAe,CAAC,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC;QACjE,IAAI,CAAC,eAAe,CAAC,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC;QACnD,IAAI,CAAC,eAAe,CAAC,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC;QAC3D,IAAI,CAAC,eAAe,CAAC,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QAChE,IAAI,CAAC,eAAe,CAAC,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC;QAC5D,IAAI,CAAC,eAAe,CAAC,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC;QACvD,IAAI,CAAC,eAAe,CAAC,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC;QAC9D,IAAI,CAAC,eAAe,CAAC,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;QACzD,IAAI,CAAC,eAAe,CAAC,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC;QAC3D,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IACpC,CAAC;IAED,YAAY;QACV,IAAI,CAAC,cAAc,CAAC,IAAI,GAAG,IAAI,CAAC,kBAAkB,CAAC;QACnD,wCAAwC;QACxC,IAAI,CAAC,eAAe,CAAC,oBAAoB,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,SAAS,CACtE,IAAI,CAAC,EAAE;YACL,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YAClB,kDAAM,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC;YAC9B,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,qBAAqB,CAAC,CAAC;QAC/C,CAAC,EAAE,KAAK,CAAC,EAAE;YACT,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC;QAC9C,CAAC,CACF,CAAC;IACJ,CAAC;IACD,aAAa,CAAC,EAAU;QACtB,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC;QACrB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAC/B,CAAC;IAED,wDAAwD;IACxD,0BAA0B,CAAC,KAAoB;QAC7C,MAAM,WAAW,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;QAC5E,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE;YACpC,KAAK,CAAC,cAAc,EAAE,CAAC;SACxB;QACD,qCAAqC;QACrC,MAAM,YAAY,GAAG,KAAK,CAAC,MAA0B,CAAC;QACtD,IAAI,KAAK,CAAC,GAAG,KAAK,GAAG,IAAI,YAAY,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;YACzD,KAAK,CAAC,cAAc,EAAE,CAAC;SACxB;IACH,CAAC;IAED,uBAAuB,CAAC,KAAU,EAAE,cAAmB;QACrD,MAAM,YAAY,GAAG,KAAK,CAAC,MAA0B,CAAC;QACtD,MAAM,KAAK,GAAG,YAAY,CAAC,KAAK,CAAC;QACjC,iDAAiD;QACjD,MAAM,YAAY,GAAG,KAAK,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC;QACrD,IAAI,YAAY,EAAE;YAChB,QAAQ,cAAc,EAAE;gBACtB,KAAK,eAAe;oBAClB,YAAY,CAAC,KAAK,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;oBACrC,IAAI,CAAC,aAAa,GAAG,UAAU,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;oBACpD,MAAM;gBACR,KAAK,4BAA4B;oBAC/B,YAAY,CAAC,KAAK,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;oBACrC,IAAI,CAAC,0BAA0B,GAAG,UAAU,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;oBACjE,MAAM;gBACR,KAAK,cAAc;oBACjB,YAAY,CAAC,KAAK,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;oBACrC,IAAI,CAAC,YAAY,GAAG,UAAU,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;oBACnD,MAAM;gBACR,KAAK,sBAAsB;oBACzB,YAAY,CAAC,KAAK,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;oBACrC,IAAI,CAAC,oBAAoB,GAAG,UAAU,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;oBAC3D,MAAM;aACT;SACF;IACH,CAAC;IAED,6BAA6B;QAC3B,IAAI,CAAC,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,0BAA0B,CAAC,IAAI,CAAC,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,YAAY,CAAC;eACnH,CAAC,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,oBAAoB,CAAC,EAAE;YAC9D,OAAO,IAAI,CAAC,oBAAoB,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,0BAA0B,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;kBACvQ,CAAC,CAAC,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,oBAAoB,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;SAC3H;IACH,CAAC;IAED,wBAAwB,CAAC,KAAU;QACjC,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,IAAI,EAAE,IAAI,KAAK,IAAI,SAAS,IAAI,KAAK,IAAI,CAAC,EAAE;YACpE,OAAO,IAAI,CAAC;SACb;aAAM;YACL,OAAO,KAAK,CAAC;SACd;IACH,CAAC;IAaD,iBAAiB;QACf,IAAI,CAAC,mBAAmB,EAAE,CAAC;QAC3B,IAAI,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,oBAAoB,CAAC,EAAE;YAC5D,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,sFAAsF,CAAC,CAAC;YAC5G,OAAO;SACR;QACD,IAAI,CAAC,aAAa;aACf,iBAAiB,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,kBAAkB,CAAC;aACnD,SAAS,CACR,IAAI,CAAC,EAAE;YACL,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,0CAA0C,CAAC,CAAC;YAClE,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,qBAAqB,EAAE,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;QACxE,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CACF,CAAC;QACJ,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,uBAAuB,EAAE,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC1E,CAAC;IAGD,mBAAmB;QACjB,IAAI,CAAC,kBAAkB,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC;QAC3D,IAAI,CAAC,kBAAkB,CAAC,sBAAsB,GAAG,IAAI,CAAC,sBAAsB,CAAC;QAC7E,IAAI,CAAC,kBAAkB,CAAC,0BAA0B,GAAG,IAAI,CAAC,0BAA0B,CAAC;QACrF,IAAI,CAAC,kBAAkB,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC;QACzD,IAAI,CAAC,kBAAkB,CAAC,oBAAoB,GAAG,IAAI,CAAC,oBAAoB,CAAC;QACzE,IAAI,CAAC,kBAAkB,CAAC,oBAAoB,GAAG,IAAI,CAAC,oBAAoB,CAAC;QACzE,IAAI,CAAC,kBAAkB,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;QACjD,IAAI,CAAC,kBAAkB,CAAC,EAAE,GAAG,IAAI,CAAC,EAAE,CAAC;QACrC,IAAI,CAAC,kBAAkB,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;QACvD,IAAI,CAAC,kBAAkB,CAAC,WAAW,GAAG,IAAI,IAAI,EAAE,CAAC;QACjD,IAAI,CAAC,kBAAkB,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC;QAC7D,IAAI,CAAC,kBAAkB,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC;IAC/D,CAAC;IAED,gCAAgC;QAC9B,IAAI,CAAC,cAAc,GAAG,CAAC,CAAC;QACxB,IAAI,CAAC,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,oBAAoB,CAAC,EAAE;YACpH,OAAO,IAAI,CAAC,cAAc,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;kBACnI,CAAC,CAAC,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,oBAAoB,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;SAC5H;IACH,CAAC;;gHAtPU,gCAAgC;8HAAhC,gCAAgC;QCjB7C,yEAA4B;QAC1B;QAAA,wEAAuB;QACrB;QAAA,wEAA4B;QAC1B;QAAA,uEAAkC;QAAA,+DAAI;QAAA,4DAAI;QAC5C;QAAA,4DAAK;QACL;QAAA,yEAA4B;QAC1B;QAAA,wEAAoC;QAAA,uFAA2B;QAAA,4DAAI;QACrE;QAAA,4DAAK;QACL;QAAA,yEAAmC;QAAA,wDAAwB;QAAA,4DAAK;QAClE;QAAA,4DAAK;QACL;QAAA,0EAAiB;QACf;QAAA,0EAAsB;QACpB;QAAA,yEAAiB;QAAA,wDAAwB;QAAA,4DAAK;QAChD;QAAA,4DAAM;QACN;QAAA,0EAAsB;QACpB;QAAA,8HAEM;QACR;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAAA,0EAAiB;QACf;QAAA,2EAAsB;QACpB;QAAA,2EAAkB;QAChB;QAAA,sEAAiG;QACjG;QAAA,2EAAuB;QACrB;QAAA,uEAAK;QACH;QAAA,0EAAiB;QAAA,wDAAuB;QAAA,4DAAK;QAC/C;QAAA,4DAAM;QACN;QAAA,uEAAK;QACH;QAAA,0EAAQ;QAAA,sEAAU;QAAA,4DAAS;QAC3B;QAAA,qEAAG;QAAA,wDAA6F;;;QAAA,4DAAI;QACtG;QAAA,4DAAM;QACN;QAAA,uEAAK;QACH;QAAA,0EAAQ;QAAA,kEAAM;QAAA,4DAAS;QACvB;QAAA,qEAAG;QAAA,wDAAoC;;QAAA,4DAAI;QAC7C;QAAA,4DAAM;QACN;QAAA,uEAAK;QACH;QAAA,0EAAQ;QAAA,+DAAG;QAAA,4DAAS;QACpB;QAAA,qEAAG;QAAA,wDAAmC;;QAAA,4DAAI;QAC5C;QAAA,4DAAM;QACN;QAAA,uEAAK;QACH;QAAA,0EAAQ;QAAA,0EAAc;QAAA,4DAAS;QAC/B;QAAA,qEAAG;QAAA,wDAA0B;QAAA,4DAAI;QACnC;QAAA,4DAAM;QACR;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAAA,2EAAyB;QACvB;QAAA,8EAC8D;QAA9B,yJAAS,uBAAmB,IAAC;QAAC,wEAAY;QAAA,4DAAS;QACrF;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAAA,2EAAsB;QACpB;QAAA,iFAA6D;QAC3D;QAAA,4EAAuB;QACrB;QAAA,mFAAyC;QACvC;QAAA,4EAAuB;QACrB;QAAA,4EAA6B;QAC3B;QAAA,0EAAuF;QACrF;QAAA,4EAAkD;QAChD;QAAA,2EAAiB;QAAA,oFAAuB;QAAA,4DAAK;QAC7C;QAAA,0EAAO;QAAA,yDAAkD;;QAAA,4DAAQ;QACnE;QAAA,4DAAM;QACN;QAAA,0EAAgB;QAAA,yDACgD;;QAAA,4DAAI;QACpE;QAAA,0EAAO;QAAA,yDAA2D;;QAAA,4DAAQ;QAC1E;QAAA,0EAAgB;QAAA,yDAAwD;;QAAA,4DAAI;QAC9E;QAAA,4DAAI;QACN;QAAA,4DAAM;QACN;QAAA,4EAA2B;QACzB;QAAA,uEAAI;QAAA,4EAAe;QAAA,4DAAK;QACxB;QAAA,0EAAgB;QAAA,yDAAuB;QAAA,4DAAI;QAC3C;QAAA,2EAAiB;QAAA,uEAAU;QAAA,4DAAK;QAChC;QAAA,0EAAgB;QAAA,yDAA0B;QAAA,4DAAI;QAC9C;QAAA,2EAAiB;QAAA,0EAAa;QAAA,4DAAK;QACnC;QAAA,0EAAgB;QAAA,yDAA6D;QAAA,4DAAI;QACnF;QAAA,4DAAM;QACN;QAAA,4EAAsB;QACpB;QAAA,4EAAsB;QACpB;QAAA,4EAAkB;QAChB;QAAA,4EAAuB;QACrB;QAAA,2EAA4B;QAAA,0EAAa;QAAA,4DAAK;QAC9C;QAAA,0EAA0B;QAAA,yDAA0C;;QAAA,4DAAI;QAC1E;QAAA,4DAAM;QACR;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAAA,4EAAsB;QACpB;QAAA,4EAAkB;QAChB;QAAA,4EAAuB;QACrB;QAAA,2EAA4B;QAAA,uEAAU;QAAA,4DAAK;QAC3C;QAAA,0EAA0B;QAAA,yDAAuC;;QAAA,4DAAI;QACvE;QAAA,4DAAM;QACR;QAAA,4DAAM;QACR;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAAA,4EAAuB;QACrB;QAAA,4EAA4B;QAC1B;QAAA,8EAAuC;QAAA,6EAAgB;QAAA,4DAAQ;QAC/D;QAAA,4EAAsB;QACpB;QAAA,yEAA+F;;QACjG;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAAA,4EAA4B;QAC1B;QAAA,8EAAuC;QAAA,kFAAqB;QAAA,4DAAQ;QACpE;QAAA,4EAAsB;QACpB;QAAA,yEAAoF;;QACtF;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAAA,4EAA4B;QAC1B;QAAA,8EAAuC;QAAA,wEAAW;QAAA,4DAAQ;QAC1D;QAAA,4EAAsB;QACpB;QAAA,yEAA+E;QACjF;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAAA,4EAA4B;QAC1B;QAAA,8EAAuC;QAAA,4EAAe;QAAA,4DAAQ;QAC9D;QAAA,4EAAsB;QACpB;QAAA,8EAEkD;QAFV,6MAA2B,uGACxD,oCAA+B,eAAe,CAAC,IADS,6GAErD,sCAAkC,IAFmB;QAAnE,4DAEkD;QAClD;QAAA,8EAA4B;QAAA,wFAA2B;QAAA,4DAAQ;QACjE;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAAA,4EAA4B;QAC1B;QAAA,8EAAuC;QAAA,sFAAyB;QAAA,4DAAQ;QACxE;QAAA,4EAAsB;QACpB;QAAA,8EACgF;QADxC,sNAAoC,6GAChC,sCAAkC,IADF;QAA5E,4DACgF;QAClF;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAAA,4EAA4B;QAC1B;QAAA,8EAAuC;QAAA,4FAA+B;QAAA,4DAAQ;QAC9E;QAAA,4EAAsB;QACpB;QAAA,8EAG2D;QAHnB,0NAAwC,uGAErE,oCAA+B,4BAA4B,CAAC,IAFS,6GAGlE,sCAAkC,IAHgC;QAAhF,4DAG2D;QAC3D;QAAA,8EAA4B;QAAA,wFAA2B;QAAA,4DAAQ;QACjE;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAAA,4EAA4B;QAC1B;QAAA,8EAAuC;QAAA,2EAAc;QAAA,4DAAQ;QAC7D;QAAA,4EAAsB;QACpB;QAAA,8EAE2D;QAFnB,4MAA0B,uGACvD,oCAA+B,cAAc,CAAC,IADS,6GAEpD,sCAAkC,IAFkB;QAAlE,4DAE2D;QAC3D;QAAA,8EAA4B;QAAA,wFAA2B;QAAA,4DAAQ;QACjE;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAAA,4EAA4B;QAC1B;QAAA,8EAAuC;QAAA,sGAAyC;QAAA,4DAAQ;QACxF;QAAA,4EAAsB;QACpB;QAAA,8EAE2D;QAFnB,oNAAkC,uGACnC,oCAA+B,sBAAsB,CAAC,IADnB,6GAE5D,sCAAkC,IAF0B;QAA1E,4DAE2D;QAC3D;QAAA,8EAA4B;QAAA,wFAA2B;QAAA,4DAAQ;QACjE;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAAA,4EAA4B;QAC1B;QAAA,8EAAuC;QAAA,qFAAwB;QAAA,4DAAQ;QACvE;QAAA,4EAAsB;QACpB;QAAA,yEAAkG;QACpG;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAAA,4EAA4B;QAC1B;QAAA,8EAAuC;QAAA,wEAAW;QAAA,4DAAQ;QAC1D;QAAA,4EAAsB;QACpB;QAAA,8EAC2D;QADnB,8MAA4B,6GACtD,sCAAkC,IADoB;QAApE,4DAC2D;QAC7D;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAAA,4EAA4B;QAC1B;QAAA,8EAAuC;QAAA,wEAAW;QAAA,4DAAQ;QAC1D;QAAA,4EAAsB;QACpB;QAAA,yEAC4D;;QAC9D;QAAA,4DAAM;QACR;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAAA,4EAAsB;QACpB;QAAA,4EAAuB;QACrB;QAAA,4EAAkB;QAChB;QAAA,4EAAuB;QACrB;QAAA,2EAA4B;QAAA,sEAAS;QAAA,4DAAK;QAC1C;QAAA,0EAA0B;QAAA,yDAAuC;;QAAA,4DAAI;QACrE;QAAA,2EAA4B;QAAA,sEAAS;QAAA,4DAAK;QAC1C;QAAA,0EAA0B;QAAA,yDAAwC;;QAAA,4DAAI;QAExE;QAAA,4DAAM;QACR;QAAA,4DAAM;QACR;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAAA,4EAAmD;QACjD;QAAA,+EAAyD;QAAA,mEAAO;QAAA,4DAAS;QACzE;QAAA,2EAA0B;QAAA,2EAAc;QAAA,4DAAK;QAC7C;QAAA,0EAAgB;QAAA,yDAAoB;QAAA,4DAAI;QAC1C;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAAA,4EAA0D;QAA5B,yJAAU,kBAAc,CAAC,CAAC,IAAC;QACvD;QAAA,4FAAuE;QACzE;QAAA,4DAAM;QACN;QAAA,4EAAyD;QAA5B,yJAAU,kBAAc,CAAC,CAAC,IAAC;QACtD;QAAA,oGAC2D;QAC7D;QAAA,4DAAM;QACR;QAAA,4DAAS;QACX;QAAA,4DAAM;QACR;QAAA,4DAAO;QACT;QAAA,4DAAM;QACR;QAAA,4DAAM;QACR;QAAA,4DAAM;;;QA9MG,0DAA8B;QAA9B,8IAA8B;QAG9B,0DAAgC;QAAhC,8IAAgC;QAEF,0DAAwB;QAAxB,sJAAwB;QAIxC,0DAAwB;QAAxB,sJAAwB;QAGnC,0DAA+B;QAA/B,2EAA+B;QAQa,2DAAyC;QAAzC,0OAAyC;QAGpE,0DAAuB;QAAvB,mHAAuB;QAIrC,0DAA6F;QAA7F,6VAA6F;QAI7F,2DAAoC;QAApC,uLAAoC;QAIpC,2DAAmC;QAAnC,4LAAmC;QAInC,2DAA0B;QAA1B,oHAA0B;QAKzB,0DAAuC;QAAvC,gFAAuC;QAa5B,2DAAkD;QAAlD,oPAAkD;QAE3C,0DACgD;QADhD,gdACgD;QACzD,0DAA2D;QAA3D,2NAA2D;QAClD,0DAAwD;QAAxD,6PAAwD;QAK1D,2DAAuB;QAAvB,mHAAuB;QAEvB,0DAA0B;QAA1B,0JAA0B;QAE1B,0DAA6D;QAA7D,iOAA6D;QAO7C,2DAA0C;QAA1C,sOAA0C;QAQ1C,2DAAuC;QAAvC,gOAAuC;QASlB,2DAA6C;QAA7C,kNAA6C;QAM7C,2DAAkC;QAAlC,gMAAkC;QAMlC,2DAA6B;QAA7B,8HAA6B;QAMtC,2DAA2B;QAA3B,sFAA2B;QAS3B,2DAAoC;QAApC,+FAAoC;QAOpC,2DAAwC;QAAxC,mGAAwC;QAUxC,2DAA0B;QAA1B,qFAA0B;QAS1B,2DAAkC;QAAlC,6FAAkC;QASzB,2DAAgD;QAAhD,+HAAgD;QAMzD,2DAA4B;QAA5B,uFAA4B;QAQlE,2DAAyD;QAAzD,wLAAyD;QAS/B,2DAAuC;QAAvC,gOAAuC;QAEvC,0DAAwC;QAAxC,kOAAwC;QASxD,2DAAoB;QAApB,yHAAoB;QAIZ,0DAAiB;QAAjB,8EAAiB;QAGT,0DAAiB;QAAjB,8EAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACzMK;AAQpC;;;;;;;;;;;;;;;ICkL9B;IAAA,0EAA0B;IACxB;IAAA,yEAAkC;IAAA,8EAAmB;IAAA,4DAAK;IAC1D;IAAA,6EAA4F;IAA1B,kTAAS,gFAAe,KAAC;IACzF;IAAA,2EAAyB;IAAA,iEAAO;IAAA,4DAAO;IACzC;IAAA,4DAAS;IACX;IAAA,4DAAM;IACN;IAAA,2EAAwB;IACtB;IAAA,uEAAK;IACH;IAAA,qEAAG;IAAA,oPACL;IADE,4DAAG;IAEL;IAAA,8EAAiG;IAA5B,mTAAS,kFAAiB,KAAC;IAAC,4EAAgB;IAAA,4DAAS;IAC1H;IAAA,8EAA6F;IAA9B,mTAAS,oFAAmB,KAAC;IAAC,iEAAK;IAAA,4DAAS;IAC7G;IAAA,4DAAM;IACR;;;;;;ADtLK,MAAM,0BAA0B;IAcrC,YAAoB,aAA4B,EACrC,QAAyB,EACzB,KAAqB,EACrB,YAA4B,EAC5B,WAAwB,EACxB,MAAc,EACd,eAAgC,EAChC,WAAwB,EACxB,GAAmB;QARV,kBAAa,GAAb,aAAa,CAAe;QACrC,aAAQ,GAAR,QAAQ,CAAiB;QACzB,UAAK,GAAL,KAAK,CAAgB;QACrB,iBAAY,GAAZ,YAAY,CAAgB;QAC5B,gBAAW,GAAX,WAAW,CAAa;QACxB,WAAM,GAAN,MAAM,CAAQ;QACd,oBAAe,GAAf,eAAe,CAAiB;QAChC,gBAAW,GAAX,WAAW,CAAa;QACxB,QAAG,GAAH,GAAG,CAAgB;QAhB9B,oBAAoB;QACpB,oBAAe,GAAQ,EAAE,CAAC;QAC1B,mBAAc,GAAQ,EAAE,CAAC;QAClB,YAAO,GAAG,KAAK,CAAC;QAEhB,eAAU,GAAG,CAAC,CAAE;IAWW,CAAC;IAEnC,QAAQ;QACN,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC;QAC5C,IAAI,CAAC,aAAa,GAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC;QACrD,IAAI,CAAC,qBAAqB,EAAE,CAAC;IAC/B,CAAC;IAED,qBAAqB;QACnB,IAAI,CAAC,aAAa,CAAC,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,SAAS,CAC9D,CAAC,WAAwB,EAAE,EAAE;YAC3B,IAAI,CAAC,WAAW,GAAC,WAAW,CAAC;YAC7B,IAAG,WAAW,CAAC,QAAQ,IAAE,IAAI,EAAC;gBAC5B,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;aACvC;QACH,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CACF,CAAC;IACJ,CAAC;IAED,UAAU,CAAC,QAAY;QACrB,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,SAAS,CAAC,CAAC,OAAe,EAAE,EAAE;YACnE,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC;YACtB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC3B,CAAC,EAAE,KAAK,CAAC,EAAE;YACT,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CAAC,CAAC;IACL,CAAC;IAED,SAAS,CAAC,QAA0B,EAAE,CAAM;QAC1C,kBAAkB;QAClB,IAAI,CAAC,mBAAmB,GAAG,CAAC,CAAC;QAC7B,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACnD,CAAC;IAED,iBAAiB;QACf,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;IACvB,CAAC;IAED,eAAe;QACb,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;QACtC,IAAI,CAAC,aAAa,CAAC,qBAAqB,CAAC,IAAI,CAAC,mBAAmB,EAAE,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,SAAS,CAChH,CAAC,OAAe,EAAE,EAAE;YAClB,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YACrB,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,gCAAgC,CAAC,CAAC;YACxD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC;QACxC,CAAC,EAAE,KAAK,CAAC,EAAE;YACT,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAC;QACpD,CAAC,CACF,CAAC;IACJ,CAAC;IAED,2BAA2B,CAAC,QAAgB;QAC1C,IAAI,CAAC,mBAAmB,EAAE,CAAC;QAC3B,OAAO,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAC;QAEtC,IAAI,CAAC,eAAe,CAAC,mCAAmC,CAAC,QAAQ,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC,SAAS,CAChG,IAAI,CAAC,EAAE;YACL,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YAClB,kDAAM,CAAC,IAAI,EAAE,IAAI,CAAC,eAAe,CAAC,WAAW,GAAG,UAAU,CAAC,CAAC;YAC5D,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,qBAAqB,CAAC,CAAC;QAC/C,CAAC,EAAE,KAAK,CAAC,EAAE;YACT,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC;QAC9C,CAAC,CACF,CAAC;IACJ,CAAC;IAED,mBAAmB;QACjB,4BAA4B;QAC5B,IAAI,CAAC,eAAe,CAAC,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC,sBAAsB,EAAE,CAAC;QAC5E,IAAI,CAAC,eAAe,CAAC,SAAS,GAAG,IAAI,CAAC,WAAW,CAAC,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC,cAAc,EAAC,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;QACzH,IAAI,CAAC,eAAe,CAAC,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC;QAC1D,IAAI,CAAC,eAAe,CAAC,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC1E,IAAI,CAAC,eAAe,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC;QAC1D,IAAI,CAAC,eAAe,CAAC,gBAAgB,GAAG,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC;QACpE,IAAI,CAAC,eAAe,CAAC,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC;QAC3D,IAAI,CAAC,eAAe,CAAC,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC;QAClD,IAAI,CAAC,eAAe,CAAC,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC;QACvD,IAAI,CAAC,eAAe,CAAC,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC;QACjE,IAAI,CAAC,eAAe,CAAC,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC;QAC5D,IAAI,CAAC,eAAe,CAAC,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC;QAC7D,IAAI,CAAC,eAAe,CAAC,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC;QAC5D,IAAI,CAAC,eAAe,CAAC,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC;QACjE,IAAI,CAAC,eAAe,CAAC,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC;QACnD,IAAI,CAAC,eAAe,CAAC,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC;QAC3D,IAAI,CAAC,eAAe,CAAC,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QAChE,IAAI,CAAC,eAAe,CAAC,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC;QAC5D,IAAI,CAAC,eAAe,CAAC,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC;QACvD,IAAI,CAAC,eAAe,CAAC,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC;QAC9D,IAAI,CAAC,eAAe,CAAC,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;QACzD,IAAI,CAAC,eAAe,CAAC,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC;QAC3D,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IACpC,CAAC;IAED,YAAY;QACV,IAAI,CAAC,cAAc,CAAC,IAAI,GAAG,IAAI,CAAC,kBAAkB,CAAC;QACnD,wCAAwC;QACxC,IAAI,CAAC,eAAe,CAAC,oBAAoB,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,SAAS,CACtE,IAAI,CAAC,EAAE;YACL,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YAClB,kDAAM,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC;YAC9B,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,qBAAqB,CAAC,CAAC;QAC/C,CAAC,EAAE,KAAK,CAAC,EAAE;YACT,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC;QAC9C,CAAC,CACF,CAAC;IACJ,CAAC;IACD,aAAa,CAAC,EAAU;QACtB,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC;QACrB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAC/B,CAAC;;oGAtIU,0BAA0B;wHAA1B,0BAA0B;;QCjBvC,yEAA4B;QAC1B;QAAA,wEAAuB;QACrB;QAAA,wEAA4B;QAC1B;QAAA,uEAAmC;QAAA,+DAAI;QAAA,4DAAI;QAC7C;QAAA,4DAAK;QACL;QAAA,yEAA4B;QAC1B;QAAA,wEAAoC;QAAA,qFAAyB;QAAA,4DAAI;QACnE;QAAA,4DAAK;QACL;QAAA,yEAAmC;QAAA,wDAAwB;QAAA,4DAAK;QAClE;QAAA,4DAAK;QACL;QAAA,yEAAiB;QAAA,wDAAwB;QAAA,4DAAK;QAC9C;QAAA,0EAAiB;QACf;QAAA,0EAAsB;QAClB;QAAA,0EAAkB;QAChB;QAAA,qEAAiG;QACjG;QAAA,2EAAuB;QACrB;QAAA,uEAAK;QACD;QAAA,0EAAiB;QAAA,wDAAuB;QAAA,4DAAK;QACjD;QAAA,4DAAM;QACN;QAAA,uEAAK;QACH;QAAA,0EAAQ;QAAA,sEAAU;QAAA,4DAAS;QAC3B;QAAA,qEAAG;QAAA,wDAA6F;;;QAAA,4DAAI;QACtG;QAAA,4DAAM;QACN;QAAA,uEAAK;QACH;QAAA,0EAAQ;QAAA,kEAAM;QAAA,4DAAS;QACvB;QAAA,qEAAG;QAAA,wDAAqC;;QAAA,4DAAI;QAC9C;QAAA,4DAAM;QACN;QAAA,uEAAK;QACH;QAAA,0EAAQ;QAAA,+DAAG;QAAA,4DAAS;QACpB;QAAA,qEAAG;QAAA,wDAAmC;;QAAA,4DAAI;QAC5C;QAAA,4DAAM;QACN;QAAA,uEAAK;QACL;QAAA,0EAAQ;QAAA,0EAAc;QAAA,4DAAS;QAC7B;QAAA,qEAAG;QAAA,wDAA2B;QAAA,4DAAI;QACpC;QAAA,4DAAM;QACR;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAAA,2EAAyB;QACvB;QAAA,2EAA8B;QAC5B;QAAA,8EAAkH;QAAA,gEAAI;QAAA,4DAAS;QAC/H;QAAA,8EAA2F;QAAxD,iSAAS,uHAA6C,KAAC;QAAC,qEAAS;QAAA,4DAAS;QAC7G;QAAA,8EAAiE;QAAA,iEAAK;QAAA,4DAAS;QACjF;QAAA,4DAAM;QACR;QAAA,4DAAM;QACV;QAAA,4DAAM;QACN;QAAA,2EAAsB;QAClB;QAAA,2EAAuB;QACrB;QAAA,mFAAyC;QACvC;QAAA,4EAAuB;QACrB;QAAA,4EAA6B;QAC3B;QAAA,0EAAuF;QACrF;QAAA,4EAAkD;QAChD;QAAA,2EAAiB;QAAA,oFAAuB;QAAA,4DAAK;QAC7C;QAAA,0EAAO;QAAA,yDAAkD;;QAAA,4DAAQ;QACnE;QAAA,4DAAM;QACN;QAAA,0EAAgB;QAAA,yDAAmI;;QAAA,4DAAI;QACvJ;QAAA,0EAAO;QAAA,yDAA2D;;QAAA,4DAAQ;QAC1E;QAAA,0EAAgB;QAAA,yDAAwD;;QAAA,4DAAI;QAC9E;QAAA,4DAAI;QACN;QAAA,4DAAM;QACN;QAAA,4EAA2B;QACzB;QAAA,uEAAI;QAAA,4EAAe;QAAA,4DAAK;QACxB;QAAA,0EAAgB;QAAA,yDAAuB;QAAA,4DAAI;QAC3C;QAAA,2EAAiB;QAAA,uEAAU;QAAA,4DAAK;QAChC;QAAA,0EAAgB;QAAA,yDAA0B;QAAA,4DAAI;QAC9C;QAAA,2EAAiB;QAAA,0EAAa;QAAA,4DAAK;QACnC;QAAA,0EAAgB;QAAA,yDAA6D;QAAA,4DAAI;QACnF;QAAA,4DAAM;QACN;QAAA,4EAAsB;QACpB;QAAA,4EAAsB;QACpB;QAAA,2EAAkB;QAChB;QAAA,4EAAuB;QACrB;QAAA,2EAA4B;QAAA,0EAAa;QAAA,4DAAK;QAC9C;QAAA,0EAA0B;QAAA,yDAA0C;;QAAA,4DAAI;QAC1E;QAAA,4DAAM;QACR;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAAA,4EAAsB;QACpB;QAAA,2EAAkB;QAChB;QAAA,4EAAuB;QACrB;QAAA,2EAA4B;QAAA,uEAAU;QAAA,4DAAK;QAC3C;QAAA,0EAA0B;QAAA,yDAAuC;;QAAA,4DAAI;QACvE;QAAA,4DAAM;QACR;QAAA,4DAAM;QACR;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAAA,4EAAuB;QACnB;QAAA,4EAA4B;QACxB;QAAA,8EAAwC;QAAA,6EAAgB;QAAA,4DAAQ;QAChE;QAAA,4EAAsB;QACpB;QAAA,yEAA+F;;QACjG;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAAA,4EAA4B;QACxB;QAAA,8EAAuC;QAAA,kFAAqB;QAAA,4DAAQ;QACpE;QAAA,4EAAsB;QACpB;QAAA,yEAAoF;;QACtF;QAAA,4DAAM;QACV;QAAA,4DAAM;QACN;QAAA,4EAA4B;QACxB;QAAA,8EAAuC;QAAA,wEAAW;QAAA,4DAAQ;QAC1D;QAAA,4EAAsB;QACpB;QAAA,yEAA+E;QACjF;QAAA,4DAAM;QACV;QAAA,4DAAM;QACN;QAAA,4EAA4B;QAC1B;QAAA,8EAAuC;QAAA,4EAAe;QAAA,4DAAQ;QAC9D;QAAA,4EAAsB;QACpB;QAAA,yEAAwF;QAC1F;QAAA,4DAAM;QACT;QAAA,4DAAM;QACL;QAAA,4EAA4B;QAC1B;QAAA,8EAAuC;QAAA,sFAAyB;QAAA,4DAAQ;QACxE;QAAA,4EAAsB;QACpB;QAAA,yEAAiG;QACnG;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAAA,4EAA4B;QAC1B;QAAA,8EAAuC;QAAA,4FAA+B;QAAA,4DAAQ;QAC9E;QAAA,4EAAsB;QACpB;QAAA,yEAA0G;QAC5G;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAAA,4EAA4B;QAC1B;QAAA,8EAAuC;QAAA,2EAAc;QAAA,4DAAQ;QAC7D;QAAA,4EAAsB;QACpB;QAAA,yEAA4F;QAC9F;QAAA,4DAAM;QACR;QAAA,4DAAM;QACR;QAAA,4EAA4B;QAC1B;QAAA,8EAAuC;QAAA,sGAAyC;QAAA,4DAAQ;QACxF;QAAA,4EAAsB;QACpB;QAAA,yEAAoG;QACtG;QAAA,4DAAM;QACP;QAAA,4DAAM;QACP;QAAA,4EAA4B;QAC1B;QAAA,8EAAuC;QAAA,qFAAwB;QAAA,4DAAQ;QACvE;QAAA,4EAAsB;QACpB;QAAA,yEAAoG;QACtG;QAAA,4DAAM;QACV;QAAA,4DAAM;QACN;QAAA,4EAA4B;QAC1B;QAAA,8EAAuC;QAAA,wEAAW;QAAA,4DAAQ;QAC1D;QAAA,4EAAsB;QACpB;QAAA,yEAAoG;;QACtG;QAAA,4DAAM;QACV;QAAA,4DAAM;QACN;QAAA,4EAA4B;QAC1B;QAAA,8EAAuC;QAAA,wEAAW;QAAA,4DAAQ;QAC1D;QAAA,4EAAsB;QACpB;QAAA,yEAAoG;;QACtG;QAAA,4DAAM;QACV;QAAA,4DAAM;QACJ;QAAA,4DAAM;QACN;QAAA,4EAAsB;QACpB;QAAA,4EAAuB;QACrB;QAAA,2EAAkB;QAChB;QAAA,4EAAuB;QACrB;QAAA,2EAA4B;QAAA,sEAAS;QAAA,4DAAK;QAC1C;QAAA,0EAA0B;QAAA,yDAAuC;;QAAA,4DAAI;QACrE;QAAA,2EAA4B;QAAA,sEAAS;QAAA,4DAAK;QAC1C;QAAA,0EAA0B;QAAA,yDAAwC;;QAAA,4DAAI;QAExE;QAAA,4DAAM;QACR;QAAA,4DAAM;QACR;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAAA,4EAAmD;QAC/C;QAAA,+EAAyD;QAAA,mEAAO;QAAA,4DAAS;QACzE;QAAA,2EAA0B;QAAA,2EAAc;QAAA,4DAAK;QAC7C;QAAA,0EAAgB;QAAA,yDAAoB;QAAA,4DAAI;QAC5C;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAAA,4EAA0D;QAA5B,mJAAU,kBAAc,CAAC,CAAC,IAAC;QACvD;QAAA,4FAAuE;QACzE;QAAA,4DAAM;QACN;QAAA,4EAAyD;QAA5B,mJAAU,kBAAc,CAAC,CAAC,IAAC;QACrD;QAAA,6FAAoG;QACvG;QAAA,4DAAM;QACR;QAAA,4DAAS;QACX;QAAA,4DAAM;QACV;QAAA,4DAAM;QACR;QAAA,4DAAM;QACR;QAAA,4DAAM;QAEN;QAAA,wNAcgB;QAChB;;QArMS,0DAA8B;QAA9B,8IAA8B;QAG9B,0DAAgC;QAAhC,8IAAgC;QAEF,0DAAwB;QAAxB,sJAAwB;QAE5C,0DAAwB;QAAxB,sJAAwB;QAIe,0DAAyC;QAAzC,0OAAyC;QAGlE,0DAAuB;QAAvB,mHAAuB;QAIvC,0DAA6F;QAA7F,6VAA6F;QAI7F,2DAAqC;QAArC,2NAAqC;QAIrC,2DAAmC;QAAnC,4LAAmC;QAInC,2DAA2B;QAA3B,uJAA2B;QAMM,0DAA0E;QAA1E,8OAA0E;QAE3E,0DAA0B;QAA1B,8IAA0B;QAYhD,2DAAkD;QAAlD,oPAAkD;QAE3C,0DAAmI;QAAnI,gdAAmI;QAC5I,0DAA2D;QAA3D,2NAA2D;QAClD,0DAAwD;QAAxD,6PAAwD;QAK1D,2DAAuB;QAAvB,mHAAuB;QAEvB,0DAA0B;QAA1B,0JAA0B;QAE1B,0DAA6D;QAA7D,iOAA6D;QAO7C,2DAA0C;QAA1C,sOAA0C;QAQ1C,2DAAuC;QAAvC,gOAAuC;QASd,2DAA6C;QAA7C,kNAA6C;QAM3C,2DAAkC;QAAlC,gMAAkC;QAMlC,2DAA6B;QAA7B,8HAA6B;QAM/B,2DAAsC;QAAtC,4IAAsC;QAMtC,2DAA+C;QAA/C,qJAA+C;QAM/C,2DAAwD;QAAxD,uKAAwD;QAMxD,2DAA0C;QAA1C,yJAA0C;QAM5C,2DAAkD;QAAlD,iKAAkD;QAMlD,2DAAkD;QAAlD,iKAAkD;QAMpD,2DAAkD;QAAlD,iNAAkD;QAMpD,2DAAkD;QAAlD,iNAAkD;QASrE,2DAAuC;QAAvC,gOAAuC;QAEvC,0DAAwC;QAAxC,kOAAwC;QAStD,2DAAoB;QAApB,yHAAoB;QAId,0DAAiB;QAAjB,8EAAiB;QAGf,0DAAiB;QAAjB,8EAAiB;;;;;;;;;;;;;;;;;;;;;;;;AChLZ;AAIiB;;;;;;;;;ICkCtD,yEAA6C;IAAA,uDAAiD;;IAAA,4DAAK;;;IAAtD,0DAAiD;IAAjD,4OAAiD;;;IAJhG,qEAAyC;IACvC;IAAA,qEAAI;IACF;IAAA,yEAAQ;IAAA,uDAAsB;IAAA,4DAAS;IACzC;IAAA,4DAAK;IACL;IAAA,mIAAmG;IACrG;IAAA,4DAAK;;;;IAHO,0DAAsB;IAAtB,yIAAsB;IAE3B,0DAA+B;IAA/B,kIAA+B;;;;ADzBvC,MAAM,kCAAkC;IAW7C,YACU,aAA4B,EAC5B,QAAyB,EAC1B,WAAwB,EACvB,GAAkB;QAHlB,kBAAa,GAAb,aAAa,CAAe;QAC5B,aAAQ,GAAR,QAAQ,CAAiB;QAC1B,gBAAW,GAAX,WAAW,CAAa;QACvB,QAAG,GAAH,GAAG,CAAe;QAV5B,wBAAmB,GAAG,KAAK,CAAC;QAC5B,YAAO,GAAG,yEAAkB,CAAC;QAC7B,OAAE,GAAG,CAAC,CAAE;QACR,eAAU,GAAG,EAAE,CAAC;QAChB,WAAM,GAAG,CAAC,CAAC;IAOP,CAAC;IAEL,QAAQ;QACN,IAAI,CAAC,kBAAkB,EAAE,CAAC;IAC5B,CAAC;IACD,YAAY,CAAC,CAAM;QACjB,IAAI,CAAC,mBAAmB,GAAG,CAAC,CAAC;IAC/B,CAAC;IAED,kBAAkB;QAChB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC3B,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,MAAM,CAAC;QACnD,IAAI,CAAC,QAAQ,GAAG,IAAI,yDAAY,CAAC;YAC/B,GAAG,EAAE,IAAI,CAAC,OAAO,GAAG,WAAW,GAAG,IAAI,CAAC,QAAQ,GAAG,UAAU,GAAG,IAAI,CAAC,UAAU,GAAG,QAAQ,GAAG,IAAI,CAAC,MAAM,GAAG,QAAQ;YAClH,SAAS,EAAE,SAAS,GAAG,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC;YACpD,OAAO,EAAE,IAAI;YACb,eAAe,EAAE;gBACf,KAAK;gBACL,OAAO;gBACP,KAAK;gBACL,OAAO;gBACP,MAAM;gBACN,MAAM;gBACN,MAAM;gBACN,OAAO;gBACP,MAAM;gBACN,KAAK;gBACL,KAAK;gBACL,KAAK;gBACL,MAAM;aACP;YACD,iBAAiB,EAAE,IAAI;YACvB,UAAU,EAAE,KAAK;YACjB,WAAW,EAAE,EAAE,GAAG,IAAI,GAAG,IAAI,CAAC,YAAY;SAC3C,CAAC,CAAC;QAEH,IAAI,CAAC,QAAQ,CAAC,iBAAiB,GAAG,IAAI,CAAC,EAAE;YACvC,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC;QAC/B,CAAC,CAAC;QAEF,IAAI,CAAC,QAAQ,CAAC,cAAc,GAAG,CAAC,IAAS,EAAE,QAAa,EAAE,MAAW,EAAE,MAAW,EAAE,EAAE;YACpF,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,wBAAwB,CAAC,CAAC;QAClD,CAAC,CAAC;IACJ,CAAC;;oHA3DU,kCAAkC;gIAAlC,kCAAkC;QCb/C;QAAA,yEAAsB;QAEpB;QAAA,yEAAsB;QAEpB;QAAA,qEAAI;QAAA,oEAAS;QAAA,4DAAK;QAElB;QAAA,yEAI0D;QAFxD,mKAAY,wBAAoB,IAAC;QAGjC;QAAA,mEAAkC;QAClC,6FACF;QAAA,4DAAM;QAEN;QAIF;QAAA,4DAAM;QAEN;QAAA,0EAAkD;QAEhD;QAAA,sEAAI;QAAA,wEAAY;QAAA,4DAAK;QACrB;QAAA,qEAAG;QAAA,wDAA2C;QAAA,4DAAI;QAElD;QAAA,4EAAqB;QACnB;QAAA,yEAAO;QACL;QAAA,sEAAI;QACF;QAAA,yEAAgB;QAAA,gEAAI;QAAA,4DAAK;QACzB;QAAA,sEAAI;QAAA,gEAAI;QAAA,4DAAK;QACf;QAAA,4DAAK;QACP;QAAA,4DAAQ;QACR;QAAA,yEAAO;QACL;QAAA,+HAKK;QACP;QAAA,4DAAQ;QACV;QAAA,4DAAQ;QAER;QAAA,uEAAK;QACH;QAAA,uEAAK;QACH,+FACA;QAAA,0EAA2B;QACzB;QAAA,qEAAqG;QACvG;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAAA,8EAA8I;QAArF,yLAAS,wBAAqB,IAAC;QACtF;QAAA,uEAAkC;QAAC,2EACrC;QAAA,4DAAS;QACT;QAAA,8EAA6H;QAApE,yLAAS,wBAAqB,IAAC;QACtF;QAAA,uEAA+B;QAAC,2EAClC;QAAA,4DAAS;QACT;QAAA,8EAA+H;QAAvE,yLAAS,yBAAsB,IAAC;QACtF;QAAA,uEAAiC;QAAC,2EACpC;QAAA,4DAAS;QACX;QAAA,4DAAM;QAER;QAAA,4DAAM;QAER;QAAA,4DAAM;QACN;;QAzDM,0DAAiD;QAAjD,mKAAiD;QAiBhD,2DAA2C;QAA3C,mLAA2C;QAUrB,2DAAkB;QAAlB,qHAAkB;QAaQ,2DAAiD;QAAjD,wMAAiD;QAGT,0DAAoD;QAApD,gJAAoD;QAGpD,0DAAmC;QAAnC,+HAAmC;QAGnC,0DAAqC;QAArC,oKAAqC;;;;;;;;;;;;;;;;;;;;;;;;;;;ACpDnE;;;;;;;;;;;;;ICa7D,wFAAmF;;;;IAazE,uEAAqE;IAAA,0EAAe;IAAA,4DAAI;;;IAA9D,8JAA0C;;;IAEtE,0EAAwD;IACtD;IAAA,qEAAyD;IAC3D;IAAA,4DAAM;;;IADC,0DAAqB;IAArB,2JAAqB;;;IAO9B,0EAA6C;IAC3C;IAAA,0EAAiC;IAC/B;IAAA,4EAAyB;IAAA,sEAAW;IAAA,4DAAQ;IAC5C;IAAA,0EAA8C;IAAA,uDAA0B;;IAAA,4DAAM;IAChF;IAAA,4DAAM;IACN;IAAA,2EAAiC;IAC/B;IAAA,6EAAyB;IAAA,oEAAQ;IAAA,4DAAQ;IACzC;IAAA,2EAA8C;IAAA,wDAAkB;;IAAA,4DAAM;IACxE;IAAA,4DAAM;IACN;IAAA,2EAAiC;IAC/B;IAAA,6EAAyB;IAAA,kEAAM;IAAA,4DAAQ;IACvC;IAAA,2EAA8C;IAAA,wDAAsB;;IAAA,4DAAM;IAC5E;IAAA,4DAAM;IACR;IAAA,4DAAM;;;IAV4C,0DAA0B;IAA1B,mJAA0B;IAI1B,2DAAkB;IAAlB,iJAAkB;IAIlB,2DAAsB;IAAtB,gJAAsB;;;IAGxE,0EAA6C;IAC3C;IAAA,0EAAiC;IAC/B;IAAA,4EAAyB;IAAA,mEAAQ;IAAA,4DAAQ;IACzC;IAAA,0EAA8C;IAAA,uDAA4B;;IAAA,4DAAM;IAClF;IAAA,4DAAM;IACN;IAAA,2EAAiC;IAC/B;IAAA,6EAAyB;IAAA,kEAAM;IAAA,4DAAQ;IACvC;IAAA,2EAA8C;IAAA,wDAA8B;;IAAA,4DAAM;IACpF;IAAA,4DAAM;IACN;IAAA,2EAAiC;IAC/B;IAAA,6EAAyB;IAAA,0EAAc;IAAA,4DAAQ;IAC/C;IAAA,2EAA8C;IAAA,wDAAwC;;IAAA,4DAAM;IAC9F;IAAA,4DAAM;IACR;IAAA,4DAAM;;;IAV4C,0DAA4B;IAA5B,qJAA4B;IAI5B,2DAA8B;IAA9B,8JAA8B;IAI9B,2DAAwC;IAAxC,8KAAwC;;;;IAG1F,0EAA6C;IAC3C;IAAA,0EAAiC;IAC/B;IAAA,4EAAyB;IAAA,yEAAc;IAAA,4DAAQ;IAC/C;IAAA,4EAEkD;IAFV,oaAA2B,+PACxD,kGAA+B,eAAe,CAAC,KADS,qQAErD,oGAAkC,KAFmB;IAAnE,4DAEkD;IAClD;IAAA,4EAA4B;IAAA,uFAA2B;IAAA,4DAAQ;IACjE;IAAA,4DAAM;IACN;IAAA,2EAAiC;IAC/B;IAAA,6EAAyB;IAAA,oFAAwB;IAAA,4DAAQ;IACzD;IAAA,6EACkD;IADV,8aAAoC,sQAC9D,oGAAkC,KAD4B;IAA5E,4DACkD;IACpD;IAAA,4DAAM;IACN;IAAA,2EAAiC;IAC/B;IAAA,6EAAyB;IAAA,0FAA8B;IAAA,4DAAQ;IAC/D;IAAA,6EAE2D;IAFnB,kbAAwC,gQACnC,kGAA+B,4BAA4B,CAAC,KADzB,sQAElE,oGAAkC,KAFgC;IAAhF,4DAE2D;IAC3D;IAAA,6EAA4B;IAAA,uFAA2B;IAAA,4DAAQ;IACjE;IAAA,4DAAM;IACR;IAAA,4DAAM;;;IAjBsC,0DAA2B;IAA3B,yFAA2B;IAO3B,2DAAoC;IAApC,kGAAoC;IAKpC,0DAAwC;IAAxC,sGAAwC;;;;IAMpF,0EAA6C;IAC3C;IAAA,0EAAiC;IAC/B;IAAA,4EAAyB;IAAA,wEAAa;IAAA,4DAAQ;IAC9C;IAAA,4EAEW;IAF6B,maAA0B,+PACvD,kGAA+B,cAAc,CAAC,KADS,qQACK,oGAAkC,KADvC;IAAlE,4DAEW;IACX;IAAA,4EAA4B;IAAA,uFAA2B;IAAA,4DAAQ;IACjE;IAAA,4DAAM;IACN;IAAA,2EAAiC;IAC/B;IAAA,6EAAyB;IAAA,oGAAwC;IAAA,4DAAQ;IACzE;IAAA,6EAE2D;IAFnB,4aAAkC,gQAC/D,kGAA+B,sBAAsB,CAAC,KADS,sQAE5D,oGAAkC,KAF0B;IAA1E,4DAE2D;IAC3D;IAAA,6EAA4B;IAAA,uFAA2B;IAAA,4DAAQ;IACjE;IAAA,4DAAM;IACN;IAAA,2EAAiC;IAC/B;IAAA,6EAAyB;IAAA,mFAAuB;IAAA,4DAAQ;IACxD;IAAA,6EAE+F;IAD7F,wUAAa,0FAAsB,IAAI,GAAC,uCAA+B,yCAClF,IADwG,gQACxD,kGAA+B,sBAAsB,CAAC,KADE;IAD/F,4DAE+F;IACjG;IAAA,4DAAM;IACR;IAAA,4DAAM;;;IAlBsC,0DAA0B;IAA1B,wFAA0B;IAO1B,2DAAkC;IAAlC,gGAAkC;IAQxE,2DAA6F;IAA7F,+KAA6F;;;;IAInG,0EAA6C;IAC3C;IAAA,0EAAiC;IAC/B;IAAA,4EAAyB;IAAA,qEAAU;IAAA,4DAAQ;IAC3C;IAAA,4EAC2D;IADnB,qaAA4B,qQACtD,oGAAkC,KADoB;IAApE,4DAC2D;IAC7D;IAAA,4DAAM;IACN;IAAA,2EAAiC;IAC/B;IAAA,6EAAyB;IAAA,sEAAU;IAAA,4DAAQ;IAC3C;IAAA,6EAEmF;IADjF,wUAAa,oFAAgB,IAAI,GAAC,0CAAkC,mCAC/E,IAD+F,gQACrD,kGAA+B,gBAAgB,CAAC,KADK;IADtF,4DAEmF;IACrF;IAAA,4DAAM;IACR;IAAA,4DAAM;;;IATsC,0DAA4B;IAA5B,2FAA4B;IAMlE,0DAAoF;IAApF,yKAAoF;;;IAI1F,kGAC2D;;;IADF,kFAAiB;;;;IAzGlF,+EAAsF;IACpF;IAEA;IAAA,0EAAuB;IACrB;IAAA,6EAA8B;IAC5B;IAAA,0EAA8C;IAC5C;IAAA,2EAA2B;IACzB;IAAA,2EAAiC;IAC/B;IAAA,6EAAyB;IAAA,oEAAQ;IAAA,4DAAQ;IACzC;IAAA,iFACsF;IAD/E,6ZAA2B,gRACX,kFAAgB,KADL;IAAlC,4DACsF;IACtF;IAAA,2HAAwF;IAC1F;IAAA,4DAAM;IACN;IAAA,+HAEM;IACN;IAIF;IAAA,4DAAM;IACN;IAAA,gIAaM;IACN;IAAA,iIAaM;IACN;IAAA,gIAoBM;IACN;IAAA,gIAqBM;IACN;IAAA,gIAYM;IACN;IAAA,yLAC2D;IAC7D;IAAA,4DAAM;IACR;IAAA,4DAAS;IACX;IAAA,4DAAM;IAEN;IAAA,2EAAsB;IACpB;IAAA,8EAC8C;IADxB,2SAAS,gGAA8B,KAAC;IAChB,+EAAmB;IAAA,4DAAS;IAC5E;IAAA,4DAAM;IACR;IAAA,4DAAO;;;;IA1GY,2DAA2B;IAA3B,yFAA2B;IAE9B,0DAAoB;IAApB,uFAAoB;IAEpB,0DAAoB;IAApB,uFAAoB;IAQtB,0DAAoB;IAApB,uFAAoB;IAcpB,0DAAoB;IAApB,uFAAoB;IAcpB,0DAAoB;IAApB,uFAAoB;IAqBpB,0DAAoB;IAApB,uFAAoB;IAsBpB,0DAAoB;IAApB,uFAAoB;IAaS,0DAAoB;IAApB,uFAAoB;IAOI,0DAAwC;IAAxC,gFAAwC;;;ADrHtG,MAAM,wBAAwB;IA4BnC,YACU,aAA4B,EAC5B,QAAyB,EACzB,KAAa,EACb,WAAwB;QAHxB,kBAAa,GAAb,aAAa,CAAe;QAC5B,aAAQ,GAAR,QAAQ,CAAiB;QACzB,UAAK,GAAL,KAAK,CAAQ;QACb,gBAAW,GAAX,WAAW,CAAa;QAvBlC,aAAQ,GAAG,CAAC,CAAC;QAWb,UAAK,GAAQ,EAAE,CAAC;QAChB,yBAAoB,GAAG,KAAK,CAAC;QAC7B,2BAAsB,GAAQ,EAAE,CAAC;QACjC,mBAAc,GAAG,KAAK,CAAC;QACvB,qBAAgB,GAAG,KAAK,CAAC;QACzB,eAAU,GAAS,IAAI,IAAI,EAAE,CAAC;QA2C9B,qBAAgB,GAAQ,EAAE,CAAC;QAC3B,uBAAkB,GAAQ,EAAE,CAAC;QAM7B,yBAAoB,GAAW,CAAC,CAAC;QAEjC,mBAAc,GAAW,CAAC,CAAC;IA5CvB,CAAC;IAEL,QAAQ;QACN,IAAI,CAAC,WAAW,EAAE,CAAC;IACrB,CAAC;IAED,sBAAsB;QACpB,IAAI,CAAC,gBAAgB,GAAG,CAAC,IAAI,CAAC,gBAAgB,CAAC;IACjD,CAAC;IAED,QAAQ,CAAC,KAAqB;QAC5B,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC,IAAI,CAAC;QACjC,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC;QACzB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,cAAc,CAAC,EAAE,CAAC;QACvC,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,IAAI,CAAC;QAClD,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC;QAC3C,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC;QAC/C,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC;QAC/D,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC;QAC7C,IAAI,CAAC,WAAW,GAAG,KAAK,GAAG,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,cAAc,CAAC;QACtE,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC;QAC9D,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;IAC7B,CAAC;IAED,WAAW;QACT,IAAI,CAAC,aAAa,CAAC,aAAa,EAAE,CAAC,SAAS,CAC1C,CAAC,OAAiB,EAAE,EAAE;YACpB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACzB,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CACF,CAAC;IACJ,CAAC;IAYD,4BAA4B;QAC1B,IAAI,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,oBAAoB,CAAC,EAAE;YAC5D,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,sFAAsF,CAAC,CAAC;YAC5G,OAAO;SACR;QACD,IAAI,CAAC,gBAAgB,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC;QACzD,IAAI,CAAC,gBAAgB,CAAC,sBAAsB,GAAG,IAAI,CAAC,sBAAsB,CAAC;QAC3E,IAAI,CAAC,gBAAgB,CAAC,0BAA0B,GAAG,IAAI,CAAC,0BAA0B,CAAC;QACnF,IAAI,CAAC,gBAAgB,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC;QACvD,IAAI,CAAC,gBAAgB,CAAC,oBAAoB,GAAG,IAAI,CAAC,oBAAoB,CAAC;QACvE,IAAI,CAAC,gBAAgB,CAAC,oBAAoB,GAAG,IAAI,CAAC,oBAAoB,CAAC;QACvE,IAAI,CAAC,gBAAgB,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC;QAC3D,IAAI,CAAC,gBAAgB,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC;QAC3D,IAAI,CAAC,gBAAgB,CAAC,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;QAChD,IAAI,CAAC,gBAAgB,CAAC,WAAW,GAAG,IAAI,IAAI,EAAE,CAAC;QAC/C,IAAI,CAAC,gBAAgB,CAAC,WAAW,GAAG,IAAI,IAAI,EAAE,CAAC;QAC/C,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;QAE5C,IAAI,CAAC,aAAa,CAAC,iBAAiB,CAAC,IAAI,CAAC,gBAAgB,CAAC;aACxD,SAAS,CACR,CAAC,eAAoB,EAAE,EAAE;YACvB,IAAI,CAAC,kBAAkB,GAAG,eAAe,CAAC;YAC1C,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,sCAAsC,CAAC,CAAC;YAC9D,IAAI,CAAC,gBAAgB,GAAG,KAAK,CAAC;QAChC,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,kCAAkC,CAAC,CAAC;QAC1D,CAAC,CACF,CAAC;IACN,CAAC;IAGD,wDAAwD;IACxD,0BAA0B,CAAC,KAAoB;QAC7C,MAAM,WAAW,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;QAC5E,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE;YACpC,KAAK,CAAC,cAAc,EAAE,CAAC;SACxB;QACD,qCAAqC;QACrC,MAAM,YAAY,GAAG,KAAK,CAAC,MAA0B,CAAC;QACtD,IAAI,KAAK,CAAC,GAAG,KAAK,GAAG,IAAI,YAAY,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;YACzD,KAAK,CAAC,cAAc,EAAE,CAAC;SACxB;IACH,CAAC;IAED,uBAAuB,CAAC,KAAU,EAAE,cAAmB;QACrD,MAAM,YAAY,GAAG,KAAK,CAAC,MAA0B,CAAC;QACtD,MAAM,KAAK,GAAG,YAAY,CAAC,KAAK,CAAC;QACjC,iDAAiD;QACjD,MAAM,YAAY,GAAG,KAAK,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC;QACrD,IAAI,YAAY,EAAE;YAChB,QAAQ,cAAc,EAAE;gBACtB,KAAK,eAAe;oBAClB,YAAY,CAAC,KAAK,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;oBACrC,IAAI,CAAC,aAAa,GAAG,UAAU,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;oBACpD,MAAM;gBACR,KAAK,4BAA4B;oBAC/B,YAAY,CAAC,KAAK,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;oBACrC,IAAI,CAAC,0BAA0B,GAAG,UAAU,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;oBACjE,MAAM;gBACR,KAAK,cAAc;oBACjB,YAAY,CAAC,KAAK,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;oBACrC,IAAI,CAAC,YAAY,GAAG,UAAU,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;oBACnD,MAAM;gBACR,KAAK,sBAAsB;oBACzB,YAAY,CAAC,KAAK,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;oBACrC,IAAI,CAAC,oBAAoB,GAAG,UAAU,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;oBAC3D,MAAM;gBACR,KAAK,sBAAsB;oBACzB,YAAY,CAAC,KAAK,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;oBACrC,IAAI,CAAC,oBAAoB,GAAG,UAAU,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;aAC9D;SACF;IACH,CAAC;IAED,6BAA6B;QAC3B,IAAI,CAAC,oBAAoB,GAAG,CAAC,CAAC;QAC9B,IAAI,CAAC,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,0BAA0B,CAAC,IAAI,CAAC,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,YAAY,CAAC;eACnH,CAAC,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,oBAAoB,CAAC,EAAE;YAC9D,OAAO,IAAI,CAAC,oBAAoB,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,0BAA0B,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;kBACvQ,CAAC,CAAC,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,oBAAoB,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;SAC3H;IACH,CAAC;IAED,wBAAwB,CAAC,KAAU;QACjC,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,IAAI,EAAE,IAAI,KAAK,IAAI,SAAS,IAAI,KAAK,IAAI,CAAC,EAAE;YACpE,OAAO,IAAI,CAAC;SACb;aAAM;YACL,OAAO,KAAK,CAAC;SACd;IACH,CAAC;IAED,gCAAgC;QAC9B,IAAI,CAAC,cAAc,GAAG,CAAC,CAAC;QACxB,IAAI,CAAC,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,oBAAoB,CAAC,EAAE;YACpH,OAAO,IAAI,CAAC,cAAc,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;kBACnI,CAAC,CAAC,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,oBAAoB,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;SAC5H;IACH,CAAC;;gGAhLU,wBAAwB;sHAAxB,wBAAwB;QCfrC,yEAA4B;QAC1B;QAAA,wEAAuB;QACrB;QAAA,wEAA4B;QAC1B;QAAA,uEAAkC;QAAA,4EAAiB;QAAA,4DAAI;QACzD;QAAA,4DAAK;QACP;QAAA,4DAAK;QACL;QAAA,yEAA0B;QACxB;QAAA,yEAA0B;QACxB;QAAA,wEAA8D;QAAnC,4IAAS,4BAAwB,IAAC;QAC3D;QAAA,mEAA0B;QAAC,mEAAM;QAAA,4DAAI;QACzC;QAAA,4DAAK;QACL;QAIF;QAAA,4DAAK;QACL;QAAA,yEAAiB;QAAA,mFAAuB;QAAA,4DAAK;QAC7C;QAAA,uEAAK;QACH;QAAA,oKAAmF;QACrF;QAAA,4DAAM;QACN;QAAA,2HAmHO;QACT;QAAA,4DAAM;;QArIG,0DAA8B;QAA9B,6IAA8B;QAeN,2DAAuB;QAAvB,uFAAuB;QAEQ,0DAAsB;QAAtB,sFAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACpBvB;;;;;;;;;;;;;;ICSzD,6EAAqE;IAAA,uDAAiB;IAAA,4DAAS;;;IAApD,8FAAyB;IAAC,0DAAiB;IAAjB,iFAAiB;;;IAMtF,6EAA+D;IAAA,uDAAe;IAAA,4DAAS;;;IAAhD,4FAAuB;IAAC,0DAAe;IAAf,+EAAe;;;IAO9E,6EAAkE;IAAA,uDAAgB;IAAA,4DAAS;;;IAAlD,8FAAwB;IAAC,0DAAgB;IAAhB,iFAAgB;;;IAcxF,0EAA4C;IAC1C;IAAA,0EAAiB;IACf;IAAA,0EAAiB;IACf;IAAA,qEAAuB;IACvB;IAAA,qEAAuB;IACvB;IAAA,sEAAuB;IACvB;IAAA,sEAAuB;IACvB;IAAA,sEAAuB;IACvB;IAAA,sEAAuB;IACvB;IAAA,sEAAuB;IACvB;IAAA,sEAAuB;IACvB;IAAA,sEAA0B;IAC5B;IAAA,4DAAM;IACR;IAAA,4DAAM;IACR;IAAA,4DAAM;;;;;IAiBF,qEAAoE;IAClE;IAAA,yEAAgB;IAAA,uDAAS;IAAA,4DAAK;IAC9B;IAAA,qEAAI;IAAA,uDAAoF;;IAAA,4DAAK;IAC7F;IACA;IAAA,sEAAI;IAAA,wDAAyC;;IAAA,4DAAK;IAClD;IAAA,sEAAI;IAAA,wDAA0C;;IAAA,4DAAK;IACnD;IAAA,sEAAI;IAAA,wDAAqC;IAAA,4DAAK;IAC9C;IAAA,sEAAI;IAAA,wDAAkD;;IAAA,4DAAK;IAC3D;IAAA,sEAAI;IAAA,wDAAgD;;IAAA,4DAAK;IACzD;IAAA,sEAAI;IAAA,wDAAqC;;IAAA,4DAAK;IAC9C;IAAA,sEAAI;IACF;IAAA,4EAA8G;IAA7E,mcAAS,oHAAkE,KAAC;IAAC,oEAClF;IAAA,4DAAO;IACnC;IAAA,4EAC+E;IAAA,oEAC7C;IAAA,4DAAO;IAC3C;IAAA,4DAAK;IACP;IAAA,4DAAK;;;;IAhBa,0DAAS;IAAT,0EAAS;IACrB,0DAAoF;IAApF,sVAAoF;IAEpF,0DAAyC;IAAzC,kMAAyC;IACzC,0DAA0C;IAA1C,mMAA0C;IAC1C,0DAAqC;IAArC,sIAAqC;IACrC,0DAAkD;IAAlD,iNAAkD;IAClD,0DAAgD;IAAhD,+MAAgD;IAChD,0DAAqC;IAArC,+JAAqC;IAKrC,0DAA4E;IAA5E,4LAA4E;;;IA9BtF,4EAAuD;IACrD;IAAA,wEAAO;IACL;IAAA,yEAA0B;IACxB;IAAA,yEAAgB;IAAA,4DAAC;IAAA,4DAAK;IACtB;IAAA,yEAAgB;IAAA,oEAAQ;IAAA,4DAAK;IAC7B;IACA;IAAA,0EAAgB;IAAA,0EAAc;IAAA,4DAAK;IACnC;IAAA,0EAAgB;IAAA,sEAAU;IAAA,4DAAK;IAC/B;IAAA,0EAAgB;IAAA,yFAA6B;IAAA,4DAAK;IAClD;IAAA,0EAAgB;IAAA,oEAAQ;IAAA,4DAAK;IAC7B;IAAA,0EAAgB;IAAA,kEAAM;IAAA,4DAAK;IAC3B;IAAA,0EAAgB;IAAA,gEAAI;IAAA,4DAAK;IACzB;IAAA,0EAAgB;IAAA,kEAAM;IAAA,4DAAK;IAC7B;IAAA,4DAAK;IACP;IAAA,4DAAQ;IACR;IAAA,yEAAO;IACL;IAAA,oIAiBK;IACP;IAAA,4DAAQ;IACV;IAAA,4DAAQ;;;IAnBwB,2DAA4B;IAA5B,mGAA4B;;;;IAoB5D,0EAAuC;IACrC;IAAA,0EAA8B;IAC5B;IAAA,0EAAwC;IACtC;IAAA,iFAE4E;IAD1E,uUAAa,kGAA8B,IAAP,2QAAgB,qFAAmB,KAAnC;IAEtC;IAAA,4DAAa;IACf;IAAA,4DAAM;IACR;IAAA,4DAAM;IACR;IAAA,4DAAM;;;IANY,0DAAsB;IAAtB,+EAAsB;;;;IAQtC;IAAA,0EAA0B;IACxB;IAAA,yEAAkC;IAAA,gFAAqB;IAAA,4DAAK;IAC9D;IAAA,4DAAM;IACN;IAAA,0EAAwB;IACtB,mIAAkE;IAAA,gEAAI;IACtE;IAAA,8EAAgF;IAAxE,sTAAS,0FAAwB,KAAC;IAAsC,kEAAM;IAAA,4DAAS;IACjG;IAAA,4DAAM;IACR;;ADrFO,MAAM,4BAA4B;IAoCvC,YACU,YAA4B,EAC5B,aAA4B,EAC5B,QAAyB,EACzB,KAAa,EACb,WAAwB;QAJxB,iBAAY,GAAZ,YAAY,CAAgB;QAC5B,kBAAa,GAAb,aAAa,CAAe;QAC5B,aAAQ,GAAR,QAAQ,CAAiB;QACzB,UAAK,GAAL,KAAK,CAAQ;QACb,gBAAW,GAAX,WAAW,CAAa;QAtClC,UAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAInB,sBAAiB,GAAQ,EAAE,CAAC;QAC5B,aAAQ,GAAG,CAAC,CAAC;QASb,iBAAY,GAAG,IAAI,CAAC;QAIpB,UAAU;QACV,gBAAW,GAMP;YACA,UAAU,EAAE,EAAE;YACd,YAAY,EAAE,EAAE;YAChB,UAAU,EAAE,EAAE;YACd,WAAW,EAAE,EAAE;YACf,SAAS,EAAE,EAAE;SACd,CAAC;IAQA,CAAC;IAEL,QAAQ;QACN,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC;QACpB,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;QACnB,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC/D,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,IAAI,CAAC,YAAY,EAAE,CAAC;IACtB,CAAC;IAED,yBAAyB,CAAC,EAAO,EAAE,EAAO;QACxC,IAAI,CAAC,aAAa,CAAC,4BAA4B,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,SAAS,CAC/D,CAAC,YAA4C,EAAE,EAAE;YAC/C,IAAI,CAAC,eAAe,GAAG,YAAY,CAAC,MAAM,CAAC;YAC3C,IAAI,CAAC,uBAAuB,GAAG,IAAI,CAAC,eAAe,CAAC;YACpD,IAAI,CAAC,UAAU,GAAG,YAAY,CAAC,UAAU,CAAC;YAC1C,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;QAC5B,CAAC,EACD,CAAC,KAAK,EAAE,EAAE;YACR,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,kDAAkD,CAAC,CAAC;YACxE,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;QAC5B,CAAC,CACF,CAAC;IACJ,CAAC;IAED,WAAW;QACT,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,CAAC,SAAS,CACvC,CAAC,OAAiB,EAAE,EAAE;YACpB,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC;QAC7B,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CACF,CAAC;IACJ,CAAC;IACD,QAAQ;IACR,CAAC;IACD,cAAc;QACZ,IAAI,CAAC,aAAa,CAAC,aAAa,EAAE,CAAC,SAAS,CAC1C,CAAC,UAAuB,EAAE,EAAE;YAC1B,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC/B,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CACF,CAAC;IACJ,CAAC;IACD,aAAa;QACX,IAAI,CAAC,aAAa,CAAC,YAAY,EAAE,CAAC,SAAS,CACzC,CAAC,SAAqB,EAAE,EAAE;YACxB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC7B,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CACF,CAAC;IACJ,CAAC;IACD,YAAY;QACV,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,CAAC,SAAS,CACxC,CAAC,QAAmB,EAAE,EAAE;YACtB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QAC3B,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CACF,CAAC;IACJ,CAAC;IACD,WAAW;QACT,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,CAAC,SAAS,CACvC,CAAC,OAAiB,EAAE,EAAE;YACpB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACzB,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CACF,CAAC;IACJ,CAAC;IACD,QAAQ;QACN,IAAI,CAAC,2BAA2B,EAAE,CAAC;IACrC,CAAC;IAGD,yBAAyB,CAAC,QAA0B,EAAE,EAAU;QAC9D,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACjD,IAAI,CAAC,YAAY,GAAG,EAAE,CAAC;IACzB,CAAC;IAED,sBAAsB;QACpB,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;QACzB,IAAI,CAAC,aAAa,CAAC,sBAAsB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,SAAS,CACpE,GAAG,EAAE;YACH,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,yCAAyC,CAAC,CAAC;YACjE,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;YAC/D,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;QACvB,CAAC,EAAE,KAAK,CAAC,EAAE;YACT,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAC3B,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;QAC5B,CAAC,CACF,CAAC;IACJ,CAAC;IAED,YAAY;QAEV,IAAI,CAAC,WAAW,CAAC,YAAY,GAAG,IAAI,CAAC;QACrC,IAAI,CAAC,WAAW,CAAC,WAAW,GAAG,IAAI,CAAC;QACpC,IAAI,CAAC,WAAW,CAAC,UAAU,GAAG,IAAI,CAAC;QACnC,IAAI,CAAC,WAAW,CAAC,SAAS,GAAG,IAAI,CAAC;QAClC,IAAI,CAAC,WAAW,CAAC,UAAU,GAAG,IAAI,CAAC;QACnC,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;IACjE,CAAC;IAMD,WAAW,CAAC,KAAU;QACpB,IAAI,CAAC,UAAU,CAAC,WAAW,GAAG,KAAK,CAAC,IAAI,CAAC;QACzC,IAAI,CAAC,2BAA2B,EAAE,CAAC;IACrC,CAAC;IAED,2BAA2B;QACzB,IAAI,CAAC,aAAa,CAAC,4BAA4B,CAC7C,IAAI,CAAC,UAAU,CAAC,WAAW,EAC3B,IAAI,CAAC,UAAU,CAAC,YAAY,EAC5B,IAAI,CAAC,WAAW,CAAC,UAAU,EAC3B,IAAI,CAAC,WAAW,CAAC,YAAY,EAC7B,IAAI,CAAC,WAAW,CAAC,UAAU,EAC3B,IAAI,CAAC,WAAW,CAAC,WAAW,CAC7B,CAAC,SAAS,CACT,CAAC,YAA4C,EAAE,EAAE;YAC/C,IAAI,CAAC,eAAe,GAAG,YAAY,CAAC,MAAM,CAAC;YAC3C,IAAI,CAAC,uBAAuB,GAAG,IAAI,CAAC,eAAe,CAAC;YACpD,IAAI,CAAC,UAAU,GAAG,YAAY,CAAC,UAAU,CAAC;YAC1C,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;QAC5B,CAAC,EACD,CAAC,KAAK,EAAE,EAAE;YACR,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,kDAAkD,CAAC,CAAC;YACxE,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;QAC5B,CAAC,CACF,CAAC;IACJ,CAAC;IAED,qBAAqB;QACnB,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,UAAU,IAAI,IAAI,IAAI,IAAI,CAAC,WAAW,CAAC,UAAU,IAAI,EAAE,CAAC;eACzE,CAAC,IAAI,CAAC,WAAW,CAAC,WAAW,IAAI,IAAI,IAAI,IAAI,CAAC,WAAW,CAAC,WAAW,IAAI,EAAE,CAAC;eAC5E,CAAC,IAAI,CAAC,WAAW,CAAC,YAAY,IAAI,IAAI,IAAI,IAAI,CAAC,WAAW,CAAC,YAAY,IAAI,EAAE,CAAC;eAC9E,CAAC,IAAI,CAAC,WAAW,CAAC,UAAU,IAAI,IAAI,IAAI,IAAI,CAAC,WAAW,CAAC,UAAU,IAAI,EAAE,CAAC,EAAE;YAC/E,OAAO,KAAK,CAAC;SACd;QACD,OAAO,IAAI,CAAC;IACd,CAAC;;wGAlMU,4BAA4B;0HAA5B,4BAA4B;QCpBzC,yEAAwB;QACtB;QAAA,yEAAsB;QACpB;QAAA,wEAAO;QAAA,sEAAW;QAAA,4DAAQ;QAC1B;QAAA,2EACiE;QAD1D,gNAAoC,mHACC,cAAU,IADX;QAA3C,4DACiE;QACnE;QAAA,4DAAM;QACN;QAAA,0EAAsB;QACpB;QAAA,4EAA2B;QAAA,oEAAQ;QAAA,4DAAQ;QAC3C;QAAA,6EAAoH;QAAhD,oNAAsC;QACxG;QAAA,gIAA+F;QACjG;QAAA,4DAAS;QACX;QAAA,4DAAM;QACN;QAAA,0EAAsB;QACpB;QAAA,4EAAyB;QAAA,kEAAM;QAAA,4DAAQ;QACvC;QAAA,6EAA8G;QAA9C,kNAAoC;QAClG;QAAA,gIAAuF;QACzF;QAAA,4DAAS;QACX;QAAA,4DAAM;QACN;QAAA,0EAAsB;QACpB;QAAA,4EAAgC;QAAA,mEAAO;QAAA,4DAAQ;QAC/C;QAAA,8EACW;QAD6D,mNAAqC;QAE3G;QAAA,gIAA2F;QAC7F;QAAA,4DAAS;QACX;QAAA,4DAAM;QACN;QAAA,0EAAsB;QACpB;QAAA,6EAA0B;QAAA,sEAAU;QAAA,4DAAQ;QAC5C;QAAA,6EAC6B;QADyC,oMAAuB;QAA7F,4DAC6B;QAC/B;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAAA,2EAAkD;QAChD;QAAA,8EAAkE;QAArB,qJAAS,cAAU,IAAC;QAAC,oEAA4B;QAAC,mEAAM;QAAA,4DAAS;QAC9G;QAAA,8EAAwG;QAA9D,qJAAS,kBAAc,IAAC;QAAsC,oEAC3E;QAAC,kEAAK;QAAA,4DAAS;QAC9C;QAAA,4DAAM;QACN;QAAA,4HAcM;QACN;QAAA,gIAmCQ;QACR;QAAA,4HASM;QACN;QAAA,wNAQc;;QAtGH,0DAAoC;QAApC,+FAAoC;QAKyB,0DAAsC;QAAtC,iGAAsC;QAC3E,0DAAY;QAAZ,kFAAY;QAKqB,0DAAoC;QAApC,+FAAoC;QACvE,0DAAU;QAAV,gFAAU;QAKiC,0DAAqC;QAArC,gGAAqC;QAE/E,0DAAW;QAAX,iFAAW;QAK6B,0DAAuB;QAAvB,kFAAuB;QAM5B,2DAAoC;QAApC,iGAAoC;QAGnG,0DAAkB;QAAlB,kFAAkB;QAeU,0DAAmB;QAAnB,mFAAmB;QAoCnC,0DAAmB;QAAnB,mFAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACxE9B,MAAM,oCAAoC;IAO/C,YACU,aAA4B,EAC5B,QAAyB,EACzB,KAAqB;QAFrB,kBAAa,GAAb,aAAa,CAAe;QAC5B,aAAQ,GAAR,QAAQ,CAAiB;QACzB,UAAK,GAAL,KAAK,CAAgB;IAC5B,CAAC;IAEJ,QAAQ;QACN,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC;QACrD,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC;QACpD,IAAI,CAAC,UAAU,EAAE,CAAC;QAClB,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;IACzD,CAAC;IAED,UAAU;QACR,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,OAAe,EAAE,EAAE;YAClG,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC;QACxB,CAAC,EAAE,KAAK,CAAC,EAAE;YACT,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CAAC,CAAC;IACL,CAAC;IAED,cAAc,CAAC,GAAG,EAAE,IAAI;QACtB,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,SAAS,CACnD,CAAC,WAAuB,EAAE,EAAE;YAC1B,IAAI,CAAC,UAAU,GAAG,WAAW,CAAC;QAChC,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CACF,CAAC;IACJ,CAAC;;wHArCU,oCAAoC;kIAApC,oCAAoC;QCfjD,yEAA4B;QAC1B;QAAA,wEAAuB;QACrB;QAAA,wEAA4B;QAC1B;QAAA,uEAAkC;QAAA,+DAAI;QAAA,4DAAI;QAC5C;QAAA,4DAAK;QACL;QAAA,yEAA4B;QAC1B;QAAA,wEAA8B;QAAA,kEAAM;QAAA,4DAAI;QAC1C;QAAA,4DAAK;QACL;QAAA,yEAA4B;QAAA,gEAAI;QAAA,4DAAK;QACrC;QAAA,yEAAmC;QAAA,kEAAM;QAAA,4DAAK;QAChD;QAAA,4DAAK;QAEL;QAAA,0EAAiB;QACf;QAAA,0EAAsB;QACpB;QAAA,yEAAiB;QAAA,wDAA0B;QAAA,4DAAK;QAClD;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAAA,0EAAiB;QACf;QAAA,0EAAsB;QACpB;QAAA,0EAAkB;QAChB;QAAA,sEAA4I;QAC5I;QAAA,2EAAuB;QACrB;QAAA,uEAAK;QACH;QAAA,0EAAQ;QAAA,sEAAU;QAAA,4DAAS;QAC3B;QAAA,qEAAG;QAAA,wDAA6F;;;QAAA,4DAAI;QACtG;QAAA,4DAAM;QACN;QAAA,uEAAK;QACH;QAAA,0EAAQ;QAAA,kEAAM;QAAA,4DAAS;QACvB;QAAA,qEAAG;QAAA,wDAAwB;QAAA,4DAAI;QACjC;QAAA,4DAAM;QACN;QAAA,uEAAK;QACH;QAAA,0EAAQ;QAAA,+DAAG;QAAA,4DAAS;QACpB;QAAA,qEAAG;QAAA,wDAAmC;;QAAA,4DAAI;QAC5C;QAAA,4DAAM;QACN;QAAA,uEAAK;QACH;QAAA,0EAAQ;QAAA,kEAAM;QAAA,4DAAS;QACvB;QAAA,qEAAG;QAAA,wDAA4B;QAAA,4DAAI;QACrC;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAAA,2EAAyB;QACvB;QAAA,2EAA8B;QAC5B;QAAA,8EAAuF;QAAA,gEAAI;QAAA,4DAAS;QACpG;QAAA,8EAAiE;QAAA,iEAAK;QAAA,4DAAS;QACjF;QAAA,4DAAM;QACR;QAAA,4DAAM;QACR;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAAA,2EAAsB;QACnB;QAAA,qGAAmG;QACtG;QAAA,4DAAM;QACR;QAAA,4DAAM;QACR;QAAA,4DAAM;;QAhDG,0DAA8B;QAA9B,8IAA8B;QAG9B,0DAA0B;QAA1B,8IAA0B;QAQZ,2DAA0B;QAA1B,sHAA0B;QAMO,2DAAoF;QAApF,oPAAoF;QAI7H,2DAA6F;QAA7F,6VAA6F;QAI7F,2DAAwB;QAAxB,oHAAwB;QAIxB,0DAAmC;QAAnC,4LAAmC;QAInC,2DAA4B;QAA5B,2FAA4B;QAKO,0DAA+C;QAA/C,gKAA+C;QAChD,0DAA0B;QAA1B,8IAA0B;QAMhC,0DAAyB;QAAzB,sFAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IE5B1D,uEAA2D;IACzD;IAAA,wEAAqE;IAAjC,qSAAS,8FAAsB,KAAC;IAAC,kEAAO;IAAA,mEAA8C;IAAA,4DAAI;IAChI;IAAA,4DAAO;;;IAHT,sEAAwD;IACtD;IAAA,wHAEO;IAGT;IAAA,4DAAM;;;IALG,0DAAkD;IAAlD,8HAAkD;;;ADT5D,MAAM,mBAAmB;IAK9B,YACU,aAA4B,EAC5B,QAAyB,EACzB,KAAa,EACb,WAAwB;QAHxB,kBAAa,GAAb,aAAa,CAAe;QAC5B,aAAQ,GAAR,QAAQ,CAAiB;QACzB,UAAK,GAAL,KAAK,CAAQ;QACb,gBAAW,GAAX,WAAW,CAAa;IAE9B,CAAC;IAEL,QAAQ;QAEN,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,MAAM,CAAC;QACxD,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;IAE/E,CAAC;IACD,WAAW,CAAC,EAAW;QAErB,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,sDAAsD,EAAE,GAAG,EAAE;YAEjF,OAAO,CAAC,GAAG,CAAC,MAAM,EAAC,EAAE,CAAC,CAAC;YACvB,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,EAAE,CAAC;iBAClC,SAAS,CACR,GAAG,EAAE;gBACH,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,6BAA6B,CAAC,CAAC;gBACrD,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;YACnC,CAAC,EACD,KAAK,CAAC,EAAE;gBACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,sCAAsC,CAAC,CAAC;YAC9D,CAAC,CACF,CAAC;QAEJ,CAAC,CAAC,CAAC;QAEH,MAAM,QAAQ,GAAG,QAAQ,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;QACnD,MAAM,YAAY,GAAG,QAAQ,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC;QAC3D,IAAG,QAAQ,EACX;YACE,QAAQ,CAAC,YAAY,CAAC,OAAO,EAAC,8DAA8D,CAAC;YAC7F,YAAY,CAAC,YAAY,CAAC,OAAO,EAAC,yDAAyD,CAAC;SAC7F;IACH,CAAC;;sFA5CU,mBAAmB;iHAAnB,mBAAmB;QCXhC,yEAKG;QACD;QAAA,wEAAoC;QAAA,uDAA4D;;QAAA,4DAAK;QACnG;QACF;QAAA,yEAA+E;QAC7E;QAAA,wEAAqC;QAAA,wDAAuB;QAAA,4DAAK;QACjE;QAAA,qEAA0E;QAC1E;QAAA,yEAAmC;QAAA,wDAA4B;;QAAA,4DAAK;QACpE;QAAA,yEAAqC;QAAA,wDAA4B;QAAA,4DAAK;QACtE;QAAA,yEAAwC;QACtC;QAAA,yEAAmD;QAAA,wDAAiF;;;QAAA,4DAAK;QACzI;QAAA,yEAAwC;QAAA,wDAAuF;;;QAAA,4DAAK;QACpI;QACA;QAAA,yEAAwC;QAAI,wDAAyB;QAAA,4DAAK;QAExE;QAAA,iHAMM;QACL;QAAA,4DAAK;QAEV;QAAA,4DAAK;QACP;QAAA,4DAAM;QAER;QAAA,4DAAM;;;QA9BJ,8IAAyD;QAKrB,0DAA4D;QAA5D,wWAA4D;QAE7D,0DAA2C;QAA3C,6JAA2C;QACvC,0DAAuB;QAAvB,mHAAuB;QACvD,0DAAyC;QAAzC,0OAAyC;QACX,0DAA4B;QAA5B,6LAA4B;QAC1B,0DAA4B;QAA5B,8JAA4B;QAEZ,0DAAiF;QAAjF,2YAAiF;QAC5F,0DAAuF;QAAvF,uVAAuF;QAEnF,0DAAyB;QAAzB,uJAAyB;QAE7D,0DAAgD;QAAhD,2JAAgD;;;;;;;;;;;;;;;;;;;;;;;;;;;ACnBuB;;;;;;;;;;;;;ICYvE,6EAAmE;IAAA,uDAAiB;IAAA,4DAAS;;;IAAlD,6FAAuB;IAAC,0DAAiB;IAAjB,kFAAiB;;;IAapF,6EAAgE;IAAA,uDAAgB;IAAA,4DAAS;;;IAAhD,4FAAsB;IAAC,0DAAgB;IAAhB,iFAAgB;;;IAOhF,6EAA6D;IAAA,uDAAe;IAAA,4DAAS;;;IAA9C,2FAAqB;IAAC,0DAAe;IAAf,gFAAe;;;IAqB5E,6EAA2E;IAAA,uDAAgB;IAAA,4DAAS;;;IAAhD,4FAAsB;IAAC,0DAAgB;IAAhB,iFAAgB;;;;IAL/F;IAAA,yEAAiC;IAC/B;IAAA,4EAAqC;IAAA,qFAA0B;IAAA,4DAAQ;IACvE;IAAA,iFAEW;IADX,oUAAa,sGAAkC,IAAP;IAEtC;IAAA,uIAAoG;IACtG;IAAA,4DAAS;IACX;IAAA,4DAAM;IACN;IAAA,0EAAiC;IAC/B;IAAA,6EAAiC;IAAA,2EAAe;IAAA,4DAAQ;IACxD;IAAA,iFAC2D;IADxC,0TAAY,8FAA4B,KAAC,4PAAU,2FAAyB,KAAnC,4QAA8H,gGACjM,IADmE;IAA5D,4DAC2D;IAEzD;IAAA,6EAA4B;IAAA,wFAA4B;IAAA,4DAAQ;IAEpE;IAAA,4DAAM;IACR;;;IAbI,0DAAwC;IAAxC,sGAAwC;IAEV,0DAAsB;IAAtB,+FAAsB;IAKyH,0DAAkC;IAAlC,gGAAkC;;;IA8B7M,6EAAsE;IAAA,uDAAkB;IAAA,4DAAS;;;IAApD,8FAAwB;IAAC,0DAAkB;IAAlB,mFAAkB;;;IAoDpF,6EAAsE;IAAA,uDAAkB;IAAA,4DAAS;;;IAApD,8FAAwB;IAAC,0DAAkB;IAAlB,mFAAkB;;;;IAqExG;IAAA,0EAA0B;IACxB;IAAA,yEAAkC;IAAA,yEAAc;IAAA,4DAAK;IACrD;IAAA,6EAA4F;IAA1B,+SAAS,iFAAe,KAAC;IACzF;IAAA,2EAAyB;IAAA,iEAAO;IAAA,4DAAO;IACzC;IAAA,4DAAS;IACX;IAAA,4DAAM;IACN;IAAA,kFAA8B;IAC5B;IAAA,2EAAwB;IACtB;IAAA,0EAAsB;IACpB;IAAA,6EAA4I;IAA1E,qUAAa,iGAA6B,IAAP;IAArG,4DAA4I;IAC9I;IAAA,4DAAM;IACN;IAAA,2EAA2B;IACzB;IAAA,6EAAuJ;IAApF,qUAAa,sGAAkC,IAAP;IAA3G,4DAAuJ;IACzJ;IAAA,4DAAM;IACN;IAAA,2EAA2B;IACzB;IAAA,6EAA8I;IAAxE,qUAAa,gGAA4B,IAAP;IAAxG,4DAA8I;IAChJ;IAAA,4DAAM;IACN;IAAA,2EAA2B;IACzB;IAAA,6EAA4I;IAA1E,qUAAa,iGAA6B,IAAP;IAArG,4DAA4I;IAC9I;IAAA,4DAAM;IACN;IAAA,8EAA8G;IAAzB,gTAAS,gFAAc,KAAC;IAAC,gEAAI;IAAA,4DAAS;IAC7H;IAAA,4DAAM;IACR;IAAA,4DAAO;IACT;;;;IAd0E,2DAAmC;IAAnC,kGAAmC;IAGlC,0DAAwC;IAAxC,uGAAwC;IAGrC,0DAAkC;IAAlC,iGAAkC;IAGtC,0DAAmC;IAAnC,kGAAmC;IAEjF,0DAAiC;IAAjC,iFAAiC;;;;IAM3D;IAAA,0EAA0B;IACxB;IAAA,yEAAkC;IAAA,oEAAS;IAAA,4DAAK;IAChD;IAAA,6EAA4F;IAA1B,+SAAS,iFAAe,KAAC;IACzF;IAAA,2EAAyB;IAAA,iEAAO;IAAA,4DAAO;IACzC;IAAA,4DAAS;IACX;IAAA,4DAAM;IACN;IAAA,kFAA6B;IAC3B;IAAA,2EAAwB;IACtB;IAAA,0EAAsB;IACpB;IAAA,6EAAsK;IAA1F,qUAAa,sGAAkC,IAAP;IAApH,4DAAsK;IACxK;IAAA,4DAAM;IACN;IAAA,8EAAkH;IAA9B,gTAAS,qFAAmB,KAAC;IAAC,gEAAI;IAAA,4DAAS;IACjI;IAAA,4DAAM;IACR;IAAA,4DAAO;IACT;;;;IALoF,2DAAwC;IAAxC,uGAAwC;IAEhG,0DAAgC;IAAhC,iFAAgC;;;;IAM1D;IAAA,0EAA0B;IACxB;IAAA,yEAAkC;IAAA,wEAAa;IAAA,4DAAK;IACpD;IAAA,6EAA4F;IAA1B,+SAAS,iFAAe,KAAC;IACzF;IAAA,2EAAyB;IAAA,iEAAO;IAAA,4DAAO;IACzC;IAAA,4DAAS;IACX;IAAA,4DAAM;IACN;IAAA,kFAAiC;IAC/B;IAAA,2EAAwB;IACtB;IAAA,0EAAsB;IACpB;IAAA,8EAAuJ;IAAlF,qUAAa,qGAAiC,IAAP;IAA5G,4DAAuJ;IACzJ;IAAA,4DAAM;IACN;IAAA,8EAAoH;IAA5B,gTAAS,mFAAiB,KAAC;IAAC,gEAAI;IAAA,4DAAS;IACnI;IAAA,4DAAM;IACR;IAAA,4DAAO;IACT;;;;IAL6E,2DAAuC;IAAvC,sGAAuC;IAE3D,0DAAoC;IAApC,iFAAoC;;;IAqBnF,6EAAmE;IAAA,uDAAiB;IAAA,4DAAS;;;IAAlD,6FAAuB;IAAC,0DAAiB;IAAjB,kFAAiB;;;;IAf5F;IAAA,0EAA0B;IACxB;IAAA,yEAAkC;IAAA,wEAAa;IAAA,4DAAK;IACpD;IAAA,6EAA4F;IAA1B,+SAAS,iFAAe,KAAC;IACzF;IAAA,2EAAyB;IAAA,iEAAO;IAAA,4DAAO;IACzC;IAAA,4DAAS;IACX;IAAA,4DAAM;IACN;IAAA,mFAAiC;IAC/B;IAAA,2EAAwB;IACtB;IAAA,0EAAsB;IACpB;IAAA,8EAAqJ;IAAhF,qUAAa,oGAAgC,IAAP;IAA3G,4DAAqJ;IACvJ;IAAA,4DAAM;IACN;IAAA,4EAAgC;IAC9B;IAAA,+EACW;IAD2E,sUAAa,0GACtG,IADqI;IAEhI;IAAA,0EAAQ;IAAA,6EAAiB;IAAA,4DAAS;IAClC;IAAA,0IAA6F;IAC/F;IAAA,4DAAS;IACX;IAAA,4DAAM;IACN;IAAA,8EAAoH;IAA5B,gTAAS,mFAAiB,KAAC;IAAC,gEAAI;IAAA,4DAAS;IACnI;IAAA,4DAAM;IACR;IAAA,4DAAO;IACT;;;;IAZ6E,2DAAsC;IAAtC,qGAAsC;IAGrB,0DAA4C;IAA5C,2GAA4C;IAGnG,0DAAY;IAAZ,sFAAY;IAGM,0DAAoC;IAApC,iFAAoC;;;IAoBnF,6EAA6D;IAAA,uDAAe;IAAA,4DAAS;;;IAA9C,2FAAqB;IAAC,0DAAe;IAAf,gFAAe;;;;IAdpF;IAAA,0EAA0B;IACxB;IAAA,yEAAkC;IAAA,wEAAa;IAAA,4DAAK;IACpD;IAAA,6EAA4F;IAA1B,+SAAS,iFAAe,KAAC;IACzF;IAAA,2EAAyB;IAAA,iEAAO;IAAA,4DAAO;IACzC;IAAA,4DAAS;IACX;IAAA,4DAAM;IACN;IAAA,mFAAiC;IAC/B;IAAA,2EAAwB;IACtB;IAAA,0EAAsB;IACpB;IAAA,8EAAgJ;IAA3E,qUAAa,oGAAgC,IAAP;IAA3G,4DAAgJ;IAClJ;IAAA,4DAAM;IACN;IAAA,4EAAgC;IAC9B;IAAA,+EACW;IADuE,sUAAa,wGAClG,IAD+H;IAE1H;IAAA,0IAAqF;IACvF;IAAA,4DAAS;IACX;IAAA,4DAAM;IACN;IAAA,8EAAoH;IAA5B,gTAAS,mFAAiB,KAAC;IAAC,gEAAI;IAAA,4DAAS;IACnI;IAAA,4DAAM;IACR;IAAA,4DAAO;IACT;;;;IAX6E,2DAAsC;IAAtC,qGAAsC;IAGzB,0DAA0C;IAA1C,yGAA0C;IAE/F,0DAAU;IAAV,oFAAU;IAGU,0DAAoC;IAApC,iFAAoC;;;;IAM3F;IAAA,0EAA0B;IACxB;IAAA,yEAAkC;IAAA,0EAAe;IAAA,4DAAK;IACtD;IAAA,6EAA4F;IAA1B,+SAAS,iFAAe,KAAC;IACzF;IAAA,2EAAyB;IAAA,iEAAO;IAAA,4DAAO;IACzC;IAAA,4DAAS;IACX;IAAA,4DAAM;IACN;IAAA,mFAAmC;IACjC;IAAA,2EAAwB;IACtB;IAAA,0EAAsB;IACpB;IAAA,8EAAsJ;IAApF,qUAAa,sGAAkC,IAAP;IAA1G,4DAAsJ;IACxJ;IAAA,4DAAM;IACN;IAAA,8EAAwH;IAA9B,gTAAS,qFAAmB,KAAC;IAAC,gEAAI;IAAA,4DAAS;IACvI;IAAA,4DAAM;IACR;IAAA,4DAAO;IACT;;;;IAL0E,2DAAwC;IAAxC,uGAAwC;IAEzD,0DAAsC;IAAtC,iFAAsC;;AD9SxF,MAAM,qBAAqB;IAkEhC,YACU,YAA4B,EAC5B,aAA4B,EAC5B,QAAyB,EACzB,KAAa,EACb,WAAwB,EACxB,WAAwB;QALxB,iBAAY,GAAZ,YAAY,CAAgB;QAC5B,kBAAa,GAAb,aAAa,CAAe;QAC5B,aAAQ,GAAR,QAAQ,CAAiB;QACzB,UAAK,GAAL,KAAK,CAAQ;QACb,gBAAW,GAAX,WAAW,CAAa;QACxB,gBAAW,GAAX,WAAW,CAAa;QAtExB,0BAAqB,GAAG,IAAI,uDAAY,EAAE,CAAC;QAWrD,OAAO;QACP,UAAK,GAAQ,EAAE,CAAC;QAChB,uBAAkB,GAAQ,EAAE,CAAC;QAC7B,WAAM,GAAQ,EAAE,CAAC;QACjB,cAAS,GAAQ,EAAE,CAAC;QAGpB,eAAU,GAAa,CAAC,MAAM,CAAC,CAAC;QAChC,oBAAe,GAAQ,EAAE,CAAC;QAC1B,kBAAa,GAAQ,EAAE,CAAC;QACxB,oBAAe,GAAQ,EAAE,CAAC;QAC1B,mBAAc,GAAQ,EAAE,CAAC;QAWzB,mBAAc,GAAG,KAAK,CAAC;QACvB,cAAS,GAAG,KAAK,CAAC;QAClB,iBAAY,GAAG,KAAK,CAAC;QAErB,iBAAY,GAAG,KAAK,CAAC;QAErB,eAAe;QACR,qBAAgB,GAAG;YACxB,IAAI,EAAE,IAAI;YACV,GAAG,EAAE,IAAI;YACT,IAAI,EAAE,IAAI;YACV,SAAS,EAAC,IAAI;SACf,CAAC;QACK,yBAAoB,GAAG;YAC5B,IAAI,EAAE,IAAI;SACX,CAAC;QACK,0BAAqB,GAAG;YAC7B,IAAI,EAAE,IAAI;SACX,CAAC;QACK,wBAAmB,GAAG;YAC3B,IAAI,EAAE,IAAI;YACV,UAAU,EAAE,IAAI;SACjB,CAAC;QACF,wBAAmB,GAAQ,EAAE,CAAC;QAC9B,0BAAqB,GAAQ,EAAE,CAAC;IAc5B,CAAC;IAEL,QAAQ;QACN,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,IAAI,CAAC,YAAY,EAAE,CAAC;QACpB,IAAI,CAAC,sBAAsB,EAAE,CAAC;QAC9B,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,IAAI,CAAC,cAAc,EAAE,CAAC;QACtB,IAAI,CAAC,cAAc,EAAE,CAAC;QACtB,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACxB,IAAI,CAAC,cAAc,EAAE,CAAC;QACtB,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACxB,IAAI,CAAC,aAAa,EAAE,CAAC;IACvB,CAAC;IACD,gBAAgB;QACd,IAAI,CAAC,YAAY,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC;IACzC,CAAC;IACD,aAAa;QACX,IAAI,CAAC,aAAa,CAAC,YAAY,EAAE,CAAC,SAAS,CACzC,CAAC,SAAqB,EAAE,EAAE;YACxB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC7B,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CACF,CAAC;IACJ,CAAC;IACD,YAAY;QACV,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,CAAC,SAAS,CACxC,CAAC,QAAmB,EAAE,EAAE;YACtB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QAC3B,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CACF,CAAC;IACJ,CAAC;IACD,sBAAsB;QACpB,IAAI,CAAC,aAAa,CAAC,qBAAqB,EAAE,CAAC,SAAS,CAClD,CAAC,QAAmB,EAAE,EAAE;YAEtB,IAAI,CAAC,mBAAmB,GAAG,QAAQ,CAAC;QACtC,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CACF,CAAC;IACJ,CAAC;IACD,WAAW;QACT,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,CAAC,SAAS,CACvC,CAAC,OAAiB,EAAE,EAAE;YACpB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;YAEvB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBAC5C,IAAI,CAAC,UAAU,CAAC,IAAI,CAClB,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;oBAC5B,KAAK;oBACL,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;oBAC3B,KAAK;oBACL,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAC7B,CAAC;aACH;QACH,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CACF,CAAC;IACJ,CAAC;IACD,WAAW;QACT,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,CAAC,SAAS,CACvC,CAAC,OAAiB,EAAE,EAAE;YACpB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACzB,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CACF,CAAC;IACJ,CAAC;IACD,sBAAsB,CAAC,EAAE;QACvB,IAAI,CAAC,aAAa,CAAC,qBAAqB,CAAC,EAAE,CAAC,CAAC,SAAS,CACpD,CAAC,OAAiB,EAAE,EAAE;YACpB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACzB,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CACF,CAAC;IACJ,CAAC;IACD,cAAc;QACZ,IAAI,CAAC,aAAa,CAAC,aAAa,EAAE,CAAC,SAAS,CAC1C,CAAC,UAAuB,EAAE,EAAE;YAC1B,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC/B,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CACF,CAAC;IACJ,CAAC;IACD,uBAAuB,CAAC,EAAE;QACxB,IAAI,CAAC,aAAa,CAAC,oBAAoB,CAAC,EAAE,CAAC,CAAC,SAAS,CACnD,CAAC,UAAuB,EAAE,EAAE;YAC1B,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC/B,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CACF,CAAC;IACJ,CAAC;IACD,cAAc;QACZ,IAAI,CAAC,aAAa,CAAC,YAAY,EAAE,CAAC,SAAS,CACzC,CAAC,UAAuB,EAAE,EAAE;YAC1B,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC/B,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CACF,CAAC;IACJ,CAAC;IACD,gBAAgB;QACd,IAAI,CAAC,aAAa,CAAC,eAAe,EAAE,CAAC,SAAS,CAC5C,CAAC,YAA2B,EAAE,EAAE;YAC9B,IAAI,CAAC,eAAe,GAAG,YAAY,CAAC;QACtC,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CACF,CAAC;IACJ,CAAC;IACD,cAAc;QACZ,IAAI,CAAC,aAAa,CAAC,aAAa,EAAE,CAAC,SAAS,CAC1C,CAAC,UAAuB,EAAE,EAAE;YAC1B,IAAI,CAAC,aAAa,GAAG,UAAU,CAAC;QAClC,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CACF,CAAC;IACJ,CAAC;IACD,gBAAgB;QACd,IAAI,CAAC,aAAa,CAAC,eAAe,EAAE,CAAC,SAAS,CAC5C,CAAC,WAA0B,EAAE,EAAE;YAC7B,IAAI,CAAC,eAAe,GAAG,WAAW,CAAC;QACrC,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CACF,CAAC;IACJ,CAAC;IACD,aAAa;QACX,IAAI,CAAC,aAAa,CAAC,YAAY,EAAE,CAAC,SAAS,CACzC,CAAC,UAAuB,EAAE,EAAE;YAC1B,IAAI,CAAC,cAAc,GAAG,UAAU,CAAC;QACnC,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CACF,CAAC;IACJ,CAAC;IAED,SAAS,CAAC,QAA0B;QAClC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACnD,CAAC;IAED,UAAU;QACR,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;QACrB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;IACvB,CAAC;IACD,wEAAwE;IACxE,WAAW;QACT,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,MAAM,CAAC;QAEnD,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,cAAc,EAAE,GAAG,EAAE;YACzC,IAAI,CAAC,kBAAkB,EAAE,CAAC,CAAC,mCAAmC;YAElE,cAAc;YACd,oIAAoI;YACpI,uCAAuC;YACrC,IAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,EACxC;gBACC,IAAG,IAAI,CAAC,KAAK,CAAC,UAAU,IAAI,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,SAAS,IAAI,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,SAAS,IAAG,CAAC,EACtF;iBAEC;qBAAI;oBACH,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,6EAA6E,CAAC,CAAC;oBACpG,OAAO;iBACP;aACD;YAGL,OAAO,CAAC,GAAG,CAAC,OAAO,EAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;YACvC,IAAI,CAAC,aAAa;iBACf,YAAY,CAAC,IAAI,CAAC,kBAAkB,EAAE,IAAI,CAAC,MAAM,CAAC;iBAClD,SAAS,CACR,GAAG,EAAE;gBACH,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,6BAA6B,CAAC,CAAC;YACvD,CAAC,EACD,KAAK,CAAC,EAAE;gBACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,sCAAsC,CAAC,CAAC;YAC9D,CAAC,CACF,CAAC;YAEJ,wCAAwC;QAC1C,CAAC,CAAC,CAAC;IACL,CAAC;IACD,kEAAkE;IAClE,SAAS;QACP,IAAI,CAAC,WAAW,EAAE,CAAC;IACrB,CAAC;IACD,kBAAkB;QAChB,IAAI,CAAC,kBAAkB,CAAC,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC;QAC7D,IAAI,CAAC,kBAAkB,CAAC,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC;QAC5D,IAAI,CAAC,kBAAkB,CAAC,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC;QAC1D,IAAI,CAAC,kBAAkB,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC;QACxD,IAAI,CAAC,kBAAkB,CAAC,eAAe,GAAG,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC;QAErE,IAAI,CAAC,kBAAkB,CAAC,oBAAoB,GAAG,IAAI,CAAC,KAAK,CAAC,oBAAoB,CAAC;QAC/E,IAAI,CAAC,kBAAkB,CAAC,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC;QAEnE,uFAAuF;QACvF,IAAI,CAAC,kBAAkB,CAAC,aAAa,GAAG,CAAC,CAAC,CAAC,8BAA8B;QACzE,IAAI,CAAC,kBAAkB,CAAC,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC;QACrD,2DAA2D;QAC3D,kEAAkE;QAClE,gEAAgE;QAChE,IAAI,CAAC,kBAAkB,CAAC,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC;QAC7D,oEAAoE;QACpE,IAAI,CAAC,kBAAkB,CAAC,cAAc,GAAG,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;QAC3F,kEAAkE;QAClE,IAAI,CAAC,kBAAkB,CAAC,YAAY,GAAG,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;QACzF,gDAAgD;QAChD,IAAI,CAAC,kBAAkB,CAAC,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACvE,IAAI,CAAC,kBAAkB,CAAC,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC;QAC7D,IAAI,CAAC,kBAAkB,CAAC,OAAO,GAAG,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,MAAM,CAAC;QACvE,gEAAgE;QAChE,gEAAgE;QAChE,8BAA8B;QAC9B,kEAAkE;QAClE,IAAI;QACJ,IAAI,CAAC,kBAAkB,CAAC,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC;QAE7D,yBAAyB;QACzB,8CAA8C;QAC9C,gDAAgD;QAChD,8CAA8C;QAC9C,kDAAkD;QAClD,IAAI;QAEJ,4BAA4B;QAC5B,gDAAgD;QAChD,uDAAuD;QACvD,wDAAwD;QACxD,IAAI;QAEJ,uGAAuG;QACvG,mGAAmG;IAErG,CAAC;IAED,cAAc,CAAC,KAAqB;QAClC,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC,IAAI,CAAC;QACjC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,cAAc,CAAC;QAClC,IAAI,CAAC,kBAAkB,CAAC,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;QAClD,IAAI,CAAC,KAAK,CAAC,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;QAC3C,IAAI,CAAC,KAAK,CAAC,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC;QACzC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;IACxB,CAAC;IACD,mBAAmB,CAAC,KAAqB;QACvC,IAAI,CAAC,kBAAkB,CAAC,aAAa,GAAG,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;QACtD,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;IAC7B,CAAC;IACD,iBAAiB,CAAC,KAAqB;QACrC,IAAI,CAAC,kBAAkB,CAAC,WAAW,GAAG,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;QACpD,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;IAC3B,CAAC;IACD,iBAAiB,CAAC,KAAqB;QACrC,IAAI,CAAC,kBAAkB,CAAC,WAAW,GAAG,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;IACtD,CAAC;IAED,eAAe,CAAC,CAAC;QACf,IAAI,CAAC,eAAe,EAAE,CAAC;QACvB,IAAI,CAAC,IAAI,CAAC,EAAE;YACV,IAAI,CAAC,KAAK,CAAC,WAAW,GAAG,CAAC,CAAC;SAC5B;QACD,gBAAgB;QAChB,IAAI,CAAC,IAAI,CAAC,EAAE;YACV,IAAI,CAAC,KAAK,CAAC,eAAe,GAAG,MAAM,CAAC;SACrC;QACD,IAAI,CAAC,IAAI,CAAC,EAAE;YACV,IAAI,CAAC,KAAK,CAAC,eAAe,GAAG,MAAM,CAAC;SACrC;QACD,IAAI,CAAC,IAAI,CAAC,EAAE;YACV,IAAI,CAAC,KAAK,CAAC,eAAe,GAAG,MAAM,CAAC;SACrC;IACH,CAAC;IACH,YAAY;IACZ,eAAe;QAEX,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,IAAI,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,SAAS,IAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;IACtG,CAAC;IACC,gBAAgB,CAAC,CAAC;QAEhB,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;QACnD,IAAI,CAAC,mBAAmB,GAAE,KAAK,CAAC,CAAC,WAAW;QAC5C,IAAI,CAAC,cAAc,GAAE,KAAK,CAAC,CAAC,WAAW;QACvC,IAAI,IAAI,CAAC,KAAK,CAAC,UAAU,IAAI,CAAC,EAAE;YAC9B,IAAI,CAAC,KAAK,CAAC,WAAW,GAAG,MAAM,CAAC;YAChC,IAAI,CAAC,KAAK,CAAC,eAAe,GAAG,MAAM,CAAC;YACpC,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC;YACzB,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,CAAC,CAAC;YACxB,IAAI,CAAC,KAAK,CAAC,YAAY,GAAG,KAAK,CAAC;YAChC,IAAI,CAAC,KAAK,CAAC,WAAW,GAAG,KAAK,CAAC;YAC/B,8BAA8B;YAC9B,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;SACnD;QACD,IAAI,IAAI,CAAC,KAAK,CAAC,UAAU,IAAI,CAAC,EAAE;YAC9B,IAAI,CAAC,KAAK,CAAC,WAAW,GAAG,MAAM,CAAC;YAChC,IAAI,CAAC,KAAK,CAAC,eAAe,GAAG,OAAO,CAAC;YACrC,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC;YACzB,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,CAAC,CAAC;YACxB,8BAA8B;YAC9B,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;SACnD;QACD,IAAI,IAAI,CAAC,KAAK,CAAC,UAAU,IAAI,CAAC,EAAE;YAC9B,IAAI,CAAC,KAAK,CAAC,WAAW,GAAG,KAAK,CAAC;YAC/B,IAAI,CAAC,KAAK,CAAC,eAAe,GAAG,MAAM,CAAC;YACpC,8BAA8B;YAC9B,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,EAAE,CAAC;YACzB,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC;YACzB,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;YAClD,IAAI,CAAC,cAAc,GAAE,IAAI,CAAC;SAC3B;QACD,IAAI,IAAI,CAAC,KAAK,CAAC,UAAU,IAAI,CAAC,EAAE;YAC9B,IAAI,CAAC,KAAK,CAAC,WAAW,GAAG,UAAU,CAAC;YACpC,IAAI,CAAC,KAAK,CAAC,eAAe,GAAG,OAAO,CAAC;YACrC,+BAA+B;YAC/B,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,EAAE,CAAC;YACzB,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC;YACzB,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;SACnD;QACD,IAAI,IAAI,CAAC,KAAK,CAAC,UAAU,IAAI,CAAC,EAAE;YAC9B,IAAI,CAAC,KAAK,CAAC,WAAW,GAAG,MAAM,CAAC;YAChC,IAAI,CAAC,KAAK,CAAC,eAAe,GAAG,KAAK,CAAC;YACnC,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC;YACzB,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,EAAE,CAAC;YACzB,+BAA+B;YAC/B,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;YAElD,aAAa;YACb,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC;SACjC;QACD,IAAI,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC;IACjC,CAAC;IAID,sBAAsB,CAAC,EAAE;QACvB,IAAI,CAAC,aAAa,CAAC,sBAAsB,CAAC,EAAE,CAAC,CAAC,SAAS,CACrD,CAAC,QAAmB,EAAE,EAAE;YACtB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QAC3B,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,sCAAsC,CAAC,CAAC;QAC9D,CAAC,CACF,CAAC;IACJ,CAAC;IACD,cAAc,CAAC,CAAC;QACd,IAAI,CAAC,uBAAuB,CAAC,CAAC,CAAC,CAAC;IAClC,CAAC;IAED,YAAY;QACV,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,SAAS,CAC9D,GAAG,EAAE;YACH,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC;YAC5C,IAAI,CAAC,WAAW,EAAE,CAAC;YACnB,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;QACvB,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,iDAAiD,CAAC,CAAC;QACzE,CAAC,CACF,CAAC;QACF,mBAAmB;IACrB,CAAC;IAED,eAAe;QACb,IAAI,CAAC,aAAa,CAAC,eAAe,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC,SAAS,CACrE,GAAG,EAAE;YACH,IAAI,CAAC,cAAc,EAAE,CAAC;YACtB,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,uBAAuB,CAAC,CAAC;YAC/C,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;QACvB,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,uDAAuD,CAAC,CAAC;QAC/E,CAAC,CACF,CAAC;IACJ,CAAC;IAED,iBAAiB;QACf,IAAI,CAAC,aAAa,CAAC,iBAAiB,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,SAAS,CACxE,GAAG,EAAE;YACH,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACxB,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,0BAA0B,CAAC,CAAC;YAClD,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;QACvB,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,6DAA6D,CAAC,CAAC;QACrF,CAAC,CACF,CAAC;IACJ,CAAC;IACD,eAAe;QACb,IAAI,CAAC,aAAa,CAAC,eAAe,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,SAAS,CACpE,GAAG,EAAE;YACH,IAAI,CAAC,cAAc,EAAE,CAAC;YACtB,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,uBAAuB,CAAC,CAAC;YAC/C,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;QACvB,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,uDAAuD,CAAC,CAAC;QAC/E,CAAC,CACF,CAAC;IACJ,CAAC;IACD,eAAe;QACb,IAAI,CAAC,aAAa,CAAC,eAAe,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,SAAS,CACpE,GAAG,EAAE;YACH,IAAI,CAAC,aAAa,EAAE,CAAC;YACrB,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,uBAAuB,CAAC,CAAC;YAC/C,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;QACvB,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,uDAAuD,CAAC,CAAC;QAC/E,CAAC,CACF,CAAC;IACJ,CAAC;IACD,iBAAiB;QACf,IAAI,CAAC,aAAa,CAAC,iBAAiB,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,SAAS,CACxE,GAAG,EAAE;YACH,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACxB,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,0BAA0B,CAAC,CAAC;YAClD,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;QACvB,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,0DAA0D,CAAC,CAAC;QAClF,CAAC,CACF,CAAC;IACJ,CAAC;IAED,MAAM;QACJ,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACzC,CAAC;IAED,8BAA8B;IAC/B,wDAAwD;IACvD,oBAAoB,CAAC,KAAoB;QAEvC,IAAG,IAAI,CAAC,KAAK,CAAC,UAAU,IAAG,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,SAAS,IAAI,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,SAAS,IAAI,CAAC,EACtF;YACE,IAAI,CAAC,uBAAuB,CAAC,KAAK,CAAC,CAAC;SAErC;aACI,IAAG,IAAI,CAAC,KAAK,CAAC,UAAU,IAAG,CAAC,EACjC;YACE,IAAI,CAAC,uBAAuB,CAAC,KAAK,CAAC,CAAC;SACrC;IACH,CAAC;IAEH,4CAA4C;IAC1C,iBAAiB,CAAC,KAAU;QAE1B,IAAG,IAAI,CAAC,KAAK,CAAC,UAAU,IAAG,CAAC,IAAK,IAAI,CAAC,KAAK,CAAC,SAAS,IAAI,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,SAAS,IAAI,CAAC,EACrF;YACC,IAAI,CAAC,uBAAuB,CAAC,KAAK,CAAC,CAAC;SACpC;aACI,IAAG,IAAI,CAAC,KAAK,CAAC,UAAU,IAAG,CAAC,EACjC;YACE,IAAI,CAAC,uBAAuB,CAAC,KAAK,CAAC,CAAC;SACrC;IACL,CAAC;IACD,2BAA2B;IAC3B,uBAAuB,CAAC,KAAK;QAE7B,MAAM,WAAW,GAAG,CAAC,GAAG,EAAC,GAAG,EAAC,GAAG,EAAC,GAAG,EAAC,GAAG,EAAC,GAAG,EAAC,GAAG,EAAC,GAAG,EAAC,GAAG,EAAC,GAAG,EAAC,GAAG,CAAC,CAAC;QAC9D,IAAG,CAAC,WAAW,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,EACnC;YACE,KAAK,CAAC,cAAc,EAAE,CAAC;SACxB;QACD,qCAAqC;QACrC,MAAO,YAAY,GAAG,KAAK,CAAC,MAA0B,CAAC;QACvD,IAAG,KAAK,CAAC,GAAG,KAAI,GAAG,IAAI,YAAY,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,EACvD;YACE,KAAK,CAAC,cAAc,EAAE,CAAC;SACxB;IACP,CAAC;IACC,uBAAuB,CAAC,KAAK;QAE3B,MAAO,YAAY,GAAG,KAAK,CAAC,MAA0B,CAAC;QACvD,MAAM,KAAK,GAAG,YAAY,CAAC,KAAK,CAAC;QACjC,iDAAiD;QACjD,MAAM,YAAY,GAAG,KAAK,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC;QACrD,IAAG,YAAY,EACf;YACE,YAAY,CAAC,KAAK,GAAE,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,4CAA4C;SAClF;IACH,CAAC;;0FA/jBU,qBAAqB;mHAArB,qBAAqB;;QCzBlC,yEAAuB;QACnB;QAAA,yEAAyB;QACvB,0FACF;QAAA,4DAAM;QACN;QAAA,yEAAuB;QACrB;QAAA,6EAAuD;QAAzB,iJAAY,eAAW,IAAC;QACpD;QAAA,0EAAsB;QACpB;QAAA,0EAAiC;QAC/B;QAAA,4EAA2B;QAAA,2EAAe;QAAA,4DAAQ;QAClD;QAAA,gFAEW;QADX,qMAA8B,wFAAiC,0CAAkC,IAAnE;QAE5B;QAAA,0HAA6F;QAC/F;QAAA,4DAAS;QACX;QAAA,4DAAM;QACN;QAAA,0EAAiC;QAC/B;QAAA,6EAA8B;QAAA,+EAAmB;QAAA,4DAAQ;QACzD;QAAA,iFACkC;QADqE,qMAA+B;QAAtI,4DACkC;QACpC;QAAA,4DAAM;QACN;QAAA,0EAAiC;QAC/B;QAAA,6EAAgC;QAAA,iFAAqB;QAAA,4DAAQ;QAC7D;QAAA,kFAEW;QADX,oMAA6B,wFAAW,wCAAgC,IAA3C;QAE3B;QAAA,0HAAyF;QAC3F;QAAA,4DAAS;QACX;QAAA,4DAAM;QACN;QAAA,0EAAiC;QAC/B;QAAA,6EAAyB;QAAA,yEAAa;QAAA,4DAAQ;QAC9C;QAAA,kFACqG;QAApG,mMAA4B,wFAA+B,sCAA8B,IAA7D;QAC3B;QAAA,0HAAqF;QACvF;QAAA,4DAAS;QACX;QAAA,4DAAM;QACN;QAAA,0EAAiC;QAC/B;QAAA,6EAAkC;QAAA,4EAAgB;QAAA,4DAAQ;QAC1D;QAAA,iFAC6D;QAD1C,yJAAY,gCAA4B,IAAC,2FAAU,6BAAyB,IAAnC;QAA5D,4DAC6D;QAE3D;QAAA,6EAA4B;QAAA,wDAA+K;QAAA,4DAAQ;QAEvN;QAAA,4DAAM;QAEN;QACA;QAAA,sEAA4B;QAC5B;QAAA,qIAkBY;QACd;QAAA,4DAAM;QACN;QAAA,2EAAiB;QACf;QAAA,2EAAkC;QAChC;QAAA,2EAAiB;QACf;QAAA,2EAAuB;QACrB;QAAA,6EAA6B;QAAA,uEAAW;QAAA,4DAAQ;QAChD;QAAA,iFACuH;QADhC,oMAA8B,mHACtB,0BAAsB,IADA;QAArH,4DACuH;QACzH;QAAA,4DAAM;QACN;QAAA,2EAA2B;QACzB;QAAA,8EAAoF;QAA9B,8RAAS,6EAAmB,KAAC;QACjF;QAAA,oEAAiC;QACnC;QAAA,4DAAS;QACX;QAAA,4DAAM;QACR;QAAA,4DAAM;QACR;QAAA,4DAAM;QACR;QAAA,4DAAM;QAEN;QAAA,2EAAsB;QACpB;QAAA,2EAAiC;QAC/B;QAAA,8EAAgC;QAAA,uEAAU;QAAA,4DAAQ;QAClD;QAAA,mFACW;QADoF,uMAA+B;QAE5H;QAAA,4HAAiG;QACnG;QAAA,4DAAS;QACX;QAAA,4DAAM;QACN;QAAA,2EAAiC;QAC/B;QAAA,8EAA4B;QAAA,uEAAU;QAAA,4DAAQ;QAC9C;QAAA,kFACkD;QADoC,oMAA6B;QAAnH,4DACkD;QACpD;QAAA,4DAAM;QACN;QAAA,2EAAiC;QAC/B;QAAA,8EAAsB;QAAA,gEAAG;QAAA,4DAAQ;QACjC;QAAA,kFAAkI;QAAxF,8LAAuB;QAAjE,4DAAkI;QACpI;QAAA,4DAAM;QACR;QAAA,4DAAM;QAEN;QAAA,2EAAuB;QACrB;QAAA,4EAAiC;QAC/B;QAAA,4EAAiB;QACf;QAAA,4EAAuB;QACrB;QAAA,8EAA4B;QAAA,sEAAS;QAAA,4DAAQ;QAC7C;QAAA,kFAC2H;QAD/D,oMAA6B,oHACO,6BAAyB,IADhC;QAAzF,4DAC2H;QAC7H;QAAA,4DAAM;QACN;QAAA,4EAAsB;QACpB;QAAA,+EAA6F;QAAvC,+RAAS,6EAA4B,KAAC;QAC1F;QAAA,qEAAiC;QAAA,4DAAS;QAC9C;QAAA,4DAAM;QACR;QAAA,4DAAM;QAER;QAAA,4DAAM;QACN;QAAA,4EAAiC;QAC/B;QAAA,4EAAiB;QACf;QAAA,4EAAuB;QACrB;QAAA,8EAA8B;QAAA,yEAAY;QAAA,4DAAQ;QAClD;QAAA,kFACsG;QADxC,wMAAiC;QAA/F,4DACsG;QACxG;QAAA,4DAAM;QACN;QAAA,4EAAsB;QACpB;QAAA,+EAAyF;QAAnC,+RAAS,6EAAwB,KAAC;QACtF;QAAA,qEAAiC;QACnC;QAAA,4DAAS;QACX;QAAA,4DAAM;QACR;QAAA,4DAAM;QAER;QAAA,4DAAM;QACR;QAAA,4DAAM;QAEN;QAAA,2EAAsB;QACpB;QAAA,4EAAkC;QAChC;QAAA,4EAAiB;QACf;QAAA,4EAAuB;QACrB;QAAA,8EAA4B;QAAA,sEAAS;QAAA,4DAAQ;QAC7C;QAAA,mFAA2H;QAAhC,uMAA+B;QACxH;QAAA,4HAAiG;QACnG;QAAA,4DAAS;QACX;QAAA,4DAAM;QACN;QAAA,4EAAsB;QACpB;QAAA,+EAA6F;QAAvC,+RAAS,6EAA4B,KAAC;QAC1F;QAAA,qEAAiC;QACnC;QAAA,4DAAS;QACX;QAAA,4DAAM;QACR;QAAA,4DAAM;QACR;QAAA,4DAAM;QACR;QAAA,4DAAM;QAEN;QAAA,2EAAsB;QACpB;QAAA,4EAAkC;QAChC;QAAA,8EAA8B;QAAA,sEAAS;QAAA,4DAAQ;QAC/C;QAAA,kFACiJ;QADrF,sMAA+B,oHAC2B,6BAAyB,IADpD;QAA3F,4DACiJ;QACnJ;QAAA,4DAAM;QACN;QAAA,4EAAsB;QACpB;QAAA,+EAA6F;QAAvC,+RAAS,6EAA4B,KAAC;QAC1F;QAAA,qEAAiC;QACnC;QAAA,4DAAS;QACX;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAAA,2EAAsB;QACpB;QAAA,4EAAiC;QAC/B;QAAA,8EAA8B;QAAA,0EAAa;QAAA,4DAAQ;QACnD;QAAA,kFAC4C;QADkB,sMAA+B;QAA7F,4DAC4C;QAC9C;QAAA,4DAAM;QACN;QAAA,4EAAiC;QAC/B;QAAA,8EAA+B;QAAA,2EAAc;QAAA,4DAAQ;QACrD;QAAA,kFAC8C;QADiB,uMAAgC;QAA/F,4DAC8C;QAChD;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAAA,2EAAsB;QACpB;QAAA,4EAAkC;QAChC;QAAA,8EAA8B;QAAA,wEAAW;QAAA,4DAAQ;QACjD;QAAA,kFACwJ;QAD1F,sMAA+B,oHAC8B,+BAA2B,IADzD;QAA7F,4DACwJ;QAC1J;QAAA,4DAAM;QACN;QAAA,4EAAsB;QACpB;QAAA,+EAA+F;QAAzC,+RAAS,6EAA8B,KAAC;QAC5F;QAAA,qEAAiC;QACnC;QAAA,4DAAS;QACX;QAAA,4DAAM;QACR;QAAA,4DAAM;QAEN;QAAA,4EAAwB;QACtB;QAAA,8EAA0B;QAAA,2EAAc;QAAA,4DAAQ;QAChD;QAAA,qFAAwH;QAA5B,qMAA2B;QAAC,4DAAW;QACrI;QAAA,4DAAM;QAGN;QAAA,4EAA0B;QACxB;QAAA,2EAAsB;QACpB;QAAA,+EAAoF;QAAnB,+IAAS,YAAQ,IAAC;QAAC,kEAAK;QAAA,4DAAS;QAClG;QACA;QACA;QAAA,+EAAkE;QAAA,yEAAY;QAAA,4DAAS;QACvF;QACF;QAAA,4DAAM;QACR;QAAA,4DAAM;QACR;QAAA,4DAAO;QACT;QAAA,4DAAM;QACV;QAAA,4DAAM;QAEN;QAAA,mNAwBc;QAEd;QAAA,mNAec;QAEd;QAAA,mNAec;QAEd;QAAA,mNAsBc;QAEd;QAAA,mNAqBc;QAEd;QAAA,mNAec;;QAhUF,2DAA8B;QAA9B,yFAA8B;QAEC,0DAAY;QAAZ,kFAAY;QAK4D,0DAA+B;QAA/B,0FAA+B;QAMtI,0DAA6B;QAA7B,wFAA6B;QAEC,0DAAW;QAAX,iFAAW;QAMxC,0DAA4B;QAA5B,uFAA4B;QACA,0DAAU;QAAV,gFAAU;QAK6I,0DAAmC;QAAnC,8FAAmC;QAGzL,0DAA+K;QAA/K,wRAA+K;QAMlM,0DAAuB;QAAvB,oFAAuB;QAyByD,2DAA8B;QAA9B,yFAA8B;QAe1B,2DAA+B;QAA/B,0FAA+B;QAE9F,0DAAa;QAAb,mFAAa;QAKyC,0DAA6B;QAA7B,wFAA6B;QAKzE,0DAAuB;QAAvB,kFAAuB;QASD,2DAA6B;QAA7B,wFAA6B;QAc3B,2DAAiC;QAAjC,4FAAiC;QAkBJ,2DAA+B;QAA/B,0FAA+B;QAC1F,0DAAa;QAAb,mFAAa;QAeW,2DAA+B;QAA/B,0FAA+B;QAY7B,2DAA+B;QAA/B,0FAA+B;QAK9B,0DAAgC;QAAhC,2FAAgC;QAOjC,2DAA+B;QAA/B,0FAA+B;QAYH,2DAA2B;QAA3B,sFAA2B;;;;;;;;;;;;;;;;;;;;;;;;;;;IE3L/H,uEAA0F;IAAA,uDACxF;IAAA,0EAOC;IAAC,uDAAyB;IAAA,4DAAO;IAClC;IAAA,wEAAO;IAAC,uDAAyB;IAAA,4DAAQ;IAC3C;IAAA,4DAAI;;;IAVsF,0DACxF;IADwF,yIACxF;IACA,0DAA6D;IAA7D,kHAA6D;IAM3D,0DAAyB;IAAzB,mGAAyB;IACnB,0DAAyB;IAAzB,kGAAyB;;ADD9B,MAAM,2BAA2B;IAKtC,YAAoB,aAA4B,EAAU,QAAyB,EACxE,KAAqB,EAAU,GAAW;QADjC,kBAAa,GAAb,aAAa,CAAe;QAAU,aAAQ,GAAR,QAAQ,CAAiB;QACxE,UAAK,GAAL,KAAK,CAAgB;QAAU,QAAG,GAAH,GAAG,CAAQ;IAAG,CAAC;IAEzD,QAAQ;QACN,IAAI,CAAC,SAAS,EAAE,CAAC;QACjB,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;IAC1C,CAAC;IAED,SAAS;QACP,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC,SAAS,CAAC,CAAC,KAAa,EAAE,EAAE;YACxD,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,CAAC,EAAE,KAAK,CAAC,EAAE;YACT,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CAAC,CAAC;IACP,CAAC;IACD,eAAe,CAAC,GAAG;QACjB,IAAI,CAAC,aAAa,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC,WAAyB,EAAE,EAAE;YAC7E,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,CAAC,EAAE,KAAK,CAAC,EAAE;YACT,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CAAC,CAAC;IACP,CAAC;;sGA1BU,2BAA2B;yHAA3B,2BAA2B;QCZxC,yEAAwB;QACtB;QAAA,uEAAkE;QAClE;QAAA,4DAAI;QAEJ;QAAA,oHAUI;QACN;QAAA,4DAAM;QACN;;QAZoB,0DAAc;QAAd,oFAAc;;;;;;;;;;;;;;;;;;;;;;;;ACO3B,MAAM,4BAA4B;IAIvC,YAAoB,aAA4B,EACtC,QAAyB;QADf,kBAAa,GAAb,aAAa,CAAe;QACtC,aAAQ,GAAR,QAAQ,CAAiB;IAAG,CAAC;IAEvC,QAAQ;QACN,IAAI,CAAC,WAAW,EAAE,CAAC;IACrB,CAAC;IAED,WAAW;QACT,IAAI,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,SAAS,CAC9C,CAAC,OAAgB,EAAE,EAAE;YACnB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACzB,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CACF,CAAC;IACJ,CAAC;;wGApBU,4BAA4B;0HAA5B,4BAA4B;QCXzC,qEAAI;QAAA,kEAAO;QAAA,4DAAK;QACF;QAAA,yEAAiB;QACf;QAAA,yEAAsB;QACpB;QAAA,wEAAuB;QACrB;QAAA,wEAA4B;QAAA,wDAA6F;;QAAA,4DAAK;QAC9H;QAAA,yEAA4B;QAAA,wDAA0B;QAAA,4DAAK;QAC3D;QAAA,yEAA4B;QAAA,wDAA+B;QAAA,4DAAK;QAChE;QAAA,yEAA4B;QAAA,wDAA8B;QAAA,4DAAK;QAC/D;QAAA,yEAA4B;QAAA,wDAAgC;QAAA,4DAAK;QACnE;QAAA,4DAAK;QACP;QAAA,4DAAM;QACN;QAAA,0EAAsB;QACpB;QAAA,0EAAwC;QACtC;QAAA,qEAA4H;QAC5H;QAAA,qEAA6B;QAC3B;QAAA,yEAAmC;QAAA,wDAAgG;;QAAA,4DAAK;QAC9I;QAAA,4DAAM;QACpB;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;;QAfgD,2DAA6F;QAA7F,wTAA6F;QAC7F,0DAA0B;QAA1B,+HAA0B;QAC1B,0DAA+B;QAA/B,oIAA+B;QAC/B,0DAA8B;QAA9B,oIAA8B;QAC9B,0DAAgC;QAAhC,qIAAgC;QAOvB,2DAAgG;QAAhG,2TAAgG;;;;;;;;;;;;;;;;;;;;;;;;;ACTrH;;;;;;;;;;ICcpC,yEAAsD;IACpD;IAAA,yEAAsB;IACpB;IAAA,yEAAmE;IAA9D,wWAAS,qLAAmD,KAAC;IAChE;IAAA,oEAAgJ;IAClJ;IAAA,4DAAM;IACR;IAAA,4DAAM;IACN;IAAA,0EAAsB;IACpB;IAAA,wEAAiE;IAA9D,uWAAS,qLAAmD,KAAC;IAAC,mEAA8B;IAC7F;IAAA,4EAA0B;IAAE,wDAAsC;IAAA,4DAAQ;IAC1E;IAAA,0EAA8C;IAC7C,wDACD;IAAA,4DAAM;IACR;IAAA,4DAAI;IACJ;IAAA,4EAA2C;IAAA,wDAAyC;;IAAA,4DAAO;IAC3F;IAAA,4EAA6C;IAAA,wDAAoC;;IAAA,4DAAO;IAC1F;IAAA,4DAAM;IACR;IAAA,4DAAM;;;IAbwB,0DAAmD;IAAnD,2NAAmD;IAK/C,2DAAsC;IAAtC,6IAAsC;IAEjE,0DACD;IADC,8IACD;IAEyC,0DAAyC;IAAzC,4LAAyC;IACvC,0DAAoC;IAApC,yLAAoC;;ADpB9E,MAAM,6BAA6B;IAKxC,YAAoB,aAA4B,EAAU,QAAyB,EACzE,KAAqB,EAAU,GAAW,EAAU,eAAgC;QAD1E,kBAAa,GAAb,aAAa,CAAe;QAAU,aAAQ,GAAR,QAAQ,CAAiB;QACzE,UAAK,GAAL,KAAK,CAAgB;QAAU,QAAG,GAAH,GAAG,CAAQ;QAAU,oBAAe,GAAf,eAAe,CAAiB;IAAI,CAAC;IAEnG,QAAQ;QACN,IAAI,CAAC,cAAc,EAAE,CAAC;IACxB,CAAC;IAED,cAAc;QACZ,IAAI,CAAC,aAAa,CAAC,kBAAkB,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,SAAqB,EAAE,EAAE;YACzF,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;QAC9B,CAAC,EAAE,KAAK,CAAC,EAAE;YACT,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CAAC,CAAC;IACL,CAAC;IAED,gBAAgB,CAAC,CAAS,EAAE,QAAgB;QAC1C,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,CACxC,IAAI,CAAC,EAAE;YACL,yBAAyB;YACzB,qBAAqB;YACrB,2CAA2C;YAC3C,oCAAoC;YACpC,kDAAM,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;YACvB,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,qBAAqB,CAAC,CAAC;QAC/C,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAC;QACrD,CAAC,CACF,CAAC;IACJ,CAAC;IACD,WAAW,CAAC,iBAAwB;QAClC,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,iBAAiB,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;YAC7D,IAAI,CAAC,gBAAgB,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,iBAAiB,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,CAAC;SACvF;IACH,CAAC;;0GAvCU,6BAA6B;2HAA7B,6BAA6B;QCM1C;QAAA,0HAgBM;QAEN;QAAA,gEAAI;QACJ;QAAA,sEAAK;QACH;QAAA,4EAAsF;QAAhE,qJAAS,+BAAuB,IAAC;QAA+B,kEAA8B;QAAC,wEAAY;QAAA,4DAAS;QAC5I;QAAA,4DAAM;;QArBqB,0DAAa;QAAb,mFAAa;;;;;;;;;;;;;;;;;;;;ACZjC,MAAM,8BAA8B;IAIzC,gBAAgB,CAAC;IAEjB,QAAQ;QACN,IAAI,CAAC,QAAQ,EAAE,CAAC;IAClB,CAAC;IACD,QAAQ;QACN,4BAA4B;IAC9B,CAAC;;4GAXU,8BAA8B;4HAA9B,8BAA8B;QCR3C,yEAA6B;QACzB;QAAA,uEAAgG;QAC9F;QAAA,yEAAkD;QAClD;QAAA,4DAAM;QACR;QAAA,4DAAI;QAEJ;QAAA,uEAAyF;QACvF;QAAA,0EAAkD;QAChD;QAAA,yEAAiB;QAAA,+EAAmB;QAAA,4DAAK;QACzC;QACF;QAAA,4DAAM;QACN;QAGA;QAAA,wEAAgB;QAAA,gFAAoB;QAAA,0EAAQ;QAAA,wDAAwC;;QAAA,4DAAS;QAC7F;QAAA,wEAAgB;QAAA,8EAAkB;QAAA,0EAAQ;QAAA,wDAA0C;;QAAA,4DAAS;QAC7F;QAAA,wEAAgB;QAAA,8EAAkB;QAAA,0EAAQ;QAAA,wDAA0C;;QAAA,4DAAS;QAC/F;QAAA,4DAAI;QACJ;QAsBF;QAAA,4DAAM;QAEN;QAAA,0EAAkB;QAChB;QAAA,yEAAuB;QACrB;QAAA,yEAA8E;QAC5E,wDACF;QAAA,4DAAK;QACL;QAAA,yEAA8E;QAC5E,wDACF;QAAA,4DAAK;QACL;QAAA,yEAA8E;QAC5E,wDACF;QAAA,4DAAK;QACP;QAAA,4DAAK;QACP;QAAA,4DAAM;QACR;;QAzCkD,2DAAwC;QAAxC,4LAAwC;QAC1C,0DAA0C;QAA1C,8LAA0C;QAC1C,0DAA0C;QAA1C,+LAA0C;QA6BlF,2DACF;QADE,yJACF;QAEE,0DACF;QADE,8JACF;QAEE,0DACF;QADE,yJACF;;;;;;;;;;;;;;;;;;;;;;;;;;;;IE/CJ,uEAAsL;IAAA,uDACtL;IAAA,4DAAI;;;;IADgD,wLAAyE;IAAyD,0DACtL;IADsL,qGACtL;;;IANF,yEAAmD;IACjD;IAAA,uEAAkE;IAChE,uDACF;IAAA,4DAAI;IAEJ;IAAA,gIACI;IACN;IAAA,4DAAM;;;IALF,0DACF;IADE,yHACF;IAE2B,0DAAuB;IAAvB,4FAAuB;;ADO7C,MAAM,kCAAkC;IAQ7C,YAAoB,aAA4B,EAAU,QAAyB,EACzE,KAAqB,EAAU,GAAW;QADhC,kBAAa,GAAb,aAAa,CAAe;QAAU,aAAQ,GAAR,QAAQ,CAAiB;QACzE,UAAK,GAAL,KAAK,CAAgB;QAAU,QAAG,GAAH,GAAG,CAAQ;IAAI,CAAC;IAEzD,QAAQ;QACN,IAAI,CAAC,SAAS,EAAE,CAAC;QACjB,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;IACzC,CAAC;IAED,SAAS;QACP,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC,SAAS,CAAC,CAAC,KAAa,EAAE,EAAE;YACxD,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACrB,CAAC,EAAE,KAAK,CAAC,EAAE;YACT,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CAAC,CAAC;IACL,CAAC;IAED,cAAc,CAAC,GAAG;QAChB,IAAI,CAAC,aAAa,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,SAAS,CAC9C,CAAC,WAAyB,EAAE,EAAE;YAC5B,IAAI,CAAC,UAAU,GAAG,WAAW,CAAC;QAChC,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CACF,CAAC;IACJ,CAAC;;oHAjCU,kCAAkC;gIAAlC,kCAAkC;QCZ/C,8HAOM;QACN;;QARsB,8EAAQ;;;;;;;;;;;;;;;;;;ACOvB,MAAM,oCAAoC;IAE/C,gBAAgB,CAAC;IAEjB,QAAQ;IACR,CAAC;;wHALU,oCAAoC;kIAApC,oCAAoC;QCPjD,oEAAG;QACD,sGACF;QAAA,4DAAI;QACJ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACH0E;;;;;;;;;;;;;;;;;;ICgBpE,2EAA2D;IACzD;IAAA,yEAAQ;IAAA,sEAAW;IAAA,4DAAS;IAAA,gIAC9B;IAAA,4DAAM;;;IAyCQ,8EAAmE;IAAA,uDAAiB;IAAA,4DAAS;;;IAAlD,6FAAuB;IAAC,0DAAiB;IAAjB,kFAAiB;;;IAapF,8EAA6D;IAAA,uDAAe;IAAA,4DAAS;;;IAA9C,2FAAqB;IAAC,0DAAe;IAAf,gFAAe;;;IAO5E,8EAAgE;IAAA,uDAAgB;IAAA,4DAAS;;;IAAhD,4FAAsB;IAAC,0DAAgB;IAAhB,iFAAgB;;;IAUhF,8EAAsE;IAAA,uDAAkB;IAAA,4DAAS;;;IAApD,8FAAwB;IAAC,0DAAkB;IAAlB,mFAAkB;;;IAsBrG,8EAA2E;IAAA,uDAAgB;IAAA,4DAAS;;;IAAhD,4FAAsB;IAAC,0DAAgB;IAAhB,iFAAgB;;;;IAL/F;IAAA,0EAAiC;IAC/B;IAAA,6EAAqC;IAAA,qFAA0B;IAAA,4DAAQ;IACvE;IAAA,mFAEW;IADX,2UAAa,yIAAqC,IAAP;IAEzC;IAAA,8IAAoG;IACtG;IAAA,4DAAS;IACX;IAAA,4DAAM;IACN;IAAA,2EAAiC;IAC/B;IAAA,8EAAiC;IAAA,2EAAe;IAAA,4DAAQ;IACxD;IAAA,mFAC2D;IADxC,iUAAY,8FAA4B,KAAC,mQAAU,2FAAyB,KAAnC,mRAA8H,gGAC1L,IAD4D;IAA5D,4DAC2D;IAEzD;IAAA,6EAA4B;IAAA,wFAA4B;IAAA,4DAAQ;IAEpE;IAAA,4DAAM;IACR;;;IAbI,0DAA2C;IAA3C,wIAA2C;IAEb,0DAAsB;IAAtB,gGAAsB;IAKyH,0DAAkC;IAAlC,iGAAkC;;;IAgH5L,8EAAsE;IAAA,uDACtE;IAAA,4DAAS;;;IADoC,8FAAwB;IAAC,0DACtE;IADsE,sHACtE;;;IA6BJ,8EAA8D;IAAA,uDAAiB;IAAA,4DAAS;;;IAAhD,2FAAqB;IAAC,0DAAiB;IAAjB,6GAAiB;;;;IA2KjG;IAAA,2EAA0B;IACxB;IAAA,0EAAkC;IAAA,yEAAc;IAAA,4DAAK;IACrD;IAAA,8EAA4F;IAA1B,qTAAS,iFAAe,KAAC;IACzF;IAAA,4EAAyB;IAAA,iEAAO;IAAA,4DAAO;IACzC;IAAA,4DAAS;IACX;IAAA,4DAAM;IACN;IAAA,mFAA8B;IAC5B;IAAA,4EAAwB;IACtB;IAAA,2EAAsB;IACpB;IAAA,8EACwC;IAD0B,2UAAa,iGAClF,IADwG;IAArG,4DACwC;IAC1C;IAAA,4DAAM;IACN;IAAA,4EAA2B;IACzB;IAAA,8EAC6C;IADoB,2UAAa,sGACjF,IAD4G;IAAzG,4DAC6C;IAC/C;IAAA,4DAAM;IACN;IAAA,4EAA2B;IACzB;IAAA,8EACuC;IAD6B,2UAAa,gGACpF,IADyG;IAAtG,4DACuC;IACzC;IAAA,4DAAM;IACN;IAAA,4EAA2B;IACzB;IAAA,8EACwC;IAD0B,2UAAa,iGAClF,IADwG;IAArG,4DACwC;IAC1C;IAAA,4DAAM;IACN;IAAA,+EAC2B;IAAzB,sTAAS,gFAAc,KAAC;IAAC,gEAAI;IAAA,4DAAS;IAC1C;IAAA,4DAAM;IACR;IAAA,4DAAO;IACT;;;;IAnB0E,2DAAmC;IAAnC,kGAAmC;IAIpC,0DAAwC;IAAxC,uGAAwC;IAIrC,0DAAkC;IAAlC,iGAAkC;IAIpC,0DAAmC;IAAnC,kGAAmC;IAGpD,0DAAiC;IAAjC,iFAAiC;;;;IAOxF;IAAA,2EAA0B;IACxB;IAAA,0EAAkC;IAAA,oEAAS;IAAA,4DAAK;IAChD;IAAA,8EAA4F;IAA1B,qTAAS,iFAAe,KAAC;IACzF;IAAA,4EAAyB;IAAA,iEAAO;IAAA,4DAAO;IACzC;IAAA,4DAAS;IACX;IAAA,4DAAM;IACN;IAAA,mFAA6B;IAC3B;IAAA,4EAAwB;IACtB;IAAA,2EAAsB;IACpB;IAAA,8EAC4F;IAA1F,2UAAa,sGAAkC,IAAP;IAD1C,4DAC4F;IAC9F;IAAA,4DAAM;IACN;IAAA,+EACgC;IAA9B,sTAAS,qFAAmB,KAAC;IAAC,gEAAI;IAAA,4DAAS;IAC/C;IAAA,4DAAM;IACR;IAAA,4DAAO;IACT;;;;IANU,2DAAwC;IAAxC,uGAAwC;IAEO,0DAAgC;IAAhC,iFAAgC;;;;IAOvF;IAAA,2EAA0B;IACxB;IAAA,0EAAkC;IAAA,wEAAa;IAAA,4DAAK;IACpD;IAAA,8EAA4F;IAA1B,qTAAS,iFAAe,KAAC;IACzF;IAAA,4EAAyB;IAAA,iEAAO;IAAA,4DAAO;IACzC;IAAA,4DAAS;IACX;IAAA,4DAAM;IACN;IAAA,mFAAiC;IAC/B;IAAA,4EAAwB;IACtB;IAAA,2EAAsB;IACpB;IAAA,8EAC4C;IADyB,2UAAa,qGACrF,IAD+G;IAA5G,4DAC4C;IAC9C;IAAA,4DAAM;IACN;IAAA,+EAC8B;IAA5B,sTAAS,mFAAiB,KAAC;IAAC,gEAAI;IAAA,4DAAS;IAC7C;IAAA,4DAAM;IACR;IAAA,4DAAO;IACT;;;;IAP6E,2DAAuC;IAAvC,sGAAuC;IAG3D,0DAAoC;IAApC,iFAAoC;;;IAuBnF,8EAAmE;IAAA,uDAAiB;IAAA,4DAAS;;;IAAlD,6FAAuB;IAAC,0DAAiB;IAAjB,kFAAiB;;;;IAhB5F;IAAA,2EAA0B;IACxB;IAAA,0EAAkC;IAAA,wEAAa;IAAA,4DAAK;IACpD;IAAA,8EAA4F;IAA1B,qTAAS,iFAAe,KAAC;IACzF;IAAA,4EAAyB;IAAA,iEAAO;IAAA,4DAAO;IACzC;IAAA,4DAAS;IACX;IAAA,4DAAM;IACN;IAAA,mFAAiC;IAC/B;IAAA,4EAAwB;IACtB;IAAA,2EAAsB;IACpB;IAAA,8EAC2C;IAD0B,2UAAa,oGACrF,IAD8G;IAA3G,4DAC2C;IAC7C;IAAA,4DAAM;IACN;IAAA,4EAAgC;IAC9B;IAAA,+EACwD;IAAtD,6UAAa,2GAAsC,IAAP;IAC5C;IAAA,0EAAQ;IAAA,6EAAiB;IAAA,4DAAS;IAClC;IAAA,gJAA6F;IAC/F;IAAA,4DAAS;IACX;IAAA,4DAAM;IACN;IAAA,+EAC8B;IAA5B,uTAAS,oFAAiB,KAAC;IAAC,gEAAI;IAAA,4DAAS;IAC7C;IAAA,4DAAM;IACR;IAAA,4DAAO;IACT;;;;IAd6E,2DAAsC;IAAtC,qGAAsC;IAKzG,0DAA4C;IAA5C,2GAA4C;IAEf,0DAAY;IAAZ,sFAAY;IAGM,0DAAoC;IAApC,iFAAoC;;;IAsBnF,8EAA6D;IAAA,uDAAe;IAAA,4DAAS;;;IAA9C,4FAAqB;IAAC,0DAAe;IAAf,iFAAe;;;;IAfpF;IAAA,2EAA0B;IACxB;IAAA,0EAAkC;IAAA,wEAAa;IAAA,4DAAK;IACpD;IAAA,8EAA4F;IAA1B,uTAAS,kFAAe,KAAC;IACzF;IAAA,4EAAyB;IAAA,iEAAO;IAAA,4DAAO;IACzC;IAAA,4DAAS;IACX;IAAA,4DAAM;IACN;IAAA,mFAAiC;IAC/B;IAAA,4EAAwB;IACtB;IAAA,2EAAsB;IACpB;IAAA,8EACsC;IAD+B,6UAAa,qGACrF,IAD8G;IAA3G,4DACsC;IACxC;IAAA,4DAAM;IACN;IAAA,4EAAgC;IAC9B;IAAA,+EACsD;IAApD,8UAAa,yGAAoC,IAAP;IAC1C;IAAA,gJAAqF;IACvF;IAAA,4DAAS;IACX;IAAA,4DAAM;IACN;IAAA,+EAC8B;IAA5B,wTAAS,oFAAiB,KAAC;IAAC,gEAAI;IAAA,4DAAS;IAC7C;IAAA,4DAAM;IACR;IAAA,4DAAO;IACT;;;;IAb6E,2DAAsC;IAAtC,qGAAsC;IAKzG,0DAA0C;IAA1C,yGAA0C;IACf,0DAAU;IAAV,oFAAU;IAGU,0DAAoC;IAApC,kFAAoC;;;;IAO3F;IAAA,2EAA0B;IACxB;IAAA,0EAAkC;IAAA,0EAAe;IAAA,4DAAK;IACtD;IAAA,8EAA4F;IAA1B,uTAAS,kFAAe,KAAC;IACzF;IAAA,4EAAyB;IAAA,iEAAO;IAAA,4DAAO;IACzC;IAAA,4DAAS;IACX;IAAA,4DAAM;IACN;IAAA,mFAAmC;IACjC;IAAA,4EAAwB;IACtB;IAAA,2EAAsB;IACpB;IAAA,8EAC6C;IADqB,6UAAa,uGAClF,IAD6G;IAA1G,4DAC6C;IAC/C;IAAA,4DAAM;IACN;IAAA,+EACgC;IAA9B,wTAAS,sFAAmB,KAAC;IAAC,gEAAI;IAAA,4DAAS;IAC/C;IAAA,4DAAM;IACR;IAAA,4DAAO;IAET;;;;IAR0E,2DAAwC;IAAxC,uGAAwC;IAGzD,0DAAsC;IAAtC,kFAAsC;;;;;;AD/gBxF,MAAM,2BAA2B;IAsEtC,YACU,aAA4B,EAC5B,QAAyB,EACzB,KAAqB,EACrB,GAAW,EACX,WAAwB,EACxB,YAA4B,EAC5B,WAAwB;QANxB,kBAAa,GAAb,aAAa,CAAe;QAC5B,aAAQ,GAAR,QAAQ,CAAiB;QACzB,UAAK,GAAL,KAAK,CAAgB;QACrB,QAAG,GAAH,GAAG,CAAQ;QACX,gBAAW,GAAX,WAAW,CAAa;QACxB,iBAAY,GAAZ,YAAY,CAAgB;QAC5B,gBAAW,GAAX,WAAW,CAAa;QAhElC,UAAK,GAAQ,EAAE,CAAC;QAChB,uBAAkB,GAAQ,EAAE,CAAC;QAC7B,WAAM,GAAQ,EAAE,CAAC;QACjB,cAAS,GAAQ,EAAE,CAAC;QACpB,gBAAW,GAAQ,EAAE,CAAC;QACtB,gBAAW,GAAQ,EAAE,CAAC;QACtB,kBAAa,GAAQ,EAAE,CAAC;QAIxB,eAAU,GAAa,CAAC,MAAM,CAAC,CAAC;QAChC,oBAAe,GAAQ,EAAE,CAAC;QAC1B,kBAAa,GAAQ,EAAE,CAAC;QACxB,oBAAe,GAAQ,EAAE,CAAC;QAC1B,mBAAc,GAAQ,EAAE,CAAC;QAWzB,mBAAc,GAAG,KAAK,CAAC;QACvB,cAAS,GAAG,KAAK,CAAC;QAClB,iBAAY,GAAG,KAAK,CAAC;QAErB,iBAAY,GAAG,KAAK,CAAC;QAErB,eAAe;QACf,qBAAgB,GAAQ,EAAE,CAAC;QAC3B,yBAAoB,GAAQ,EAAE,CAAC;QAC/B,0BAAqB,GAAQ,EAAE,CAAC;QAChC,wBAAmB,GAAQ,EAAE,CAAC;QAC9B,wBAAmB,GAAQ,EAAE,CAAC;QAC9B,0BAAqB,GAAQ,EAAE,CAAC;QAMhC,4BAA4B;QAC5B,eAAU,GAAG,iBAAiB,CAAC;QAE/B,iBAAY,GAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;QACrC,eAAU,GAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;QACnC,iBAAY,GAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;IAiBjC,CAAC;IAEL,QAAQ;QACN,qBAAqB;QACrB,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,IAAI,CAAC,YAAY,EAAE,CAAC;QACpB,IAAI,CAAC,sBAAsB,EAAE,CAAC;QAC9B,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,IAAI,CAAC,cAAc,EAAE,CAAC;QACtB,IAAI,CAAC,cAAc,EAAE,CAAC;QACtB,IAAI,CAAC,UAAU,EAAE,CAAC;QAClB,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACxB,IAAI,CAAC,cAAc,EAAE,CAAC;QACtB,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACxB,IAAI,CAAC,aAAa,EAAE,CAAC;QAErB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE;YAC/B,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC;YAC7B,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC;YAEzB,WAAW;YACX,6CAA6C;YAC7C,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;YAClE,YAAY;YACZ,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,MAAM,CAAC;YAInD,IAAI,CAAC,kBAAkB,CAAC,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE,CAAC;YACnE,IAAI,CAAC,kBAAkB,CAAC,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC;YAC9D,IAAI,CAAC,kBAAkB,CAAC,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE,CAAC;YACnE,IAAI,CAAC,kBAAkB,CAAC,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;YACxD,IAAI,CAAC,kBAAkB,CAAC,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC;YAC9D,IAAI,CAAC,kBAAkB,CAAC,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE,CAAC;YAC/D,IAAI,CAAC,kBAAkB,CAAC,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC;YAC7C,IAAI,CAAC,kBAAkB,CAAC,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC;YACrD,IAAI,CAAC,kBAAkB,CAAC,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC;YACnE,IAAI,CAAC,kBAAkB,CAAC,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC;YAC/D,IAAI,CAAC,kBAAkB,CAAC,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC;YAC/D,IAAI,CAAC,kBAAkB,CAAC,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC;YAC7D,IAAI,CAAC,kBAAkB,CAAC,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC;YACjE,IAAI,CAAC,kBAAkB,CAAC,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC;YACjE,IAAI,CAAC,kBAAkB,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC;YACzD,IAAI,CAAC,kBAAkB,CAAC,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC;YAC3D,IAAI,CAAC,kBAAkB,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC;YAEzD,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,cAAc,EAAE,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC;QACzE,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,SAAS,CAC9B,MAAM,CAAC,EAAE;YACP,MAAM,WAAW,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;YAClC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,IAAI,CAAC;QACxE,CAAC,CACF,CAAC;IACJ,CAAC;IACD,SAAS,CAAC,KAAa;QACrB,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,IAAI,CAAC;IAC5C,CAAC;IAED,aAAa;QACX,IAAI,CAAC,aAAa,CAAC,YAAY,EAAE,CAAC,SAAS,CACzC,CAAC,SAAqB,EAAE,EAAE;YACxB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC7B,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,0BAA0B,CAAC,CAAC;QAClD,CAAC,CACF,CAAC;IACJ,CAAC;IACD,YAAY;QACV,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,CAAC,SAAS,CACxC,CAAC,QAAmB,EAAE,EAAE;YACtB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QAC3B,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,yBAAyB,CAAC,CAAC;QACjD,CAAC,CACF,CAAC;IACJ,CAAC;IACD,sBAAsB;QACpB,IAAI,CAAC,aAAa,CAAC,qBAAqB,EAAE,CAAC,SAAS,CAClD,CAAC,QAAmB,EAAE,EAAE;YAEtB,IAAI,CAAC,mBAAmB,GAAG,QAAQ,CAAC;QACtC,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CACF,CAAC;IACJ,CAAC;IACD,WAAW;QACT,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,CAAC,SAAS,CACvC,CAAC,OAAiB,EAAE,EAAE;YACpB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACzB,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC;QAChD,CAAC,CACF,CAAC;IACJ,CAAC;IACD,cAAc;QACZ,IAAI,CAAC,aAAa,CAAC,aAAa,EAAE,CAAC,SAAS,CAC1C,CAAC,UAAuB,EAAE,EAAE;YAC1B,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC/B,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAC;QACpD,CAAC,CACF,CAAC;IACJ,CAAC;IACD,cAAc;QACZ,IAAI,CAAC,aAAa,CAAC,YAAY,EAAE,CAAC,SAAS,CACzC,CAAC,UAAuB,EAAE,EAAE;YAC1B,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC/B,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC;QACnD,CAAC,CACF,CAAC;IACJ,CAAC;IACD,UAAU;QACR,IAAI,CAAC,aAAa,CAAC,aAAa,EAAE,CAAC,SAAS,CAC1C,CAAC,QAAkB,EAAE,EAAE;YACrB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;YACzB,OAAO,CAAC,GAAG,CAAC,aAAa,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;YAC1C,qDAAqD;YACrD,wBAAwB;YAExB,yCAAyC;YACzC,MAAM;YACN,mEAAmE;YACnE,MAAM;QACR,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAC;QAC/C,CAAC,CACF,CAAC;IACJ,CAAC;IAED,WAAW;QACT,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,CAAC,SAAS,CACvC,CAAC,OAAiB,EAAE,EAAE;YACpB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;YAEvB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBAC5C,IAAI,CAAC,UAAU,CAAC,IAAI,CAClB,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;oBAC5B,KAAK;oBACL,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;oBAC3B,KAAK;oBACL,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAC7B,CAAC;aACH;QACH,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CACF,CAAC;IACJ,CAAC;IAED,sBAAsB,CAAC,EAAE;QACvB,IAAI,CAAC,aAAa,CAAC,qBAAqB,CAAC,EAAE,CAAC,CAAC,SAAS,CACpD,CAAC,OAAiB,EAAE,EAAE;YACpB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACzB,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CACF,CAAC;IACJ,CAAC;IAED,uBAAuB,CAAC,EAAE;QACxB,IAAI,CAAC,aAAa,CAAC,oBAAoB,CAAC,EAAE,CAAC,CAAC,SAAS,CACnD,CAAC,UAAuB,EAAE,EAAE;YAC1B,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC/B,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CACF,CAAC;IACJ,CAAC;IAED,gBAAgB;QACd,IAAI,CAAC,aAAa,CAAC,eAAe,EAAE,CAAC,SAAS,CAC5C,CAAC,YAA2B,EAAE,EAAE;YAC9B,IAAI,CAAC,eAAe,GAAG,YAAY,CAAC;QACtC,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CACF,CAAC;IACJ,CAAC;IACD,cAAc;QACZ,IAAI,CAAC,aAAa,CAAC,aAAa,EAAE,CAAC,SAAS,CAC1C,CAAC,UAAuB,EAAE,EAAE;YAC1B,IAAI,CAAC,aAAa,GAAG,UAAU,CAAC;QAClC,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CACF,CAAC;IACJ,CAAC;IACD,gBAAgB;QACd,IAAI,CAAC,aAAa,CAAC,eAAe,EAAE,CAAC,SAAS,CAC5C,CAAC,WAA0B,EAAE,EAAE;YAC7B,IAAI,CAAC,eAAe,GAAG,WAAW,CAAC;QACrC,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CACF,CAAC;IACJ,CAAC;IACD,aAAa;QACX,IAAI,CAAC,aAAa,CAAC,YAAY,EAAE,CAAC,SAAS,CACzC,CAAC,UAAuB,EAAE,EAAE;YAC1B,IAAI,CAAC,cAAc,GAAG,UAAU,CAAC;QACnC,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CACF,CAAC;IACJ,CAAC;IACD,YAAY;QAEV,cAAc;QACd,kFAAkF;QAClF,IAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,EACtC;YACC,IAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,IAAI,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,IAAG,CAAC,EAC5F;aAEC;iBAAI;gBACH,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,6EAA6E,CAAC,CAAC;gBACpG,OAAO;aACP;SACD;QAEH,IAAI,CAAC,mBAAmB,EAAE,CAAC;QAC3B,wCAAwC;QACxC,IAAI,CAAC,aAAa;aACf,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,IAAI,CAAC,kBAAkB,CAAC;aACpD,SAAS,CACR,IAAI,CAAC,EAAE;YACL,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,qCAAqC,CAAC,CAAC;YAC7D,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,eAAe,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;QACtD,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CACF,CAAC;QACJ,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,iBAAiB,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;IACxD,CAAC;IACD,8BAA8B;IAC/B,wDAAwD;IACxD,oBAAoB,CAAC,KAAoB;QAEvC,IAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,IAAG,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC,EAC5F;YACC,IAAI,CAAC,uBAAuB,CAAC,KAAK,CAAC,CAAC;SACpC;aACI,IAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,IAAG,CAAC,EAClC;YACE,IAAI,CAAC,uBAAuB,CAAC,KAAK,CAAC,CAAC;SACrC;IACJ,CAAC;IACD,+BAA+B;IAChC,4CAA4C;IAC5C,iBAAiB,CAAC,KAAU;QAE1B,IAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,IAAG,CAAC,IAAK,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC,EAC5F;YACE,IAAI,CAAC,uBAAuB,CAAC,KAAK,CAAC,CAAC;SACpC;aACI,IAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,IAAG,CAAC,EACnC;YACE,IAAI,CAAC,uBAAuB,CAAC,KAAK,CAAC,CAAC;SACrC;IACL,CAAC;IAEC,2BAA2B;IAC3B,uBAAuB,CAAC,KAAK;QAE7B,MAAM,WAAW,GAAG,CAAC,GAAG,EAAC,GAAG,EAAC,GAAG,EAAC,GAAG,EAAC,GAAG,EAAC,GAAG,EAAC,GAAG,EAAC,GAAG,EAAC,GAAG,EAAC,GAAG,EAAC,GAAG,CAAC,CAAC;QAC9D,IAAG,CAAC,WAAW,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,EACnC;YACE,KAAK,CAAC,cAAc,EAAE,CAAC;SACxB;QACD,qCAAqC;QACrC,MAAO,YAAY,GAAG,KAAK,CAAC,MAA0B,CAAC;QACvD,IAAG,KAAK,CAAC,GAAG,KAAI,GAAG,IAAI,YAAY,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,EACvD;YACE,KAAK,CAAC,cAAc,EAAE,CAAC;SACxB;IACP,CAAC;IACD,uBAAuB,CAAC,KAAK;QAE3B,MAAO,YAAY,GAAG,KAAK,CAAC,MAA0B,CAAC;QACvD,MAAM,KAAK,GAAG,YAAY,CAAC,KAAK,CAAC;QACjC,iDAAiD;QACjD,MAAM,YAAY,GAAG,KAAK,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC;QACrD,IAAG,YAAY,EACf;YACE,YAAY,CAAC,KAAK,GAAE,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,4CAA4C;SAClF;IACH,CAAC;IACA,+BAA+B;IAC/B,iDAAiD;IACjD,uBAAuB;QAEtB,IAAG,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,QAAQ,CAAC,GAAG,CAAC,EACzC;YACC,IAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,IAAI,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,IAAG,CAAC,EAC5F;aAEC;iBAAI;gBACH,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,6EAA6E,CAAC,CAAC;gBACpG,OAAO;aACP;SACD;IACJ,CAAC;IACA,mBAAmB;QACjB,IAAI,CAAC,kBAAkB,CAAC,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC;QAC7D,IAAI,CAAC,kBAAkB,CAAC,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC;QAC9D,IAAI,CAAC,kBAAkB,CAAC,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC5D,IAAI,CAAC,kBAAkB,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC;QAC1D,IAAI,CAAC,kBAAkB,CAAC,eAAe,GAAG,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC;QACrE,IAAI,CAAC,kBAAkB,CAAC,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE,CAAC;QAC/D,IAAI,CAAC,kBAAkB,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC;QACzD,IAAI,CAAC,kBAAkB,CAAC,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC;QAC3D,IAAI,CAAC,kBAAkB,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC;QAEzD,IAAI,CAAC,kBAAkB,CAAC,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC;QACtD,IAAI,CAAC,kBAAkB,CAAC,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC;QAEpD,IAAI,CAAC,kBAAkB,CAAC,oBAAoB,GAAG,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC,EAAE,CAAC;QACjF,IAAI,CAAC,kBAAkB,CAAC,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC;QAEnE,IAAI,CAAC,kBAAkB,CAAC,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC;QACrD,IAAI,CAAC,kBAAkB,CAAC,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE,CAAC;QAE/D,IAAI,CAAC,kBAAkB,CAAC,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;QAExD,IAAI,CAAC,kBAAkB,CAAC,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC;QAC7D,IAAI,CAAC,kBAAkB,CAAC,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC;QAC7D,IAAI,CAAC,kBAAkB,CAAC,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC;QAC7C,IAAI,CAAC,kBAAkB,CAAC,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC;QAC7C,IAAI,CAAC,kBAAkB,CAAC,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC;QAE7D,IAAI,CAAC,kBAAkB,CAAC,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC;QAC/D,IAAI,CAAC,kBAAkB,CAAC,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC;QACjE,IAAI,CAAC,kBAAkB,CAAC,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC;QAEjE,IAAI,CAAC,kBAAkB,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC;QAC3D,IAAI,CAAC,kBAAkB,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC;QAC/D,IAAI,CAAC,kBAAkB,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC;QAC/D,IAAI,CAAC,kBAAkB,CAAC,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC;QAC7D,IAAI,CAAC,kBAAkB,CAAC,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC;QACjE,IAAI,CAAC,kBAAkB,CAAC,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC;IACnE,CAAC;IAED,cAAc,CAAC,KAAqB;QAClC,IAAI,CAAC,kBAAkB,CAAC,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;QACjD,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;QACzC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC;QACvC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,GAAG,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;IACvC,CAAC;IACD,mBAAmB,CAAC,KAAqB;QACvC,IAAI,CAAC,kBAAkB,CAAC,aAAa,GAAG,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;IACxD,CAAC;IACD,iBAAiB,CAAC,KAAqB;QACrC,IAAI,CAAC,kBAAkB,CAAC,WAAW,GAAG,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;QACpD,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;IAC3B,CAAC;IACD,iBAAiB,CAAC,KAAqB;QACrC,IAAI,CAAC,kBAAkB,CAAC,WAAW,GAAG,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;IACtD,CAAC;IACD,mBAAmB,CAAC,KAAqB;QACvC,IAAI,CAAC,kBAAkB,CAAC,aAAa,GAAG,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;IACxD,CAAC;IACD,eAAe,CAAC,CAAC;QAEb,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,IAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;IAC1G,CAAC;IACD,gBAAgB,CAAC,CAAC;QAChB,IAAI,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC;QAC/B,IAAI,CAAC,mBAAmB,GAAE,KAAK,CAAC;QAChC,IAAI,CAAC,cAAc,GAAE,KAAK,CAAC,CAAC,WAAW;QACvC,IAAI,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,IAAI,CAAC,EAAE;YAChC,IAAI,CAAC,KAAK,CAAC,WAAW,GAAG,MAAM,CAAC;YAChC,IAAI,CAAC,KAAK,CAAC,eAAe,GAAG,MAAM,CAAC;YACpC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,GAAG,CAAC,CAAC;YAC3B,IAAI,CAAC,KAAK,CAAC,YAAY,GAAG,KAAK,CAAC;YAChC,IAAI,CAAC,KAAK,CAAC,WAAW,GAAG,KAAK,CAAC;YAC/B,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE,GAAG,CAAC,CAAC;YAC7B,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,GAAG,CAAC,CAAC;SAC3B;QACD,IAAI,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,IAAI,CAAC,EAAE;YAChC,IAAI,CAAC,KAAK,CAAC,WAAW,GAAG,MAAM,CAAC;YAChC,IAAI,CAAC,KAAK,CAAC,eAAe,GAAG,OAAO,CAAC;YACrC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,GAAG,CAAC,CAAC;YAC3B,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE,GAAG,CAAC,CAAC;SAE9B;QACD,IAAI,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,IAAI,CAAC,EAAE;YAChC,IAAI,CAAC,KAAK,CAAC,WAAW,GAAG,KAAK,CAAC;YAC/B,IAAI,CAAC,KAAK,CAAC,eAAe,GAAG,MAAM,CAAC;YACpC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE,GAAG,CAAC,CAAC;YAC7B,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,CAAC;YAC3B,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,GAAG,CAAC,CAAC;YAC3B,IAAI,CAAC,cAAc,GAAE,IAAI,CAAC;SAC3B;QACD,IAAI,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,IAAI,CAAC,EAAE;YAChC,IAAI,CAAC,KAAK,CAAC,WAAW,GAAG,UAAU,CAAC;YACpC,IAAI,CAAC,KAAK,CAAC,eAAe,GAAG,OAAO,CAAC;YACrC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE,GAAG,EAAE,CAAC;YAC9B,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,CAAC;YAC3B,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,GAAG,CAAC,CAAC;SAC5B;QACD,IAAI,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,IAAI,CAAC,EAAE;YAChC,IAAI,CAAC,KAAK,CAAC,WAAW,GAAG,MAAM,CAAC;YAChC,IAAI,CAAC,KAAK,CAAC,eAAe,GAAG,KAAK,CAAC;YACnC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,GAAG,CAAC,CAAC;YAC3B,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,CAAC;YAC3B,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE,GAAG,EAAE,CAAC;YAE9B,aAAa;YACb,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC;YACjC,kFAAkF;YACjF,IAAI,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC;YACrC,MAAM,YAAY,GAAG,GAAG,CAAC,OAAO,CAAC,UAAU,EAAC,EAAE,CAAC,CAAC;YAChD,MAAM,KAAK,GAAG,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YACtC,IAAG,KAAK,CAAC,MAAM,GAAG,CAAC,EACnB;gBACE,GAAG,GAAE,KAAK,CAAC,CAAC,CAAC,GAAE,GAAG,GAAE,KAAK,CAAC,CAAC,CAAC,CAAC;aAC9B;YACD,2BAA2B;YAC3B,IAAG,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,EAClC;gBACE,GAAG,GAAE,KAAK,CAAC,CAAC,CAAC,GAAE,GAAG,GAAE,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,EAAC,CAAC,CAAC,CAAC;aAC7C;YACD,IAAI,CAAC,KAAK,CAAC,eAAe,GAAG,GAAG,CAAC,CAAC,2BAA2B;SAC9D;QACD,IAAI,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC;IACjC,CAAC;IAGD,eAAe,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,CAAC,EAAE;YACV,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE,GAAG,CAAC,CAAC;SAC9B;QACD,gBAAgB;QAChB,IAAI,CAAC,IAAI,CAAC,EAAE;YACV,IAAI,CAAC,KAAK,CAAC,eAAe,GAAG,MAAM,CAAC;SACrC;QACD,IAAI,CAAC,IAAI,CAAC,EAAE;YACV,IAAI,CAAC,KAAK,CAAC,eAAe,GAAG,MAAM,CAAC;SACrC;QACD,IAAI,CAAC,IAAI,CAAC,EAAE;YACV,IAAI,CAAC,KAAK,CAAC,eAAe,GAAG,MAAM,CAAC;SACrC;IACH,CAAC;IAED,sBAAsB,CAAC,EAAE;QACvB,IAAI,CAAC,aAAa,CAAC,sBAAsB,CAAC,EAAE,CAAC,CAAC,SAAS,CACrD,CAAC,QAAmB,EAAE,EAAE;YACtB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QAC3B,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,sCAAsC,CAAC,CAAC;QAC9D,CAAC,CACF,CAAC;IACJ,CAAC;IACD,cAAc,CAAC,CAAC;QACd,kBAAkB;QAClB,IAAI,CAAC,uBAAuB,CAAC,CAAC,CAAC,CAAC;IAClC,CAAC;IAED,YAAY;QACV,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,SAAS,CAC9D,GAAG,EAAE;YACH,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YACrB,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC;YAC5C,IAAI,CAAC,WAAW,EAAE,CAAC;QACrB,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,yBAAyB,CAAC,CAAC;QACjD,CAAC,CACF,CAAC;QACF,mBAAmB;IACrB,CAAC;IAED,eAAe;QACb,IAAI,CAAC,aAAa,CAAC,eAAe,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC,SAAS,CACrE,GAAG,EAAE;YACH,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YACrB,IAAI,CAAC,cAAc,EAAE,CAAC;YACtB,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,uBAAuB,CAAC,CAAC;QACjD,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAC;QACpD,CAAC,CACF,CAAC;IACJ,CAAC;IAED,iBAAiB;QACf,IAAI,CAAC,aAAa,CAAC,iBAAiB,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,SAAS,CACxE,GAAG,EAAE;YACH,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YACrB,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACxB,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,0BAA0B,CAAC,CAAC;QACpD,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,+BAA+B,CAAC,CAAC;QACvD,CAAC,CACF,CAAC;IACJ,CAAC;IACD,eAAe;QACb,IAAI,CAAC,aAAa,CAAC,eAAe,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,SAAS,CACpE,GAAG,EAAE;YACH,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YACrB,IAAI,CAAC,cAAc,EAAE,CAAC;YACtB,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,uBAAuB,CAAC,CAAC;QACjD,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAC;QACpD,CAAC,CACF,CAAC;IACJ,CAAC;IACD,eAAe;QACb,IAAI,CAAC,aAAa,CAAC,eAAe,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,SAAS,CACpE,GAAG,EAAE;YACH,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YACrB,IAAI,CAAC,aAAa,EAAE,CAAC;YACrB,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,uBAAuB,CAAC,CAAC;QACjD,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAC;QACpD,CAAC,CACF,CAAC;IACJ,CAAC;IACD,iBAAiB;QACf,IAAI,CAAC,aAAa,CAAC,iBAAiB,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,SAAS,CACxE,GAAG,EAAE;YACH,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YACrB,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACxB,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,0BAA0B,CAAC,CAAC;QACpD,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,+BAA+B,CAAC,CAAC;QACvD,CAAC,CACF,CAAC;IACJ,CAAC;IAED,SAAS,CAAC,QAA0B;QAClC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACnD,CAAC;IACD,UAAU;QACR,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;QACrB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;IACvB,CAAC;IACD,2BAA2B,CAAC,KAAW;QACrC,IAAI,CAAC,kBAAkB,CAAC,cAAc,GAAG,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IAC3E,CAAC;IACD,yBAAyB,CAAC,KAAW;QACnC,IAAI,CAAC,kBAAkB,CAAC,YAAY,GAAG,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QACvE,qDAAqD;IACvD,CAAC;IACD,oBAAoB,CAAC,KAAW;QAC9B,IAAI,CAAC,kBAAkB,CAAC,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAC9D,4CAA4C;IAC9C,CAAC;IACD,oBAAoB,CAAC,KAAW;QAC9B,IAAI,CAAC,kBAAkB,CAAC,OAAO,GAAG,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAClE,gDAAgD;IAClD,CAAC;IACD,yBAAyB,CAAC,KAAW;QACnC,IAAI,CAAC,kBAAkB,CAAC,YAAY,GAAG,KAAK,CAAC;QAC7C,qDAAqD;IACvD,CAAC;IACD,uBAAuB,CAAC,KAAW;QACjC,IAAI,CAAC,kBAAkB,CAAC,WAAW,GAAG,KAAK,CAAC;QAC5C,mDAAmD;IACrD,CAAC;;sGAtpBU,2BAA2B;yHAA3B,2BAA2B;;;;;;;;;QClCxC,yEAA4B;QAC1B;QAAA,wEAAuB;QACrB;QAAA,wEAA4B;QAC1B;QAAA,uEAAkC;QAAA,+DAAI;QAAA,4DAAI;QAC5C;QAAA,4DAAK;QACL;QAAA,yEAA4B;QAC1B;QAAA,wEAA8B;QAAA,kEAAM;QAAA,4DAAI;QAC1C;QAAA,4DAAK;QACL;QAAA,yEAAmC;QAAA,gEAAI;QAAA,4DAAK;QAC9C;QAAA,4DAAK;QAEL;QAAA,0EAAiB;QACf;QAAA,0EAAsB;QACpB;QAAA,yEAAiB;QAAA,wDAA0B;QAAA,4DAAK;QAClD;QAAA,4DAAM;QACN;QAAA,0EAAsB;QACpB;QAAA,yHAEM;QACR;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAAA,0EAAiB;QACf;QAAA,2EAAsB;QACpB;QAAA,2EAAkB;QAChB;QAAA,sEAA+F;QAC/F;QAAA,2EAAuB;QACrB;QAAA,uEAAK;QACH;QAAA,0EAAQ;QAAA,sEAAU;QAAA,4DAAS;QAC3B;QAAA,qEAAG;QAAA,wDAA6F;;;QAAA,4DAAI;QACtG;QAAA,4DAAM;QACN;QAAA,uEAAK;QACH;QAAA,0EAAQ;QAAA,kEAAM;QAAA,4DAAS;QACvB;QAAA,qEAAG;QAAA,wDAAwB;QAAA,4DAAI;QACjC;QAAA,4DAAM;QACN;QAAA,uEAAK;QACH;QAAA,0EAAQ;QAAA,+DAAG;QAAA,4DAAS;QACpB;QAAA,qEAAG;QAAA,wDAAmC;;QAAA,4DAAI;QAC5C;QAAA,4DAAM;QACN;QAAA,uEAAK;QACH;QAAA,0EAAQ;QAAA,kEAAM;QAAA,4DAAS;QACvB;QAAA,qEAAG;QAAA,wDAA0B;QAAA,4DAAI;QACnC;QAAA,4DAAM;QACR;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAAA,2EAAyB;QACvB;QAAA,8EAC6B;QAA3B,wJAAW,kBAAc,IAAC;QAAC,wEAAY;QAAA,4DAAS;QACpD;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAAA,2EAAsB;QACpB;QAAA,gFAA+E;QAAhD,wJAAY,kBAAc,IAAC;QACxD;QAAA,2EAAuB;QACrB;QAAA,kFAAyC;QACvC;QAAA,4EAA6B;QAC3B;QAAA,4EAAsB;QACpB;QAAA,4EAAiC;QAC/B;QAAA,8EAA2B;QAAA,4EAAe;QAAA,4DAAQ;QAClD;QAAA,mFACmF;QADlC,8MAAgC,+FAC7C,4CAAoC,IADS;QAE/E;QAAA,kIAA6F;QAC/F;QAAA,4DAAS;QACX;QAAA,4DAAM;QACN;QAAA,4EAAiC;QAC/B;QAAA,8EAA8B;QAAA,gFAAmB;QAAA,4DAAQ;QACzD;QAAA,kFACkE;QAAhE,4MAA+B;QADjC,4DACkE;QACpE;QAAA,4DAAM;QAEN;QAAA,4EAAiC;QAC/B;QAAA,8EAAyB;QAAA,0EAAa;QAAA,4DAAQ;QAC9C;QAAA,mFACuD;QADR,4MAA8B,+FACjE,wCAAgC,IADiC;QAE3E;QAAA,kIAAqF;QACvF;QAAA,4DAAS;QACX;QAAA,4DAAM;QACN;QAAA,4EAAiC;QAC/B;QAAA,8EAAgC;QAAA,kFAAqB;QAAA,4DAAQ;QAC7D;QAAA,mFACiH;QAA/G,0OAAgC,+FAAkC,oEAAkC,IAApE;QAChC;QAAA,kIAAyF;QAC3F;QAAA,4DAAS;QACX;QAAA,4DAAM;QAER;QAAA,4DAAM;QACN;QAAA,4EAAsB;QACpB;QAAA,4EAAiC;QAC/B;QAAA,8EAAgC;QAAA,uEAAU;QAAA,4DAAQ;QAClD;QAAA,mFAC8C;QAA5C,4OAAkC;QAClC;QAAA,kIAAiG;QACnG;QAAA,4DAAS;QACX;QAAA,4DAAM;QACN;QAAA,4EAAiC;QAC/B;QAAA,8EAAkC;QAAA,6EAAgB;QAAA,4DAAQ;QAE1D;QAAA,kFACqC;QADlB,gKAAY,gCAA4B,IAAC,kGAAU,6BAAyB,IAAnC;QAA5D,4DACqC;QAEnC;QAAA,8EAA4B;QAAA,yDAAmN;QAAA,4DAAQ;QAE3P;QAAA,4DAAM;QAEnB;QAEA;QAAA,6IAkBY;QAED;QAAA,4DAAM;QACN;QAAA,2EAAiB;QACf;QAAA,4EAAkC;QAChC;QAAA,8EAA6B;QAAA,wEAAW;QAAA,4DAAQ;QAChD;QAAA,kFAE+C;QAFP,4MAA+B,0HAEhD,0BAAsB,IAF0B;QAAvE,4DAE+C;QACjD;QAAA,4DAAM;QACN;QAAA,4EAAsB;QACpB;QAAA,+EAAoF;QAA9B,sSAAS,6EAAmB,KAAC;QACjF;QAAA,qEAAiC;QACnC;QAAA,4DAAS;QACX;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAAA,4EAAsB;QACpB;QAAA,4EAAiC;QAC/B;QAAA,8EAA4B;QAAA,6EAAgB;QAAA,4DAAQ;QACpD;QAAA,kFAE8E;QAD5E,+MAAkC,kHACjB,uCAAmC,IADlB;QADpC,4DAE8E;QAChF;QAAA,4DAAM;QACN;QAAA,4EAAiC;QAC/B;QAAA,8EAA4B;QAAA,2EAAc;QAAA,4DAAQ;QAClD;QAAA,kFAE4E;QAD1E,6MAAgC,kHACf,qCAAiC,IADlB;QADlC,4DAE4E;QAC9E;QAAA,4DAAM;QACN;QAAA,4EAAiC;QAC/B;QAAA,8EAAsB;QAAA,gEAAG;QAAA,4DAAQ;QACjC;QAAA,kFAEe;QAFa,oMAAuB,kHACqB,gCAA4B,IADjD;QAAnD,4DAEe;QACjB;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAAA,4EAAsB;QACpB;QAAA,4EAAkC;QAChC;QAAA,8EAA8B;QAAA,wEAAW;QAAA,4DAAQ;QACjD;QAAA,kFAGoD;QAHU,kNAAqC,0HAG5E,+BAA2B,IAHiD;QAAnG,4DAGoD;QACtD;QAAA,4DAAM;QACN;QAAA,4EAAsB;QACpB;QAAA,+EAA+F;QAAzC,sSAAS,6EAA8B,KAAC;QAC5F;QAAA,qEAAiC;QACnC;QAAA,4DAAS;QACX;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAAA,4EAAuB;QACrB;QAAA,4EAAiC;QAC/B;QAAA,2EAAiB;QACf;QAAA,4EAAuB;QACrB;QAAA,8EAA4B;QAAA,sEAAS;QAAA,4DAAQ;QAC7C;QAAA,kFAGkD;QAHU,+MAAkC,0HAGvE,6BAAyB,IAH8C;QAA9F,4DAGkD;QACpD;QAAA,4DAAM;QACN;QAAA,4EAAsB;QACpB;QAAA,+EAA6F;QAAvC,sSAAS,6EAA4B,KAAC;QAC1F;QAAA,qEAAiC;QACnC;QAAA,4DAAS;QACX;QAAA,4DAAM;QACR;QAAA,4DAAM;QAER;QAAA,4DAAM;QACN;QAAA,4EAAiC;QAC/B;QAAA,8EAA+B;QAAA,2EAAc;QAAA,4DAAQ;QACrD;QAAA,kFAEwD;QAFhB,4MAA+B,0HAEhD,0BAAsB,IAF0B;QAAvE,4DAEwD;QAC1D;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAAA,4EAAsB;QACpB;QAAA,4EAAiC;QAC/B;QAAA,8EAA8B;QAAA,0EAAa;QAAA,4DAAQ;QACnD;QAAA,kFACmC;QADK,2MAA8B;QAAtE,4DACmC;QACrC;QAAA,4DAAM;QACN;QAAA,4EAAiC;QAC/B;QAAA,2EAAiB;QACf;QAAA,4EAAuB;QACrB;QAAA,8EAA8B;QAAA,yEAAY;QAAA,4DAAQ;QAClD;QAAA,kFAGgF;QAF9E,kNAAqC,0HAEY,+BAA2B,IAFvC;QADvC,4DAGgF;QAClF;QAAA,4DAAM;QACN;QAAA,4EAAsB;QACpB;QAAA,+EAAyF;QAAnC,sSAAS,6EAAwB,KAAC;QACtF;QAAA,qEAAiC;QACnC;QAAA,4DAAS;QACX;QAAA,4DAAM;QACR;QAAA,4DAAM;QAER;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAAA,4EAAsB;QACpB;QAAA,4EAAkC;QAChC;QAAA,2EAAiB;QACf;QAAA,4EAAuB;QACrB;QAAA,8EAA4B;QAAA,sEAAS;QAAA,4DAAQ;QAC7C;QAAA,mFAC6C;QAA3C,+MAAiC;QACjC;QAAA,kIACS;QACX;QAAA,4DAAS;QACX;QAAA,4DAAM;QACN;QAAA,4EAAsB;QACpB;QAAA,+EAA6F;QAAvC,sSAAS,6EAA4B,KAAC;QAC1F;QAAA,qEAAiC;QACnC;QAAA,4DAAS;QACX;QAAA,4DAAM;QACR;QAAA,4DAAM;QACR;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAAA,4EAAsB;QACpB;QAAA,4EAAkC;QAChC;QAAA,8EAA8B;QAAA,sEAAS;QAAA,4DAAQ;QAC/C;QAAA,kFAGkD;QAHU,+MAAkC,0HAGvE,6BAAyB,IAH8C;QAA9F,4DAGkD;QACpD;QAAA,4DAAM;QACN;QAAA,4EAAsB;QACpB;QAAA,+EAA6F;QAAvC,sSAAS,6EAA4B,KAAC;QAC1F;QAAA,qEAAiC;QACnC;QAAA,4DAAS;QACX;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAAA,4EAAsB;QACpB;QAAA,4EAAiC;QAC/B;QAAA,8EAA4B;QAAA,mEAAM;QAAA,4DAAQ;QAC1C;QAAA,mFAAiG;QAA9B,2MAA6B;QAC9F;QAAA,kIAAwF;QAC1F;QAAA,4DAAS;QACX;QAAA,4DAAM;QACR;QAAA,4DAAM;QAER;QAAA,4DAAM;QACN;QAAA,4EAAsB;QACpB;QAAA,oGAAuF;QACzF;QAAA,4DAAM;QACN;QAAA,4EAA8B;QAC5B;QAAA,4EAAsB;QACpB;QAAA,4EAAkC;QAChC;QAAA,8EAA6B;QAAA,yEAAY;QAAA,4DAAQ;QACjD;QAAA,kFAC+B;QADS,kNAAqC;QAA7E,4DAC+B;QACjC;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAAA,4EAAsB;QACpB;QAAA,4EAAiC;QAC/B;QAAA,8EAA6B;QAAA,2EAAc;QAAA,4DAAQ;QACnD;QAAA,kFACyB;QADe,4MAA+B;QAAvE,4DACyB;QAC3B;QAAA,4DAAM;QACN;QAAA,4EAAiC;QAC/B;QAAA,8EAAsB;QAAA,yDAAmC;;QAAA,4DAAQ;QACjE;QAAA,kFAEe;QAFyB,wMAA2B,kHACD,gCAA4B,IAD3B;QAAnE,4DAEe;QACjB;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAAA,4EAAsB;QACpB;QAAA,4EAAiC;QAC/B;QAAA,8EAA6B;QAAA,yEAAY;QAAA,4DAAQ;QACjD;QAAA,kFACyB;QADe,4MAA+B;QAAvE,4DACyB;QAC3B;QAAA,4DAAM;QACR;QAAA,4DAAM;QAEN;QAAA,4EAAsB;QACpB;QAAA,4EAAiC;QAC/B;QAAA,8EAA6B;QAAA,2FAA8B;QAAA,4DAAQ;QACnE;QAAA,kFAEmE;QAF3B,6MAAgC,kHAErD,qCAAiC,IAFoB;QAAxE,4DAEmE;QACrE;QAAA,4DAAM;QACN;QAAA,4EAAiC;QAC/B;QAAA,8EAA6B;QAAA,0FAA6B;QAAA,4DAAQ;QAClE;QAAA,kFAEiE;QAFzB,4MAA+B,kHAEpD,mCAA+B,IAFqB;QAAvE,4DAEiE;QACnE;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAAA,4EAAsB;QACpB;QAAA,4EAAiC;QAC/B;QAAA,8EAA6B;QAAA,mEAAM;QAAA,4DAAQ;QAC3C;QAAA,mFAA0F;QAAlD,oMAAuB;QAA/D,4DAA0F;QAC5F;QAAA,4DAAM;QACN;QAAA,4EAAiC;QAC/B;QAAA,8EAA6B;QAAA,sEAAS;QAAA,4DAAQ;QAC9C;QAAA,oFAA0F;QAAlD,oMAAuB;QAA/D,4DAA0F;QAC5F;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAAA,4EAAsB;QACpB;QAAA,4EAAkC;QAChC;QAAA,+EAA0B;QAAA,kEAAK;QAAA,4DAAQ;QACvC;QAAA,uFAC8B;QAA5B,2MAA2B;QAAC,4DAAW;QAC3C;QAAA,4DAAM;QACR;QAAA,4DAAM;QAER;QAAA,4DAAM;QACN;QAAA,6EAA6B;QAC3B;QAAA,wFAAkE;QACpE;QAAA,4DAAM;QACN;QAAA,6EAAyB;QACvB;QAAA,4EAAsB;QACpB;QAAA,4EAAiC;QAC/B;QAAA,+EAAuC;QAAA,0EAAa;QAAA,4DAAQ;QAC5D;QAAA,6EAA4B;QAC1B;QAAA,oFAC6D;QAA3D,6MAAgC;QAA2B,yDAAsB;QAAA,4DAAQ;QAC7F;QAAA,4DAAM;QACN;QAAA,oFAC6B;QADgC,8MAAiC;QAA9F,4DAC6B;QAC/B;QAAA,4DAAM;QACN;QAAA,4EAAiC;QAC/B;QAAA,+EAAuC;QAAA,wEAAW;QAAA,4DAAQ;QAC1D;QAAA,6EAA4B;QAC1B;QAAA,oFAC2D;QAAzD,2MAA8B;QAA2B,yDAAoB;QAAA,4DAAQ;QACzF;QAAA,4DAAM;QACN;QAAA,oFAC4B;QADgC,6MAAgC;QAA5F,4DAC4B;QAC9B;QAAA,4DAAM;QACN;QAAA,4EAAiC;QAC/B;QAAA,+EAAuC;QAAA,2EAAc;QAAA,4DAAQ;QAC7D;QAAA,6EAA4B;QAC1B;QAAA,oFAC6D;QAA3D,6MAAgC;QAA2B,yDAAsB;QAAA,4DAAQ;QAC7F;QAAA,4DAAM;QACN;QAAA,oFAC6B;QADgC,8MAAiC;QAA9F,4DAC6B;QAC/B;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAAA,4EAAsB;QACpB;QAAA,4EAAiC;QAC/B;QAAA,+EAAyB;QAAA,+EAAkB;QAAA,4DAAQ;QACnD;QAAA,oFACyB;QADe,4MAA+B;QAAvE,4DACyB;QAC3B;QAAA,4DAAM;QACN;QAAA,4EAAiC;QAC/B;QAAA,+EAAmC;QAAA,kFAAqB;QAAA,4DAAQ;QAChE;QAAA,oFAC2B;QADa,8MAAiC;QAAzE,4DAC2B;QAC7B;QAAA,4DAAM;QACN;QAAA,4EAAiC;QAC/B;QAAA,+EAAmC;QAAA,kFAAqB;QAAA,4DAAQ;QAChE;QAAA,oFAC2B;QADa,8MAAiC;QAAzE,4DAC2B;QAC7B;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAAA,kEAAI;QACJ;QAAA,4EAAsB;QACpB;QAAA,4EAAiC;QAC/B;QAAA,+EAAyB;QAAA,uEAAU;QAAA,4DAAQ;QAC3C;QAAA,oFACmB;QADqB,0MAA6B;QAArE,4DACmB;QACrB;QAAA,4DAAM;QACN;QAAA,4EAAiC;QAC/B;QAAA,+EAAyB;QAAA,8EAAiB;QAAA,4DAAQ;QAClD;QAAA,oFACoB;QADoB,2MAA8B;QAAtE,4DACoB;QACtB;QAAA,4DAAM;QACN;QAAA,4EAAiC;QAC/B;QAAA,+EAAyB;QAAA,uEAAU;QAAA,4DAAQ;QAC3C;QAAA,oFACmB;QADqB,0MAA6B;QAArE,4DACmB;QACrB;QAAA,4DAAM;QACR;QAAA,4DAAM;QAGR;QAAA,4DAAM;QACN;QAqBF;QAAA,4DAAS;QACX;QAAA,4DAAM;QACR;QAAA,4DAAO;QACT;QAAA,4DAAM;QACR;QAAA,4DAAM;QACR;QAAA,4DAAM;QAEN;QAAA,0NA6Bc;QAEd;QAAA,0NAiBc;QAEd;QAAA,0NAiBc;QAEd;QAAA,0NAwBc;QAEd;QAAA,0NAuBc;QAEd;QAAA,0NAkBc;;;QAnjBL,0DAA8B;QAA9B,8IAA8B;QAG9B,0DAA0B;QAA1B,8IAA0B;QAOZ,2DAA0B;QAA1B,sHAA0B;QAGrC,0DAA0B;QAA1B,2EAA0B;QAQkB,2DAAuC;QAAvC,0KAAuC;QAIhF,2DAA6F;QAA7F,6VAA6F;QAI7F,2DAAwB;QAAxB,oHAAwB;QAIxB,0DAAmC;QAAnC,4LAAmC;QAInC,2DAA0B;QAA1B,oHAA0B;QAKzB,0DAAkC;QAAlC,gFAAkC;QAYiB,2DAAgC;QAAhC,2FAAgC;QAElD,0DAAY;QAAZ,kFAAY;QAMzC,0DAA+B;QAA/B,0FAA+B;QAKc,0DAA8B;QAA9B,yFAA8B;QAEhD,0DAAU;QAAV,gFAAU;QAMrC,0DAAgC;QAAhC,qHAAgC;QACJ,0DAAW;QAAX,iFAAW;QASvC,2DAAkC;QAAlC,uHAAkC;QACJ,0DAAa;QAAb,mFAAa;QAM0E,0DAAmC;QAAnC,8FAAmC;QAG5H,0DAAmN;QAAnN,4YAAmN;QAMnP,0DAAuB;QAAvB,oFAAuB;QAwBmB,2DAA+B;QAA/B,0FAA+B;QAcrE,2DAAkC;QAAlC,6FAAkC;QAMlC,0DAAgC;QAAhC,2FAAgC;QAKN,0DAAuB;QAAvB,kFAAuB;QAQW,2DAAqC;QAArC,gGAAqC;QAgBnC,2DAAkC;QAAlC,6FAAkC;QAe1D,2DAA+B;QAA/B,0FAA+B;QAQ/B,2DAA8B;QAA9B,yFAA8B;QAQhE,2DAAqC;QAArC,gGAAqC;QAmBrC,2DAAiC;QAAjC,4FAAiC;QACH,0DAAa;QAAb,mFAAa;QAeW,2DAAkC;QAAlC,6FAAkC;QAc3B,2DAA6B;QAA7B,wFAA6B;QACnE,0DAAW;QAAX,iFAAW;QAOV,0DAAiB;QAAjB,8EAAiB;QAMP,2DAAqC;QAArC,gGAAqC;QAOrC,2DAA+B;QAA/B,0FAA+B;QAIjD,0DAAmC;QAAnC,0KAAmC;QACjB,0DAA2B;QAA3B,sFAA2B;QAQ3B,2DAA+B;QAA/B,0FAA+B;QAQ/B,2DAAgC;QAAhC,2FAAgC;QAMhC,0DAA+B;QAA/B,0FAA+B;QAQ/B,2DAAuB;QAAvB,kFAAuB;QAIvB,0DAAuB;QAAvB,kFAAuB;QAO7D,2DAA2B;QAA3B,sFAA2B;QAMZ,0DAAsB;QAAtB,mFAAsB;QAQnC,2DAAgC;QAAhC,2FAAgC;QAA2B,0DAAsB;QAAtB,uFAAsB;QAExB,0DAAiC;QAAjC,4FAAiC;QAO1F,2DAA8B;QAA9B,yFAA8B;QAA2B,0DAAoB;QAApB,qFAAoB;QAErB,0DAAgC;QAAhC,2FAAgC;QAOxF,2DAAgC;QAAhC,2FAAgC;QAA2B,0DAAsB;QAAtB,uFAAsB;QAExB,0DAAiC;QAAjC,4FAAiC;QAOtD,2DAA+B;QAA/B,0FAA+B;QAK/B,0DAAiC;QAAjC,4FAAiC;QAKjC,0DAAiC;QAAjC,4FAAiC;QAQjC,2DAA6B;QAA7B,wFAA6B;QAK7B,0DAA8B;QAA9B,yFAA8B;QAK9B,0DAA6B;QAA7B,wFAA6B;;;;;;;;;;;;;;;;;;;;;;;ACzYjB;;;;;;;;;ICEhE,sEAA0B;IACtB;IAAA,yEAAiB;IACf;IAAA,yEAAiB;IACb;IAAA,oEAAuB;IACzB;IAAA,oEAAuB;IACvB;IAAA,qEAAuB;IACvB;IAAA,qEAAuB;IACvB;IAAA,qEAAuB;IACvB;IAAA,qEAAuB;IACvB;IAAA,qEAAuB;IACvB;IAAA,qEAAuB;IACvB;IAAA,sEAA0B;IAC5B;IAAA,4DAAM;IACR;IAAA,4DAAM;IACV;IAAA,4DAAM;;;;IAkBN;IAAA,0EAA0B;IACxB;IAAA,yEAAkC;IAAA,wFAA6B;IAAA,4DAAK;IACpE;IAAA,6EAA4F;IAA1B,kTAAS,gFAAe,KAAC;IACzF;IAAA,2EAAyB;IAAA,iEAAO;IAAA,4DAAO;IACzC;IAAA,4DAAS;IACX;IAAA,4DAAM;IACN;IAAA,2EAAwB;IACpB;IAAA,kFAAiC;IAC7B;IAAA,2EAAsB;IACpB;IAAA,2EAAiC;IAC/B;IAAA,6EAAyB;IAAA,wEAAY;IAAA,4DAAQ;IAC7C;IAAA,6EACuC;IADE,wUAAa,iGACnE,IAD0F;IAA7E,4DACuC;IACzC;IAAA,4DAAM;IACN;IAAA,2EAAiC;IAC/B;IAAA,yEAAQ;IAAA,uEAAW;IAAA,4DAAQ;IAC3B;IAAA,6EAAmH;IAA5E,wUAAa,iGAA8B,IAAP;IAA3E,4DAAmH;IACrH;IAAA,4DAAM;IACR;IAAA,4DAAM;IAEN;IAAA,2EAAsB;IACpB;IAAA,2EAAiC;IAC/B;IAAA,yEAAQ;IAAA,oEAAQ;IAAA,4DAAQ;IACxB;IAAA,6EAA0G;IAAlE,wUAAa,4FAAyB,IAAP;IAAvE,4DAA0G;IAC5G;IAAA,4DAAM;IACN;IAAA,2EAAiC;IAC/B;IAAA,yEAAQ;IAAA,sEAAU;IAAA,4DAAQ;IAC1B;IAAA,6EAAwH;IAAhF,wUAAa,mGAAgC,IAAP;IAA9E,4DAAwH;IAC1H;IAAA,4DAAM;IACR;IAAA,4DAAM;IAEN;IAAA,2EAAsB;IACpB;IAAA,2EAAkC;IAChC;IAAA,yEAAQ;IAAA,qEAAS;IAAA,4DAAQ;IACzB;IAAA,6EAAwH;IAAhF,yUAAa,oGAAgC,IAAP;IAA9E,4DAAwH;IAC1H;IAAA,4DAAM;IACN;IAAA,2EAAkC;IAChC;IAAA,yEAAQ;IAAA,qEAAS;IAAA,4DAAQ;IACzB;IAAA,6EAAwH;IAAhF,yUAAa,oGAAgC,IAAP;IAA9E,4DAAwH;IAC1H;IAAA,4DAAM;IACR;IAAA,4DAAM;IACR;IAAA,4DAAO;IACb;IAAA,4DAAM;IACN;IAAA,2EAA0B;IACtB;IAAA,8EAAwE;IAAlD,oTAAS,iFAAe,KAAC;IAAyB,0EAAc;IAAA,4DAAS;IAC/F;IAAA,8EAAuE;IAAjD,oTAAS,8EAAY,KAAC;IAA2B,kEAAM;IAAA,4DAAS;IACxF;IAAA,4DAAM;IACV;;;IApCuD,2DAAoC;IAApC,kGAAoC;IAKtC,0DAAoC;IAApC,kGAAoC;IAOnC,2DAA+B;IAA/B,6FAA+B;IAI/B,0DAAsC;IAAtC,oGAAsC;IAOtC,2DAAsC;IAAtC,oGAAsC;IAItC,0DAAsC;IAAtC,oGAAsC;;AD5DzF,MAAM,2BAA2B;IAuCtC,YAAoB,SAAiC,EAAU,QAAyB,EAC5E,YAA4B,EAAU,aAA4B;QAD1D,cAAS,GAAT,SAAS,CAAwB;QAAU,aAAQ,GAAR,QAAQ,CAAiB;QAC5E,iBAAY,GAAZ,YAAY,CAAgB;QAAU,kBAAa,GAAb,aAAa,CAAe;QArC9E,iBAAY,GAAG,KAAK,CAAC;QACd,eAAU,GAAQ;YACvB,OAAO,EAAE,IAAI;YACb,MAAM,EAAE,IAAI;YACZ,GAAG,EAAE,IAAI;YACT,YAAY,EAAE,IAAI;YAClB,WAAW,EAAE,IAAI;YACjB,WAAW,EAAE,IAAI;YACjB,wBAAwB,EAAE,IAAI;YAC9B,gBAAgB,EAAE,IAAI;YACtB,gBAAgB,EAAE,IAAI;YACtB,kBAAkB,EAAE,IAAI;YACxB,WAAW,EAAE,IAAI;YACjB,wBAAwB,EAAE,IAAI;YAC9B,2BAA2B,EAAE,IAAI;YACjC,gBAAgB,EAAE,IAAI;YACtB,aAAa,EAAE,IAAI;YACnB,aAAa,EAAE,IAAI;YACnB,cAAc,EAAE,IAAI;YACpB,eAAe,EAAE,IAAI;YACrB,eAAe,EAAE,IAAI;YACrB,MAAM,EAAE,IAAI;YACZ,WAAW,EAAE,IAAI;YACjB,aAAa,EAAE,IAAI;YACnB,cAAc,EAAE,IAAI;YACpB,WAAW,EAAE,IAAI;YACjB,WAAW,EAAE,IAAI;YACjB,GAAG,EAAE,IAAI;YACT,QAAQ,EAAE,IAAI;YACd,YAAY,EAAE,IAAI;YAClB,cAAc,EAAE,IAAI;YACpB,OAAO,EAAE,IAAI;YACb,iBAAiB,EAAE,IAAI;YACvB,cAAc,EAAE,IAAI;SACrB,CAAC;IAGgF,CAAC;IAEnF,QAAQ;QACN,4BAA4B;IAC9B,CAAC;IACD,cAAc,CAAC,QAA0B;QACvC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;QAC5B,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;QACzB,IAAI,CAAC,SAAS,CAAC,kBAAkB,CAAC,EAAE,CAAC,CAAC,SAAS,CAC7C,CAAC,MAAW,EAAE,EAAE;YACd,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC;YACzB,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;YAC1B,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QAC3B,CAAC,EAAE,KAAK,CAAC,EAAE;YACT,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CACF,CAAC;IACJ,CAAC;IACD,SAAS,CAAC,QAA0B;QAClC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACnD,CAAC;IACD,SAAS;QACP,IAAI,CAAC,MAAM,CAAC,WAAW,GAAG,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC;QACxD,IAAI,CAAC,MAAM,CAAC,WAAW,GAAG,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC;QAC1D,IAAI,CAAC,MAAM,CAAC,GAAG,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;QACzC,IAAI,CAAC,MAAM,CAAC,GAAG,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;QACtC,IAAI,CAAC,MAAM,CAAC,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;QAE7C,IAAI,CAAC,MAAM,CAAC,WAAW,GAAG,IAAI,CAAC,UAAU,CAAC,gBAAgB,CAAC;QAC3D,IAAI,CAAC,MAAM,CAAC,YAAY,GAAG,IAAI,CAAC,UAAU,CAAC,gBAAgB,CAAC;QAC5D,IAAI,CAAC,MAAM,CAAC,GAAG,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC;QAE1C,IAAI,CAAC,MAAM,CAAC,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC;QAE9C,sCAAsC;IACxC,CAAC;IACD,aAAa;QACX,IAAI,CAAC,SAAS,EAAE,CAAC;QACjB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACzB,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,KAAK,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE;YAC3D,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC;SAC7C;aAAM;YACL,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAC;YAC7C,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,SAAS,CACpE,GAAG,EAAE;gBACH,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,qCAAqC,CAAC,CAAC;gBAC7D,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YACvB,CAAC,EAAE,KAAK,CAAC,EAAE;gBACT,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAC;YACrD,CAAC,CACF,CAAC;SACH;IACH,CAAC;IACD,UAAU;QACR,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;IACvB,CAAC;;sGA/FU,2BAA2B;yHAA3B,2BAA2B;;QCXtC;QAAA,yEAAiB;QACb;QAAA,wHAcM;QACV;QAAA,4DAAM;QACN;QAAA,yEAAiB;QACf;QAAA,yEAAyB;QACzB;QAAA,6EAAuE;QAA/D,kSAAS,iFAAwB,KAAC;QAA6B,2FAA+B;QAAA,4DAAS;QAC/G;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAAA,0EAAsB;QACpB;QAAA,yEAAwC;QACtC;QAAA,yEAA4B;QAAA,wDAAsC;QAAA,4DAAK;QACvE;QAAA,yEAA4B;QAAA,wDAA0C;QAAA,4DAAK;QAC3E;QAAA,yEAA4B;QAAA,wDAAsC;QAAA,4DAAK;QACvE;QAAA,yEAA4B;QAAA,wDAAqC;QAAA,4DAAK;QACtE;QAAA,yEAA4B;QAAA,wDAAoD;QAAA,4DAAK;QACvF;QAAA,4DAAK;QACP;QAAA,4DAAM;QAEN;QAAA,sNAgDgB;QAClB;;QAhFY,0DAAkB;QAAlB,kFAAkB;QAuBI,2DAAsC;QAAtC,6KAAsC;QACtC,0DAA0C;QAA1C,iLAA0C;QAC1C,0DAAsC;QAAtC,6KAAsC;QACtC,0DAAqC;QAArC,4KAAqC;QACrC,0DAAoD;QAApD,gMAAoD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AC7BvB;AAY7B;;;;;;;;;;;;;;;;;ICqJ1B,2EAAkC;IAC9B;IAAA,2EAAwB;IACpB;IAAA,yEAAkD;IAChD;IAAA,0EAAiB;IACb;IAAA,2EAAsB;IAClB;IAAA,uEAA4F;IAChG;IAAA,6DAAM;IACN;IAAA,4EAAuB;IACnB;IAAA,0EAAsB;IAAA,6IAAgF;IAAA,6DAAI;IAC1G;IAAA,2EAAiB;IACf;IAAA,2EAAsB;IAClB;IAAA,+EAAoE;IAA5D,ySAAS,gFAAc,KAAC;IAAoC,qEAA8B;IAAC,sEAAQ;IAAA,6DAAS;IACxH;IAAA,6DAAM;IACN;IAAA,2EAAsB;IAClB;IAAA,+EAAoD;IAAA,qEAA8B;IAAC,4EAAc;IAAA,6DAAS;IAC9G;IAAA,6DAAM;IACN;IAAA,2EAAsB;IAClB;IAAA,+EAAoD;IAAA,qEAA2B;IAAC,oEAAM;IAAA,6DAAS;IACnG;IAAA,6DAAM;IACR;IAAA,6DAAM;IACV;IAAA,6DAAM;IACV;IAAA,6DAAM;IACR;IAAA,6DAAI;IACN;IAAA,6DAAM;IACZ;IAAA,6DAAM;;;;IAMV;IAAA,2EAA0B;IACxB;IAAA,0EAAkC;IAAA,+EAAmB;IAAA,6DAAK;IAC1D;IAAA,8EAA4F;IAA1B,gTAAS,iFAAe,KAAC;IACzF;IAAA,4EAAyB;IAAA,kEAAO;IAAA,6DAAO;IACzC;IAAA,6DAAS;IACX;IAAA,6DAAM;IACN;IAAA,4EAAwB;IACtB;IAAA,wEAAK;IACH;IAAA,sEAAG;IAAA,qPACL;IADE,6DAAG;IAEL;IAAA,+EAAiG;IAA5B,iTAAS,mFAAiB,KAAC;IAAC,6EAAgB;IAAA,6DAAS;IAC1H;IAAA,+EAA6F;IAA9B,iTAAS,qFAAmB,KAAC;IAAC,kEAAK;IAAA,6DAAS;IAC7G;IAAA,6DAAM;IACR;;;;;;ADzLK,MAAM,qBAAqB;IAYhC,YAAoB,aAA4B,EACrC,QAAyB,EACzB,KAAqB,EACrB,YAA4B,EAC5B,WAAwB,EACxB,MAAc,EACd,eAAgC,EAChC,WAAwB;QAPf,kBAAa,GAAb,aAAa,CAAe;QACrC,aAAQ,GAAR,QAAQ,CAAiB;QACzB,UAAK,GAAL,KAAK,CAAgB;QACrB,iBAAY,GAAZ,YAAY,CAAgB;QAC5B,gBAAW,GAAX,WAAW,CAAa;QACxB,WAAM,GAAN,MAAM,CAAQ;QACd,oBAAe,GAAf,eAAe,CAAiB;QAChC,gBAAW,GAAX,WAAW,CAAa;QAdnC,oBAAoB;QACpB,oBAAe,GAAQ,EAAE,CAAC;QAC1B,mBAAc,GAAQ,EAAE,CAAC;QAClB,YAAO,GAAG,KAAK,CAAC;QAEhB,eAAU,GAAG,CAAC,CAAE;IASgB,CAAC;IAExC,QAAQ;QACN,qBAAqB;QACrB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE;YAC/B,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC/B,CAAC,CAAC,CAAC;QACH,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACzB,uBAAuB;IACzB,CAAC;IAED,SAAS,CAAC,QAA0B,EAAE,CAAM;QAC1C,kBAAkB;QAClB,IAAI,CAAC,mBAAmB,GAAG,CAAC,CAAC;QAC7B,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACnD,CAAC;IAED,iBAAiB;QACf,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;IACvB,CAAC;IAED,eAAe;QACb,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;QACtC,IAAI,CAAC,aAAa,CAAC,qBAAqB,CAAC,IAAI,CAAC,mBAAmB,EAAE,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,SAAS,CAChH,CAAC,OAAe,EAAE,EAAE;YAClB,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YACrB,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,gCAAgC,CAAC,CAAC;YACxD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC;QACxC,CAAC,EAAE,KAAK,CAAC,EAAE;YACT,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAC;QACpD,CAAC,CACF,CAAC;IACJ,CAAC;IAED,iBAAiB;IACjB,qGAAqG;IACrG,6BAA6B;IAC7B,kDAAkD;IAClD,kBAAkB;IAClB,kCAAkC;IAClC,QAAQ;IACR,IAAI;IAEJ,2BAA2B,CAAC,QAAgB;QAC1C,IAAI,CAAC,mBAAmB,EAAE,CAAC;QAC3B,OAAO,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAC;QAEtC,IAAI,CAAC,eAAe,CAAC,mCAAmC,CAAC,QAAQ,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC,SAAS,CAChG,IAAI,CAAC,EAAE;YACL,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YAClB,kDAAM,CAAC,IAAI,EAAE,IAAI,CAAC,eAAe,CAAC,WAAW,GAAG,UAAU,CAAC,CAAC;YAC5D,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,qBAAqB,CAAC,CAAC;QAC/C,CAAC,EAAE,KAAK,CAAC,EAAE;YACT,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC;QAC9C,CAAC,CACF,CAAC;IACJ,CAAC;IACD,6BAA6B,CAAC,QAAgB;QAC5C,IAAI,CAAC,mBAAmB,EAAE,CAAC;QAC3B,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;QAElC,IAAI,CAAC,eAAe,CAAC,6BAA6B,CAAC,QAAQ,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC,SAAS,CAC1F,IAAI,CAAC,EAAE;YACL,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YAClB,kDAAM,CAAC,IAAI,EAAE,IAAI,CAAC,eAAe,CAAC,WAAW,GAAG,kBAAkB,CAAC,CAAC;YACpE,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,qBAAqB,CAAC,CAAC;QAC/C,CAAC,EAAE,KAAK,CAAC,EAAE;YACT,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC;QAC9C,CAAC,CACF,CAAC;IACJ,CAAC;IACD,0BAA0B,CAAC,QAAgB;QACzC,IAAI,CAAC,mBAAmB,EAAE,CAAC;QAC3B,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;QAElC,IAAI,CAAC,eAAe,CAAC,0BAA0B,CAAC,QAAQ,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC,SAAS,CACvF,IAAI,CAAC,EAAE;YACL,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YAClB,kDAAM,CAAC,IAAI,EAAE,IAAI,CAAC,eAAe,CAAC,WAAW,GAAG,sBAAsB,CAAC,CAAC;YACxE,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,qBAAqB,CAAC,CAAC;QAC/C,CAAC,EAAE,KAAK,CAAC,EAAE;YACT,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC;QAC9C,CAAC,CACF,CAAC;IACJ,CAAC;IACD,8BAA8B,CAAC,QAAgB;QAC7C,IAAI,CAAC,mBAAmB,EAAE,CAAC;QAC3B,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;QAElC,IAAI,CAAC,eAAe,CAAC,8BAA8B,CAAC,QAAQ,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC,SAAS,CAC3F,IAAI,CAAC,EAAE;YACL,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YAClB,kDAAM,CAAC,IAAI,EAAE,IAAI,CAAC,eAAe,CAAC,WAAW,GAAG,mBAAmB,CAAC,CAAC;YACrE,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,qBAAqB,CAAC,CAAC;QAC/C,CAAC,EAAE,KAAK,CAAC,EAAE;YACT,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC;QAC9C,CAAC,CACF,CAAC;IACJ,CAAC;IACD,mBAAmB,CAAC,QAAgB;QAClC,IAAI,CAAC,mBAAmB,EAAE,CAAC;QAC3B,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;QAClC,IAAI,CAAC,eAAe,CAAC,mBAAmB,CAAC,QAAQ,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC,SAAS,CAChF,IAAI,CAAC,EAAE;YACL,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YAClB,kDAAM,CAAC,IAAI,EAAE,IAAI,CAAC,eAAe,CAAC,WAAW,GAAG,WAAW,CAAC,CAAC;YAC7D,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,qBAAqB,CAAC,CAAC;QAC/C,CAAC,EAAE,KAAK,CAAC,EAAE;YACT,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC;QAC9C,CAAC,CACF,CAAC;IACJ,CAAC;IAED,oBAAoB;IAEpB,yEAAyE;IACzE,uFAAuF;IACvF,qEAAqE;IACrE,uDAAuD;IACvD,uDAAuD;IACvD,oDAAoD;IACpD,8DAA8D;IAC9D,yDAAyD;IACzD,0DAA0D;IAC1D,yDAAyD;IACzD,8DAA8D;IAC9D,gDAAgD;IAChD,wDAAwD;IACxD,sDAAsD;IACtD,wDAAwD;IACxD,IAAI;IACJ,mBAAmB;QACjB,4BAA4B;QAC5B,IAAI,CAAC,eAAe,CAAC,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC,sBAAsB,EAAE,CAAC;QAC5E,IAAI,CAAC,eAAe,CAAC,SAAS,GAAG,IAAI,CAAC,WAAW,CAAC,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC,cAAc,EAAC,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;QACzH,IAAI,CAAC,eAAe,CAAC,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC;QAC1D,IAAI,CAAC,eAAe,CAAC,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC1E,IAAI,CAAC,eAAe,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC;QAC1D,IAAI,CAAC,eAAe,CAAC,gBAAgB,GAAG,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC;QACpE,IAAI,CAAC,eAAe,CAAC,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC;QAC3D,IAAI,CAAC,eAAe,CAAC,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC;QAClD,IAAI,CAAC,eAAe,CAAC,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC;QACvD,IAAI,CAAC,eAAe,CAAC,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC;QACjE,IAAI,CAAC,eAAe,CAAC,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC;QAC5D,IAAI,CAAC,eAAe,CAAC,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC;QAC7D,IAAI,CAAC,eAAe,CAAC,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC;QAC5D,IAAI,CAAC,eAAe,CAAC,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC;QACjE,IAAI,CAAC,eAAe,CAAC,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC;QACnD,IAAI,CAAC,eAAe,CAAC,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC;QAC3D,IAAI,CAAC,eAAe,CAAC,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QAChE,IAAI,CAAC,eAAe,CAAC,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC;QAC5D,IAAI,CAAC,eAAe,CAAC,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC;QACvD,IAAI,CAAC,eAAe,CAAC,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC;QAC9D,IAAI,CAAC,eAAe,CAAC,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;QACzD,IAAI,CAAC,eAAe,CAAC,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC;QAC3D,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IACpC,CAAC;IAED,YAAY;QACV,IAAI,CAAC,cAAc,CAAC,IAAI,GAAG,IAAI,CAAC,kBAAkB,CAAC;QACnD,wCAAwC;QACxC,IAAI,CAAC,eAAe,CAAC,oBAAoB,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,SAAS,CACtE,IAAI,CAAC,EAAE;YACL,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YAClB,kDAAM,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC;YAC9B,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,qBAAqB,CAAC,CAAC;QAC/C,CAAC,EAAE,KAAK,CAAC,EAAE;YACT,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC;QAC9C,CAAC,CACF,CAAC;IACJ,CAAC;IACD,aAAa,CAAC,EAAU;QACtB,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC;QACrB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAC/B,CAAC;;0FAjMU,qBAAqB;oHAArB,qBAAqB;;QCnBlC,0EAA4B;QAC1B;QAAA,yEAAuB;QACrB;QAAA,yEAA4B;QAC1B;QAAA,wEAAmC;QAAA,gEAAI;QAAA,6DAAI;QAC7C;QAAA,6DAAK;QACL;QAAA,0EAA4B;QAC1B;QAAA,yEAA8B;QAAA,mEAAM;QAAA,6DAAI;QAC1C;QAAA,6DAAK;QACL;QAAA,0EAAmC;QAAA,yDAA0B;QAAA,6DAAK;QACpE;QAAA,6DAAK;QACL;QAAA,0EAAiB;QAAA,yDAA0B;QAAA,6DAAK;QAChD;QAAA,2EAAiB;QACf;QAAA,2EAAsB;QAClB;QAAA,2EAAkB;QAChB;QAAA,sEAA+F;QAC/F;QAAA,4EAAuB;QACrB;QAAA,wEAAK;QACD;QAAA,2EAAiB;QAAA,yDAAuB;QAAA,6DAAK;QACjD;QAAA,6DAAM;QACN;QAAA,wEAAK;QACH;QAAA,2EAAQ;QAAA,uEAAU;QAAA,6DAAS;QAC3B;QAAA,sEAAG;QAAA,yDAA6F;;;QAAA,6DAAI;QACtG;QAAA,6DAAM;QACN;QAAA,wEAAK;QACH;QAAA,2EAAQ;QAAA,mEAAM;QAAA,6DAAS;QACvB;QAAA,sEAAG;QAAA,yDAAoC;;QAAA,6DAAI;QAC7C;QAAA,6DAAM;QACN;QAAA,wEAAK;QACH;QAAA,2EAAQ;QAAA,gEAAG;QAAA,6DAAS;QACpB;QAAA,sEAAG;QAAA,yDAAmC;;QAAA,6DAAI;QAC5C;QAAA,6DAAM;QACN;QAAA,wEAAK;QACL;QAAA,2EAAQ;QAAA,2EAAc;QAAA,6DAAS;QAC7B;QAAA,sEAAG;QAAA,yDAA0B;QAAA,6DAAI;QACnC;QAAA,6DAAM;QACR;QAAA,6DAAM;QACR;QAAA,6DAAM;QACN;QAAA,4EAAyB;QACvB;QAAA,4EAA8B;QAC5B;QAAA,+EAAqH;QAAA,iEAAI;QAAA,6DAAS;QAClI;QAAA,+EAA2F;QAAxD,gSAAS,wHAA6C,KAAC;QAAC,sEAAS;QAAA,6DAAS;QAC7G;QAAA,+EAAiE;QAAA,kEAAK;QAAA,6DAAS;QACjF;QAAA,6DAAM;QACR;QAAA,6DAAM;QACV;QAAA,6DAAM;QACN;QAAA,4EAAsB;QAClB;QAAA,4EAAuB;QACrB;QAAA,oFAAyC;QACvC;QAAA,6EAAuB;QACrB;QAAA,6EAA6B;QAC3B;QAAA,2EAAuF;QACrF;QAAA,6EAAkD;QAChD;QAAA,4EAAiB;QAAA,qFAAuB;QAAA,6DAAK;QAC7C;QAAA,2EAAO;QAAA,0DAAiD;;QAAA,6DAAQ;QAClE;QAAA,6DAAM;QACN;QAAA,2EAAgB;QAAA,0DAAoI;;QAAA,6DAAI;QACxJ;QAAA,2EAAO;QAAA,0DAA2D;;QAAA,6DAAQ;QAC1E;QAAA,2EAAgB;QAAA,0DAAuD;;QAAA,6DAAI;QAC7E;QAAA,6DAAI;QACN;QAAA,6DAAM;QACN;QAAA,6EAA2B;QACzB;QAAA,wEAAI;QAAA,6EAAe;QAAA,6DAAK;QACxB;QAAA,2EAAgB;QAAA,0DAAuB;QAAA,6DAAI;QAC3C;QAAA,4EAAiB;QAAA,wEAAU;QAAA,6DAAK;QAChC;QAAA,2EAAgB;QAAA,0DAAyB;QAAA,6DAAI;QAC7C;QAAA,4EAAiB;QAAA,2EAAa;QAAA,6DAAK;QACnC;QAAA,2EAAgB;QAAA,0DAA+D;QAAA,6DAAI;QACrF;QAAA,6DAAM;QACN;QAAA,6EAAsB;QACpB;QAAA,6EAAsB;QACpB;QAAA,4EAAkB;QAChB;QAAA,6EAAuB;QACrB;QAAA,4EAA4B;QAAA,2EAAa;QAAA,6DAAK;QAC9C;QAAA,2EAA0B;QAAA,0DAA4C;;QAAA,6DAAI;QAC5E;QAAA,6DAAM;QACR;QAAA,6DAAM;QACR;QAAA,6DAAM;QACN;QAAA,6EAAsB;QACpB;QAAA,4EAAkB;QAChB;QAAA,6EAAuB;QACrB;QAAA,4EAA4B;QAAA,wEAAU;QAAA,6DAAK;QAC3C;QAAA,2EAA0B;QAAA,0DAAyC;;QAAA,6DAAI;QACzE;QAAA,6DAAM;QACR;QAAA,6DAAM;QACR;QAAA,6DAAM;QACR;QAAA,6DAAM;QACN;QAAA,6EAAuB;QACnB;QAAA,6EAA4B;QACxB;QAAA,+EAAwC;QAAA,8EAAgB;QAAA,6DAAQ;QAChE;QAAA,6EAAsB;QACpB;QAAA,0EAA+F;;QACjG;QAAA,6DAAM;QACR;QAAA,6DAAM;QACN;QAAA,6EAA4B;QACxB;QAAA,+EAAuC;QAAA,mFAAqB;QAAA,6DAAQ;QACpE;QAAA,6EAAsB;QACpB;QAAA,0EAAoF;;QACtF;QAAA,6DAAM;QACV;QAAA,6DAAM;QACN;QAAA,6EAA4B;QACxB;QAAA,+EAAuC;QAAA,yEAAW;QAAA,6DAAQ;QAC1D;QAAA,6EAAsB;QACpB;QAAA,0EAA+E;QACjF;QAAA,6DAAM;QACV;QAAA,6DAAM;QACZ;QAAA,6DAAM;QACN;QAAA,6EAAsB;QACpB;QAAA,6EAAuB;QACrB;QAAA,4EAAkB;QAChB;QAAA,6EAAuB;QACrB;QAAA,4EAA4B;QAAA,uEAAS;QAAA,6DAAK;QAC1C;QAAA,2EAA0B;QAAA,0DAAsC;;QAAA,6DAAI;QACpE;QAAA,4EAA4B;QAAA,uEAAS;QAAA,6DAAK;QAC1C;QAAA,2EAA0B;QAAA,0DAAuC;;QAAA,6DAAI;QAEvE;QAAA,6DAAM;QACR;QAAA,6DAAM;QACR;QAAA,6DAAM;QACR;QAAA,6DAAM;QACN;QAAA,6EAAmD;QAC/C;QAAA,gFAAyD;QAAA,oEAAO;QAAA,6DAAS;QACzE;QAAA,4EAA0B;QAAA,4EAAc;QAAA,6DAAK;QAC7C;QAAA,2EAAgB;QAAA,0DAAoB;QAAA,6DAAI;QAC5C;QAAA,6DAAM;QACR;QAAA,6DAAM;QACN;QAAA,6EAAkD;QAA5B,+IAAU,kBAAc,CAAC,CAAC,IAAC;QAC/C;QAAA,6FAAuE;QACzE;QAAA,6DAAM;QACN;QAAA,6EAA0D;QAA5B,+IAAU,kBAAc,CAAC,CAAC,IAAC;QACvD;QAAA,6FAAuE;QACzE;QAAA,6DAAM;QACN;QAAA,6EAAyD;QAA5B,+IAAU,kBAAc,CAAC,CAAC,IAAC;QACrD;QAAA,+FAA2E;QAC9E;QAAA,6DAAM;QACN;QAAA,6EAAqD;QAA5B,+IAAU,kBAAc,CAAC,CAAC,IAAC;QAClD;QAAA,gGAA6E;QAC/E;QAAA,6DAAM;QACN;QAGF;QAAA,6DAAS;QACX;QAAA,6DAAM;QACN;QAAA,6EAAkB;QACd;QAAA,wEAAI;QAAA,sEAA0B;QAAC,iFAAkB;QAAA,6DAAK;QACtD;QAAA,2EAAsB;QAAA,qIAAuE;QAAA,6DAAI;QACjG;QAAA,6EAAmC;QAC/B;QAAA,gFACuC;QAD/B,gJAAS,sDAA8C,IAAC;QACzB,sEAA0B;QAAC,0EAAW;QAAA,6DAAS;QACrF;QAAA,gFACsC;QAD9B,gJAAS,wDAAgD,IAAC;QAC5B,sEAA0B;QAAC,yEAAU;QAAA,6DAAS;QACrF;QAAA,gFACuC;QAD/B,gJAAS,qDAA6C,IAAC;QACxB,sEAA0B;QAAC,8EAAe;QAAA,6DAAS;QACzF;QAAA,gFACsC;QAD9B,gJAAS,yDAAiD,IAAC;QAC7B,sEAA0B;QAAC,0EAAW;QAAA,6DAAS;QAC1F;QAAA,6DAAM;QACN;QAAA,6EAAmC;QACjC;QAAA,gFACuC;QAD/B,gJAAS,8CAAsC,IAAC;QACjB,sEAA0B;QAAC,kEAAG;QAAA,6DAAS;QAC9E;QACF;QAAA,6DAAM;QACV;QAAA,6DAAM;QACN;QAAA,wHAwBM;QACV;QAAA,6DAAM;QACR;QAAA,6DAAM;QACR;QAAA,6DAAM;QAEN;QAAA,qNAcgB;QAChB;;QA1MS,2DAA8B;QAA9B,gJAA8B;QAG9B,2DAA0B;QAA1B,gJAA0B;QAEI,2DAA0B;QAA1B,uHAA0B;QAE9C,2DAA0B;QAA1B,uHAA0B;QAIa,2DAAuC;QAAvC,4KAAuC;QAGhE,2DAAuB;QAAvB,oHAAuB;QAIvC,2DAA6F;QAA7F,gWAA6F;QAI7F,4DAAoC;QAApC,yLAAoC;QAIpC,4DAAmC;QAAnC,8LAAmC;QAInC,4DAA0B;QAA1B,qHAA0B;QAMO,2DAA4C;QAA5C,+JAA4C;QAE7C,2DAA0B;QAA1B,gJAA0B;QAYhD,4DAAiD;QAAjD,gNAAiD;QAE1C,2DAAoI;QAApI,0YAAoI;QAC7I,2DAA2D;QAA3D,6NAA2D;QAClD,2DAAuD;QAAvD,sNAAuD;QAKzD,4DAAuB;QAAvB,oHAAuB;QAEvB,2DAAyB;QAAzB,sHAAyB;QAEzB,2DAA+D;QAA/D,8LAA+D;QAO/C,4DAA4C;QAA5C,kMAA4C;QAQ5C,4DAAyC;QAAzC,+LAAyC;QAShB,4DAA6C;QAA7C,oNAA6C;QAM3C,4DAAkC;QAAlC,kMAAkC;QAMlC,4DAA6B;QAA7B,+HAA6B;QASxD,4DAAsC;QAAtC,4LAAsC;QAEtC,2DAAuC;QAAvC,6LAAuC;QASrD,4DAAoB;QAApB,0HAAoB;QAId,2DAAiB;QAAjB,+EAAiB;QAGjB,2DAAiB;QAAjB,+EAAiB;QAGd,2DAAiB;QAAjB,+EAAiB;QAGjB,2DAAiB;QAAjB,+EAAiB;QA0B9C,4DAAa;QAAb,8EAAa;;;;;;;;;;;;;;;;;;;;;;;;;;ACjK0D;;;;;;;;;;;;IC6BrE,6EAAmE;IAAA,uDAAiB;IAAA,4DAAS;;;IAAlD,6FAAuB;IAAC,0DAAiB;IAAjB,kFAAiB;;;IAUpF,6EAAgE;IAAA,uDAAgB;IAAA,4DAAS;;;IAAhD,4FAAsB;IAAC,0DAAgB;IAAhB,iFAAgB;;;IAMhF,6EAA6D;IAAA,uDAAe;IAAA,4DAAS;;;IAA9C,2FAAqB;IAAC,0DAAe;IAAf,gFAAe;;;IAsB5E,6EAAsE;IAAA,uDAAkB;IAAA,4DAAS;;;IAApD,8FAAwB;IAAC,0DAAkB;IAAlB,mFAAkB;;;IAgCxF,6EAAsE;IAAA,uDAAkB;IAAA,4DAAS;;;IAApD,8FAAwB;IAAC,0DAAkB;IAAlB,mFAAkB;;;;AD3EjG,MAAM,sBAAsB;IAoCjC,YACU,YAA4B,EAC5B,aAA4B,EAC5B,QAAyB,EACzB,KAAa,EACb,WAAwB;QAJxB,iBAAY,GAAZ,YAAY,CAAgB;QAC5B,kBAAa,GAAb,aAAa,CAAe;QAC5B,aAAQ,GAAR,QAAQ,CAAiB;QACzB,UAAK,GAAL,KAAK,CAAQ;QACb,gBAAW,GAAX,WAAW,CAAa;QAvCxB,iBAAY,GAAG,IAAI,uDAAY,EAAE,CAAC;QAU5C,OAAO;QACP,UAAK,GAAQ,EAAE,CAAC;QAChB,uBAAkB,GAAQ,EAAE,CAAC;QAC7B,WAAM,GAAQ,EAAE,CAAC;QACjB,cAAS,GAAQ,EAAE,CAAC;QAGpB,eAAU,GAAa,CAAC,MAAM,CAAC,CAAC;QAChC,oBAAe,GAAQ,EAAE,CAAC;QAC1B,kBAAa,GAAQ,EAAE,CAAC;QAWxB,mBAAc,GAAG,KAAK,CAAC;QACvB,cAAS,GAAG,KAAK,CAAC;QAClB,iBAAY,GAAG,KAAK,CAAC;IAQlB,CAAC;IAEJ,QAAQ;QACN,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,IAAI,CAAC,YAAY,EAAE,CAAC;QACpB,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,IAAI,CAAC,cAAc,EAAE,CAAC;QACtB,IAAI,CAAC,cAAc,EAAE,CAAC;QACtB,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACxB,IAAI,CAAC,cAAc,EAAE,CAAC;IACxB,CAAC;IACD,aAAa;QACX,IAAI,CAAC,aAAa,CAAC,YAAY,EAAE,CAAC,SAAS,CACzC,CAAC,SAAqB,EAAE,EAAE;YACxB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC7B,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CACF,CAAC;IACJ,CAAC;IACD,YAAY;QACV,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,CAAC,SAAS,CACxC,CAAC,QAAmB,EAAE,EAAE;YACtB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QAC3B,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CACF,CAAC;IACJ,CAAC;IACD,WAAW;QACT,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,CAAC,SAAS,CACvC,CAAC,OAAiB,EAAE,EAAE;YACpB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;YAEvB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBAC5C,IAAI,CAAC,UAAU,CAAC,IAAI,CAClB,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;oBAC1B,KAAK;oBACL,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;oBAC3B,KAAK;oBACL,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAC/B,CAAC;aACH;QACH,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CACF,CAAC;IACJ,CAAC;IACD,WAAW;QACT,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,CAAC,SAAS,CACvC,CAAC,OAAiB,EAAE,EAAE;YACpB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACzB,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CACF,CAAC;IACJ,CAAC;IACD,cAAc;QACZ,IAAI,CAAC,aAAa,CAAC,aAAa,EAAE,CAAC,SAAS,CAC1C,CAAC,UAAuB,EAAE,EAAE;YAC1B,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC/B,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CACF,CAAC;IACJ,CAAC;IACD,cAAc;QACZ,IAAI,CAAC,aAAa,CAAC,YAAY,EAAE,CAAC,SAAS,CACzC,CAAC,UAAuB,EAAE,EAAE;YAC1B,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC/B,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CACF,CAAC;IACJ,CAAC;IACD,gBAAgB;QACd,IAAI,CAAC,aAAa,CAAC,eAAe,EAAE,CAAC,SAAS,CAC5C,CAAC,YAA2B,EAAE,EAAE;YAC9B,IAAI,CAAC,eAAe,GAAG,YAAY,CAAC;YACpC,qCAAqC;QACvC,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CACF,CAAC;IACJ,CAAC;IACD,cAAc;QACZ,IAAI,CAAC,aAAa,CAAC,aAAa,EAAE,CAAC,SAAS,CAC1C,CAAC,UAAuB,EAAE,EAAE;YAC1B,IAAI,CAAC,aAAa,GAAG,UAAU,CAAC;QAClC,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CACF,CAAC;IACJ,CAAC;IAED,SAAS,CAAC,QAA0B;QAClC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACnD,CAAC;IAED,UAAU;QACR,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;QACrB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;IACvB,CAAC;IACD,wEAAwE;IACxE,WAAW;QACT,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,MAAM,CAAC;QAEnD,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,cAAc,EAAE,GAAG,EAAE;YACzC,IAAI,CAAC,kBAAkB,EAAE,CAAC,CAAC,mCAAmC;YAE9D,IAAI,CAAC,aAAa;iBACf,YAAY,CAAC,IAAI,CAAC,kBAAkB,EAAE,IAAI,CAAC,MAAM,CAAC;iBAClD,SAAS,CACR,GAAG,EAAE;gBACH,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,6BAA6B,CAAC,CAAC;YACvD,CAAC,EACD,KAAK,CAAC,EAAE;gBACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,sCAAsC,CAAC,CAAC;YAC9D,CAAC,CACF,CAAC;YAEJ,wCAAwC;QAC1C,CAAC,CAAC,CAAC;IACL,CAAC;IACD,kEAAkE;IAClE,SAAS;QACP,IAAI,CAAC,WAAW,EAAE,CAAC;IACrB,CAAC;IACD,kBAAkB;QAChB,IAAI,CAAC,kBAAkB,CAAC,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC;QAC7D,IAAI,CAAC,kBAAkB,CAAC,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC;QAC5D,IAAI,CAAC,kBAAkB,CAAC,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC;QAC1D,IAAI,CAAC,kBAAkB,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC;QACxD,IAAI,CAAC,kBAAkB,CAAC,eAAe,GAAG,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC;QACrE,uFAAuF;QACvF,IAAI,CAAC,kBAAkB,CAAC,aAAa,GAAG,CAAC,CAAC,CAAC,8BAA8B;QACzE,IAAI,CAAC,kBAAkB,CAAC,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC;QACrD,2DAA2D;QAC3D,kEAAkE;QAClE,gEAAgE;QAChE,IAAI,CAAC,kBAAkB,CAAC,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC;QAC7D,IAAI,CAAC,kBAAkB,CAAC,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QACjE,IAAI,CAAC,kBAAkB,CAAC,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QAC/D,IAAI,CAAC,kBAAkB,CAAC,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC;QAC7C,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE;YACxB,IAAI,CAAC,kBAAkB,CAAC,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC;SAC9D;QACD,IAAI,CAAC,kBAAkB,CAAC,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC;QAE7D,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE;YACnB,IAAI,CAAC,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC;YACzC,IAAI,CAAC,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC;YAC3C,IAAI,CAAC,MAAM,CAAC,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC;YACzC,IAAI,CAAC,kBAAkB,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;SAC9C;QAED,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE;YACtB,IAAI,CAAC,SAAS,CAAC,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC;YAC3C,kDAAkD;YAClD,IAAI,CAAC,kBAAkB,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;SACpD;QAGD,uGAAuG;QACvG,mGAAmG;QAEnG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;IACvC,CAAC;IAED,cAAc,CAAC,KAAqB;QAClC,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC,IAAI,CAAC;QACjC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,cAAc,CAAC;QAClC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACzB,IAAI,CAAC,kBAAkB,CAAC,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;QAClD,IAAI,CAAC,KAAK,CAAC,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;QAC3C,IAAI,CAAC,KAAK,CAAC,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC;QACzC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACtB,+CAA+C;IACjD,CAAC;IACD,mBAAmB,CAAC,KAAqB;QACvC,IAAI,CAAC,yBAAyB,GAAG,KAAK,CAAC,IAAI,CAAC;QAC5C,IAAI,CAAC,kBAAkB,CAAC,aAAa,GAAG,IAAI,CAAC,yBAAyB,CAAC,EAAE,CAAC;QAC1E,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;QAC3B,sDAAsD;IACxD,CAAC;IACD,iBAAiB,CAAC,KAAqB;QACrC,IAAI,CAAC,uBAAuB,GAAG,KAAK,CAAC,IAAI,CAAC;QAC1C,IAAI,CAAC,kBAAkB,CAAC,WAAW,GAAG,IAAI,CAAC,uBAAuB,CAAC,EAAE,CAAC;QACtE,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;IAC3B,CAAC;IAED,YAAY;QACV,sCAAsC;QAEtC,IAAI,IAAI,CAAC,KAAK,CAAC,UAAU,IAAI,CAAC,EAAE;YAC9B,IAAI,CAAC,KAAK,CAAC,WAAW,GAAG,MAAM,CAAC;YAChC,IAAI,CAAC,KAAK,CAAC,eAAe,GAAG,MAAM,CAAC;YACpC,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC;YACzB,IAAI,CAAC,KAAK,CAAC,YAAY,GAAG,KAAK,CAAC;YAChC,IAAI,CAAC,KAAK,CAAC,WAAW,GAAG,KAAK,CAAC;SAChC;QACD,IAAI,IAAI,CAAC,KAAK,CAAC,UAAU,IAAI,CAAC,EAAE;YAC9B,IAAI,CAAC,KAAK,CAAC,WAAW,GAAG,MAAM,CAAC;YAChC,IAAI,CAAC,KAAK,CAAC,eAAe,GAAG,OAAO,CAAC;SACtC;QACD,IAAI,IAAI,CAAC,KAAK,CAAC,UAAU,IAAI,CAAC,EAAE;YAC9B,IAAI,CAAC,KAAK,CAAC,WAAW,GAAG,KAAK,CAAC;YAC/B,IAAI,CAAC,KAAK,CAAC,eAAe,GAAG,MAAM,CAAC;SACrC;IACH,CAAC;;4FApQU,sBAAsB;oHAAtB,sBAAsB;;QCxBnC,wEAAuB;QACrB;QAAA,wEAA4B;QAC1B;QAAA,uEAAkC;QAAA,+DAAI;QAAA,4DAAI;QAC5C;QAAA,4DAAK;QACP;QAAA,4DAAK;QACL;QAAA,wEAA0B;QACxB;QAAA,yEAA0B;QACxB;QAAA,wEAAoD;QAAzB,wRAAS,oEAAc,KAAC;QAAC,mEAA0B;QAAC,0EAAa;QAAA,4DAAI;QAClG;QAAA,4DAAK;QACH;QAAA,yEAA0B;QAC1B;QAAA,wEAA4D;QAAA,mEAA6B;QAAC,wEAAW;QAAA,4DAAI;QAC3G;QAAA,4DAAK;QACP;QAAA,4DAAK;QAEL;QAAA,8EAAqH;QACnH;QAAA,2EAAmC;QACjC;QAAA,2EAA2B;QACzB;QAAA,2EAA0B;QACxB;QAAA,0EAA0D;QAAA,6EAAiB;QAAA,4DAAK;QAChF;QAAA,8EAA2F;QAA5C,6RAAS,oEAAc,KAAC;QACrE;QAAA,4EAAyB;QAAA,kEAAO;QAAA,4DAAO;QACzC;QAAA,4DAAS;QACX;QAAA,4DAAM;QACN;QAAA,2EAAwB;QACtB;QAAA,gFAAuD;QAAzB,mJAAY,eAAW,IAAC;QACpD;QAAA,2EAAsB;QACpB;QAAA,2EAAiC;QAC/B;QAAA,6EAA2B;QAAA,2EAAe;QAAA,4DAAQ;QAClD;QAAA,kFAA0J;QAAxF,sMAA8B,yFAAiC,kBAAc,IAA/C;QAC9F;QAAA,2HAA6F;QAC/F;QAAA,4DAAS;QACX;QAAA,4DAAM;QACN;QAAA,2EAAiC;QAC/B;QAAA,6EAA8B;QAAA,+EAAmB;QAAA,4DAAQ;QACzD;QAAA,iFAAuK;QAAhE,sMAA+B;QAAtI,4DAAuK;QACzK;QAAA,4DAAM;QACN;QAAA,2EAAiC;QAC/B;QAAA,6EAAgC;QAAA,iFAAqB;QAAA,4DAAQ;QAC7D;QAAA,kFAAkI;QAA5D,qMAA6B;QACjG;QAAA,2HAAyF;QAC3F;QAAA,4DAAS;QACX;QAAA,4DAAM;QACN;QAAA,2EAAiC;QAC/B;QAAA,6EAAyB;QAAA,yEAAa;QAAA,4DAAQ;QAC9C;QAAA,kFAAwH;QAA1D,oMAA4B;QACxF;QAAA,2HAAqF;QACvF;QAAA,4DAAS;QACX;QAAA,4DAAM;QACN;QAAA,2EAAiC;QAC/B;QAAA,6EAAkC;QAAA,6EAAgB;QAAA,4DAAQ;QAC1D;QAAA,kFAAqM;QAA/F,2MAAmC;QAAzI,4DAAqM;QACvM;QAAA,4DAAM;QACN;QAAA,4EAAiC;QAC/B;QAAA,8EAA6B;QAAA,wEAAW;QAAA,4DAAQ;QAChD;QAAA,kFAKI;QAJD,sMAA8B,qHAGV,0BAAsB,IAHZ;QADjC,4DAKI;QACN;QAAA,4DAAM;QACR;QAAA,4DAAM;QAEN;QAAA,4EAAsB;QACpB;QAAA,4EAAiC;QAC/B;QAAA,8EAAgC;QAAA,uEAAU;QAAA,4DAAQ;QAClD;QAAA,mFAAwI;QAAzC,wMAA+B;QAC5H;QAAA,6HAAiG;QACnG;QAAA,4DAAS;QACX;QAAA,4DAAM;QACN;QAAA,4EAAiC;QAC/B;QAAA,8EAA4B;QAAA,uEAAU;QAAA,4DAAQ;QAC9C;QAAA,kFAA+K;QAAxF,qMAA6B;QAApH,4DAA+K;QACjL;QAAA,4DAAM;QACN;QAAA,4EAAiC;QAC/B;QAAA,8EAAsB;QAAA,gEAAG;QAAA,4DAAQ;QACjC;QAAA,kFAAmI;QAAzF,+LAAuB;QAAjE,4DAAmI;QACrI;QAAA,4DAAM;QACR;QAAA,4DAAM;QAEN;QAAA,4EAAuB;QACrB;QAAA,4EAAiC;QAC/B;QAAA,8EAA4B;QAAA,sEAAS;QAAA,4DAAQ;QAC7C;QAAA,kFAGC;QAH2D,qMAA6B,qHAEX,6BAAyB,IAFd;QAAzF,4DAGC;QACH;QAAA,4DAAM;QACN;QAAA,4EAAiC;QAC/B;QAAA,8EAA8B;QAAA,yEAAY;QAAA,4DAAQ;QAClD;QAAA,kFAC4C;QADkB,yMAAiC;QAA/F,4DAC4C;QAC9C;QAAA,4DAAM;QACR;QAAA,4DAAM;QAEN;QAAA,4EAAsB;QACpB;QAAA,4EAAkC;QAChC;QAAA,8EAA4B;QAAA,sEAAS;QAAA,4DAAQ;QAC7C;QAAA,mFAA2H;QAAhC,wMAA+B;QACxH;QAAA,6HAAiG;QACnG;QAAA,4DAAS;QACX;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAAA,4EAAsB;QACpB;QAAA,4EAAkC;QAChC;QAAA,8EAA8B;QAAA,sEAAS;QAAA,4DAAQ;QAC/C;QAAA,kFACwC;QADoB,uMAA+B;QAA3F,4DACwC;QAC1C;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAAA,4EAAsB;QACpB;QAAA,4EAAiC;QAC/B;QAAA,8EAA8B;QAAA,0EAAa;QAAA,4DAAQ;QACnD;QAAA,kFAA0K;QAA5G,uMAA+B;QAA7F,4DAA0K;QAC5K;QAAA,4DAAM;QACN;QAAA,4EAAiC;QAC/B;QAAA,8EAA+B;QAAA,2EAAc;QAAA,4DAAQ;QACrD;QAAA,kFAC8C;QADiB,wMAAgC;QAA/F,4DAC8C;QAChD;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAAA,4EAAsB;QACpB;QAAA,4EAAkC;QAChC;QAAA,8EAA8B;QAAA,wEAAW;QAAA,4DAAQ;QACjD;QAAA,kFACwJ;QAD1F,uMAA+B,qHAC8B,+BAA2B,IADzD;QAA7F,4DACwJ;QAC1J;QAAA,4DAAM;QACR;QAAA,4DAAM;QAEN;QAAA,4EAAwB;QACtB;QAAA,8EAA0B;QAAA,2EAAc;QAAA,4DAAQ;QAChD;QAAA,qFAAwH;QAA5B,sMAA2B;QAAC,4DAAW;QACrI;QAAA,4DAAM;QAGN;QAAA,4EAA0B;QACxB;QAAA,4EAAsB;QACpB;QAAA,+EAA0F;QAAzB,8RAAS,oEAAc,KAAC;QAAC,kEAAK;QAAA,4DAAS;QACxG;QACA;QACA;QAAA,+EAAkE;QAAA,yEAAY;QAAA,4DAAS;QACvF;QACF;QAAA,4DAAM;QACR;QAAA,4DAAM;QACR;QAAA,4DAAO;QACT;QAAA,4DAAM;QACR;QAAA,4DAAM;QACR;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;;QAnJO,0DAA8B;QAA9B,8IAA8B;QAQN,2DAA+B;QAA/B,8IAA+B;QAkBkB,2DAA8B;QAA9B,yFAA8B;QACjE,0DAAY;QAAZ,kFAAY;QAK4D,0DAA+B;QAA/B,0FAA+B;QAIhE,0DAA6B;QAA7B,wFAA6B;QACrE,0DAAW;QAAX,iFAAW;QAKqB,0DAA4B;QAA5B,uFAA4B;QAC7D,0DAAU;QAAV,gFAAU;QAK+D,0DAAmC;QAAnC,8FAAmC;QAKtI,0DAA8B;QAA9B,yFAA8B;QAW8D,2DAA+B;QAA/B,0FAA+B;QAC9F,0DAAa;QAAb,mFAAa;QAK0C,0DAA6B;QAA7B,wFAA6B;QAI1E,0DAAuB;QAAvB,kFAAuB;QAOL,2DAA6B;QAA7B,wFAA6B;QAO3B,0DAAiC;QAAjC,4FAAiC;QAQJ,2DAA+B;QAA/B,0FAA+B;QAC1F,0DAAa;QAAb,mFAAa;QAOe,2DAA+B;QAA/B,0FAA+B;QAO7B,2DAA+B;QAA/B,0FAA+B;QAI9B,0DAAgC;QAAhC,2FAAgC;QAOjC,2DAA+B;QAA/B,0FAA+B;QAOH,2DAA2B;QAA3B,sFAA2B;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACnIpE;;;;;;;;;;;;;;;ICiB7D,wFAAmF;IAA5C,kWAAyB,kFAAiB,KAAC;IAAC,4DAAoB;;;;IAGrG,0EAAsC;IACpC;IAAA,0EAA2B;IACzB;IAAA,wEAAO;IAAA,uDAA0B;;IAAA,4DAAQ;IACzC;IAAA,4EAAgJ;IAAzI,qZAA4B,mQAAiG,4EAAU,KAA3G;IAAnC,4DAAgJ;IAClJ;IAAA,4DAAM;IACR;IAAA,4DAAM;;;IAHK,0DAA0B;IAA1B,iKAA0B;IAC1B,0DAA4B;IAA5B,0FAA4B;;;;IAkC7B,yEAAuG;IACrG;IAAA,yEAAoB;IAAyB,odAAS,2HAA6C,KAAC;IAAE,oEAAS;IAAA,4DAAI;IACrH;IAAA,4DAAK;;;;IAhBX,qEAAmC;IACjC;IAAA,wEAAgD;IAAA,uDAA0B;IAAA,4DAAK;IAC/E;IAAA,wEAAgD;IAAA,uDAAuB;IAAA,4DAAK;IAC5E;IAAA,qEAAI;IAAA,uDAAuB;IAAA,4DAAK;IAChC;IAAA,sEAAI;IAAA,wDAAwB;IAAA,4DAAK;IACjC;IAAA,sEAAI;IAAA,wDAA0F;;;IAAA,4DAAK;IACnG;IAAA,sEAAI;IAAA,wDAA0B;;IAAA,4DAAK;IACnC;IAAA,sEAAI;IAAA,wDAAgC;;IAAA,4DAAK;IACzC;IAAA,sEAAI;IAAA,wDAAsB;;IAAA,4DAAK;IAC/B;IAAA,sEAAI;IACF;IAAA,2EAAgC;IAC9B;IAAA,8EAA4I;IAC1I,qFAAO;IAAA,uEAA2B;IACpC;IAAA,4DAAS;IACT;IAAA,8HAEK;IACP;IAAA,4DAAM;IACR;IAAA,4DAAK;IACP;IAAA,4DAAK;;;IAlBC,0DAA2C;IAA3C,6JAA2C;IAAC,0DAA0B;IAA1B,sHAA0B;IACtE,0DAA2C;IAA3C,6JAA2C;IAAC,0DAAuB;IAAvB,mHAAuB;IACnE,0DAAuB;IAAvB,mHAAuB;IACvB,0DAAwB;IAAxB,oHAAwB;IACxB,0DAA0F;IAA1F,0VAA0F;IAC1F,0DAA0B;IAA1B,kLAA0B;IAC1B,0DAAgC;IAAhC,sLAAgC;IAChC,0DAAsB;IAAtB,8KAAsB;;;IAxBlC,0EAAuC;IACrC;IAAA,4EAAiC;IAC/B;IAAA,wEAAO;IACL;IAAA,yEAAyB;IACvB;IAAA,qEAAI;IAAA,mEAAQ;IAAA,4DAAK;IACjB;IAAA,0EAAgB;IAAA,kEAAM;IAAA,4DAAK;IAC3B;IAAA,0EAAgB;IAAA,kEAAM;IAAA,4DAAK;IAC3B;IAAA,0EAAgB;IAAA,kEAAM;IAAA,4DAAK;IAC3B;IAAA,0EAAgB;IAAA,kEAAM;IAAA,4DAAK;IAC3B;IAAA,0EAAgB;IAAA,oEAAQ;IAAA,4DAAK;IAC7B;IAAA,0EAAgB;IAAA,sEAAU;IAAA,4DAAK;IAC/B;IAAA,0EAAgB;IAAA,+DAAG;IAAA,4DAAK;IACxB;IAAA,sEAAI;IAAA,kEAAM;IAAA,4DAAK;IACjB;IAAA,4DAAK;IACP;IAAA,4DAAQ;IACR;IAAA,yEAAO;IACL;IAAA,0HAmBK;IACP;IAAA,4DAAQ;IACV;IAAA,4DAAQ;IACV;IAAA,4DAAM;;;IAtBuB,2DAAU;IAAV,mFAAU;;;;IAuBvC,0EAA6D;IAC3D;IAAA,iFACyH;IADR,+TAAa,kGAC7H,IADoJ,mQACpI,qFAAmB,KADiH;IAErJ;IAAA,4DAAa;IACf;IAAA,4DAAM;;;IAHQ,0DAAsB;IAAtB,+EAAsB;;;;IAOpC;IAAA,0EAA0B;IACxB;IAAA,yEAAkC;IAAA,8EAAmB;IAAA,4DAAK;IAC1D;IAAA,6EAA4F;IAA1B,6SAAS,iFAAe,KAAC;IACzF;IAAA,2EAAyB;IAAA,iEAAO;IAAA,4DAAO;IACzC;IAAA,4DAAS;IACX;IAAA,4DAAM;IACN;IAAA,2EAAwB;IACtB;IAAA,uEAAK;IACH;IAAA,qEAAG;IAAA,yOAA6K;IAAA,4DAAI;IACtL;IAAA,4DAAM;IACN;IAAA,8EAAiG;IAA5B,8SAAS,mFAAiB,KAAC;IAAC,4EAAgB;IAAA,4DAAS;IAC1H;IAAA,8EAA6F;IAA9B,8SAAS,qFAAmB,KAAC;IAAC,iEAAK;IAAA,4DAAS;IAC7G;IAAA,4DAAM;IACR;;;;ADxEO,MAAM,oBAAoB;IAY/B,YACU,aAA4B,EAC5B,QAAyB,EACzB,YAA4B,EAC5B,WAAwB,EACxB,MAAc;QAJd,kBAAa,GAAb,aAAa,CAAe;QAC5B,aAAQ,GAAR,QAAQ,CAAiB;QACzB,iBAAY,GAAZ,YAAY,CAAgB;QAC5B,gBAAW,GAAX,WAAW,CAAa;QACxB,WAAM,GAAN,MAAM,CAAQ;QAVxB,gBAAW,GAAG,KAAK,CAAC;IAWjB,CAAC;IAEJ,QAAQ;QACN,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC;QACpB,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;QACnB,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QACjD,IAAI,CAAC,WAAW,EAAE,CAAC;IACrB,CAAC;IAED,WAAW,CAAC,EAAE,EAAE,EAAE;QAChB,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,SAAS,CAC7C,CAAC,OAAkC,EAAE,EAAE;YACrC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC;YAC9B,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;QACvC,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CACF,CAAC;IACJ,CAAC;IACD,aAAa;QACX,IAAI,CAAC,aAAa;aACf,UAAU,CACT,IAAI,CAAC,UAAU,CAAC,WAAW,EAC3B,IAAI,CAAC,UAAU,CAAC,YAAY,EAC5B,IAAI,CAAC,cAAc,CACpB;aACA,SAAS,CACR,CAAC,GAA8B,EAAE,EAAE;YACjC,IAAI,CAAC,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC;YAC1B,IAAI,CAAC,UAAU,GAAG,GAAG,CAAC,UAAU,CAAC;QACnC,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CACF,CAAC;IACN,CAAC;IAED,WAAW,CAAC,KAAU;QACpB,IAAI,CAAC,UAAU,CAAC,WAAW,GAAG,KAAK,CAAC,IAAI,CAAC;QACzC,IAAI,CAAC,aAAa,EAAE,CAAC;IACvB,CAAC;IAED,WAAW;QACT,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,CAAC,SAAS,CACvC,CAAC,OAAiB,EAAE,EAAE;YACpB,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC;QAC7B,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CACF,CAAC;IACJ,CAAC;IACD,QAAQ;QACN,IAAI,CAAC,aAAa;aACf,UAAU,CACT,IAAI,CAAC,UAAU,CAAC,WAAW,EAC3B,IAAI,CAAC,UAAU,CAAC,YAAY,EAC5B,IAAI,CAAC,cAAc,CACpB;aACA,SAAS,CACR,CAAC,GAA8B,EAAE,EAAE;YACjC,IAAI,CAAC,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC;YAC1B,IAAI,CAAC,UAAU,GAAG,GAAG,CAAC,UAAU,CAAC;QACnC,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CACF,CAAC;IACN,CAAC;IAED,mBAAmB;QACjB,IAAI,CAAC,WAAW,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC;IACvC,CAAC;IAED,SAAS,CAAC,CAAU;QAClB,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC;IACvB,CAAC;IAED,SAAS,CAAC,QAA0B,EAAE,CAAM;QAC1C,kBAAkB;QAClB,IAAI,CAAC,mBAAmB,GAAG,CAAC,CAAC;QAC7B,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACnD,CAAC;IAED,iBAAiB;QACf,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;IACvB,CAAC;IAED,eAAe;QACb,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;QACtC,IAAI,CAAC,aAAa,CAAC,qBAAqB,CAAC,IAAI,CAAC,mBAAmB,EAAE,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,SAAS,CAChH,CAAC,OAAe,EAAE,EAAE;YAClB,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YACrB,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,gCAAgC,CAAC,CAAC;YACxD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC;QACxC,CAAC,EAAE,KAAK,CAAC,EAAE;YACT,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAC;QACpD,CAAC,CACF,CAAC;IACJ,CAAC;;wFAtHU,oBAAoB;kHAApB,oBAAoB;QCfjC,yEAAuB;QACrB;QAAA,wEAAiB;QAAA,+EAAoB;QAAA,4DAAK;QAC1C;QAAA,wEAAuB;QACrB;QAAA,wEAA4B;QAC1B;QAAA,uEAAkC;QAAA,gEAAI;QAAA,4DAAI;QAC5C;QAAA,4DAAK;QACP;QAAA,4DAAK;QACL;QAAA,yEAA0B;QACxB;QAAA,yEAA0B;QACxB;QAAA,wEAA2D;QAAhC,wIAAS,yBAAqB,IAAC;QACxD;QAAA,mEAA0B;QAAC,0EAAa;QAAA,4DAAI;QAChD;QAAA,4DAAK;QACL;QAAA,yEAA0B;QACxB;QAAA,wEAA2D;QACzD;QAAA,oEAA6B;QAAC,wEAAW;QAAA,4DAAI;QACjD;QAAA,4DAAK;QACP;QAAA,4DAAK;QACL;QAAA,+IAAuG;QACvG;QAAA,uEAAK;QACH;QACA;QAAA,oHAKM;QACR;QAAA,4DAAM;QACN;QAAA,oHAsCM;QACN;QAAA,mHAIM;QACR;QAAA,4DAAM;QAEN;QAAA,gNAcc;;QAnFL,0DAA8B;QAA9B,6IAA8B;QASN,2DAA+B;QAA/B,6IAA+B;QAI1C,0DAAiB;QAAjB,iFAAiB;QAG7B,0DAAkB;QAAlB,kFAAkB;QAOpB,0DAAkB;QAAlB,kFAAkB;QAuCiB,0DAAkB;QAAlB,kFAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IE1DjD,6EAAiE;IAAA,uDAAgB;IAAA,4DAAS;;;IAAjD,qHAAsB;IAAE,0DAAgB;IAAhB,0GAAgB;;;IAevF,wEAAsF;IAAA,uDAAwB;IAAA,2EAA6C;IAAA,uDAA6B;IAAA,4DAAO;IAAG;IAAA,2EAA0C;IAAG,uDAAqC;;IAAA,4DAAO;IAC3R;IAAA,4DAAI;;;IADkF,0DAAwB;IAAxB,iGAAwB;IAA6C,0DAA6B;IAA7B,6FAA6B;IAAuD,0DAAqC;IAArC,wKAAqC;;ADRnR,MAAM,oCAAoC;IAU/C,YACU,aAA4B,EAC5B,QAAyB,EACzB,KAAqB,EACtB,WAAwB;QAHvB,kBAAa,GAAb,aAAa,CAAe;QAC5B,aAAQ,GAAR,QAAQ,CAAiB;QACzB,UAAK,GAAL,KAAK,CAAgB;QACtB,gBAAW,GAAX,WAAW,CAAa;QARjC,UAAK,GAAQ,EAAE,CAAC;QAEhB,0BAAqB,GAAQ,EAAE,CAAC;IAO7B,CAAC;IAEJ,QAAQ;QACN,IAAI,CAAC,UAAU,EAAE,CAAC;QAClB,UAAU,CAAC,GAAG,EAAE;YACd,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;QAC3C,CAAC,EAAE,IAAI,CAAC,CAAC;IACX,CAAC;IAED,UAAU;QACR,IAAI,CAAC,aAAa,CAAC,iBAAiB,EAAE,CAAC,SAAS,CAC9C,CAAC,QAAsB,EAAE,EAAE;YACzB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QAC3B,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CACF,CAAC;IACJ,CAAC;IAED,eAAe,CAAC,EAAE;QAChB,IAAI,CAAC,aAAa,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC,SAAS,CAC7C,CAAC,YAA2B,EAAE,EAAE;YAC9B,IAAI,CAAC,WAAW,GAAG,YAAY,CAAC;YAChC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAC/B,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CACF,CAAC;IACJ,CAAC;IACD,QAAQ;QACN,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,MAAM,CAAC;QACzD,IAAI,CAAC,KAAK,CAAC,YAAY,GAAG,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;QAC7C,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,SAAS,CACpD,GAAG,EAAE;YACH,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;YACvC,IAAI,CAAC,QAAQ,EAAE,CAAC;YAChB,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,EAAE,CAAC;QAC1B,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,qCAAqC,CAAC,CAAC;QAC7D,CAAC,CACF,CAAC;IACJ,CAAC;IAED,oBAAoB;QAClB,IAAI,CAAC,qBAAqB,CAAC,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;QACnD,IAAI,CAAC,qBAAqB,CAAC,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC;QACxD,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;QAExC,IAAI,CAAC,aAAa;aACf,sBAAsB,CAAC,IAAI,CAAC,qBAAqB,CAAC;aAClD,SAAS,CACR,GAAG,EAAE;YACH,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,6BAA6B,CAAC,CAAC;QACvD,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC;QACnD,CAAC,CACF,CAAC;IACN,CAAC;;wHA5EU,oCAAoC;kIAApC,oCAAoC;QCfjD,yEAAuB;QACrB;QAAA,4EAA8B;QAC5B;QAAA,yEAAgC;QAC9B;QAAA,0EAA+B;QAC/B;QAAA,yEAAsB;QACpB;QAAA,0EAAiC;QAC/B;QAAA,4EAA4B;QAAA,kEAAM;QAAA,4DAAQ;QAC1C;QAAA,6EAAsG;QAAzE,+JAAU,0BAAsB,IAAC;QAC5D;QAAA,wIAA0F;QAC5F;QAAA,4DAAS;QACX;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAAA,0EAAwB;QACtB;QAAA,6EAA6B;QAAA,mEAAO;QAAA,4DAAQ;QAC5C;QAAA,oFAA2K;QAAvH,2KAAe,cAAU,IAAC;QAA6F,4DAAW;QACxL;QAAA,4DAAM;QACN;QAAA,8EAAmE;QAArB,6JAAS,cAAU,IAAC;QAAC,mEAAO;QAAA,4DAAS;QACnF;QAAA,iEAAI;QACN;QAAA,2EAAwB;QACtB;QAAA,iEAAI;QACJ;QAAA,yEAAkE;QAChE,wDACF;QAAA,4DAAI;QACJ;QAAA,+HACI;QACN;QAAA,4DAAM;QACN;QAAA,iEAAI;QACJ;QAAA,4DAAO;QACP;QAAA,4DAAM;QACR;QAAA,4DAAS;QACX;QAAA,4DAAM;QACN;;QAxByE,2DAAsB;QAAtB,iFAAsB;QACxD,0DAAW;QAAX,iFAAW;QAMqF,2DAA2B;QAA3B,sFAA2B;QAO1J,2DACF;QADE,oOACF;QACuB,0DAAc;QAAd,oFAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IESzC,wFAAmF;IAA5C,6VAAyB,kFAAiB,KAAC;IAAC,4DAAoB;;;IACvG,yEAA4C;IAC1C;IAAA,0EAAiB;IACf;IAAA,0EAAiB;IACb;IAAA,qEAAuB;IACzB;IAAA,qEAAuB;IACvB;IAAA,sEAAuB;IACvB;IAAA,sEAAuB;IACvB;IAAA,sEAAuB;IACvB;IAAA,sEAAuB;IACvB;IAAA,sEAAuB;IACvB;IAAA,sEAAuB;IACvB;IAAA,sEAA0B;IAC5B;IAAA,4DAAM;IACR;IAAA,4DAAM;IACR;IAAA,4DAAM;;;IAEJ,0EAA8D;IAC5D;IAAA,iFAAqD;IACvD;IAAA,4DAAM;;;IADa,0DAAiB;IAAjB,6EAAiB;;;IAFtC,0EAA4D;IAC1D;IAAA,mHAEM;IACR;IAAA,4DAAM;;;IAHoB,0DAAU;IAAV,mFAAU;;;;ADvC/B,MAAM,eAAe;IAM1B,YAAoB,aAA4B,EAAU,QAAyB;QAA/D,kBAAa,GAAb,aAAa,CAAe;QAAU,aAAQ,GAAR,QAAQ,CAAiB;QAJnF,gBAAW,GAAG,KAAK,CAAC;QACpB,kBAAa,GAAG,IAAI,CAAC;QACrB,iBAAY,GAAG,IAAI,CAAC;IAEmE,CAAC;IAExF,QAAQ;QACN,IAAI,CAAC,WAAW,EAAE,CAAC;IACrB,CAAC;IAED,WAAW;QACT,IAAI,CAAC,aAAa,CAAC,iBAAiB,EAAE,CAAC,SAAS,CAAC,CAAC,OAAiB,EAAE,EAAE;YACrE,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;YAC3B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;YACvB,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;YAC1B,6BAA6B;QAC/B,CAAC,EAAE,KAAK,CAAC,EAAE;YACT,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CAAC,CAAC;IACL,CAAC;IAED,mBAAmB;QACjB,IAAI,CAAC,WAAW,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC;IACvC,CAAC;IACD,YAAY,CAAC,CAAU;QACrB,kBAAkB;QAClB,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC;IACvB,CAAC;IAED,SAAS,CAAC,CAAU;QAClB,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC;IACvB,CAAC;;8EAjCU,eAAe;6GAAf,eAAe;QCV5B,yEAAuB;QACrB;QAAA,wEAAiB;QAAA,+EAAoB;QAAA,4DAAK;QAC1C;QAAA,wEAAuB;QACrB;QAAA,wEAA4B;QAC1B;QAAA,uEAAkC;QAAA,gEAAI;QAAA,4DAAI;QAC5C;QAAA,4DAAK;QACP;QAAA,4DAAK;QACL;QAAA,yEAA0B;QACxB;QAAA,yEAA0B;QACxB;QAAA,wEAA2D;QAAhC,mIAAS,yBAAqB,IAAC;QACxD;QAAA,mEAA0B;QAAC,oFAAuB;QAAA,4DAAI;QAC1D;QAAA,4DAAK;QACL;QAIA;QAAA,yEAA0B;QACxB;QAAA,wEAA2D;QACzD;QAAA,oEAA6B;QAAC,wFAA2B;QAAA,4DAAI;QACjE;QAAA,4DAAK;QACP;QAAA,4DAAK;QACL;QAAA,uEAAK;QACD;QACA;QAOF;QAAA,4DAAM;QACR;QACA;QAAA,0IAAuG;QACvG;QAAA,+GAcM;QACN;QAAA,8GAIM;QACR;QAAA,4DAAM;QACN;QAAA,mFAA6C;QAG7C;;QArDS,0DAA8B;QAA9B,6IAA8B;QAaN,2DAA+B;QAA/B,6IAA+B;QAe1C,2DAAiB;QAAjB,iFAAiB;QAC/B,0DAAkB;QAAlB,kFAAkB;QAelB,0DAAmC;QAAnC,uGAAmC;;;;;;;;;;;;;;;;;;;;;;;;;;;ACzCZ;AACO;;;;;;;;;IC6B9B,qEAAmC;IACjC;IAAA,yEAAgB;IAAA,uDACd;IAAA,oEAAG;IAAA,uDAA2B;IAAA,4DAAI;IACpC;IAAA,4DAAK;IACL;IAAA,qEAAI;IAAA,uDAAgE;IAAA,qEAAG;IAAA,wDAA6C;;IAAA,4DAAI;IACxH;IACA;IAAA,sEAAI;IAAA,wDAA4E;;;IAAA,qEAAG;IAAA,wDAAuC;;IAAA,4DAAI;IAC9H;IACA;IAAA,sEAAI;IAAA,wDAAyF;;;IAAA,4DAAK;IAClG;IAAA,sEAAI;IAAA,wDAAyD;;IAAA,4DAAK;IAClE;IACA;IACA;IACA;IAAA,sEAAI;IAAA,wDAAsB;IAAA,qEAAG;IAAA,wDAA8B;IAAA,4DAAI;IACjE;IAAA,4DAAK;;;IAba,0DACd;IADc,kHACd;IAAG,0DAA2B;IAA3B,2FAA2B;IAE5B,0DAAgE;IAAhE,8IAAgE;IAAG,0DAA6C;IAA7C,0KAA6C;IAEhH,0DAA4E;IAA5E,4QAA4E;IAAG,0DAAuC;IAAvC,wKAAuC;IAEtH,0DAAyF;IAAzF,uRAAyF;IACzF,0DAAyD;IAAzD,+LAAyD;IAIzD,0DAAsB;IAAtB,+FAAsB;IAAG,0DAA8B;IAA9B,uGAA8B;;;;;;ADnC9D,MAAM,sBAAsB;IAOjC,YACU,aAA4B,EAC5B,QAAyB,EACzB,WAAwB,EACxB,YAA4B;QAH5B,kBAAa,GAAb,aAAa,CAAe;QAC5B,aAAQ,GAAR,QAAQ,CAAiB;QACzB,gBAAW,GAAX,WAAW,CAAa;QACxB,iBAAY,GAAZ,YAAY,CAAgB;IAClC,CAAC;IAEL,QAAQ;QACN,IAAI,CAAC,qBAAqB,EAAE,CAAC;IAC/B,CAAC;IAED,qBAAqB;QACnB,IAAI,CAAC,aAAa,CAAC,0BAA0B,EAAE,CAAC,SAAS,CACvD,CAAC,IAAY,EAAE,EAAE;YACf,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;YACtB,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC/C,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,iCAAiC,CAAC,CAAC;QACzD,CAAC,CACF,CAAC;IACJ,CAAC;IAED,uBAAuB,CAAC,QAAgB;QACtC,IAAI,WAAW,GAAG,IAAI,CAAC;QACvB,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,QAAQ,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;YACpD,WAAW,GAAG,WAAW,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,WAAW,CAAC;SACzD;QACD,IAAI,CAAC,cAAc,GAAG,WAAW,CAAC;IACpC,CAAC;IAEM,aAAa;QAClB,MAAM,IAAI,GAAG,QAAQ,CAAC,cAAc,CAAC,kBAAkB,CAAC,CAAC;QACzD,kDAAW,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE;YAC9B,gCAAgC;YAChC,MAAM,QAAQ,GAAG,GAAG,CAAC;YACrB,MAAM,UAAU,GAAG,GAAG,CAAC;YACvB,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,GAAG,QAAQ,GAAG,MAAM,CAAC,KAAK,CAAC;YAC1D,MAAM,UAAU,GAAG,SAAS,CAAC;YAE7B,MAAM,cAAc,GAAG,MAAM,CAAC,SAAS,CAAC,WAAW,CAAC;YACpD,MAAM,GAAG,GAAG,IAAI,kCAAK,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,sBAAsB;YAC9D,MAAM,QAAQ,GAAG,CAAC,CAAC;YACnB,GAAG,CAAC,QAAQ,CAAC,cAAc,EAAE,KAAK,EAAE,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC;YACtE,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,gBAAgB;QACzC,CAAC,CAAC,CAAC;IACL,CAAC;;4FArDU,sBAAsB;oHAAtB,sBAAsB;QCfnC,yEAAuB;QACrB;QAAA,wEAAuB;QACrB;QAAA,wEAA4B;QAC1B;QAAA,uEAAkC;QAAA,yEAAc;QAAA,4DAAI;QACtD;QAAA,4DAAK;QACP;QAAA,4DAAK;QACL;QAAA,yEAA0B;QACxB;QAAA,yEAA0B;QACxB;QAAA,wEAAgG;QAAA,mEAA0B;QAAA,wEAAY;QAAA,4DAAI;QAC5I;QAAA,4DAAK;QACL;QAAA,yEAA0B;QACxB;QAAA,wEAAiG;QAAA,mEAA0B;QACzH,qFAAe;QAAA,4DAAI;QACvB;QAAA,4DAAK;QACL;QAAA,yEAA0B;QACxB;QAAA,wEAAmG;QAAA,mEAA0B;QAAC,gFAAmB;QAAA,4DAAI;QACvJ;QAAA,4DAAK;QACP;QAAA,4DAAK;QACL;QAAA,0EAAwC;QACtC;QAAA,sEAAI;QAAA,gFAAoB;QAAA,4DAAK;QAC7B;QAAA,4EAAsC;QACpC;QAAA,yEAAO;QACL;QAAA,0EAA0B;QACxB;QAAA,0EAAgB;QAAA,kEAAM;QAAA,4DAAK;QAC3B;QAAA,0EAAgB;QAAA,sEAAU;QAAA,4DAAK;QAC/B;QACA;QAAA,0EAAgB;QAAA,gFAAoB;QAAA,4DAAK;QACzC;QACA;QAAA,0EAAgB;QAAA,+EAAmB;QAAA,4DAAK;QACxC;QAAA,0EAAgB;QAAA,wEAAY;QAAA,4DAAK;QACjC;QACA;QACA;QACA;QAAA,0EAAgB;QAAA,kEAAM;QAAA,4DAAK;QAC7B;QAAA,4DAAK;QACP;QAAA,4DAAQ;QACR;QAAA,yEAAO;QACL;QAAA,qHAcK;QACP;QAAA,4DAAQ;QACV;QAAA,4DAAQ;QACR;QAAA,2EAAwC;QAAA,iFAAqB;QAAA,4EAA+B;QAAA,wDAAqC;;QAAA,4DAAO;QAC1I;QAAA,4DAAM;QACN;QAAA,uEAAK;QACH;QAAA,8EAAgF;QAA1B,+IAAS,mBAAe,IAAC;QAAC,oEAA8B;QAAA,wEAAY;QAAA,4DAAS;QACnI;QACF;QAAA,4DAAM;QACR;QAAA,4DAAM;QAGN;;QA5DS,0DAA8B;QAA9B,6IAA8B;QAKN,0DAA6B;QAA7B,8IAA6B;QAG7B,0DAA+B;QAA/B,8IAA+B;QAI/B,0DAAiC;QAAjC,8IAAiC;QAsBrC,2DAAY;QAAZ,kFAAY;QAiBuD,0DAAqC;QAArC,6JAAqC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IEf3H,sFAAoF;;;;IAYlF,qEAA+C;IAC7C;IAAA,qEAAI;IAAA,uDAA0C;;IAAA,4DAAK;IACnD;IAAA,qEAAI;IAAA,uDAAiB;IAAA,4DAAK;IAC1B;IACA;IAAA,sEAAI;IACF;IAAA,8EAAgF;IAA1C,6WAAS,mGAA+B,KAAC;IAAC,oEAAyB;IAAC,mEAAM;IAAA,4DAAS;IAC3H;IAAA,4DAAK;IACP;IAAA,4DAAK;;;IANC,0DAA0C;IAA1C,qKAA0C;IAC1C,0DAAiB;IAAjB,iFAAiB;;;IAZ3B,4EAAoD;IAClD;IAAA,wEAAO;IACL;IAAA,qEAAI;IACF;IAAA,yEAAgB;IAAA,+DAAI;IAAA,4DAAK;IACzB;IAAA,yEAAgB;IAAA,oEAAQ;IAAA,4DAAK;IAC7B;IACA;IAAA,0EAAgB;IAAA,kEAAM;IAAA,4DAAK;IAC7B;IAAA,4DAAK;IACP;IAAA,4DAAQ;IACR;IAAA,yEAAO;IACL;IAAA,4HAOK;IACP;IAAA,4DAAQ;IACV;IAAA,4DAAQ;;;IATqB,2DAAoB;IAApB,6FAAoB;;;;;;;;ADtClD,MAAM,qBAAqB;IAMhC,YACU,aAA4B,EAC5B,QAAyB,EACzB,KAAqB,EACrB,GAAW,EACX,WAAwB,EACxB,YAA4B;QAL5B,kBAAa,GAAb,aAAa,CAAe;QAC5B,aAAQ,GAAR,QAAQ,CAAiB;QACzB,UAAK,GAAL,KAAK,CAAgB;QACrB,QAAG,GAAH,GAAG,CAAQ;QACX,gBAAW,GAAX,WAAW,CAAa;QACxB,iBAAY,GAAZ,YAAY,CAAgB;QAVtC,UAAK,GAAO,EAAE,CAAC;QAEf,cAAS,GAAG,KAAK,CAAC;IASd,CAAC;IAEL,QAAQ;QACN,IAAI,CAAC,gBAAgB,EAAE,CAAC;IAC1B,CAAC;IAED,gBAAgB;QACd,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACtB,IAAI,CAAC,aAAa,CAAC,eAAe,EAAE,CAAC,SAAS,CAC5C,CAAC,YAA4B,EAAE,EAAE;YAC/B,IAAI,CAAC,SAAS,GAAG,KAAK,CAAE;YACxB,IAAI,CAAC,iBAAiB,GAAG,YAAY,CAAC;QACxC,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,uCAAuC,CAAC,CAAC;QAC/D,CAAC,CACF,CAAC;IACJ,CAAC;IAED,eAAe;QACb,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,MAAM,CAAE;QAC1D,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACxC,IAAI,CAAC,aAAa,CAAC,kBAAkB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,SAAS,CACzD,GAAG,EAAE;YACH,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,wBAAwB,CAAC,CAAC;YAChD,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAC1B,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,gCAAgC,CAAC,CAAC;QACxD,CAAC,CACF,CAAC;IACJ,CAAC;IACD,kBAAkB,CAAC,EAAU;QAC3B,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAEhB,iCAAiC;QACjC,IAAI,CAAC,aAAa,CAAC,kBAAkB,CAAC,EAAE,CAAC,CAAC,SAAS,CACjD,GAAG,EAAE;YACH,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,uBAAuB,CAAC,CAAC;YAC/C,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAC1B,CAAC,EAAE,KAAK,CAAC,EAAE;YACT,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YACnB,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,gCAAgC,CAAC,CAAC;QACxD,CAAC,CACF,CAAC;IAGJ,CAAC;;0FA5DU,qBAAqB;mHAArB,qBAAqB;QCblC,yEAAuB;QACnB;QAAA,wEAAuB;QACrB;QAAA,wEAA4B;QAC1B;QAAA,uEAAkC;QAAA,yEAAc;QAAA,4DAAI;QACtD;QAAA,4DAAK;QACP;QAAA,4DAAK;QACL;QAAA,yEAA0B;QACxB;QAAA,yEAA0B;QACxB;QAAA,wEAAgG;QAC9F;QAAA,mEAA0B;QAAA,wEAAY;QAAA,4DAAI;QAC9C;QAAA,4DAAK;QACL;QAAA,yEAA0B;QACxB;QAAA,wEAAiG;QAC/F;QAAA,mEAA0B;QAAC,4EAAe;QAAA,4DAAI;QAClD;QAAA,4DAAK;QACL;QAAA,yEAA0B;QACxB;QAAA,wEAAmG;QACjG;QAAA,mEAA0B;QAAC,gFAAmB;QAAA,4DAAI;QACtD;QAAA,4DAAK;QACL;QAAA,yEAA0B;QACxB;QAAA,wEAAqG;QAAA,mEAA0B;QAAC,2EAAc;QAAA,4DAAI;QACpJ;QAAA,4DAAK;QACP;QAAA,4DAAK;QAEL;QAAA,0EAAsB;QACpB;QAAA,0EAAsB;QACpB;QAAA,wEAAM;QACJ;QAAA,2EAAwB;QACtB;QAAA,6EAAmC;QAAA,uEAAW;QAAA,4DAAQ;QACtD;QAAA,6EAAuL;QAA/I,qMAA+B;QAAvE,4DAAuL;QACzL;QAAA,4DAAM;QACN;QAAA,2EAAwB;QACtB;QAAA,6EAAoC;QAAA,4EAAgB;QAAA,4DAAQ;QAC5D;QAAA,6EAAyG;QAAjE,8LAAwB;QAAhE,4DAAyG;QAC3G;QAAA,4DAAM;QACN;QAAA,8EAAoE;QAA5B,8IAAS,qBAAiB,IAAC;QAAC,wEAAY;QAAA,4DAAS;QAC3F;QAAA,4DAAO;QACT;QAAA,4DAAM;QACN;QAAA,0EAAsB;QAClB;QAAA,sJAAoF;QAEtF;QAAA,yHAmBQ;QACV;QAAA,4DAAM;QACR;QAAA,4DAAM;QACV;QAAA,4DAAM;QACN;;QA7DW,0DAA8B;QAA9B,8IAA8B;QAKN,0DAA6B;QAA7B,8IAA6B;QAI7B,0DAA+B;QAA/B,8IAA+B;QAI/B,0DAAiC;QAAjC,8IAAiC;QAIjC,0DAAkC;QAAlC,8IAAkC;QASjB,2DAA+B;QAA/B,0FAA+B;QAI/B,0DAAwB;QAAxB,mFAAwB;QAM3C,2DAAe;QAAf,+EAAe;QAEhC,0DAAgB;QAAhB,gFAAgB;;;;;;;;;;;;;;;;;;;;;;;;;ACzC+B;;;;;;;;;;;ICuB7D,sEAAsC;;;IACtC,+EAA6E;;;IAkBnE,6EAAwD;IAAA,uDAAY;IAAA,4DAAS;;;IAAxC,uFAAkB;IAAC,0DAAY;IAAZ,4EAAY;;;;IAd5E;IAAA,0EAA0B;IACxB;IAAA,yEAAkC;IAAA,wEAAa;IAAA,4DAAK;IACpD;IAAA,6EAA4F;IAA1B,6SAAS,gFAAe,KAAC;IACzF;IAAA,2EAAyB;IAAA,iEAAO;IAAA,4DAAO;IACzC;IAAA,4DAAS;IACX;IAAA,4DAAM;IACN;IAAA,kFAA2B;IACzB;IAAA,2EAAwB;IACtB;IAAA,2EAAsB;IACpB;IAAA,6EAAmH;IAAhD,mUAAa,uFAAoB,IAAP;IAA7F,4DAAmH;IACrH;IAAA,4DAAM;IACN;IAAA,2EAAgC;IAC9B;IAAA,8EACW;IAD+C,qUAAa,sFAC5E,IADuF;IAEhF;IAAA,0IAA6E;IAC/E;IAAA,4DAAS;IACX;IAAA,4DAAM;IACN;IAAA,8EAAgH;IAAtB,+SAAS,6EAAW,KAAC;IAAC,gEAAI;IAAA,4DAAS;IAC/H;IAAA,4DAAM;IACR;IAAA,4DAAO;IACT;;;;IAX2E,2DAA0B;IAA1B,wFAA0B;IAGnC,0DAAwB;IAAxB,sFAAwB;IAExD,0DAAW;IAAX,oFAAW;IAGoB,0DAA8B;IAA9B,gFAA8B;;;;;;ADjC1F,MAAM,sBAAsB;IAYjC,YAAoB,YAA4B,EACtC,aAA4B,EAC5B,QAAyB;QAFf,iBAAY,GAAZ,YAAY,CAAgB;QACtC,kBAAa,GAAb,aAAa,CAAe;QAC5B,aAAQ,GAAR,QAAQ,CAAiB;QAZnC,aAAQ,GAAG,IAAI,CAAC;QAChB,qBAAgB,GAAG,IAAI,CAAC;QAIjB,YAAO,GAAG;YACf,EAAE,EAAE,IAAI;YACR,IAAI,EAAE,IAAI;SACX,CAAC;IAIqC,CAAC;IAExC,QAAQ;QACN,IAAI,CAAC,QAAQ,EAAE,CAAC;IAClB,CAAC;IACD,cAAc;QACZ,IAAI,CAAC,QAAQ,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC;IACjC,CAAC;IACD,sBAAsB;QACpB,IAAI,CAAC,gBAAgB,GAAG,CAAC,IAAI,CAAC,gBAAgB,CAAC;IACjD,CAAC;IACD,SAAS,CAAC,QAA0B;QAClC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACnD,CAAC;IAED,QAAQ;QACN,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC,SAAS,CACrC,CAAC,KAAY,EAAE,EAAE;YACf,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;QACxB,CAAC,EAAE,KAAK,CAAC,EAAE;YACT,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAC;QACpD,CAAC,CACF,CAAC;IACJ,CAAC;IAED,SAAS;QACP,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,SAAS,CACtD,GAAG,EAAE;YACH,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,8BAA8B,CAAC,CAAC;QACxD,CAAC,EAAE,KAAK,CAAC,EAAE;YACT,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC;QACnD,CAAC,CACF,CAAC;IACJ,CAAC;;4FA/CU,sBAAsB;oHAAtB,sBAAsB;;QCZnC,yEAA4B;QAC1B;QAAA,wEAAuB;QACrB;QAAA,wEAA4B;QAC1B;QAAA,uEAAkC;QAAA,yEAAc;QAAA,4DAAI;QACtD;QAAA,4DAAK;QACP;QAAA,4DAAK;QACL;QAAA,yEAAoC;QAClC;QAAA,yEAA0B;QACxB;QAAA,wEAA2B;QAAA,mEAA0B;QAAA,wEAAY;QAAA,4DAAI;QACvE;QAAA,4DAAK;QACL;QAAA,yEAA0B;QACxB;QAAA,wEAAkG;QAAA,mEAA0B;QAAC,4EAAe;QAAA,4DAAI;QAClJ;QAAA,4DAAK;QACL;QAAA,yEAA0B;QACxB;QAAA,wEAAoG;QAAA,mEAA0B;QAAC,gFAAmB;QAAA,4DAAI;QACxJ;QAAA,4DAAK;QACL;QAAA,yEAA0B;QACxB;QAAA,wEAAqG;QAAA,mEAA0B;QAAC,2EAAc;QAAA,4DAAI;QACpJ;QAAA,4DAAK;QACL;QAAA,yEAA0B;QACtB;QAAA,wEAA+D;QAApC,wRAAS,4EAAyB,KAAC;QAAC,mEAA0B;QAAC,kEAAK;QAAA,4DAAI;QACrG;QAAA,4DAAK;QACT;QAAA,4DAAK;QACL;QAAA,+HAAsC;QACtC;QAAA,iJAA6E;QAC/E;QAAA,4DAAM;QAEN;QAAA,kNAqBgB;QAChB;;QA9CS,0DAA8B;QAA9B,6IAA8B;QAQN,2DAA+B;QAA/B,6IAA+B;QAG/B,0DAAiC;QAAjC,6IAAiC;QAGjC,0DAAkC;QAAlC,6IAAkC;QAMtD,2DAAc;QAAd,8EAAc;QACL,0DAAmC;QAAnC,uGAAmC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACxBM;AAQhC;AACO;;;;;;;;;;;;ICoDxB,yEAAuG;IACrG;IAAA,yEAAoB;IAAyB,ucAAS,wFAAuC,KAAC;IAAC,+FACnF;IAAA,4DAAI;IAChB;IAIA;IACF;IAAA,4DAAK;;;IA5BX,qEAAmC;IACjC;IAAA,yEAAgB;IAAA,uDACd;IAAA,oEAAG;IAAA,uDAA2B;IAAA,4DAAI;IACpC;IAAA,4DAAK;IACL;IAAA,qEAAI;IAAA,uDAAgE;IAAA,qEAAG;IAAA,wDAA6C;;IAAA,4DAAI;IACxH;IACA;IAAA,sEAAI;IAAA,wDAA4E;;;IAAA,qEAAG;IAAA,wDAAuC;;IAAA,4DAAI;IAC9H;IACA;IAAA,sEAAI;IAAA,wDAAyF;;;IAAA,4DAAK;IAClG;IAAA,sEAAI;IAAA,wDAAyD;;IAAA,4DAAK;IAClE;IACA;IACA;IACA;IAAA,sEAAI;IAAA,wDAAsB;IAAA,qEAAG;IAAA,wDAA8B;IAAA,4DAAI;IAC/D;IAAA,sEAAI;IACF;IAAA,2EAAgC;IAC9B;IAAA,8EACiC;IAC/B,qFAAO;IAAA,uEAA2B;IACpC;IAAA,4DAAS;IACT;IAAA,sHAQK;IACP;IAAA,4DAAM;IACR;IAAA,4DAAK;IACP;IAAA,4DAAK;;;IA9Ba,0DACd;IADc,kHACd;IAAG,0DAA2B;IAA3B,2FAA2B;IAE5B,0DAAgE;IAAhE,8IAAgE;IAAG,0DAA6C;IAA7C,0KAA6C;IAEhH,0DAA4E;IAA5E,4QAA4E;IAAG,0DAAuC;IAAvC,wKAAuC;IAEtH,0DAAyF;IAAzF,uRAAyF;IACzF,0DAAyD;IAAzD,+LAAyD;IAIzD,0DAAsB;IAAtB,+FAAsB;IAAG,0DAA8B;IAA9B,uGAA8B;;;;IA8BnE;IAAA,0EAA0B;IACxB;IAAA,yEAAkC;IAAA,8EAAmB;IAAA,4DAAK;IAC1D;IAAA,6EAA4F;IAA1B,2SAAS,gFAAe,KAAC;IACzF;IAAA,2EAAyB;IAAA,iEAAO;IAAA,4DAAO;IACzC;IAAA,4DAAS;IACX;IAAA,4DAAM;IACN;IAAA,2EAAwB;IACtB;IAAA,2EAAwB;IACtB;IAAA,6EAAgC;IAAA,0EAAc;IAAA,4DAAQ;IACtD;IAAA,6EAAoH;IAA5E,8ZAA0B;IAAlE,4DAAoH;IACpH;IAAA,6EAAmD;IAAA,mGAAuC;IAAA,4DAAQ;IACpG;IAAA,4DAAM;IACN;IAAA,8EAA0F;IAA/B,6SAAS,sFAAoB,KAAC;IAAC,kEAAM;IAAA,4DAAS;IAC3G;IAAA,4DAAM;IACR;;;IAL8C,2DAA0B;IAA1B,wFAA0B;;;;;;;AD5EjE,MAAM,mBAAmB;IAO9B,YACU,aAA4B,EAC5B,QAAyB,EACzB,WAAwB,EACxB,YAA4B;QAH5B,kBAAa,GAAb,aAAa,CAAe;QAC5B,aAAQ,GAAR,QAAQ,CAAiB;QACzB,gBAAW,GAAX,WAAW,CAAa;QACxB,iBAAY,GAAZ,YAAY,CAAgB;IACnC,CAAC;IAEJ,QAAQ;QACN,IAAI,CAAC,qBAAqB,EAAE,CAAC;IAC/B,CAAC;IAED,SAAS,CAAC,QAA0B,EAAE,CAAM;QAC1C,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,CAAC;QACnB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACnD,CAAC;IAED,qBAAqB;QACnB,IAAI,CAAC,aAAa,CAAC,oBAAoB,EAAE,CAAC,SAAS,CACjD,CAAC,IAAY,EAAE,EAAE;YACf,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;YACtB,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC/C,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,iCAAiC,CAAC,CAAC;QACzD,CAAC,CACF,CAAC;IACJ,CAAC;IACD,kBAAkB;QAChB,IAAI,CAAC,aAAa,CAAC,uBAAuB,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC,SAAS,CAClF,GAAG,EAAE;YACH,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,uBAAuB,CAAC,CAAC;YAC/C,IAAI,CAAC,QAAQ,EAAE,CAAC;YAChB,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;QACvB,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,iCAAiC,CAAC,CAAC;QACzD,CAAC,CACF,CAAC;IACJ,CAAC;IAED,uBAAuB,CAAC,QAAgB;QACtC,IAAI,WAAW,GAAG,IAAI,CAAC;QACvB,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,QAAQ,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;YACpD,WAAW,GAAG,WAAW,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,WAAW,CAAC;YACxD,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;SAC1B;QACD,IAAI,CAAC,cAAc,GAAG,WAAW,CAAC;IACpC,CAAC;IAEM,aAAa;QAClB,MAAM,IAAI,GAAG,QAAQ,CAAC,cAAc,CAAC,kBAAkB,CAAC,CAAC;QACzD,kDAAW,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE;YAC9B,gCAAgC;YAChC,MAAM,QAAQ,GAAG,GAAG,CAAC;YACrB,MAAM,UAAU,GAAG,GAAG,CAAC;YACvB,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,GAAG,QAAQ,GAAG,MAAM,CAAC,KAAK,CAAC;YAC1D,MAAM,UAAU,GAAG,SAAS,CAAC;YAE7B,MAAM,cAAc,GAAG,MAAM,CAAC,SAAS,CAAC,WAAW,CAAC;YACpD,MAAM,GAAG,GAAG,IAAI,kCAAK,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,sBAAsB;YAC9D,MAAM,QAAQ,GAAG,CAAC,CAAC;YACnB,GAAG,CAAC,QAAQ,CAAC,cAAc,EAAE,KAAK,EAAE,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC;YACtE,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,gBAAgB;QACzC,CAAC,CAAC,CAAC;IACL,CAAC;;sFAvEU,mBAAmB;iHAAnB,mBAAmB;QCjBhC,yEAAuB;QACrB;QAAA,wEAAuB;QACrB;QAAA,wEAA4B;QAC1B;QAAA,uEAAkC;QAAA,yEAAc;QAAA,4DAAI;QACtD;QAAA,4DAAK;QACP;QAAA,4DAAK;QACL;QAAA,yEAA0B;QACxB;QAAA,yEAA0B;QACxB;QAAA,wEAAgG;QAAA,mEAA0B;QAAA,wEAAY;QAAA,4DAAI;QAC5I;QAAA,4DAAK;QACL;QAAA,yEAA0B;QACxB;QAAA,wEAAiG;QAAA,mEAA0B;QACzH,qFAAe;QAAA,4DAAI;QACvB;QAAA,4DAAK;QACL;QAAA,yEAA0B;QACxB;QAAA,wEAAmG;QAAA,mEAA0B;QAAC,gFAAmB;QAAA,4DAAI;QACvJ;QAAA,4DAAK;QACL;QAAA,yEAA0B;QACxB;QAAA,wEAAqG;QAAA,mEAA0B;QAAC,2EAAc;QAAA,4DAAI;QACpJ;QAAA,4DAAK;QACP;QAAA,4DAAK;QACL;QAAA,0EAAwC;QACtC;QAAA,sEAAI;QAAA,gFAAoB;QAAA,4DAAK;QAC7B;QAAA,4EAAsC;QACpC;QAAA,yEAAO;QACL;QAAA,0EAA0B;QACxB;QAAA,0EAAgB;QAAA,kEAAM;QAAA,4DAAK;QAC3B;QAAA,0EAAgB;QAAA,sEAAU;QAAA,4DAAK;QAC/B;QACA;QAAA,0EAAgB;QAAA,gFAAoB;QAAA,4DAAK;QACzC;QACA;QAAA,0EAAgB;QAAA,+EAAmB;QAAA,4DAAK;QACxC;QAAA,0EAAgB;QAAA,wEAAY;QAAA,4DAAK;QACjC;QACA;QACA;QACA;QAAA,0EAAgB;QAAA,kEAAM;QAAA,4DAAK;QAC3B;QAAA,0EAAgB;QAAA,kEAAM;QAAA,4DAAK;QAC7B;QAAA,4DAAK;QACP;QAAA,4DAAQ;QACR;QAAA,yEAAO;QACL;QAAA,kHA+BK;QACP;QAAA,4DAAQ;QACV;QAAA,4DAAQ;QACR;QAAA,2EAAwC;QAAA,iFAAqB;QAAA,4EAA+B;QAAA,wDAAqC;;QAAA,4DAAO;QAC1I;QAAA,4DAAM;QACN;QAAA,uEAAK;QACH;QAAA,8EAAgF;QAA1B,4IAAS,mBAAe,IAAC;QAAC,oEAA8B;QAAA,wEAAY;QAAA,4DAAS;QACnI;QACF;QAAA,4DAAM;QACR;QAAA,4DAAM;QAEN;QAAA,iNAec;QACd;;QAhGS,0DAA8B;QAA9B,8IAA8B;QAKN,0DAA6B;QAA7B,8IAA6B;QAG7B,0DAA+B;QAA/B,8IAA+B;QAI/B,0DAAiC;QAAjC,8IAAiC;QAGjC,0DAAkC;QAAlC,8IAAkC;QAuBtC,2DAAY;QAAZ,kFAAY;QAkCuD,0DAAqC;QAArC,6JAAqC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AC3EtE;AAEzB;AACP;;;;;;;;;;;;;;;ICOrB,6EAAqE;IAAA,uDAAiB;IAAA,4DAAS;;;IAApD,+FAAyB;IAAC,0DAAiB;IAAjB,kFAAiB;;;IAMxF,6EAA+D;IAAA,uDAAe;IAAA,4DAAS;;;IAAhD,6FAAuB;IAAC,0DAAe;IAAf,gFAAe;;;IAOhF,6EAAkE;IAAA,uDAAgB;IAAA,4DAAS;;;IAAlD,8FAAwB;IAAC,0DAAgB;IAAhB,iFAAgB;;;IAmCxF,0EAA4C;IACxC;IAAA,0EAAiB;IACf;IAAA,0EAAiB;IACb;IAAA,qEAAuB;IACzB;IAAA,qEAAuB;IACvB;IAAA,sEAAuB;IACvB;IAAA,sEAAuB;IACvB;IAAA,sEAAuB;IACvB;IAAA,sEAAuB;IACvB;IAAA,sEAAuB;IACvB;IAAA,sEAAuB;IACvB;IAAA,sEAA0B;IAC5B;IAAA,4DAAM;IACR;IAAA,4DAAM;IACV;IAAA,4DAAM;;;IA8CQ,oEAAqI;;;;IACrI,yEAA+G;IAAyB,0YAAS,2FAAqB,KAAC;IAAC,wEAAa;IAAA,4DAAI;IACzL;IAAA,4DAAK;;;;IAPP,yEAAuG;IACrG;IAAA,yEAAoB;IAAyB,8cAAS,6FAAyC,KAAC;IAAC,8EAAmB;IAAA,4DAAI;IACxH;IAAA,yEAAoB;IAAyB,gdAAS,iGAAoC,KAAC;IAAC,6EAAkB;IAAA,4DAAI;IAClH;IAAA,0EAAoB;IAAyB,idAAS,iGAAoC,KAAC;IAAC,sEAAU;IAAA,4DAAI;IAC1G;IACA;IAAA,6HAAqI;IACrI;IAAA,6HACK;IACP;IAAA,4DAAK;;;IAHE,2DAAwF;IAAxF,0PAAwF;IACxF,0DAAwF;IAAxF,0PAAwF;;;IA3BrG,qEAGG;IACD;IAAA,yEAAgB;IAAA,uDAAc;IAAA,4DAAK;IACnC;IAAA,qEAAI;IAAA,uDAAuB;IAAA,4DAAK;IAChC;IAAA,qEAAI;IAAA,uDAAqD;IAAA,4DAAK;IAC9D;IACA;IACA;IAAA,sEAAI;IAAA,wDACF;IAAA,qEAAG;IAAA,wDAAsB;IAAA,4DAAI;IAC/B;IAAA,4DAAK;IACL;IAAA,sEAAI;IAAA,wDAAgC;;IAAA,4DAAK;IACzC;IAAA,sEAAI;IAAA,wDAA0B;;IAAA,4DAAK;IACnC;IAAA,sEAAI;IAAA,wDAAkC;;IAAA,4DAAK;IAC3C;IAAA,sEAAI;IAAA,wDAAkB;IAAA,4DAAK;IAC3B;IAAA,sEAAI;IACF;IAAA,2EAAgC;IAC9B;IAAA,8EAA4I;IAC1I,mFAAO;IAAA,uEAA2B;IACpC;IAAA,4DAAS;IACT;IAAA,wHAQK;IACP;IAAA,4DAAM;IACR;IAAA,4DAAK;IACP;IAAA,4DAAK;;;;IA/BH,uIAAkD;IAGlC,0DAAc;IAAd,+EAAc;IAC1B,0DAAuB;IAAvB,wFAAuB;IACvB,0DAAqD;IAArD,2KAAqD;IAGrD,0DACF;IADE,oJACF;IAAG,0DAAsB;IAAtB,mHAAsB;IAEvB,0DAAgC;IAAhC,2JAAgC;IAChC,0DAA0B;IAA1B,uJAA0B;IAC1B,0DAAkC;IAAlC,2JAAkC;IAClC,0DAAkB;IAAlB,gIAAkB;;;;IAoB5B,0EAA8D;IAC5D;IAAA,iFAKoG;IAFlG,gUAAa,kGACd,IADqC,oQACrB,qFAAmB,KADE;IAGtC;IAAA,4DAAa;IACf;IAAA,4DAAM;;;IAPQ,0DAAsB;IAAtB,+EAAsB;;;IAtDtC,0EAAwC;IACtC;IAAA,4EAAiC;IAC/B;IAAA,wEAAO;IACL;IAAA,yEAA0B;IACxB;IAAA,yEAAgB;IAAA,4DAAC;IAAA,4DAAK;IACtB;IAAA,0EAAgB;IAAA,kEAAM;IAAA,4DAAK;IAC3B;IAAA,0EAAgB;IAAA,6EAAiB;IAAA,4DAAK;IACtC;IACA;IACA;IAAA,0EAAgB;IAAA,kEAAM;IAAA,4DAAK;IAC3B;IAAA,0EAAgB;IAAA,sEAAU;IAAA,4DAAK;IAC/B;IAAA,0EAAgB;IAAA,oEAAQ;IAAA,4DAAK;IAC7B;IAAA,0EAAgB;IAAA,wEAAY;IAAA,4DAAK;IACjC;IAAA,0EAAgB;IAAA,qEAAS;IAAA,4DAAK;IAC9B;IAAA,0EAAgB;IAAA,kEAAM;IAAA,4DAAK;IAC7B;IAAA,4DAAK;IACP;IAAA,4DAAQ;IACR;IAAA,yEAAO;IACL;IAAA,mHAgCK;IACP;IAAA,4DAAQ;IACV;IAAA,4DAAQ;IACR;IAAA,mHAQM;IACR;IAAA,4DAAM;;;IA5CwB,2DAAmB;IAAnB,4FAAmB;IAmCN,0DAAmB;IAAnB,sFAAmB;;;;IA6BpD,qEAAoD;IAClD;IAAA,yEAA8B;IAAA,uDACI;;;;IAAA,4DAAK;IACvC;IACA;IACA;IAAA,sEAAI;IAAA,wDAAgI;;;;IAAA,4DAAK;IACzI;IACA;IAAA,sEAAI;IAAA,wDAAkG;;;IAAA,4DAAK;IAC3G;IAAA,sEAAI;IAAA,wDAAwE;;IAAA,4DAAK;IACjF;IACA;IACA;IACA;IAAA,0EAAyC;IAArC,qWAAS,gGAA0B,KAAC;IAAC,oEAA2B;IAAA,4DAAK;IAC3E;IAAA,4DAAK;;;IAZ2B,0DACI;IADJ,sbACI;IAG9B,0DAAgI;IAAhI,gYAAgI;IAEhI,0DAAkG;IAAlG,kSAAkG;IAClG,0DAAwE;IAAxE,+MAAwE;;;IA1BxF,0EAAyE;IACvE;IAAA,qEAAI;IAAA,6EAAkB;IAAA,4DAAK;IACzB;IAAA,4EAAoC;IAChC;IAAA,wEAAO;IACL;IAAA,yEAA2C;IACzC;IAAA,0EAA6B;IAAA,kEAAM;IAAA,4DAAK;IACxC;IACA;IACA;IAAA,0EAA6B;IAAA,sEAAU;IAAA,4DAAK;IAC5C;IACA;IAAA,0EAA6B;IAAA,mEAAO;IAAA,4DAAK;IACzC;IAAA,0EAA6B;IAAA,qEAAS;IAAA,4DAAK;IAC3C;IACA;IACA;IAAA,qEAAkC;IACpC;IAAA,4DAAK;IACP;IAAA,4DAAQ;IACR;IAAA,yEAAO;IACL;IAAA,mHAaK;IACP;IAAA,4DAAQ;IACV;IAAA,4DAAQ;IACd;IAAA,4DAAM;;;IAhBgC,2DAAsB;IAAtB,+FAAsB;;;;IAkB1D,6EAAmH;IAA3C,iSAAS,0GAAgC,KAAC;IAAC,uEAAY;IAAA,4DAAS;;;;IACxI,6EAAkG;IAA1B,iSAAS,iFAAe,KAAC;IAAC,mEAAQ;IAAA,4DAAS;;;;IAInH;IAAA,0EAA0B;IACxB;IAAA,yEAAkC;IAAA,8EAAmB;IAAA,4DAAK;IAC1D;IAAA,6EAA4F;IAA1B,sSAAS,iFAAe,KAAC;IACzF;IAAA,2EAAyB;IAAA,iEAAO;IAAA,4DAAO;IACzC;IAAA,4DAAS;IACX;IAAA,4DAAM;IACN;IAAA,2EAAwB;IACtB;IAAA,2EAA4B;IACtB;IAAA,6EAAyD;IAAA,wEAAY;IAAA,4DAAQ;IAC7E;IAAA,2EAAsB;IACpB;IAAA,wEAAwG;IAC1G;IAAA,4DAAM;IACZ;IAAA,4DAAM;IACN;IAAA,2EAA4B;IACtB;IAAA,6EAAyD;IAAA,uEAAW;IAAA,4DAAQ;IAC5E;IAAA,2EAAsB;IACpB;IAAA,wEAAsG;IACxG;IAAA,4DAAM;IACZ;IAAA,4DAAM;IACN;IAAA,2EAAsB;IAClB;IAAA,6EAAgC;IAAA,wFAA4B;IAAA,4DAAQ;IACpE;IAAA,6EAAuH;IAA/E,uZAAyB;IAAjE,4DAAuH;IAC3H;IAAA,4DAAM;IACN;IAAA,8EAAwF;IAA9B,uSAAS,qFAAmB,KAAC;IAAC,+EAAmB;IAAA,4DAAS;IACtH;IAAA,4DAAM;IACR;;;IAf2F,2DAAwB;IAAxB,iGAAwB;IAMxB,2DAAsB;IAAtB,+FAAsB;IAKjE,0DAAyB;IAAzB,uFAAyB;;;;;IAOvE;IAAA,0EAA0B;IACxB;IAAA,yEAAkC;IAAA,6EAAkB;IAAA,4DAAK;IACzD;IAAA,6EAA4F;IAA1B,sSAAS,iFAAe,KAAC;IACzF;IAAA,2EAAyB;IAAA,iEAAO;IAAA,4DAAO;IACzC;IAAA,4DAAS;IACX;IAAA,4DAAM;IACN;IAAA,2EAAwB;IACtB;IAAA,2EAAsB;IAClB;IAAA,6EAAgC;IAAA,oEAAQ;IAAA,4DAAQ;IAChD;IAAA,6EAEa;IAF2B,4TAAa,4FAAwB,IAAP;IAAtE,4DAEa;IACjB;IAAA,4DAAM;IACN;IAAA,2EAAsB;IAClB;IAAA,6EAAgC;IAAA,uEAAW;IAAA,4DAAQ;IACnD;IAAA,6EAAmG;IAA3D,4TAAa,8FAA0B,IAAP;IAAxE,4DAAmG;IACvG;IAAA,4DAAM;IACN;IAAA,8EAAuF;IAA7B,uSAAS,oFAAkB,KAAC;IAAC,8EAAkB;IAAA,4DAAS;IACpH;IAAA,4DAAM;IACR;;;IAVgD,2DAA8B;IAA9B,6FAA8B;IAM9B,0DAAgC;IAAhC,+FAAgC;;;;IAO9E;IAAA,0EAA0B;IACxB;IAAA,yEAAkC;IAAA,4EAAiB;IAAA,4DAAK;IACxD;IAAA,6EAA4F;IAA1B,uSAAS,iFAAe,KAAC;IACzF;IAAA,2EAAyB;IAAA,iEAAO;IAAA,4DAAO;IACzC;IAAA,4DAAS;IACX;IAAA,4DAAM;IACN;IAAA,2EAAwB;IACtB;IAAA,2EAAsB;IAClB;IAAA,6EAAgC;IAAA,sEAAU;IAAA,4DAAQ;IAClD;IAAA,6EAAqF;IAA7C,wZAAyB;IAAjE,4DAAqF;IACzF;IAAA,4DAAM;IACN;IAAA,8EAAqF;IAA3B,wSAAS,kFAAgB,KAAC;IAAC,sEAAU;IAAA,4DAAS;IAC1G;IAAA,4DAAM;IACR;;;IAJgD,2DAAyB;IAAzB,wFAAyB;;;ADrNlE,MAAM,aAAa;IA+GxB,YACU,YAA4B,EAC5B,aAA4B,EAC5B,QAAyB,EACzB,KAAa,EACb,WAAwB,EACxB,WAAwB;QALxB,iBAAY,GAAZ,YAAY,CAAgB;QAC5B,kBAAa,GAAb,aAAa,CAAe;QAC5B,aAAQ,GAAR,QAAQ,CAAiB;QACzB,UAAK,GAAL,KAAK,CAAQ;QACb,gBAAW,GAAX,WAAW,CAAa;QACxB,gBAAW,GAAX,WAAW,CAAa;QAnHlC,iBAAY,GAAG,IAAI,CAAC;QACpB,qBAAgB,GAAQ;YACtB;gBACE,QAAQ,EAAE,CAAC;gBACX,WAAW,EAAE,SAAS;gBACtB,UAAU,EAAE,CAAC;gBACb,QAAQ,EAAE;oBACR,IAAI,EAAE,QAAQ;iBACf;gBACD,SAAS,EAAE,CAAC;gBACZ,OAAO,EAAE;oBACP,IAAI,EAAE,OAAO;iBACd;gBACD,QAAQ,EAAE,CAAC;gBACX,MAAM,EAAE;oBACN,IAAI,EAAE,UAAU;iBACjB;gBACD,MAAM,EAAE;oBACN,IAAI,EAAE,WAAW;iBAClB;gBACD,SAAS,EAAE,MAAM;gBACjB,OAAO,EAAE,UAAU;gBACnB,WAAW,EAAE,KAAK;gBAClB,YAAY,EAAE,MAAM;gBACpB,QAAQ,EAAE,MAAM;gBAChB,kBAAkB,EAAE,GAAG;gBACvB,kBAAkB,EAAE,GAAG;gBACvB,WAAW,EAAE,GAAG;aACjB;SACF,CAAC;QAEF,wBAAmB,GAAQ;YACzB;gBACE,QAAQ,EAAE,CAAC;gBACX,WAAW,EAAE,EAAE;gBACf,UAAU,EAAE,CAAC;gBACb,QAAQ,EAAE;oBACR,IAAI,EAAE,EAAE;iBACT;gBACD,SAAS,EAAE,CAAC;gBACZ,OAAO,EAAE;oBACP,IAAI,EAAE,EAAE;iBACT;gBACD,MAAM,EAAE;oBACN,IAAI,EAAE,EAAE;iBACT;gBACD,QAAQ,EAAE,CAAC;gBACX,MAAM,EAAE;oBACN,IAAI,EAAE,EAAE;iBACT;gBACD,SAAS,EAAE,CAAC;gBACZ,OAAO,EAAE,EAAE;gBACX,WAAW,EAAE,GAAG;gBAChB,YAAY,EAAE,GAAG;gBACjB,QAAQ,EAAE,GAAG;gBACb,kBAAkB,EAAE,GAAG;gBACvB,kBAAkB,EAAE,GAAG;gBACvB,WAAW,EAAE,GAAG;gBAChB,SAAS,EAAE,EAAE;aACd;SACF,CAAC;QAEF,wBAAmB,GAAG,KAAK,CAAC;QAC5B,YAAO,GAAQ,EAAE,CAAC;QAClB,yBAAoB,GAAQ,EAAE,CAAC;QAC/B,+BAA0B,GAAQ,EAAE,CAAC;QACrC,UAAK,GAAQ,EAAE,CAAC;QAChB,eAAU,GAAQ;YAChB;gBACE,QAAQ,EAAE,CAAC;gBACX,cAAc,EAAE,CAAC;gBACjB,KAAK,EAAE,CAAC;gBACR,kBAAkB,EAAE,MAAM;gBAC1B,kBAAkB,EAAE,MAAM;gBAC1B,WAAW,EAAE,SAAS;gBACtB,YAAY,EAAE,MAAM;aACrB;SACF,CAAC;QAQF,aAAQ,GAAQ,EAAE,CAAC;QAGnB,sBAAsB;QACtB,eAAU,GAAQ,EAAE,CAAC;IA2BlB,CAAC;IAEJ,QAAQ;QACN,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC;QACpB,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;QAEnB,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QAClD,IAAI,CAAC,cAAc,EAAE,CAAC;QAEtB,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,IAAI,CAAC,YAAY,EAAE,CAAC;IACtB,CAAC;IACD,WAAW;QACT,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,CAAC,SAAS,CACvC,CAAC,OAAiB,EAAE,EAAE;YACpB,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC;QAC7B,CAAC,EACD,CAAC,KAAK,EAAE,EAAE;YACR,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CACF,CAAC;IACJ,CAAC;IACD,cAAc;QACZ,IAAI,CAAC,aAAa,CAAC,aAAa,EAAE,CAAC,SAAS,CAC1C,CAAC,UAAuB,EAAE,EAAE;YAC1B,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC/B,CAAC,EACD,CAAC,KAAK,EAAE,EAAE;YACR,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CACF,CAAC;IACJ,CAAC;IACD,aAAa;QACX,IAAI,CAAC,aAAa,CAAC,YAAY,EAAE,CAAC,SAAS,CACzC,CAAC,SAAqB,EAAE,EAAE;YACxB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC7B,CAAC,EACD,CAAC,KAAK,EAAE,EAAE;YACR,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CACF,CAAC;IACJ,CAAC;IACD,YAAY;QACV,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,CAAC,SAAS,CACxC,CAAC,QAAmB,EAAE,EAAE;YACtB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QAC3B,CAAC,EACD,CAAC,KAAK,EAAE,EAAE;YACR,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CACF,CAAC;IACJ,CAAC;IACD,WAAW;QACT,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,CAAC,SAAS,CACvC,CAAC,OAAiB,EAAE,EAAE;YACpB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACzB,CAAC,EACD,CAAC,KAAK,EAAE,EAAE;YACR,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CACF,CAAC;IACJ,CAAC;IACD,SAAS,CAAC,QAA0B,EAAE,CAAM;QAC1C,kBAAkB;QAClB,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAC,EAAE,CAAC;QACrB,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC,WAAW,CAAC;QAClC,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC;QAChC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACnD,CAAC;IACD,YAAY,CAAC,QAA0B,EAAE,CAAM;QAC7C,kBAAkB;QAClB,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAC,EAAE,CAAC;QACrB,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC,WAAW,CAAC;QAClC,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC;QAChC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACnD,CAAC;IACD,YAAY,CAAC,QAA0B,EAAE,CAAM;QAC7C,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAC,EAAE,CAAC;QACrB,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC,OAAO,CAAC;QACzB,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,SAAS,CAAC;QAE7B,IAAI,CAAC,QAAQ,CAAC,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC;QACjC,IAAI,CAAC,QAAQ,CAAC,SAAS,GAAG,CAAC,CAAC,SAAS,CAAC;QACtC,IAAI,CAAC,QAAQ,CAAC,OAAO,GAAG,CAAC,CAAC,OAAO,CAAC;QAElC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACnD,CAAC;IAED,iBAAiB;QACf,IAAI,CAAC,aAAa;aACf,0BAA0B,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,WAAW,CAAC;aAC3D,SAAS,CACR,GAAG,EAAE;YACH,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,0BAA0B,CAAC,CAAC;YAClD,IAAI,CAAC,QAAQ,EAAE,CAAC;YAChB,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;QACvB,CAAC,EACD,CAAC,KAAK,EAAE,EAAE;YACR,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC;QAChD,CAAC,CACF,CAAC;IACN,CAAC;IACD,gBAAgB;QACd,8BAA8B;QAC9B,IAAI,CAAC,aAAa,CAAC,eAAe,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,SAAS,CACzD,GAAG,EAAE;YACH,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,gCAAgC,CAAC,CAAC;YACxD,IAAI,CAAC,QAAQ,EAAE,CAAC;YAChB,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;QACvB,CAAC,EACD,CAAC,KAAK,EAAE,EAAE;YACR,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,8BAA8B,CAAC,CAAC;QACtD,CAAC,CACF,CAAC;IACJ,CAAC;IAED,cAAc;QACZ,IAAI,CAAC,aAAa;aACf,kBAAkB,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,WAAW,CAAC;aACnD,SAAS,CACR,GAAG,EAAE;YACH,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,2CAA2C,CAAC,CAAC;YACnE,IAAI,CAAC,QAAQ,EAAE,CAAC;YAChB,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;QACvB,CAAC,EACD,CAAC,KAAK,EAAE,EAAE;YACR,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAC;QACrD,CAAC,CACF,CAAC;QACJ,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;IACvB,CAAC;IAED,YAAY,CAAC,CAAC;QACZ,kBAAkB;QAClB,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC;IACxE,CAAC;IAED,aAAa,CAAC,CAAC;QACb,kBAAkB;QAClB,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,IAAI,CAAC,mBAAmB,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;YACpE,MAAM,OAAO,GAAG,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC;YAChD,IAAI,CAAC,KAAK,OAAO,EAAE;gBACjB,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;aAC3C;SACF;IACH,CAAC;IAED,EAAE;IAEF,YAAY,CAAC,EAAE,EAAE,EAAE;QACjB,IAAI,CAAC,aAAa,CAAC,qBAAqB,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,SAAS,CACxD,CAAC,OAAkC,EAAE,EAAE;YACrC,IAAI,CAAC,uBAAuB,GAAG,OAAO,CAAC,MAAM,CAAC;YAC9C,IAAI,CAAC,gBAAgB,GAAG,OAAO,CAAC,MAAM,CAAC;YACvC,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;YACrC,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;YAC1B,6CAA6C;QAC/C,CAAC,EACD,CAAC,KAAK,EAAE,EAAE;YACR,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,qCAAqC,CAAC,CAAC;QAC7D,CAAC,CACF,CAAC;IACJ,CAAC;IACD,cAAc;QACZ,IAAI,CAAC,aAAa;aACf,UAAU,CACT,IAAI,CAAC,UAAU,CAAC,WAAW,EAC3B,IAAI,CAAC,UAAU,CAAC,YAAY,EAC5B,IAAI,CAAC,cAAc,EACnB,IAAI,CAAC,YAAY,EACjB,IAAI,CAAC,UAAU,EACf,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,eAAe,EACpB,IAAI,CAAC,aAAa,EAClB,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,mBAAmB,CACzB;aACA,SAAS,CACR,CAAC,GAA8B,EAAE,EAAE;YACjC,IAAI,CAAC,uBAAuB,GAAG,GAAG,CAAC,MAAM,CAAC;YAC1C,IAAI,CAAC,gBAAgB,GAAG,GAAG,CAAC,MAAM,CAAC;YACnC,IAAI,CAAC,UAAU,GAAG,GAAG,CAAC,UAAU,CAAC;QACnC,CAAC,EACD,CAAC,KAAK,EAAE,EAAE;YACR,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CACF,CAAC;IACN,CAAC;IAED,cAAc;QACZ,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,CAAC,SAAS,CACvC,CAAC,WAAgB,EAAE,EAAE;YACnB,IAAI,CAAC,OAAO,GAAG,WAAW,CAAC;YAC3B,6BAA6B;QAC/B,CAAC,EACD,CAAC,KAAK,EAAE,EAAE;YACR,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAC;QACpD,CAAC,CACF,CAAC;IACJ,CAAC;IAED,wBAAwB,CAAC,OAAO,EAAE,CAAM;QACtC,IAAI,CAAC,aAAa,CAAC,wBAAwB,CAAC,OAAO,CAAC,CAAC,SAAS,CAC5D,CAAC,oBAAkC,EAAE,EAAE;YACrC,IAAI,CAAC,0BAA0B,GAAG,oBAAoB,CAAC;YACvD,IAAI,CAAC,oBAAoB,CAAC,YAAY;gBACpC,IAAI,CAAC,0BAA0B,CAAC,IAAI,CAAC;YAEvC,IAAI,QAAQ,GAAG,GAAG,CAAC;YACnB,IAAI,QAAQ,GAAG,GAAG,CAAC;YAEnB,QAAQ,GAAG,CAAC,CAAC,WAAW,GAAG,CAAC,CAAC,WAAW,CAAC;YACzC,QAAQ,GAAG,QAAQ,GAAG,IAAI,CAAC,0BAA0B,CAAC,IAAI,CAAC;YAC3D,yBAAyB;YACzB,IAAI,CAAC,oBAAoB,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC;YACpC,IAAI,CAAC,oBAAoB,CAAC,QAAQ,GAAG,CAAC,CAAC,EAAE,CAAC;YAC1C,IAAI,CAAC,oBAAoB,CAAC,WAAW,GAAG,CAAC,CAAC,WAAW,CAAC;YACtD,IAAI,CAAC,oBAAoB,CAAC,SAAS,GAAG,CAAC,CAAC,WAAW,CAAC;YACpD,IAAI,CAAC,oBAAoB,CAAC,OAAO,GAAG,CAAC,CAAC,OAAO,CAAC;YAC9C,IAAI,CAAC,oBAAoB,CAAC,SAAS,GAAG,CAAC,CAAC,SAAS,CAAC;YAClD,IAAI,CAAC,oBAAoB,CAAC,QAAQ,GAAG,CAAC,CAAC,SAAS,CAAC;YACjD,IAAI,CAAC,oBAAoB,CAAC,UAAU,GAAG,CAAC,CAAC,SAAS,CAAC,EAAE,CAAC;YACtD,IAAI,CAAC,oBAAoB,CAAC,MAAM,GAAG,CAAC,CAAC,OAAO,CAAC;YAC7C,IAAI,CAAC,oBAAoB,CAAC,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC;YAC5C,IAAI,CAAC,oBAAoB,CAAC,WAAW,GAAG,CAAC,CAAC,WAAW,CAAC;YACtD,IAAI,CAAC,oBAAoB,CAAC,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;YACvD,IAAI,CAAC,oBAAoB,CAAC,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;YAClD,IAAI,CAAC,oBAAoB,CAAC,kBAAkB,GAAG,QAAQ,CAAC;YACxD,IAAI,CAAC,oBAAoB,CAAC,kBAAkB,GAAG,QAAQ,CAAC;YACxD,IAAI,CAAC,oBAAoB,CAAC,WAAW;gBACnC,IAAI,CAAC,oBAAoB,CAAC,kBAAkB;oBAC5C,IAAI,CAAC,oBAAoB,CAAC,QAAQ,CAAC;YAErC,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,CAAC,CAAC,EAAE,CAAC;YAC3B,IAAI,CAAC,KAAK,CAAC,UAAU,GAAG,CAAC,CAAC,SAAS,CAAC,EAAE,CAAC;YACvC,IAAI,CAAC,KAAK,CAAC,cAAc,GAAG,IAAI,CAAC,0BAA0B,CAAC,EAAE,CAAC;YAC/D,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;YACnC,IAAI,CAAC,KAAK,CAAC,kBAAkB,GAAG,QAAQ,CAAC;YACzC,IAAI,CAAC,KAAK,CAAC,kBAAkB,GAAG,QAAQ,CAAC;YACzC,IAAI,CAAC,KAAK,CAAC,WAAW;gBACpB,IAAI,CAAC,oBAAoB,CAAC,kBAAkB;oBAC5C,IAAI,CAAC,oBAAoB,CAAC,QAAQ,CAAC;YAErC,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE;gBAC7B,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;gBAC5D,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBACpC,IAAI,CAAC,mBAAmB,CAAC,GAAG,EAAE,CAAC;gBAC/B,IAAI,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC;gBACtB,IAAI,CAAC,oBAAoB,GAAG,EAAE,CAAC;gBAC/B,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;aACjB;iBAAM;gBACL,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;gBACzD,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBACjC,IAAI,CAAC,oBAAoB,GAAG,EAAE,CAAC;gBAC/B,IAAI,CAAC,oBAAoB,GAAG,EAAE,CAAC;aAChC;YACD,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC;QAClC,CAAC,EACD,CAAC,KAAK,EAAE,EAAE;YACR,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAC;QACrD,CAAC,CACF,CAAC;IACJ,CAAC;IAED,WAAW,CAAC,CAAC;QACX,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAC7B,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,SAAS,CACvD,GAAG,EAAE;YACH,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,4BAA4B,CAAC,CAAC;YAEpD,OAAO,IAAI,CAAC,mBAAmB,CAAC,MAAM,GAAG,CAAC,EAAE;gBAC1C,IAAI,CAAC,mBAAmB,CAAC,GAAG,EAAE,CAAC;aAChC;YACD,OAAO,IAAI,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE;gBACjC,IAAI,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC;aACvB;YACD,IAAI,CAAC,QAAQ,EAAE,CAAC;YAChB,IAAI,CAAC,mBAAmB,GAAG,KAAK,CAAC;QACnC,CAAC,EACD,CAAC,KAAK,EAAE,EAAE;YACR,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC;QAChD,CAAC,CACF,CAAC;IACJ,CAAC;IAEM,aAAa;QAClB,MAAM,IAAI,GAAG,QAAQ,CAAC,cAAc,CAAC,kBAAkB,CAAC,CAAC;QACzD,kDAAW,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE;YAChC,gCAAgC;YAChC,MAAM,QAAQ,GAAG,GAAG,CAAC;YACrB,MAAM,UAAU,GAAG,GAAG,CAAC;YACvB,MAAM,SAAS,GAAG,CAAC,MAAM,CAAC,MAAM,GAAG,QAAQ,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC;YAC5D,MAAM,UAAU,GAAG,SAAS,CAAC;YAE7B,MAAM,cAAc,GAAG,MAAM,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;YACrD,MAAM,GAAG,GAAG,IAAI,kCAAK,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,sBAAsB;YAC9D,MAAM,QAAQ,GAAG,CAAC,CAAC;YACnB,GAAG,CAAC,QAAQ,CAAC,cAAc,EAAE,KAAK,EAAE,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC;YACtE,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,gBAAgB;QACxC,CAAC,CAAC,CAAC;IACL,CAAC;IACD,QAAQ;QACN,IAAI,CAAC,cAAc,EAAE,CAAC;IACxB,CAAC;IAED,YAAY;QACV,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;QACzB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;QACxB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QACvB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;QACxB,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;QAC5B,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;QAC1B,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;QACrB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;QACnB,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC;QAChC,IAAI,CAAC,cAAc,EAAE,CAAC;IACxB,CAAC;IAED,iBAAiB,CAAC,KAAW;QAC3B,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QACvD,MAAM,KAAK,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;QACnC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IACvD,CAAC;IACD,eAAe,CAAC,KAAW;QACzB,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IACvD,CAAC;IACD,WAAW,CAAC,KAAU;QACpB,IAAI,CAAC,UAAU,CAAC,WAAW,GAAG,KAAK,CAAC,IAAI,CAAC;QACzC,IAAI,CAAC,cAAc,EAAE,CAAC;IACxB,CAAC;IACD,mBAAmB,CAAC,KAAqB;QACvC,IAAI,CAAC,mBAAmB,GAAG,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC;IACpD,CAAC;;0EArcU,aAAa;2GAAb,aAAa;QCzB1B,yEAAwB;QACpB;QAAA,yEAAsB;QAClB;QAAA,wEAAO;QAAA,sEAAW;QAAA,4DAAQ;QAC1B;QAAA,2EACqB;QADd,yLAA4B;QAAnC,4DACqB;QAC3B;QAAA,4DAAM;QACN;QAAA,0EAAsB;QAClB;QAAA,4EAA2B;QAAA,oEAAQ;QAAA,4DAAQ;QACzC;QAAA,6EACW;QADyD,yLAA0B;QAE5F;QAAA,iHAA+F;QACjG;QAAA,4DAAS;QACf;QAAA,4DAAM;QACN;QAAA,0EAAsB;QAClB;QAAA,4EAAyB;QAAA,kEAAM;QAAA,4DAAQ;QACvC;QAAA,6EAAmG;QAAnC,uLAAwB;QACtF;QAAA,iHAAuF;QACzF;QAAA,4DAAS;QACf;QAAA,4DAAM;QACN;QAAA,0EAAsB;QAClB;QAAA,6EAAgC;QAAA,mEAAO;QAAA,4DAAQ;QAC/C;QAAA,8EACW;QAD6D,wLAAyB;QAE/F;QAAA,iHAA2F;QAC7F;QAAA,4DAAS;QACb;QAAA,4DAAM;QACN;QAAA,0EAAsB;QACpB;QAAA,6EAA0B;QAAA,sEAAU;QAAA,4DAAQ;QAC5C;QAAA,6EAKe;QAFb,qLAAuB,mGAAkB,6BAAyB,IAA3C;QAHzB,4DAKe;QACjB;QAAA,4DAAM;QACN;QAAA,0EAAsB;QACpB;QAAA,6EAA0B;QAAA,oEAAQ;QAAA,4DAAQ;QAC1C;QAAA,6EAKe;QAFb,mLAAqB,mGAAkB,2BAAuB,IAAzC;QAHvB,4DAKe;QACjB;QAAA,4DAAM;QACJ;QAAA,0EAAsB;QACd;QAAA,6EAAgC;QAAA,wEAAY;QAAA,4DAAQ;QACpD;QAAA,6EAE4D;QAFrD,+LAAiC,2GAET,+BAA2B,IAFlB;QAAxC,4DAE4D;QACpE;QAAA,4DAAM;QAGR;QAAA,4DAAM;QACN;QAAA,2EAA6C;QACzC;QAAA,8EAAkE;QAArB,sIAAS,cAAU,IAAC;QAAC,oEAA4B;QAAC,mEAAM;QAAA,4DAAS;QAC9G;QAAA,8EAAmE;QAAzB,sIAAS,kBAAc,IAAC;QAAC,oEAA4B;QAAC,kEAAK;QAAA,4DAAS;QAC9G;QAAA,8EAAuC;QAAA,oEAA0B;QAAC,wEAAW;QAAA,4DAAS;QAC1F;QAAA,4DAAM;QACN;QAAA,6GAcM;QAEN;QAAA,6GA8DM;QAEN;QAAA,6GAkCM;QACN;QAAA,uEAAK;QACH;QAAA,kHAAwI;QACxI;QAAA,kHAAmH;QACrH;QAAA,4DAAM;QAEN;QAAA,yMA0Bc;QAEd;QAAA,yMAoBc;QAEd;QAAA,2MAcc;QACd;;QAhPe,0DAA4B;QAA5B,uFAA4B;QAKiC,0DAA0B;QAA1B,qFAA0B;QAE/D,0DAAY;QAAZ,kFAAY;QAKmB,0DAAwB;QAAxB,mFAAwB;QAC3D,0DAAU;QAAV,gFAAU;QAK+B,0DAAyB;QAAzB,oFAAyB;QAEnE,0DAAW;QAAX,iFAAW;QAQzC,0DAAuB;QAAvB,kFAAuB;QASvB,0DAAqB;QAArB,gFAAqB;QAMR,0DAAiC;QAAjC,4FAAiC;QAY5C,2DAAkB;QAAlB,kFAAkB;QAgBlB,0DAAmB;QAAnB,mFAAmB;QAgEqB,0DAAyB;QAAzB,yFAAyB;QAoC5D,0DAAyB;QAAzB,yFAAyB;QACzB,0DAAyB;QAAzB,yFAAyB;;;;;;;;;;;;;;;;;;;ACvJ7B,MAAM,eAAe;IAE1B,gBAAgB,CAAC;IAEjB,QAAQ;IACR,CAAC;;8EALU,eAAe;6GAAf,eAAe;QCxB5B,4EAAyB;QACvB;QAAA,yEAA4B;QAC1B;QAAA,wEAAwB;QACtB;QAAA,qEAAI;QAAA,oFAAyB;QAAA,4DAAK;QAClC;QAAA,qEAAI;QAAA,2FAA+B;QAAA,4DAAK;QACxC;QAAA,sEAAI;QAAA,gFAAoB;QAAA,4DAAK;QAC7B;QAAA,sEAAI;QAAA,mEAAO;QAAA,wEAAmC;QAAA,2EAAe;QAAA,4DAAI;QACnE;QAAA,4DAAK;QACL;QAAA,yEAAwB;QACtB;QAAA,sEAAI;QAAA,6EAAiB;QAAA,wEAAsC;QAAA,2EAAe;QAAA,4DAAI;QAC9E;QAAA,sEAAI;QAAA,+EAAmB;QAAA,wEAAkC;QAAA,4EAAgB;QAAA,4DAAI;QAC/E;QAAA,4DAAK;QACP;QAAA,4DAAM;QACR;QAAA,4DAAS;QAET;;;;;;;;;;;;;;;;;;;;;;;IELM,yEAAiG;IAC/F;IAAA,4EAAyD;IAAA,iEAAO;IAAA,4DAAS;IACzE;IAAA,yEAAQ;IAAA,uDAAqB;IAAA,4DAAS;IAAC,0EACvC;IAAA,uEAA+B;IAAA,uDAA2B;;IAAA,4DAAI;IAChE;IAAA,4DAAM;;;IAFI,0DAAqB;IAArB,qFAAqB;IACE,0DAA2B;IAA3B,oJAA2B;;ADN3D,MAAM,0BAA0B;IAYrC;QAVA,4BAAuB,GAAQ;YAC7B;gBACE,QAAQ,EAAE,CAAC;gBACX,KAAK,EAAE,CAAC;aACT;SACF,CAAC;QACF,UAAK,GAAQ,EAAE,CAAC;IAIA,CAAC;IAEjB,QAAQ;IACR,CAAC;IACD,UAAU;QACR,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;QACpC,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QAC9B,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC9C,MAAM,gBAAgB,GAAG,QAAQ,CAAC,cAAc,CAAC,eAAe,CAAC,CAAC;QAClE,MAAM,aAAa,GAAG,QAAQ,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC;QAC5D,gBAAgB,CAAC,SAAS,GAAG,EAAE,CAAC;QAChC,gBAAgB,CAAC,KAAK,EAAE,CAAC;QACzB,aAAa,CAAC,SAAS,GAAG,EAAE,CAAC;QAC7B,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;IAC5C,CAAC;;oGA1BU,0BAA0B;wHAA1B,0BAA0B;QCPvC,sEAAK;QACH;QAAA,yEAAiB;QACf;QAAA,yEAAsB;QACpB;QAAA,wEAAO;QAAA,mEAAQ;QAAA,4DAAQ;QACvB;QAAA,2EAA4G;QAApD,gMAAsB;QAA9E,4DAA4G;QAC5G;QAAA,yEAAO;QAAA,+EAAmB;QAAA,4DAAQ;QAClC;QAAA,4EAAqH;QAA9E,8LAAmB,sGAA6C,gBAAY,IAAzD;QAA1D,4DAAqH;QACrH;QAAA,6EAA4D;QAAvB,mJAAS,gBAAY,IAAC;QAAC,+DAAG;QAAA,4DAAS;QAC1E;QAAA,4DAAM;QACN;QAAA,0EAAsB;QACpB;QAAA,yHAIM;QACR;QAAA,4DAAM;QACR;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;;QAd8D,0DAAsB;QAAtB,iFAAsB;QAEvC,0DAAmB;QAAnB,8EAAmB;QAIW,0DAA0B;QAA1B,gGAA0B;;;;;;;;;;;;;;;;;;;;ACH9F,MAAM,qBAAqB;IAChC,gBAAgB,CAAC;IAEjB,QAAQ;IACR,CAAC;;0FAJU,qBAAqB;mHAArB,qBAAqB;QCPlC,yEAAuB;QACrB;QAAA,wEAAiB;QAAA,iFAAsB;QAAA,4DAAK;QAC5C;QACA;QAAA,oFAAiD;QACnD;QAAA,4DAAM;QACN;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACWO,MAAM,oBAAoB;IAK/B,YACU,YAA4B,EAC5B,aAA4B,EAC5B,QAAyB,EACzB,KAAa,EACd,WAAwB;QAJvB,iBAAY,GAAZ,YAAY,CAAgB;QAC5B,kBAAa,GAAb,aAAa,CAAe;QAC5B,aAAQ,GAAR,QAAQ,CAAiB;QACzB,UAAK,GAAL,KAAK,CAAQ;QACd,gBAAW,GAAX,WAAW,CAAa;QATjC,gBAAW,GAAG,KAAK,CAAC;QACpB,UAAK,GAAQ,EAAE,CAAC;IASb,CAAC;IAEJ,QAAQ;QACN,IAAI,CAAC,KAAK,CAAC,eAAe,GAAG,MAAM,CAAC;QACpC,IAAI,CAAC,KAAK,CAAC,WAAW,GAAG,KAAK,CAAC;QAC/B,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,KAAK,CAAC;QAC5B,IAAI,CAAC,KAAK,CAAC,YAAY,GAAG,KAAK,CAAC;QAChC,IAAI,CAAC,KAAK,CAAC,eAAe,GAAG,KAAK,CAAC;QACnC,IAAI,CAAC,KAAK,CAAC,UAAU,GAAG,KAAK,CAAC;QAC9B,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC;QAC3B,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC;QAC3B,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,IAAI,IAAI,CAAC,YAAY,CAAC,CAAC;QAC9C,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,KAAK,CAAC;QAC5B,IAAI,CAAC,KAAK,CAAC,cAAc,GAAG,KAAK,CAAC;QAClC,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,sBAAsB,CAAC;QAC5C,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,MAAM,CAAC;QACzD,IAAI,CAAC,KAAK,CAAC,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;IACzD,CAAC;IAED,MAAM;QACJ,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACxB,IAAI,CAAC,aAAa,CAAC,yBAAyB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,SAAS,CAChE,GAAG,EAAE;YACH,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,sCAAsC,CAAC,CAAC;QAChE,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,+BAA+B,CAAC,CAAC;QACvD,CAAC,CACF,CAAC;IACJ,CAAC;;wFAxCU,oBAAoB;kHAApB,oBAAoB;QChBjC,wEAAuB;QACrB;QAAA,wEAA4B;QAC1B;QAAA,uEAAkC;QAAA,+DAAI;QAAA,4DAAI;QAC5C;QAAA,4DAAK;QACP;QAAA,4DAAK;QACL;QAAA,wEAA0B;QACxB;QAAA,yEAA0B;QACxB;QAAA,wEAAoG;QAAzE,8KAAoC;QAC7D;QAAA,mEAA0B;QAAC,sEAAS;QAAA,4DAAI;QAC5C;QAAA,4DAAK;QACL;QAAA,yEAA0B;QACxB;QAAA,wEAA2B;QACzB;QAAA,mEAA6B;QAAA,uEAAW;QAAA,4DAAI;QAChD;QAAA,4DAAK;QACP;QAAA,4DAAK;QAEL;QAAA,iEAAI;QACJ;QAAA,0EAAmF;QACjF;QAAA,kFAA6B;QAC3B;QAAA,2EAAsB;QACpB;QAAA,2EAAsB;QACpB;QAAA,2EAAwB;QACtB;QAAA,6EAAmC;QAAA,oFAAwB;QAAA,4DAAQ;QACnE;QAAA,iFAAyK;QAA/H,wMAAmC;QAA7E,4DAAyK;QAC3K;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAAA,2EAAsB;QACpB;QAAA,2EAAwB;QACtB;QACA;QACF;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAAA,2EAAsB;QACpB;QAAA,2EAAwB;QACtB;QAEF;QAAA,4DAAM;QACR;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAAA,2EAAiB;QACf;QAAA,2EAAsB;QACpB;QAAA,2EAAwB;QACtB;QAAA,6EAAmC;QAAA,wEAAY;QAAA,4DAAQ;QACvD;QAAA,iFAAiJ;QAAvG,oMAA+B;QAAzE,4DAAiJ;QACnJ;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAAA,2EAAsB;QACpB;QAAA,2EAAwB;QACtB;QAAA,6EAAmC;QAAA,qEAAS;QAAA,4DAAQ;QACpD;QAAA,iFAAqI;QAA3F,iMAA4B;QAAtE,4DAAqI;QACvI;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAAA,2EAAsB;QACpB;QAAA,2EAAwB;QACtB;QAAA,6EAAmC;QAAA,yEAAa;QAAA,4DAAQ;QACxD;QAAA,iFAAqJ;QAA3G,qMAAgC;QAA1E,4DAAqJ;QACvJ;QAAA,4DAAM;QACR;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAAA,4EAAiB;QACf;QAAA,4EAAsB;QACpB;QAAA,4EAAwB;QACtB;QAAA,8EAAmC;QAAA,4EAAe;QAAA,4DAAQ;QAC1D;QAAA,kFAAoK;QAA1H,yMAAmC;QAA7E,4DAAoK;QACtK;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAAA,4EAAsB;QACpB;QAAA,4EAAwB;QACtB;QAAA,8EAAmC;QAAA,wEAAW;QAAA,4DAAQ;QACtD;QAAA,kFAA6I;QAAnG,oMAA8B;QAAxE,4DAA6I;QAC/I;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAAA,4EAAsB;QACpB;QAAA,4EAAwB;QACtB;QAAA,8EAAmC;QAAA,qEAAQ;QAAA,4DAAQ;QACnD;QAAA,kFAAiI;QAAvF,iMAA2B;QAArE,4DAAiI;QACnI;QAAA,4DAAM;QACR;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAAA,4EAAiB;QACf;QAAA,4EAAsB;QACpB;QAAA,4EAAwB;QACtB;QAAA,8EAAmC;QAAA,6EAAgB;QAAA,4DAAQ;QAC3D;QAAA,kFAAyI;QAA/F,iMAA2B;QAArE,4DAAyI;QAC3I;QAAA,4DAAM;QACR;QAAA,4DAAM;QACR;QAAA,4DAAM;QAGN;QAAA,4EAAiB;QACf;QAAA,4EAAsB;QACpB;QAAA,4EAAwB;QACtB;QAAA,8EAAmC;QAAA,uEAAU;QAAA,4DAAQ;QACrD;QAAA,kFACkG;QADtD,mMAA6B;QAAzE,4DACkG;QACpG;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAAA,4EAAsB;QACpB;QAAA,4EAAwB;QACtB;QAAA,8EAAmC;QAAA,iFAAoB;QAAA,4DAAQ;QAC/D;QAAA,kFAA2J;QAAjH,wMAAkC;QAA5E,4DAA2J;QAC7J;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAAA,4EAAsB;QACpB;QAAA,4EAAwB;QACtB;QAAA,8EAAmC;QAAA,8EAAiB;QAAA,4DAAQ;QAC5D;QAAA,mFAAgG;QAAnE,mMAA4B;QACvD;QAAA,2EAAQ;QAAA,+DAAE;QAAA,4DAAS;QACnB;QAAA,2EAAQ;QAAA,+DAAE;QAAA,4DAAS;QACnB;QAAA,2EAAQ;QAAA,+DAAE;QAAA,4DAAS;QACnB;QAAA,2EAAQ;QAAA,gEAAG;QAAA,4DAAS;QACpB;QAAA,2EAAQ;QAAA,gEAAG;QAAA,4DAAS;QACpB;QAAA,2EAAQ;QAAA,mEAAM;QAAA,4DAAS;QACzB;QAAA,4DAAS;QACX;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAAA,4EAAsB;QACpB;QAAA,4EAAwB;QAExB;QAAA,4DAAM;QACR;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;QAAA,4EAAwB;QACtB;QAAA,8EAAyC;QAAA,kEAAK;QAAA,4DAAQ;QACtD;QAAA,qFAA+F;QAAhE,oMAA2B;QAC1D,kGAA6B;QAAA,4DAAW;QAC1C;QAAA,4DAAM;QACN;QAAA,4EAAwC;QACpC;QAAA,+EAAqF;QAApB,8IAAS,YAAQ,IAAC;QAAE,mEAAM;QAAA,4DAAS;QACpG;QAAA,+EAAiE;QAAA,kEAAK;QAAA,4DAAS;QACnF;QAAA,4DAAM;QAER;QAAA,4DAAO;QACT;QAAA,4DAAM;QACN;QAAA,kEAAI;QACJ;;QArIO,0DAA8B;QAA9B,8IAA8B;QAK+B,0DAAmC;QAAnC,4FAAmC;QAU/E,2DAAwB;QAAxB,qFAAwB;QAMI,2DAAmC;QAAnC,8FAAmC;QAoBnC,2DAA+B;QAA/B,0FAA+B;QAM/B,2DAA4B;QAA5B,uFAA4B;QAM5B,2DAAgC;QAAhC,2FAAgC;QAQhC,2DAAmC;QAAnC,8FAAmC;QAMnC,2DAA8B;QAA9B,yFAA8B;QAM9B,2DAA2B;QAA3B,sFAA2B;QAQ3B,2DAA2B;QAA3B,sFAA2B;QAUzB,2DAA6B;QAA7B,wFAA6B;QAO/B,2DAAkC;QAAlC,6FAAkC;QAM/C,2DAA4B;QAA5B,uFAA4B;QAkB9B,2DAA2B;QAA3B,sFAA2B;;;;;;;;;;;;;;;;;;;;;;;;IE3H9D,yEAAsD;IACpD;IAAA,yEAAuB;IACrB;IAAA,wEAAsB;IAAA,+FAAoC;IAAA,4DAAK;IAC/D;IAAA,uEAAgB;IAAA,6GAAkD;IAAA,4DAAI;IACtE;IAAA,oEAAiB;IACjB;IAAA,qEAAG;IAAA,6GAAiD;IAAA,4DAAI;IACxD;IAAA,wEAAgB;IACd;IAAA,wEAAmF;IAAzC,uRAAS,iFAAgB,KAAC;IAAe,oEAAQ;IAAA,4DAAI;IACjG;IAAA,4DAAI;IACN;IAAA,4DAAM;IACR;IAAA,4DAAM;;;;IAEN,yEAA4C;IAC1C;IAAA,0EAAwC;IACtC;IAAA,0EAAmB;IACjB;IAAA,mFAA4D;IAA9C,yTAAkB,2FAA0B,KAAC;IAAC,4DAAe;IAC7E;IAAA,4DAAM;IACR;IAAA,4DAAM;IACR;IAAA,4DAAM;;ADZD,MAAM,aAAa;IAGxB;QAFA,iBAAY,GAAG,KAAK,CAAC;IAEN,CAAC;IAEhB,QAAQ,KAAI,CAAC;IAEb,cAAc;QACZ,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;IAC3B,CAAC;IAED,kBAAkB,CAAC,YAAqB;QACtC,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;IACnC,CAAC;;0EAbU,aAAa;2GAAb,aAAa;QCP1B,yEAA4B;QAC1B;QAAA,0GAUM;QAEN;QAAA,0GAMM;QACR;QAAA,4DAAM;QACN;;QApBQ,0DAAmB;QAAnB,mFAAmB;QAYnB,0DAAkB;QAAlB,kFAAkB;;;;;;;;;;;;;;;;;;ACNnB,MAAM,uBAAuB;IAElC,gBAAgB,CAAC;IAEjB,QAAQ;IACR,CAAC;;8FALU,uBAAuB;qHAAvB,uBAAuB;QCPpC,oEAAG;QACD,uFACF;QAAA,4DAAI;QACJ;;;;;;;;;;;;;;;;;;ACH+D;;;AAQxD,MAAM,uBAAuB;IAElC,YAAoB,YAA4B;QAA5B,iBAAY,GAAZ,YAAY,CAAgB;IAAG,CAAC;IAEpD,QAAQ,KAAI,CAAC;IAEb,SAAS,CAAC,QAA0B;QAClC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACnD,CAAC;;8FARU,uBAAuB;qHAAvB,uBAAuB;;QCRpC,4EAAqH;QACnH;QAAA,yEAAmC;QACjC;QAAA,yEAA2B;QACzB;QAAA,yEAA0B;QACxB;QAAA,wEAA0D;QAAA,uEAAW;QAAA,4DAAK;QAC1E;QAAA,6EAA2F;QAA5C,4RAAS,oEAAc,KAAC;QACrE;QAAA,2EAAyB;QAAA,kEAAO;QAAA,4DAAO;QACzC;QAAA,4DAAS;QACX;QAAA,4DAAM;QACN;QAAA,0EAAwB;QACtB,iFACF;QAAA,4DAAM;QACR;QAAA,4DAAM;QACR;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IEQY,yEAAkE;IAChE;IAAA,wEAA+C;IAAA,oEAAS;IAAA,4DAAI;IAC9D;IAAA,4DAAK;;IADiB,0DAA0B;IAA1B,6IAA0B;;;;IAEhD,yEAAkE;IAChE;IAAA,wEAAiD;IAAC,+EAAmB;IAAA,4DAAI;IAC3E;IAAA,4DAAK;;IADiB,0DAA4B;IAA5B,6IAA4B;;;;IAElD,yEAAkE;IAChE;IAAA,wEAAiD;IAAC,uEAAW;IAAA,4DAAI;IACnE;IAAA,4DAAK;;IADiB,0DAA4B;IAA5B,6IAA4B;;;IAElD,yEAAkE;IAChE;IAAA,wEAAiD;IAAC,4EAAgB;IAAA,4DAAI;IACxE;IAAA,4DAAK;;IADiB,0DAA4B;IAA5B,6IAA4B;;;IAElD,yEAAkE;IAChE;IAAA,wEAAiD;IAAC,wEAAY;IAAA,4DAAI;IACpE;IAAA,4DAAK;;IADiB,0DAA4B;IAA5B,6IAA4B;;;;IAMlD,0EAA8C;IAC5C;IAAA,wEAAkC;IAChC;IAAA,mEAA0B;IAAC,wEAAY;IAAA,4DAAI;IAC7C;IAAA,qEAAoC;IACpC;IAAA,wEAA4C;IAAnB,oSAAS,yEAAQ,KAAC;IACzC;IAAA,oEAA8B;IAAC,mEAAM;IAAA,4DAAI;IAC7C;IAAA,4DAAM;;;IARR,0EAAkD;IAChD;IAAA,wEAAqD;IAAA,uDAA4D;;IAAA,4DAAI;IACrH;IAAA,wHAMM;IACR;IAAA,4DAAM;;;IARiD,0DAA4D;IAA5D,8LAA4D;;;;IAUnH,+EAAoG;IAArB,ySAAY,yEAAO,KAAC;IACjG;IAAA,gFAC+B;IAA7B,0TAAa,0FACvB,IADsC;IAD9B,4DAC+B;IAC/B;IAAA,gFACwC;IAA7B,0TAAa,0FAChC,IAD+C;IADvC,4DACwC;IACxC;IAAA,6EAAyF;IAAA,iEAAK;IAAA,4DAAS;IACzG;IAAA,4DAAO;;;;IAJH,0DAA4B;IAA5B,0FAA4B;IAEnB,0DAA4B;IAA5B,0FAA4B;IAC/B,0DAA6B;IAA7B,iFAA6B;;;;AD5B1C,MAAM,mBAAmB;IAG9B,YAAmB,WAAwB,EAAU,QAAyB,EAAU,MAAc;QAAnF,gBAAW,GAAX,WAAW,CAAa;QAAU,aAAQ,GAAR,QAAQ,CAAiB;QAAU,WAAM,GAAN,MAAM,CAAQ;QAFtG,UAAK,GAAQ,EAAE,CAAC;IAE0F,CAAC;IAE3G,QAAQ;IACR,CAAC;IAED,KAAK;QACH,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC;aAC/B,SAAS,CAAC,IAAI,CAAC,EAAE;YAChB,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,sBAAsB,CAAC,CAAC;QAChD,CAAC,EAAE,KAAK,CAAC,EAAE;YACT,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,EAAE,GAAG,EAAE;YACN,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC;QACxC,CAAC,CAAC,CAAC;IACP,CAAC;IAED,QAAQ;QACN,OAAO,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC;IACrC,CAAC;IAED,MAAM;QACJ,YAAY,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,gCAAgC;QAClE,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,qBAAqB,CAAC,CAAC;QAC7C,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;IAClC,CAAC;;sFA3BU,mBAAmB;iHAAnB,mBAAmB;QC5BhC,yEAAqF;QACnF;QACA;QAAA,yEAAoG;QAClG;QAAA,yEAAgD;QAC9C;QAAA,yEAAgC;QAC9B;QAAA,uEAA6D;QAAA,qEAAiF;QAAA,4DAAI;QACpJ;QAAA,4DAAM;QACN;QAAA,0EAA+C;QAC7C;QAAA,wEAAoE;QAAA,gGAAoC;QAAA,4DAAI;QAC9G;QAAA,4DAAM;QACR;QAAA,4DAAM;QACR;QAAA,4DAAM;QACR;QAAA,4DAAM;QAEN;QAAA,0EAAwF;QACtF;QACA;QAAA,0EAA6B;QAC3B;QAAA,2EAAiJ;QAC/I;QAAA,2EAAsE;QACpE;QACA;QAAA,2EAAuB;QAErB;QAAA,0EAA+B;QAC7B;QAAA,gHAEK;QACL;QAAA,gHAEK;QACL;QAAA,gHAEK;QACL;QAAA,gHAEK;QACL;QAAA,gHAEK;QACP;QAAA,4DAAK;QAEL;QAAA,kHASM;QAEN;QAAA,qHAMO;QACT;QAAA,4DAAM;QAER;QAAA,4DAAM;QACN;QAAA,sEAAkD;QACpD;QAAA,4DAAM;QACR;QAAA,4DAAM;QACR;QAAA,4DAAM;QACN;;QA5D4C,0DAAwB;QAAxB,6IAAwB;QAGjB,0DAAwB;QAAxB,8IAAwB;QAe1D,2DAAgB;QAAhB,gFAAgB;QAGhB,0DAAgB;QAAhB,gFAAgB;QAGhB,0DAAgB;QAAhB,gFAAgB;QAGhB,0DAAgB;QAAhB,gFAAgB;QAGhB,0DAAgB;QAAhB,gFAAgB;QAKjB,0DAAgB;QAAhB,gFAAgB;QAWf,0DAAiB;QAAjB,iFAAiB;;;;;;;;;;;;;;;;;;;;;;;;;ACnD6B;;;;;;;;;;;;IC0BzD,yEAAkE;IAChE;IAAA,wEAAmD;IAAA,kEAAO;IAAA,4DAAI;IAChE;IAAA,4DAAK;;IADiB,0DAA8B;IAA9B,6IAA8B;;;;IAEpD,yEAAkE;IAChE;IAAA,wEAA+C;IAAA,0EAAe;IAAA,4DAAI;IACpE;IAAA,4DAAK;;IADiB,0DAA0B;IAA1B,6IAA0B;;;;IAKhD,yEAAkE;IAChE;IAAA,wEAAiD;IAAC,uEAAW;IAAA,4DAAI;IACnE;IAAA,4DAAK;;IADiB,0DAA4B;IAA5B,6IAA4B;;;;IAKlD,yEAAkE;IAChE;IAAA,wEAAkD;IAAC,+EAAmB;IAAA,4DAAI;IAC5E;IAAA,4DAAK;;IADiB,0DAA6B;IAA7B,6IAA6B;;;;IAEnD,yEAAkE;IAChE;IAAA,wEAAkD;IAAC,yEAAa;IAAA,4DAAI;IACtE;IAAA,4DAAK;;IADiB,0DAA6B;IAA7B,6IAA6B;;;;IAU3C,uEAA6D;IAC7D;IAAA,wEAAmD;IAAC,oEAAQ;IAAA,4DAAI;IAClE;IAAA,4DAAO;;IADe,0DAA8B;IAA9B,6IAA8B;;;IAFpD,yEAAkE;IAChE;IAAA,iHAEK;IACR;IAAA,4DAAK;;;IAHK,0DAAoD;IAApD,kHAAoD;;;;IAQnE,yEAAkE;IAChE;IAAA,wEAAqD;IAAC,kFAAsB;IAAA,4DAAI;IAClF;IAAA,4DAAK;;IADiB,0DAAgC;IAAhC,6IAAgC;;;;IAOtD,0EAA8C;IAC7C;IAAA,oEAAG;IAAC;IAAA,wEAAkC;IAAA,mEAA0B;IAAC,uDAAkC;IAAA,4DAAI;IACvG;IAAA,qEAAoC;IACnC;IAAA,yEAAkD;IAAzB,2VAAS,oEAAc,KAAC;IAC/C;IAAA,oEAA+B;IAAC,yEAAY;IAAA,4DAAI;IAClD;IAAA,yEAAwD;IACtD;IAAA,oEAA0B;IAAC,oEAAO;IAAA,4DAAI;IACxC;IAAA,sEAAoC;IACpC;IAAA,yEAA4C;IAAnB,gSAAS,0EAAQ,KAAC;IACzC;IAAA,oEAA8B;IAAC,mEAAM;IAAA,4DAAI;IAC7C;IAAA,4DAAM;;;IAT4D,0DAAkC;IAAlC,kKAAkC;IAIzE,0DAA8B;IAA9B,6IAA8B;;;IAR3D,0EAAkD;IAChD;IAAA,wEAAqD;IAAA,uDACxC;;IAAA,4DAAI;IACjB;IAAA,iHAUM;IACR;IAAA,4DAAM;;;IAbiD,0DACxC;IADwC,+OACxC;;;;IAcf,+EAAoG;IAArB,kSAAY,yEAAO,KAAC;IACjG;IAAA,gFACwC;IAA7B,mTAAa,0FAC1B,IADyC;IADvC,4DACwC;IACxC;IAAA,gFACwC;IAA7B,mTAAa,0FAC1B,IADyC;IADvC,4DACwC;IACxC;IAAA,6EAAyF;IAAA,iEAAK;IAAA,4DAAS;IACzG;IAAA,4DAAO;;;;IAJM,0DAA4B;IAA5B,0FAA4B;IAE5B,0DAA4B;IAA5B,0FAA4B;IAC/B,0DAA6B;IAA7B,iFAA6B;;;AD3EpC,MAAM,YAAY;IAmCvB,YACU,aAA4B,EAC5B,YAA4B,EAC7B,WAAwB,EACvB,QAAyB,EACzB,MAAc;QAJd,kBAAa,GAAb,aAAa,CAAe;QAC5B,iBAAY,GAAZ,YAAY,CAAgB;QAC7B,gBAAW,GAAX,WAAW,CAAa;QACvB,aAAQ,GAAR,QAAQ,CAAiB;QACzB,WAAM,GAAN,MAAM,CAAQ;QArCxB,UAAK,GAAQ,EAAE,CAAC;QAET,YAAO,GAAG;YACf,SAAS,EAAE,IAAI;YACf,UAAU,EAAE,IAAI;YAChB,QAAQ,EAAE,IAAI;YACd,WAAW,EAAE,IAAI;YACjB,MAAM,EAAE,IAAI;YACZ,OAAO,EAAE,IAAI;YACb,IAAI,EAAE,IAAI;YACV,KAAK,EAAE,IAAI;YACX,KAAK,EAAE,IAAI;YACX,SAAS,EAAE,IAAI;YACf,MAAM,EAAE,IAAI;YACZ,SAAS,EAAE,IAAI;SAChB,CAAC;QAEK,gBAAW,GAAG;YACnB,SAAS,EAAE,IAAI;YACf,UAAU,EAAE,IAAI;YAChB,QAAQ,EAAE,IAAI;YACd,WAAW,EAAE,IAAI;YACjB,MAAM,EAAE,IAAI;YACZ,OAAO,EAAE,IAAI;YACb,IAAI,EAAE,IAAI;YACV,KAAK,EAAE,IAAI;YACX,KAAK,EAAE,IAAI;YACX,SAAS,EAAE,IAAI;YACf,MAAM,EAAE,IAAI;SACb,CAAC;QACF,WAAM,GAAG,CAAC,CAAC;QACX,cAAS,GAAG,KAAK,CAAC;IAOf,CAAC;IAEJ,QAAQ;IACR,CAAC;IAED,KAAK;QACH,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,SAAS,CAC1C,IAAI,CAAC,EAAE;YACL,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,MAAM,CAAC;YACnD,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAC7B,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;YAChF,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,sBAAsB,CAAC,CAAC;QAChD,CAAC,EACD,KAAK,CAAC,EAAE;YACN,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YACnB,IAAI,KAAK,CAAC,MAAM,KAAK,GAAG,EAAC;gBACvB,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC;aAClD;iBAAI;gBACH,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;aACpC;QACH,CAAC,EACD,GAAG,EAAE;YACH,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC;QACxC,CAAC,CACF,CAAC;IACJ,CAAC;IAED,QAAQ;QACN,sDAAsD;QACtD,6BAA6B;QAC7B,mCAAmC;QACnC,IAAI;QAEJ,OAAO,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC;IACrC,CAAC;IAED,MAAM;QACJ,YAAY,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,gCAAgC;QAClE,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,qBAAqB,CAAC,CAAC;QAC7C,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;IAClC,CAAC;IAED,SAAS,CAAC,QAA0B;QAClC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACnD,CAAC;IAED,UAAU;QACR,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;IACvB,CAAC;IACD,WAAW;QACT,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,8CAA8C,EAAE,GAAG,EAAE;YACzE,IAAI,CAAC,aAAa,CAAC,iBAAiB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,SAAS,CAC9D,GAAG,EAAE;gBACH,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,0CAA0C,CAAC,CAAC;YACpE,CAAC,EACD,KAAK,CAAC,EAAE;gBACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,uCAAuC,CAAC,CAAC;YAC/D,CAAC,CACF,CAAC;YAEF,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC;QACxC,CAAC,CAAC,CAAC;IACL,CAAC;IACD,kEAAkE;IAClE,aAAa;QACX,IAAI,CAAC,WAAW,EAAE,CAAC;IACrB,CAAC;IAED,WAAW,CAAC,EAAU;QACpB,IAAI,CAAC,aAAa,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAC,SAAS,CAC/C,CAAC,OAAgB,EAAE,EAAE;YACnB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;YACvB,IAAI,CAAC,WAAW,GAAI,OAAO,CAAC;QAC9B,CAAC,EACD,KAAK,CAAC,EAAE;YACN,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CACF,CAAC;IACJ,CAAC;;wEAvHU,YAAY;0GAAZ,YAAY;;QCdzB,yEAA2C;QACzC;QAAA,yEAAmC;QACjC;QAEA;QAAA,yEAAoG;QAClG;QAAA,yEAAgD;QAC9C;QAAA,yEAAgC;QAC9B;QAAA,wEAA6D;QAC3D;QAAA,qEAC+D;QAAA,4DAAI;QACvE;QAAA,4DAAM;QACN;QAAA,0EAAgC;QAC9B;QAAA,wEAAoE;QAAA,gGAAoC;QAAA,4DAAI;QAC9G;QAAA,4DAAM;QACR;QAAA,4DAAM;QACR;QAAA,4DAAM;QAER;QAAA,4DAAM;QACR;QAAA,4DAAM;QAEN;QAAA,0EAAuB;QACrB;QAAA,2EAAyD;QACvD;QACA;QAEA;QAAA,0EAA+B;QAC7B;QAAA,yGAEK;QACL;QAAA,yGAEK;QACL;QAGA;QAAA,yGAEK;QACL;QAGA;QAAA,yGAEK;QACL;QAAA,yGAEK;QACL;QAGA;QAIM;QAAA,yGAII;QAKV;QAAA,yGAEK;QACP;QAAA,4DAAK;QAEL;QAAA,2GAcM;QAEN;QAAA,8GAMO;QACT;QAAA,4DAAM;QACR;QAAA,4DAAM;QAEN;QAAA,+EAAqH;QACnH;QAAA,2EAAmC;QACjC;QAAA,2EAA2B;QACzB;QAAA,2EAA0B;QACxB;QAAA,0EAA0D;QAAA,wEAAY;QAAA,4DAAK;QAC3E;QAAA,8EAA2F;QAA5C,mRAAS,oEAAc,KAAC;QACrE;QAAA,4EAAyB;QAAA,kEAAO;QAAA,4DAAO;QACzC;QAAA,4DAAS;QACX;QAAA,4DAAM;QACN;QAAA,2EAAwB;QACtB;QAAA,gFAA2D;QAA7B,yIAAY,mBAAe,IAAC;QACxD;QAAA,2EAAsB;QACpB;QAAA,2EAAiC;QAC/B;QAAA,6EAA2B;QAAA,sEAAU;QAAA,4DAAQ;QAC7C;QAAA,6EACW;QAD6B,gMAAmC;QAA3E,4DACW;QACb;QAAA,4DAAM;QACN;QAAA,2EAAiC;QAC/B;QAAA,6EAA8B;QAAA,uEAAW;QAAA,4DAAQ;QACjD;QAAA,iFACiE;QADC,iMAAoC;QAAtG,4DACiE;QACnE;QAAA,4DAAM;QACN;QAAA,4EAAiC;QAC/B;QAAA,8EAAgC;QAAA,sEAAS;QAAA,4DAAQ;QACjD;QAAA,8EACuC;QADyB,gMAAkC;QAAlG,4DACuC;QAEzC;QAAA,4DAAM;QACN;QAAA,4EAAiC;QAC/B;QAAA,8EAAyB;QAAA,kEAAK;QAAA,4DAAQ;QACtC;QAAA,8EACoC;QADwB,6LAA+B;QAA3F,4DACoC;QAEtC;QAAA,4DAAM;QACN;QAAA,4EAAiC;QAC/B;QAAA,8EAAkC;QAAA,sEAAS;QAAA,4DAAQ;QACnD;QAAA,8EACwC;QADwB,iMAAmC;QAAnG,4DACwC;QAC1C;QAAA,4DAAM;QACN;QAAA,4EAAiC;QAC/B;QAAA,8EAA6B;QAAA,kEAAK;QAAA,4DAAQ;QAC1C;QAAA,8EAC0C;QADyB,mMAAqC;QAAxG,4DAC0C;QAE5C;QAAA,4DAAM;QACR;QAAA,4DAAM;QAEN;QAAA,4EAAsB;QACpB;QAAA,4EAAiC;QAC/B;QAAA,8EAAgC;QAAA,mEAAM;QAAA,4DAAQ;QAC9C;QAAA,8EACqC;QADwB,8LAAgC;QAA7F,4DACqC;QAEvC;QAAA,4DAAM;QACN;QAAA,4EAAiC;QAC/B;QAAA,8EAA4B;QAAA,iEAAI;QAAA,4DAAQ;QACxC;QAAA,8EACmC;QADwB,4LAA8B;QAAzF,4DACmC;QACrC;QAAA,4DAAM;QACN;QAAA,4EAAiC;QAC/B;QAAA,8EAAsB;QAAA,kEAAK;QAAA,4DAAQ;QACnC;QAAA,8EACoC;QADwB,6LAA+B;QAA3F,4DACoC;QACtC;QAAA,4DAAM;QACR;QAAA,4DAAM;QAEN;QAAA,4EAAwB;QACtB;QAAA,8EAA0B;QACxB;QAAA,uEAAmB;QACrB;QAAA,4DAAQ;QACR;QAAA,qFACoC;QAAlC,kMAAiC;QAAC,4DAAW;QACjD;QAAA,4DAAM;QAGN;QAAA,4EAA0B;QACxB;QAAA,4EAAsB;QACpB;QAAA,+EAA0F;QAAzB,oRAAS,oEAAc,KAAC;QAAC,kEAAK;QAAA,4DAAS;QACxG;QACA;QAAA,+EAAkE;QAAA,yEAAY;QAAA,4DAAS;QACvF;QACF;QAAA,4DAAM;QACR;QAAA,4DAAM;QACR;QAAA,4DAAO;QACT;QAAA,4DAAM;QACR;QAAA,4DAAM;QACR;QAAA,4DAAM;QACR;QAAA,4DAAM;;QA9KwC,2DAAwB;QAAxB,8IAAwB;QAKjB,0DAAwB;QAAxB,8IAAwB;QAclE,2DAAgB;QAAhB,gFAAgB;QAGhB,0DAAgB;QAAhB,gFAAgB;QAMhB,0DAAgB;QAAhB,gFAAgB;QAMhB,0DAAgB;QAAhB,gFAAgB;QAGhB,0DAAgB;QAAhB,gFAAgB;QAUV,0DAAgB;QAAhB,gFAAgB;QAStB,0DAAgB;QAAhB,gFAAgB;QAKjB,0DAAgB;QAAhB,gFAAgB;QAgBf,0DAAiB;QAAjB,iFAAiB;QAwB0B,2DAAmC;QAAnC,8FAAmC;QAKT,0DAAoC;QAApC,+FAAoC;QAKtC,0DAAkC;QAAlC,6FAAkC;QAMtC,0DAA+B;QAA/B,0FAA+B;QAM3B,0DAAmC;QAAnC,8FAAmC;QAKhC,0DAAqC;QAArC,gGAAqC;QAS3C,2DAAgC;QAAhC,2FAAgC;QAMlC,0DAA8B;QAA9B,yFAA8B;QAK7B,0DAA+B;QAA/B,0FAA+B;QAU3F,2DAAiC;QAAjC,4FAAiC;;;;;;;;;;;;;;;;;;;ACrKyB;;;;AASjE,MAAM,iBAAiB;IAM5B,YAAoB,WAAwB,EAAU,QAAyB;QAA3D,gBAAW,GAAX,WAAW,CAAa;QAAU,aAAQ,GAAR,QAAQ,CAAiB;QAJrE,mBAAc,GAAG,IAAI,uDAAY,EAAE,CAAC;QAE9C,UAAK,GAAQ,EAAE,CAAE;IAEkE,CAAC;IAEpF,QAAQ;IACR,CAAC;IAED,QAAQ;QACN,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC,GAAG,EAAE;YACnD,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,0BAA0B,CAAC,CAAC;QACpD,CAAC,EAAE,KAAK,CAAC,EAAE;YACT,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CAAC,CAAC;IACL,CAAC;IAED,MAAM;QACJ,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAClC,CAAC;;kFArBU,iBAAiB;+GAAjB,iBAAiB;QCW9B;;;;;;;;;;;;;;;;;;;;ACZO,MAAM,mBAAmB;IAE9B,YAAoB,SAAiC;QAAjC,cAAS,GAAT,SAAS,CAAwB;IAAI,CAAC;IAE1D,QAAQ;QACN,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC;IAChC,CAAC;IACD,mBAAmB,CAAC,EAAU;QAC5B,IAAI,CAAC,SAAS,CAAC,kBAAkB,CAAC,EAAE,CAAC,CAAC,SAAS,CAC7C,CAAC,QAAa,EAAE,EAAE;YAChB,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACxB,CAAC,CACF,CAAC;IACJ,CAAC;;sFAbU,mBAAmB;iHAAnB,mBAAmB;QCRhC,oEAAG;QACD,mFACF;QAAA,4DAAI;QACJ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACFuE;AACX;AAC0B;AACpB;AACZ;AACL;AAC+B;AACL;AACyB;AAE+B;AAC1D;AACI;AACY;AACZ;AACgB;AACoB;AACpB;AACT;AACM;AACG;AAClB;AACM;AACuB;AACM;AACoB;AAE3H,MAAM,QAAQ,GAAW;IAC5B,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,+DAAa,EAAE;IAC1C;QACI,IAAI,EAAE,EAAE;QACR,qBAAqB,EAAE,QAAQ;QAC/B,WAAW,EAAE,CAAC,yDAAS,CAAC;QACxB,QAAQ,EAAE;YACN,EAAE,IAAI,EAAE,YAAY,EAAE,SAAS,EAAE,gFAAkB,EAAE;YACrD,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,qEAAe,EAAE;YAC9C,EAAE,IAAI,EAAE,aAAa,EAAE,SAAS,EAAE,uFAAoB,EAAE;YACxD,EAAE,IAAI,EAAE,mBAAmB,EAAE,SAAS,EAAE,yFAAqB;gBACzD,OAAO,EAAE,EAAC,MAAM,EAAE,mFAAoB,EAAC,EAAE;YAC7C,EAAC,IAAI,EAAE,mBAAmB,EAAE,SAAS,EAAE,6GAA2B;gBAC7D,OAAO,EAAE,EAAE,MAAM,EAAE,mFAAoB,EAAE,EAAC;YAC/C;gBACI,IAAI,EAAE,qCAAqC,EAAE,SAAS,EAAE,4IAAoC;gBAC5F,OAAO,EAAE,EAAE,MAAM,EAAE,mFAAoB,EAAE,WAAW,EAAE,kFAAmB,EAAE;aAC9E;YACD,EAAE,IAAI,EAAE,iBAAiB,EAAE,SAAS,EAAE,+FAAuB,EAAE;YAC/D,EAAE,IAAI,EAAE,UAAU,EAAE,SAAS,EAAE,2EAAiB,EAAE,OAAO,EAAE;oBACvD,SAAS,EAAE,oFAAoB;iBAClC,EAAE;YACH,EAAC,IAAI,EAAE,UAAU,EAAE,SAAS,EAAE,mGAAqB,EAAC;YACpD,EAAC,IAAI,EAAE,YAAY,EAAE,SAAS,EAAE,uFAAkB,EAAC;YACnD,EAAC,IAAI,EAAE,WAAW,EAAE,SAAS,EAAE,uGAAsB,EAAC;YACtD,EAAC,IAAI,EAAE,WAAW,EAAE,SAAS,EAAE,uGAAsB,EAAC;YACtD,EAAC,IAAI,EAAE,aAAa,EAAE,SAAS,EAAE,8FAAmB,EAAC;YACrD,EAAC,IAAI,EAAE,gBAAgB,EAAE,SAAS,EAAE,uGAAsB,EAAC;YAC3D,EAAC,IAAI,EAAE,eAAe,EAAE,SAAS,EAAE,oGAAqB,EAAC;YACzD,EAAC,IAAI,EAAE,4BAA4B,EAAE,SAAS,EAAE,2HAA4B,EAAC;YAC7E,EAAC,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,2FAAmB,EAAC;YAChD,EAAC,IAAI,EAAE,cAAc,EAAC,SAAS,EAAE,kHAAwB,EAAC;YAC1D,EAAC,IAAI,EAAE,mCAAmC,EAAE,SAAS,EAAE,wHAA0B,EAAC;YAClF,EAAC,IAAI,EAAE,0CAA0C,EAAE,SAAS,EAAE,4IAAgC,EAAC;SAClG;KACJ;IACD,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAC;CACvD,CAAC;;;;;;;;;;;;;;;;;;;;AC/D2D;;;;;;ICD3D,yEAA2C;IACzC,uDACF;IAAA,4DAAS;;;IADP,0DACF;IADE,2HACF;;ADMK,MAAM,iBAAiB;IAI5B,YAAoB,IAAgB;QAAhB,SAAI,GAAJ,IAAI,CAAY;QAFpC,YAAO,GAAG,yEAAkB,CAAC;IAEW,CAAC;IAEzC,QAAQ;QACN,IAAI,CAAC,YAAY,EAAE,CAAC;IACtB,CAAC;IAED,YAAY;QACV,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,GAAG,gBAAgB,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE;YAClE,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;QAC5B,CAAC,EAAE,KAAK,CAAC,EAAE;YACT,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACrB,CAAC,CAAC,CAAC;IACL,CAAC;;kFAhBU,iBAAiB;+GAAjB,iBAAiB;QCT9B,yEAAQ;QACN;QAAA,mHAES;QACX;QAAA,4DAAS;QAET;;QAL+B,0DAAY;QAAZ,kFAAY;;;;;;;;;;;;;;;;ACD3C,gFAAgF;AAChF,2EAA2E;AAC3E,gEAAgE;AAEzD,MAAM,WAAW,GAAG;IACzB,UAAU,EAAE,IAAI;IAChB,MAAM,EAAE,MAAM;IACd,WAAW,EAAE;QACX,eAAe,EAAG,IAAI;KACvB;CACF,CAAC;AAEF;;;;;GAKG;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,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC","sources":["./src/app/_guards/auth.guard.ts","./src/app/_guards/prevent-unsaved-changes-guard.ts","./src/app/_http-interceptors/date-http-interceptor.ts","./src/app/_http-interceptors/http-auth.interceptor.ts","./src/app/_http-interceptors/http.interceptor.ts","./src/app/_models/pagination.ts","./src/app/_pipes/TimeagoFixPipe.ts","./src/app/_pipes/timespan-to-hours.ts","./src/app/_resolvers/document-list.resolver.ts","./src/app/_resolvers/export-detail.resolver.ts","./src/app/_resolvers/node-comment.resolver.ts","./src/app/_services/alertify.service.ts","./src/app/_services/auth.service.ts","./src/app/_services/date.service.ts","./src/app/_services/document.service.ts","./src/app/_services/energycomponent.service.ts","./src/app/_services/export.service.ts","./src/app/admin/admin-financial-tab/admin-financial-tab.component.ts","./src/app/admin/admin-financial-tab/admin-financial-tab.component.html","./src/app/admin/admin-home/admin-home.component.ts","./src/app/admin/admin-home/admin-home.component.html","./src/app/admin/admin-terminal-tab/admin-terminal-tab.component.ts","./src/app/admin/admin-terminal-tab/admin-terminal-tab.component.html","./src/app/admin/admin-user/admin-user.component.ts","./src/app/admin/admin-user/admin-user.component.html","./src/app/app.component.ts","./src/app/app.component.html","./src/app/app.module.ts","./src/app/dash-board/dash-board.component.ts","./src/app/dash-board/dash-board.component.html","./src/app/dash-export-card/dash-export-card.component.ts","./src/app/dash-export-card/dash-export-card.component.html","./src/app/dash-issue-board/dash-issue-board.component.ts","./src/app/dash-issue-board/dash-issue-board.component.html","./src/app/dash-tab/dash-tab.component.ts","./src/app/dash-tab/dash-tab.component.html","./src/app/dash-table/dash-table.component.ts","./src/app/dash-table/dash-table.component.html","./src/app/demurrage/demurrage-claim/demurrage-claim.component.ts","./src/app/demurrage/demurrage-claim/demurrage-claim.component.html","./src/app/demurrage/demurrage-document-upload/demurrage-document-upload.component.ts","./src/app/demurrage/demurrage-document-upload/demurrage-document-upload.component.html","./src/app/demurrage/demurrage-home/demurrage-home.component.ts","./src/app/demurrage/demurrage-home/demurrage-home.component.html","./src/app/demurrage/demurrage-list-detail/demurrage-list-detail.component.ts","./src/app/demurrage/demurrage-list-detail/demurrage-list-detail.component.html","./src/app/demurrage/demurrage-worksheet-modal/demurrage-worksheet-modal.component.ts","./src/app/demurrage/demurrage-worksheet-modal/demurrage-worksheet-modal.component.html","./src/app/demurrage/open-demurrage-list/open-demurrage-list.component.ts","./src/app/demurrage/open-demurrage-list/open-demurrage-list.component.html","./src/app/document-home/document-home.component.ts","./src/app/document-home/document-home.component.html","./src/app/document-module/document-list/document-list.component.ts","./src/app/document-module/document-list/document-list.component.html","./src/app/document-upload/document-upload.component.ts","./src/app/document-upload/document-upload.component.html","./src/app/document/document.component.ts","./src/app/document/document.component.html","./src/app/documenttemplate/document-template-upload/document-template-upload.component.ts","./src/app/documenttemplate/document-template-upload/document-template-upload.component.html","./src/app/excess-water/ecxess-water-document/excess-water-document.component.ts","./src/app/excess-water/ecxess-water-document/excess-water-document.component.html","./src/app/excess-water/excess-water-detail-update/excess-water-detail-update.component.ts","./src/app/excess-water/excess-water-detail-update/excess-water-detail-update.component.html","./src/app/excess-water/excess-water-detail/excess-water-detail.component.ts","./src/app/excess-water/excess-water-detail/excess-water-detail.component.html","./src/app/excess-water/excess-water-document-upload/excess-water-document-upload.component.ts","./src/app/excess-water/excess-water-document-upload/excess-water-document-upload.component.html","./src/app/excess-water/excess-water-home/excess-water-home.component.ts","./src/app/excess-water/excess-water-home/excess-water-home.component.html","./src/app/excess-water/open-excess-water-list/open-excess-water-list.component.ts","./src/app/excess-water/open-excess-water-list/open-excess-water-list.component.html","./src/app/export-actions-list-update-view/export-actions-list-update-view.component.ts","./src/app/export-actions-list-update-view/export-actions-list-update-view.component.html","./src/app/export-card/export-card.component.ts","./src/app/export-card/export-card.component.html","./src/app/export-create/export-create.component.ts","./src/app/export-create/export-create.component.html","./src/app/export-detail-action/export-detail-action.component.ts","./src/app/export-detail-action/export-detail-action.component.html","./src/app/export-detail-analyst/export-detail-analyst.component.ts","./src/app/export-detail-analyst/export-detail-analyst.component.html","./src/app/export-detail-document/export-detail-document.component.ts","./src/app/export-detail-document/export-detail-document.component.html","./src/app/export-detail-financial/export-detail-financial.component.ts","./src/app/export-detail-financial/export-detail-financial.component.html","./src/app/export-detail-update-actions/export-detail-update-actions.component.ts","./src/app/export-detail-update-actions/export-detail-update-actions.component.html","./src/app/export-detail-update-financial/export-detail-update-financial.component.ts","./src/app/export-detail-update-financial/export-detail-update-financial.component.html","./src/app/export-detail-update/export-detail-update.component.ts","./src/app/export-detail-update/export-detail-update.component.html","./src/app/export-detail-vessel/export-detail-vessel.component.ts","./src/app/export-detail-vessel/export-detail-vessel.component.html","./src/app/export-detail/export-detail.component.ts","./src/app/export-detail/export-detail.component.html","./src/app/export-menu-nav/export-menu-nav.component.ts","./src/app/export-menu-nav/export-menu-nav.component.html","./src/app/export-table/export-table.component.ts","./src/app/export-table/export-table.component.html","./src/app/export-update-activity-comment/export-update-activity-comment.component.ts","./src/app/export-update-activity-comment/export-update-activity-comment.component.html","./src/app/export/export.component.ts","./src/app/export/export.component.html","./src/app/financial/completed-ness/completed-ness.component.ts","./src/app/financial/completed-ness/completed-ness.component.html","./src/app/financial/exchange-rate/exchange-rate.component.ts","./src/app/financial/exchange-rate/exchange-rate.component.html","./src/app/financial/financial-home/financial-home.component.ts","./src/app/financial/financial-home/financial-home.component.html","./src/app/financial/ness-payreq/ness-payreq.component.ts","./src/app/financial/ness-payreq/ness-payreq.component.html","./src/app/financial/ness/ness.component.ts","./src/app/financial/ness/ness.component.html","./src/app/footer/footer.component.ts","./src/app/footer/footer.component.html","./src/app/forecast/forecast-generator/forecast-generator.component.ts","./src/app/forecast/forecast-generator/forecast-generator.component.html","./src/app/forecast/forecast-home/forecast-home.component.ts","./src/app/forecast/forecast-home/forecast-home.component.html","./src/app/forecast/forecast-nav/forecast-nav.component.ts","./src/app/forecast/forecast-nav/forecast-nav.component.html","./src/app/home/home.component.ts","./src/app/home/home.component.html","./src/app/lifting-program/lifting-program.component.ts","./src/app/lifting-program/lifting-program.component.html","./src/app/modals/add-export-modal/add-export-modal.component.ts","./src/app/modals/add-export-modal/add-export-modal.component.html","./src/app/nav-chevron/nav-chevron.component.ts","./src/app/nav-chevron/nav-chevron.component.html","./src/app/nav/nav.component.ts","./src/app/nav/nav.component.html","./src/app/register/register.component.ts","./src/app/register/register.component.html","./src/app/report/report-home/report-home.component.ts","./src/app/report/report-home/report-home.component.html","./src/app/routes.ts","./src/app/terminal/terminal.component.ts","./src/app/terminal/terminal.component.html","./src/environments/environment.ts","./src/main.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\r\nimport { CanActivate, Router } from '@angular/router';\r\nimport { AuthService } from '../_services/auth.service';\r\nimport { AlertifyService } from '../_services/alertify.service';\r\n\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class AuthGuard implements CanActivate {\r\n\r\n constructor(private authService: AuthService, private router: Router, private alertify: AlertifyService) {}\r\n canActivate(): boolean {\r\n if (this.authService.loggedIn()) {\r\n return true;\r\n }\r\n this.alertify.error('Not Allowed');\r\n this.router.navigate(['/home']);\r\n return false;\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { CanDeactivate } from '@angular/router';\r\nimport { ExportDetailUpdateComponent } from '../export-detail-update/export-detail-update.component';\r\n@Injectable()\r\nexport class PreventUnsavedChangesGuard implements CanDeactivate {\r\n canDeactivate(component: ExportDetailUpdateComponent) {\r\n if (component.editExportForm.dirty) {\r\n return confirm('Are you sure you want to continue. Any unsaved changes would be lost');\r\n }\r\n return true;\r\n }\r\n}","import {\r\n HttpRequest,\r\n HttpHandler,\r\n HttpEvent,\r\n HttpInterceptor,\r\n HttpErrorResponse,\r\n HttpResponse\r\n} from '@angular/common/http';\r\nimport { Observable } from 'rxjs';\r\nimport { tap } from 'rxjs/operators';\r\nimport { Injectable } from \"@angular/core\";\r\n\r\n@Injectable()\r\nexport class DateHttpInterceptor implements HttpInterceptor {\r\n // Migrated from AngularJS https://raw.githubusercontent.com/Ins87/angular-date-interceptor/master/src/angular-date-interceptor.js\r\n iso8601 = /^\\d{4}-\\d\\d-\\d\\dT\\d\\d:\\d\\d:\\d\\d(\\.\\d+)?(([+-]\\d\\d:\\d\\d)|Z)?$/;\r\n\r\n public intercept(req: HttpRequest, next: HttpHandler): Observable> {\r\n return next.handle(req).pipe(\r\n tap((event: HttpEvent) => {\r\n if (event instanceof HttpResponse) {\r\n const body = event.body;\r\n this.convertToDate(body);\r\n }\r\n }, (err: any) => {\r\n if (err instanceof HttpErrorResponse) {\r\n if (err.status === 401) {\r\n }\r\n }\r\n }),\r\n );\r\n }\r\n\r\n convertToDate(body) {\r\n if (body === null || body === undefined) {\r\n return body;\r\n }\r\n\r\n if (typeof body !== 'object') {\r\n return body;\r\n }\r\n\r\n for (const key of Object.keys(body)) {\r\n const value = body[key];\r\n if (this.isIso8601(value)) {\r\n body[key] = new Date(value);\r\n } else if (typeof value === 'object') {\r\n this.convertToDate(value);\r\n }\r\n }\r\n }\r\n\r\n isIso8601(value) {\r\n if (value === null || value === undefined) {\r\n return false;\r\n }\r\n\r\n return this.iso8601.test(value);\r\n }\r\n}","import { Injectable } from '@angular/core';\r\nimport { environment } from '../../environments/environment';\r\nimport { HttpRequest, HttpInterceptor, HttpHandler, HttpEvent } from '@angular/common/http';\r\nimport { Observable } from 'rxjs';\r\n\r\n@Injectable()\r\nexport class HttpAuthInterceptor implements HttpInterceptor {\r\n constructor() {}\r\n\r\n intercept(req: HttpRequest, next: HttpHandler): Observable> {\r\n const authReq = req.clone(environment.httpOptions);\r\n console.log('interceptor triggered');\r\n return next.handle(authReq);\r\n }\r\n}","/* \"Barrel\" of Http Interceptors */\r\nimport { HTTP_INTERCEPTORS } from '@angular/common/http';\r\nimport { DateHttpInterceptor } from './date-http-interceptor';\r\n\r\nimport { HttpAuthInterceptor } from './http-auth.interceptor';\r\n\r\n\r\n/** Http interceptor providers in outside-in order */\r\nexport const httpInterceptorProviders = [\r\n { provide: HTTP_INTERCEPTORS, useClass: HttpAuthInterceptor, multi: true },\r\n { provide: HTTP_INTERCEPTORS, useClass: DateHttpInterceptor, multi: true },\r\n];","export interface Pagination {\r\n currentPage: number;\r\n itemsPerPage: number;\r\n totalItems: number;\r\n totalPages: number;\r\n}\r\n\r\nexport class PaginatedResult {\r\n result: T;\r\n pagination: Pagination;\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\nimport { TimeAgoPipe } from 'time-ago-pipe';\r\n\r\n@Pipe({\r\n name: 'timeAgo'\r\n})\r\nexport class TimeagoFixPipe extends TimeAgoPipe implements PipeTransform {\r\n\r\n transform(value: Date | string): string {\r\n return super.transform(value.toString());\r\n }\r\n}","import { Pipe, PipeTransform } from '@angular/core';\r\n/*\r\n * Converts a .NET TimeSpan to Hour\r\n * Takes timeSpan values to convert.\r\n * Usage:\r\n * value | timespanToHours\r\n * Example:\r\n * {{ 2.22:11:00 | timespanToHours }}\r\n * formats to: 70 hrs 11 mins\r\n*/\r\n@Pipe({ name: 'timespanToHours' })\r\nexport class TimespanToHoursPipe implements PipeTransform {\r\n\r\n dotNetTimespan = /^(\\d+\\.)?\\d\\d:\\d\\d:\\d\\d$/;\r\n\r\n transform(value: string): string {\r\n\r\n if (value === null || value === undefined) {\r\n return \"\";\r\n }\r\n\r\n if (!this.dotNetTimespan.test(value))\r\n return value;\r\n\r\n if (!value.includes(\".\")) {\r\n value = \"0.\" + value\r\n }\r\n let dayAndTime = value.split(\".\")\r\n let dayPart = dayAndTime[0];\r\n let timePart = dayAndTime[1];\r\n\r\n let hourMinSec = timePart.split(\":\")\r\n let hours = hourMinSec[0]\r\n let mins = hourMinSec[1]\r\n let secs = hourMinSec[2]\r\n\r\n let totalHours = (parseInt(dayPart) * 24) + parseInt(hours);\r\n\r\n return `${totalHours} hrs ${mins} mins`\r\n }\r\n}","import { Injectable } from '@angular/core';\r\nimport { Resolve, Router, ActivatedRouteSnapshot } from '@angular/router';\r\nimport { ExportService } from '../_services/export.service';\r\nimport { AlertifyService } from '../_services/alertify.service';\r\nimport { Observable, of } from 'rxjs';\r\nimport { catchError } from 'rxjs/operators';\r\nimport { DocumentService } from '../_services/document.service';\r\n\r\n@Injectable()\r\nexport class DocumentListResolver implements Resolve {\r\n pageNumber = 1;\r\n pageSize = 10;\r\n\r\n constructor(private exportService: ExportService, private alertify: AlertifyService\r\n , private route: Router, private documentService: DocumentService) {}\r\n resolve(route: ActivatedRouteSnapshot): Observable {\r\n return this.documentService.getAllExportDocuments(this.pageNumber, this.pageSize).pipe(\r\n catchError( error => {\r\n this.alertify.error('Unable to load Document Details');\r\n this.route.navigate(['dashboard']);\r\n return of(null);\r\n })\r\n );\r\n\r\n }\r\n}","import { Injectable } from '@angular/core';\r\nimport { Export } from '../_models/export';\r\nimport { Resolve, Router, ActivatedRouteSnapshot } from '@angular/router';\r\nimport { ExportService } from '../_services/export.service';\r\nimport { AlertifyService } from '../_services/alertify.service';\r\nimport { Observable, of } from 'rxjs';\r\nimport { catchError } from 'rxjs/operators';\r\n\r\n@Injectable()\r\nexport class ExportDetailResolver implements Resolve {\r\n constructor(private exportService: ExportService,\r\n private router: Router, private alertifyService: AlertifyService) {}\r\n\r\n resolve(route: ActivatedRouteSnapshot): Observable {\r\n return this.exportService.getExport(route.params['id'])\r\n .pipe(catchError(error => {\r\n this.alertifyService.error(error);\r\n this.router.navigate(['/export']);\r\n return of(null);\r\n }));\r\n }\r\n}","import { Injectable } from '@angular/core';\r\nimport { Export } from '../_models/export';\r\nimport { Resolve, Router, ActivatedRouteSnapshot } from '@angular/router';\r\nimport { ExportService } from '../_services/export.service';\r\nimport { AlertifyService } from '../_services/alertify.service';\r\nimport { Observable, of } from 'rxjs';\r\nimport { catchError } from 'rxjs/operators';\r\nimport { NodeComment } from '../_models/nodecomment';\r\n\r\n@Injectable()\r\nexport class NodeCommentResolver implements Resolve {\r\n constructor(private exportService: ExportService,\r\n private router: Router, private alertifyService: AlertifyService) {}\r\n\r\n resolve(route: ActivatedRouteSnapshot): Observable {\r\n return this.exportService.getExportNode(route.params[\"id\"], route.params[\"exportId\"])\r\n .pipe(\r\n catchError(error => {\r\n this.alertifyService.error(error);\r\n this.router.navigate([\"/export\"]);\r\n return of(null);\r\n })\r\n );\r\n }\r\n}","import { Injectable } from '@angular/core';\r\n\r\ndeclare let alertify: any;\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class AlertifyService {\r\n\r\nconstructor() { }\r\n\r\n confirm(message: string, okCallback: () => any ) {\r\n\r\n alertify.confirm(message, function (e) {\r\n if (e) {\r\n okCallback();\r\n } else {}\r\n }).set({'title':'Confirmation'});\r\n }\r\n\r\n success(message: string) {\r\n alertify.set('notifier', 'position', 'top-center');\r\n alertify.success(message);\r\n }\r\n error(message: string) {\r\n alertify.set('notifier', 'position', 'top-center');\r\n alertify.error(message);\r\n }\r\n\r\n warning(message: string) {\r\n alertify.set('notifier', 'position', 'top-center');\r\n alertify.warning(message);\r\n }\r\n\r\n message(message: string) {\r\n alertify.set('notifier', 'position', 'top-center');\r\n alertify.message(message);\r\n }\r\n\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { HttpClient } from \"@angular/common/http\";\r\nimport { map, filter, switchMap } from \"rxjs/operators\";\r\nimport { JwtHelperService } from \"@auth0/angular-jwt\";\r\nimport { environment } from \"../../environments/environment\";\r\nimport * as jose from \"../../../node_modules/jose\";\r\nimport { UserRole } from '../_models/UserRole';\r\nimport { User } from 'src/app/_models/user';\r\nimport { Observable } from 'rxjs';\r\n@Injectable({\r\n providedIn: \"root\",\r\n})\r\nexport class AuthService {\r\n baseUrl = environment.apiUrl + \"auth/\";\r\n jwtHelper = new JwtHelperService();\r\n decodedToken: any;\r\n\r\n constructor(private http: HttpClient) {}\r\n\r\n login(model: any) {\r\n return this.http.post(this.baseUrl + \"login\", model).pipe(\r\n map((response: any) => {\r\n const user = response;\r\n if (user) {\r\n localStorage.setItem(\"token\", user.token);\r\n this.decodedToken = this.jwtHelper.decodeToken(user.token);\r\n // console.log(this.decodedToken);\r\n }\r\n })\r\n );\r\n }\r\n /*\r\n Register Method to Register a New User\r\n This method returns an observable method that needs to be subscribed to\r\n */\r\n register(model: any) {\r\n return this.http.post(this.baseUrl + \"register\", model);\r\n }\r\n /*\r\n Check is Token is expire\r\n */\r\n loggedIn() {\r\n const token = localStorage.getItem(\"token\");\r\n return !this.jwtHelper.isTokenExpired(token) && this.verifySignature();\r\n }\r\n /*\r\n validate encryption algorithm\r\n */\r\n verifySignature() {\r\n const token = localStorage.getItem(\"token\");\r\n if (token) {\r\n const protectedHeader = jose.decodeProtectedHeader(token);\r\n if (protectedHeader.alg == \"HS512\") return true;\r\n else {\r\n console.log(\"token signature is not matched\");\r\n return false;\r\n }\r\n }\r\n console.log(\"token signature error\");\r\n return false;\r\n }\r\n\r\n getUserRole(): Observable {\r\n return this.http.get(environment.apiUrl + 'user/getUserRoles');\r\n }\r\n\r\n getUserById(id : number): Observable {\r\n return this.http.get(environment.apiUrl + 'user/getUserById/'+ id);\r\n }\r\n\r\n updateUser(model: any) {\r\n return this.http.post(this.baseUrl + \"updateUser\", model);\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class DateService {\r\n\r\n constructor() { }\r\n\r\n urlDate(value: Date) {\r\n if (value == null) {\r\n return null;\r\n } else {\r\n const sYY = value.getFullYear();\r\n const sMM = value.getMonth() + 1;\r\n const sDD = value.getDate();\r\n\r\n const sdToReturn = sYY + '/' + sMM + '/' + sDD;\r\n return sdToReturn;\r\n }\r\n }\r\n\r\n documentDate(value: Date) {\r\n const newDate = new Date(value);\r\n const dd = newDate.getDate();\r\n const mm = newDate.getMonth();\r\n const yyyy = newDate.getFullYear();\r\n const months = ['January', 'February', 'March', 'April', 'May', 'June'\r\n , 'July', 'August', 'September', 'October', 'November', 'December'];\r\n\r\n const returnDate = months[mm] + ' ' + dd + ', ' + yyyy;\r\n return returnDate;\r\n }\r\n\r\n documentDateRange(startDate: Date, endDate: Date) {\r\n const stDate = new Date(startDate);\r\n const st_dd = stDate.getDate();\r\n const st_mm = stDate.getMonth();\r\n const st_yyyy = stDate.getFullYear();\r\n\r\n const edDate = new Date(endDate);\r\n const ed_dd = edDate.getDate();\r\n const ed_mm = edDate.getMonth();\r\n const ed_yyyy = edDate.getFullYear();\r\n\r\n const months = ['January', 'February', 'March', 'April', 'May', 'June'\r\n , 'July', 'August', 'September', 'October', 'November', 'December'];\r\n\r\n if (st_yyyy === ed_yyyy){\r\n if (st_mm === ed_mm){\r\n return months[st_mm] + ' ' + st_dd + '-' + ed_dd + ', ' + st_yyyy;\r\n }else{\r\n return months[st_mm] + ' ' + st_dd + '-' + months[ed_mm] + ' ' + ed_dd + ', ' + st_yyyy;\r\n }\r\n }else{\r\n return months[st_mm] + ' ' + st_dd+ ', ' + st_yyyy + '-' + months[ed_mm] + ' ' + ed_dd + ', ' + ed_yyyy;\r\n }\r\n }\r\n currentDateForDocument() {\r\n const today = new Date();\r\n const dd = today.getDate();\r\n const mm = today.getMonth();\r\n const yyyy = today.getFullYear();\r\n const months = ['January', 'February', 'March', 'April', 'May', 'June'\r\n , 'July', 'August', 'September', 'October', 'November', 'December'];\r\n\r\n const returnDate = months[mm] + ' ' + dd + ', ' + yyyy;\r\n return returnDate;\r\n }\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient, HttpHeaders, HttpParams } from '@angular/common/http';\r\nimport { environment } from 'src/environments/environment';\r\nimport { Observable } from 'rxjs';\r\nimport { filter, map } from 'rxjs/operators';\r\nimport { DocumentInstruction } from '../_models/documentinstruction';\r\nimport { Download } from '../_models/download';\r\nimport { PaginatedResult } from '../_models/pagination';\r\nimport { AlertifyService } from './alertify.service';\r\nimport { NominationDocument } from '../_models/nominationdocument';\r\n\r\n\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class DocumentService {\r\n baseUrl = environment.apiUrl;\r\n // documentUrl = environment.apiUrlDocument;\r\n // urlForDocument = environment.apiDocumentUrl;\r\n\r\n constructor(private http: HttpClient, private alertify: AlertifyService) {}\r\n\r\n download(documentId: number) {\r\n return this.http.get(this.baseUrl + 'document/download/' + documentId,{\r\n responseType : 'blob',\r\n headers: new HttpHeaders().append('Content-Type', 'application/json')\r\n });\r\n }\r\n // Generate a StarDepp Nomination Letter\r\n // generateDocumentInstructionStardeep(id: number, model: DocumentInstruction): Observable {\r\n // return this.http.post(this.documentUrl + 'generate/lifter/' + id, model);\r\n // }\r\n // generateNominationDocument(id: number, model: NominationDocument): Observable {\r\n // return this.http.post(this.urlForDocument + 'nomination/generate/lifter/' + id, model);\r\n // }\r\n // generateDPRNominationDocument(id: number, model: NominationDocument): Observable {\r\n // return this.http.post(this.urlForDocument + 'nomination/generate/dpr/lifter/' + id, model);\r\n // }\r\n // generateNNPCNominationDocument(id: number, model: NominationDocument): Observable {\r\n // return this.http.post(this.urlForDocument + 'nomination/generate/nnpc/lifter/' + id, model);\r\n // }\r\n // generateRFIDocument(id: number, model: NominationDocument): Observable {\r\n // return this.http.post(this.urlForDocument + 'nomination/generate/rfi/lifter/' + id, model);\r\n // }\r\n\r\n // Methods do get Files from Service as a blob\r\n generateDocumentInstructionStardeep(id: number, model: DocumentInstruction) {\r\n return this.http.post(this.baseUrl + 'nomination/documentInstruction/generate/lifter/' + id, model, {\r\n responseType : 'blob',\r\n headers: new HttpHeaders().append('Content-Type', 'application/json')\r\n });\r\n }\r\n generateNominationDocument(id: number, model: NominationDocument){\r\n return this.http.post(this.baseUrl + 'nomination/generate/lifter/' + id, model, {\r\n responseType : 'blob',\r\n headers: new HttpHeaders().append('Content-Type', 'application/json')\r\n });\r\n }\r\n generateDPRNominationDocument(id: number, model: NominationDocument){\r\n return this.http.post(this.baseUrl + 'nomination/generate/dpr/lifter/' + id, model, {\r\n responseType : 'blob',\r\n headers: new HttpHeaders().append('Content-Type', 'application/json')\r\n });\r\n }\r\n generateNNPCNominationDocument(id: number, model: NominationDocument){\r\n return this.http.post(this.baseUrl + 'nomination/generate/nnpc/lifter/' + id, model, {\r\n responseType : 'blob',\r\n headers: new HttpHeaders().append('Content-Type', 'application/json')\r\n });\r\n }\r\n generateRFIDocument(id: number, model: NominationDocument){\r\n return this.http.post(this.baseUrl + 'nomination/generate/rfi/lifter/' + id, model, {\r\n responseType : 'blob',\r\n headers: new HttpHeaders().append('Content-Type', 'application/json')\r\n });\r\n }\r\n\r\n downloadFileWithPath(model: Download) {\r\n return this.http.post(this.baseUrl + 'document/download/path/', model, {\r\n responseType : 'blob',\r\n headers: new HttpHeaders().append('Content-Type', 'application/json')\r\n });\r\n }\r\n\r\n getAllExportDocuments(page?, itemsPerPage?, terminalName?, documentCategoryName?\r\n , cargoNumber?, lIfterName?, startDate?, endDate?): Observable> {\r\n\r\n const paginatedResult: PaginatedResult = new PaginatedResult();\r\n\r\n let params = new HttpParams();\r\n\r\n if (page != null && itemsPerPage != null) {\r\n params = params.append('pageNumber', page);\r\n params = params.append('pageSize', itemsPerPage);\r\n }\r\n\r\n if (terminalName != null) {\r\n params = params.append('terminalName', terminalName);\r\n }\r\n if (documentCategoryName != null) {\r\n params = params.append('documentCategoryName', documentCategoryName);\r\n }\r\n if (cargoNumber != null) {\r\n params = params.append('cargoNumber', cargoNumber);\r\n }\r\n if (lIfterName != null) {\r\n params = params.append('lIfterName', lIfterName);\r\n }\r\n if (startDate != null && endDate != null) {\r\n params = params.append('startDate', startDate);\r\n params = params.append('endDate', endDate);\r\n }\r\n\r\n return this.http.get(this.baseUrl + 'document/getall', { observe: 'response', params })\r\n .pipe(\r\n map(response => {\r\n paginatedResult.result = response.body;\r\n if (response.headers.get('Pagination') != null) {\r\n paginatedResult.pagination = JSON.parse(response.headers.get('Pagination'));\r\n }\r\n return paginatedResult;\r\n })\r\n );\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { environment } from 'src/environments/environment';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { AlertifyService } from './alertify.service';\r\nimport { Observable } from 'rxjs';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class EnergycomponentService {\r\n baseUrl = environment.apiUrl;\r\nconstructor(\r\n private http: HttpClient,\r\n private alertify: AlertifyService) { }\r\n\r\n getExportDataForID(id: number): Observable {\r\n return this.http.get('http://ws-prod-ec.dev.lagnr.chevron.com/api/export/' + id + '/CN');\r\n }\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { environment } from '../../environments/environment';\r\nimport { HttpClient, HttpHeaders, HttpParams } from '@angular/common/http';\r\nimport { Observable } from 'rxjs';\r\nimport { Export } from '../_models/export';\r\nimport { Terminal } from '../_models/terminal';\r\nimport { Product } from '../_models/product';\r\nimport { Lifter } from '../_models/lifter';\r\nimport { CargoType } from '../_models/cargotype';\r\nimport { Consignee } from '../_models/consignee';\r\nimport { Status } from '../_models/status';\r\nimport { DocumentCategory } from '../_models/documentcategory';\r\nimport { ExportNode } from '../_models/exportnode';\r\nimport { NodeComment } from '../_models/nodecomment';\r\nimport { PaginatedResult } from '../_models/pagination';\r\nimport { map } from 'rxjs/operators';\r\nimport { NodeStatus } from '../_models/nodestatus';\r\nimport { Vessel } from '../_models/Vessel';\r\nimport { Analyst } from '../_models/Analyst';\r\nimport { Destination } from '../_models/destination';\r\nimport { Inspector } from '../_models/inspector';\r\nimport { Demurrage } from '../_models/demurrage';\r\nimport { DemurrageCalculation } from '../_models/demurragecalculation';\r\nimport { DemurrageStatus } from '../_models/demurragestatus';\r\nimport { DocumentTemplateCategory } from '../_models/documenttemplatecategory';\r\nimport { DocumentTemplate } from '../_models/documenttemplate';\r\nimport { OML } from '../_models/oml';\r\nimport { OMLEquity } from '../_models/omlequity';\r\nimport { VesselAgent } from '../_models/vesselagent';\r\nimport { Tax } from '../_models/tax';\r\nimport { ExchangeRate } from '../_models/exchangerate';\r\nimport { Ness } from '../_models/ness';\r\nimport { Consignor } from '../_models/consignor';\r\nimport { User } from '../_models/user';\r\nimport { ExcessWater } from '../_models/excesswater';\r\nimport { AuthService } from './auth.service';\r\nimport * as jose from \"../../../node_modules/jose\";\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ExportService {\r\n baseUrl = environment.apiUrl;\r\n constructor(private http: HttpClient) { }\r\n\r\n // EXPORT API\r\n getExports(page?, itemsPerPage?, vesselName?, terminalName?, lifterName?, productName?, startDate?, endDate?\r\n , statusId?, userId?, cargoNumber?\r\n ): Observable> {\r\n const paginatedResult: PaginatedResult = new PaginatedResult();\r\n\r\n let params = new HttpParams();\r\n\r\n if (page != null && itemsPerPage != null) {\r\n params = params.append('pageNumber', page);\r\n params = params.append('pageSize', itemsPerPage);\r\n }\r\n if (vesselName != null) {\r\n params = params.append('vesselName', vesselName);\r\n }\r\n if (terminalName != null) {\r\n params = params.append('terminalName', terminalName);\r\n }\r\n if (lifterName != null) {\r\n params = params.append('lifterName', lifterName);\r\n }\r\n if (productName != null) {\r\n params = params.append('productName', productName);\r\n }\r\n if (startDate != null && endDate != null) {\r\n params = params.append('startDate', startDate);\r\n params = params.append('endDate', endDate);\r\n }\r\n if (statusId != null) {\r\n params = params.append('statusId', statusId);\r\n }\r\n if (userId != null) {\r\n params = params.append('usersId', userId);\r\n }\r\n if (cargoNumber != null) {\r\n params = params.append('cargoNumber', cargoNumber);\r\n }\r\n\r\n return this.http\r\n .get(this.baseUrl + 'exports', { observe: 'response', params })\r\n .pipe(\r\n map(response => {\r\n paginatedResult.result = response.body;\r\n if (response.headers.get('Pagination') != null) {\r\n paginatedResult.pagination = JSON.parse(\r\n response.headers.get('Pagination')\r\n );\r\n }\r\n return paginatedResult;\r\n })\r\n );\r\n }\r\n\r\n getInQueueExports(): Observable {\r\n return this.http.get(this.baseUrl + 'exports/active');\r\n }\r\n getAllExports(): Observable {\r\n return this.http.get(this.baseUrl + 'exports/all');\r\n }\r\n\r\n getExport(id): Observable {\r\n this.verifySignature();\r\n return this.http.get(this.baseUrl + 'exports/' + id);\r\n }\r\n getExportWithOpenNESS(page?, itemsPerPage?, vesselName?, terminalName?, lifterName?, productName?, startDate?, endDate?\r\n ): Observable> {\r\n const paginatedResult: PaginatedResult = new PaginatedResult();\r\n let params = new HttpParams();\r\n\r\n if (page != null && itemsPerPage != null) {\r\n params = params.append('pageNumber', page);\r\n params = params.append('pageSize', itemsPerPage);\r\n }\r\n if (vesselName != null) {\r\n params = params.append('vesselName', vesselName);\r\n }\r\n if (terminalName != null) {\r\n params = params.append('terminalName', terminalName);\r\n }\r\n if (lifterName != null) {\r\n params = params.append('lifterName', lifterName);\r\n }\r\n if (productName != null) {\r\n params = params.append('productName', productName);\r\n }\r\n if (startDate != null && endDate != null) {\r\n params = params.append('startDate', startDate);\r\n params = params.append('endDate', endDate);\r\n }\r\n // if (cargoNumber != null) {\r\n // params = params.append('cargoNumber', cargoNumber);\r\n // }\r\n\r\n // return this.http.get(this.baseUrl + 'exports/ness/open/');\r\n\r\n return this.http\r\n .get(this.baseUrl + 'exports/ness/open/', { observe: 'response', params })\r\n .pipe(\r\n map(response => {\r\n paginatedResult.result = response.body;\r\n if (response.headers.get('Pagination') != null) {\r\n paginatedResult.pagination = JSON.parse(\r\n response.headers.get('Pagination')\r\n );\r\n }\r\n return paginatedResult;\r\n })\r\n );\r\n }\r\n getExchangeRateForExport(bolDate: string): Observable {\r\n return this.http.get(this.baseUrl + 'exchangerate/start/' + encodeURIComponent(bolDate));\r\n }\r\n getExchangeRate(): Observable {\r\n return this.http.get(this.baseUrl + 'exchangerate/');\r\n }\r\n getOMLs(): Observable {\r\n return this.http.get(this.baseUrl + 'oml/');\r\n }\r\n getTerminalOML(id): Observable {\r\n return this.http.get(this.baseUrl + 'oml/' + id);\r\n }\r\n\r\n getTerminals(): Observable {\r\n return this.http.get(this.baseUrl + 'terminals/');\r\n }\r\n\r\n getProducts(): Observable {\r\n return this.http.get(this.baseUrl + 'products/');\r\n }\r\n getProductCombination(): Observable {\r\n return this.http.get(this.baseUrl + 'products/getProductCombinations');\r\n }\r\n getLifters(): Observable {\r\n return this.http.get(this.baseUrl + 'lifter/');\r\n }\r\n getLiftersForTerminal(id): Observable {\r\n return this.http.get(this.baseUrl + 'lifter/terminal/' + id);\r\n }\r\n getCargoTypeForLifer(id): Observable {\r\n return this.http.get(this.baseUrl + 'cargotype/lifter/' + id);\r\n }\r\n getOMLLifters(omlId): Observable {\r\n return this.http.get(this.baseUrl + 'lifter/oml/' + omlId);\r\n }\r\n getOMLLiftersByLifter(omlId, lifterId): Observable {\r\n return this.http.get(\r\n this.baseUrl + 'omlequity/oml/' + omlId + '/lifter/' + lifterId\r\n );\r\n }\r\n getCargoTypes(): Observable {\r\n return this.http.get(this.baseUrl + 'cargotype/');\r\n }\r\n getConsignee(): Observable {\r\n return this.http.get(this.baseUrl + 'consignee/');\r\n }\r\n getConsignor(): Observable {\r\n return this.http.get(this.baseUrl + 'consignor/');\r\n }\r\n getDestinations(): Observable {\r\n return this.http.get(this.baseUrl + 'destination/');\r\n }\r\n getInspectors(): Observable {\r\n return this.http.get(this.baseUrl + 'inspectors/');\r\n }\r\n getStatusList(): Observable {\r\n return this.http.get(this.baseUrl + 'status/');\r\n }\r\n getNodeStatusList(): Observable {\r\n return this.http.get(this.baseUrl + 'nodestatus/');\r\n }\r\n getDocumentCategoryList(): Observable {\r\n return this.http.get(\r\n this.baseUrl + 'DocumentCategory/'\r\n );\r\n }\r\n getNodes(): Observable {\r\n return this.http.get(this.baseUrl + 'Node/');\r\n }\r\n getVessels(): Observable {\r\n return this.http.get(this.baseUrl + 'vessel/');\r\n }\r\n getVesselAgents(): Observable {\r\n return this.http.get(this.baseUrl + 'vesselagent/');\r\n }\r\n\r\n getDemurrages(page?, itemsPerPage?, vesselName?, terminalName?, lifterName?, productName?, statusId?): Observable> {\r\n const paginatedResult: PaginatedResult = new PaginatedResult();\r\n let params = new HttpParams();\r\n\r\n if (page != null && itemsPerPage != null) {\r\n params = params.append('pageNumber', page);\r\n params = params.append('pageSize', itemsPerPage);\r\n }\r\n if (vesselName != null) {\r\n params = params.append('vesselName', vesselName);\r\n }\r\n if (terminalName != null) {\r\n params = params.append('terminalName', terminalName);\r\n }\r\n if (lifterName != null) {\r\n params = params.append('lifterName', lifterName);\r\n }\r\n if (productName != null) {\r\n params = params.append('productName', productName);\r\n }\r\n if (statusId != null) {\r\n params = params.append('statusId', statusId);\r\n }\r\n\r\n return this.http\r\n .get(this.baseUrl + 'demurrage/open/claims/', { observe: 'response', params })\r\n .pipe(\r\n map(response => {\r\n paginatedResult.result = response.body;\r\n if (response.headers.get('Pagination') != null) {\r\n paginatedResult.pagination = JSON.parse(\r\n response.headers.get('Pagination')\r\n );\r\n }\r\n return paginatedResult;\r\n })\r\n );\r\n }\r\n\r\n getDemurrageStatus(): Observable {\r\n return this.http.get(this.baseUrl + 'DemurrageStatus/');\r\n }\r\n getExportNodes(id): Observable {\r\n return this.http.get(\r\n this.baseUrl + 'exportnode/' + id + '/export'\r\n );\r\n }\r\n getExportNode(exportid, nodeelementid): Observable {\r\n return this.http.get(\r\n this.baseUrl +\r\n 'exportnode/' +\r\n exportid +\r\n '/export/' +\r\n nodeelementid +\r\n '/node'\r\n );\r\n }\r\n\r\n getNodeComment(id): Observable {\r\n return this.http.get(this.baseUrl + 'nodecomment/' + id);\r\n }\r\n getExportDocuments(id): Observable {\r\n return this.http.get(this.baseUrl + 'document/export/' + id);\r\n }\r\n getExportAnalyst(id): Observable {\r\n return this.http.get(this.baseUrl + 'userprofile/' + id);\r\n }\r\n getDestination(id): Observable {\r\n return this.http.get(this.baseUrl + 'destination/' + id);\r\n }\r\n getProductsForTerminal(id): Observable {\r\n return this.http.get(this.baseUrl + 'products/terminal/' + id);\r\n }\r\n getInspector(id): Observable {\r\n return this.http.get(this.baseUrl + 'inspectors/' + id);\r\n }\r\n getDemurrageCalculationsForExport(\r\n exportid\r\n ): Observable {\r\n return this.http.get(\r\n this.baseUrl + 'DemurrageCalculator/export/' + exportid\r\n );\r\n }\r\n getDocumentTemplateCategory(): Observable {\r\n return this.http.get(\r\n this.baseUrl + 'documenttemplatecategory'\r\n );\r\n }\r\n getDocumentTemplate(): Observable {\r\n return this.http.get(this.baseUrl + 'documenttemplate');\r\n }\r\n getNessTax(): Observable {\r\n return this.http.get(this.baseUrl + 'tax/1');\r\n }\r\n getTaxes(): Observable {\r\n return this.http.get(this.baseUrl + 'tax');\r\n }\r\n getNessPendingPayReq(): Observable {\r\n return this.http.get(this.baseUrl + 'tax/ness/payreq/');\r\n }\r\n getNessWithCompletedPayReq(): Observable {\r\n return this.http.get(this.baseUrl + 'tax/ness/completed/');\r\n }\r\n\r\n getAllUsers(): Observable {\r\n return this.http.get(this.baseUrl + 'user');\r\n }\r\n \r\n getAllAdminUsers(page?, itemsPerPage?,userId?): Observable> {\r\n const paginatedResult: PaginatedResult = new PaginatedResult();\r\n let params = new HttpParams();\r\n\r\n if (page != null && itemsPerPage != null) {\r\n params = params.append('pageNumber', page);\r\n params = params.append('pageSize', itemsPerPage);\r\n }\r\n if (userId != null) {\r\n params = params.append('userId', userId);\r\n }\r\n\r\n return this.http\r\n .get(this.baseUrl + 'user/List/', { observe: 'response', params })\r\n .pipe(\r\n map(response => {\r\n paginatedResult.result = response.body;\r\n if (response.headers.get('Pagination') != null) {\r\n paginatedResult.pagination = JSON.parse(\r\n response.headers.get('Pagination')\r\n );\r\n }\r\n return paginatedResult;\r\n })\r\n );\r\n }\r\n\r\n getFiltersForUser(id: number): Observable {\r\n return this.http.get(this.baseUrl + 'filters/user/' + id);\r\n }\r\n\r\n updateTaxRate(model: any): Observable {\r\n return this.http.post(this.baseUrl + 'tax/update', model);\r\n }\r\n updateLifter(model: any): Observable {\r\n return this.http.post(this.baseUrl + 'lifter/update', model);\r\n }\r\n updatePayReqForNessWith(id, payreq): Observable {\r\n return this.http.get(this.baseUrl + 'tax/ness/' + id + '/payreq/' + payreq);\r\n }\r\n updateFiscalPriceForExport(id, price): Observable {\r\n return this.http.get(this.baseUrl + 'exports/' + id + '/update/' + price + '/fiscal-price');\r\n }\r\n updateNXPForExport(id, nxpNumber): Observable {\r\n return this.http.get(this.baseUrl + 'exports/' + id + '/update/' + nxpNumber + '/nxp');\r\n }\r\n updateDateVolumeForExport(id, bolDate, volume): Observable {\r\n return this.http.get(this.baseUrl + 'exports/' + id + '/update/' + bolDate + '/date/' + volume + '/volume/');\r\n }\r\n /*\r\n POST SERVICES\r\n */\r\n createExport(model: any, id): Observable {\r\n return this.http.post(\r\n this.baseUrl + 'exports/create/' + id + '/user/',\r\n model\r\n );\r\n }\r\n UpdateExportBOL(model: any): Observable {\r\n return this.http.post(\r\n this.baseUrl + 'exports/update/bol',\r\n model\r\n );\r\n }\r\n createComment(model: any): Observable {\r\n return this.http.post(this.baseUrl + 'nodecomment/create', model);\r\n }\r\n createTerminal(model: any): Observable {\r\n return this.http.post(this.baseUrl + 'terminals', model);\r\n }\r\n createVessel(model: any): Observable {\r\n return this.http.post(this.baseUrl + 'vessel', model);\r\n }\r\n createConsignee(model: any): Observable {\r\n return this.http.post(this.baseUrl + 'consignee', model);\r\n }\r\n createConsignor(model: any): Observable {\r\n return this.http.post(this.baseUrl + 'consignor', model);\r\n }\r\n createInspector(model: any): Observable {\r\n return this.http.post(this.baseUrl + 'inspectors', model);\r\n }\r\n createDestination(model: any): Observable {\r\n return this.http.post(this.baseUrl + 'destination', model);\r\n }\r\n createVesselAgent(model: any): Observable {\r\n return this.http.post(this.baseUrl + 'vesselagent', model);\r\n }\r\n createExchangeRate(model: any): Observable {\r\n return this.http.post(this.baseUrl + 'exchangerate', model);\r\n }\r\n createDocumentTemplateCategroy(model: any): Observable {\r\n return this.http.post(\r\n this.baseUrl + 'documenttemplatecategory/create',\r\n model\r\n );\r\n }\r\n createDocumentTemplate(model: any): Observable {\r\n return this.http.post(this.baseUrl + 'documenttemplate/create', model);\r\n }\r\n createLiftingProgramBatch(model: any): Observable {\r\n return this.http.post(this.baseUrl + 'liftingprogram', model);\r\n }\r\n createDemmurageCulculation(model: any): Observable {\r\n return this.http.post(\r\n this.baseUrl + 'DemurrageCalculator/calc',\r\n model\r\n );\r\n }\r\n createDemmurage(model: any): Observable {\r\n return this.http.post(this.baseUrl + 'demurrage/', model);\r\n }\r\n processNess(model: any): Observable {\r\n return this.http.post(\r\n this.baseUrl + 'tax/ness/process/',\r\n model\r\n );\r\n }\r\n createOMLLifterAllocation(model: any): Observable {\r\n return this.http.post(this.baseUrl + 'omlequity/', model);\r\n }\r\n createFilter(model: any): Observable {\r\n return this.http.post(this.baseUrl + 'filters/', model);\r\n }\r\n updateExport(id: number, model: any): Observable {\r\n return this.http.put(this.baseUrl + 'exports/' + id, model);\r\n }\r\n // Http Service to Update the Status of an Export Node\r\n updateExportNodeStatus(model: any): Observable {\r\n return this.http.put(this.baseUrl + 'exportnode/updatestatus', model);\r\n }\r\n\r\n updateUserProfile(model: any): Observable {\r\n return this.http.post(this.baseUrl + 'userprofile/update', model);\r\n }\r\n updateDemurrageStatus(\r\n demurrageId: number,\r\n statusId: number,\r\n model: any\r\n ): Observable {\r\n return this.http.put(\r\n this.baseUrl + 'demurrage/' + demurrageId + '/status/' + statusId,\r\n model\r\n );\r\n }\r\n\r\n duplicateExportWithID(id: number, userId: number): Observable {\r\n return this.http.get(this.baseUrl + 'exports/' + id + '/duplicate/user/' + userId);\r\n }\r\n deleteUser(id: number): Observable {\r\n return this.http.delete(this.baseUrl + 'user/' + id);\r\n }\r\n deleteExchangeRate(id: number): Observable {\r\n return this.http.delete(this.baseUrl + 'exchangeRate/' + id);\r\n }\r\n deleteExport(id: number): Observable {\r\n const token = localStorage.getItem(\"token\");\r\n const headers = new HttpHeaders({\r\n 'Authorization': 'Bearer ' + token\r\n });\r\n return this.http.delete(this.baseUrl + 'exports/deleteExport/' + id, { headers });\r\n }\r\n\r\n createExcessWater(model: any): Observable {\r\n return this.http.post(this.baseUrl + 'excesswater/', model);\r\n }\r\n\r\n deleteExcessWaterClaim(id: number): Observable {\r\n return this.http.delete(this.baseUrl + 'excesswater/' + id);\r\n }\r\n\r\n getExcessWaterDetail(id: number): Observable {\r\n return this.http.get(this.baseUrl + 'excesswater/' + id);\r\n }\r\n\r\n updateExcessWater(id: number, model: any): Observable {\r\n return this.http.put(this.baseUrl + 'excesswater/' + id, model);\r\n }\r\n\r\n getExcessWaterWithOpenClaims(page?, itemsPerPage?, vesselName?, terminalName?, lifterName?, productName?): Observable> {\r\n const paginatedResult: PaginatedResult = new PaginatedResult();\r\n let params = new HttpParams();\r\n\r\n if (page != null && itemsPerPage != null) {\r\n params = params.append('pageNumber', page);\r\n params = params.append('pageSize', itemsPerPage);\r\n }\r\n if (vesselName != null) {\r\n params = params.append('vesselName', vesselName);\r\n }\r\n if (terminalName != null) {\r\n params = params.append('terminalName', terminalName);\r\n }\r\n if (lifterName != null) {\r\n params = params.append('lifterName', lifterName);\r\n }\r\n if (productName != null) {\r\n params = params.append('productName', productName);\r\n }\r\n \r\n\r\n return this.http\r\n .get(this.baseUrl + 'excesswater/open/claims/', { observe: 'response', params })\r\n .pipe(\r\n map(response => {\r\n paginatedResult.result = response.body;\r\n if (response.headers.get('Pagination') != null) {\r\n paginatedResult.pagination = JSON.parse(\r\n response.headers.get('Pagination')\r\n );\r\n }\r\n return paginatedResult;\r\n })\r\n );\r\n }\r\n\r\n verifySignature() {\r\n const token = localStorage.getItem(\"token\");\r\n if (token) {\r\n const protectedHeader = jose.decodeProtectedHeader(token);\r\n if (protectedHeader.alg == \"HS512\") return true;\r\n else {\r\n console.log(\"token signature is not matched\");\r\n return false;\r\n }\r\n }\r\n console.log(\"token signature error\");\r\n return false;\r\n }\r\n}\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { BsModalService } from 'ngx-bootstrap/modal';\r\nimport { ExportService } from '../../_services/export.service';\r\nimport { AlertifyService } from '../../_services/alertify.service';\r\nimport { Router } from '@angular/router';\r\nimport { AuthService } from '../../_services/auth.service';\r\nimport { Lifter } from '../../_models/lifter';\r\nimport { Terminal } from '../../_models/terminal';\r\nimport { OML } from '../../_models/oml';\r\nimport { OMLEquity } from '../../_models/omlequity';\r\n\r\n@Component({\r\n selector: \"app-admin-financial-tab\",\r\n templateUrl: \"./admin-financial-tab.component.html\",\r\n styleUrls: [\"./admin-financial-tab.component.css\"]\r\n})\r\nexport class AdminFinancialTabComponent implements OnInit {\r\n\r\n allocationDate: Date;\r\n allocationPercent: number;\r\n terminals: Terminal[];\r\n lifters: Lifter[];\r\n OMLs: OML[];\r\n omlLifterEquities: OMLEquity[];\r\n lifterID: number;\r\n terminalID: number;\r\n hasOML = false;\r\n hasLifter = false;\r\n model: any = {};\r\n\r\n constructor(\r\n private modalService: BsModalService,\r\n private exportService: ExportService,\r\n private alertify: AlertifyService,\r\n private route: Router,\r\n private authService: AuthService\r\n ) {}\r\n\r\n ngOnInit() {\r\n this.allocationPercent = 0.2345676767;\r\n this.loadTerminals();\r\n }\r\n loadTerminals() {\r\n this.exportService.getTerminals().subscribe(\r\n (terminals: Terminal[]) => {\r\n this.terminals = terminals;\r\n },\r\n error => {\r\n this.alertify.error(error);\r\n }\r\n );\r\n }\r\n loadLifters(omlId) {\r\n this.exportService.getOMLLifters(omlId).subscribe(\r\n (lifters: Lifter[]) => {\r\n this.lifters = lifters;\r\n },\r\n error => {\r\n this.alertify.error(error);\r\n }\r\n );\r\n }\r\n loadOMLLiftersByLifter(omlId, lifterId) {\r\n this.exportService\r\n .getOMLLiftersByLifter(omlId, lifterId)\r\n .subscribe(\r\n (omlLifterEquities: OMLEquity[]) => {\r\n this.omlLifterEquities = omlLifterEquities;\r\n // console.log(this.omlLifterEquities);\r\n },\r\n error => {\r\n this.alertify.error(error);\r\n }\r\n );\r\n }\r\n loadOMLs(id) {\r\n this.exportService.getTerminalOML(id).subscribe(\r\n (omls: OML[]) => {\r\n this.OMLs = omls;\r\n },\r\n error => {\r\n this.alertify.error(error);\r\n }\r\n );\r\n }\r\n onSelectTerminal(e) {\r\n this.loadOMLs(e.id);\r\n this.hasOML = true;\r\n console.log(e);\r\n }\r\n onSelectOML(e) {\r\n console.log(e);\r\n this.model.omlId = e.id;\r\n this.loadLifters(e.id);\r\n console.log(this.model);\r\n }\r\n onSelectLifter(e) {\r\n this.hasLifter = true;\r\n this.loadOMLLiftersByLifter(this.model.omlId, e.id);\r\n this.model.lifterId = e.id;\r\n this.model.userId = this.authService.decodedToken.nameid;\r\n // console.log(this.model);\r\n }\r\n saveAllocation() {\r\n this.model.allocationPeriod = this.allocationDate;\r\n this.model.allocationPercent = this.allocationPercent;\r\n console.log(this.model);\r\n this.exportService.createOMLLifterAllocation(this.model).subscribe(\r\n () => {\r\n this.alertify.success('Allocation Successfully Created');\r\n },\r\n error => {\r\n this.alertify.error('Could not create allocation');\r\n }\r\n );\r\n this.omlLifterEquities.push(this.model);\r\n // this.loadOMLLiftersByLifter(this.model.omlId, this.model.lifterId);\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
    \r\n
  • \r\n {{ lifterEquity.allocationPercent}}\r\n {{lifterEquity.allocationPeriod | date : 'MMM-yyy'}}\r\n
  • \r\n
\r\n
\r\n
\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { AuthService } from 'src/app/_services/auth.service';\r\nimport { AlertifyService } from 'src/app/_services/alertify.service';\r\nimport { Router } from '@angular/router';\r\n@Component({\r\n selector: 'app-admin-home',\r\n templateUrl: './admin-home.component.html',\r\n styleUrls: ['./admin-home.component.css']\r\n})\r\nexport class AdminHomeComponent implements OnInit {\r\n\r\n constructor( private authService: AuthService,\r\n private alertify: AlertifyService,\r\n private route: Router\r\n ) { \r\n \r\n }\r\n\r\n ngOnInit() {\r\n\r\n var validate = this.authService.decodedToken.role === 'Admin' ? true : false;\r\n if(!validate){\r\n console.log(\"You are not authorized to view this page\");\r\n this.alertify.error('You are not authorized to view this page');\r\n this.route.navigate([\"/dash-board\"]);\r\n }\r\n }\r\n\r\n}\r\n","
\r\n

Admin Settings

\r\n
    \r\n
  1. \r\n Home\r\n
  2. \r\n
  3. \r\n Library\r\n
  4. \r\n
  5. Settings
  6. \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Basic content 2\r\n \r\n
\r\n
","import { Component, OnInit, TemplateRef } from '@angular/core';\r\nimport { ExportService } from '../../_services/export.service';\r\nimport { AlertifyService } from '../../_services/alertify.service';\r\nimport { Router } from '@angular/router';\r\nimport { AuthService } from '../../_services/auth.service';\r\nimport { Terminal } from '../../_models/terminal';\r\nimport { TypeaheadMatch } from 'ngx-bootstrap/typeahead/typeahead-match.class';\r\nimport { Product } from 'src/app/_models/product';\r\nimport { Lifter } from 'src/app/_models/lifter';\r\nimport { CargoType } from 'src/app/_models/cargotype';\r\nimport { BsModalService, BsModalRef } from 'ngx-bootstrap/modal';\r\nimport { OML } from 'src/app/_models/oml';\r\n\r\n@Component({\r\n selector: \"app-admin-terminal-tab\",\r\n templateUrl: \"./admin-terminal-tab.component.html\",\r\n styleUrls: [\"./admin-terminal-tab.component.css\"]\r\n})\r\nexport class AdminTerminalTabComponent implements OnInit {\r\n terminalCollection: any = [\r\n {\r\n name: \"Agbami\"\r\n },\r\n {\r\n name: \"Escravos\"\r\n }\r\n ];\r\n\r\n enteredTerminal: any;\r\n model: any = {};\r\n terminals: Terminal[];\r\n selectedLifter: string;\r\n selectedOption: any = {};\r\n cargoTypeName: string;\r\n selectedCargoType: any = {};\r\n lifters: any[];\r\n products: Product[];\r\n cargotypes: CargoType[];\r\n showLifter = false;\r\n showCargoType = false;\r\n terminalName: string;\r\n omls: any[];\r\n\r\n modalRef: BsModalRef;\r\n\r\n public lifterForm: any = {\r\n name: null,\r\n label: null,\r\n omlId: null,\r\n terminalId: null,\r\n };\r\n public cargoTypeForm: any = {\r\n name: null,\r\n description: null,\r\n lifterId: null,\r\n };\r\n\r\n constructor(\r\n private modalService: BsModalService,\r\n private exportService: ExportService,\r\n private alertify: AlertifyService,\r\n private route: Router,\r\n private authService: AuthService,\r\n ) {}\r\n\r\n ngOnInit() {\r\n this.loadTerminals();\r\n this.loadCargoTypes();\r\n this.loadLifters();\r\n this.loadProducts();\r\n this.loadOMLs();\r\n }\r\n\r\n addNewTerminal(enteredTerminal) {\r\n if (enteredTerminal != null) {\r\n this.model.name = enteredTerminal;\r\n this.terminals.push(this.model);\r\n\r\n this.exportService.createTerminal(this.model).subscribe(\r\n () => {\r\n this.alertify.success(\"Terminal Successfully Created\");\r\n },\r\n error => {\r\n this.alertify.error(\"Unable to Create Terminal\");\r\n }\r\n );\r\n\r\n console.log(enteredTerminal);\r\n this.enteredTerminal = \"\";\r\n }\r\n }\r\n\r\n loadTerminals() {\r\n this.exportService.getTerminals().subscribe(\r\n (terminals: Terminal[]) => {\r\n this.terminals = terminals;\r\n console.log(this.terminals);\r\n },\r\n error => {\r\n this.alertify.error(error);\r\n }\r\n );\r\n }\r\n loadCargoTypes() {\r\n this.exportService.getCargoTypes().subscribe(\r\n (cargotypes: CargoType[]) => {\r\n this.cargotypes = cargotypes;\r\n },\r\n error => {\r\n this.alertify.error(error);\r\n }\r\n );\r\n }\r\n loadProducts() {\r\n this.exportService.getProducts().subscribe(\r\n (products: Product[]) => {\r\n this.products = products;\r\n },\r\n error => {\r\n this.alertify.error(error);\r\n }\r\n );\r\n }\r\n loadLifters() {\r\n this.exportService.getLifters().subscribe(\r\n (lifters: Lifter[]) => {\r\n this.lifters = lifters;\r\n },\r\n error => {\r\n this.alertify.error(error);\r\n }\r\n );\r\n }\r\n loadOMLs() {\r\n this.exportService.getOMLs().subscribe(\r\n (omls: OML[]) => {\r\n this.omls = omls;\r\n },\r\n error => {\r\n this.alertify.error(error);\r\n }\r\n );\r\n }\r\n onSelectLifter(event: TypeaheadMatch): void {\r\n this.selectedOption = event.item;\r\n this.lifterForm.id = this.selectedOption.id;\r\n this.lifterForm.name = this.selectedOption.name;\r\n this.lifterForm.label = this.selectedOption.label;\r\n this.lifterForm.omlId = this.selectedOption.omLs.id;\r\n this.lifterForm.terminalId = this.selectedOption.terminals.id;\r\n this.terminalName = this.selectedOption.terminals.name;\r\n this.showLifter = true;\r\n console.log(this.lifterForm);\r\n }\r\n onSelectCargoType(event: TypeaheadMatch): void {\r\n console.log(event.item);\r\n this.selectedCargoType = event.item;\r\n this.cargoTypeForm.name = this.selectedCargoType.name;\r\n this.cargoTypeForm.description = this.selectedCargoType.description;\r\n this.cargoTypeForm.lifterId = this.selectedCargoType.lifterId;\r\n console.log(this.cargoTypeForm);\r\n this.showCargoType = true;\r\n }\r\n closeLifterModal() {\r\n this.showLifter = false;\r\n this.selectedLifter = '';\r\n }\r\n openUpdateLifterModal(template: TemplateRef) {\r\n this.modalRef = this.modalService.show(template);\r\n }\r\n closeUpateLifterModal() {\r\n this.modalRef.hide();\r\n }\r\n updateLifterInformation() {\r\n console.log(this.lifterForm);\r\n this.exportService.updateLifter(this.lifterForm).subscribe(\r\n () => {\r\n this.alertify.success('Update Successful');\r\n this.modalRef.hide();\r\n this.loadLifters();\r\n this.showLifter = false;\r\n this.lifterForm.name = null;\r\n }, error => {\r\n this.alertify.error(error);\r\n }\r\n );\r\n }\r\n updateCargoTypeInformation() {\r\n console.log(this.cargoTypeForm);\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n Selected Lifter : {{selectedOption.name}}\r\n
\r\n
\r\n

Name : {{selectedOption.name}}

\r\n

Label : {{selectedOption.label}}

\r\n

Terminal : {{selectedOption.terminals?.name}}

\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n Selected Lifter : {{selectedOption.name}}\r\n
\r\n
\r\n

Name : {{selectedCargoType.name}}

\r\n

Label : {{selectedCargoType.description}}

\r\n

Lifter : {{selectedCargoType.lifter?.name}}

\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n

Update Lifter

\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n

Update CargoType

\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n","import { Component, OnInit, TemplateRef } from '@angular/core';\r\nimport { BsModalRef, BsModalService } from 'ngx-bootstrap/modal';\r\nimport { AuthService } from 'src/app/_services/auth.service';\r\nimport { AlertifyService } from 'src/app/_services/alertify.service';\r\nimport { ExportService } from 'src/app/_services/export.service';\r\nimport { User } from 'src/app/_models/user';\r\nimport { PaginatedResult, Pagination } from 'src/app/_models/pagination';\r\nimport { UserRole } from 'src/app/_models/UserRole';\r\n\r\n@Component({\r\n selector: 'app-admin-user',\r\n templateUrl: './admin-user.component.html',\r\n styleUrls: ['./admin-user.component.css']\r\n})\r\nexport class AdminUserComponent implements OnInit {\r\n\r\n modalRef: BsModalRef;\r\n userToDelete: number;\r\n usersList: User[];\r\n enableLoader =true;\r\n public userForm = {\r\n id :null,\r\n username: null,\r\n role: null,\r\n password: null,\r\n confirmPassword: null\r\n };\r\n userRoles: UserRole[];\r\n\r\n constructor(private modalService: BsModalService,\r\n private authService: AuthService,\r\n private alertify: AlertifyService,\r\n private exportService: ExportService) { }\r\n\r\n ngOnInit() {\r\n this.pageNumber = 1;\r\n this.pageSize = 10;\r\n this.loadUsers(this.pageNumber,this.pageSize);\r\n this.loadRoles();\r\n }\r\n\r\n openModal(template: TemplateRef) {\r\n this.modalRef = this.modalService.show(template);\r\n }\r\n\r\n\r\n openEditModal(template: TemplateRef, id: number) {\r\n \r\n if(id != null) {\r\n this.authService.getUserById(id).subscribe(\r\n (user: any) => {\r\n this.userForm.id = user.id;\r\n this.userForm.username = user.username;\r\n this.userForm.role = user.roleId;\r\n \r\n }, error => {\r\n this.alertify.error('Unable to Load User');\r\n }\r\n );\r\n }\r\n this.modalRef = this.modalService.show(template);\r\n }\r\n openDeleteModal(template: TemplateRef, id: number) {\r\n this.modalRef = this.modalService.show(template);\r\n this.userToDelete = id;\r\n }\r\n submitAddUserForm() {\r\n if(this.userForm.password === this.userForm.confirmPassword) {\r\n console.log(\"UserData\",this.userForm);\r\n this.authService.register(this.userForm).subscribe(\r\n () => {\r\n this.alertify.success('New User Successfully Added');\r\n this.loadUsers(this.pageNumber,this.pageSize);\r\n }, error => {\r\n this.alertify.error('Unable to Add new User');\r\n }\r\n );\r\n } else {\r\n this.alertify.error('Password Does not Match');\r\n }\r\n }\r\n\r\n submitEditUserForm() {\r\n if(this.userForm.username != null || this.userForm.role != null) {\r\n \r\n //passing dummy datas\r\n this.userForm.password = \"nullnull\";\r\n this.authService.updateUser(this.userForm).subscribe(\r\n () => {\r\n this.alertify.success('User Successfully Updated.');\r\n this.loadUsers(this.pageNumber,this.pageSize);\r\n }, error => {\r\n this.alertify.error('Unable to update User');\r\n }\r\n );\r\n } else {\r\n this.alertify.error('Please enter all the required fields'); \r\n }\r\n }\r\n deleteUser() {\r\n\r\n this.exportService.deleteUser(this.userToDelete).subscribe(\r\n () => {\r\n this.alertify.success('User Successfully Deleted');\r\n this.loadUsers(this.pageNumber,this.pageSize);\r\n this.modalRef.hide();\r\n }, error => {\r\n this.alertify.error(error);\r\n }\r\n );\r\n }\r\n closeAddUserForm() {\r\n this.modalRef.hide();\r\n }\r\n closeEditUserForm() {\r\n this.modalRef.hide();\r\n }\r\n loadUsers(pn: any, ps: any) {\r\n this.exportService.getAllAdminUsers(pn, ps).subscribe(\r\n (users: PaginatedResult) => {\r\n this.usersList = users.result;\r\n this.pagination = users.pagination;\r\n this.enableLoader = false;\r\n }, error => {\r\n this.alertify.error('Unable to Load Users');\r\n this.enableLoader=false;\r\n }\r\n );\r\n }\r\n\r\n //Pagination Variables\r\n pagination: Pagination;\r\n pageNumber: number;\r\n pageSize: number;\r\n pageChanged(event: any): void {\r\n this.pagination.currentPage = event.page;\r\n this.reloadUsers();\r\n }\r\n \r\n reloadUsers() {\r\n this.exportService.getAllAdminUsers(\r\n this.pagination.currentPage,\r\n this.pagination.itemsPerPage\r\n ).subscribe(\r\n (users: PaginatedResult) => {\r\n this.usersList = users.result;\r\n this.pagination = users.pagination;\r\n this.enableLoader = false;\r\n },\r\n (error) => {\r\n this.alertify.error(\"Unable to Load Users\");\r\n this.enableLoader = false;\r\n }\r\n );\r\n }\r\n\r\n\r\n loadRoles() {\r\n this.authService.getUserRole().subscribe(\r\n (roles: UserRole[]) => {\r\n this.userRoles = roles;\r\n },\r\n error => {\r\n this.alertify.error('Unable to Load user roles');\r\n }\r\n );\r\n }\r\n}\r\n","
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
#User NameRoleAction
{{i + 1}}{{user?.username | uppercase}}{{user?.role | uppercase}}\r\n Delete \r\n Edit \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n

ADD NEW USER

\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n

EDIT USER

\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n

Confirm Delete Action

\r\n
\r\n
\r\n Are you absolutely sure you want to delete this user
\r\n \r\n
\r\n
\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { AuthService } from './_services/auth.service';\r\nimport { JwtHelperService } from '@auth0/angular-jwt';\r\n\r\n\r\n@Component({\r\n selector: 'app-root',\r\n templateUrl: './app.component.html',\r\n styleUrls: ['./app.component.css']\r\n})\r\nexport class AppComponent implements OnInit {\r\n jwtHelper = new JwtHelperService();\r\n\r\n constructor(private authService: AuthService) {}\r\n\r\n ngOnInit() {\r\n const token = localStorage.getItem('token');\r\n if (token) {\r\n this.authService.decodedToken = this.jwtHelper.decodeToken(token);\r\n }\r\n\r\n }\r\n}\r\n","\r\n\r\n\r\n\r\n\r\n\r\n\r\n","import { BrowserModule } from \"@angular/platform-browser\";\r\nimport { NgModule } from \"@angular/core\";\r\nimport { HttpClientModule } from \"@angular/common/http\";\r\nimport { FormsModule } from \"@angular/forms\";\r\nimport { BsDropdownModule } from \"ngx-bootstrap/dropdown\";\r\nimport { TabsModule } from \"ngx-bootstrap/tabs\";\r\nimport { ModalModule } from \"ngx-bootstrap/modal\";\r\nimport { BsDatepickerModule } from \"ngx-bootstrap/datepicker\";\r\nimport { CollapseModule } from \"ngx-bootstrap/collapse\";\r\nimport { TimepickerModule } from \"ngx-bootstrap/timepicker\";\r\nimport { PopoverModule } from \"ngx-bootstrap/popover\";\r\nimport { PaginationModule } from \"ngx-bootstrap/pagination\";\r\nimport { TypeaheadModule } from \"ngx-bootstrap/typeahead\";\r\nimport { SortableModule } from \"ngx-bootstrap/sortable\";\r\nimport { RouterModule } from \"@angular/router\";\r\nimport { ReactiveFormsModule } from \"@angular/forms\";\r\nimport { FileUploadModule } from \"ng2-file-upload\";\r\nimport { JwtModule } from \"@auth0/angular-jwt\";\r\nimport { TimeAgoPipe } from \"time-ago-pipe\";\r\n// import { ChartsModule } from 'ng2-charts';\r\nimport { BrowserAnimationsModule } from \"@angular/platform-browser/animations\";\r\nimport { MatProgressSpinnerModule } from \"@angular/material/progress-spinner\";\r\n\r\nimport { AppComponent } from \"./app.component\";\r\nimport { TerminalComponent } from \"./terminal/terminal.component\";\r\nimport { NavComponent } from \"./nav/nav.component\";\r\nimport { AuthService } from \"./_services/auth.service\";\r\nimport { HomeComponent } from \"./home/home.component\";\r\nimport { RegisterComponent } from \"./register/register.component\";\r\nimport { AlertifyService } from \"./_services/alertify.service\";\r\nimport { DashBoardComponent } from \"./dash-board/dash-board.component\";\r\nimport { ExportComponent } from \"./export/export.component\";\r\nimport { LiftingProgramComponent } from \"./lifting-program/lifting-program.component\";\r\nimport { DocumentComponent } from \"./document/document.component\";\r\nimport { appRoute } from \"./routes\";\r\nimport { AuthGuard } from \"./_guards/auth.guard\";\r\nimport { ExportService } from \"./_services/export.service\";\r\nimport { ExportCardComponent } from \"./export-card/export-card.component\";\r\nimport { DashExportCardComponent } from \"./dash-export-card/dash-export-card.component\";\r\nimport { DashTableComponent } from \"./dash-table/dash-table.component\";\r\nimport { DashTabComponent } from \"./dash-tab/dash-tab.component\";\r\nimport { ExportMenuNavComponent } from \"./export-menu-nav/export-menu-nav.component\";\r\nimport { DashIssueBoardComponent } from \"./dash-issue-board/dash-issue-board.component\";\r\nimport { ExportDetailComponent } from \"./export-detail/export-detail.component\";\r\nimport { ExportDetailResolver } from \"./_resolvers/export-detail.resolver\";\r\nimport { AddExportModalComponent } from \"./modals/add-export-modal/add-export-modal.component\";\r\nimport { ExportDetailUpdateComponent } from \"./export-detail-update/export-detail-update.component\";\r\nimport { PreventUnsavedChangesGuard } from \"./_guards/prevent-unsaved-changes-guard\";\r\nimport { DocumentUploadComponent } from \"./document-upload/document-upload.component\";\r\nimport { ExportDetailActionComponent } from \"./export-detail-action/export-detail-action.component\";\r\nimport { ExportDetailUpdateActionsComponent } from \"./export-detail-update-actions/export-detail-update-actions.component\";\r\nimport { ExportActionsListUpdateViewComponent } from \"./export-actions-list-update-view/export-actions-list-update-view.component\";\r\nimport { NodeCommentResolver } from \"./_resolvers/node-comment.resolver\";\r\nimport { ExportDetailVesselComponent } from \"./export-detail-vessel/export-detail-vessel.component\";\r\nimport { ExportDetailDocumentComponent } from \"./export-detail-document/export-detail-document.component\";\r\nimport { ExportDetailFinancialComponent } from \"./export-detail-financial/export-detail-financial.component\";\r\nimport { ExportDetailAnalystComponent } from \"./export-detail-analyst/export-detail-analyst.component\";\r\nimport { ExportUpdateActivityCommentComponent } from \"./export-update-activity-comment/export-update-activity-comment.component\";\r\nimport { ExportTableComponent } from \"./export-table/export-table.component\";\r\nimport { ForecastHomeComponent } from \"./forecast/forecast-home/forecast-home.component\";\r\nimport { ForecastNavComponent } from \"./forecast/forecast-nav/forecast-nav.component\";\r\nimport { FooterComponent } from \"./footer/footer.component\";\r\nimport { NavChevronComponent } from \"./nav-chevron/nav-chevron.component\";\r\nimport { ExportDetailUpdateFinancialComponent } from \"./export-detail-update-financial/export-detail-update-financial.component\";\r\nimport { AdminHomeComponent } from \"./admin/admin-home/admin-home.component\";\r\nimport { AdminTerminalTabComponent } from \"./admin/admin-terminal-tab/admin-terminal-tab.component\";\r\nimport { AdminFinancialTabComponent } from \"./admin/admin-financial-tab/admin-financial-tab.component\";\r\nimport { DocumentHomeComponent } from \"./document-home/document-home.component\";\r\nimport { DemurrageHomeComponent } from \"./demurrage/demurrage-home/demurrage-home.component\";\r\nimport { DemurrageWorksheetModalComponent } from \"./demurrage/demurrage-worksheet-modal/demurrage-worksheet-modal.component\";\r\nimport { DemurrageClaimComponent } from \"./demurrage/demurrage-claim/demurrage-claim.component\";\r\nimport { DemurrageDocumentUploadComponent } from \"./demurrage/demurrage-document-upload/demurrage-document-upload.component\";\r\nimport { OpenDemurrageListComponent } from \"./demurrage/open-demurrage-list/open-demurrage-list.component\";\r\nimport { DemurrageListDetailComponent } from \"./demurrage/demurrage-list-detail/demurrage-list-detail.component\";\r\nimport { DocumentTemplateUploadComponent } from \"./documenttemplate/document-template-upload/document-template-upload.component\";\r\nimport { ForecastGeneratorComponent } from \"./forecast/forecast-generator/forecast-generator.component\";\r\nimport { ExportCreateComponent } from \"./export-create/export-create.component\";\r\nimport { FinancialHomeComponent } from \"./financial/financial-home/financial-home.component\";\r\nimport { NessComponent } from \"./financial/ness/ness.component\";\r\nimport { NessPayreqComponent } from \"./financial/ness-payreq/ness-payreq.component\";\r\nimport { ExchangeRateComponent } from \"./financial/exchange-rate/exchange-rate.component\";\r\nimport { CompletedNessComponent } from \"./financial/completed-ness/completed-ness.component\";\r\nimport { DocumentListComponent } from \"./document-module/document-list/document-list.component\";\r\nimport { DocumentListResolver } from \"./_resolvers/document-list.resolver\";\r\nimport { DateService } from \"./_services/date.service\";\r\nimport { ReportHomeComponent } from \"./report/report-home/report-home.component\";\r\nimport { EnergycomponentService } from \"./_services/energycomponent.service\";\r\nimport { AdminUserComponent } from \"./admin/admin-user/admin-user.component\";\r\nimport { httpInterceptorProviders } from \"./_http-interceptors/http.interceptor\";\r\nimport { TimespanToHoursPipe } from \"./_pipes/timespan-to-hours\";\r\nimport { TimeagoFixPipe } from \"./_pipes/TimeagoFixPipe\";\r\nimport { ExcessWaterDocumentUploadComponent } from \"./excess-water/excess-water-document-upload/excess-water-document-upload.component\";\r\nimport { ExcessWaterHomeComponent } from \"./excess-water/excess-water-home/excess-water-home.component\";\r\nimport { OpenExcessWaterListComponent } from \"./excess-water/open-excess-water-list/open-excess-water-list.component\";\r\nimport { ExcessWaterDetailComponent } from \"./excess-water/excess-water-detail/excess-water-detail.component\";\r\nimport { ExcessWaterDetailUpdateComponent } from \"./excess-water/excess-water-detail-update/excess-water-detail-update.component\";\r\nimport { ExcessWaterDocumentComponent } from \"./excess-water/ecxess-water-document/excess-water-document.component\";\r\n\r\nexport function tokenGetter() {\r\n return localStorage.getItem(\"token\");\r\n}\r\n\r\n@NgModule({\r\n declarations: [\r\n AppComponent,\r\n TerminalComponent,\r\n NavComponent,\r\n HomeComponent,\r\n RegisterComponent,\r\n DashBoardComponent,\r\n ExportComponent,\r\n LiftingProgramComponent,\r\n DocumentComponent,\r\n ExportCardComponent,\r\n DashExportCardComponent,\r\n DashTableComponent,\r\n DashTabComponent,\r\n ExportMenuNavComponent,\r\n DashIssueBoardComponent,\r\n ExportDetailComponent,\r\n AddExportModalComponent,\r\n ExportDetailUpdateComponent,\r\n DocumentUploadComponent,\r\n ExportDetailActionComponent,\r\n ExportDetailUpdateActionsComponent,\r\n ExportActionsListUpdateViewComponent,\r\n ExportDetailVesselComponent,\r\n ExportDetailDocumentComponent,\r\n ExportDetailFinancialComponent,\r\n ExportDetailAnalystComponent,\r\n ExportUpdateActivityCommentComponent,\r\n TimeagoFixPipe,\r\n TimespanToHoursPipe,\r\n ExportTableComponent,\r\n ForecastHomeComponent,\r\n ForecastNavComponent,\r\n FooterComponent,\r\n NavChevronComponent,\r\n ExportDetailUpdateFinancialComponent,\r\n AdminHomeComponent,\r\n AdminTerminalTabComponent,\r\n AdminFinancialTabComponent,\r\n DocumentHomeComponent,\r\n DemurrageHomeComponent,\r\n DemurrageWorksheetModalComponent,\r\n DemurrageClaimComponent,\r\n DemurrageDocumentUploadComponent,\r\n OpenDemurrageListComponent,\r\n DemurrageListDetailComponent,\r\n DocumentTemplateUploadComponent,\r\n ForecastGeneratorComponent,\r\n ExportCreateComponent,\r\n FinancialHomeComponent,\r\n NessComponent,\r\n NessPayreqComponent,\r\n ExchangeRateComponent,\r\n CompletedNessComponent,\r\n DocumentListComponent,\r\n ReportHomeComponent,\r\n AdminUserComponent,\r\n ExcessWaterDocumentUploadComponent,\r\n ExcessWaterHomeComponent,\r\n OpenExcessWaterListComponent,\r\n ExcessWaterDetailComponent,\r\n ExcessWaterDetailUpdateComponent,\r\n ExcessWaterDocumentComponent\r\n ],\r\n imports: [\r\n // ChartsModule,\r\n BrowserModule,\r\n HttpClientModule,\r\n BrowserAnimationsModule,\r\n MatProgressSpinnerModule,\r\n FormsModule,\r\n RouterModule.forRoot(appRoute, { relativeLinkResolution: \"legacy\" }),\r\n BsDropdownModule.forRoot(),\r\n PaginationModule.forRoot(),\r\n TabsModule.forRoot(),\r\n ModalModule.forRoot(),\r\n BsDatepickerModule.forRoot(),\r\n ReactiveFormsModule,\r\n // ButtonsModule.forRoot(),\r\n PopoverModule.forRoot(),\r\n FileUploadModule,\r\n TypeaheadModule.forRoot(),\r\n CollapseModule.forRoot(),\r\n SortableModule.forRoot(),\r\n TimepickerModule.forRoot(),\r\n JwtModule.forRoot({\r\n config: {\r\n tokenGetter: tokenGetter,\r\n allowedDomains: [\"\"],\r\n disallowedRoutes: [\"/api/auth\"],\r\n },\r\n }),\r\n ],\r\n providers: [\r\n httpInterceptorProviders,\r\n AuthService,\r\n AlertifyService,\r\n AuthGuard,\r\n ExportService,\r\n ExportDetailResolver,\r\n PreventUnsavedChangesGuard,\r\n NodeCommentResolver,\r\n DocumentListResolver,\r\n DateService,\r\n EnergycomponentService,\r\n ],\r\n bootstrap: [AppComponent],\r\n})\r\nexport class AppModule {}\r\n","import { Component, OnInit, TemplateRef } from '@angular/core';\r\nimport { ExportService } from '../_services/export.service';\r\nimport { AlertifyService } from '../_services/alertify.service';\r\nimport { Export } from '../_models/export';\r\nimport { PaginatedResult, Pagination } from '../_models/pagination';\r\nimport { Vessel } from '../_models/Vessel';\r\nimport { CargoType } from '../_models/cargotype';\r\nimport { Terminal } from '../_models/terminal';\r\nimport { Product } from '../_models/product';\r\nimport { Lifter } from '../_models/lifter';\r\nimport { DateService } from '../_services/date.service';\r\nimport { Status } from '../_models/status';\r\nimport { User } from '../_models/user';\r\nimport { TypeaheadMatch } from 'ngx-bootstrap/typeahead/typeahead-match.class';\r\nimport { AuthService } from '../_services/auth.service';\r\nimport { BsModalRef, BsModalService } from 'ngx-bootstrap/modal';\r\n\r\n\r\n@Component({\r\n selector: 'app-dash-board',\r\n templateUrl: './dash-board.component.html',\r\n styleUrls: ['./dash-board.component.css']\r\n})\r\nexport class DashBoardComponent implements OnInit {\r\n exports: Export[];\r\n pagination: any = {};\r\n pageNumber = 1;\r\n pageSize = 24;\r\n customSelected: string;\r\n vesselNames: any[];\r\n enableLoader = true;\r\n terminals: Terminal[];\r\n products: Product[];\r\n lifters: Lifter[];\r\n cargotypes: CargoType[];\r\n model: any = {};\r\n terminalName: string;\r\n lifterName: string;\r\n productName: string;\r\n dateStart: any;\r\n dateEnd: any;\r\n dateStartToSend: any;\r\n dateEndToSend: any;\r\n userId: number;\r\n statusId: number;\r\n statusList: Status[];\r\n usersList: User[];\r\n selectedCargoNumber: any;\r\n\r\n filterModel: any = {};\r\n filterList: any[];\r\n modalRef: BsModalRef;\r\n public filterName: string;\r\n\r\n constructor(\r\n private exportService: ExportService,\r\n private alertify: AlertifyService,\r\n private dateService: DateService,\r\n private authService: AuthService,\r\n private modalService: BsModalService\r\n ) { }\r\n\r\n ngOnInit() {\r\n // this.pageNumber = 1;\r\n // this.pageSize = 12;\r\n\r\n this.loadVessels();\r\n this.loadTerminals();\r\n this.loadLifters();\r\n this.loadProducts();\r\n this.loadStatus();\r\n this.loadUsers();\r\n this.loadFilterForUser();\r\n\r\n this.loadExportsFromCache(this.pageNumber, this.pageSize);\r\n }\r\n loadExportsFromCache(pn, ps) {\r\n const fitString = localStorage.getItem('current-filter');\r\n\r\n if (fitString) {\r\n console.log('fitter: ' + fitString);\r\n var currentFilter = JSON.parse(fitString);\r\n\r\n this.customSelected = currentFilter.vesselName;\r\n this.terminalName = currentFilter.terminalName;\r\n this.productName = currentFilter.productName;\r\n this.lifterName = currentFilter.lifterName;\r\n if (currentFilter.startDate !== undefined) {\r\n this.dateStartToSend = currentFilter.startDate;\r\n }\r\n\r\n if (currentFilter.endDate != undefined) {\r\n this.dateEndToSend = currentFilter.endDate;\r\n }\r\n if (currentFilter.usersId > 0) {\r\n this.userId = currentFilter.usersId;\r\n }\r\n if (currentFilter.statusId) {\r\n this.statusId = currentFilter.statusId;\r\n }\r\n if (currentFilter.cargoNumber != undefined) {\r\n this.selectedCargoNumber = currentFilter.cargoNumber;\r\n }\r\n\r\n var currentPage = this.pageNumber;\r\n var curPage = localStorage.getItem(\"current-filter-page\");\r\n if (curPage) {\r\n currentPage = parseInt(curPage);\r\n }\r\n var currentPageSize = this.pageSize;\r\n var curPage = localStorage.getItem(\"current-filter-pageSize\");\r\n if (curPage) {\r\n currentPageSize = parseInt(curPage);\r\n }\r\n\r\n this.pagination.currentPage = currentPage;\r\n this.pagination.itemsPerPage = currentPageSize;\r\n this.pagination.totalItems = 1000;\r\n this.reloadExports();\r\n this.enableLoader = false;\r\n }\r\n else {\r\n console.log('fitter: no cache');\r\n this.loadExports(pn, ps);\r\n }\r\n }\r\n loadExports(pn, ps) {\r\n this.exportService.getExports(pn, ps).subscribe(\r\n (exports: PaginatedResult) => {\r\n this.enableLoader = false;\r\n this.exports = exports.result;\r\n this.pagination = exports.pagination;\r\n },\r\n error => {\r\n this.alertify.error(error);\r\n }\r\n );\r\n }\r\n reloadExports() {\r\n this.exportService\r\n .getExports(\r\n this.pagination.currentPage,\r\n this.pagination.itemsPerPage,\r\n this.customSelected,\r\n this.terminalName,\r\n this.lifterName,\r\n this.productName,\r\n this.dateStartToSend,\r\n this.dateEndToSend,\r\n this.statusId,\r\n this.userId,\r\n this.selectedCargoNumber\r\n )\r\n .subscribe(\r\n (res: PaginatedResult) => {\r\n this.exports = res.result;\r\n this.pagination = res.pagination;\r\n },\r\n error => {\r\n this.alertify.error(error);\r\n }\r\n );\r\n }\r\n\r\n pageChanged(event: any): void {\r\n this.pagination.currentPage = event.page;\r\n localStorage.setItem(\"current-filter-page\", this.pagination.currentPage);\r\n localStorage.setItem(\"current-filter-pageSize\", this.pagination.itemsPerPage);\r\n this.reloadExports();\r\n }\r\n\r\n loadVessels() {\r\n this.exportService.getVessels().subscribe(\r\n (vessels: Vessel[]) => {\r\n this.vesselNames = vessels;\r\n },\r\n error => {\r\n this.alertify.error(error);\r\n }\r\n );\r\n }\r\n onSelect() {\r\n }\r\n loadCargoTypes() {\r\n this.exportService.getCargoTypes().subscribe(\r\n (cargotypes: CargoType[]) => {\r\n this.cargotypes = cargotypes;\r\n },\r\n error => {\r\n this.alertify.error(error);\r\n }\r\n );\r\n }\r\n loadTerminals() {\r\n this.exportService.getTerminals().subscribe(\r\n (terminals: Terminal[]) => {\r\n this.terminals = terminals;\r\n },\r\n error => {\r\n this.alertify.error(error);\r\n }\r\n );\r\n }\r\n loadProducts() {\r\n this.exportService.getProducts().subscribe(\r\n (products: Product[]) => {\r\n this.products = products;\r\n },\r\n error => {\r\n this.alertify.error(error);\r\n }\r\n );\r\n }\r\n loadLifters() {\r\n this.exportService.getLifters().subscribe(\r\n (lifters: Lifter[]) => {\r\n this.lifters = lifters;\r\n },\r\n error => {\r\n this.alertify.error(error);\r\n }\r\n );\r\n }\r\n loadStatus() {\r\n this.exportService.getStatusList().subscribe(\r\n (statusList: Status[]) => {\r\n this.statusList = statusList;\r\n }, error => {\r\n this.alertify.error('Unable to load Status');\r\n }\r\n );\r\n }\r\n loadUsers() {\r\n this.exportService.getAllUsers().subscribe(\r\n (users: User[]) => {\r\n this.usersList = users;\r\n }, error => {\r\n this.alertify.error('Unable to Load Users');\r\n }\r\n );\r\n }\r\n loadFilterForUser() {\r\n this.exportService.getFiltersForUser(this.authService.decodedToken.nameid).subscribe(\r\n (filters: any[]) => {\r\n this.filterList = filters;\r\n }, error => {\r\n this.alertify.error('Unable to Load Filters');\r\n }\r\n );\r\n }\r\n\r\n runQuery() {\r\n this.pagination.currentPage = this.pageNumber;\r\n\r\n this.reloadExports();\r\n\r\n var currentFilter = this.getFilterModel();\r\n localStorage.setItem(\"current-filter\", JSON.stringify(currentFilter));\r\n localStorage.setItem(\"current-filter-page\", this.pagination.currentPage);\r\n localStorage.setItem(\"current-filter-pageSize\", this.pagination.itemsPerPage);\r\n }\r\n\r\n clearFilter() {\r\n // this.ngOnInit();\r\n this.terminalName = null;\r\n this.productName = null;\r\n this.lifterName = null;\r\n this.customSelected = null;\r\n this.productName = null;\r\n this.dateStartToSend = null;\r\n this.dateEndToSend = null;\r\n this.statusId = null;\r\n this.userId = null;\r\n this.selectedCargoNumber = null;\r\n this.loadExports(this.pageNumber, this.pageSize);\r\n }\r\n\r\n onDateStartChange(value: Date): void {\r\n this.dateStartToSend = this.dateService.urlDate(value);\r\n const today = new Date(Date.now());\r\n this.dateEndToSend = this.dateService.urlDate(today);\r\n }\r\n onDateEndChange(value: Date): void {\r\n this.dateEndToSend = this.dateService.urlDate(value);\r\n }\r\n onSelectCargoNumber(event: TypeaheadMatch): void {\r\n this.selectedCargoNumber = event.item.cargoNumber;\r\n }\r\n\r\n getFilterModel() {\r\n var fitModel: any = {};\r\n fitModel.name = this.filterName;\r\n fitModel.vesselName = this.customSelected;\r\n fitModel.terminalName = this.terminalName;\r\n fitModel.productName = this.productName;\r\n fitModel.lifterName = this.lifterName;\r\n if (this.dateStartToSend != null) {\r\n fitModel.startDate = this.dateStartToSend;\r\n }\r\n if (this.dateEndToSend != null) {\r\n fitModel.endDate = this.dateEndToSend;\r\n }\r\n fitModel.usersId = this.userId;\r\n fitModel.statusId = this.statusId;\r\n if (this.selectedCargoNumber != null) {\r\n fitModel.cargoNumber = this.selectedCargoNumber;\r\n }\r\n return fitModel;\r\n }\r\n\r\n saveFilter() {\r\n this.filterModel = this.getFilterModel();\r\n this.filterModel.creatorId = this.authService.decodedToken.nameid;\r\n console.log(this.filterModel);\r\n\r\n this.exportService.createFilter(this.filterModel).subscribe(\r\n () => {\r\n this.alertify.success('Filter save');\r\n this.loadFilterForUser();\r\n this.modalRef.hide();\r\n }, error => {\r\n this.alertify.error('Error saving filter');\r\n }\r\n );\r\n }\r\n openFilterNameModal(template: TemplateRef) {\r\n this.modalRef = this.modalService.show(template);\r\n }\r\n loadSelectedFilter(filter: any) {\r\n this.terminalName = filter.terminalName;\r\n this.productName = filter.productName;\r\n this.lifterName = filter.lifterName;\r\n this.customSelected = filter.vesselName;\r\n this.productName = filter.productName;\r\n\r\n // due to being lazy, excluded setting dateStart and dateEnd while loading filter \r\n //this.dateStartToSend = null;\r\n //this.dateEndToSend = null;\r\n\r\n if (filter.statusId > 0) {\r\n this.statusId = filter.statusId;\r\n }\r\n if (filter.userId > 0) {\r\n this.userId = filter.userId;\r\n }\r\n if (filter.cargoNumber != null) {\r\n this.selectedCargoNumber = filter.cargoNumber;\r\n }\r\n this.runQuery();\r\n }\r\n}\r\n","
\r\n

Dash Board

\r\n
    \r\n
  1. \r\n Home\r\n
  2. \r\n
  3. \r\n Dash Board\r\n
  4. \r\n
  5. Export Dash Board
  6. \r\n
\r\n
Total Exports : {{pagination.totalItems}}
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n \r\n \r\n \r\n
\r\n\r\n\r\n
\r\n

Add Filter Name

\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n
\r\n
","import { Component, OnInit, Input } from '@angular/core';\r\nimport { Export } from '../_models/export';\r\n\r\n@Component({\r\n selector: 'app-dash-export-card',\r\n templateUrl: './dash-export-card.component.html',\r\n styleUrls: ['./dash-export-card.component.css']\r\n})\r\nexport class DashExportCardComponent implements OnInit {\r\n @Input() export: Export;\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","
\r\n
{{export?.vessel?.name}}
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
{{export?.lifters?.name}}
\r\n
\r\n
\r\n
{{export?.dateRangeStart | date:'d'}} - {{export?.dateRangeEnd | date:'d MMMM,\r\n y'}}
\r\n
\r\n \r\n
    \r\n
  • \r\n BOL Date : {{ export?.bolDate | date}}\r\n
  • \r\n
  • \r\n BOL Volume: {{ export?.actualCargo | number}}\r\n
  • \r\n
  • \r\n
    {{ export?.status?.label}}
    \r\n
  • \r\n
\r\n
","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-dash-issue-board',\r\n templateUrl: './dash-issue-board.component.html',\r\n styleUrls: ['./dash-issue-board.component.css']\r\n})\r\nexport class DashIssueBoardComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","

Pending Action

\r\n
\r\n
\r\n Document Instruction! DI for AGB-008\r\n Need to be sent to terminal\r\n \r\n \r\n \r\n
\r\n
\r\n Well done! You successfully read\r\n this important alert message\r\n
\r\n
\r\n Well done! You successfully read\r\n this important alert message.\r\n
\r\n
\r\n Well done! You successfully read\r\n this important alert message.\r\n
\r\n
\r\n Well done! You successfully read\r\n this important alert message.\r\n
\r\n
\r\n Well done! You successfully read\r\n this important alert message\r\n
\r\n
\r\n","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-dash-tab',\r\n templateUrl: './dash-tab.component.html',\r\n styleUrls: ['./dash-tab.component.css']\r\n})\r\nexport class DashTabComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","\r\n
\r\n
\r\n

Raw denim you probably haven't heard of them jean shorts Austin. Nesciunt tofu stumptown aliqua, retro synth master cleanse.\r\n Mustache cliche tempor, williamsburg carles vegan helvetica. Reprehenderit butcher retro keffiyeh dreamcatcher synth.\r\n Cosby sweater eu banh mi, qui irure terry richardson ex squid. Aliquip placeat salvia cillum iphone. Seitan aliquip\r\n quis cardigan american apparel, butcher voluptate nisi qui.

\r\n
\r\n
\r\n

Food truck fixie locavore, accusamus mcsweeney's marfa nulla single-origin coffee squid. Exercitation +1 labore velit,\r\n blog sartorial PBR leggings next level wes anderson artisan four loko farm-to-table craft beer twee. Qui photo booth\r\n letterpress, commodo enim craft beer mlkshk aliquip jean shorts ullamco ad vinyl cillum PBR. Homo nostrud organic,\r\n assumenda labore aesthetic magna delectus mollit.

\r\n
\r\n
\r\n

Etsy mixtape wayfarers, ethical wes anderson tofu before they sold out mcsweeney's organic lomo retro fanny pack lo-fi\r\n farm-to-table readymade. Messenger bag gentrify pitchfork tattooed craft beer, iphone skateboard locavore carles etsy\r\n salvia banksy hoodie helvetica. DIY synth PBR banksy irony. Leggings gentrify squid 8-bit cred pitchfork.

\r\n
\r\n
\r\n

Trust fund seitan letterpress, keytar raw denim keffiyeh etsy art party before they sold out master cleanse gluten-free\r\n squid scenester freegan cosby sweater. Fanny pack portland seitan DIY, art party locavore wolf cliche high life echo\r\n park Austin. Cred vinyl keffiyeh DIY salvia PBR, banh mi before they sold out farm-to-table VHS viral locavore cosby\r\n sweater.

\r\n
\r\n
\r\n","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-dash-table',\r\n templateUrl: './dash-table.component.html',\r\n styleUrls: ['./dash-table.component.css']\r\n})\r\nexport class DashTableComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","
\r\n

Issues Log

\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
TypeColumn headingColumn headingColumn heading
DefaultColumn contentColumn contentColumn content
\r\n
\r\n","import { Component, OnInit, Input } from '@angular/core';\r\nimport { Export } from '../../_models/export';\r\nimport { ExportService } from '../../_services/export.service';\r\nimport { AlertifyService } from '../../_services/alertify.service';\r\nimport { AuthService } from '../../_services/auth.service';\r\nimport { Demurrage } from '../../_models/demurrage';\r\n\r\n@Component({\r\n selector: 'app-demurrage-claim',\r\n templateUrl: './demurrage-claim.component.html',\r\n styleUrls: ['./demurrage-claim.component.css']\r\n})\r\nexport class DemurrageClaimComponent implements OnInit {\r\n @Input() export: any;\r\n demurrageModel: any = {};\r\n\r\n totalUsedLayTime: any;\r\n totalExcessLaytime: any;\r\n revisedClaimValue: number;\r\n initialClaimRecievedDate: any;\r\n createdDemurrage: any = {};\r\n\r\n constructor(\r\n private exportService: ExportService,\r\n private alertify: AlertifyService,\r\n public authService: AuthService,\r\n ) { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n saveInitialDemurrageCalculation() {\r\n this.demurrageModel.initialClaimRecievedDate = this.initialClaimRecievedDate;\r\n this.demurrageModel.totalUsedLayTime = 1.23;\r\n this.demurrageModel.totalExcessLayTime = 1.23;\r\n this.demurrageModel.revisedClaimValue = this.revisedClaimValue;\r\n this.demurrageModel.exportId = this.export.id;\r\n console.log(this.demurrageModel.exportId);\r\n\r\n this.exportService.createDemmurage(this.demurrageModel)\r\n .subscribe(\r\n (demurrageData: any) => {\r\n this.createdDemurrage = demurrageData;\r\n this.alertify.success('Demurrage Data Successfully Added');\r\n },\r\n error => {\r\n this.alertify.error('Error Creating Demurrage Data');\r\n }\r\n );\r\n }\r\n\r\n}\r\n","
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n","import { Component, OnInit, Input } from '@angular/core';\r\nimport { FileUploader } from 'ng2-file-upload';\r\nimport { ExportService } from '../../_services/export.service';\r\nimport { AlertifyService } from '../../_services/alertify.service';\r\nimport { AuthService } from '../../_services/auth.service';\r\nimport { environment } from '../../../environments/environment';\r\nimport { Export } from '../../_models/export';\r\n\r\n@Component({\r\n selector: 'app-demurrage-document-upload',\r\n templateUrl: './demurrage-document-upload.component.html',\r\n styleUrls: ['./demurrage-document-upload.component.css']\r\n})\r\nexport class DemurrageDocumentUploadComponent implements OnInit {\r\n\r\n @Input() export: any;\r\n // uploader: FileUploader = new FileUploader({ url: URL });\r\n uploader: FileUploader;\r\n hasBaseDropZoneOver = false;\r\n baseUrl = environment.apiUrl;\r\n id = 1 ;\r\n documentId = 6;\r\n userId = 1;\r\n\r\n constructor(\r\n private exportService: ExportService,\r\n private alertify: AlertifyService,\r\n public authService: AuthService,\r\n ) { }\r\n\r\n ngOnInit() {\r\n // this.loadDocumentCategory();\r\n this.initializeUploader();\r\n }\r\n fileOverBase(e: any): void {\r\n this.hasBaseDropZoneOver = e;\r\n }\r\n\r\n initializeUploader() {\r\n this.userId = this.authService.decodedToken.nameid;\r\n this.uploader = new FileUploader({\r\n url: this.baseUrl + 'document/' + this.export.id + '/upload/' + this.documentId + '/type/' + this.userId + '/user/',\r\n authToken: 'Bearer ' + localStorage.getItem('token'),\r\n isHTML5: true,\r\n allowedFileType: [\r\n 'pdf',\r\n 'image',\r\n 'csv',\r\n '.docx',\r\n '.doc',\r\n '.ppt',\r\n '.xls',\r\n '.xlsx',\r\n 'docx',\r\n 'doc',\r\n 'ppt',\r\n 'xls',\r\n 'xlsx'\r\n ],\r\n removeAfterUpload: true,\r\n autoUpload: false,\r\n maxFileSize: 10 * 1024 * 1024 // File Size\r\n });\r\n\r\n this.uploader.onAfterAddingFile = file => {\r\n file.withCredentials = false;\r\n };\r\n\r\n this.uploader.onCompleteItem = (item: any, response: any, status: any, header: any) => {\r\n this.alertify.success('File Upload Successful');\r\n };\r\n }\r\n\r\n}\r\n","\r\n
\r\n\r\n
\r\n\r\n
Add files
\r\n\r\n
\r\n \r\n Drop Documents Here\r\n
\r\n\r\n \r\n
\r\n\r\n
\r\n\r\n
Upload queue
\r\n

Queue length: {{ uploader?.queue?.length }}

\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
NameSize
\r\n {{ item?.file?.name }}\r\n {{ item?.file?.size/1024/1024 | number:'.2' }} MB
\r\n\r\n
\r\n
\r\n Queue progress:\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n\r\n
\r\n\r\n
\r\n","import { Component, OnInit, TemplateRef } from '@angular/core';\r\nimport { TypeaheadMatch } from \"ngx-bootstrap/typeahead/typeahead-match.class\";\r\nimport { ExportService } from '../../_services/export.service';\r\nimport { AlertifyService } from '../../_services/alertify.service';\r\nimport { Export } from '../../_models/export';\r\nimport { DemurrageCalculation } from '../../_models/demurragecalculation';\r\nimport { BsModalService, BsModalRef } from \"ngx-bootstrap/modal\";\r\nimport { Router } from \"@angular/router\";\r\nimport { FormGroup } from \"@angular/forms\";\r\nimport { AuthService } from '../../_services/auth.service';\r\nimport { Demurrage } from '../../_models/demurrage';\r\n\r\n\r\n\r\n\r\n@Component({\r\n selector: \"app-demurrage-home\",\r\n templateUrl: \"./demurrage-home.component.html\",\r\n styleUrls: [\"./demurrage-home.component.css\"]\r\n})\r\nexport class DemurrageHomeComponent implements OnInit {\r\n modalRef: BsModalRef;\r\n\r\n notificationOfArrivalTime: Date = new Date();\r\n notificationOfArrivalDate: Date;\r\n\r\n portAuthorityOnBoardTime: Date = new Date();\r\n portAuthorityOnBoardDate: Date;\r\n\r\n freePratigueOnBoardTime: Date = new Date();\r\n freePratiqueOnBoardDate: Date;\r\n\r\n pilotOnBoardTime: Date = new Date();\r\n pilotOnBoardDate: Date;\r\n\r\n completedMooringTime: Date = new Date();\r\n completedMooringDate: Date;\r\n\r\n completedDisconnectionOfHoseTime: Date = new Date();\r\n completedDisconnectionOfHoseDate: Date;\r\n\r\n laycanTime: Date = new Date();\r\n laycanDate: Date;\r\n\r\n cargoPaperDocStartTime: Date = new Date();\r\n cargoPaperDocStartDate: Date;\r\n\r\n cargoPaperDocEndTime: Date = new Date();\r\n cargoPaperDocEndDate: Date;\r\n\r\n totalVolumeLoaded: number;\r\n\r\n layTimeStartTime: Date = new Date();\r\n layTimeStartDate: Date;\r\n\r\n equipmentBreakDownStartTime: Date = new Date();\r\n equipmentBreakDownStartDate: Date;\r\n\r\n equipmentBreakDownEndsTime: Date = new Date();\r\n equipmentBreakDownEndsDate: Date;\r\n\r\n weatherDelayStartTime: Date = new Date();\r\n weatherDelayStartDate: Date;\r\n\r\n weatherDelayEndTime: Date = new Date();\r\n weatherDelayEndDate: Date;\r\n\r\n hasEquipmentBreakDown = false;\r\n hasWeatherDelay = false;\r\n\r\n selectedValue: string;\r\n selectedOption: any;\r\n vesselName: any;\r\n BOLDate: any;\r\n lifter: any;\r\n terminalName: any;\r\n vesselArrived: any;\r\n exportID = 1;\r\n lifterImage: any;\r\n\r\n afraValue: number;\r\n wsValue: number;\r\n shipRate: number;\r\n\r\n exports: Export[];\r\n export: any;\r\n\r\n model: any = {};\r\n\r\n calculationAvailable = false;\r\n\r\n returnedDemurrageModel: any = {};\r\n\r\n hasExporRecord = false;\r\n\r\n createdActivated = false;\r\n\r\n\r\n constructor(\r\n private modalService: BsModalService,\r\n private exportService: ExportService,\r\n private alertify: AlertifyService,\r\n private route: Router,\r\n private authService: AuthService\r\n ) {}\r\n\r\n ngOnInit() {\r\n this.loadExports();\r\n }\r\n\r\n toggelCreatedActivated() {\r\n this.createdActivated = !this.createdActivated;\r\n }\r\n toggelHasEquipmentFailure() {\r\n this.hasEquipmentBreakDown = !this.hasEquipmentBreakDown;\r\n }\r\n toggleHasWeatherDelays() {\r\n this.hasWeatherDelay = !this.hasWeatherDelay;\r\n }\r\n\r\n onNotificationOfArrivalValueChange(value: Date): void {\r\n this.notificationOfArrivalTime = value;\r\n }\r\n onPortAthourityOnBoardValueChange(value: Date): void {\r\n this.portAuthorityOnBoardTime = value;\r\n }\r\n onfreePratigueOnBoardValueChange(value: Date): void {\r\n this.freePratigueOnBoardTime = value;\r\n }\r\n onPilotOnBoardValueChange(value: Date): void {\r\n this.pilotOnBoardTime = value;\r\n }\r\n onCompletedMooringValueChange(value: Date): void {\r\n this.completedMooringTime = value;\r\n }\r\n onCompletedDisconnectionOfHoseValueChange(value: Date): void {\r\n this.completedDisconnectionOfHoseTime = value;\r\n }\r\n onLaycanValueChange(value: Date): void {\r\n this.laycanTime = value;\r\n }\r\n onLayTimeStartValueChange(value: Date): void {\r\n this.layTimeStartTime = value;\r\n }\r\n onEquipmentBreakDownStartValueChange(value: Date): void {\r\n this.equipmentBreakDownStartTime = value;\r\n }\r\n onEquipmentBreakEndValueChange(value: Date): void {\r\n this.equipmentBreakDownEndsTime = value;\r\n }\r\n onWeatherDelayStartValueChange(value: Date): void {\r\n this.weatherDelayStartTime = value;\r\n }\r\n onWeatherDelayEndValueChange(value: Date): void {\r\n this.weatherDelayEndTime = value;\r\n }\r\n\r\n onCargoPaperDocStartValueChange(value: Date): void {\r\n this.cargoPaperDocStartTime = value;\r\n }\r\n onCargoPaperDocEndValueChange(value: Date): void {\r\n this.cargoPaperDocEndTime = value;\r\n }\r\n\r\n onSelect(event: TypeaheadMatch): void {\r\n this.selectedOption = event.item;\r\n this.export = event.item;\r\n // console.log(this.selectedOption.lifters.terminals.name);\r\n this.exportID = this.selectedOption.id;\r\n this.vesselName = this.selectedOption.vessel.name;\r\n this.BOLDate = this.selectedOption.bolDate;\r\n this.lifter = this.selectedOption.lifters.name;\r\n this.terminalName = this.selectedOption.lifters.terminals.name;\r\n this.vesselArrived = this.selectedOption.eta;\r\n this.lifterImage = '../' + this.selectedOption.lifters.lifterPhotoUrl;\r\n\r\n this.hasExporRecord = true;\r\n }\r\n\r\n \r\n\r\n calculateDemurrage() {\r\n\r\n this.model.exportId = this.exportID;\r\n this.model.firstDayOfLaycan = this.laycanTime;\r\n this.model.totalVolumeLoaded = this.totalVolumeLoaded;\r\n this.model.notificationOfArrival = this.notificationOfArrivalTime;\r\n this.model.hoseConnected = this.layTimeStartTime;\r\n this.model.layTimeStart = this.layTimeStartTime;\r\n this.model.portAuthorityOnBoard = this.portAuthorityOnBoardTime;\r\n this.model.freePratiqueGranted = this.freePratigueOnBoardTime;\r\n this.model.pilotOnBoard = this.pilotOnBoardTime;\r\n this.model.completeDisconnectingHose = this.completedDisconnectionOfHoseTime;\r\n this.model.completedMooring = this.completedMooringTime;\r\n \r\n this.model.cargoPaperStart = this.cargoPaperDocStartTime ;\r\n this.model.cargoPaperCompleted = this.cargoPaperDocEndTime ;\r\n\r\n this.model.afraRate = this.afraValue;\r\n this.model.wsRate = this.wsValue;\r\n this.model.shipRate = this.shipRate;\r\n this.model.hasEquipmentBreakDown = this.hasEquipmentBreakDown;\r\n this.model.hasWeatherDelay = this.hasWeatherDelay;\r\n this.model.equipmentBreakDownStart = this.equipmentBreakDownStartTime;\r\n this.model.equipmentBreakDownEnds = this.equipmentBreakDownEndsTime;\r\n this.model.WeatherDelayStart = this.weatherDelayStartTime;\r\n this.model.WeatherDelayEnd = this.weatherDelayEndTime;\r\n\r\n // console.log(this.model);\r\n\r\n this.exportService.createDemmurageCulculation(this.model).subscribe(\r\n (demurrageData: any) => {\r\n this.returnedDemurrageModel = demurrageData;\r\n console.log(this.returnedDemurrageModel);\r\n this.alertify.success(\"Demurrage Instance Successfully Created\");\r\n this.calculationAvailable = true;\r\n },\r\n error => {\r\n this.alertify.error(\"Error Posting Demmurage\");\r\n }\r\n );\r\n }\r\n\r\n loadExports() {\r\n this.exportService.getAllExports().subscribe(\r\n (exports: Export[]) => {\r\n this.exports = exports;\r\n },\r\n error => {\r\n this.alertify.error(error);\r\n }\r\n );\r\n }\r\n}\r\n","
\r\n
    \r\n
  1. \r\n Demurrage Home\r\n
  2. \r\n
\r\n \r\n
Demurrage Claim List
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n View Cargo Page\r\n
\r\n
\r\n \"\"\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
{{vesselName | uppercase}}
\r\n
\r\n
\r\n \r\n
{{BOLDate | date}}
\r\n
\r\n
\r\n \r\n
{{lifter | uppercase}}
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
{{terminalName | uppercase}}
\r\n
\r\n
\r\n \r\n
{{laycanTime | date:'medium'}}
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { BsModalService } from 'ngx-bootstrap/modal';\r\nimport { ExportService } from '../../_services/export.service';\r\nimport { AlertifyService } from '../../_services/alertify.service';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { AuthService } from '../../_services/auth.service';\r\nimport { DemurrageCalculation } from '../../_models/demurragecalculation';\r\nimport { Export } from '../../_models/export';\r\n\r\n@Component({\r\n selector: \"app-demurrage-list-detail\",\r\n templateUrl: \"./demurrage-list-detail.component.html\",\r\n styleUrls: [\"./demurrage-list-detail.component.css\"]\r\n})\r\nexport class DemurrageListDetailComponent implements OnInit {\r\n demurrageCalculationsArray: DemurrageCalculation[];\r\n exportId: number;\r\n detailPanelOpen = false;\r\n\r\n notificationOfArrivalTime: Date = new Date();\r\n notificationOfArrivalDate: Date;\r\n\r\n portAuthorityOnBoardTime: Date = new Date();\r\n portAuthorityOnBoardDate: Date;\r\n\r\n freePratigueOnBoardTime: Date = new Date();\r\n freePratiqueOnBoardDate: Date;\r\n\r\n pilotOnBoardTime: Date = new Date();\r\n pilotOnBoardDate: Date;\r\n\r\n completedMooringTime: Date = new Date();\r\n completedMooringDate: Date;\r\n\r\n completedDisconnectionOfHoseTime: Date = new Date();\r\n completedDisconnectionOfHoseDate: Date;\r\n\r\n laycanTime: Date = new Date();\r\n laycanDate: Date;\r\n\r\n cargoPaperDocStartTime: Date = new Date();\r\n cargoPaperDocStartDate: Date;\r\n\r\n cargoPaperDocEndTime: Date = new Date();\r\n cargoPaperDocEndDate: Date;\r\n\r\n totalVolumeLoaded: number;\r\n\r\n layTimeStartTime: Date = new Date();\r\n layTimeStartDate: Date;\r\n\r\n equipmentBreakDownStartTime: Date = new Date();\r\n equipmentBreakDownStartDate: Date;\r\n\r\n equipmentBreakDownEndsTime: Date = new Date();\r\n equipmentBreakDownEndsDate: Date;\r\n\r\n weatherDelayStartTime: Date = new Date();\r\n weatherDelayStartDate: Date;\r\n\r\n weatherDelayEndTime: Date = new Date();\r\n weatherDelayEndDate: Date;\r\n\r\n hasEquipmentBreakDown = false;\r\n hasWeatherDelay = false;\r\n\r\n selectedValue: string;\r\n selectedOption: any;\r\n vesselName: any;\r\n BOLDate: any;\r\n lifter: any;\r\n terminalName: any;\r\n vesselArrived: any;\r\n exportID = 1;\r\n selectedObjectId = 0;\r\n lifterImage: any;\r\n\r\n afraValue: number;\r\n wsValue: number;\r\n shipRate: number;\r\n\r\n exports: Export[];\r\n export: any;\r\n\r\n model: any = {};\r\n\r\n calculationAvailable = false;\r\n\r\n returnedDemurrageModel: any = {};\r\n\r\n hasExporRecord = false;\r\n\r\n createdActivated = false;\r\n\r\n enableLoader = true;\r\n\r\n constructor(\r\n private modalService: BsModalService,\r\n private exportService: ExportService,\r\n private alertify: AlertifyService,\r\n private route: Router,\r\n private authService: AuthService,\r\n private nav: ActivatedRoute\r\n ) {}\r\n\r\n ngOnInit() {\r\n this.exportId = this.nav.params[\"value\"].exportId;\r\n this.loadDemurrageCalculations();\r\n }\r\n\r\n loadDemurrageCalculations() {\r\n this.exportService\r\n .getDemurrageCalculationsForExport(this.exportId)\r\n .subscribe(\r\n (demurrageCalcs: DemurrageCalculation[]) => {\r\n this.demurrageCalculationsArray = demurrageCalcs;\r\n this.enableLoader = false;\r\n },\r\n error => {\r\n this.alertify.error(error);\r\n }\r\n );\r\n }\r\n //:DemurrageCalculation\r\n openDetailToggle(selectedObject) {\r\n this.detailPanelOpen = !this.detailPanelOpen;\r\n\r\n this.selectedObjectId = selectedObject.id;\r\n\r\n this.exportID = this.exportId;\r\n this.afraValue = selectedObject.afraRate;\r\n this.wsValue = selectedObject.wsRate;\r\n this.shipRate = selectedObject.shipRate;\r\n this.laycanDate = selectedObject.firstDayOfLaycan;\r\n this.laycanTime = selectedObject.firstDayOfLaycan;\r\n this.totalVolumeLoaded = selectedObject.totalVolumeLoaded;\r\n\r\n this.cargoPaperDocStartDate = selectedObject.cargoPaperStart;\r\n this.cargoPaperDocStartTime = selectedObject.cargoPaperStart;\r\n this.cargoPaperDocEndDate = selectedObject.cargoPaperCompleted;\r\n this.cargoPaperDocEndTime = selectedObject.cargoPaperCompleted;\r\n \r\n this.layTimeStartDate = selectedObject.layTimeStart;\r\n this.layTimeStartTime = selectedObject.layTimeStart;\r\n this.notificationOfArrivalTime = selectedObject.notificationOfArrival;\r\n this.notificationOfArrivalDate = selectedObject.notificationOfArrival;\r\n this.portAuthorityOnBoardDate = selectedObject.portAuthorityOnBoard;\r\n this.portAuthorityOnBoardTime = selectedObject.portAuthorityOnBoard;\r\n this.freePratiqueOnBoardDate = selectedObject.freePratiqueGranted;\r\n this.freePratigueOnBoardTime = selectedObject.freePratiqueGranted;\r\n this.pilotOnBoardDate = selectedObject.pilotOnBoard;\r\n this.pilotOnBoardTime = selectedObject.pilotOnBoard;\r\n this.completedMooringDate = selectedObject.completedMooring;\r\n this.completedMooringTime = selectedObject.completedMooring;\r\n this.completedDisconnectionOfHoseDate = selectedObject.completeDisconnectingHose;\r\n this.completedDisconnectionOfHoseTime = selectedObject.completeDisconnectingHose;\r\n this.equipmentBreakDownStartDate = selectedObject.equipmentBreakDownStart;\r\n this.equipmentBreakDownStartTime = selectedObject.equipmentBreakDownStart;\r\n this.equipmentBreakDownEndsDate = selectedObject.equipmentBreakDownEnds;\r\n this.equipmentBreakDownEndsTime = selectedObject.equipmentBreakDownEnds;\r\n this.weatherDelayStartDate = selectedObject.weatherDelayStart;\r\n this.weatherDelayStartTime = selectedObject.weatherDelayStart;\r\n this.weatherDelayEndDate = selectedObject.weatherDelayEnd;\r\n this.weatherDelayEndTime = selectedObject.weatherDelayEnd;\r\n\r\n this.hasEquipmentBreakDown = selectedObject.hasEquipmentBreakDown;\r\n this.hasWeatherDelay = selectedObject.hasWeatherDelay;\r\n\r\n this.export = selectedObject.export;\r\n // console.log(selectedObject);\r\n this.calculationAvailable = false;\r\n }\r\n\r\n toggelCreatedActivated() {\r\n this.createdActivated = !this.createdActivated;\r\n }\r\n toggelHasEquipmentFailure() {\r\n this.hasEquipmentBreakDown = !this.hasEquipmentBreakDown;\r\n }\r\n toggleHasWeatherDelays() {\r\n this.hasWeatherDelay = !this.hasWeatherDelay;\r\n }\r\n\r\n onNotificationOfArrivalValueChange(value: Date): void {\r\n this.notificationOfArrivalTime = value;\r\n }\r\n onPortAthourityOnBoardValueChange(value: Date): void {\r\n this.portAuthorityOnBoardTime = value;\r\n }\r\n onfreePratigueOnBoardValueChange(value: Date): void {\r\n this.freePratigueOnBoardTime = value;\r\n }\r\n onPilotOnBoardValueChange(value: Date): void {\r\n this.pilotOnBoardTime = value;\r\n }\r\n onCompletedMooringValueChange(value: Date): void {\r\n this.completedMooringTime = value;\r\n }\r\n onCompletedDisconnectionOfHoseValueChange(value: Date): void {\r\n this.completedDisconnectionOfHoseTime = value;\r\n }\r\n onLaycanValueChange(value: Date): void {\r\n this.laycanTime = value;\r\n }\r\n onLayTimeStartValueChange(value: Date): void {\r\n this.layTimeStartTime = value;\r\n }\r\n onEquipmentBreakDownStartValueChange(value: Date): void {\r\n this.equipmentBreakDownStartTime = value;\r\n }\r\n onEquipmentBreakEndValueChange(value: Date): void {\r\n this.equipmentBreakDownEndsTime = value;\r\n }\r\n onWeatherDelayStartValueChange(value: Date): void {\r\n this.weatherDelayStartTime = value;\r\n }\r\n onWeatherDelayEndValueChange(value: Date): void {\r\n this.weatherDelayEndTime = value;\r\n }\r\n onCargoPaperDocStartValueChange(value: Date): void {\r\n this.cargoPaperDocStartTime = value;\r\n }\r\n onCargoPaperDocEndValueChange(value: Date): void {\r\n this.cargoPaperDocEndTime = value;\r\n }\r\n\r\n calculateDemurrage() {\r\n this.model.id = this.selectedObjectId;\r\n\r\n this.model.exportId = this.exportID;\r\n this.model.firstDayOfLaycan = this.laycanTime;\r\n\r\n this.model.totalVolumeLoaded = this.totalVolumeLoaded;\r\n this.model.notificationOfArrival = this.notificationOfArrivalTime;\r\n this.model.hoseConnected = this.layTimeStartTime;\r\n this.model.layTimeStart = this.layTimeStartTime;\r\n this.model.portAuthorityOnBoard = this.portAuthorityOnBoardTime;\r\n this.model.freePratiqueGranted = this.freePratigueOnBoardTime;\r\n this.model.pilotOnBoard = this.pilotOnBoardTime;\r\n this.model.completeDisconnectingHose = this.completedDisconnectionOfHoseTime;\r\n this.model.completedMooring = this.completedMooringTime;\r\n \r\n this.model.cargoPaperStart = this.cargoPaperDocStartTime ;\r\n this.model.cargoPaperCompleted = this.cargoPaperDocEndTime ;\r\n\r\n this.model.afraRate = this.afraValue;\r\n this.model.wsRate = this.wsValue;\r\n this.model.shipRate = this.shipRate;\r\n this.model.hasEquipmentBreakDown = this.hasEquipmentBreakDown;\r\n this.model.hasWeatherDelay = this.hasWeatherDelay;\r\n this.model.equipmentBreakDownStart = this.equipmentBreakDownStartTime;\r\n this.model.equipmentBreakDownEnds = this.equipmentBreakDownEndsTime;\r\n this.model.WeatherDelayStart = this.weatherDelayStartTime;\r\n this.model.WeatherDelayEnd = this.weatherDelayEndTime;\r\n\r\n // console.log(this.model);\r\n this.enableLoader = true;\r\n this.exportService.createDemmurageCulculation(this.model).subscribe(\r\n (demurrageData: any) => {\r\n this.returnedDemurrageModel = demurrageData;\r\n this.alertify.success('Demurrage Instance Successfully Created');\r\n this.calculationAvailable = true;\r\n this.enableLoader = false;\r\n this.loadDemurrageCalculations();\r\n },\r\n error => {\r\n this.alertify.error('Error Posting Demmurage');\r\n }\r\n );\r\n }\r\n}\r\n","
\r\n
    \r\n
  1. \r\n Demurrage Calculation List\r\n
  2. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
#Cargo # | VesselLaycanG-DemN-DemDeductionValueWSAction
{{i + 1}}\r\n {{demurrageCalculation?.export.cargoNumber}} | {{demurrageCalculation.export.vessel.name | uppercase}}{{demurrageCalculation.firstDayOfLaycan | date}}{{demurrageCalculation.grossDemurrage}}{{demurrageCalculation?.netDemurrage}}{{demurrageCalculation.deductions}}{{demurrageCalculation?.totalDemurrageAmount | currency}}{{demurrageCalculation.wsRate | currency}}\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n\r\n\r\n","import { Component, OnInit, Input } from '@angular/core';\r\nimport { DemurrageCalculation } from '../../_models/demurragecalculation';\r\nimport { Export } from '../../_models/export';\r\nimport * as jspdf from 'jspdf';\r\nimport html2canvas from 'html2canvas';\r\n\r\n@Component({\r\n selector: \"app-demurrage-worksheet-modal\",\r\n templateUrl: \"./demurrage-worksheet-modal.component.html\",\r\n styleUrls: [\"./demurrage-worksheet-modal.component.css\"]\r\n})\r\nexport class DemurrageWorksheetModalComponent implements OnInit {\r\n @Input() returnedDemurrageModel: any;\r\n @Input() export: Export ;\r\n\r\n demurrageObject: DemurrageCalculation;\r\n exportObject: Export;\r\n \r\n constructor() {}\r\n\r\n ngOnInit() {\r\n this.demurrageObject = this.returnedDemurrageModel.result;\r\n this.exportObject = this.returnedDemurrageModel.result.export;\r\n console.log(this.demurrageObject);\r\n // console.log(this.export);\r\n }\r\n\r\n public captureScreen() {\r\n const data = document.getElementById('contentToConvert');\r\n html2canvas(data).then(canvas => {\r\n // Few necessary setting options\r\n const imgWidth = 208;\r\n const pageHeight = 295;\r\n const imgHeight = canvas.height * imgWidth / canvas.width;\r\n const heightLeft = imgHeight;\r\n\r\n const contentDataURL = canvas.toDataURL('image/png')\r\n const pdf = new jspdf('p', 'mm', 'a4'); // A4 size page of PDF\r\n const position = 0;\r\n pdf.addImage(contentDataURL, 'PNG', 0, position, imgWidth, imgHeight);\r\n pdf.save('MYPdf.pdf'); // Generated PDF\r\n });\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n \r\n

{{exportObject?.terminals.name}} TERMINAL

\r\n
\r\n
\r\n
LAYTIME AND DEMURRAGE CALCULATION WORK SHEET
\r\n
\r\n
\r\n

{{ export?.cargoNumber }} - {{ export?.lifters.label }}

\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \"Card\r\n
\r\n
{{export?.vessel['name'] | uppercase}} | {{export?.bolDate | date}}
\r\n
\r\n
    \r\n
  • SDWT (MT) : {{export?.vessel['dwt'] | uppercase}}
  • \r\n
  • BOL NET : {{export.actualCargo | number}}
  • \r\n
  • LAYCAN: {{export?.dateRangeStart | date:' d MMM'}} - {{export?.dateRangeEnd | date:'d MMM, y'}}
  • \r\n
  • Allowed Laytime : {{ \"1.12:00:00\" | timespanToHours}}
  • \r\n
  • WS : {{demurrageObject.wsRate | currency}}
  • \r\n
  • AFRA : {{demurrageObject.afraRate | currency}}
  • \r\n
  • Contract Rate : {{demurrageObject.shipRate | currency}}
  • \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
LAYTIME TIME CALCULATION
\r\n
\r\n
\r\n
\r\n Vessel Arrived\r\n
\r\n
\r\n {{export.eta | date:'medium'}}\r\n
\r\n
\r\n
\r\n
\r\n Notification of Arrival Tendered (NOR)\r\n
\r\n
\r\n {{ demurrageObject.notificationOfArrival | date:'medium'}}\r\n
\r\n
\r\n \r\n
\r\n
\r\n Laytime Begins\r\n
\r\n
\r\n {{demurrageObject.layTimeStart | date:'medium'}}\r\n
\r\n
\r\n
\r\n
\r\n Laytime Ends\r\n
\r\n
\r\n {{ demurrageObject.completeDisconnectingHose | date:'medium'}}\r\n
\r\n
\r\n
\r\n
\r\n Total Lay Time Used\r\n
\r\n
\r\n {{demurrageObject.totalLaytimeUsed | timespanToHours}}\r\n
\r\n
\r\n
\r\n
DEDUCTIONS FROM LAYTIME
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n From\r\n
\r\n
\r\n To\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n Pilot On Board - Completed Mooring\r\n
\r\n
\r\n {{ demurrageObject.pilotOnBoard | date:'medium'}}\r\n
\r\n
\r\n {{demurrageObject.completedMooring | date:'medium'}}\r\n
\r\n
\r\n {{demurrageObject.pilotOnBoardNetCompletedMooring | timespanToHours}}\r\n
\r\n
\r\n
\r\n
\r\n Cargo Paper Start - Cargo Paper Completed\r\n
\r\n
\r\n {{ demurrageObject.cargoPaperStart | date:'medium'}}\r\n
\r\n
\r\n {{demurrageObject.cargoPaperCompleted | date:'medium'}}\r\n
\r\n
\r\n {{demurrageObject.cargoPaperDocumentation | timespanToHours}}\r\n
\r\n
\r\n
\r\n
\r\n Awaiting Weather\r\n
\r\n
\r\n {{demurrageObject.weatherDelayStart | date:'medium'}}\r\n
\r\n
\r\n {{demurrageObject.weatherDelayEnd | date:'medium'}}\r\n
\r\n
\r\n {{demurrageObject.weatherRelatedDeduction | timespanToHours}}\r\n
\r\n
\r\n \r\n
\r\n
\r\n Equipment Break Down (50%)\r\n
\r\n
\r\n {{demurrageObject.equipmentBreakDownStart | date:'medium'}}\r\n
\r\n
\r\n {{demurrageObject.equipmentBreakDownEnds | date:'medium'}}\r\n
\r\n
\r\n {{demurrageObject.equipmentBreakDownDeduction | timespanToHours}}\r\n
\r\n
\r\n
\r\n
\r\n Ports Authorities on Board - Free Pratique Granted\r\n
\r\n
\r\n {{demurrageObject.portAuthorityOnBoard | date:'medium'}}\r\n
\r\n
\r\n {{demurrageObject.freePratiqueGranted | date:'medium'}}\r\n
\r\n
\r\n {{demurrageObject.portAuthorityOnBoardLessFreePratiqueGranted | timespanToHours}}\r\n
\r\n
\r\n
\r\n
\r\n Total Deductions From Laytime : \r\n
\r\n
\r\n {{demurrageObject.deductions | timespanToHours}}\r\n
\r\n
\r\n
\r\n
SUMMARY
\r\n
\r\n
\r\n
\r\n Used Laytime\r\n
\r\n
\r\n {{demurrageObject.totalLaytimeUsed | timespanToHours}}\r\n
\r\n
\r\n
\r\n
\r\n Laytime Allowed\r\n
\r\n
\r\n {{ \"1.12:00:00\" | timespanToHours}}\r\n
\r\n
\r\n
\r\n
\r\n Total Excess Laytime Used : \r\n
\r\n
\r\n {{demurrageObject.netDemurrage | timespanToHours}}\r\n
\r\n
\r\n
\r\n
\r\n Demurrage [Contract Rate*Excess Used Laytime (days)]:\r\n
\r\n
\r\n {{demurrageObject.totalDemurrageAmount | currency}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n","import { Component, OnInit, TemplateRef } from '@angular/core';\r\nimport { BsModalService, BsModalRef } from 'ngx-bootstrap/modal';\r\nimport { ExportService } from '../../_services/export.service';\r\nimport { AlertifyService } from '../../_services/alertify.service';\r\nimport { Router } from '@angular/router';\r\nimport { AuthService } from '../../_services/auth.service';\r\nimport { Demurrage } from '../../_models/demurrage';\r\nimport { DemurrageStatus } from '../../_models/demurragestatus';\r\nimport { Terminal } from 'src/app/_models/terminal';\r\nimport { Product } from 'src/app/_models/product';\r\nimport { Lifter } from 'src/app/_models/lifter';\r\nimport { CargoType } from 'src/app/_models/cargotype';\r\nimport { Vessel } from 'src/app/_models/Vessel';\r\nimport { PaginatedResult, Pagination } from 'src/app/_models/pagination';\r\n\r\n@Component({\r\n selector: \"app-open-demurrage-list\",\r\n templateUrl: \"./open-demurrage-list.component.html\",\r\n styleUrls: [\"./open-demurrage-list.component.css\"]\r\n})\r\nexport class OpenDemurrageListComponent implements OnInit {\r\n openDemurrages: any[];\r\n filteredOpenDemurrages: any[];\r\n today = Date.now();\r\n modalRef: BsModalRef;\r\n demurrageStatus: any[];\r\n selectedStatusId: any;\r\n selectedDemurrage: any = {};\r\n statusId = 1;\r\n model: any;\r\n\r\n terminals: Terminal[];\r\n products: Product[];\r\n lifters: Lifter[];\r\n cargotypes: CargoType[];\r\n vesselNames: any[];\r\n dateRange: any;\r\n enableLoader = true;\r\n\r\n demurrageToUpdate: number;\r\n\r\n // Filter \r\n filterModel: {\r\n statusId: number;\r\n productName: string;\r\n lifterName: string;\r\n terminalName: string;\r\n vesselName: string\r\n } = {\r\n vesselName: '',\r\n terminalName: '',\r\n lifterName: '',\r\n productName: '',\r\n statusId: 0\r\n\r\n };\r\n\r\n constructor(\r\n private modalService: BsModalService,\r\n private exportService: ExportService,\r\n private alertify: AlertifyService,\r\n private route: Router,\r\n private authService: AuthService\r\n ) { }\r\n\r\n ngOnInit() {\r\n this.pageNumber = 1;\r\n this.pageSize = 10;\r\n this.loadOpenDemurrageClaims(this.pageNumber, this.pageSize);\r\n this.loadOpenDemurrageStatus();\r\n this.loadVessels();\r\n this.loadTerminals();\r\n this.loadLifters();\r\n this.loadProducts();\r\n }\r\n\r\n\r\n loadOpenDemurrageClaims(pn: any, ps: any) {\r\n this.exportService.getDemurrages(pn, ps).subscribe(\r\n (demurrages: PaginatedResult) => {\r\n this.openDemurrages = demurrages.result;\r\n this.filteredOpenDemurrages = this.openDemurrages;\r\n this.pagination = demurrages.pagination;\r\n this.enableLoader = false;\r\n },\r\n (error) => {\r\n this.alertify.error(\"Something went wrong loading demurrage claims\");\r\n this.enableLoader = false;\r\n }\r\n );\r\n }\r\n\r\n loadOpenDemurrageStatus() {\r\n this.exportService.getDemurrageStatus().subscribe(\r\n (demurrageStatus: DemurrageStatus[]) => {\r\n this.demurrageStatus = demurrageStatus;\r\n },\r\n error => {\r\n this.alertify.error(error);\r\n }\r\n );\r\n }\r\n\r\n openModal(template: TemplateRef, e: number) {\r\n this.demurrageToUpdate = e;\r\n this.modalRef = this.modalService.show(template);\r\n }\r\n updateDemurrageStatus() {\r\n this.exportService\r\n .updateDemurrageStatus(this.demurrageToUpdate, this.statusId, this.model)\r\n .subscribe(\r\n () => {\r\n this.alertify.success('Demurrage Status Updated');\r\n this.modalRef.hide();\r\n this.ngOnInit();\r\n },\r\n error => {\r\n this.alertify.error(error);\r\n }\r\n );\r\n }\r\n updateActivityStatus() {\r\n\r\n }\r\n\r\n loadVessels() {\r\n this.exportService.getVessels().subscribe(\r\n (vessels: Vessel[]) => {\r\n this.vesselNames = vessels;\r\n },\r\n error => {\r\n this.alertify.error(error);\r\n }\r\n );\r\n }\r\n onSelect() {\r\n }\r\n loadCargoTypes() {\r\n this.exportService.getCargoTypes().subscribe(\r\n (cargotypes: CargoType[]) => {\r\n this.cargotypes = cargotypes;\r\n },\r\n error => {\r\n this.alertify.error(error);\r\n }\r\n );\r\n }\r\n loadTerminals() {\r\n this.exportService.getTerminals().subscribe(\r\n (terminals: Terminal[]) => {\r\n this.terminals = terminals;\r\n },\r\n error => {\r\n this.alertify.error(error);\r\n }\r\n );\r\n }\r\n loadProducts() {\r\n this.exportService.getProducts().subscribe(\r\n (products: Product[]) => {\r\n this.products = products;\r\n },\r\n error => {\r\n this.alertify.error(error);\r\n }\r\n );\r\n }\r\n loadLifters() {\r\n this.exportService.getLifters().subscribe(\r\n (lifters: Lifter[]) => {\r\n this.lifters = lifters;\r\n },\r\n error => {\r\n this.alertify.error(error);\r\n }\r\n );\r\n }\r\n runQuery() { \r\n this.reloadOpenDemurragesClaims();\r\n }\r\n\r\n clearFilters() {\r\n\r\n this.filterModel.terminalName = null;\r\n this.filterModel.productName = null;\r\n this.filterModel.lifterName = null;\r\n this.filterModel.vesselName = null;\r\n this.filterModel.statusId = null;\r\n this.loadOpenDemurrageClaims(this.pageNumber, this.pageSize);\r\n }\r\n\r\n //Pagination Variables\r\n pagination: Pagination;\r\n pageNumber: number;\r\n pageSize: number;\r\n pageChanged(event: any): void {\r\n this.pagination.currentPage = event.page;\r\n this.reloadOpenDemurragesClaims();\r\n }\r\n\r\n reloadOpenDemurragesClaims() {\r\n this.exportService.getDemurrages(\r\n this.pagination.currentPage,\r\n this.pagination.itemsPerPage,\r\n this.filterModel.vesselName,\r\n this.filterModel.terminalName,\r\n this.filterModel.lifterName,\r\n this.filterModel.productName,\r\n this.filterModel.statusId\r\n ).subscribe(\r\n (demurrages: PaginatedResult) => {\r\n this.openDemurrages = demurrages.result;\r\n this.filteredOpenDemurrages = this.openDemurrages;\r\n this.pagination = demurrages.pagination;\r\n this.enableLoader = false;\r\n },\r\n (error) => {\r\n this.alertify.error(\"Something went wrong loading demurrage open claims\");\r\n this.enableLoader = false;\r\n }\r\n );\r\n }\r\n\r\n isDisabledClearFilter() {\r\n if ((this.filterModel.lifterName != null && this.filterModel.lifterName != \"\")\r\n || (this.filterModel.productName != null && this.filterModel.productName != \"\")\r\n || (this.filterModel.terminalName != null && this.filterModel.terminalName != \"\")\r\n || (this.filterModel.vesselName != null && this.filterModel.vesselName != \"\")\r\n || (this.filterModel.statusId != null && this.filterModel.statusId != 0)) {\r\n return false;\r\n }\r\n return true;\r\n }\r\n\r\n}\r\n","
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
#Cargo IDClaim RecievedTerminalLifterOpenStatusAction
{{i + 1}}{{demurrage.export?.cargoNumber}}\r\n {{demurrage.export?.vessel?.name | uppercase}}{{demurrage?.revisedClaimValue | currency}}{{demurrage.export?.terminals?.name | uppercase}}{{demurrage.export?.lifters?.name | uppercase}}{{demurrage?.initialClaimRecievedDate | timeAgo}}\r\n \r\n {{demurrage.demurrageStatus.name}}\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n

Update Demurrage Status

\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
","import { Component, OnInit } from '@angular/core';\r\nimport { Demurrage } from '../_models/demurrage';\r\nimport { BsModalService } from 'ngx-bootstrap/modal';\r\nimport { ExportService } from '../_services/export.service';\r\nimport { AlertifyService } from '../_services/alertify.service';\r\nimport { Router } from '@angular/router';\r\nimport { AuthService } from '../_services/auth.service';\r\nimport { DocumentTemplate } from '../_models/documenttemplate';\r\nimport { DocumentCategory } from '../_models/documentcategory';\r\n\r\n@Component({\r\n selector: 'app-document-home',\r\n templateUrl: './document-home.component.html',\r\n styleUrls: ['./document-home.component.css']\r\n})\r\nexport class DocumentHomeComponent implements OnInit {\r\n isCollapsed = false;\r\n documentTemplate: DocumentTemplate[];\r\n\r\n\r\n constructor(\r\n private modalService: BsModalService,\r\n private exportService: ExportService,\r\n private alertify: AlertifyService,\r\n private route: Router,\r\n private authService: AuthService\r\n ) { }\r\n\r\n ngOnInit() {\r\n this.loadDocumentTemplate();\r\n }\r\n loadDocumentTemplate(){\r\n this.exportService.getDocumentTemplate().subscribe(\r\n (documentTemplates: DocumentTemplate[]) => {\r\n this.documentTemplate = documentTemplates;\r\n console.log(\"DOC\",this.documentTemplate);\r\n },\r\n error => {\r\n this.alertify.error('Unable to Retrieve Document Categories')\r\n }\r\n );\r\n }\r\n\r\n\r\n\r\n}\r\n","
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
NameTerminalDocument CategoryCategoryAdded ByAction
\r\n \r\n\r\n {{template.terminals?.name}}{{template.documentTemplateCategory.name}}{{template.updatedAt | timeAgo}}{{template.users.username | uppercase}}\r\n
\r\n \r\n \r\n
\r\n
\r\n
","import { Component, OnInit } from '@angular/core';\r\nimport { Terminal } from 'src/app/_models/terminal';\r\nimport { ExportService } from 'src/app/_services/export.service';\r\nimport { AlertifyService } from 'src/app/_services/alertify.service';\r\nimport { TypeaheadMatch } from 'ngx-bootstrap/typeahead/typeahead-match.class';\r\nimport { DocumentCategory } from 'src/app/_models/documentcategory';\r\nimport { Export } from 'src/app/_models/export';\r\nimport { Lifter } from 'src/app/_models/lifter';\r\nimport { Pagination, PaginatedResult } from 'src/app/_models/pagination';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport { DocumentService } from 'src/app/_services/document.service';\r\nimport { DateService } from 'src/app/_services/date.service';\r\nimport {saveAs} from 'file-saver';\r\n\r\n@Component({\r\n selector: 'app-document-list',\r\n templateUrl: './document-list.component.html',\r\n styleUrls: ['./document-list.component.css']\r\n})\r\nexport class DocumentListComponent implements OnInit {\r\n\r\n terminalName: string;\r\n documentCategoryName: string;\r\n cargoNumber: string;\r\n lifterName: string;\r\n userName: string;\r\n dateRange: Date;\r\n\r\n exportArray: Export[];\r\n terminalArray: Terminal[];\r\n documentCategoryNameArray: DocumentCategory[];\r\n lifterArray: Lifter[];\r\n documentArray: any;\r\n\r\n documentParams: any = {};\r\n pagination: Pagination;\r\n\r\n enableLoader = true;\r\n documentCategoryname: any;\r\n\r\n dateStart: any;\r\n dateEnd: any;\r\n dateStartToSend: any;\r\n dateEndToSend: any;\r\n\r\n constructor(private exportService: ExportService, private alertify: AlertifyService\r\n , private route: ActivatedRoute, private documentService: DocumentService\r\n , private dateService: DateService) { }\r\n\r\n ngOnInit() {\r\n this.route.data.subscribe(\r\n data => {\r\n this.documentArray = data['documents'].result;\r\n this.pagination = data['documents'].pagination;\r\n this.enableLoader = false;\r\n }\r\n );\r\n this.loadTerminals();\r\n this.loadDocumentCategories();\r\n this.loadExports();\r\n this.loadLifters();\r\n\r\n }\r\n loadDocuments() {\r\n this.documentService.getAllExportDocuments(this.pagination.currentPage, this.pagination.itemsPerPage\r\n , this.terminalName, this.documentCategoryName, this.cargoNumber, this.lifterName, this.dateStartToSend\r\n , this.dateEndToSend)\r\n .subscribe(\r\n (res: PaginatedResult) => {\r\n this.documentArray = res.result;\r\n this.pagination = res.pagination;\r\n this.enableLoader = false;\r\n }, error => {\r\n this.alertify.error('Unable to Load Documents');\r\n }\r\n );\r\n }\r\n loadTerminals() {\r\n this.exportService.getTerminals().subscribe(\r\n (terminals: Terminal[]) => {\r\n this.terminalArray = terminals;\r\n }, error => {\r\n console.log('Error Occured');\r\n }\r\n );\r\n }\r\n loadDocumentCategories() {\r\n this.exportService.getDocumentCategoryList().subscribe(\r\n (documentCategories: DocumentCategory[]) => {\r\n this.documentCategoryNameArray = documentCategories;\r\n }, error => {\r\n console.log('Error Occured');\r\n }\r\n );\r\n }\r\n loadExports() {\r\n this.exportService.getInQueueExports().subscribe(\r\n (exports: Export[]) => {\r\n this.exportArray = exports;\r\n }, error => {\r\n this.alertify.error('Unable to Load Export');\r\n }\r\n );\r\n }\r\n\r\n loadLifters() {\r\n this.exportService.getLifters().subscribe(\r\n (lifters: Lifter[]) => {\r\n this.lifterArray = lifters;\r\n }, error => {\r\n console.log('Error Occured');\r\n }\r\n );\r\n }\r\n\r\n onSelectTerminal(event: TypeaheadMatch): void {\r\n this.terminalName = event.item.name;\r\n }\r\n onSelectDocumentCategory(event: TypeaheadMatch): void {\r\n this.documentCategoryName = event.item.name;\r\n }\r\n onSelectCargoNumber(event: TypeaheadMatch): void {\r\n this.cargoNumber = event.item.cargoNumber;\r\n }\r\n onSelectLifterName(event: TypeaheadMatch): void {\r\n this.lifterName = event.item.name;\r\n }\r\n pageChanged(event: any): void {\r\n this.pagination.currentPage = event.page;\r\n this.loadDocuments();\r\n }\r\n onDateStartChange(value: Date): void {\r\n this.dateStartToSend = this.dateService.urlDate(value);\r\n const today = new Date(Date.now());\r\n this.dateEndToSend = this.dateService.urlDate(today);\r\n }\r\n onDateEndChange(value: Date): void {\r\n this.dateEndToSend = this.dateService.urlDate(value);\r\n }\r\n downloadDocument(e: number, fileName: string) {\r\n this.documentService.download(e).subscribe(\r\n data => {\r\n // console.log(fileName);\r\n // console.log(data);\r\n // const FileSaver = require('file-saver');\r\n // FileSaver.saveAs(data, fileName);\r\n saveAs(data, fileName);\r\n this.alertify.success('Download Successful');\r\n },\r\n error => {\r\n this.alertify.error('Unable to Download Document');\r\n }\r\n );\r\n }\r\n downloadAll(documentArrayList: any[]) {\r\n for (let index = 0; index < documentArrayList.length; index++) {\r\n this.downloadDocument(documentArrayList[index].id, documentArrayList[index].fileName);\r\n }\r\n }\r\n resetFilter() {\r\n this.terminalName = null ;\r\n this.documentCategoryName = null ;\r\n this.cargoNumber = null ;\r\n this.lifterName = null ;\r\n this.dateStartToSend = null ;\r\n this.dateEndToSend = null ;\r\n this.loadDocuments();\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
#TerminalCargo # | Vessel | BOL DateDcoument TypeUser\r\n
\r\n \r\n \r\n
\r\n
{{i + 1}}{{document.terminals.name}} | {{document.exports.lifters.name}}{{document.exports.cargoNumber}} | {{document.exports.vessel.name}} | {{document.exports.bolDate | date}}{{document.documentCategory.name}}{{document.users.username}}Added : {{document.dateCreated | timeAgo}}\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
","import { Component, OnInit, Input } from '@angular/core';\r\nimport { environment } from '../../environments/environment';\r\nimport { FileUploader } from 'ng2-file-upload';\r\nimport { ExportService } from '../_services/export.service';\r\nimport { AlertifyService } from '../_services/alertify.service';\r\nimport { DocumentCategory } from '../_models/documentcategory';\r\nimport { AuthService } from '../_services/auth.service';\r\n\r\n@Component({\r\n selector: \"app-document-upload\",\r\n templateUrl: \"./document-upload.component.html\",\r\n styleUrls: [\"./document-upload.component.css\"]\r\n})\r\nexport class DocumentUploadComponent implements OnInit {\r\n @Input() exportid: any;\r\n // uploader: FileUploader = new FileUploader({ url: URL });\r\n uploader: FileUploader;\r\n hasBaseDropZoneOver = false;\r\n baseUrl = environment.apiUrl;\r\n id = 1 ;\r\n userId: number;\r\n\r\n documentCategoryList: DocumentCategory[];\r\n model: any = {};\r\n\r\n constructor(\r\n private exportService: ExportService,\r\n private alertify: AlertifyService,\r\n public authService: AuthService,\r\n ) {}\r\n\r\n ngOnInit() {\r\n this.loadDocumentCategory();\r\n this.initializeUploader();\r\n this.userId = this.authService.decodedToken.nameid;\r\n }\r\n\r\n fileOverBase(e: any): void {\r\n this.hasBaseDropZoneOver = e;\r\n }\r\n\r\n initializeUploader() {\r\n this.uploader = new FileUploader({\r\n url: this.baseUrl + \"document/\" + this.exportid + \"/upload/\" + this.model.id + \"/type/\" + this.userId +\"/user/\",\r\n authToken: \"Bearer \" + localStorage.getItem(\"token\"),\r\n isHTML5: true,\r\n allowedFileType: [\r\n \"pdf\",\r\n \"image\",\r\n \"csv\",\r\n \".docx\",\r\n \".doc\",\r\n \".ppt\",\r\n \".xls\",\r\n \".xlsx\",\r\n \"docx\",\r\n \"doc\",\r\n \"ppt\",\r\n \"xls\",\r\n \"xlsx\"\r\n ],\r\n removeAfterUpload: true,\r\n autoUpload: false,\r\n maxFileSize: 10 * 1024 * 1024 // File Size\r\n });\r\n\r\n this.uploader.onAfterAddingFile = file => {\r\n file.withCredentials = false;\r\n };\r\n this.uploader.onCompleteItem = (item: any, response: any, status: any, header: any) => {\r\n this.alertify.success('File Upload Successful');\r\n };\r\n }\r\n loadDocumentCategory() {\r\n this.exportService.getDocumentCategoryList().subscribe(\r\n (docCat: DocumentCategory[]) => {\r\n this.documentCategoryList = docCat;\r\n this.model = docCat;\r\n },\r\n error => {\r\n this.alertify.error(error);\r\n }\r\n );\r\n }\r\n getDC() {\r\n this.initializeUploader();\r\n }\r\n}\r\n","
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n\r\n
Drag Files Here
\r\n\r\n
\r\n \r\n Drop Documents Here\r\n
\r\n\r\n \r\n
\r\n \r\n
\r\n\r\n
Upload queue
\r\n

Queue length: {{ uploader?.queue?.length }}

\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
NameSize
\r\n {{ item?.file?.name }}\r\n {{ item?.file?.size/1024/1024 | number:'.2' }} MB
\r\n\r\n
\r\n
\r\n Queue progress:\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n\r\n
\r\n\r\n
","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-document',\r\n templateUrl: './document.component.html',\r\n styleUrls: ['./document.component.css']\r\n})\r\nexport class DocumentComponent implements OnInit {\r\n\r\n createMode = false;\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n }\r\n createModeToggel(){\r\n this.createMode = !this.createMode;\r\n console.log(this.createMode);\r\n }\r\n}\r\n","
\r\n
    \r\n
  1. \r\n Document Home\r\n
  2. \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n\r\n\r\n","import { Component, OnInit, TemplateRef } from '@angular/core';\r\nimport { ExportService } from '../../_services/export.service';\r\nimport { AlertifyService } from '../../_services/alertify.service';\r\nimport { AuthService } from '../../_services/auth.service';\r\nimport { DocumentCategory } from '../../_models/documentcategory';\r\nimport { environment } from '../../../environments/environment';\r\nimport { DocumentTemplateCategory } from '../../_models/documenttemplatecategory';\r\nimport { FileUploader } from 'ng2-file-upload';\r\nimport { Terminal } from '../../_models/terminal';\r\nimport { BsModalRef, BsModalService } from 'ngx-bootstrap/modal';\r\n\r\n@Component({\r\n selector: \"app-document-template-upload\",\r\n templateUrl: \"./document-template-upload.component.html\",\r\n styleUrls: [\"./document-template-upload.component.css\"]\r\n})\r\nexport class DocumentTemplateUploadComponent implements OnInit {\r\n modalRef: BsModalRef;\r\n uploader: FileUploader;\r\n hasBaseDropZoneOver = false;\r\n baseUrl = environment.apiUrl;\r\n id = 1;\r\n userId: number;\r\n documentTemplateName: string;\r\n documentTemplateDescription: string;\r\n\r\n documentCategoryList: DocumentTemplateCategory[];\r\n model: any = {};\r\n documentCategoryModel: any = {};\r\n\r\n createMode = false;\r\n terminals: Terminal[];\r\n newDocumentTemplate: any;\r\n newDocumentTemplateLabel: any;\r\n\r\n\r\n constructor(\r\n private exportService: ExportService,\r\n private alertify: AlertifyService,\r\n public authService: AuthService,\r\n private modalService: BsModalService\r\n ) {}\r\n\r\n ngOnInit() {\r\n this.loadDocumentTemplateCategory();\r\n this.loadTerminals();\r\n this.initializeUploader();\r\n this.userId = this.authService.decodedToken.nameid;\r\n }\r\n\r\n fileOverBase(e: any): void {\r\n this.hasBaseDropZoneOver = e;\r\n }\r\n\r\n initializeUploader() {\r\n\r\n this.uploader = new FileUploader({\r\n url:\r\n this.baseUrl +\r\n \"documenttemplate/create/name/\" +\r\n this.model.name +\r\n \"/desc/\" +\r\n this.model.description +\r\n \"/terminal/\" +\r\n this.model.terminalId +\r\n \"/user/\" +\r\n this.model.userId +\r\n \"/docTempCat/\" +\r\n this.model.id,\r\n authToken: \"Bearer \" + localStorage.getItem(\"token\"),\r\n isHTML5: true,\r\n allowedFileType: [\r\n \"pdf\",\r\n \"image\",\r\n \"csv\",\r\n \".docx\",\r\n \".doc\",\r\n \".ppt\",\r\n \".xls\",\r\n \".xlsx\",\r\n \"docx\",\r\n \"doc\",\r\n \"ppt\",\r\n \"xls\",\r\n \"xlsx\"\r\n ],\r\n removeAfterUpload: true,\r\n autoUpload: false,\r\n maxFileSize: 10 * 1024 * 1024 // File Size\r\n });\r\n\r\n this.uploader.onCompleteItem = (item: any, response: any, status: any, header: any) => {\r\n this.alertify.success('File Upload Successful');\r\n };\r\n\r\n }\r\n loadDocumentTemplateCategory() {\r\n this.exportService.getDocumentTemplateCategory().subscribe(\r\n (docTemplateCat: DocumentTemplateCategory[]) => {\r\n this.documentCategoryList = docTemplateCat;\r\n // this.model = docTemplateCat;\r\n },\r\n error => {\r\n this.alertify.error(error);\r\n }\r\n );\r\n }\r\n loadTerminals() {\r\n this.exportService.getTerminals().subscribe(\r\n (terminals: Terminal[]) => {\r\n this.terminals = terminals;\r\n },\r\n error => {\r\n this.alertify.error(error);\r\n }\r\n );\r\n }\r\n createNewDocumentTemplate() {\r\n this.exportService.createDocumentTemplate(this.model).subscribe(() => {\r\n this.alertify.success(\"Document Template Created\");\r\n }, error => {\r\n this.alertify.error(\"Unable to Create Document Tamplet\");\r\n });\r\n\r\n this.uploader.onAfterAddingFile = file => {\r\n file.withCredentials = false;\r\n };\r\n }\r\n getDC() {\r\n this.model.name = this.documentTemplateName;\r\n this.model.description = this.documentTemplateDescription;\r\n this.model.userId = this.userId;\r\n console.log(this.model);\r\n this.initializeUploader();\r\n }\r\n getModelReady() {\r\n this.model.name = this.documentTemplateName;\r\n this.model.description = this.documentTemplateDescription;\r\n console.log(this.model);\r\n this.initializeUploader();\r\n }\r\n createModeToggel() {\r\n this.createMode = !this.createMode;\r\n }\r\n openModal(template: TemplateRef) {\r\n this.modalRef = this.modalService.show(template);\r\n }\r\n\r\n addDocumentTemplate() {\r\n console.log(this.newDocumentTemplate);\r\n this.documentCategoryList.push(this.newDocumentTemplate);\r\n this.documentCategoryModel.name = this.newDocumentTemplate;\r\n this.documentCategoryModel.label = this.newDocumentTemplateLabel;\r\n\r\n this.exportService.createDocumentTemplateCategroy(this.documentCategoryModel)\r\n .subscribe(\r\n () => {\r\n this.alertify.success('New Document Categroy Created');\r\n this.loadDocumentTemplateCategory();\r\n }, error => {\r\n this.alertify.error('Error Creating Document Category');\r\n }\r\n );\r\n\r\n this.modalRef.hide();\r\n }\r\n\r\n}\r\n","
\r\n
\r\n Create New Document Template\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
Add files
\r\n \r\n
\r\n \r\n Drop Documents Here\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n \r\n
Upload queue
\r\n

Queue length: {{ uploader?.queue?.length }}

\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
NameSize
\r\n {{ item?.file?.name }}\r\n {{ item?.file?.size/1024/1024 | number:'.2' }} MB
\r\n \r\n
\r\n
\r\n Queue progress:\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n\r\n
\r\n\r\n\r\n
\r\n

New Document Template

\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n\r\n\r\n\r\n","import { Component, OnInit, Input } from '@angular/core';\r\nimport { Export } from '../../_models/export';\r\nimport { AlertifyService } from '../../_services/alertify.service';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { ExportService } from '../../_services/export.service';\r\nimport { DocumentService } from '../../_services/document.service';\r\nimport { saveAs } from 'file-saver';\r\nimport { AuthService } from '../../_services/auth.service';\r\n\r\n@Component({\r\n selector: 'app-excess-water-document',\r\n templateUrl: './excess-water-document.component.html',\r\n styleUrls: ['./excess-water-document.component.css']\r\n})\r\n\r\nexport class ExcessWaterDocumentComponent implements OnInit {\r\n @Input() export: Export;\r\n @Input() exportId: number;\r\n userId: number;\r\n exportDocs: any;\r\n filterExportDocs: any;\r\n\r\n constructor(private exportService: ExportService, private alertify: AlertifyService,\r\n private route: ActivatedRoute, private nav: Router, private documentService: DocumentService, private authService: AuthService) { }\r\n\r\n ngOnInit() {\r\n this.loadExportDocs();\r\n }\r\n\r\n loadExportDocs() {\r\n this.exportService.getExportDocuments(this.export != undefined ? this.export?.id : this.exportId).subscribe((documents: Document[]) => {\r\n this.userId = this.authService.decodedToken.nameid;\r\n this.filterExportDocs = documents;\r\n if (this.filterExportDocs != null && this.filterExportDocs != undefined && this.userId != null) {\r\n this.exportDocs = this.filterExportDocs.filter(x => x.usersId == this.userId);\r\n }\r\n }, error => {\r\n this.alertify.error(error);\r\n });\r\n }\r\n\r\n downloadDocument(e: number, fileName: string) {\r\n this.documentService.download(e).subscribe(\r\n data => {\r\n // console.log(fileName);\r\n // console.log(data);\r\n // const FileSaver = require('file-saver');\r\n // FileSaver.saveAs(data, fileName);\r\n saveAs(data, fileName);\r\n this.alertify.success('Download Successful');\r\n },\r\n error => {\r\n this.alertify.error('Unable to Download Document');\r\n }\r\n );\r\n }\r\n downloadAll(documentArrayList: any[]) {\r\n for (let index = 0; index < documentArrayList.length; index++) {\r\n this.downloadDocument(documentArrayList[index].id, documentArrayList[index].fileName);\r\n }\r\n }\r\n\r\n}\r\n","\r\n\r\n
\r\n
\r\n
\r\n \"../../assets/xls.jpg\"\r\n
\r\n
\r\n
\r\n \r\n {{ exportDoc?.documentCategory.name}} \r\n
\r\n {{ exportDoc?.fileName}}\r\n
\r\n
\r\n {{exportDoc?.users.username | lowercase}}\r\n {{exportDoc?.dateCreated | timeAgo}}\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n
","import { Component, OnInit, TemplateRef } from '@angular/core';\r\nimport { Export } from '../../_models/export';\r\nimport { ExportService } from '../../_services/export.service';\r\nimport { AlertifyService } from '../../_services/alertify.service';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { BsModalRef, BsModalService } from 'ngx-bootstrap/modal';\r\nimport { AuthService } from '../../_services/auth.service';\r\nimport { DocumentService } from '../../_services/document.service';\r\nimport {saveAs} from 'file-saver';\r\nimport { DateService } from 'src/app/_services/date.service';\r\nimport { ExcessWater } from '../../_models/excesswater';\r\n\r\n@Component({\r\n selector: 'app-excess-water-detail-update',\r\n templateUrl: './excess-water-detail-update.component.html',\r\n styleUrls: ['./excess-water-detail-update.component.css']\r\n})\r\nexport class ExcessWaterDetailUpdateComponent implements OnInit {\r\n\r\n export: Export;\r\n modalRef: BsModalRef;\r\n exportToDuplicateID: number;\r\n //DIModel: any = {};\r\n NominationModel: any = {};\r\n fileToDownload: any = {};\r\n public hasFile = false;\r\n public filePathToDownload: string;\r\n public currentTab = 0;\r\n excessWaterId: number;\r\n exportId: number;\r\n constructor(private exportService: ExportService,\r\n private alertify: AlertifyService,\r\n private route: ActivatedRoute,\r\n private modalService: BsModalService,\r\n private authService: AuthService,\r\n private router: Router,\r\n private documentService: DocumentService,\r\n private dateService: DateService,\r\n private nav: ActivatedRoute) { }\r\n\r\n ngOnInit() {\r\n this.excessWaterId = this.nav.params[\"value\"].id;\r\n this.exportId = this.nav.params[\"value\"].exportId;\r\n this.loadExcessWaterDetail();\r\n this.loadExport(this.exportId);\r\n }\r\n\r\n loadExcessWaterDetail() {\r\n this.exportService.getExcessWaterDetail(this.excessWaterId).subscribe(\r\n (excesswater: ExcessWater) => {\r\n this.transformExcessWaterDetail(excesswater);\r\n },\r\n error => {\r\n this.alertify.error(error);\r\n }\r\n );\r\n }\r\n\r\n transformExcessWaterDetail(excessWater: any) {\r\n this.claimReceived = excessWater?.claimReceived;\r\n this.vesselExperienceFactor = excessWater?.vesselExperienceFactor;\r\n this.freeWaterMeasuredOnArrival = excessWater?.freeWaterMeasuredOnArrival;\r\n this.terminalBsmw = excessWater?.terminalBsmw;\r\n this.sedimentWaterArrival = excessWater?.sedimentWaterArrival;\r\n this.totalExcessFreeWater = excessWater?.totalExcessFreeWater;\r\n this.exportId = excessWater?.exportId;\r\n this.id = excessWater?.id;\r\n this.dateCreated = excessWater?.dateCreated;\r\n this.dateUpdated = excessWater?.dateUpdated;\r\n this.unitSalesValue = excessWater?.unitSalesValue;\r\n this.totalValueLoss = excessWater?.totalValueLoss;\r\n }\r\n\r\n loadExport(exportId: any) {\r\n this.exportService.getExport(exportId).subscribe((exports: Export) => {\r\n this.export = exports;\r\n }, error => {\r\n this.alertify.error(error);\r\n });\r\n }\r\n\r\n duplicateExport() {\r\n console.log(this.exportToDuplicateID);\r\n this.exportService.duplicateExportWithID(this.exportToDuplicateID, this.authService.decodedToken.nameid).subscribe(\r\n (exports: Export) => {\r\n this.modalRef.hide();\r\n this.alertify.success('Export Successfully Duplicated');\r\n this.router.navigate(['/dash-board']);\r\n }, error => {\r\n this.alertify.error('Problem Duplicating Export');\r\n }\r\n );\r\n }\r\n\r\n generateDocumentInstruction(lifterId: number) {\r\n this.getNominationValues();\r\n console.log('Generting Document....');\r\n\r\n this.documentService.generateDocumentInstructionStardeep(lifterId, this.NominationModel).subscribe(\r\n data => {\r\n console.log(data);\r\n saveAs(data, this.NominationModel.cargoNumber + ' DI.docx');\r\n this.alertify.success('Download Successful');\r\n }, error => {\r\n this.alertify.error('Unable to load files');\r\n }\r\n );\r\n }\r\n\r\n getNominationValues() {\r\n // console.log(this.export);\r\n this.NominationModel.letterDate = this.dateService.currentDateForDocument();\r\n this.NominationModel.dateRange = this.dateService.documentDateRange(this.export.dateRangeStart, this.export.dateRangeEnd);\r\n this.NominationModel.vesselName = this.export.vessel.name;\r\n this.NominationModel.ETA = this.dateService.documentDate(this.export.eta);\r\n this.NominationModel.volume = this.export.norminatedCargo;\r\n this.NominationModel.volumeMetricTons = this.export.norminatedCargo;\r\n this.NominationModel.terminal = this.export.terminals.name;\r\n this.NominationModel.DWT = this.export.vessel.dwt;\r\n this.NominationModel.NXPNumber = this.export.nxpNumber;\r\n this.NominationModel.destination = this.export.destinations.name;\r\n this.NominationModel.consignor = this.export.consignor.name;\r\n this.NominationModel.consignee = this.export.consignees.name;\r\n this.NominationModel.inspector = this.export.inspector.name;\r\n this.NominationModel.vesselAgent = this.export.vesselAgents.name;\r\n this.NominationModel.comment = this.export.comment;\r\n this.NominationModel.cargoNumber = this.export.cargoNumber;\r\n this.NominationModel.cargoType = this.export.cargoTypes['name'];\r\n this.NominationModel.flagOfVessel = this.export.vessel.flag;\r\n this.NominationModel.nxpNumber = this.export.nxpNumber;\r\n this.NominationModel.vesselIMO = this.export.vessel.imoNumber;\r\n this.NominationModel.productId = this.export.products.id;\r\n this.NominationModel.terminalId = this.export.terminals.id;\r\n console.log(this.NominationModel);\r\n }\r\n\r\n downloadFile() {\r\n this.fileToDownload.path = this.filePathToDownload;\r\n // console.log(this.filePathToDownload);\r\n this.documentService.downloadFileWithPath(this.fileToDownload).subscribe(\r\n data => {\r\n console.log(data);\r\n saveAs(data, 'Download.docx');\r\n this.alertify.success('Download Successful');\r\n }, error => {\r\n this.alertify.error('Unable to load files');\r\n }\r\n );\r\n }\r\n setCurrentTab(id: number) {\r\n this.currentTab = id;\r\n console.log(this.currentTab);\r\n }\r\n\r\n //Restrict input to numbers and a single decimal points \r\n decimalKeyPressValidations(event: KeyboardEvent) {\r\n const allowedKeys = ['1', '2', '3', '4', '5', '6', '7', '8', '9', '0', '.'];\r\n if (!allowedKeys.includes(event.key)) {\r\n event.preventDefault();\r\n }\r\n //prevent more then one decimal point\r\n const inputElement = event.target as HTMLInputElement;\r\n if (event.key === '.' && inputElement.value.includes('.')) {\r\n event.preventDefault();\r\n }\r\n }\r\n\r\n decimalInputValidations(event: any, modelInputType: any) {\r\n const inputElement = event.target as HTMLInputElement;\r\n const value = inputElement.value;\r\n //check if the num has more than 3 decimal places\r\n const decimalMatch = value.match(/^\\d+(\\.\\d{0,3})?/);\r\n if (decimalMatch) {\r\n switch (modelInputType) {\r\n case \"ClaimReceived\":\r\n inputElement.value = decimalMatch[0];\r\n this.claimReceived = parseFloat(inputElement.value);\r\n break;\r\n case \"FreeWaterMeasuredOnArrival\":\r\n inputElement.value = decimalMatch[0];\r\n this.freeWaterMeasuredOnArrival = parseFloat(inputElement.value);\r\n break;\r\n case \"TerminalBsmw\":\r\n inputElement.value = decimalMatch[0];\r\n this.terminalBsmw = parseFloat(inputElement.value);\r\n break;\r\n case \"SedimentWaterArrival\":\r\n inputElement.value = decimalMatch[0];\r\n this.sedimentWaterArrival = parseFloat(inputElement.value);\r\n break;\r\n }\r\n }\r\n }\r\n\r\n calculateExcessFreeWaterValue() {\r\n if (!this.isNullOrEmptyOrUndefined(this.freeWaterMeasuredOnArrival) || !this.isNullOrEmptyOrUndefined(this.terminalBsmw)\r\n || !this.isNullOrEmptyOrUndefined(this.sedimentWaterArrival)) {\r\n return this.totalExcessFreeWater = ((!this.isNullOrEmptyOrUndefined(this.freeWaterMeasuredOnArrival) ? (parseFloat(this.freeWaterMeasuredOnArrival.toString())) : 0) - (!this.isNullOrEmptyOrUndefined(this.terminalBsmw) ? (parseFloat(this.terminalBsmw.toString())) : 0)\r\n + (!this.isNullOrEmptyOrUndefined(this.sedimentWaterArrival) ? (parseFloat(this.sedimentWaterArrival.toString())) : 0));\r\n }\r\n }\r\n\r\n isNullOrEmptyOrUndefined(value: any) {\r\n if (value == null || value == '' || value == undefined || value == 0) {\r\n return true;\r\n } else {\r\n return false;\r\n }\r\n }\r\n\r\n claimReceived: number;\r\n vesselExperienceFactor: number;\r\n freeWaterMeasuredOnArrival: number;\r\n terminalBsmw: number;\r\n sedimentWaterArrival: number;\r\n totalExcessFreeWater: number;\r\n dateCreated: Date;\r\n dateUpdated: Date;\r\n id: number;\r\n unitSalesValue: number;\r\n totalValueLoss: number;\r\n updateExcessWater() {\r\n this.transformUpdatedata();\r\n if (this.isNullOrEmptyOrUndefined(this.totalExcessFreeWater)) {\r\n this.alertify.error('Error Calculate the Excess Water Volume (in barrels or metric tons) Can not be Zero.');\r\n return;\r\n }\r\n this.exportService\r\n .updateExcessWater(this.id, this.modelForUpdateData)\r\n .subscribe(\r\n next => {\r\n this.alertify.success('ExcessWater Details Successfully Updated');\r\n this.router.navigate(['excess-water-detail', this.id, this.exportId]);\r\n },\r\n error => {\r\n this.alertify.error(error);\r\n }\r\n );\r\n this.router.navigate(['/export-water-detail/', this.id, this.exportId]);\r\n }\r\n\r\n modelForUpdateData: any = {};\r\n transformUpdatedata() {\r\n this.modelForUpdateData.claimReceived = this.claimReceived;\r\n this.modelForUpdateData.vesselExperienceFactor = this.vesselExperienceFactor;\r\n this.modelForUpdateData.freeWaterMeasuredOnArrival = this.freeWaterMeasuredOnArrival;\r\n this.modelForUpdateData.terminalBsmw = this.terminalBsmw;\r\n this.modelForUpdateData.sedimentWaterArrival = this.sedimentWaterArrival;\r\n this.modelForUpdateData.totalExcessFreeWater = this.totalExcessFreeWater;\r\n this.modelForUpdateData.exportId = this.exportId;\r\n this.modelForUpdateData.id = this.id;\r\n this.modelForUpdateData.dateCreated = this.dateCreated;\r\n this.modelForUpdateData.dateUpdated = new Date();\r\n this.modelForUpdateData.unitSalesValue = this.unitSalesValue;\r\n this.modelForUpdateData.totalValueLoss = this.totalValueLoss;\r\n }\r\n\r\n calTotalExcessFreeWaterLossValue() {\r\n this.totalValueLoss = 0;\r\n if (!this.isNullOrEmptyOrUndefined(this.unitSalesValue) || !this.isNullOrEmptyOrUndefined(this.totalExcessFreeWater)) {\r\n return this.totalValueLoss = (((!this.isNullOrEmptyOrUndefined(this.unitSalesValue) ? (parseFloat(this.unitSalesValue.toString())) : 0)\r\n * (!this.isNullOrEmptyOrUndefined(this.totalExcessFreeWater) ? (parseFloat(this.totalExcessFreeWater.toString())) : 0)));\r\n }\r\n }\r\n}\r\n","
\r\n
    \r\n
  1. \r\n Home\r\n
  2. \r\n
  3. \r\n Excess Water Details Update\r\n
  4. \r\n
  5. {{export?.vessel?.name}}
  6. \r\n
\r\n
\r\n
\r\n

{{export?.vessel?.name}}

\r\n
\r\n
\r\n
\r\n InformationYou have made some changes. Any unsaved changes would be lost\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \"\"\r\n
\r\n
\r\n
{{export?.cargoNumber}}
\r\n
\r\n
\r\n Date Range\r\n

{{export?.dateRangeStart | date:'mediumDate'}} - {{export?.dateRangeEnd | date:'mediumDate'}}

\r\n
\r\n
\r\n LIFTER\r\n

{{export?.lifters.name | uppercase}}

\r\n
\r\n
\r\n ETA\r\n

{{export?.eta | date:'mediumDate'}}

\r\n
\r\n
\r\n CURRENT STATUS\r\n

{{ export?.status.label }}

\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
Cargo Number :
\r\n

{{export?.cargoNumber}}

\r\n
Product :
\r\n

{{export?.products?.name}}

\r\n
Cargo Type :
\r\n

{{export?.cargoTypes != null ? export?.cargoTypes?.name :''}}

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
Agent Details
\r\n

{{export?.vesselAgents?.name | uppercase}}

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
Inspectors
\r\n

{{export?.inspector?.name | uppercase}}

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n Enter upto 3 decimal points\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n Enter upto 3 decimal points\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n Enter upto 3 decimal points\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n Enter upto 3 decimal points\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
CONSIGNOR
\r\n

{{export?.consignor?.name | uppercase}}

\r\n
CONSIGNEE
\r\n

{{export?.consignees?.name | uppercase}}

\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
Export Comment
\r\n

{{export?.comment}}.

\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
","import { Component, Input, OnInit, TemplateRef } from '@angular/core';\r\nimport { Export } from '../../_models/export';\r\nimport { ExportService } from '../../_services/export.service';\r\nimport { AlertifyService } from '../../_services/alertify.service';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { BsModalRef, BsModalService } from 'ngx-bootstrap/modal';\r\nimport { AuthService } from '../../_services/auth.service';\r\nimport { DocumentService } from '../../_services/document.service';\r\nimport {saveAs} from 'file-saver';\r\nimport { DateService } from 'src/app/_services/date.service';\r\nimport { ExcessWater } from 'src/app/_models/excesswater';\r\n\r\n@Component({\r\n selector: 'app-excess-water-detail',\r\n templateUrl: './excess-water-detail.component.html',\r\n styleUrls: ['./excess-water-detail.component.css']\r\n})\r\nexport class ExcessWaterDetailComponent implements OnInit {\r\n\r\n export: Export;\r\n excessWater:ExcessWater;\r\n modalRef: BsModalRef;\r\n exportToDuplicateID: number ;\r\n //DIModel: any = {};\r\n NominationModel: any = {};\r\n fileToDownload: any = {};\r\n public hasFile = false;\r\n public filePathToDownload: string;\r\n public currentTab = 0 ;\r\n exportId: number;\r\n inputExportId:number;\r\n constructor(private exportService: ExportService,\r\n private alertify: AlertifyService,\r\n private route: ActivatedRoute,\r\n private modalService: BsModalService,\r\n private authService: AuthService,\r\n private router: Router,\r\n private documentService: DocumentService,\r\n private dateService: DateService,\r\n private nav: ActivatedRoute) { }\r\n\r\n ngOnInit() {\r\n this.exportId = this.nav.params[\"value\"].id;\r\n this.inputExportId=this.nav.params[\"value\"].exportId;\r\n this.loadExcessWaterDetail();\r\n }\r\n\r\n loadExcessWaterDetail(){\r\n this.exportService.getExcessWaterDetail(this.exportId).subscribe(\r\n (excesswater: ExcessWater) => {\r\n this.excessWater=excesswater;\r\n if(excesswater.exportId!=null){\r\n this.loadExport(excesswater.exportId);\r\n }\r\n },\r\n error => {\r\n this.alertify.error(error);\r\n }\r\n );\r\n }\r\n\r\n loadExport(exportId:any) {\r\n this.exportService.getExport(exportId).subscribe((exports: Export) => {\r\n this.export = exports;\r\n console.log(this.export);\r\n }, error => {\r\n this.alertify.error(error);\r\n });\r\n }\r\n\r\n openModal(template: TemplateRef, e: any) {\r\n // console.log(e);\r\n this.exportToDuplicateID = e;\r\n this.modalRef = this.modalService.show(template);\r\n }\r\n\r\n closeConfirmModal() {\r\n this.modalRef.hide();\r\n }\r\n\r\n duplicateExport() {\r\n console.log(this.exportToDuplicateID);\r\n this.exportService.duplicateExportWithID(this.exportToDuplicateID, this.authService.decodedToken.nameid).subscribe(\r\n (exports: Export) => {\r\n this.modalRef.hide();\r\n this.alertify.success('Export Successfully Duplicated');\r\n this.router.navigate(['/dash-board']);\r\n }, error => {\r\n this.alertify.error('Problem Duplicating Export');\r\n }\r\n );\r\n }\r\n\r\n generateDocumentInstruction(lifterId: number) {\r\n this.getNominationValues();\r\n console.log('Generting Document....');\r\n\r\n this.documentService.generateDocumentInstructionStardeep(lifterId, this.NominationModel).subscribe(\r\n data => {\r\n console.log(data);\r\n saveAs(data, this.NominationModel.cargoNumber + ' DI.docx');\r\n this.alertify.success('Download Successful');\r\n }, error => {\r\n this.alertify.error('Unable to load files');\r\n }\r\n );\r\n }\r\n\r\n getNominationValues() {\r\n // console.log(this.export);\r\n this.NominationModel.letterDate = this.dateService.currentDateForDocument();\r\n this.NominationModel.dateRange = this.dateService.documentDateRange(this.export.dateRangeStart,this.export.dateRangeEnd);\r\n this.NominationModel.vesselName = this.export.vessel.name;\r\n this.NominationModel.ETA = this.dateService.documentDate(this.export.eta);\r\n this.NominationModel.volume = this.export.norminatedCargo;\r\n this.NominationModel.volumeMetricTons = this.export.norminatedCargo;\r\n this.NominationModel.terminal = this.export.terminals.name;\r\n this.NominationModel.DWT = this.export.vessel.dwt;\r\n this.NominationModel.NXPNumber = this.export.nxpNumber;\r\n this.NominationModel.destination = this.export.destinations.name;\r\n this.NominationModel.consignor = this.export.consignor.name;\r\n this.NominationModel.consignee = this.export.consignees.name;\r\n this.NominationModel.inspector = this.export.inspector.name;\r\n this.NominationModel.vesselAgent = this.export.vesselAgents.name;\r\n this.NominationModel.comment = this.export.comment;\r\n this.NominationModel.cargoNumber = this.export.cargoNumber;\r\n this.NominationModel.cargoType = this.export.cargoTypes['name'];\r\n this.NominationModel.flagOfVessel = this.export.vessel.flag;\r\n this.NominationModel.nxpNumber = this.export.nxpNumber;\r\n this.NominationModel.vesselIMO = this.export.vessel.imoNumber;\r\n this.NominationModel.productId = this.export.products.id;\r\n this.NominationModel.terminalId = this.export.terminals.id;\r\n console.log(this.NominationModel);\r\n }\r\n\r\n downloadFile() {\r\n this.fileToDownload.path = this.filePathToDownload;\r\n // console.log(this.filePathToDownload);\r\n this.documentService.downloadFileWithPath(this.fileToDownload).subscribe(\r\n data => {\r\n console.log(data);\r\n saveAs(data, 'Download.docx');\r\n this.alertify.success('Download Successful');\r\n }, error => {\r\n this.alertify.error('Unable to load files');\r\n }\r\n );\r\n }\r\n setCurrentTab(id: number){\r\n this.currentTab = id;\r\n console.log(this.currentTab);\r\n }\r\n}\r\n","
\r\n
    \r\n
  1. \r\n Home\r\n
  2. \r\n
  3. \r\n Excess Water View Details\r\n
  4. \r\n
  5. {{export?.vessel?.name}}
  6. \r\n
\r\n

{{export?.vessel?.name}}

\r\n
\r\n
\r\n
\r\n \"\"\r\n
\r\n
\r\n
{{export?.cargoNumber}}
\r\n
\r\n
\r\n Date Range\r\n

{{export?.dateRangeStart | date:'mediumDate'}} - {{export?.dateRangeEnd | date:'mediumDate'}}

\r\n
\r\n
\r\n LIFTER\r\n

{{export?.lifters?.name | uppercase}}

\r\n
\r\n
\r\n ETA\r\n

{{export?.eta | date:'mediumDate'}}

\r\n
\r\n
\r\n CURRENT STATUS\r\n

{{ export?.status?.label }}

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
Cargo Number :
\r\n

{{export?.cargoNumber}}

\r\n
Product :
\r\n

{{export?.products?.name}}

\r\n
Cargo Type :
\r\n

{{export?.cargoTypes != null ? export?.cargoTypes?.name :''}}

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
Agent Details
\r\n

{{export?.vesselAgents?.name | uppercase}}

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
Inspectors
\r\n

{{export?.inspector?.name | uppercase}}

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
CONSIGNOR
\r\n

{{export?.consignor?.name | uppercase}}

\r\n
CONSIGNEE
\r\n

{{export?.consignees?.name | uppercase}}

\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
Export Comment
\r\n

{{export?.comment}}.

\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n

Action Confirmation

\r\n \r\n
\r\n
\r\n
\r\n

Are you sure you want to create a duplicate of this export. By click yes a new export instance would be created with the same details and a ----NEW flag on the Cargo Number./p>\r\n

\r\n \r\n \r\n
\r\n
\r\n","import { Component, OnInit, Input } from '@angular/core';\r\nimport { FileUploader } from 'ng2-file-upload';\r\nimport { ExportService } from '../../_services/export.service';\r\nimport { AlertifyService } from '../../_services/alertify.service';\r\nimport { AuthService } from '../../_services/auth.service';\r\nimport { environment } from '../../../environments/environment';\r\nimport { Export } from '../../_models/export';\r\nimport { ActivatedRoute } from '@angular/router';\r\n\r\n@Component({\r\n selector: 'app-excess-water-document-upload',\r\n templateUrl: './excess-water-document-upload.component.html',\r\n styleUrls: ['./excess-water-document-upload.component.css']\r\n})\r\nexport class ExcessWaterDocumentUploadComponent implements OnInit {\r\n\r\n @Input() export: any;\r\n // uploader: FileUploader = new FileUploader({ url: URL });\r\n uploader: FileUploader;\r\n hasBaseDropZoneOver = false;\r\n baseUrl = environment.apiUrl;\r\n id = 1 ;\r\n documentId = 15;\r\n userId = 1;\r\n @Input() exportId:number;\r\n constructor(\r\n private exportService: ExportService,\r\n private alertify: AlertifyService,\r\n public authService: AuthService,\r\n private nav:ActivatedRoute\r\n ) { }\r\n\r\n ngOnInit() {\r\n this.initializeUploader();\r\n }\r\n fileOverBase(e: any): void {\r\n this.hasBaseDropZoneOver = e;\r\n }\r\n\r\n initializeUploader() {\r\n console.log(this.exportId);\r\n this.userId = this.authService.decodedToken.nameid;\r\n this.uploader = new FileUploader({\r\n url: this.baseUrl + 'document/' + this.exportId + '/upload/' + this.documentId + '/type/' + this.userId + '/user/',\r\n authToken: 'Bearer ' + localStorage.getItem('token'),\r\n isHTML5: true,\r\n allowedFileType: [\r\n 'pdf',\r\n 'image',\r\n 'csv',\r\n '.docx',\r\n '.doc',\r\n '.ppt',\r\n '.xls',\r\n '.xlsx',\r\n 'docx',\r\n 'doc',\r\n 'ppt',\r\n 'xls',\r\n 'xlsx'\r\n ],\r\n removeAfterUpload: true,\r\n autoUpload: false,\r\n maxFileSize: 10 * 1024 * 1024 // File Size\r\n });\r\n\r\n this.uploader.onAfterAddingFile = file => {\r\n file.withCredentials = false;\r\n };\r\n\r\n this.uploader.onCompleteItem = (item: any, response: any, status: any, header: any) => {\r\n this.alertify.success('File Upload Successful');\r\n };\r\n }\r\n\r\n}\r\n","\r\n
\r\n\r\n
\r\n\r\n
Add files
\r\n\r\n
\r\n \r\n Drop Documents Here\r\n
\r\n\r\n \r\n
\r\n\r\n
\r\n\r\n
Upload queue
\r\n

Queue length: {{ uploader?.queue?.length }}

\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
NameSize
\r\n {{ item?.file?.name }}\r\n {{ item?.file?.size/1024/1024 | number:'.2' }} MB
\r\n\r\n
\r\n
\r\n Queue progress:\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n\r\n
\r\n\r\n
\r\n","import { Component, OnInit, TemplateRef } from '@angular/core';\r\nimport { TypeaheadMatch } from \"ngx-bootstrap/typeahead/typeahead-match.class\";\r\nimport { ExportService } from '../../_services/export.service';\r\nimport { AlertifyService } from '../../_services/alertify.service';\r\nimport { Export } from '../../_models/export';\r\nimport { BsModalService, BsModalRef } from \"ngx-bootstrap/modal\";\r\nimport { Router } from \"@angular/router\";\r\nimport { FormGroup } from \"@angular/forms\";\r\nimport { AuthService } from '../../_services/auth.service';\r\n\r\n@Component({\r\n selector: \"app-excess-water-home\",\r\n templateUrl: \"./excess-water-home.component.html\",\r\n styleUrls: [\"./excess-water-home.component.css\"]\r\n})\r\nexport class ExcessWaterHomeComponent implements OnInit {\r\n modalRef: BsModalRef;\r\n selectedValue: string;\r\n selectedOption: any;\r\n vesselName: any;\r\n BOLDate: any;\r\n lifter: any;\r\n terminalName: any;\r\n vesselArrived: any;\r\n exportID = 1;\r\n lifterImage: any;\r\n landingNetVolumeInBBLS: any;\r\n\r\n afraValue: number;\r\n wsValue: number;\r\n shipRate: number;\r\n\r\n exports: Export[];\r\n export: any;\r\n\r\n model: any = {};\r\n calculationAvailable = false;\r\n returnedDemurrageModel: any = {};\r\n hasExporRecord = false;\r\n createdActivated = false;\r\n laycanTime: Date = new Date();\r\n laycanDate: Date;\r\n\r\n constructor(\r\n private exportService: ExportService,\r\n private alertify: AlertifyService,\r\n private route: Router,\r\n private authService: AuthService\r\n ) { }\r\n\r\n ngOnInit() {\r\n this.loadExports();\r\n }\r\n\r\n toggelCreatedActivated() {\r\n this.createdActivated = !this.createdActivated;\r\n }\r\n\r\n onSelect(event: TypeaheadMatch): void {\r\n this.selectedOption = event.item;\r\n this.export = event.item;\r\n this.exportID = this.selectedOption.id;\r\n this.vesselName = this.selectedOption.vessel.name;\r\n this.BOLDate = this.selectedOption.bolDate;\r\n this.lifter = this.selectedOption.lifters.name;\r\n this.terminalName = this.selectedOption.lifters.terminals.name;\r\n this.vesselArrived = this.selectedOption.eta;\r\n this.lifterImage = '../' + this.selectedOption.lifters.lifterPhotoUrl;\r\n this.landingNetVolumeInBBLS = this.selectedOption.actualCargo;\r\n this.hasExporRecord = true;\r\n }\r\n\r\n loadExports() {\r\n this.exportService.getAllExports().subscribe(\r\n (exports: Export[]) => {\r\n this.exports = exports;\r\n },\r\n error => {\r\n this.alertify.error(error);\r\n }\r\n );\r\n }\r\n\r\n excessWaterModel: any = {};\r\n createdExcessWater: any = {};\r\n claimReceived: number;\r\n vesselExperienceFactor: number;\r\n freeWaterMeasuredOnArrival: number;\r\n terminalBsmw: number;\r\n sedimentWaterArrival: number;\r\n totalExcessFreeWater: number = 0;\r\n unitSalesValue: number;\r\n totalValueLoss: number = 0;\r\n saveInitialExcessWaterDetail() {\r\n if (this.isNullOrEmptyOrUndefined(this.totalExcessFreeWater)) {\r\n this.alertify.error('Error Calculate the Excess Water Volume (in barrels or metric tons) Can not be Zero.');\r\n return;\r\n }\r\n this.excessWaterModel.claimReceived = this.claimReceived;\r\n this.excessWaterModel.vesselExperienceFactor = this.vesselExperienceFactor;\r\n this.excessWaterModel.freeWaterMeasuredOnArrival = this.freeWaterMeasuredOnArrival;\r\n this.excessWaterModel.terminalBsmw = this.terminalBsmw;\r\n this.excessWaterModel.sedimentWaterArrival = this.sedimentWaterArrival;\r\n this.excessWaterModel.totalExcessFreeWater = this.totalExcessFreeWater;\r\n this.excessWaterModel.unitSalesValue = this.unitSalesValue;\r\n this.excessWaterModel.totalValueLoss = this.totalValueLoss;\r\n this.excessWaterModel.exportId = this.export.id;\r\n this.excessWaterModel.dateCreated = new Date();\r\n this.excessWaterModel.dateUpdated = new Date();\r\n console.log(this.excessWaterModel.exportId);\r\n\r\n this.exportService.createExcessWater(this.excessWaterModel)\r\n .subscribe(\r\n (excessWaterData: any) => {\r\n this.createdExcessWater = excessWaterData;\r\n this.alertify.success('Excess Water Data Successfully Added');\r\n this.createdActivated = false;\r\n },\r\n error => {\r\n this.alertify.error('Error Creating Excess Water Data');\r\n }\r\n );\r\n }\r\n\r\n\r\n //Restrict input to numbers and a single decimal points \r\n decimalKeyPressValidations(event: KeyboardEvent) {\r\n const allowedKeys = ['1', '2', '3', '4', '5', '6', '7', '8', '9', '0', '.'];\r\n if (!allowedKeys.includes(event.key)) {\r\n event.preventDefault();\r\n }\r\n //prevent more then one decimal point\r\n const inputElement = event.target as HTMLInputElement;\r\n if (event.key === '.' && inputElement.value.includes('.')) {\r\n event.preventDefault();\r\n }\r\n }\r\n\r\n decimalInputValidations(event: any, modelInputType: any) {\r\n const inputElement = event.target as HTMLInputElement;\r\n const value = inputElement.value;\r\n //check if the num has more than 3 decimal places\r\n const decimalMatch = value.match(/^\\d+(\\.\\d{0,3})?/);\r\n if (decimalMatch) {\r\n switch (modelInputType) {\r\n case \"ClaimReceived\":\r\n inputElement.value = decimalMatch[0];\r\n this.claimReceived = parseFloat(inputElement.value);\r\n break;\r\n case \"FreeWaterMeasuredOnArrival\":\r\n inputElement.value = decimalMatch[0];\r\n this.freeWaterMeasuredOnArrival = parseFloat(inputElement.value);\r\n break;\r\n case \"TerminalBsmw\":\r\n inputElement.value = decimalMatch[0];\r\n this.terminalBsmw = parseFloat(inputElement.value);\r\n break;\r\n case \"SedimentWaterArrival\":\r\n inputElement.value = decimalMatch[0];\r\n this.sedimentWaterArrival = parseFloat(inputElement.value);\r\n break;\r\n case \"TotalExcessFreeWater\":\r\n inputElement.value = decimalMatch[0];\r\n this.totalExcessFreeWater = parseFloat(inputElement.value);\r\n }\r\n }\r\n }\r\n\r\n calculateExcessFreeWaterValue() {\r\n this.totalExcessFreeWater = 0;\r\n if (!this.isNullOrEmptyOrUndefined(this.freeWaterMeasuredOnArrival) || !this.isNullOrEmptyOrUndefined(this.terminalBsmw)\r\n || !this.isNullOrEmptyOrUndefined(this.sedimentWaterArrival)) {\r\n return this.totalExcessFreeWater = ((!this.isNullOrEmptyOrUndefined(this.freeWaterMeasuredOnArrival) ? (parseFloat(this.freeWaterMeasuredOnArrival.toString())) : 0) - (!this.isNullOrEmptyOrUndefined(this.terminalBsmw) ? (parseFloat(this.terminalBsmw.toString())) : 0)\r\n + (!this.isNullOrEmptyOrUndefined(this.sedimentWaterArrival) ? (parseFloat(this.sedimentWaterArrival.toString())) : 0));\r\n }\r\n }\r\n\r\n isNullOrEmptyOrUndefined(value: any) {\r\n if (value == null || value == '' || value == undefined || value == 0) {\r\n return true;\r\n } else {\r\n return false;\r\n }\r\n }\r\n\r\n calTotalExcessFreeWaterLossValue() {\r\n this.totalValueLoss = 0;\r\n if (!this.isNullOrEmptyOrUndefined(this.unitSalesValue) || !this.isNullOrEmptyOrUndefined(this.totalExcessFreeWater)) {\r\n return this.totalValueLoss = (((!this.isNullOrEmptyOrUndefined(this.unitSalesValue) ? (parseFloat(this.unitSalesValue.toString())) : 0)\r\n * (!this.isNullOrEmptyOrUndefined(this.totalExcessFreeWater) ? (parseFloat(this.totalExcessFreeWater.toString())) : 0)));\r\n }\r\n }\r\n}\r\n","
\r\n
    \r\n
  1. \r\n Excess Water Home\r\n
  2. \r\n
\r\n \r\n
Excess Water Claim List
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n View Cargo Page\r\n
\r\n
\r\n \"\"\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
{{vesselName | uppercase}}
\r\n
\r\n
\r\n \r\n
{{BOLDate | date}}
\r\n
\r\n
\r\n \r\n
{{lifter | uppercase}}
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
{{terminalName | uppercase}}
\r\n
\r\n
\r\n \r\n
{{laycanTime | date:'medium'}}
\r\n
\r\n
\r\n \r\n
{{landingNetVolumeInBBLS | number}} BBL.
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n Enter upto 3 decimal points\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n Enter upto 3 decimal points\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n Enter upto 3 decimal points\r\n
\r\n
\r\n \r\n \r\n Enter upto 3 decimal points\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n
","import { Component, OnInit, TemplateRef } from '@angular/core';\r\nimport { BsModalService, BsModalRef } from 'ngx-bootstrap/modal';\r\nimport { ExportService } from '../../_services/export.service';\r\nimport { AlertifyService } from '../../_services/alertify.service';\r\nimport { Router } from '@angular/router';\r\nimport { AuthService } from '../../_services/auth.service';\r\nimport { Terminal } from 'src/app/_models/terminal';\r\nimport { Product } from 'src/app/_models/product';\r\nimport { Lifter } from 'src/app/_models/lifter';\r\nimport { CargoType } from 'src/app/_models/cargotype';\r\nimport { Vessel } from 'src/app/_models/Vessel';\r\nimport { ExcessWater } from 'src/app/_models/excesswater';\r\nimport { Export } from 'src/app/_models/export';\r\nimport { PaginatedResult, Pagination } from '../../_models/pagination';\r\n\r\n@Component({\r\n selector: \"app-open-excess-water-list\",\r\n templateUrl: \"./open-excess-water-list.component.html\",\r\n styleUrls: [\"./open-excess-water-list.component.css\"]\r\n})\r\nexport class OpenExcessWaterListComponent implements OnInit {\r\n openExcessWater: any[];\r\n filteredOpenExcessWater: any[];\r\n today = Date.now();\r\n modalRef: BsModalRef;\r\n demurrageStatus: any[];\r\n selectedStatusId: any;\r\n selectedDemurrage: any = {};\r\n statusId = 1;\r\n model: any;\r\n\r\n terminals: Terminal[];\r\n products: Product[];\r\n lifters: Lifter[];\r\n cargotypes: CargoType[];\r\n vesselNames: any[];\r\n dateRange: any;\r\n enableLoader = true;\r\n\r\n demurrageToUpdate: number;\r\n\r\n // Filter \r\n filterModel: {\r\n productName: string;\r\n lifterName: string;\r\n terminalName: string;\r\n vesselName: string;\r\n dateRange: string\r\n } = {\r\n vesselName: '',\r\n terminalName: '',\r\n lifterName: '',\r\n productName: '',\r\n dateRange: ''\r\n };\r\n\r\n constructor(\r\n private modalService: BsModalService,\r\n private exportService: ExportService,\r\n private alertify: AlertifyService,\r\n private route: Router,\r\n private authService: AuthService\r\n ) { }\r\n\r\n ngOnInit() {\r\n this.pageNumber = 1;\r\n this.pageSize = 10;\r\n this.loadOpenExcessWaterClaims(this.pageNumber, this.pageSize);\r\n this.loadVessels();\r\n this.loadTerminals();\r\n this.loadLifters();\r\n this.loadProducts();\r\n }\r\n\r\n loadOpenExcessWaterClaims(pn: any, ps: any) {\r\n this.exportService.getExcessWaterWithOpenClaims(pn, ps).subscribe(\r\n (excesswaters: PaginatedResult) => {\r\n this.openExcessWater = excesswaters.result;\r\n this.filteredOpenExcessWater = this.openExcessWater;\r\n this.pagination = excesswaters.pagination;\r\n this.enableLoader = false;\r\n },\r\n (error) => {\r\n this.alertify.error(\"Something went wrong loading excess water claims\");\r\n this.enableLoader = false;\r\n }\r\n );\r\n }\r\n\r\n loadVessels() {\r\n this.exportService.getVessels().subscribe(\r\n (vessels: Vessel[]) => {\r\n this.vesselNames = vessels;\r\n },\r\n error => {\r\n this.alertify.error(error);\r\n }\r\n );\r\n }\r\n onSelect() {\r\n }\r\n loadCargoTypes() {\r\n this.exportService.getCargoTypes().subscribe(\r\n (cargotypes: CargoType[]) => {\r\n this.cargotypes = cargotypes;\r\n },\r\n error => {\r\n this.alertify.error(error);\r\n }\r\n );\r\n }\r\n loadTerminals() {\r\n this.exportService.getTerminals().subscribe(\r\n (terminals: Terminal[]) => {\r\n this.terminals = terminals;\r\n },\r\n error => {\r\n this.alertify.error(error);\r\n }\r\n );\r\n }\r\n loadProducts() {\r\n this.exportService.getProducts().subscribe(\r\n (products: Product[]) => {\r\n this.products = products;\r\n },\r\n error => {\r\n this.alertify.error(error);\r\n }\r\n );\r\n }\r\n loadLifters() {\r\n this.exportService.getLifters().subscribe(\r\n (lifters: Lifter[]) => {\r\n this.lifters = lifters;\r\n },\r\n error => {\r\n this.alertify.error(error);\r\n }\r\n );\r\n }\r\n runQuery() {\r\n this.reloadOpenExcessWaterClaims();\r\n }\r\n\r\n deleteItemId: any;\r\n openExcessWaterClaimModal(template: TemplateRef, id: number) {\r\n this.modalRef = this.modalService.show(template);\r\n this.deleteItemId = id;\r\n }\r\n\r\n deleteExcessWaterClaim() {\r\n this.enableLoader = true;\r\n this.exportService.deleteExcessWaterClaim(this.deleteItemId).subscribe(\r\n () => {\r\n this.alertify.success('Excess Water Claim Successfully Deleted');\r\n this.loadOpenExcessWaterClaims(this.pageNumber, this.pageSize);\r\n this.modalRef.hide();\r\n }, error => {\r\n this.alertify.error(error);\r\n this.enableLoader = false;\r\n }\r\n );\r\n }\r\n\r\n clearFilters() {\r\n\r\n this.filterModel.terminalName = null;\r\n this.filterModel.productName = null;\r\n this.filterModel.lifterName = null;\r\n this.filterModel.dateRange = null;\r\n this.filterModel.vesselName = null;\r\n this.loadOpenExcessWaterClaims(this.pageNumber, this.pageSize);\r\n }\r\n\r\n //Pagination Variables\r\n pagination: Pagination;\r\n pageNumber: number;\r\n pageSize: number;\r\n pageChanged(event: any): void {\r\n this.pagination.currentPage = event.page;\r\n this.reloadOpenExcessWaterClaims();\r\n }\r\n\r\n reloadOpenExcessWaterClaims() {\r\n this.exportService.getExcessWaterWithOpenClaims(\r\n this.pagination.currentPage,\r\n this.pagination.itemsPerPage,\r\n this.filterModel.vesselName,\r\n this.filterModel.terminalName,\r\n this.filterModel.lifterName,\r\n this.filterModel.productName\r\n ).subscribe(\r\n (excesswaters: PaginatedResult) => {\r\n this.openExcessWater = excesswaters.result;\r\n this.filteredOpenExcessWater = this.openExcessWater;\r\n this.pagination = excesswaters.pagination;\r\n this.enableLoader = false;\r\n },\r\n (error) => {\r\n this.alertify.error(\"Something went wrong loading excess water claims\");\r\n this.enableLoader = false;\r\n }\r\n );\r\n }\r\n\r\n isDisabledClearFilter() {\r\n if ((this.filterModel.lifterName != null && this.filterModel.lifterName != \"\")\r\n || (this.filterModel.productName != null && this.filterModel.productName != \"\")\r\n || (this.filterModel.terminalName != null && this.filterModel.terminalName != \"\")\r\n || (this.filterModel.vesselName != null && this.filterModel.vesselName != \"\")) {\r\n return false;\r\n }\r\n return true;\r\n }\r\n}\r\n","
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
#Cargo IDClaim RecievedTotal LossTotal Excess Free Water (BBL)TerminalLifterOpenAction
{{i + 1}}{{excessWater.export?.cargoNumber}} {{excessWater.export?.vessel?.name | uppercase}}{{excessWater?.claimReceived | currency}}{{excessWater?.totalValueLoss | currency}}{{excessWater?.totalExcessFreeWater}}{{excessWater.export?.terminals.name | uppercase}}{{excessWater.export?.lifters.name | uppercase}}{{excessWater.dateCreated | timeAgo}}\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n

Confirm Delete Action

\r\n
\r\n
\r\n Are you absolutely sure you want to delete this excess water claim
\r\n \r\n
\r\n
","import { Component, OnInit } from '@angular/core';\r\nimport { Export } from '../_models/export';\r\nimport { ExportService } from '../_services/export.service';\r\nimport { AlertifyService } from '../_services/alertify.service';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport { Status } from '../_models/status';\r\nimport { ExportNode } from '../_models/exportnode';\r\nimport { NodeComment } from '../_models/nodecomment';\r\nimport { NodeStatus } from '../_models/nodestatus';\r\n\r\n@Component({\r\n selector: \"app-export-actions-list-update-view\",\r\n templateUrl: \"./export-actions-list-update-view.component.html\",\r\n styleUrls: [\"./export-actions-list-update-view.component.css\"]\r\n})\r\nexport class ExportActionsListUpdateViewComponent implements OnInit {\r\n export: Export;\r\n exportId: number;\r\n nodeElementId: number;\r\n nodeStatusId: number;\r\n exportnode: ExportNode;\r\n\r\n constructor(\r\n private exportService: ExportService,\r\n private alertify: AlertifyService,\r\n private route: ActivatedRoute\r\n ) {}\r\n\r\n ngOnInit() {\r\n this.exportId = this.route.params['_value'].exportId;\r\n this.nodeElementId = this.route.params['_value'].id;\r\n this.loadExport();\r\n this.loadExportNode(this.exportId, this.nodeElementId);\r\n }\r\n\r\n loadExport() {\r\n this.exportService.getExport(+this.route.snapshot.params['exportId']).subscribe((exports: Export) => {\r\n this.export = exports;\r\n }, error => {\r\n this.alertify.error(error);\r\n });\r\n }\r\n\r\n loadExportNode(eId, neId) {\r\n this.exportService.getExportNode(eId, neId).subscribe(\r\n (exportnodes: ExportNode) => {\r\n this.exportnode = exportnodes;\r\n },\r\n error => {\r\n this.alertify.error(error);\r\n }\r\n );\r\n }\r\n\r\n}\r\n","
\r\n
    \r\n
  1. \r\n Home\r\n
  2. \r\n
  3. \r\n Export\r\n
  4. \r\n
  5. Edit
  6. \r\n
  7. Action
  8. \r\n
\r\n\r\n
\r\n
\r\n

{{export?.vessel['name']}}

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \"\"\r\n
\r\n
\r\n Date Range\r\n

{{export?.dateRangeStart | date:'mediumDate'}} | {{export?.dateRangeEnd | date:'mediumDate'}}

\r\n
\r\n
\r\n Lifter\r\n

{{export?.lifters.name}}

\r\n
\r\n
\r\n ETA\r\n

{{export?.eta | date:'mediumDate'}}

\r\n
\r\n
\r\n STATUS\r\n

{{ export['status'].label }}

\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
","import { Component, OnInit, Input } from '@angular/core';\r\nimport { Export } from '../_models/export';\r\nimport { ExportService } from '../_services/export.service';\r\nimport { AlertifyService } from '../_services/alertify.service';\r\nimport { Router } from '@angular/router';\r\nimport { AuthService } from '../_services/auth.service';\r\n@Component({\r\n selector: 'app-export-card',\r\n templateUrl: './export-card.component.html',\r\n styleUrls: ['./export-card.component.css']\r\n})\r\nexport class ExportCardComponent implements OnInit {\r\n @Input() export: Export;\r\n loginUserId: number;\r\n isAdmin: boolean; \r\n\r\n constructor(\r\n private exportService: ExportService,\r\n private alertify: AlertifyService,\r\n private route: Router,\r\n private authService: AuthService,\r\n \r\n ) { }\r\n\r\n ngOnInit() {\r\n\r\n this.loginUserId = this.authService.decodedToken.nameid;\r\n this.isAdmin = this.authService.decodedToken.role === 'Admin' ? true : false;\r\n\r\n }\r\n OpenConfirm(id : number)\r\n {\r\n this.alertify.confirm('Are You sure you want to delete the selected export?', () => {\r\n \r\n console.log(\"test\",id);\r\n this.exportService.deleteExport(id)\r\n .subscribe(\r\n () => {\r\n this.alertify.success('Export Deleted Successfully');\r\n this.route.navigate([\"/export\"]);\r\n },\r\n error => {\r\n this.alertify.error('Server Error Unable to Delete Export');\r\n }\r\n );\r\n\r\n });\r\n\r\n const okButton = document.querySelector('.ajs-ok');\r\n const cancelButton = document.querySelector('.ajs-cancel');\r\n if(okButton)\r\n {\r\n okButton.setAttribute('style','background-color:limegreen; color: white; border-radius:5px;')\r\n cancelButton.setAttribute('style','background-color:white; color: black;border-radius:5px;')\r\n }\r\n }\r\n}\r\n","
\r\n
{{export?.vessel?.name ?? export?.vessel?.name | uppercase}}
\r\n \r\n
\r\n
{{export?.cargoNumber}}
\r\n \r\n
ETA : {{export?.eta | date}}
\r\n
{{export?.cargoTypes?.name}}
\r\n
    \r\n
  • {{ export?.lifters?.name | uppercase}} - {{ export?.terminals?.name | uppercase}}
  • \r\n
  • {{export?.dateRangeStart | date:' d MMM'}} - {{export?.dateRangeEnd | date:'d MMM, y'}}
  • \r\n \r\n
  • {{export?.status?.label}}

    \r\n \r\n
    \r\n \r\n

    Delete

    \r\n
    \r\n \r\n \r\n
    \r\n
  • \r\n \r\n
\r\n
\r\n \r\n
","import { Component, OnInit, TemplateRef, Output, EventEmitter } from '@angular/core';\r\nimport { BsModalService, BsModalRef } from 'ngx-bootstrap/modal';\r\nimport { TypeaheadMatch } from 'ngx-bootstrap/typeahead';\r\nimport { ExportService } from '../_services/export.service';\r\nimport { AlertifyService } from '../_services/alertify.service';\r\nimport { Router } from '@angular/router';\r\nimport { AuthService } from '../_services/auth.service';\r\nimport { Lifter } from '../_models/lifter';\r\nimport { CargoType } from '../_models/cargotype';\r\nimport { Consignee } from '../_models/consignee';\r\nimport { Destination } from '../_models/destination';\r\nimport { Inspector } from '../_models/inspector';\r\nimport { UntypedFormGroup } from '@angular/forms';\r\nimport { Terminal } from '../_models/terminal';\r\nimport { Product } from '../_models/product';\r\nimport { VesselAgent } from '../_models/vesselagent';\r\nimport { Consignor } from '../_models/consignor';\r\nimport { Vessel } from '../_models/Vessel';\r\nimport { DateService } from '../_services/date.service';\r\n\r\n@Component({\r\n selector: 'app-export-create',\r\n templateUrl: './export-create.component.html',\r\n styleUrls: ['./export-create.component.css']\r\n})\r\nexport class ExportCreateComponent implements OnInit {\r\n\r\n @Output() closeCreateExportForm = new EventEmitter();\r\n\r\n modalRef: BsModalRef;\r\n addExportForm: UntypedFormGroup;\r\n\r\n terminals: Terminal[];\r\n products: Product[];\r\n productCombinations: Product[];\r\n lifters: Lifter[];\r\n cargotypes: CargoType[];\r\n consignees: Consignee[];\r\n // Data\r\n model: any = {};\r\n modelForExportData: any = {};\r\n vessel: any = {};\r\n inspector: any = {};\r\n userId: number;\r\n vessels: any[];\r\n vesselList: string[] = ['None'];\r\n destinationList: any = {};\r\n InspectorList: any = {};\r\n vesselAgentList: any = {};\r\n consignorsList: any = {};\r\n // vesselagents: any = {};\r\n selectedValue: string;\r\n selectedOption: any;\r\n\r\n selectedDestinationValue: string;\r\n selectedDestinationOption: any;\r\n\r\n selectedInspectorValue: string;\r\n selectedInspectorOption: any;\r\n\r\n hasDestination = false;\r\n hasVessel = false;\r\n hasInspector = false;\r\n\r\n isCreateMode = false;\r\n\r\n // Vessel Model\r\n public vesselToAddModel = {\r\n name: null,\r\n dwt: null,\r\n flag: null,\r\n IMONumber:null\r\n };\r\n public inspeectorToAddModel = {\r\n name: null\r\n };\r\n public vesselAgentToAddModel = {\r\n name: null\r\n };\r\n public consigneeToAddModel = {\r\n name: null,\r\n terminalId: null\r\n };\r\n consignorToAddModel: any = {};\r\n destinationToAddModel: any = {};\r\n\r\n productForSelectedTerminal: Product[];\r\n //Feature-1\r\n showNomintationInfo: boolean;\r\n showProductCom : Boolean;\r\n\r\n constructor(\r\n private modalService: BsModalService,\r\n private exportService: ExportService,\r\n private alertify: AlertifyService,\r\n private route: Router,\r\n private authService: AuthService,\r\n private dateService: DateService\r\n ) { }\r\n\r\n ngOnInit() {\r\n this.loadTerminals();\r\n this.loadProducts();\r\n this.loadProductCombination();\r\n this.loadLifters();\r\n this.loadCargoTypes();\r\n this.loadConsignees();\r\n this.loadVessels();\r\n this.loadDestinations();\r\n this.loadInspectors();\r\n this.loadVesselAgents();\r\n this.loadConsignor();\r\n }\r\n createModeToggle() {\r\n this.isCreateMode = !this.isCreateMode;\r\n }\r\n loadTerminals() {\r\n this.exportService.getTerminals().subscribe(\r\n (terminals: Terminal[]) => {\r\n this.terminals = terminals;\r\n },\r\n error => {\r\n this.alertify.error(error);\r\n }\r\n );\r\n }\r\n loadProducts() {\r\n this.exportService.getProducts().subscribe(\r\n (products: Product[]) => {\r\n this.products = products;\r\n },\r\n error => {\r\n this.alertify.error(error);\r\n }\r\n );\r\n }\r\n loadProductCombination() {\r\n this.exportService.getProductCombination().subscribe(\r\n (products: Product[]) => {\r\n \r\n this.productCombinations = products;\r\n },\r\n error => {\r\n this.alertify.error(error);\r\n }\r\n );\r\n }\r\n loadVessels() {\r\n this.exportService.getVessels().subscribe(\r\n (vessels: Vessel[]) => {\r\n this.vessels = vessels;\r\n\r\n for (let i = 0; i < this.vessels.length; i++) {\r\n this.vesselList.push(\r\n String(this.vessels[i].name) +\r\n ' - ' +\r\n String(this.vessels[i].dwt) +\r\n ' - ' +\r\n String(this.vessels[i].flag)\r\n );\r\n }\r\n },\r\n error => {\r\n this.alertify.error(error);\r\n }\r\n );\r\n }\r\n loadLifters() {\r\n this.exportService.getLifters().subscribe(\r\n (lifters: Lifter[]) => {\r\n this.lifters = lifters;\r\n },\r\n error => {\r\n this.alertify.error(error);\r\n }\r\n );\r\n }\r\n loadLiftersForTerminal(id) {\r\n this.exportService.getLiftersForTerminal(id).subscribe(\r\n (lifters: Lifter[]) => {\r\n this.lifters = lifters;\r\n },\r\n error => {\r\n this.alertify.error(error);\r\n }\r\n );\r\n }\r\n loadCargoTypes() {\r\n this.exportService.getCargoTypes().subscribe(\r\n (cargotypes: CargoType[]) => {\r\n this.cargotypes = cargotypes;\r\n },\r\n error => {\r\n this.alertify.error(error);\r\n }\r\n );\r\n }\r\n loadCargoTypesForLifter(id) {\r\n this.exportService.getCargoTypeForLifer(id).subscribe(\r\n (cargotypes: CargoType[]) => {\r\n this.cargotypes = cargotypes;\r\n },\r\n error => {\r\n this.alertify.error(error);\r\n }\r\n );\r\n }\r\n loadConsignees() {\r\n this.exportService.getConsignee().subscribe(\r\n (consignees: Consignee[]) => {\r\n this.consignees = consignees;\r\n },\r\n error => {\r\n this.alertify.error(error);\r\n }\r\n );\r\n }\r\n loadDestinations() {\r\n this.exportService.getDestinations().subscribe(\r\n (destinations: Destination[]) => {\r\n this.destinationList = destinations;\r\n },\r\n error => {\r\n this.alertify.error(error);\r\n }\r\n );\r\n }\r\n loadInspectors() {\r\n this.exportService.getInspectors().subscribe(\r\n (inspectors: Inspector[]) => {\r\n this.InspectorList = inspectors;\r\n },\r\n error => {\r\n this.alertify.error(error);\r\n }\r\n );\r\n }\r\n loadVesselAgents() {\r\n this.exportService.getVesselAgents().subscribe(\r\n (vesselAgent: VesselAgent[]) => {\r\n this.vesselAgentList = vesselAgent;\r\n },\r\n error => {\r\n this.alertify.error(error);\r\n }\r\n );\r\n }\r\n loadConsignor() {\r\n this.exportService.getConsignor().subscribe(\r\n (consignors: Consignor[]) => {\r\n this.consignorsList = consignors;\r\n },\r\n error => {\r\n this.alertify.error(error);\r\n }\r\n );\r\n }\r\n\r\n openModal(template: TemplateRef) {\r\n this.modalRef = this.modalService.show(template);\r\n }\r\n\r\n closeModal() {\r\n this.modalRef.hide();\r\n this.modalRef = null;\r\n }\r\n // Method on the confirm modal to confirm if export data should be added\r\n confirmSave() {\r\n this.userId = this.authService.decodedToken.nameid;\r\n\r\n this.alertify.confirm('Are You sure', () => {\r\n this.tranformExportData(); // Trasform the export data for api\r\n\r\n //VALIDATION: \r\n // let isMatch = this.model.nominatedVolume.value.includes('.');//new RegExp('(?:^|\\\\s)'+'.', 'i').test(this.model.nominatedVolume);\r\n // console.log(\"nominatedVal\",isMatch);\r\n if(/\\./.test(this.model.nominatedVolume)) \r\n {\r\n if(this.model.terminalID == 5 && this.model.productID == 7 || this.model.productID ==8)\r\n {\r\n \r\n }else{\r\n this.alertify.error('Nomination volmue does not accept decimal points for the selected terminal.');\r\n return;\r\n }\r\n }\r\n\r\n\r\nconsole.log(\"respo\",this.modelForExportData);\r\n this.exportService\r\n .createExport(this.modelForExportData, this.userId)\r\n .subscribe(\r\n () => {\r\n this.alertify.success('Export Successfully Created');\r\n },\r\n error => {\r\n this.alertify.error('Server Error Unable to Create Export');\r\n }\r\n );\r\n\r\n // this.route.navigate([\"/dash-board\"]);\r\n });\r\n }\r\n // Method called on clicking the submit button of the addExporForm\r\n addExport() {\r\n this.confirmSave();\r\n }\r\n tranformExportData() {\r\n this.modelForExportData.cargoNumber = this.model.cargoNumber;\r\n this.modelForExportData.terminalsId = this.model.terminalID;\r\n this.modelForExportData.productsId = this.model.productID;\r\n this.modelForExportData.liftersId = this.model.lifterID;\r\n this.modelForExportData.norminatedCargo = this.model.nominatedVolume;\r\n\r\n this.modelForExportData.productCombinationId = this.model.productCombinationId;\r\n this.modelForExportData.transmixVolume = this.model.transmixVolume;\r\n\r\n // this.modelForExportData.destinationid = 1; // Set the Desination id to detail of TBD\r\n this.modelForExportData.vesselAgentid = 1; // Set the vessel Agent to TBN\r\n this.modelForExportData.comment = this.model.comment;\r\n // this.modelForExportData.vessels = this.model.vesselName;\r\n // this.modelForExportData.vessels.flag = this.model.flagOfVessel;\r\n // this.modelForExportData.vessels.dwt = this.model.DWTofVessel;\r\n this.modelForExportData.cargoTypeID = this.model.cargoTypeID;\r\n // this.modelForExportData.dateRangeStart = this.model.dateRange[0];\r\n this.modelForExportData.dateRangeStart = this.dateService.urlDate(this.model.dateRange[0]);\r\n // this.modelForExportData.dateRangeEnd = this.model.dateRange[1];\r\n this.modelForExportData.dateRangeEnd = this.dateService.urlDate(this.model.dateRange[1]);\r\n // this.modelForExportData.eta = this.model.ETA;\r\n this.modelForExportData.eta = this.dateService.urlDate(this.model.ETA);\r\n this.modelForExportData.consigneeId = this.model.consigneeID;\r\n this.modelForExportData.usersId = this.authService.decodedToken.nameid;\r\n // this.modelForExportData.inspectorId = this.model.inspectorId;\r\n // this.modelForExportData.consigneeId = this.model.consigneeId;\r\n // if (!this.hasDestination) {\r\n // this.modelForExportData.destination = this.model.destination;\r\n // }\r\n this.modelForExportData.consigneeID = this.model.consigneeID;\r\n\r\n // if (!this.hasVessel) {\r\n // this.vessel.name = this.model.vesselName;\r\n // this.vessel.flag = this.model.flagOfVessel;\r\n // this.vessel.dwt = this.model.DWTofVessel;\r\n // this.modelForExportData.vessel = this.vessel;\r\n // }\r\n\r\n // if (!this.hasInspector) {\r\n // this.inspector.name = this.model.inspector;\r\n // // this.vesselagent.name = this.model.vesselagent;\r\n // this.modelForExportData.inspector = this.inspector;\r\n // }\r\n\r\n // this.vesselagents.name = this.model.vesselAgents; // Get details from form field assign to as object\r\n // this.modelForExportData.vesselagent = this.vesselagents; // Add Object to form to be sent to API\r\n\r\n }\r\n\r\n onSelectVessel(event: TypeaheadMatch): void {\r\n this.selectedOption = event.item;\r\n this.vessel = this.selectedOption;\r\n this.modelForExportData.vesselId = this.vessel.id;\r\n this.model.flagOfVessel = this.vessel.flag;\r\n this.model.DWTofVessel = this.vessel.dwt;\r\n this.hasVessel = true;\r\n }\r\n onSelectDestination(event: TypeaheadMatch): void {\r\n this.modelForExportData.destinationid = event.item.id;\r\n this.hasDestination = true;\r\n }\r\n onSelectInspector(event: TypeaheadMatch): void {\r\n this.modelForExportData.inspectorId = event.item.id;\r\n this.hasInspector = true;\r\n }\r\n onSelectConsignor(event: TypeaheadMatch): void {\r\n this.modelForExportData.consignorId = event.item.id;\r\n }\r\n\r\n onSelectProduct(e) {\r\n this.onProductChange();\r\n if (e == 3) {\r\n this.model.cargoTypeID = 1;\r\n }\r\n // Diesel Export\r\n if (e == 4) {\r\n this.model.nominatedVolume = 310000;\r\n }\r\n if (e == 5) {\r\n this.model.nominatedVolume = 420000;\r\n }\r\n if (e == 6) {\r\n this.model.nominatedVolume = 250000;\r\n }\r\n }\r\n//Feature -1\r\nonProductChange()\r\n{\r\n this.showNomintationInfo = this.model.productID == 7 || this.model.productID == 8 ? true : false;\r\n}\r\n onTerminalChange(e) {\r\n\r\n this.loadProductForTerminal(this.model.terminalID);\r\n this.showNomintationInfo =false; //FEATURE 1\r\n this.showProductCom =false; //FEATURE 2\r\n if (this.model.terminalID == 2) {\r\n this.model.cargoNumber = 'AGB-';\r\n this.model.nominatedVolume = 975000;\r\n this.model.productID = 1;\r\n this.model.lifterID = 1;\r\n this.model.flagOfVessel = \"TBA\";\r\n this.model.DWTofVessel = \"TBA\";\r\n // this.model.cargoTypeID = 2;\r\n this.loadCargoTypesForLifter(this.model.lifterID);\r\n }\r\n if (this.model.terminalID == 3) {\r\n this.model.cargoNumber = \"ESC-\";\r\n this.model.nominatedVolume = 9500000;\r\n this.model.productID = 2;\r\n this.model.lifterID = 1;\r\n // this.model.cargoTypeID = 1;\r\n this.loadCargoTypesForLifter(this.model.lifterID);\r\n }\r\n if (this.model.terminalID == 4) {\r\n this.model.cargoNumber = \"EP-\";\r\n this.model.nominatedVolume = 440000;\r\n // this.model.cargoTypeID = 8;\r\n this.model.lifterID = 11;\r\n this.model.productID = 4;\r\n this.loadCargoTypesForLifter(this.model.lifterID);\r\n this.showProductCom =true;\r\n }\r\n if (this.model.terminalID == 1) {\r\n this.model.cargoNumber = \"USAN-000\";\r\n this.model.nominatedVolume = 1000000;\r\n // this.model.cargoTypeID = 16;\r\n this.model.lifterID = 10;\r\n this.model.productID = 3;\r\n this.loadCargoTypesForLifter(this.model.lifterID);\r\n }\r\n if (this.model.terminalID == 5) {\r\n this.model.cargoNumber = \"LPG-\";\r\n this.model.nominatedVolume = 30000;\r\n this.model.productID = 7;\r\n this.model.lifterID = 13;\r\n // this.model.cargoTypeID = 16;\r\n this.loadCargoTypesForLifter(this.model.lifterID);\r\n\r\n //FEATURE - 1\r\n this.showNomintationInfo = true;\r\n }\r\n this.loadLiftersForTerminal(e);\r\n }\r\n\r\n\r\n\r\n loadProductForTerminal(id) {\r\n this.exportService.getProductsForTerminal(id).subscribe(\r\n (products: Product[]) => {\r\n this.products = products;\r\n },\r\n error => {\r\n this.alertify.error('Unable to Load Products For Terminal');\r\n }\r\n );\r\n }\r\n onSelectLifter(e) {\r\n this.loadCargoTypesForLifter(e);\r\n }\r\n\r\n addNewVessel() {\r\n this.exportService.createVessel(this.vesselToAddModel).subscribe(\r\n () => {\r\n this.alertify.success('New Vessel Created');\r\n this.loadVessels();\r\n this.modalRef.hide();\r\n },\r\n error => {\r\n this.alertify.error('Unable to Create Vessel or Vessel already exist');\r\n }\r\n );\r\n // this.ngOnInit();\r\n }\r\n\r\n addNewInspector() {\r\n this.exportService.createInspector(this.inspeectorToAddModel).subscribe(\r\n () => {\r\n this.loadInspectors();\r\n this.alertify.success('New Inspector Created');\r\n this.modalRef.hide();\r\n },\r\n error => {\r\n this.alertify.error('Unable to Create Inspector or inspector already exist');\r\n }\r\n );\r\n }\r\n\r\n addNewVesselAgent() {\r\n this.exportService.createVesselAgent(this.vesselAgentToAddModel).subscribe(\r\n () => {\r\n this.loadVesselAgents();\r\n this.alertify.success('New Vessel Agent Created');\r\n this.modalRef.hide();\r\n },\r\n error => {\r\n this.alertify.error('Unable to Create Vessel Agent or vessel Agent already exist');\r\n }\r\n );\r\n }\r\n addNewConsignee() {\r\n this.exportService.createConsignee(this.consigneeToAddModel).subscribe(\r\n () => {\r\n this.loadConsignees();\r\n this.alertify.success('New Consignee Created');\r\n this.modalRef.hide();\r\n },\r\n error => {\r\n this.alertify.error('Unable to Create Consignee or Consignee already exist');\r\n }\r\n );\r\n }\r\n addNewConsignor() {\r\n this.exportService.createConsignor(this.consignorToAddModel).subscribe(\r\n () => {\r\n this.loadConsignor();\r\n this.alertify.success('New Consignor Created');\r\n this.modalRef.hide();\r\n },\r\n error => {\r\n this.alertify.error('Unable to Create Consignor or Consignor already exist');\r\n }\r\n );\r\n }\r\n addNewDestination() {\r\n this.exportService.createDestination(this.destinationToAddModel).subscribe(\r\n () => {\r\n this.loadDestinations();\r\n this.alertify.success('New Destinartion Created');\r\n this.modalRef.hide();\r\n },\r\n error => {\r\n this.alertify.error('Unable to Create Destination OR desination already exist');\r\n }\r\n );\r\n }\r\n\r\n cancel() {\r\n this.closeCreateExportForm.emit(false);\r\n }\r\n\r\n //Nomination volume valiations\r\n //Restrict input to numbers and a single decimal points \r\n onNominationValPress(event: KeyboardEvent)\r\n {\r\n if(this.model.terminalID ==5 && this.model.productID == 7 || this.model.productID == 8)\r\n {\r\n this.DecimalPressValidations(event);\r\n \r\n }\r\n else if(this.model.terminalID ==4)\r\n {\r\n this.DecimalPressValidations(event);\r\n }\r\n }\r\n\r\n//Restrict the number of decimal places to 3\r\n onNomibationInput(event: any)\r\n {\r\n if(this.model.terminalID ==5 && this.model.productID == 7 || this.model.productID == 8)\r\n {\r\n this.DecimalInputValidations(event);\r\n }\r\n else if(this.model.terminalID ==4)\r\n {\r\n this.DecimalInputValidations(event);\r\n }\r\n }\r\n //DECIMAL POINTS VALIDTIONS\r\n DecimalPressValidations(event)\r\n{\r\n const allowedKeys = ['1','2','3','4','5','6','7','8','9','0','.'];\r\n if(!allowedKeys.includes(event.key))\r\n {\r\n event.preventDefault();\r\n }\r\n //prevent more then one decimal point\r\n const inputElement = event.target as HTMLInputElement;\r\n if(event.key ==='.' && inputElement.value.includes('.'))\r\n {\r\n event.preventDefault();\r\n }\r\n}\r\n DecimalInputValidations(event)\r\n {\r\n const inputElement = event.target as HTMLInputElement;\r\n const value = inputElement.value;\r\n //check if the num has more than 3 decimal places\r\n const decimalMatch = value.match(/^\\d+(\\.\\d{0,3})?/);\r\n if(decimalMatch)\r\n {\r\n inputElement.value =decimalMatch[0]; //set value with only up to 3 decimal places\r\n }\r\n }\r\n}\r\n","
\r\n
\r\n Create New Export\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n\r\n {{ model?.terminalID == 5 && model.productID == 7 || model.productID == 8 ? 'Enter upto 3 decimal points' : showNomintationInfo == true ? 'Enter upto 3 decimal points 2':''}}\r\n \r\n
\r\n \r\n \r\n
\r\n \r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n\r\n Enter upto 3 decimal points.\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n

Add New Vessel

\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n

Add Agent

\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n

Add Inspector

\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n

Add Consignee

\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n

Add Consignor

\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n

Add Destination

\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
","import { Component, OnInit, Input } from '@angular/core';\r\nimport { ExportService } from '../_services/export.service';\r\nimport { AlertifyService } from '../_services/alertify.service';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { ExportNode } from '../_models/exportnode';\r\nimport { Export } from '../_models/export';\r\n\r\n@Component({\r\n selector: 'app-export-detail-action',\r\n templateUrl: './export-detail-action.component.html',\r\n styleUrls: ['./export-detail-action.component.css']\r\n})\r\nexport class ExportDetailActionComponent implements OnInit {\r\n @Input() export: Export;\r\n nodes: Node[];\r\n exportNodes: ExportNode[];\r\n\r\n constructor(private exportService: ExportService, private alertify: AlertifyService,\r\n private route: ActivatedRoute, private nav: Router) {}\r\n\r\n ngOnInit() {\r\n this.loadNodes();\r\n this.loadExportNodes(this.export['id']);\r\n }\r\n\r\n loadNodes() {\r\n this.exportService.getNodes().subscribe((nodes: Node[]) => {\r\n this.nodes = nodes;\r\n }, error => {\r\n this.alertify.error(error);\r\n });\r\n }\r\n loadExportNodes(eId) {\r\n this.exportService.getExportNodes(eId).subscribe((exportnodes: ExportNode[]) => {\r\n this.exportNodes = exportnodes;\r\n }, error => {\r\n this.alertify.error(error);\r\n });\r\n }\r\n\r\n}\r\n","\r\n","import { Component, OnInit, Input } from '@angular/core';\r\nimport { Export } from '../_models/export';\r\nimport { Analyst } from '../_models/Analyst';\r\nimport { ExportService } from '../_services/export.service';\r\nimport { AlertifyService } from '../_services/alertify.service';\r\n\r\n@Component({\r\n selector: \"app-export-detail-analyst\",\r\n templateUrl: \"./export-detail-analyst.component.html\",\r\n styleUrls: [\"./export-detail-analyst.component.css\"]\r\n})\r\nexport class ExportDetailAnalystComponent implements OnInit {\r\n @Input()\r\n export: Export[];\r\n analyst: Analyst ;\r\n constructor(private exportService: ExportService,\r\n private alertify: AlertifyService) {}\r\n\r\n ngOnInit() {\r\n this.loadAnalyst();\r\n }\r\n\r\n loadAnalyst() {\r\n this.exportService.getExportAnalyst(1).subscribe(\r\n (analyst: Analyst) => {\r\n this.analyst = analyst;\r\n },\r\n error => {\r\n this.alertify.error(error);\r\n }\r\n );\r\n }\r\n}\r\n","
Analyst
\r\n
\r\n
\r\n
    \r\n
  • Name : {{ analyst?.firstName }} {{ analyst?.middleName }} {{ analyst?.lastName | uppercase }}
  • \r\n
  • Email: {{ analyst?.email}}
  • \r\n
  • Phone:{{ analyst?.phoneNumber}}
  • \r\n
  • Extension: {{analyst?.mobile}}
  • \r\n
  • Manager: {{ analyst?.managerId}}
  • \r\n
\r\n
\r\n
\r\n
\r\n \"Card\r\n
\r\n
Analyst : {{ analyst?.firstName }} {{ analyst?.middleName }} {{ analyst?.lastName | uppercase }}
\r\n
\r\n
\r\n
\r\n","import { Component, OnInit, Input } from '@angular/core';\r\nimport { Export } from '../_models/export';\r\nimport { AlertifyService } from '../_services/alertify.service';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { ExportService } from '../_services/export.service';\r\nimport { DocumentService } from '../_services/document.service';\r\nimport { saveAs } from 'file-saver';\r\n\r\n@Component({\r\n selector: 'app-export-detail-document',\r\n templateUrl: './export-detail-document.component.html',\r\n styleUrls: ['./export-detail-document.component.css']\r\n})\r\n\r\nexport class ExportDetailDocumentComponent implements OnInit {\r\n @Input() export: Export;\r\n\r\n exportDocs: any;\r\n\r\n constructor(private exportService: ExportService, private alertify: AlertifyService,\r\n private route: ActivatedRoute, private nav: Router, private documentService: DocumentService) { }\r\n\r\n ngOnInit() {\r\n this.loadExportDocs();\r\n }\r\n\r\n loadExportDocs() {\r\n this.exportService.getExportDocuments(this.export?.id).subscribe((documents: Document[]) => {\r\n this.exportDocs = documents;\r\n }, error => {\r\n this.alertify.error(error);\r\n });\r\n }\r\n\r\n downloadDocument(e: number, fileName: string) {\r\n this.documentService.download(e).subscribe(\r\n data => {\r\n // console.log(fileName);\r\n // console.log(data);\r\n // const FileSaver = require('file-saver');\r\n // FileSaver.saveAs(data, fileName);\r\n saveAs(data, fileName);\r\n this.alertify.success('Download Successful');\r\n },\r\n error => {\r\n this.alertify.error('Unable to Download Document');\r\n }\r\n );\r\n }\r\n downloadAll(documentArrayList: any[]) {\r\n for (let index = 0; index < documentArrayList.length; index++) {\r\n this.downloadDocument(documentArrayList[index].id, documentArrayList[index].fileName);\r\n }\r\n }\r\n\r\n}\r\n","\r\n\r\n
\r\n
\r\n
\r\n \"../../assets/xls.jpg\"\r\n
\r\n
\r\n
\r\n \r\n {{ exportDoc?.documentCategory.name}} \r\n
\r\n {{ exportDoc?.fileName}}\r\n
\r\n
\r\n {{exportDoc?.users.username | lowercase}}\r\n {{exportDoc?.dateCreated | timeAgo}}\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n
","import { Component, OnInit, Input } from '@angular/core';\r\nimport { Export } from '../_models/export';\r\n\r\n@Component({\r\n selector: 'app-export-detail-financial',\r\n templateUrl: './export-detail-financial.component.html',\r\n styleUrls: ['./export-detail-financial.component.css']\r\n})\r\nexport class ExportDetailFinancialComponent implements OnInit {\r\n\r\n @Input() export: Export;\r\n\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n this.showData();\r\n }\r\n showData() {\r\n // console.log(this.export);\r\n }\r\n\r\n}\r\n","\r\n\r\n
\r\n
    \r\n
  • \r\n NXP Number : {{ export?.nxpNumber}}\r\n
  • \r\n
  • \r\n NESS PayReq ID : {{export?.nessNumber}}\r\n
  • \r\n
  • \r\n CCI Number : {{export?.cciNumber}}\r\n
  • \r\n
\r\n
\r\n","import { Component, OnInit, Input } from '@angular/core';\r\nimport { ExportService } from '../_services/export.service';\r\nimport { AlertifyService } from '../_services/alertify.service';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { Export } from '../_models/export';\r\nimport { ExportNode } from '../_models/exportnode';\r\n\r\n@Component({\r\n selector: 'app-export-detail-update-actions',\r\n templateUrl: './export-detail-update-actions.component.html',\r\n styleUrls: ['./export-detail-update-actions.component.css']\r\n})\r\nexport class ExportDetailUpdateActionsComponent implements OnInit {\r\n @Input() export: Export;\r\n nodes: Node[];\r\n exportId: number;\r\n nodeElementId: number;\r\n nodeStatusId: number;\r\n exportnode: ExportNode[];\r\n\r\n constructor(private exportService: ExportService, private alertify: AlertifyService,\r\n private route: ActivatedRoute, private nav: Router) { }\r\n\r\n ngOnInit() {\r\n this.loadNodes();\r\n this.loadExportNode(this.export['id']);\r\n }\r\n\r\n loadNodes() {\r\n this.exportService.getNodes().subscribe((nodes: Node[]) => {\r\n this.nodes = nodes;\r\n }, error => {\r\n this.alertify.error(error);\r\n });\r\n }\r\n\r\n loadExportNode(eId) {\r\n this.exportService.getExportNodes(eId).subscribe(\r\n (exportnodes: ExportNode[]) => {\r\n this.exportnode = exportnodes;\r\n },\r\n error => {\r\n this.alertify.error(error);\r\n }\r\n );\r\n }\r\n\r\n}\r\n","\r\n","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-export-detail-update-financial',\r\n templateUrl: './export-detail-update-financial.component.html',\r\n styleUrls: ['./export-detail-update-financial.component.css']\r\n})\r\nexport class ExportDetailUpdateFinancialComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","

\r\n export-detail-update-financial works!\r\n

\r\n","import { Component, OnInit, ViewChild, TemplateRef } from '@angular/core';\r\nimport { Export } from '../_models/export';\r\nimport { ExportService } from '../_services/export.service';\r\nimport { AlertifyService } from '../_services/alertify.service';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { Terminal } from '../_models/terminal';\r\nimport { Product } from '../_models/product';\r\nimport { Lifter } from '../_models/lifter';\r\nimport { CargoType } from '../_models/cargotype';\r\nimport { Consignee } from '../_models/consignee';\r\nimport { NgForm } from '@angular/forms';\r\nimport { BsModalService, BsModalRef } from 'ngx-bootstrap/modal';\r\nimport { BsDatepickerConfig} from 'ngx-bootstrap/datepicker';\r\nimport { TabsetComponent } from 'ngx-bootstrap/tabs';\r\nimport { TypeaheadMatch } from 'ngx-bootstrap/typeahead';\r\nimport { Status } from '../_models/status';\r\nimport { DocumentCategory } from '../_models/documentcategory';\r\nimport { AuthService } from '../_services/auth.service';\r\nimport { Destination } from '../_models/destination';\r\nimport { Inspector } from '../_models/inspector';\r\nimport { Vessel } from '../_models/Vessel';\r\nimport { VesselAgent } from '../_models/vesselagent';\r\nimport { Consignor } from '../_models/consignor';\r\nimport { DateService } from '../_services/date.service';\r\n\r\n\r\n\r\n\r\n\r\n@Component({\r\n selector: 'app-export-detail-update',\r\n templateUrl: './export-detail-update.component.html',\r\n styleUrls: ['./export-detail-update.component.css']\r\n})\r\nexport class ExportDetailUpdateComponent implements OnInit {\r\n @ViewChild('editExportForm') editExportForm:NgForm;\r\n @ViewChild('updateTab') staticTabs: TabsetComponent;\r\n\r\n terminals: Terminal[];\r\n products: Product[];\r\n productCombinations: Product[];\r\n lifters: Lifter[];\r\n cargotypes: CargoType[];\r\n consignees: Consignee[];\r\n statuses: Status[];\r\n modalRef: BsModalRef;\r\n\r\n model: any = {};\r\n modelForUpdateData: any = {};\r\n vessel: any = {};\r\n inspector: any = {};\r\n destination: any = {};\r\n vesselagent: any = {};\r\n documentTypes: any = {};\r\n\r\n userId: number;\r\n vessels: any[];\r\n vesselList: string[] = ['None'];\r\n destinationList: any = {};\r\n InspectorList: any = {};\r\n vesselAgentList: any = {};\r\n consignorsList: any = {};\r\n // vesselagents: any = {};\r\n selectedValue: string;\r\n selectedOption: any;\r\n\r\n selectedDestinationValue: string;\r\n selectedDestinationOption: any;\r\n\r\n selectedInspectorValue: string;\r\n selectedInspectorOption: any;\r\n\r\n hasDestination = false;\r\n hasVessel = false;\r\n hasInspector = false;\r\n\r\n isCreateMode = false;\r\n\r\n // Vessel Model\r\n vesselToAddModel: any = {};\r\n inspeectorToAddModel: any = {};\r\n vesselAgentToAddModel: any = {};\r\n consigneeToAddModel: any = {};\r\n consignorToAddModel: any = {};\r\n destinationToAddModel: any = {};\r\n\r\n productForSelectedTerminal: Product[];\r\n\r\n export: Export; // Make the Export model available in the view\r\n\r\n // Date Picker Customisation\r\n colorTheme = 'theme-dark-blue';\r\n bsConfig: Partial;\r\n hasDemurrage: any = { state: false };\r\n hasOutturn: any = { state: false };\r\n hasLossClaim: any = { state: false };\r\n // financial: any = {};\r\n\r\n dateRageStart: Date;\r\n\r\n//Feature-1,2\r\n showNomintationInfo: boolean;\r\n showProductCom : Boolean;\r\n\r\n constructor(\r\n private exportService: ExportService,\r\n private alertify: AlertifyService,\r\n private route: ActivatedRoute,\r\n private nav: Router,\r\n private authService: AuthService,\r\n private modalService: BsModalService,\r\n private dateService: DateService\r\n ) { }\r\n\r\n ngOnInit() {\r\n // this.loadExport();\r\n this.loadTerminals();\r\n this.loadProducts();\r\n this.loadProductCombination();\r\n this.loadLifters();\r\n this.loadCargoTypes();\r\n this.loadConsignees();\r\n this.loadStatus();\r\n this.loadVessels();\r\n this.loadDestinations();\r\n this.loadInspectors();\r\n this.loadVesselAgents();\r\n this.loadConsignor();\r\n\r\n this.route.data.subscribe(data => {\r\n this.export = data['export'];\r\n this.model = this.export;\r\n \r\n //FEATURE-2\r\n // console.log(\"Export Details\", this.model);\r\n this.showProductCom = this.model.terminals.id == 4 ? true : false;\r\n //FEATURE- 3\r\n this.userId = this.authService.decodedToken.nameid;\r\n \r\n \r\n\r\n this.modelForUpdateData.destinationid = this.model.destinations.id;\r\n this.modelForUpdateData.inspectorId = this.model.inspector.id;\r\n this.modelForUpdateData.VesselAgentId = this.model.vesselAgents.id;\r\n this.modelForUpdateData.vesselId = this.model.vessel.id;\r\n this.modelForUpdateData.consignorId = this.model.consignor.id;\r\n this.modelForUpdateData.ConsigneeId = this.model.consignees.id;\r\n this.modelForUpdateData.ETA = this.model.eta;\r\n this.modelForUpdateData.bolDate = this.model.bolDate;\r\n this.modelForUpdateData.dateRangeStart = this.model.dateRangeStart;\r\n this.modelForUpdateData.dateRangeEnd = this.model.dateRangeEnd;\r\n this.modelForUpdateData.loadingStart = this.model.loadingStart;\r\n this.modelForUpdateData.loadingStop = this.model.loadingStop;\r\n this.modelForUpdateData.nmaSalesPrice = this.model.nmaSalesPrice;\r\n this.modelForUpdateData.cpcSalesPrice = this.model.cpcSalesPrice;\r\n this.modelForUpdateData.nxpNumber = this.model.nxpNumber;\r\n this.modelForUpdateData.nessNumber = this.model.nessNumber;\r\n this.modelForUpdateData.cciNumber = this.model.cciNumber;\r\n\r\n this.bsConfig = Object.assign({}, { containerClass: this.colorTheme });\r\n });\r\n\r\n this.route.queryParams.subscribe(\r\n params => {\r\n const selectedTab = params['tab'];\r\n this.staticTabs.tabs[selectedTab > 0 ? selectedTab : 0].active = true;\r\n }\r\n );\r\n }\r\n selectTab(tabId: number) {\r\n this.staticTabs.tabs[tabId].active = true;\r\n }\r\n\r\n loadTerminals() {\r\n this.exportService.getTerminals().subscribe(\r\n (terminals: Terminal[]) => {\r\n this.terminals = terminals;\r\n },\r\n error => {\r\n this.alertify.error('Unable to Load Termnials');\r\n }\r\n );\r\n }\r\n loadProducts() {\r\n this.exportService.getProducts().subscribe(\r\n (products: Product[]) => {\r\n this.products = products;\r\n },\r\n error => {\r\n this.alertify.error('Unable to load Products');\r\n }\r\n );\r\n }\r\n loadProductCombination() {\r\n this.exportService.getProductCombination().subscribe(\r\n (products: Product[]) => {\r\n \r\n this.productCombinations = products;\r\n },\r\n error => {\r\n this.alertify.error(error);\r\n }\r\n );\r\n }\r\n loadLifters() {\r\n this.exportService.getLifters().subscribe(\r\n (lifters: Lifter[]) => {\r\n this.lifters = lifters;\r\n },\r\n error => {\r\n this.alertify.error('Unable to load Lifters');\r\n }\r\n );\r\n }\r\n loadCargoTypes() {\r\n this.exportService.getCargoTypes().subscribe(\r\n (cargotypes: CargoType[]) => {\r\n this.cargotypes = cargotypes;\r\n },\r\n error => {\r\n this.alertify.error('Umable to Load Cargo Types');\r\n }\r\n );\r\n }\r\n loadConsignees() {\r\n this.exportService.getConsignee().subscribe(\r\n (consignees: Consignee[]) => {\r\n this.consignees = consignees;\r\n },\r\n error => {\r\n this.alertify.error('Unable to load consignees');\r\n }\r\n );\r\n }\r\n loadStatus() {\r\n this.exportService.getStatusList().subscribe(\r\n (statuses: Status[]) => {\r\n this.statuses = statuses;\r\n console.log(\"load Status\", this.statuses);\r\n //Codition to show closed status if the logined user \r\n //have created the cargo\r\n\r\n // if(this.userId != this.model.users.id)\r\n // {\r\n // this.statuses = this.statuses.filter(item => item.id !== 6);\r\n // }\r\n },\r\n error => {\r\n this.alertify.error('Unable to load status');\r\n }\r\n );\r\n }\r\n\r\n loadVessels() {\r\n this.exportService.getVessels().subscribe(\r\n (vessels: Vessel[]) => {\r\n this.vessels = vessels;\r\n\r\n for (let i = 0; i < this.vessels.length; i++) {\r\n this.vesselList.push(\r\n String(this.vessels[i].name) +\r\n ' - ' +\r\n String(this.vessels[i].dwt) +\r\n ' - ' +\r\n String(this.vessels[i].flag)\r\n );\r\n }\r\n },\r\n error => {\r\n this.alertify.error(error);\r\n }\r\n );\r\n }\r\n\r\n loadLiftersForTerminal(id) {\r\n this.exportService.getLiftersForTerminal(id).subscribe(\r\n (lifters: Lifter[]) => {\r\n this.lifters = lifters;\r\n },\r\n error => {\r\n this.alertify.error(error);\r\n }\r\n );\r\n }\r\n\r\n loadCargoTypesForLifter(id) {\r\n this.exportService.getCargoTypeForLifer(id).subscribe(\r\n (cargotypes: CargoType[]) => {\r\n this.cargotypes = cargotypes;\r\n },\r\n error => {\r\n this.alertify.error(error);\r\n }\r\n );\r\n }\r\n\r\n loadDestinations() {\r\n this.exportService.getDestinations().subscribe(\r\n (destinations: Destination[]) => {\r\n this.destinationList = destinations;\r\n },\r\n error => {\r\n this.alertify.error(error);\r\n }\r\n );\r\n }\r\n loadInspectors() {\r\n this.exportService.getInspectors().subscribe(\r\n (inspectors: Inspector[]) => {\r\n this.InspectorList = inspectors;\r\n },\r\n error => {\r\n this.alertify.error(error);\r\n }\r\n );\r\n }\r\n loadVesselAgents() {\r\n this.exportService.getVesselAgents().subscribe(\r\n (vesselAgent: VesselAgent[]) => {\r\n this.vesselAgentList = vesselAgent;\r\n },\r\n error => {\r\n this.alertify.error(error);\r\n }\r\n );\r\n }\r\n loadConsignor() {\r\n this.exportService.getConsignor().subscribe(\r\n (consignors: Consignor[]) => {\r\n this.consignorsList = consignors;\r\n },\r\n error => {\r\n this.alertify.error(error);\r\n }\r\n );\r\n }\r\n updateExport() {\r\n\r\n //VALIDATION: \r\n //let isMatch = new RegExp('(?:^|\\\\s)'+'.', 'i').test(this.model.norminatedCargo);\r\n if(/\\./.test(this.model.norminatedCargo)) \r\n {\r\n if(this.model.terminals.id == 5 && this.model.products.id == 7 || this.model.products.id ==8)\r\n {\r\n \r\n }else{\r\n this.alertify.error('Nomination volmue does not accept decimal points for the selected terminal.');\r\n return;\r\n }\r\n }\r\n \r\n this.transformUpdatedata();\r\n // console.log(this.modelForUpdateData);\r\n this.exportService\r\n .updateExport(this.model.id, this.modelForUpdateData)\r\n .subscribe(\r\n next => {\r\n this.alertify.success('Export Details Successfully Updated');\r\n this.nav.navigate(['export-detail', this.model.id]);\r\n },\r\n error => {\r\n this.alertify.error(error);\r\n }\r\n );\r\n this.nav.navigate(['/export-detail/', this.model.id]);\r\n }\r\n //Nomination volume valiations\r\n //Restrict input to numbers and a single decimal points \r\n onNominationValPress(event: KeyboardEvent)\r\n {\r\n if(this.model.terminals.id ==5 && this.model.products.id == 7 || this.model.products.id == 8)\r\n {\r\n this.DecimalPressValidations(event);\r\n }\r\n else if(this.model.terminals.id ==4)\r\n {\r\n this.DecimalPressValidations(event);\r\n }\r\n }\r\n //NOMINATION VOLUME VALIDATIONS\r\n//Restrict the number of decimal places to 3\r\nonNomibationInput(event: any)\r\n{\r\n if(this.model.terminals.id ==5 && this.model.products.id == 7 || this.model.products.id == 8)\r\n {\r\n this.DecimalInputValidations(event);\r\n }\r\n else if(this.model.terminals.id ==4)\r\n {\r\n this.DecimalInputValidations(event);\r\n }\r\n}\r\n\r\n //DECIMAL POINTS VALIDTIONS\r\n DecimalPressValidations(event)\r\n{\r\n const allowedKeys = ['1','2','3','4','5','6','7','8','9','0','.'];\r\n if(!allowedKeys.includes(event.key))\r\n {\r\n event.preventDefault();\r\n }\r\n //prevent more then one decimal point\r\n const inputElement = event.target as HTMLInputElement;\r\n if(event.key ==='.' && inputElement.value.includes('.'))\r\n {\r\n event.preventDefault();\r\n }\r\n}\r\nDecimalInputValidations(event)\r\n{\r\n const inputElement = event.target as HTMLInputElement;\r\n const value = inputElement.value;\r\n //check if the num has more than 3 decimal places\r\n const decimalMatch = value.match(/^\\d+(\\.\\d{0,3})?/);\r\n if(decimalMatch)\r\n {\r\n inputElement.value =decimalMatch[0]; //set value with only up to 3 decimal places\r\n }\r\n}\r\n ///NOMINATION VOLUME VALIDATION\r\n //CHECK IF THE THE FIELDS CONTAINS DECIMAL POINTS\r\n nominationVolValidation()\r\n {\r\n if(this.model.norminatedCargo.includes('.'))\r\n {\r\n if(this.model.terminals.id == 5 && this.model.products.id == 7 || this.model.products.id ==8)\r\n {\r\n \r\n }else{\r\n this.alertify.error('Nomination volmue does not accept decimal points for the selected terminal.');\r\n return;\r\n }\r\n }\r\n }\r\n transformUpdatedata() {\r\n this.modelForUpdateData.cargoNumber = this.model.cargoNumber;\r\n this.modelForUpdateData.terminalsId = this.model.terminals.id;\r\n this.modelForUpdateData.productsId = this.model.products.id;\r\n this.modelForUpdateData.liftersId = this.model.lifters.id;\r\n this.modelForUpdateData.norminatedCargo = this.model.norminatedCargo;\r\n this.modelForUpdateData.cargoTypeID = this.model.cargoTypes.id;\r\n this.modelForUpdateData.nxpNumber = this.model.nxpNumber;\r\n this.modelForUpdateData.nessNumber = this.model.nessNumber;\r\n this.modelForUpdateData.cciNumber = this.model.cciNumber;\r\n\r\n this.modelForUpdateData.flag = this.model.vessel.flag;\r\n this.modelForUpdateData.dwt = this.model.vessel.dwt;\r\n\r\n this.modelForUpdateData.productCombinationId = this.model.productCombinations.id;\r\n this.modelForUpdateData.transmixVolume = this.model.transmixVolume;\r\n\r\n this.modelForUpdateData.comment = this.model.comment;\r\n this.modelForUpdateData.ConsigneeId = this.model.consignees.id;\r\n\r\n this.modelForUpdateData.StatusId = this.model.status.id;\r\n\r\n this.modelForUpdateData.ActualCargo = this.model.actualCargo;\r\n this.modelForUpdateData.ShipFigures = this.model.shipFigures;\r\n this.modelForUpdateData.API = this.model.api;\r\n this.modelForUpdateData.BSW = this.model.bsw;\r\n this.modelForUpdateData.ShipFigures = this.model.shipFigures;\r\n\r\n this.modelForUpdateData.OutterunCost = this.model.outterunCost;\r\n this.modelForUpdateData.LossClaimCost = this.model.lossClaimCost;\r\n this.modelForUpdateData.DemurrageCost = this.model.demurrageCost;\r\n\r\n this.modelForUpdateData.HasOutturn = this.hasOutturn.state;\r\n this.modelForUpdateData.HasDemurrage = this.hasDemurrage.state;\r\n this.modelForUpdateData.HasLossClaim = this.hasLossClaim.state;\r\n this.modelForUpdateData.FiscalPrice = this.model.fiscalPrice;\r\n this.modelForUpdateData.NMASalesPrice = this.model.NMASalesPrice;\r\n this.modelForUpdateData.CPCSalesPrice = this.model.CPCSalesPrice;\r\n }\r\n\r\n onSelectVessel(event: TypeaheadMatch): void {\r\n this.modelForUpdateData.vesselId = event.item.id;\r\n this.model.vessel.flag = event.item.flag;\r\n this.model.vessel.dwt = event.item.dwt;\r\n this.model.vessel.id = event.item.id;\r\n }\r\n onSelectDestination(event: TypeaheadMatch): void {\r\n this.modelForUpdateData.destinationid = event.item.id;\r\n }\r\n onSelectInspector(event: TypeaheadMatch): void {\r\n this.modelForUpdateData.inspectorId = event.item.id;\r\n this.hasInspector = true;\r\n }\r\n onSelectConsignor(event: TypeaheadMatch): void {\r\n this.modelForUpdateData.consignorId = event.item.id;\r\n }\r\n onSelectVesselAgent(event: TypeaheadMatch): void {\r\n this.modelForUpdateData.VesselAgentId = event.item.id;\r\n }\r\n onProductChange(e)\r\n {\r\n this.showNomintationInfo = this.model.products.id == 7 || this.model.products.id == 8 ? true : false;\r\n }\r\n onTerminalChange(e) {\r\n this.loadProductForTerminal(e);\r\n this.showNomintationInfo =false;\r\n this.showProductCom =false; //FEATURE 2\r\n if (this.model.terminals.id == 2) {\r\n this.model.cargoNumber = 'AGB-';\r\n this.model.nominatedVolume = 975000;\r\n this.model.products.id = 1;\r\n this.model.flagOfVessel = \"TBA\";\r\n this.model.DWTofVessel = \"TBA\";\r\n this.model.cargoTypes.id = 2;\r\n this.model.lifters.id = 1;\r\n }\r\n if (this.model.terminals.id == 3) {\r\n this.model.cargoNumber = \"ESC-\";\r\n this.model.nominatedVolume = 9500000;\r\n this.model.products.id = 2;\r\n this.model.cargoTypes.id = 1;\r\n\r\n }\r\n if (this.model.terminals.id == 4) {\r\n this.model.cargoNumber = \"EP-\";\r\n this.model.nominatedVolume = 440000;\r\n this.model.cargoTypes.id = 8;\r\n this.model.lifters.id = 11;\r\n this.model.products.id = 4;\r\n this.showProductCom =true;\r\n }\r\n if (this.model.terminals.id == 1) {\r\n this.model.cargoNumber = \"USAN-000\";\r\n this.model.nominatedVolume = 1000000;\r\n this.model.cargoTypes.id = 16;\r\n this.model.lifters.id = 10;\r\n this.model.products.id = 3;\r\n }\r\n if (this.model.terminals.id == 5) {\r\n this.model.cargoNumber = \"LPG-\";\r\n this.model.nominatedVolume = 30000;\r\n this.model.products.id = 7;\r\n this.model.lifters.id = 13;\r\n this.model.cargoTypes.id = 16;\r\n\r\n //FEATURE - 1\r\n this.showNomintationInfo = true;\r\n //VALIDATION TO RESTRICT NOMINATION VOLUMNE TO ACCEPT NUMBERS AND 3 DECIMAL POINTS\r\n var val = this.model.norminatedCargo;\r\n const cleanedValue = val.replace(/[^0-9.]/g,'');\r\n const parts = cleanedValue.split('.');\r\n if(parts.length > 2)\r\n {\r\n val =parts[0] +'.' +parts[1];\r\n }\r\n //limit to 3 decimal points\r\n if(parts[1] && parts[1].length > 3)\r\n {\r\n val =parts[0] +'.'+ parts[1].substring(0,3);\r\n }\r\n this.model.norminatedCargo = val; //ASSIGN THE FILTERED VALUE\r\n }\r\n this.loadLiftersForTerminal(e);\r\n }\r\n\r\n\r\n onSelectProduct(e) {\r\n if (e == 3) {\r\n this.model.cargoTypes.id = 1;\r\n }\r\n // Diesel Export\r\n if (e == 4) {\r\n this.model.nominatedVolume = 310000;\r\n }\r\n if (e == 5) {\r\n this.model.nominatedVolume = 420000;\r\n }\r\n if (e == 6) {\r\n this.model.nominatedVolume = 250000;\r\n }\r\n }\r\n\r\n loadProductForTerminal(id) {\r\n this.exportService.getProductsForTerminal(id).subscribe(\r\n (products: Product[]) => {\r\n this.products = products;\r\n },\r\n error => {\r\n this.alertify.error('Unable to Load Products For Terminal');\r\n }\r\n );\r\n }\r\n onSelectLifter(e) {\r\n // console.log(e);\r\n this.loadCargoTypesForLifter(e);\r\n }\r\n\r\n addNewVessel() {\r\n this.exportService.createVessel(this.vesselToAddModel).subscribe(\r\n () => {\r\n this.modalRef.hide();\r\n this.alertify.success('New Vessel Created');\r\n this.loadVessels();\r\n },\r\n error => {\r\n this.alertify.error('Unable to Create Vessel');\r\n }\r\n );\r\n // this.ngOnInit();\r\n }\r\n\r\n addNewInspector() {\r\n this.exportService.createInspector(this.inspeectorToAddModel).subscribe(\r\n () => {\r\n this.modalRef.hide();\r\n this.loadInspectors();\r\n this.alertify.success('New Inspector Created');\r\n },\r\n error => {\r\n this.alertify.error('Unable to Create Inspector');\r\n }\r\n );\r\n }\r\n\r\n addNewVesselAgent() {\r\n this.exportService.createVesselAgent(this.vesselAgentToAddModel).subscribe(\r\n () => {\r\n this.modalRef.hide();\r\n this.loadVesselAgents();\r\n this.alertify.success('New Vessel Agent Created');\r\n },\r\n error => {\r\n this.alertify.error('Unable to Create Vessel Agent');\r\n }\r\n );\r\n }\r\n addNewConsignee() {\r\n this.exportService.createConsignee(this.consigneeToAddModel).subscribe(\r\n () => {\r\n this.modalRef.hide();\r\n this.loadConsignees();\r\n this.alertify.success('New Consignee Created');\r\n },\r\n error => {\r\n this.alertify.error('Unable to Create Consignee');\r\n }\r\n );\r\n }\r\n addNewConsignor() {\r\n this.exportService.createConsignor(this.consignorToAddModel).subscribe(\r\n () => {\r\n this.modalRef.hide();\r\n this.loadConsignor();\r\n this.alertify.success('New Consignor Created');\r\n },\r\n error => {\r\n this.alertify.error('Unable to Create Consignor');\r\n }\r\n );\r\n }\r\n addNewDestination() {\r\n this.exportService.createDestination(this.destinationToAddModel).subscribe(\r\n () => {\r\n this.modalRef.hide();\r\n this.loadDestinations();\r\n this.alertify.success('New Destinartion Created');\r\n },\r\n error => {\r\n this.alertify.error('Unable to Create Destinartion');\r\n }\r\n );\r\n }\r\n\r\n openModal(template: TemplateRef) {\r\n this.modalRef = this.modalService.show(template);\r\n }\r\n closeModal() {\r\n this.modalRef.hide();\r\n this.modalRef = null;\r\n }\r\n onDateRangeStartValueChange(value: Date) {\r\n this.modelForUpdateData.dateRangeStart = this.dateService.urlDate(value);\r\n }\r\n onDateRangeEndValueChange(value: Date) {\r\n this.modelForUpdateData.dateRangeEnd = this.dateService.urlDate(value);\r\n // console.log(this.modelForUpdateData.DateRangeEnd);\r\n }\r\n onDateETAValueChange(value: Date) {\r\n this.modelForUpdateData.ETA = this.dateService.urlDate(value);\r\n // console.log(this.modelForUpdateData.ETA);\r\n }\r\n onBOLDateValueChange(value: Date) {\r\n this.modelForUpdateData.bolDate = this.dateService.urlDate(value);\r\n // console.log(this.modelForUpdateData.bolDate);\r\n }\r\n onLoadingStartValueChange(value: Date) {\r\n this.modelForUpdateData.loadingStart = value;\r\n // console.log(this.modelForUpdateData.loadingStart);\r\n }\r\n onLoadingEndValueChange(value: Date) {\r\n this.modelForUpdateData.loadingStop = value;\r\n // console.log(this.modelForUpdateData.loadingEnd);\r\n }\r\n\r\n \r\n\r\n}\r\n","
\r\n
    \r\n
  1. \r\n Home\r\n
  2. \r\n
  3. \r\n Export\r\n
  4. \r\n
  5. Edit
  6. \r\n
\r\n\r\n
\r\n
\r\n

{{export?.vessel['name']}}

\r\n
\r\n
\r\n
\r\n InformationYou have made some changes. Any unsaved changes would be lost\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \"\"\r\n
\r\n
\r\n Date Range\r\n

{{export?.dateRangeStart | date:'mediumDate'}} | {{export?.dateRangeEnd | date:'mediumDate'}}

\r\n
\r\n
\r\n Lifter\r\n

{{export?.lifters.name}}

\r\n
\r\n
\r\n ETA\r\n

{{export?.eta | date:'mediumDate'}}

\r\n
\r\n
\r\n STATUS\r\n

{{ export?.status.label }}

\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n\r\n \r\n\r\n {{ model?.terminals.id == 5 && model.products != null ? model.products?.id == 7 || model.products?.id == 8 ? 'Enter upto 3 decimal points.' : showNomintationInfo == true ? 'Enter upto 3 decimal points.':'' :''}}\r\n \r\n
\r\n\r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n\r\n Enter upto 3 decimal points.\r\n\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n

Add New Vessel

\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n

Add Agent

\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n

Add Inspector

\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n

Add Consignee

\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n

Add Consignor

\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n

Add Destination

\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n
","import { Component, OnInit, Input, TemplateRef } from '@angular/core';\r\nimport { Export } from '../_models/export';\r\nimport { EnergycomponentService } from '../_services/energycomponent.service';\r\nimport { AlertifyService } from '../_services/alertify.service';\r\nimport { BsModalService, BsModalRef } from 'ngx-bootstrap/modal';\r\nimport { ExportService } from '../_services/export.service';\r\n\r\n@Component({\r\n selector: 'app-export-detail-vessel',\r\n templateUrl: './export-detail-vessel.component.html',\r\n styleUrls: ['./export-detail-vessel.component.css']\r\n})\r\nexport class ExportDetailVesselComponent implements OnInit {\r\n @Input() export: Export;\r\n modalRef: BsModalRef;\r\n enableLoader = false;\r\n public ecDataForm: any = {\r\n arrived: null,\r\n blDate: null,\r\n bsw: null,\r\n capacityMass: null,\r\n cargoNumber: null,\r\n carrierName: null,\r\n commencedConnectingHoses: null,\r\n commencedLoading: null,\r\n commencedMooring: null,\r\n commencedUnmooring: null,\r\n companyName: null,\r\n completedConnectingHoses: null,\r\n completedDisconnectingHoses: null,\r\n completedLoading: null,\r\n consigneeName: null,\r\n consignorName: null,\r\n customsOnBoard: null,\r\n documentOnBoard: null,\r\n grossVolumeBBLS: null,\r\n grsapi: null,\r\n nationality: null,\r\n netVolumeBBLS: null,\r\n nominationDate: null,\r\n norReceived: null,\r\n norTendered: null,\r\n nrt: null,\r\n pilotOff: null,\r\n pilotOnBoard: null,\r\n registeredPort: null,\r\n remarks: null,\r\n unloadingPortName: null,\r\n vesselSailDate: null\r\n };\r\n\r\n constructor(private ecService: EnergycomponentService, private alertify: AlertifyService\r\n , private modalService: BsModalService, private exportService: ExportService) { }\r\n\r\n ngOnInit() {\r\n // console.log(this.export);\r\n }\r\n pullDataFromEC(template: TemplateRef) {\r\n console.log('Loading.....');\r\n this.enableLoader = true;\r\n this.ecService.getExportDataForID(12).subscribe(\r\n (ecData: any) => {\r\n this.ecDataForm = ecData;\r\n this.enableLoader = false;\r\n this.openModal(template);\r\n }, error => {\r\n this.alertify.error(error);\r\n }\r\n );\r\n }\r\n openModal(template: TemplateRef) {\r\n this.modalRef = this.modalService.show(template);\r\n }\r\n mergeData() {\r\n this.export.actualCargo = this.ecDataForm.netVolumeBBLS;\r\n this.export.shipFigures = this.ecDataForm.grossVolumeBBLS;\r\n this.export.api = this.ecDataForm.grsapi;\r\n this.export.bsw = this.ecDataForm.bsw;\r\n this.export.bolDate = this.ecDataForm.blDate;\r\n\r\n this.export.loadingStop = this.ecDataForm.completedLoading;\r\n this.export.loadingStart = this.ecDataForm.commencedLoading;\r\n this.export.eta = this.ecDataForm.arrived;\r\n\r\n this.export.comment = this.ecDataForm.remarks;\r\n\r\n // Map all Objects to their ID Values \r\n }\r\n overwriteData() {\r\n this.mergeData();\r\n console.log(this.export);\r\n if (this.export.cargoNumber === this.ecDataForm.cargoNumber) {\r\n this.alertify.success('Same Carego Number');\r\n } else {\r\n this.alertify.error('Cargo Number Mismatch');\r\n this.exportService.updateExport(this.export.id, this.export).subscribe(\r\n () => {\r\n this.alertify.success('Export Data successfully Overwriten');\r\n this.modalRef.hide();\r\n }, error => {\r\n this.alertify.error('Unable to update write data');\r\n }\r\n );\r\n }\r\n }\r\n closeModal() {\r\n this.modalRef.hide();\r\n }\r\n\r\n}\r\n","\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
    \r\n
  • Vessel Name : {{export?.vessel?.name}}
  • \r\n
  • IMO Number : {{export?.vessel?.imoNumber}}
  • \r\n
  • Vessel Flag : {{export?.vessel?.flag}}
  • \r\n
  • Vessel DWT : {{export?.vessel?.dwt}}
  • \r\n
  • Vessel Destination : {{ export?.destinations?.name}}
  • \r\n
\r\n
\r\n\r\n \r\n
\r\n

Energy Component Data Preview

\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n","import { Component, OnInit, TemplateRef } from '@angular/core';\r\nimport { Export } from '../_models/export';\r\nimport { ExportService } from '../_services/export.service';\r\nimport { AlertifyService } from '../_services/alertify.service';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { BsModalRef, BsModalService } from 'ngx-bootstrap/modal';\r\nimport { AuthService } from '../_services/auth.service';\r\nimport { DocumentService } from '../_services/document.service';\r\nimport { DocumentInstruction } from '../_models/documentinstruction';\r\nimport { Download } from '../_models/download';\r\nimport { DateService } from '../_services/date.service';\r\nimport { NominationDocument } from '../_models/nominationdocument';\r\nimport {saveAs} from 'file-saver';\r\n\r\n@Component({\r\n selector: 'app-export-detail',\r\n templateUrl: './export-detail.component.html',\r\n styleUrls: ['./export-detail.component.css']\r\n})\r\nexport class ExportDetailComponent implements OnInit {\r\n\r\n export: Export;\r\n modalRef: BsModalRef;\r\n exportToDuplicateID: number ;\r\n //DIModel: any = {};\r\n NominationModel: any = {};\r\n fileToDownload: any = {};\r\n public hasFile = false;\r\n public filePathToDownload: string;\r\n public currentTab = 0 ;\r\n\r\n constructor(private exportService: ExportService,\r\n private alertify: AlertifyService,\r\n private route: ActivatedRoute,\r\n private modalService: BsModalService,\r\n private authService: AuthService,\r\n private router: Router,\r\n private documentService: DocumentService,\r\n private dateService: DateService) { }\r\n\r\n ngOnInit() {\r\n // this.loadExport();\r\n this.route.data.subscribe(data => {\r\n this.export = data['export'];\r\n });\r\n console.log(this.export);\r\n //this.SetProperties();\r\n }\r\n\r\n openModal(template: TemplateRef, e: any) {\r\n // console.log(e);\r\n this.exportToDuplicateID = e;\r\n this.modalRef = this.modalService.show(template);\r\n }\r\n\r\n closeConfirmModal() {\r\n this.modalRef.hide();\r\n }\r\n\r\n duplicateExport() {\r\n console.log(this.exportToDuplicateID);\r\n this.exportService.duplicateExportWithID(this.exportToDuplicateID, this.authService.decodedToken.nameid).subscribe(\r\n (exports: Export) => {\r\n this.modalRef.hide();\r\n this.alertify.success('Export Successfully Duplicated');\r\n this.router.navigate(['/dash-board']);\r\n }, error => {\r\n this.alertify.error('Problem Duplicating Export');\r\n }\r\n );\r\n }\r\n\r\n // loadExport() {\r\n // this.exportService.getExport(+this.route.snapshot.params['id']).subscribe((exports: Export) => {\r\n // this.export = exports;\r\n // console.log(this.export.vesselAgents.name);\r\n // }, error => {\r\n // this.alertify.error(error);\r\n // });\r\n // }\r\n\r\n generateDocumentInstruction(lifterId: number) {\r\n this.getNominationValues();\r\n console.log('Generting Document....');\r\n\r\n this.documentService.generateDocumentInstructionStardeep(lifterId, this.NominationModel).subscribe(\r\n data => {\r\n console.log(data);\r\n saveAs(data, this.NominationModel.cargoNumber + ' DI.docx');\r\n this.alertify.success('Download Successful');\r\n }, error => {\r\n this.alertify.error('Unable to load files');\r\n }\r\n );\r\n }\r\n generateDPRNominationDocument(lifterId: number) {\r\n this.getNominationValues();\r\n console.log(this.NominationModel);\r\n\r\n this.documentService.generateDPRNominationDocument(lifterId, this.NominationModel).subscribe(\r\n data => {\r\n console.log(data);\r\n saveAs(data, this.NominationModel.cargoNumber + ' DPR_Letter.docx');\r\n this.alertify.success('Download Successful');\r\n }, error => {\r\n this.alertify.error('Unable to load files');\r\n }\r\n );\r\n }\r\n generateNominationDocument(lifterId: number) {\r\n this.getNominationValues();\r\n console.log(this.NominationModel);\r\n\r\n this.documentService.generateNominationDocument(lifterId, this.NominationModel).subscribe(\r\n data => {\r\n console.log(data);\r\n saveAs(data, this.NominationModel.cargoNumber + ' DPR_Attachment.docx');\r\n this.alertify.success('Download Successful');\r\n }, error => {\r\n this.alertify.error('Unable to load files');\r\n }\r\n );\r\n }\r\n generateNNPCNominationDocument(lifterId: number) {\r\n this.getNominationValues();\r\n console.log(this.NominationModel);\r\n\r\n this.documentService.generateNNPCNominationDocument(lifterId, this.NominationModel).subscribe(\r\n data => {\r\n console.log(data);\r\n saveAs(data, this.NominationModel.cargoNumber + ' NNPC_Letter.docx');\r\n this.alertify.success('Download Successful');\r\n }, error => {\r\n this.alertify.error('Unable to load files');\r\n }\r\n );\r\n }\r\n generateRFIDocument(lifterId: number) {\r\n this.getNominationValues();\r\n console.log(this.NominationModel);\r\n this.documentService.generateRFIDocument(lifterId, this.NominationModel).subscribe(\r\n data => {\r\n console.log(data);\r\n saveAs(data, this.NominationModel.cargoNumber + ' RFI.docx');\r\n this.alertify.success('Download Successful');\r\n }, error => {\r\n this.alertify.error('Unable to load files');\r\n }\r\n );\r\n }\r\n\r\n // SetProperties() {\r\n\r\n // this.DIModel.letterDate = this.dateService.currentDateForDocument();\r\n // this.DIModel.dateRange = this.dateService.documentDate(this.export.dateRangeStart)\r\n // + '-' + this.dateService.documentDate(this.export.dateRangeEnd);\r\n // this.DIModel.vesselName = this.export.vessel.name;\r\n // this.DIModel.volume = this.export.norminatedCargo;\r\n // this.DIModel.NXPNumber = this.export.nxpNumber;\r\n // this.DIModel.destination = this.export.destinations.name;\r\n // this.DIModel.consignor = this.export.consignor.name;\r\n // this.DIModel.consignee = this.export.consignees.name;\r\n // this.DIModel.inspector = this.export.inspector.name;\r\n // this.DIModel.vesselAgent = this.export.vesselAgents.name;\r\n // this.DIModel.comment = this.export.comment;\r\n // this.DIModel.cargoNumber = this.export.cargoNumber;\r\n // this.DIModel.productId = this.export.products.id;\r\n // this.DIModel.terminalId = this.export.terminals.id;\r\n // }\r\n getNominationValues() {\r\n // console.log(this.export);\r\n this.NominationModel.letterDate = this.dateService.currentDateForDocument();\r\n this.NominationModel.dateRange = this.dateService.documentDateRange(this.export.dateRangeStart,this.export.dateRangeEnd);\r\n this.NominationModel.vesselName = this.export.vessel.name;\r\n this.NominationModel.ETA = this.dateService.documentDate(this.export.eta);\r\n this.NominationModel.volume = this.export.norminatedCargo;\r\n this.NominationModel.volumeMetricTons = this.export.norminatedCargo;\r\n this.NominationModel.terminal = this.export.terminals.name;\r\n this.NominationModel.DWT = this.export.vessel.dwt;\r\n this.NominationModel.NXPNumber = this.export.nxpNumber;\r\n this.NominationModel.destination = this.export.destinations.name;\r\n this.NominationModel.consignor = this.export.consignor.name;\r\n this.NominationModel.consignee = this.export.consignees.name;\r\n this.NominationModel.inspector = this.export.inspector.name;\r\n this.NominationModel.vesselAgent = this.export.vesselAgents.name;\r\n this.NominationModel.comment = this.export.comment;\r\n this.NominationModel.cargoNumber = this.export.cargoNumber;\r\n this.NominationModel.cargoType = this.export.cargoTypes['name'];\r\n this.NominationModel.flagOfVessel = this.export.vessel.flag;\r\n this.NominationModel.nxpNumber = this.export.nxpNumber;\r\n this.NominationModel.vesselIMO = this.export.vessel.imoNumber;\r\n this.NominationModel.productId = this.export.products.id;\r\n this.NominationModel.terminalId = this.export.terminals.id;\r\n console.log(this.NominationModel);\r\n }\r\n\r\n downloadFile() {\r\n this.fileToDownload.path = this.filePathToDownload;\r\n // console.log(this.filePathToDownload);\r\n this.documentService.downloadFileWithPath(this.fileToDownload).subscribe(\r\n data => {\r\n console.log(data);\r\n saveAs(data, 'Download.docx');\r\n this.alertify.success('Download Successful');\r\n }, error => {\r\n this.alertify.error('Unable to load files');\r\n }\r\n );\r\n }\r\n setCurrentTab(id: number){\r\n this.currentTab = id;\r\n console.log(this.currentTab);\r\n }\r\n}\r\n","
\r\n
    \r\n
  1. \r\n Home\r\n
  2. \r\n
  3. \r\n Export\r\n
  4. \r\n
  5. {{export?.vessel['name']}}
  6. \r\n
\r\n

{{export?.vessel['name']}}

\r\n
\r\n
\r\n
\r\n \"\"\r\n
\r\n
\r\n
{{export?.cargoNumber}}
\r\n
\r\n
\r\n Date Range\r\n

{{export?.dateRangeStart | date:'mediumDate'}} - {{export?.dateRangeEnd | date:'mediumDate'}}

\r\n
\r\n
\r\n LIFTER\r\n

{{export?.lifters.name | uppercase}}

\r\n
\r\n
\r\n ETA\r\n

{{export?.eta | date:'mediumDate'}}

\r\n
\r\n
\r\n CURRENT STATUS\r\n

{{ export?.status.label }}

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
Cargo Number :
\r\n

{{export?.cargoNumber}}

\r\n
Product :
\r\n

{{export?.products.name}}

\r\n
Cargo Type :
\r\n

{{export?.cargoTypes != null ? export?.cargoTypes['name'] :''}}

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
Agent Details
\r\n

{{export?.vesselAgents['name'] | uppercase}}

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
Inspectors
\r\n

{{export?.inspector['name'] | uppercase}}

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
CONSIGNOR
\r\n

{{export?.consignor.name | uppercase}}

\r\n
CONSIGNEE
\r\n

{{export?.consignees.name | uppercase}}

\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
Export Comment
\r\n

{{export?.comment}}.

\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n

Generate Documents

\r\n

Click on the button representing the document type you want to generate

\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n

Action Confirmation

\r\n \r\n
\r\n
\r\n
\r\n

Are you sure you want to create a duplicate of this export. By click yes a new export instance would be created with the same details and a ----NEW flag on the Cargo Number./p>\r\n

\r\n \r\n \r\n
\r\n
\r\n","import { Component, OnInit, TemplateRef, Output, EventEmitter } from '@angular/core';\r\nimport { BsModalService, BsModalRef } from 'ngx-bootstrap/modal';\r\nimport { Terminal } from '../_models/terminal';\r\nimport { ExportService } from '../_services/export.service';\r\nimport { AlertifyService } from '../_services/alertify.service';\r\nimport { Product } from '../_models/product';\r\nimport { Lifter } from '../_models/lifter';\r\nimport { CargoType } from '../_models/cargotype';\r\nimport { Consignee } from '../_models/consignee';\r\nimport { Router } from '@angular/router';\r\nimport { UntypedFormGroup } from '@angular/forms';\r\nimport { Export } from '../_models/export';\r\nimport { AuthService } from '../_services/auth.service';\r\nimport { Vessel } from '../_models/Vessel';\r\nimport { TypeaheadMatch } from 'ngx-bootstrap/typeahead/typeahead-match.class';\r\nimport { Destination } from '../_models/destination';\r\nimport { Inspector } from '../_models/inspector';\r\n\r\n\r\n@Component({\r\n selector: \"app-export-menu-nav\",\r\n templateUrl: \"./export-menu-nav.component.html\",\r\n styleUrls: [\"./export-menu-nav.component.css\"]\r\n})\r\nexport class ExportMenuNavComponent implements OnInit {\r\n\r\n @Output() enableCreate = new EventEmitter();\r\n\r\n modalRef: BsModalRef;\r\n addExportForm: UntypedFormGroup;\r\n\r\n terminals: Terminal[];\r\n products: Product[];\r\n lifters: Lifter[];\r\n cargotypes: CargoType[];\r\n consignees: Consignee[];\r\n // Data\r\n model: any = {};\r\n modelForExportData: any = {};\r\n vessel: any = {};\r\n inspector: any = {};\r\n userId: number;\r\n vessels: any[];\r\n vesselList: string[] = [\"None\"];\r\n destinationList: any = {};\r\n InspectorList: any = {};\r\n // vesselagents: any = {};\r\n selectedValue: string;\r\n selectedOption: any;\r\n\r\n selectedDestinationValue: string;\r\n selectedDestinationOption: any;\r\n\r\n selectedInspectorValue: string;\r\n selectedInspectorOption: any;\r\n\r\n hasDestination = false;\r\n hasVessel = false;\r\n hasInspector = false;\r\n\r\n constructor(\r\n private modalService: BsModalService,\r\n private exportService: ExportService,\r\n private alertify: AlertifyService,\r\n private route: Router,\r\n private authService: AuthService\r\n ) {}\r\n\r\n ngOnInit() {\r\n this.loadTerminals();\r\n this.loadProducts();\r\n this.loadLifters();\r\n this.loadCargoTypes();\r\n this.loadConsignees();\r\n this.loadVessels();\r\n this.loadDestinations();\r\n this.loadInspectors();\r\n }\r\n loadTerminals() {\r\n this.exportService.getTerminals().subscribe(\r\n (terminals: Terminal[]) => {\r\n this.terminals = terminals;\r\n },\r\n error => {\r\n this.alertify.error(error);\r\n }\r\n );\r\n }\r\n loadProducts() {\r\n this.exportService.getProducts().subscribe(\r\n (products: Product[]) => {\r\n this.products = products;\r\n },\r\n error => {\r\n this.alertify.error(error);\r\n }\r\n );\r\n }\r\n loadVessels() {\r\n this.exportService.getVessels().subscribe(\r\n (vessels: Vessel[]) => {\r\n this.vessels = vessels;\r\n\r\n for (let i = 0; i < this.vessels.length; i++) {\r\n this.vesselList.push(\r\n String(this.vessels[i].name) +\r\n \" - \" +\r\n String(this.vessels[i].dwt) +\r\n \" - \" +\r\n String(this.vessels[i].flag)\r\n );\r\n }\r\n },\r\n error => {\r\n this.alertify.error(error);\r\n }\r\n );\r\n }\r\n loadLifters() {\r\n this.exportService.getLifters().subscribe(\r\n (lifters: Lifter[]) => {\r\n this.lifters = lifters;\r\n },\r\n error => {\r\n this.alertify.error(error);\r\n }\r\n );\r\n }\r\n loadCargoTypes() {\r\n this.exportService.getCargoTypes().subscribe(\r\n (cargotypes: CargoType[]) => {\r\n this.cargotypes = cargotypes;\r\n },\r\n error => {\r\n this.alertify.error(error);\r\n }\r\n );\r\n }\r\n loadConsignees() {\r\n this.exportService.getConsignee().subscribe(\r\n (consignees: Consignee[]) => {\r\n this.consignees = consignees;\r\n },\r\n error => {\r\n this.alertify.error(error);\r\n }\r\n );\r\n }\r\n loadDestinations() {\r\n this.exportService.getDestinations().subscribe(\r\n (destinations: Destination[]) => {\r\n this.destinationList = destinations;\r\n // console.log(this.destinationList);\r\n },\r\n error => {\r\n this.alertify.error(error);\r\n }\r\n );\r\n }\r\n loadInspectors() {\r\n this.exportService.getInspectors().subscribe(\r\n (inspectors: Inspector[]) => {\r\n this.InspectorList = inspectors;\r\n },\r\n error => {\r\n this.alertify.error(error);\r\n }\r\n );\r\n }\r\n\r\n openModal(template: TemplateRef) {\r\n this.modalRef = this.modalService.show(template);\r\n }\r\n\r\n closeModal() {\r\n this.modalRef.hide();\r\n this.modalRef = null;\r\n }\r\n // Method on the confirm modal to confirm if export data should be added\r\n confirmSave() {\r\n this.userId = this.authService.decodedToken.nameid;\r\n\r\n this.alertify.confirm(\"Are You sure\", () => {\r\n this.tranformExportData(); // Trasform the export data for api\r\n\r\n this.exportService\r\n .createExport(this.modelForExportData, this.userId)\r\n .subscribe(\r\n () => {\r\n this.alertify.success(\"Export Successfully Created\");\r\n },\r\n error => {\r\n this.alertify.error(\"Server Error Unable to Create Export\");\r\n }\r\n );\r\n\r\n // this.route.navigate([\"/dash-board\"]);\r\n });\r\n }\r\n // Method called on clicking the submit button of the addExporForm\r\n addExport() {\r\n this.confirmSave();\r\n }\r\n tranformExportData() {\r\n this.modelForExportData.cargoNumber = this.model.cargoNumber;\r\n this.modelForExportData.terminalsId = this.model.terminalID;\r\n this.modelForExportData.productsId = this.model.productID;\r\n this.modelForExportData.liftersId = this.model.lifterID;\r\n this.modelForExportData.norminatedCargo = this.model.nominatedVolume;\r\n // this.modelForExportData.destinationid = 1; // Set the Desination id to detail of TBD\r\n this.modelForExportData.vesselAgentid = 1; // Set the vessel Agent to TBN\r\n this.modelForExportData.comment = this.model.comment;\r\n // this.modelForExportData.vessels = this.model.vesselName;\r\n // this.modelForExportData.vessels.flag = this.model.flagOfVessel;\r\n // this.modelForExportData.vessels.dwt = this.model.DWTofVessel;\r\n this.modelForExportData.cargoTypeID = this.model.cargoTypeID;\r\n this.modelForExportData.dateRangeStart = this.model.dateRange[0];\r\n this.modelForExportData.dateRangeEnd = this.model.dateRange[1];\r\n this.modelForExportData.eta = this.model.ETA;\r\n if (!this.hasDestination) {\r\n this.modelForExportData.destination = this.model.destination;\r\n }\r\n this.modelForExportData.consigneeID = this.model.consigneeID;\r\n\r\n if (!this.hasVessel) {\r\n this.vessel.name = this.model.vesselName;\r\n this.vessel.flag = this.model.flagOfVessel;\r\n this.vessel.dwt = this.model.DWTofVessel;\r\n this.modelForExportData.vessel = this.vessel;\r\n }\r\n\r\n if (!this.hasInspector) {\r\n this.inspector.name = this.model.inspector;\r\n // this.vesselagent.name = this.model.vesselagent;\r\n this.modelForExportData.inspector = this.inspector;\r\n }\r\n\r\n\r\n // this.vesselagents.name = this.model.vesselAgents; // Get details from form field assign to as object\r\n // this.modelForExportData.vesselagent = this.vesselagents; // Add Object to form to be sent to API\r\n\r\n console.log(this.modelForExportData);\r\n }\r\n\r\n onSelectVessel(event: TypeaheadMatch): void {\r\n this.selectedOption = event.item;\r\n this.vessel = this.selectedOption;\r\n console.log(this.vessel);\r\n this.modelForExportData.vesselId = this.vessel.id;\r\n this.model.flagOfVessel = this.vessel.flag;\r\n this.model.DWTofVessel = this.vessel.dwt;\r\n this.hasVessel = true;\r\n // console.log(this.modelForExportData.vessel);\r\n }\r\n onSelectDestination(event: TypeaheadMatch): void {\r\n this.selectedDestinationOption = event.item;\r\n this.modelForExportData.destinationid = this.selectedDestinationOption.id;\r\n this.hasDestination = true;\r\n // console.log(this.modelForExportData.destinationid);\r\n }\r\n onSelectInspector(event: TypeaheadMatch): void {\r\n this.selectedInspectorOption = event.item;\r\n this.modelForExportData.inspectorId = this.selectedInspectorOption.id;\r\n this.hasInspector = true;\r\n }\r\n\r\n updateValues() {\r\n // console.log(this.model.terminalID);\r\n\r\n if (this.model.terminalID == 2) {\r\n this.model.cargoNumber = \"AGB-\";\r\n this.model.nominatedVolume = 975000;\r\n this.model.productID = 1;\r\n this.model.flagOfVessel = \"TBA\";\r\n this.model.DWTofVessel = \"TBA\";\r\n }\r\n if (this.model.terminalID == 3) {\r\n this.model.cargoNumber = \"ESC-\";\r\n this.model.nominatedVolume = 9500000;\r\n }\r\n if (this.model.terminalID == 4) {\r\n this.model.cargoNumber = \"EP-\";\r\n this.model.nominatedVolume = 440000;\r\n }\r\n }\r\n}\r\n","
    \r\n
  1. \r\n Home\r\n
  2. \r\n
\r\n\r\n\r\n
\r\n
\r\n
\r\n
\r\n

Create New Export

\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { Component, OnInit, TemplateRef } from '@angular/core';\r\nimport { Export } from '../_models/export';\r\nimport { ExportService } from '../_services/export.service';\r\nimport { AlertifyService } from '../_services/alertify.service';\r\nimport { Pagination, PaginatedResult } from '../_models/pagination';\r\nimport { Vessel } from '../_models/Vessel';\r\nimport { BsModalRef, BsModalService } from 'ngx-bootstrap/modal';\r\nimport { AuthService } from '../_services/auth.service';\r\nimport { Router } from '@angular/router';\r\n\r\n@Component({\r\n selector: \"app-export-table\",\r\n templateUrl: \"./export-table.component.html\",\r\n styleUrls: [\"./export-table.component.css\"]\r\n})\r\nexport class ExportTableComponent implements OnInit {\r\n exports: Export[];\r\n pagination: Pagination;\r\n pageNumber: number;\r\n pageSize: number;\r\n customSelected: string;\r\n vesselNames: any[];\r\n isCreatMode = false;\r\n exportToDuplicateID: number ;\r\n\r\n modalRef: BsModalRef;\r\n\r\n constructor(\r\n private exportService: ExportService,\r\n private alertify: AlertifyService,\r\n private modalService: BsModalService,\r\n private authService: AuthService,\r\n private router: Router\r\n ) {}\r\n\r\n ngOnInit() {\r\n this.pageNumber = 1;\r\n this.pageSize = 20;\r\n this.loadExports(this.pageNumber, this.pageSize);\r\n this.loadVessels();\r\n }\r\n\r\n loadExports(pn, ps) {\r\n this.exportService.getExports(pn, ps).subscribe(\r\n (exports: PaginatedResult) => {\r\n this.exports = exports.result;\r\n this.pagination = exports.pagination;\r\n },\r\n error => {\r\n this.alertify.error(error);\r\n }\r\n );\r\n }\r\n reloadExports() {\r\n this.exportService\r\n .getExports(\r\n this.pagination.currentPage,\r\n this.pagination.itemsPerPage,\r\n this.customSelected\r\n )\r\n .subscribe(\r\n (res: PaginatedResult) => {\r\n this.exports = res.result;\r\n this.pagination = res.pagination;\r\n },\r\n error => {\r\n this.alertify.error(error);\r\n }\r\n );\r\n }\r\n\r\n pageChanged(event: any): void {\r\n this.pagination.currentPage = event.page;\r\n this.reloadExports();\r\n }\r\n\r\n loadVessels() {\r\n this.exportService.getVessels().subscribe(\r\n (vessels: Vessel[]) => {\r\n this.vesselNames = vessels;\r\n },\r\n error => {\r\n this.alertify.error(error);\r\n }\r\n );\r\n }\r\n onSelect() {\r\n this.exportService\r\n .getExports(\r\n this.pagination.currentPage,\r\n this.pagination.itemsPerPage,\r\n this.customSelected\r\n )\r\n .subscribe(\r\n (res: PaginatedResult) => {\r\n this.exports = res.result;\r\n this.pagination = res.pagination;\r\n },\r\n error => {\r\n this.alertify.error(error);\r\n }\r\n );\r\n }\r\n\r\n isCreateModeToggele() {\r\n this.isCreatMode = !this.isCreatMode;\r\n }\r\n\r\n closeForm(e: boolean) {\r\n this.isCreatMode = e;\r\n }\r\n\r\n openModal(template: TemplateRef, e: any) {\r\n // console.log(e);\r\n this.exportToDuplicateID = e;\r\n this.modalRef = this.modalService.show(template);\r\n }\r\n\r\n closeConfirmModal() {\r\n this.modalRef.hide();\r\n }\r\n\r\n duplicateExport() {\r\n console.log(this.exportToDuplicateID);\r\n this.exportService.duplicateExportWithID(this.exportToDuplicateID, this.authService.decodedToken.nameid).subscribe(\r\n (exports: Export) => {\r\n this.modalRef.hide();\r\n this.alertify.success('Export Successfully Duplicated');\r\n this.router.navigate(['/dash-board']);\r\n }, error => {\r\n this.alertify.error('Problem Duplicating Export');\r\n }\r\n );\r\n }\r\n}\r\n","
\r\n

Terminal Top Exports

\r\n
    \r\n
  1. \r\n Home\r\n
  2. \r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
TerminalCargo#VesselLifterLaycanBOL DateBOL FigureETAAction
{{export?.terminals.name}}{{export?.cargoNumber}}{{export?.vessel.name}}{{export?.lifters.name}}{{export?.dateRangeStart | date:'MMM dd'}} - {{export?.dateRangeEnd | date:'MMM dd, yyy'}}{{export?.bolDate | date}}{{export?.actualCargo | number}}{{export?.eta | date}}\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n\r\n
\r\n

Action Confirmation

\r\n \r\n
\r\n
\r\n
\r\n

Are you sure you want to create a duplicate of this export. By click yes a new export instance would be created with the same details and a ----NEW flag on the Cargo Number.

\r\n
\r\n \r\n \r\n
\r\n
","import { Component, OnInit, Input } from '@angular/core';\r\nimport { ExportService } from '../_services/export.service';\r\nimport { AlertifyService } from '../_services/alertify.service';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport { ExportNode } from '../_models/exportnode';\r\nimport { Status } from '../_models/status';\r\nimport { NodeComment } from '../_models/nodecomment';\r\nimport { NodeStatus } from '../_models/nodestatus';\r\nimport { AuthService } from '../_services/auth.service';\r\n\r\n@Component({\r\n selector: \"app-export-update-activity-comment\",\r\n templateUrl: \"./export-update-activity-comment.component.html\",\r\n styleUrls: [\"./export-update-activity-comment.component.css\"]\r\n})\r\nexport class ExportUpdateActivityCommentComponent implements OnInit {\r\n @Input()\r\n exportnode: ExportNode;\r\n statuses: NodeStatus[];\r\n nodecomment: NodeComment[];\r\n nodeId: number;\r\n model: any = {};\r\n statusId: number;\r\n exportNodeUpdateModel: any = {};\r\n\r\n constructor(\r\n private exportService: ExportService,\r\n private alertify: AlertifyService,\r\n private route: ActivatedRoute,\r\n public authService: AuthService\r\n ) {}\r\n\r\n ngOnInit() {\r\n this.loadStatus();\r\n setTimeout(() => {\r\n this.loadNodeComment(this.exportnode.id);\r\n }, 2000);\r\n }\r\n\r\n loadStatus() {\r\n this.exportService.getNodeStatusList().subscribe(\r\n (statuses: NodeStatus[]) => {\r\n this.statuses = statuses;\r\n },\r\n error => {\r\n this.alertify.error(error);\r\n }\r\n );\r\n }\r\n\r\n loadNodeComment(en) {\r\n this.exportService.getNodeComment(en).subscribe(\r\n (nodecomments: NodeComment[]) => {\r\n this.nodecomment = nodecomments;\r\n console.log(this.exportnode);\r\n },\r\n error => {\r\n this.alertify.error(error);\r\n }\r\n );\r\n }\r\n Checking() {\r\n this.model.userid = this.authService.decodedToken.nameid;\r\n this.model.exportNodeId = this.exportnode.id;\r\n this.exportService.createComment(this.model).subscribe(\r\n () => {\r\n this.alertify.success('Comment Added');\r\n this.ngOnInit();\r\n this.model.comment = '';\r\n },\r\n error => {\r\n this.alertify.error('Server Error Unable to Create Added');\r\n }\r\n );\r\n }\r\n\r\n updateActivityStatus() {\r\n this.exportNodeUpdateModel.id = this.exportnode.id;\r\n this.exportNodeUpdateModel.nodeStatusId = this.statusId;\r\n console.log(this.exportNodeUpdateModel);\r\n\r\n this.exportService\r\n .updateExportNodeStatus(this.exportNodeUpdateModel)\r\n .subscribe(\r\n () => {\r\n this.alertify.success('Status Successfully Updated');\r\n },\r\n error => {\r\n this.alertify.error('Unable to Activity Status');\r\n }\r\n );\r\n }\r\n}\r\n","
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { Export } from '../_models/export';\r\nimport { ExportService } from '../_services/export.service';\r\nimport { AlertifyService } from '../_services/alertify.service';\r\n\r\n@Component({\r\n selector: 'app-export',\r\n templateUrl: './export.component.html',\r\n styleUrls: ['./export.component.css']\r\n})\r\nexport class ExportComponent implements OnInit {\r\n exports: Export[];\r\n isCreatMode = false;\r\n loaderEnabled = true;\r\n enableLoader = true;\r\n\r\n constructor(private exportService: ExportService, private alertify: AlertifyService) { }\r\n\r\n ngOnInit() {\r\n this.loadExports();\r\n }\r\n\r\n loadExports() {\r\n this.exportService.getInQueueExports().subscribe((exports: Export[]) => {\r\n this.loaderEnabled = false;\r\n this.exports = exports;\r\n this.enableLoader = false;\r\n // console.log(this.exports);\r\n }, error => {\r\n this.alertify.error(error);\r\n });\r\n }\r\n\r\n isCreateModeToggele() {\r\n this.isCreatMode = !this.isCreatMode;\r\n }\r\n enableCreate(e: boolean) {\r\n // console.log(e);\r\n this.isCreatMode = e;\r\n }\r\n\r\n closeForm(e: boolean) {\r\n this.isCreatMode = e;\r\n }\r\n}\r\n","
\r\n

Terminal Top Exports

\r\n
    \r\n
  1. \r\n Home\r\n
  2. \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { ExportService } from 'src/app/_services/export.service';\r\nimport { AlertifyService } from 'src/app/_services/alertify.service';\r\nimport { AuthService } from 'src/app/_services/auth.service';\r\nimport { BsModalService } from 'ngx-bootstrap/modal';\r\nimport { Ness } from 'src/app/_models/ness';\r\n\r\nimport * as jspdf from \"jspdf\";\r\nimport html2canvas from \"html2canvas\";\r\n\r\n@Component({\r\n selector: 'app-completed-ness',\r\n templateUrl: './completed-ness.component.html',\r\n styleUrls: ['./completed-ness.component.css']\r\n})\r\nexport class CompletedNessComponent implements OnInit {\r\n\r\n nessArray: Ness[];\r\n payReqNumber: number;\r\n nessId: number;\r\n totalNessValue: number;\r\n\r\n constructor(\r\n private exportService: ExportService,\r\n private alertify: AlertifyService,\r\n private authService: AuthService,\r\n private modalService: BsModalService\r\n ) { }\r\n\r\n ngOnInit() {\r\n this.loadNessPendingPayReq();\r\n }\r\n\r\n loadNessPendingPayReq() {\r\n this.exportService.getNessWithCompletedPayReq().subscribe(\r\n (ness: Ness[]) => {\r\n this.nessArray = ness;\r\n this.calculateTotalNessValue(this.nessArray);\r\n },\r\n error => {\r\n this.alertify.error('Unable to retrieve ness details');\r\n }\r\n );\r\n }\r\n\r\n calculateTotalNessValue(arrayObj: Ness[]) {\r\n let accumulator = 0.00;\r\n for (let index = 0; index < arrayObj.length; index++) {\r\n accumulator = accumulator + arrayObj[index].nessPayable;\r\n }\r\n this.totalNessValue = accumulator;\r\n }\r\n\r\n public captureScreen() {\r\n const data = document.getElementById('contentToConvert');\r\n html2canvas(data).then(canvas => {\r\n // Few necessary setting options\r\n const imgWidth = 208;\r\n const pageHeight = 295;\r\n const imgHeight = canvas.height * imgWidth / canvas.width;\r\n const heightLeft = imgHeight;\r\n\r\n const contentDataURL = canvas.toDataURL('image/png')\r\n const pdf = new jspdf('p', 'mm', 'a4'); // A4 size page of PDF\r\n const position = 0;\r\n pdf.addImage(contentDataURL, 'PNG', 0, position, imgWidth, imgHeight);\r\n pdf.save('MYPdf.pdf'); // Generated PDF\r\n });\r\n }\r\n\r\n}\r\n","
\r\n
    \r\n
  1. \r\n Financial Home\r\n
  2. \r\n
\r\n \r\n
\r\n
NESS Payment Summary
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
VesselBOL DetailVolume Price DetailsFX Rate Total ValueNESS PayablePayReq
{{ness.export.cargoNumber}}\r\n

{{ness.export.vessel.name}}

\r\n
{{ness.export.terminals.name}} | {{ness.export.lifters.name}} |

{{ness.export.bolDate | date:'MMM dd, yyyy'}}

{{ness.export.actualCargo | number}} @{{ness.export.fiscalPrice | currency}}

={{ness.totalCargoValueUSD | currency}}

@{{ness.exchangeRate.rate | currency: 'N'}} = {{ness.totalCargoValueNGN | currency: 'N'}}@{{ness.tax.rate}}% ={{ness.nessPayable | currency: 'N'}}{{ness.payReqNumber}}

NXP: {{ness.export.nxpNumber}}

\r\n
Total NESS Payable : {{totalNessValue | currency: 'NGN '}}
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { ExchangeRate } from '../../_models/exchangerate';\r\nimport { ExportService } from '../../_services/export.service';\r\nimport { AlertifyService } from '../../_services/alertify.service';\r\nimport { ActivatedRoute, Router } from '../../../../node_modules/@angular/router';\r\nimport { AuthService } from '../../_services/auth.service';\r\nimport { BsModalService } from '../../../../node_modules/ngx-bootstrap/modal';\r\n\r\n@Component({\r\n selector: 'app-exchange-rate',\r\n templateUrl: './exchange-rate.component.html',\r\n styleUrls: ['./exchange-rate.component.css']\r\n})\r\nexport class ExchangeRateComponent implements OnInit {\r\n\r\n model: any ={};\r\n exchangeRateArray: ExchangeRate[];\r\n isLoading = false;\r\n\r\n constructor(\r\n private exportService: ExportService,\r\n private alertify: AlertifyService,\r\n private route: ActivatedRoute,\r\n private nav: Router,\r\n private authService: AuthService,\r\n private modalService: BsModalService\r\n ) { }\r\n\r\n ngOnInit() {\r\n this.getExchangeRates();\r\n }\r\n\r\n getExchangeRates() {\r\n this.isLoading = true;\r\n this.exportService.getExchangeRate().subscribe(\r\n (exchangeRate: ExchangeRate[]) => {\r\n this.isLoading = false ;\r\n this.exchangeRateArray = exchangeRate;\r\n },\r\n error => {\r\n this.alertify.error('Unable to Retrieve Exchange Rate Data');\r\n }\r\n );\r\n }\r\n\r\n addExchangeRate() {\r\n this.model.userId = this.authService.decodedToken.nameid ;\r\n this.exchangeRateArray.push(this.model);\r\n this.exportService.createExchangeRate(this.model).subscribe(\r\n () => {\r\n this.alertify.success('Exchange Entry Created');\r\n this.getExchangeRates();\r\n },\r\n error => {\r\n this.alertify.error('Unable To Create Exchange Rate');\r\n }\r\n );\r\n }\r\n deleteExchangeRate(id: number) {\r\n console.log(id);\r\n\r\n // Web Service to delete exchange\r\n this.exportService.deleteExchangeRate(id).subscribe(\r\n () => {\r\n this.alertify.success('Exchange Rate Deleted');\r\n this.getExchangeRates();\r\n }, error => {\r\n console.log(error);\r\n this.alertify.error('Could not delete exchange rate');\r\n }\r\n );\r\n\r\n\r\n }\r\n\r\n}\r\n","
\r\n
    \r\n
  1. \r\n Financial Home\r\n
  2. \r\n
\r\n \r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
DateExchangeAction
{{exchange.dateCreated | date:'MMM, yyy'}}{{exchange.rate}}\r\n \r\n
\r\n
\r\n
\r\n
\r\n","import { Component, OnInit, TemplateRef } from '@angular/core';\r\nimport { BsModalService } from 'ngx-bootstrap/modal';\r\nimport { BsModalRef } from 'ngx-bootstrap/modal/bs-modal-ref.service';\r\nimport { Tax } from 'src/app/_models/tax';\r\nimport { ExportService } from 'src/app/_services/export.service';\r\nimport { AlertifyService } from 'src/app/_services/alertify.service';\r\n\r\n@Component({\r\n selector: 'app-financial-home',\r\n templateUrl: './financial-home.component.html',\r\n styleUrls: ['./financial-home.component.css']\r\n})\r\nexport class FinancialHomeComponent implements OnInit {\r\n\r\n nessMode = true;\r\n exchangeRateMode = true;\r\n modalRef: BsModalRef;\r\n taxArray: Tax[];\r\n\r\n public taxForm = {\r\n id: null,\r\n rate: null\r\n };\r\n\r\n constructor(private modalService: BsModalService,\r\n private exportService: ExportService,\r\n private alertify: AlertifyService) { }\r\n\r\n ngOnInit() {\r\n this.getTaxes();\r\n }\r\n toggleNessMode(){\r\n this.nessMode = !this.nessMode;\r\n }\r\n toggleExchangeRateMode(){\r\n this.exchangeRateMode = !this.exchangeRateMode;\r\n }\r\n openModal(template: TemplateRef) {\r\n this.modalRef = this.modalService.show(template);\r\n }\r\n\r\n getTaxes() {\r\n this.exportService.getTaxes().subscribe(\r\n (taxes: Tax[]) => {\r\n this.taxArray = taxes;\r\n }, error => {\r\n this.alertify.error('Unable to Load Tax Details');\r\n }\r\n );\r\n }\r\n\r\n updateTax() {\r\n this.exportService.updateTaxRate(this.taxForm).subscribe(\r\n () => {\r\n this.alertify.success('Tax Rate Updated Successfuly');\r\n }, error => {\r\n this.alertify.error('Unable to Update Tax Rate');\r\n }\r\n );\r\n }\r\n\r\n}\r\n","
\r\n
    \r\n
  1. \r\n Financial Home\r\n
  2. \r\n
\r\n \r\n \r\n \r\n
\r\n\r\n\r\n
\r\n

Add Consignee

\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n","import { Component, OnInit, TemplateRef } from '@angular/core';\r\nimport { ExportService } from 'src/app/_services/export.service';\r\nimport { AlertifyService } from 'src/app/_services/alertify.service';\r\nimport { AuthService } from 'src/app/_services/auth.service';\r\nimport { Ness } from 'src/app/_models/ness';\r\nimport { BsModalService } from \"ngx-bootstrap/modal\";\r\nimport { BsModalRef } from \"ngx-bootstrap/modal/bs-modal-ref.service\";\r\n\r\nimport * as jspdf from \"jspdf\";\r\nimport html2canvas from \"html2canvas\";\r\n\r\n\r\n@Component({\r\n selector: \"app-ness-payreq\",\r\n templateUrl: \"./ness-payreq.component.html\",\r\n styleUrls: [\"./ness-payreq.component.css\"]\r\n})\r\nexport class NessPayreqComponent implements OnInit {\r\n modalRef: BsModalRef;\r\n nessArray: Ness[];\r\n payReqNumber: number;\r\n nessId: number;\r\n totalNessValue: number;\r\n\r\n constructor(\r\n private exportService: ExportService,\r\n private alertify: AlertifyService,\r\n private authService: AuthService,\r\n private modalService: BsModalService\r\n ) {}\r\n\r\n ngOnInit() {\r\n this.loadNessPendingPayReq();\r\n }\r\n\r\n openModal(template: TemplateRef, e: any) {\r\n this.nessId = e.id;\r\n this.modalRef = this.modalService.show(template);\r\n }\r\n\r\n loadNessPendingPayReq() {\r\n this.exportService.getNessPendingPayReq().subscribe(\r\n (ness: Ness[]) => {\r\n this.nessArray = ness;\r\n this.calculateTotalNessValue(this.nessArray);\r\n },\r\n error => {\r\n this.alertify.error('Unable to retrieve ness details');\r\n }\r\n );\r\n }\r\n updatePayReqNumber() {\r\n this.exportService.updatePayReqForNessWith(this.nessId, this.payReqNumber).subscribe(\r\n () => {\r\n this.alertify.success('PayReq Number Updated');\r\n this.ngOnInit();\r\n this.modalRef.hide();\r\n },\r\n error => {\r\n this.alertify.error('Unable to Update PayReq Details');\r\n }\r\n );\r\n }\r\n\r\n calculateTotalNessValue(arrayObj: Ness[]) {\r\n let accumulator = 0.00;\r\n for (let index = 0; index < arrayObj.length; index++) {\r\n accumulator = accumulator + arrayObj[index].nessPayable;\r\n console.log(accumulator);\r\n }\r\n this.totalNessValue = accumulator;\r\n }\r\n\r\n public captureScreen() {\r\n const data = document.getElementById('contentToConvert');\r\n html2canvas(data).then(canvas => {\r\n // Few necessary setting options\r\n const imgWidth = 208;\r\n const pageHeight = 295;\r\n const imgHeight = canvas.height * imgWidth / canvas.width;\r\n const heightLeft = imgHeight;\r\n\r\n const contentDataURL = canvas.toDataURL('image/png')\r\n const pdf = new jspdf('p', 'mm', 'a4'); // A4 size page of PDF\r\n const position = 0;\r\n pdf.addImage(contentDataURL, 'PNG', 0, position, imgWidth, imgHeight);\r\n pdf.save('MYPdf.pdf'); // Generated PDF\r\n });\r\n }\r\n}\r\n","
\r\n
    \r\n
  1. \r\n Financial Home\r\n
  2. \r\n
\r\n \r\n
\r\n
NESS Payment Summary
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
VesselBOL DetailVolume Price DetailsFX Rate Total ValueNESS PayablePayReqAction
{{ness.export.cargoNumber}}\r\n

{{ness.export.vessel.name}}

\r\n
{{ness.export.terminals.name}} | {{ness.export.lifters.name}} |

{{ness.export.bolDate | date:'MMM dd, yyyy'}}

{{ness.export.actualCargo | number}} @{{ness.export.fiscalPrice | currency}}

={{ness.totalCargoValueUSD | currency}}

@{{ness.exchangeRate.rate | currency: 'N'}} = {{ness.totalCargoValueNGN | currency: 'N'}}@{{ness.tax.rate}}% ={{ness.nessPayable | currency: 'N'}}{{ness.payReqNumber}}

NXP: {{ness.export.nxpNumber}}

\r\n
\r\n \r\n \r\n
\r\n
\r\n
Total NESS Payable : {{totalNessValue | currency: 'NGN '}}
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n\r\n
\r\n

Enter PayReq Number

\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n Enter PayReq Number Generated By PayReq\r\n
\r\n \r\n
\r\n
\r\n","import { Component, OnInit, TemplateRef } from \"@angular/core\";\r\nimport { Router } from \"@angular/router\";\r\nimport html2canvas from \"html2canvas\";\r\nimport * as jspdf from \"jspdf\";\r\nimport { BsModalRef, BsModalService } from \"ngx-bootstrap/modal\";\r\nimport { TypeaheadMatch } from \"ngx-bootstrap/typeahead\";\r\nimport { CargoType } from \"src/app/_models/cargotype\";\r\nimport { ExchangeRate } from \"src/app/_models/exchangerate\";\r\nimport { Export } from \"src/app/_models/export\";\r\nimport { Lifter } from \"src/app/_models/lifter\";\r\nimport { PaginatedResult } from \"src/app/_models/pagination\";\r\nimport { Product } from \"src/app/_models/product\";\r\nimport { Tax } from \"src/app/_models/tax\";\r\nimport { Terminal } from \"src/app/_models/terminal\";\r\nimport { Vessel } from \"src/app/_models/Vessel\";\r\nimport { AlertifyService } from \"src/app/_services/alertify.service\";\r\nimport { AuthService } from \"src/app/_services/auth.service\";\r\nimport { DateService } from \"src/app/_services/date.service\";\r\nimport { ExportService } from \"src/app/_services/export.service\";\r\n\r\n@Component({\r\n selector: \"app-ness\",\r\n templateUrl: \"./ness.component.html\",\r\n styleUrls: [\"./ness.component.css\"],\r\n})\r\nexport class NessComponent implements OnInit {\r\n modalRef: BsModalRef;\r\n enableLoader = true;\r\n nessPayableArray: any = [\r\n {\r\n exportId: 1,\r\n cargoNumber: \"AGB-905\",\r\n terminalId: 1,\r\n terminal: {\r\n name: \"Agbami\",\r\n },\r\n productId: 1,\r\n product: {\r\n name: \"Crude\",\r\n },\r\n lifterId: 1,\r\n lifter: {\r\n name: \"STARDEEP\",\r\n },\r\n vessel: {\r\n name: \"MT BIANCO\",\r\n },\r\n bolFigure: 975000,\r\n bolDate: \"2/2/2018\",\r\n fiscalPrice: 82.56,\r\n exchangeRate: 305.45,\r\n nessRate: 0.0012,\r\n totalCargoValueUSD: 0.0,\r\n totalCargoValueNGN: 0.0,\r\n nessPayable: 0.0,\r\n },\r\n ];\r\n\r\n calculatedNESSArray: any = [\r\n {\r\n exportId: 2,\r\n cargoNumber: \"\",\r\n terminalId: 1,\r\n terminal: {\r\n name: \"\",\r\n },\r\n productId: 1,\r\n product: {\r\n name: \"\",\r\n },\r\n vessel: {\r\n name: \"\",\r\n },\r\n lifterId: 1,\r\n lifter: {\r\n name: \"\",\r\n },\r\n bolFigure: 0,\r\n bolDate: \"\",\r\n fiscalPrice: 0.0,\r\n exchangeRate: 0.0,\r\n nessRate: 0.0,\r\n totalCargoValueUSD: 0.0,\r\n totalCargoValueNGN: 0.0,\r\n nessPayable: 0.0,\r\n nxpNumber: \"\",\r\n },\r\n ];\r\n exportWithOpenNESSArray: any[];\r\n initalNessGenerated = false;\r\n nessTax: any = {};\r\n selectedExportRecord: any = {};\r\n selectedExportExchangeRate: any = {};\r\n model: any = {};\r\n modelArray: any = [\r\n {\r\n exportId: 1,\r\n exchangeRateId: 1,\r\n taxId: 1,\r\n totalCargoValueUSD: 789000,\r\n totalCargoValueNGN: 788009,\r\n nessPayable: 234898998,\r\n payReqNumber: 234545,\r\n },\r\n ];\r\n\r\n exportId: number;\r\n exportNumber: any;\r\n vesselName: any;\r\n fiscalPrice: number;\r\n bolFigure: number;\r\n bolDate: string;\r\n bolModel: any = {};\r\n selectedNXP: string;\r\n\r\n // Filtering Variables\r\n pagination: any = {};\r\n pageNumber: number;\r\n pageSize: number;\r\n customSelected: string;\r\n vesselNames: any[];\r\n terminals: Terminal[];\r\n products: Product[];\r\n lifters: Lifter[];\r\n cargotypes: CargoType[];\r\n terminalName: string;\r\n lifterName: string;\r\n productName: string;\r\n dateStart: any;\r\n dateEnd: any;\r\n dateStartToSend: any;\r\n dateEndToSend: any;\r\n userId: number;\r\n statusId: number;\r\n selectedCargoNumber: any;\r\n\r\n constructor(\r\n private modalService: BsModalService,\r\n private exportService: ExportService,\r\n private alertify: AlertifyService,\r\n private route: Router,\r\n private authService: AuthService,\r\n private dateService: DateService\r\n ) {}\r\n\r\n ngOnInit() {\r\n this.pageNumber = 1;\r\n this.pageSize = 10;\r\n\r\n this.loadOpenNESS(this.pageNumber, this.pageSize);\r\n this.getNessTaxRate();\r\n\r\n this.loadVessels();\r\n this.loadTerminals();\r\n this.loadLifters();\r\n this.loadProducts();\r\n }\r\n loadVessels() {\r\n this.exportService.getVessels().subscribe(\r\n (vessels: Vessel[]) => {\r\n this.vesselNames = vessels;\r\n },\r\n (error) => {\r\n this.alertify.error(error);\r\n }\r\n );\r\n }\r\n loadCargoTypes() {\r\n this.exportService.getCargoTypes().subscribe(\r\n (cargotypes: CargoType[]) => {\r\n this.cargotypes = cargotypes;\r\n },\r\n (error) => {\r\n this.alertify.error(error);\r\n }\r\n );\r\n }\r\n loadTerminals() {\r\n this.exportService.getTerminals().subscribe(\r\n (terminals: Terminal[]) => {\r\n this.terminals = terminals;\r\n },\r\n (error) => {\r\n this.alertify.error(error);\r\n }\r\n );\r\n }\r\n loadProducts() {\r\n this.exportService.getProducts().subscribe(\r\n (products: Product[]) => {\r\n this.products = products;\r\n },\r\n (error) => {\r\n this.alertify.error(error);\r\n }\r\n );\r\n }\r\n loadLifters() {\r\n this.exportService.getLifters().subscribe(\r\n (lifters: Lifter[]) => {\r\n this.lifters = lifters;\r\n },\r\n (error) => {\r\n this.alertify.error(error);\r\n }\r\n );\r\n }\r\n openModal(template: TemplateRef, e: any) {\r\n // console.log(e);\r\n this.exportId = e.id;\r\n this.exportNumber = e.cargoNumber;\r\n this.vesselName = e.vessel.name;\r\n this.modalRef = this.modalService.show(template);\r\n }\r\n openNXPModal(template: TemplateRef, e: any) {\r\n // console.log(e);\r\n this.exportId = e.id;\r\n this.exportNumber = e.cargoNumber;\r\n this.vesselName = e.vessel.name;\r\n this.modalRef = this.modalService.show(template);\r\n }\r\n openBOLModal(template: TemplateRef, e: any) {\r\n this.exportId = e.id;\r\n this.bolDate = e.bolDate;\r\n this.bolFigure = e.bolFigure;\r\n\r\n this.bolModel.id = this.exportId;\r\n this.bolModel.bolFigure = e.bolFigure;\r\n this.bolModel.bolDate = e.bolDate;\r\n\r\n this.modalRef = this.modalService.show(template);\r\n }\r\n\r\n updateFiscalPrice() {\r\n this.exportService\r\n .updateFiscalPriceForExport(this.exportId, this.fiscalPrice)\r\n .subscribe(\r\n () => {\r\n this.alertify.success(\"Price Updated for Export\");\r\n this.ngOnInit();\r\n this.modalRef.hide();\r\n },\r\n (error) => {\r\n this.alertify.error(\"Unable to update Price\");\r\n }\r\n );\r\n }\r\n updateBOLFigures() {\r\n // console.log(this.bolModel);\r\n this.exportService.UpdateExportBOL(this.bolModel).subscribe(\r\n () => {\r\n this.alertify.success(\"BOL Dtails Updated for Export\");\r\n this.ngOnInit();\r\n this.modalRef.hide();\r\n },\r\n (error) => {\r\n this.alertify.error(\"Unable to update BOL Details\");\r\n }\r\n );\r\n }\r\n\r\n updateNXPValue() {\r\n this.exportService\r\n .updateNXPForExport(this.exportId, this.selectedNXP)\r\n .subscribe(\r\n () => {\r\n this.alertify.success(\"NXP Number Succesfully Updated for Export\");\r\n this.ngOnInit();\r\n this.modalRef.hide();\r\n },\r\n (error) => {\r\n this.alertify.error(\"Unable to update NXP Number\");\r\n }\r\n );\r\n this.modalRef.hide();\r\n }\r\n\r\n GenerateNess(e) {\r\n // console.log(e);\r\n this.getExchangeRateForExport(this.dateService.urlDate(e.bolDate), e);\r\n }\r\n\r\n DeleteNessRow(e) {\r\n // console.log(e);\r\n for (let index = 0; index < this.calculatedNESSArray.length; index++) {\r\n const element = this.calculatedNESSArray[index];\r\n if (e === element) {\r\n this.calculatedNESSArray.splice(index, 1);\r\n }\r\n }\r\n }\r\n\r\n //\r\n\r\n loadOpenNESS(pn, ps) {\r\n this.exportService.getExportWithOpenNESS(pn, ps).subscribe(\r\n (exports: PaginatedResult) => {\r\n this.exportWithOpenNESSArray = exports.result;\r\n this.nessPayableArray = exports.result;\r\n this.pagination = exports.pagination;\r\n this.enableLoader = false;\r\n // console.log(this.exportWithOpenNESSArray);\r\n },\r\n (error) => {\r\n this.alertify.error(\"Something went wrong loading export\");\r\n }\r\n );\r\n }\r\n reloadOpenNess() {\r\n this.exportService\r\n .getExports(\r\n this.pagination.currentPage,\r\n this.pagination.itemsPerPage,\r\n this.customSelected,\r\n this.terminalName,\r\n this.lifterName,\r\n this.productName,\r\n this.dateStartToSend,\r\n this.dateEndToSend,\r\n this.statusId,\r\n this.userId,\r\n this.selectedCargoNumber\r\n )\r\n .subscribe(\r\n (res: PaginatedResult) => {\r\n this.exportWithOpenNESSArray = res.result;\r\n this.nessPayableArray = res.result;\r\n this.pagination = res.pagination;\r\n },\r\n (error) => {\r\n this.alertify.error(error);\r\n }\r\n );\r\n }\r\n\r\n getNessTaxRate() {\r\n this.exportService.getNessTax().subscribe(\r\n (returnedTax: Tax) => {\r\n this.nessTax = returnedTax;\r\n // console.log(this.nessTax);\r\n },\r\n (error) => {\r\n this.alertify.error(\"Unable to load tax details\");\r\n }\r\n );\r\n }\r\n\r\n getExchangeRateForExport(bolDate, e: any) {\r\n this.exportService.getExchangeRateForExport(bolDate).subscribe(\r\n (returnedExchangeRate: ExchangeRate) => {\r\n this.selectedExportExchangeRate = returnedExchangeRate;\r\n this.selectedExportRecord.exchangeRate =\r\n this.selectedExportExchangeRate.rate;\r\n\r\n let valueUSD = 0.0;\r\n let valueNGN = 0.0;\r\n\r\n valueUSD = e.fiscalPrice * e.actualCargo;\r\n valueNGN = valueUSD * this.selectedExportExchangeRate.rate;\r\n // console.log(valueNGN);\r\n this.selectedExportRecord.id = e.id;\r\n this.selectedExportRecord.exportId = e.id;\r\n this.selectedExportRecord.cargoNumber = e.cargoNumber;\r\n this.selectedExportRecord.bolFigure = e.actualCargo;\r\n this.selectedExportRecord.bolDate = e.bolDate;\r\n this.selectedExportRecord.nxpNumber = e.nxpNumber;\r\n this.selectedExportRecord.terminal = e.terminals;\r\n this.selectedExportRecord.terminalId = e.terminals.id;\r\n this.selectedExportRecord.lifter = e.lifters;\r\n this.selectedExportRecord.vessel = e.vessel;\r\n this.selectedExportRecord.fiscalPrice = e.fiscalPrice;\r\n this.selectedExportRecord.nessRate = this.nessTax.rate;\r\n this.selectedExportRecord.taxId = this.nessTax.id;\r\n this.selectedExportRecord.totalCargoValueUSD = valueUSD;\r\n this.selectedExportRecord.totalCargoValueNGN = valueNGN;\r\n this.selectedExportRecord.nessPayable =\r\n this.selectedExportRecord.totalCargoValueNGN *\r\n this.selectedExportRecord.nessRate;\r\n\r\n this.model.exportId = e.id;\r\n this.model.terminalId = e.terminals.id;\r\n this.model.exchangeRateId = this.selectedExportExchangeRate.id;\r\n this.model.taxId = this.nessTax.id;\r\n this.model.totalCargoValueUSD = valueUSD;\r\n this.model.totalCargoValueNGN = valueNGN;\r\n this.model.nessPayable =\r\n this.selectedExportRecord.totalCargoValueNGN *\r\n this.selectedExportRecord.nessRate;\r\n\r\n if (!this.initalNessGenerated) {\r\n this.calculatedNESSArray.unshift(this.selectedExportRecord);\r\n this.modelArray.unshift(this.model);\r\n this.calculatedNESSArray.pop();\r\n this.modelArray.pop();\r\n this.selectedExportRecord = {};\r\n this.model = {};\r\n } else {\r\n this.calculatedNESSArray.push(this.selectedExportRecord);\r\n this.modelArray.push(this.model);\r\n this.selectedExportRecord = {};\r\n this.selectedExportRecord = {};\r\n }\r\n this.initalNessGenerated = true;\r\n },\r\n (error) => {\r\n this.alertify.error(\"Unable To Get Exchange Rate\");\r\n }\r\n );\r\n }\r\n\r\n processNESS(e) {\r\n console.log(this.modelArray);\r\n this.exportService.processNess(this.modelArray).subscribe(\r\n () => {\r\n this.alertify.success(\"Ness Processing Successful\");\r\n\r\n while (this.calculatedNESSArray.length > 0) {\r\n this.calculatedNESSArray.pop();\r\n }\r\n while (this.modelArray.length > 0) {\r\n this.modelArray.pop();\r\n }\r\n this.ngOnInit();\r\n this.initalNessGenerated = false;\r\n },\r\n (error) => {\r\n this.alertify.error(\"Unable to Process Ness\");\r\n }\r\n );\r\n }\r\n\r\n public captureScreen() {\r\n const data = document.getElementById(\"contentToConvert\");\r\n html2canvas(data).then((canvas) => {\r\n // Few necessary setting options\r\n const imgWidth = 208;\r\n const pageHeight = 295;\r\n const imgHeight = (canvas.height * imgWidth) / canvas.width;\r\n const heightLeft = imgHeight;\r\n\r\n const contentDataURL = canvas.toDataURL(\"image/png\");\r\n const pdf = new jspdf(\"p\", \"mm\", \"a4\"); // A4 size page of PDF\r\n const position = 0;\r\n pdf.addImage(contentDataURL, \"PNG\", 0, position, imgWidth, imgHeight);\r\n pdf.save(\"NESS.pdf\"); // Generated PDF\r\n });\r\n }\r\n runQuery() {\r\n this.reloadOpenNess();\r\n }\r\n\r\n clearFileter() {\r\n this.terminalName = null;\r\n this.productName = null;\r\n this.lifterName = null;\r\n this.productName = null;\r\n this.dateStartToSend = null;\r\n this.dateEndToSend = null;\r\n this.statusId = null;\r\n this.userId = null;\r\n this.selectedCargoNumber = null;\r\n this.reloadOpenNess();\r\n }\r\n\r\n onDateStartChange(value: Date): void {\r\n this.dateStartToSend = this.dateService.urlDate(value);\r\n const today = new Date(Date.now());\r\n this.dateEndToSend = this.dateService.urlDate(today);\r\n }\r\n onDateEndChange(value: Date): void {\r\n this.dateEndToSend = this.dateService.urlDate(value);\r\n }\r\n pageChanged(event: any): void {\r\n this.pagination.currentPage = event.page;\r\n this.reloadOpenNess();\r\n }\r\n onSelectCargoNumber(event: TypeaheadMatch): void {\r\n this.selectedCargoNumber = event.item.cargoNumber;\r\n }\r\n}\r\n","
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n 0 && nessObj?.actualCargo > 0 && nessObj?.nxpNumber != null\"\r\n >\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
#Cargo#Vessel - TerminalLifterBOL FigureBOL DateFiscal PriceNESS RateAction
{{nessObj.id}}{{nessObj.cargoNumber}}{{nessObj.vessel.name}} | {{nessObj.terminals?.name}}{{nessObj.lifters?.name}} \r\n

{{nessObj?.nxpNumber}}

\r\n
{{nessObj.actualCargo | number}}{{nessObj.bolDate | date}}{{nessObj.fiscalPrice | currency}}{{nessTax?.rate}}%\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
NESS Batch Summary
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
LifterBOL VolumeFx RateNESS Rate
{{calcNessObj.lifter.name | uppercase}} | {{calcNessObj.vessel.name | uppercase}} | {{calcNessObj.bolDate | date: 'MMM dd, yyy'}} \r\n NXP : {{calcNessObj.nxpNumber}}{{calcNessObj.bolFigure | number}} BBL. @{{calcNessObj.fiscalPrice | currency}} = {{calcNessObj.totalCargoValueUSD | currency}}@{{calcNessObj.exchangeRate | currency: 'N'}} = {{calcNessObj.totalCargoValueNGN | currency: 'N'}}@{{calcNessObj.nessRate }} = {{calcNessObj.nessPayable | currency: 'N'}}
\r\n
\r\n
\r\n \r\n \r\n
\r\n\r\n\r\n
\r\n

Update Fiscal Price

\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n\r\n
\r\n

Update BOL Figures

\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n\r\n
\r\n

Update NXP Number

\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-footer',\r\n templateUrl: './footer.component.html',\r\n styleUrls: ['./footer.component.css',\r\n // \"./../../assets/fav/apple-touch-icon-precomposed.png\",\r\n \"./../../assets/fonts/Gotham/gotham-fonts.css\",\r\n \"./../../assets/css/bootstrap-3.3.4.chevron.css\",\r\n \"./../../assets/css/rte-shared.css\",\r\n \"./../../assets/css/site.css\",\r\n './../../assets/css/rte-shared.css',\r\n \"./../../assets/css/modules/alert-shim.css\",\r\n \"./../../assets/css/modules/link-bar.css\",\r\n \"./../../assets/css/modules/navbar.css\",\r\n \"./../../assets/css/modules/footer.css\",\r\n \"./../../assets/css/modules/search-bar.css\",\r\n \"./../../assets/css/modules/side-nav.css\",\r\n \"./../../assets/css/modules/tabbed-content-control.css\",\r\n \"./../../assets/css/modules/table.css\",\r\n \"./../../assets/css/modules/tag.css\",\r\n \"./../../assets/css/modules/thumbnail-promo.css\"\r\n]\r\n})\r\nexport class FooterComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","\r\n\r\n","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-forecast-generator',\r\n templateUrl: './forecast-generator.component.html',\r\n styleUrls: ['./forecast-generator.component.css']\r\n})\r\nexport class ForecastGeneratorComponent implements OnInit {\r\n\r\n forecastProductionArray: any = [\r\n {\r\n duration: 0,\r\n value: 0\r\n }\r\n ];\r\n model: any = {};\r\n duration: number;\r\n value: number;\r\n\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n }\r\n addToArray() {\r\n this.model.duration = this.duration;\r\n this.model.value = this.value;\r\n this.forecastProductionArray.push(this.model);\r\n const durationInputBox = document.getElementById('durationInput');\r\n const valueInputBox = document.getElementById('valueInput');\r\n durationInputBox.nodeValue = '';\r\n durationInputBox.focus();\r\n valueInputBox.nodeValue = '';\r\n console.log(this.forecastProductionArray);\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n {{forecast.duration}} This\r\n {{forecast.value | number}}\r\n
\r\n
\r\n
\r\n
\r\n","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-forecast-home',\r\n templateUrl: './forecast-home.component.html',\r\n styleUrls: ['./forecast-home.component.css']\r\n})\r\nexport class ForecastHomeComponent implements OnInit {\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","
\r\n

Lifting Program Module

\r\n \r\n \r\n
\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { BsModalService } from 'ngx-bootstrap/modal';\r\nimport { TypeaheadMatch } from 'ngx-bootstrap/typeahead';\r\nimport { Terminal } from '../../_models/terminal';\r\nimport { Lifter } from '../../_models/lifter';\r\nimport { ExportService } from '../../_services/export.service';\r\nimport { AlertifyService } from '../../_services/alertify.service';\r\nimport { Router } from '@angular/router';\r\nimport { AgbamiLiftingProgram } from '../../_models/agbamiliftingprogram';\r\nimport { AuthService } from '../../_services/auth.service';\r\n\r\n@Component({\r\n selector: \"app-forecast-nav\",\r\n templateUrl: \"./forecast-nav.component.html\",\r\n styleUrls: [\"./forecast-nav.component.css\"]\r\n})\r\nexport class ForecastNavComponent implements OnInit {\r\n isCollapsed = false;\r\n model: any = {};\r\n batchNumber: string;\r\n\r\n constructor(\r\n private modalService: BsModalService,\r\n private exportService: ExportService,\r\n private alertify: AlertifyService,\r\n private route: Router,\r\n public authService: AuthService\r\n ) {}\r\n\r\n ngOnInit() {\r\n this.model.dailyProduction = 250000;\r\n this.model.starDeepBOH = 20000;\r\n this.model.famfaBOH = 20000;\r\n this.model.petroBrasBOH = 20000;\r\n this.model.oML127TaxOilBOH = 20000;\r\n this.model.statoilBOH = 20000;\r\n this.model.tnosBOH = 20000;\r\n this.model.nNPCBOH = 20000;\r\n this.model.startDate = new Date(\"2018-01-01\");\r\n this.model.duration = 20000;\r\n this.model.openingBalance = 20000;\r\n this.model.comment = \"This is a test batch\";\r\n this.model.userId = this.authService.decodedToken.nameid;\r\n this.model.batchNumber = Math.floor(Date.now() / 1000);\r\n }\r\n\r\n submit() {\r\n console.log(this.model);\r\n this.exportService.createLiftingProgramBatch(this.model).subscribe(\r\n () => {\r\n this.alertify.success(\"Lifting Program Successfully Created\");\r\n },\r\n error => {\r\n this.alertify.error(\"Error Creating Lifting Progra\");\r\n }\r\n );\r\n }\r\n}\r\n","
    \r\n
  1. \r\n Home\r\n
  2. \r\n
\r\n\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: \"app-home\",\r\n templateUrl: \"./home.component.html\",\r\n styleUrls: [\"./home.component.css\"]\r\n})\r\nexport class HomeComponent implements OnInit {\r\n registerMode = false;\r\n\r\n constructor() {}\r\n\r\n ngOnInit() {}\r\n\r\n registerToggle() {\r\n this.registerMode = true;\r\n }\r\n\r\n cancelRegisterMode(registerMode: boolean) {\r\n this.registerMode = registerMode;\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n

Lifting Operations Management System

\r\n

NMA Lifting and Export Opertions Management System

\r\n
\r\n

AGBAMI | ESCRAVOS | EGTL | PENNINGTON | LPG | EGP

\r\n

\r\n New User\r\n

\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-lifting-program',\r\n templateUrl: './lifting-program.component.html',\r\n styleUrls: ['./lifting-program.component.css']\r\n})\r\nexport class LiftingProgramComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","

\r\n lifting-program works!\r\n

\r\n","import { Component, OnInit, TemplateRef } from '@angular/core';\r\nimport { BsModalService, BsModalRef } from 'ngx-bootstrap/modal';\r\n\r\n@Component({\r\n selector: 'app-add-export-modal',\r\n templateUrl: './add-export-modal.component.html',\r\n styleUrls: ['./add-export-modal.component.css']\r\n})\r\nexport class AddExportModalComponent implements OnInit {\r\n modalRef: BsModalRef;\r\n constructor(private modalService: BsModalService) {}\r\n\r\n ngOnInit() {}\r\n\r\n openModal(template: TemplateRef) {\r\n this.modalRef = this.modalService.show(template);\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n

Large modal

\r\n \r\n
\r\n
\r\n ...\r\n
\r\n
\r\n
\r\n
\r\n","import { Component, OnInit } from \"@angular/core\";\r\nimport { AuthService } from \"../_services/auth.service\";\r\nimport { AlertifyService } from \"../_services/alertify.service\";\r\nimport { Router } from \"@angular/router\";\r\n\r\n@Component({\r\n selector: \"app-nav-chevron\",\r\n templateUrl: \"./nav-chevron.component.html\",\r\n styleUrls: [\r\n \"./nav-chevron.component.css\",\r\n // \"./../../assets/fav/apple-touch-icon-precomposed.png\",\r\n \"./../../assets/fonts/Gotham/gotham-fonts.css\",\r\n \"./../../assets/css/bootstrap-3.3.4.chevron.css\",\r\n \"./../../assets/css/rte-shared.css\",\r\n \"./../../assets/css/site.css\",\r\n './../../assets/css/rte-shared.css',\r\n \"./../../assets/css/modules/alert-shim.css\",\r\n \"./../../assets/css/modules/link-bar.css\",\r\n \"./../../assets/css/modules/navbar.css\",\r\n \"./../../assets/css/modules/footer.css\",\r\n \"./../../assets/css/modules/search-bar.css\",\r\n \"./../../assets/css/modules/side-nav.css\",\r\n \"./../../assets/css/modules/tabbed-content-control.css\",\r\n \"./../../assets/css/modules/table.css\",\r\n \"./../../assets/css/modules/tag.css\",\r\n \"./../../assets/css/modules/thumbnail-promo.css\"\r\n ]\r\n})\r\nexport class NavChevronComponent implements OnInit {\r\n model: any = {};\r\n\r\n constructor(public authService: AuthService, private alertify: AlertifyService, private router: Router) { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n login() {\r\n this.authService.login(this.model)\r\n .subscribe(next => {\r\n this.alertify.success('Login was successful');\r\n }, error => {\r\n this.alertify.error(error);\r\n }, () => {\r\n this.router.navigate(['/dash-board']);\r\n });\r\n }\r\n\r\n loggedIn() {\r\n return this.authService.loggedIn();\r\n }\r\n\r\n logout() {\r\n localStorage.removeItem('token'); // remove token from application\r\n this.alertify.message('You have logged Out');\r\n this.router.navigate(['/home']);\r\n }\r\n}\r\n","\r\n\r\n\r\n","import { Component, OnInit, TemplateRef } from '@angular/core';\r\nimport { AuthService } from '../_services/auth.service';\r\nimport { AlertifyService } from '../_services/alertify.service';\r\nimport { Router } from '@angular/router';\r\nimport { BsModalRef, BsModalService } from 'ngx-bootstrap/modal';\r\nimport { UntypedFormGroup } from '@angular/forms';\r\nimport { Analyst } from '../_models/Analyst';\r\nimport { ExportService } from '../_services/export.service';\r\n\r\n@Component({\r\n selector: 'app-nav',\r\n templateUrl: './nav.component.html',\r\n styleUrls: ['./nav.component.css']\r\n})\r\nexport class NavComponent implements OnInit {\r\n modalRef: BsModalRef;\r\n addExportForm: UntypedFormGroup;\r\n model: any = {};\r\n modelForProfile: Analyst;\r\n public analyst = {\r\n firstName: null,\r\n middleName: null,\r\n lastName: null,\r\n phoneNumber: null,\r\n mobile: null,\r\n address: null,\r\n city: null,\r\n state: null,\r\n email: null,\r\n extension: null,\r\n userId: null,\r\n managerId: null\r\n };\r\n\r\n public analystForm = {\r\n firstName: null,\r\n middleName: null,\r\n lastName: null,\r\n phoneNumber: null,\r\n mobile: null,\r\n address: null,\r\n city: null,\r\n state: null,\r\n email: null,\r\n extension: null,\r\n userId: null,\r\n };\r\n userId = 1;\r\n HasAccess = false;\r\n constructor(\r\n private exportService: ExportService,\r\n private modalService: BsModalService,\r\n public authService: AuthService,\r\n private alertify: AlertifyService,\r\n private router: Router\r\n ) {}\r\n\r\n ngOnInit() {\r\n }\r\n\r\n login() {\r\n this.authService.login(this.model).subscribe(\r\n next => {\r\n this.userId = this.authService.decodedToken.nameid; \r\n this.loadAnalyst(this.userId);\r\n this.HasAccess = this.authService.decodedToken.role === 'Admin' ? true : false;\r\n this.alertify.success('Login was successful');\r\n },\r\n error => {\r\n console.log(error);\r\n if (error.status === 401){\r\n this.alertify.error(\"Invalid Username/Password\");\r\n }else{\r\n this.alertify.error(error.message);\r\n }\r\n },\r\n () => {\r\n this.router.navigate(['/dash-board']);\r\n }\r\n );\r\n }\r\n\r\n loggedIn() {\r\n // this.userId = this.authService.decodedToken.nameid;\r\n // if (this.userId != null) {\r\n // this.loadAnalyst(this.userId);\r\n // }\r\n\r\n return this.authService.loggedIn();\r\n }\r\n\r\n logout() {\r\n localStorage.removeItem('token'); // remove token from application\r\n this.alertify.message('You have logged Out');\r\n this.router.navigate(['/home']);\r\n }\r\n\r\n openModal(template: TemplateRef) {\r\n this.modalRef = this.modalService.show(template);\r\n }\r\n\r\n closeModal() {\r\n this.modalRef.hide();\r\n }\r\n confirmSave() {\r\n this.alertify.confirm('Are you sure you want to update your proifle', () => {\r\n this.exportService.updateUserProfile(this.analystForm).subscribe(\r\n () => {\r\n this.alertify.success('Your UserProfile is Successfully Updated');\r\n },\r\n error => {\r\n this.alertify.error('Server Error Unable to Update Profile');\r\n }\r\n );\r\n\r\n this.router.navigate(['/dash-board']);\r\n });\r\n }\r\n // Method called on clicking the submit button of the addExporForm\r\n updateProfile() {\r\n this.confirmSave();\r\n }\r\n\r\n loadAnalyst(id: number) {\r\n this.exportService.getExportAnalyst(id).subscribe(\r\n (analyst: Analyst) => {\r\n this.analyst = analyst;\r\n this.analystForm = analyst;\r\n },\r\n error => {\r\n this.alertify.error(error);\r\n }\r\n );\r\n }\r\n}\r\n","
\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n

Edit Profile

\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n\r\n
\r\n
\r\n \r\n \r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
","import { Component, OnInit, Output, EventEmitter } from '@angular/core';\r\nimport { AuthService } from '../_services/auth.service';\r\nimport { AlertifyService } from '../_services/alertify.service';\r\n\r\n@Component({\r\n selector: 'app-register',\r\n templateUrl: './register.component.html',\r\n styleUrls: ['./register.component.css']\r\n})\r\nexport class RegisterComponent implements OnInit {\r\n\r\n @Output() cancelRegister = new EventEmitter();\r\n\r\n model: any = {} ;\r\n\r\n constructor(private authService: AuthService, private alertify: AlertifyService) { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n register() {\r\n this.authService.register(this.model).subscribe(() => {\r\n this.alertify.success('Registeration Successful');\r\n }, error => {\r\n this.alertify.error(error);\r\n });\r\n }\r\n\r\n cancel() {\r\n this.cancelRegister.emit(false);\r\n }\r\n}\r\n","\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { EnergycomponentService } from 'src/app/_services/energycomponent.service';\r\n\r\n@Component({\r\n selector: 'app-report-home',\r\n templateUrl: './report-home.component.html',\r\n styleUrls: ['./report-home.component.css']\r\n})\r\nexport class ReportHomeComponent implements OnInit {\r\n\r\n constructor(private ecService: EnergycomponentService) { }\r\n\r\n ngOnInit() {\r\n this.loadECDataForExport(114);\r\n }\r\n loadECDataForExport(id: number) {\r\n this.ecService.getExportDataForID(id).subscribe(\r\n (ecExport: any) => {\r\n console.log(ecExport);\r\n }\r\n );\r\n }\r\n\r\n}\r\n","

\r\n report-home works!\r\n

\r\n","import {Routes} from '@angular/router';\r\nimport { DashBoardComponent } from './dash-board/dash-board.component';\r\nimport { ExportComponent } from './export/export.component';\r\nimport { LiftingProgramComponent } from './lifting-program/lifting-program.component';\r\nimport { DocumentComponent } from './document/document.component';\r\nimport { HomeComponent } from './home/home.component';\r\nimport { AuthGuard } from './_guards/auth.guard';\r\nimport { ExportDetailComponent } from './export-detail/export-detail.component';\r\nimport { ExportDetailResolver } from './_resolvers/export-detail.resolver';\r\nimport { ExportDetailUpdateComponent } from './export-detail-update/export-detail-update.component';\r\nimport { PreventUnsavedChangesGuard } from './_guards/prevent-unsaved-changes-guard';\r\nimport { ExportActionsListUpdateViewComponent } from './export-actions-list-update-view/export-actions-list-update-view.component';\r\nimport { NodeCommentResolver } from './_resolvers/node-comment.resolver';\r\nimport { ExportTableComponent } from './export-table/export-table.component';\r\nimport { ForecastHomeComponent } from './forecast/forecast-home/forecast-home.component';\r\nimport { AdminHomeComponent } from './admin/admin-home/admin-home.component';\r\nimport { DemurrageHomeComponent } from './demurrage/demurrage-home/demurrage-home.component';\r\nimport { DemurrageListDetailComponent } from './demurrage/demurrage-list-detail/demurrage-list-detail.component';\r\nimport { FinancialHomeComponent } from './financial/financial-home/financial-home.component';\r\nimport { NessPayreqComponent } from './financial/ness-payreq/ness-payreq.component';\r\nimport { ExchangeRateComponent } from './financial/exchange-rate/exchange-rate.component';\r\nimport { CompletedNessComponent } from './financial/completed-ness/completed-ness.component';\r\nimport { DocumentListResolver } from './_resolvers/document-list.resolver';\r\nimport { ReportHomeComponent } from './report/report-home/report-home.component';\r\nimport { ExcessWaterHomeComponent } from './excess-water/excess-water-home/excess-water-home.component';\r\nimport { ExcessWaterDetailComponent } from './excess-water/excess-water-detail/excess-water-detail.component';\r\nimport { ExcessWaterDetailUpdateComponent } from './excess-water/excess-water-detail-update/excess-water-detail-update.component';\r\n\r\nexport const appRoute: Routes = [\r\n { path: 'home', component: HomeComponent },\r\n {\r\n path: '',\r\n runGuardsAndResolvers: 'always',\r\n canActivate: [AuthGuard],\r\n children: [\r\n { path: 'dash-board', component: DashBoardComponent },\r\n { path: 'export', component: ExportComponent },\r\n { path: 'export/list', component: ExportTableComponent },\r\n { path: 'export-detail/:id', component: ExportDetailComponent,\r\n resolve: {export: ExportDetailResolver} },\r\n {path: 'export/update/:id', component: ExportDetailUpdateComponent,\r\n resolve: { export: ExportDetailResolver }},\r\n {\r\n path: 'export/actions/update/:id/:exportId', component: ExportActionsListUpdateViewComponent,\r\n resolve: { export: ExportDetailResolver, nodecomment: NodeCommentResolver }\r\n },\r\n { path: 'lifting-program', component: LiftingProgramComponent },\r\n { path: 'document', component: DocumentComponent, resolve: {\r\n documents: DocumentListResolver\r\n } },\r\n {path: 'forecast', component: ForecastHomeComponent},\r\n {path: 'admin-home', component: AdminHomeComponent},\r\n {path: 'demurrage', component: DemurrageHomeComponent},\r\n {path: 'financial', component: FinancialHomeComponent},\r\n {path: 'ness-payreq', component: NessPayreqComponent},\r\n {path: 'completed-ness', component: CompletedNessComponent},\r\n {path: 'exchange-rate', component: ExchangeRateComponent},\r\n {path: 'demurrage-detail/:exportId', component: DemurrageListDetailComponent},\r\n {path: 'report', component: ReportHomeComponent},\r\n {path: 'excess-water',component: ExcessWaterHomeComponent},\r\n {path: 'excess-water-detail/:id/:exportId', component: ExcessWaterDetailComponent},\r\n {path: 'excess-water-detail/update/:id/:exportId', component: ExcessWaterDetailUpdateComponent}\r\n ]\r\n },\r\n { path: '**', redirectTo: 'home', pathMatch: 'full'}\r\n];\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { environment } from '../../environments/environment';\r\n\r\n@Component({\r\n selector: 'app-terminal',\r\n templateUrl: './terminal.component.html',\r\n styleUrls: ['./terminal.component.css']\r\n})\r\nexport class TerminalComponent implements OnInit {\r\n\r\n baseUrl = environment.apiUrl;\r\n terminals: any;\r\n constructor(private http: HttpClient) { }\r\n\r\n ngOnInit() {\r\n this.getTerminals();\r\n }\r\n\r\n getTerminals(){\r\n this.http.get(this.baseUrl + \"/api/terminals\").subscribe(response => {\r\n this.terminals = response;\r\n }, error => {\r\n console.log(error);\r\n });\r\n }\r\n}\r\n","\r\n\r\n","// This file can be replaced during build by using the `fileReplacements` array.\r\n// `ng build ---prod` replaces `environment.ts` with `environment.prod.ts`.\r\n// The list of file replacements can be found in `angular.json`.\r\n\r\nexport const environment = {\r\n production: true,\r\n apiUrl: 'api/',\r\n httpOptions: {\r\n withCredentials : true\r\n }\r\n};\r\n\r\n/*\r\n * In development mode, to ignore zone related error stack frames such as\r\n * `zone.run`, `zoneDelegate.invokeTask` for easier debugging, you can\r\n * import the following file, but please comment it out in production mode\r\n * because it will have performance impact when throw error\r\n */\r\n// import 'zone.js/plugins/zone-error'; // Included with Angular CLI.\r\n","import { enableProdMode } from '@angular/core';\r\nimport { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\r\n\r\nimport { AppModule } from './app/app.module';\r\nimport { environment } from './environments/environment';\r\n\r\nif (environment.production) {\r\n enableProdMode();\r\n}\r\n\r\nplatformBrowserDynamic().bootstrapModule(AppModule)\r\n .catch(err => console.log(err));\r\n"],"names":[],"sourceRoot":"webpack:///","x_google_ignoreList":[]}