{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./node_modules/cobrowse-common/modules/utils.ts","webpack:///./node_modules/cobrowse-common/modules/constants.ts","webpack:///./node_modules/cobrowse-common/components/eventBus.ts","webpack:///./node_modules/cobrowse-common/modules/endPoints.ts","webpack:///./node_modules/cobrowse-common/components/ajaxrequest.ts","webpack:///./product/typescript/pages/newAgent.ts","webpack:///./node_modules/cobrowse-common/components/loginControl.ts","webpack:///./node_modules/cobrowse-common/components/html/login-template.html","webpack:///./node_modules/cobrowse-common/components/html/css/login-template.css","webpack:///./node_modules/cobrowse-common/components/promiseDialog.ts","webpack:///./node_modules/cobrowse-common/interfaces/IMonitoring.ts","webpack:///./node_modules/cobrowse-common/modules/formHelpers.ts","webpack:///./node_modules/cobrowse-common/components/html/modal-mask.html","webpack:///./node_modules/cobrowse-common/components/html/css/modal-mask.css","webpack:///./node_modules/cobrowse-common/components/ajaxrequest.legacy.ts","webpack:///./node_modules/cobrowse-common/components/dialog.ts","webpack:///./product/typescript/components/monitoring.ts"],"names":["installedModules","__webpack_require__","moduleId","exports","module","i","l","modules","call","m","c","d","name","getter","o","Object","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","prototype","hasOwnProperty","p","s","constants_1","formatValue","val","desiredLen","retVal","toString","length","getCurrentTime","Date","getTime","getTimeString","today","getHours","getMinutes","getSeconds","getMilliseconds","getDateTimeString","hours","mins","secs","day","getDate","getMonth","getFullYear","isString","compareIgnoreCase","stringValue","matches","localeCompare","undefined","sensitivity","isEmpty","constructor","Array","arrayResult","count","isFunction","pointer","whiteSpaceValidationEx","nativeCodeValidationEx","isWhitespace","test","isMethodNative","getViewPort","_a","viewPortWidth","viewPortHeight","window","innerWidth","innerHeight","document","documentElement","clientWidth","getElementsByTagName","clientHeight","width","height","getWinHeight","body","getWinWidth","getElementAs","id","getElementById","setClass","element","className","elem","setCss","attrs","keys","forEach","style","setProperty","hideElement","display","showElement","fireEvent","event","evt","createEvent","initMouseEvent","MouseEvent","button","bubbles","view","cancelable","dispatchEvent","e","stopEvent","returnValue","cancelBubble","stopPropagation","preventDefault","displayText","label","labelText","innerHTML","preloadImageBySource","source","Image","src","preloadImage","encoder","htmlEncode","text","createElement","innerText","htmlDecode","randomInRange","from","to","Math","floor","random","getTopFrame","topdomain","top","location","hostname","curWindow","self","windowCnt","parent","parentdomain","doesObjectExist","objectName","objectNameParts","split","conditionFullfilled","context","awaitObject","timeout","Promise","resolve","reject","startTime","objectWaitInterval","setInterval","clearInterval","Error","ERROR_TIMEOUT","STORAGE_IE_TIME_KEY","STORAGE_IE_TIME_STRING","STORAGE_EVENT_CMD","STORAGE_RESPONSE_CMD","STORAGE_READY_CMD","ERROR_STORAGE_UNAVAILABLE","ERROR_ENVIRONMENT","ERROR_PROMISE_TIMEOUT","ERROR_REQUEST_TIMEOUT","ERROR_NO_ARGS","ERROR_CONTEXT_LOCKED","ERROR_NO_STORAGE_MANAGER","ERROR_OPERATION_FAILED","ERROR_COMPONENT_MISSING","ERROR_NETWORK_TIMEOUT","INSTANCE_CONFIG_ERROR","ERROR_REVERSE_ALREADY_ACTIVE","ERROR_REVERSE_VIEW_INACTIVE","SESSION_IN_PROGRESS","EventBus","this","eventRegistry","eventName","_b","_this","args","_i","arguments","x","method","apply","singleUse","splice","listen","fn","indexOf","push","wait","unsubscribe","MonitoringEndPoint","CobrowseAuthEndPoint","CobrowseSessionEndPoint","CobrowseJoinEndPoint","CobrowseACBShellEndPoint","ajaxrequest_legacy_1","ajaxrequest_legacy_2","AjaxException","AjaxRequestClass","awaitRawResponse","url","bodyParams","headers","HttpRequest","requestRawXHR","request","send","post","params","__awaiter","thisArg","_arguments","P","generator","fulfilled","step","next","rejected","result","done","then","__generator","f","y","g","_","sent","trys","ops","verb","iterator","v","op","TypeError","pop","utils_1","formHelpers_1","loginControl_1","monitoring_1","isHTML5Supported","history","performance","getContext","addEventListener","form","ratio","dynamicParams","sizeX","sizeY","zeroWindowSize","ex_1","_c","_d","devicePixelRatio","ll_user_agent","navigator","userAgent","ll_screen_width","screen","ll_screen_height","ll_java_enabled","javaEnabled","ll_cookies_enabled","cookieEnabled","ll_html5_enabled","ll_zero_size","documentMode","ll_doc_mode","compatMode","ll_comp_mode","loginRequired","Monitoring","configure","debugLevel","requestParams","sessionID","LoginControl","uiConfig","uiMessages","authenticate","luserRequest","jwt","clientError","console","error","pushJSONToForm","submit","extendStatics","__extends","b","setPrototypeOf","__proto__","__","login_template_html_1","login_template_css_1","ajaxrequest_1","promiseDialog_1","eventBus_1","IMonitoring_1","endPoints_1","emailValidationRegEx","loginDialog","_super","LoginControlClass","htmlContent","css","cssContent","dismissOnEscape","enableOverlay","rejectOnEscape","eventBus","successCallback","rejectCallback","enableForgotPassword","enableChangePassword","mainServer","userRole","lastErrorStatus","isEmail","email","onContinue","loginButton","getContent","querySelector","onclick","options","isVisible","reportRejectOrThrow","configureUI","type","textContent","insertAdjacentHTML","outerHTML","role","lsessionID","setRole","setSessionID","displayAsync","dialogPromise","forgotPasswordRow","forgotPassword","changePasswordRow","changePassword","promise","login","doFocus","keyHandler","which","keyCode","getContinueButton","click","focus","getMessageText","messageID","displayError","message","loginForm","psw","password","endPoint","response","err_1","apiError","monitoringContext","parsedResponse","userLogin","userPassword","rawResponse","state","getMonitoringInstance","JSON","parse","remainingAttemptCount","syncEvent","UserLogin","ErrorCode","ErrorMessage","authResponse","hide","PromiseDialog","html","reason","dialog","removeEventListener","reportReject","SimpleDialog","Cobrowse","filterEvent","allowedDebugLevel","currentEventType","cleanUp","frm","children","removeChild","currentValue","found","j","appendFormWith","translatedValue","inputElement","appendChild","getURL","cleanForm","target","parameters","pair","decodeURIComponent","action","setAttribute","exceptionStatus","exceptionText","exceptionMessage","status","statusText","LegacyAjaxRequestClass","errorCallback","thisRequestTimeout","xhr","XMLHttpRequest","open","onload","clearTimeout","requestTimer","onerror","failedURL","errorMessage","setTimeout","closureURL","onreadystatechange","abort","err","OperationType","Description","RemoteURL","jsonEncoding","hasContentType","toLowerCase","setRequestHeader","stringify","dictionary_1","map","encodeURIComponent","join","resolveCallback","responseXML","responseText","modal_mask_html_1","modal_mask_css_1","ERROR_NULL_CONTENTS","templateRegEx","docLoadPromise","createDialogContainer","div","descriptor","items","slice","nodeType","Node","ELEMENT_NODE","firstChild","CustomizableDialog","processTemplateText","templatedText","search","processedValue","matchResult","exec","templateID","itemID","defaultDescriptor","trim","replace","applyAttributes","customAttributes","el","attrDescriptor","attrName","attrText","attributeName","existingValue","getAttribute","customizeSingleElement","data","dataset","textTemplate","textContents","htmlTemplate","processUIElement","childNodes","child","setImageRoot","contents","imageRootPath","path","endsWith","substr","images","getImageElements","log","startsWith","retrieveImages","rootElem","HTMLImageElement","childNode","mask","visibility","dismissOnMaskClick","defaultMask","maskControl","escapeListener","hideListener","reset","attachCloseControl","center","wndWidth","objWidth","offsetWidth","left","getMask","code","AgentMonitoring","currentID","latestFlushTimeStamp","currentBatchTime","currentBatch","monitoringID","channelID","useBeacon","_debugLevel","_monitoringID","_channelID","now","eventType","eventParams","generateID","serializedData","ID","commandID","commandName","eventTime","flush","checkTime","initPolling","sendTime_1","time","sendBeacon","JavascriptException","JavascriptURL","href"],"mappings":"aACE,IAAIA,EAAmB,GAGvB,SAASC,EAAoBC,GAG5B,GAAGF,EAAiBE,GACnB,OAAOF,EAAiBE,GAAUC,QAGnC,IAAIC,EAASJ,EAAiBE,GAAY,CACzCG,EAAGH,EACHI,GAAG,EACHH,QAAS,IAUV,OANAI,EAAQL,GAAUM,KAAKJ,EAAOD,QAASC,EAAQA,EAAOD,QAASF,GAG/DG,EAAOE,GAAI,EAGJF,EAAOD,QAKfF,EAAoBQ,EAAIF,EAGxBN,EAAoBS,EAAIV,EAGxBC,EAAoBU,EAAI,SAASR,EAASS,EAAMC,GAC3CZ,EAAoBa,EAAEX,EAASS,IAClCG,OAAOC,eAAeb,EAASS,EAAM,CAAEK,YAAY,EAAMC,IAAKL,KAKhEZ,EAAoBkB,EAAI,SAAShB,GACX,oBAAXiB,QAA0BA,OAAOC,aAC1CN,OAAOC,eAAeb,EAASiB,OAAOC,YAAa,CAAEC,MAAO,WAE7DP,OAAOC,eAAeb,EAAS,aAAc,CAAEmB,OAAO,KAQvDrB,EAAoBsB,EAAI,SAASD,EAAOE,GAEvC,GADU,EAAPA,IAAUF,EAAQrB,EAAoBqB,IAC/B,EAAPE,EAAU,OAAOF,EACpB,GAAW,EAAPE,GAA8B,iBAAVF,GAAsBA,GAASA,EAAMG,WAAY,OAAOH,EAChF,IAAII,EAAKX,OAAOY,OAAO,MAGvB,GAFA1B,EAAoBkB,EAAEO,GACtBX,OAAOC,eAAeU,EAAI,UAAW,CAAET,YAAY,EAAMK,MAAOA,IACtD,EAAPE,GAA4B,iBAATF,EAAmB,IAAI,IAAIM,KAAON,EAAOrB,EAAoBU,EAAEe,EAAIE,EAAK,SAASA,GAAO,OAAON,EAAMM,IAAQC,KAAK,KAAMD,IAC9I,OAAOF,GAIRzB,EAAoB6B,EAAI,SAAS1B,GAChC,IAAIS,EAAST,GAAUA,EAAOqB,WAC7B,WAAwB,OAAOrB,EAAgB,SAC/C,WAA8B,OAAOA,GAEtC,OADAH,EAAoBU,EAAEE,EAAQ,IAAKA,GAC5BA,GAIRZ,EAAoBa,EAAI,SAASiB,EAAQC,GAAY,OAAOjB,OAAOkB,UAAUC,eAAe1B,KAAKuB,EAAQC,IAGzG/B,EAAoBkC,EAAI,GAIjBlC,EAAoBA,EAAoBmC,EAAI,K,iCCjFrDjC,EAAQsB,YAAa,EACrB,IAAIY,EAAc,EAAQ,GAC1BlC,EAAQmC,YAAc,SAAUC,EAAKC,QACd,IAAfA,IAAyBA,EAAa,GAE1C,IADA,IAAIC,EAASF,EAAIG,WACVD,EAAOE,OAASH,GACnBC,EAAS,IAAMA,EAEnB,OAAOA,GAEXtC,EAAQyC,eAAiB,WAErB,OADyB,IAAIC,MACHC,WAE9B3C,EAAQ4C,cAAgB,WACpB,IAAIC,EAAQ,IAAIH,KAKhB,OAJY1C,EAAQmC,YAAYU,EAAMC,YAIvB,IAHJ9C,EAAQmC,YAAYU,EAAME,cAGT,IAFjB/C,EAAQmC,YAAYU,EAAMG,cAEI,IADhChD,EAAQmC,YAAYU,EAAMI,kBAAmB,IAG1DjD,EAAQkD,kBAAoB,WACxB,IAAIL,EAAQ,IAAIH,KACZS,EAAQnD,EAAQmC,YAAYU,EAAMC,YAClCM,EAAOpD,EAAQmC,YAAYU,EAAME,cACjCM,EAAOrD,EAAQmC,YAAYU,EAAMG,cACjCM,EAAMtD,EAAQmC,YAAYU,EAAMU,WAGpC,OAFYvD,EAAQmC,YAAYU,EAAMW,WAAa,GAEpC,IAAMF,EAAM,IADhBT,EAAMY,cACuB,IAAMN,EAAQ,IAAMC,EAAO,IAAMC,GAE7ErD,EAAQ0D,SAAW,SAAU9B,GACzB,MAAyB,iBAAXA,GAElB5B,EAAQ2D,kBAAoB,SAAUC,EAAaC,GAC/C,GAAI7D,EAAQ0D,SAASE,IAAgB5D,EAAQ0D,SAASG,GAClD,OAEO,IAFAD,EAAYE,cAAcD,OAASE,EAAW,CACjDC,YAAa,WAGhB,GAAKhE,EAAQiE,QAAQJ,IAAYA,EAAQK,cAAgBC,MAY1D,OAAOP,IAAgBC,EAVvB,IADA,IAAIO,GAAc,EACTC,EAAQ,EAAGA,EAAQR,EAAQrB,OAAQ6B,IAAS,CAEjD,GADkBrE,EAAQ2D,kBAAkBC,EAAaC,EAAQQ,IAChD,CACbD,GAAc,EACd,OAGR,OAAOA,GAMfpE,EAAQsE,WAAa,SAAUC,GAC3B,MAA0B,mBAAZA,GAElBvE,EAAQiE,QAAU,SAAUrC,GACxB,OAAIA,SAAsD,KAAXA,GAA4B,IAAXA,IAA2B,IAAXA,GAKpF,IAAI4C,EAAyB,QACzBC,EAAyB,4BAC7BzE,EAAQ0E,aAAe,SAAUzC,GAC7B,OAAOuC,EAAuBG,KAAK1C,IAEvCjC,EAAQ4E,eAAiB,SAAUL,GAE/B,QADavE,EAAQsE,WAAWC,IAAW,EAAyBI,KAAK,GAAKJ,IAGlFvE,EAAQ6E,YAAc,WAClB,IAAIC,EACAC,EAAgB,EAChBC,EAAiB,EAarB,YAZiC,IAAtBC,OAAOC,YACdH,EAAgBE,OAAOC,WACvBF,EAAiBC,OAAOE,aAElBnF,EAAQiE,QAA4C,QAAnCa,EAAKM,SAASC,uBAAoC,IAAPP,OAAgB,EAASA,EAAGQ,cAK9FP,EAAgBK,SAASG,qBAAqB,QAAQ,GAAGD,YACzDN,EAAiBI,SAASG,qBAAqB,QAAQ,GAAGC,eAL1DT,EAAgBK,SAASC,gBAAgBC,YACzCN,EAAiBI,SAASC,gBAAgBG,cAMvC,CACHC,MAAOV,EACPW,OAAQV,IAGhBhF,EAAQ2F,aAAe,WACnB,OAAOV,OAAOE,aAAeC,SAASC,gBAAgBG,cAAgBJ,SAASQ,KAAKJ,cAExFxF,EAAQ6F,YAAc,WAClB,OAAOZ,OAAOC,YAAcE,SAASC,gBAAgBC,aAAeF,SAASQ,KAAKN,aAEtFtF,EAAQ8F,aAAe,SAAUC,GAC7B,OAAOX,SAASY,eAAeD,IAEnC/F,EAAQiG,SAAW,SAAUC,EAASC,GAClC,IAAIC,EAAOpG,EAAQ0D,SAASwC,GAAWlG,EAAQ8F,aAAaI,GAAWA,EAC1D,OAATE,IACAA,EAAKD,UAAYA,IAGzBnG,EAAQqG,OAAS,SAAUD,EAAME,GAC7B,IAAIJ,EAAUlG,EAAQ0D,SAAS0C,GAAQpG,EAAQ8F,aAAaM,GAAQA,EACpD,OAAZF,GACAtF,OAAO2F,KAAKD,GAAOE,SAAQ,SAAU/E,GACjCyE,EAAQO,MAAMC,YAAYjF,EAAK6E,EAAM7E,QAIjDzB,EAAQ2G,YAAc,SAAUP,GAC5BpG,EAAQqG,OAAOD,EAAM,CAAEQ,QAAS,UAEpC5G,EAAQ6G,YAAc,SAAUT,GAC5BpG,EAAQqG,OAAOD,EAAM,CAAEQ,QAAS,WAEpC5G,EAAQ8G,UAAY,SAAUZ,EAASa,GACnC,IACI,IAAIC,EAAM,KAaV,OAZIhH,EAAQsE,WAAWc,SAAS6B,cAC5BD,EAAM5B,SAAS6B,YAAY,eACvBC,eAAeH,GAAO,GAAM,EAAM9B,OAAQ,EAAG,EAAG,EAAG,EAAG,GAAG,GAAO,GAAO,GAAO,EAAO,EAAG,MAG5F+B,EAAM,IAAIG,WAAWJ,EAAO,CACxBK,OAAQ,EACRC,SAAS,EACTC,KAAMrC,OACNsC,YAAY,KAGZrB,EAAQsB,cAAcR,GAElC,MAAOS,GACH,OAAO,IAGfzH,EAAQ0H,UAAY,SAAUD,GAC1B,IAAIT,EAAOhH,EAAQiE,QAAQwD,GAASxC,OAAO8B,MAAXU,EAC3BzH,EAAQiE,QAAQ+C,KACjBA,EAAIW,aAAc,EAClBX,EAAIY,cAAe,EACf5H,EAAQsE,WAAW0C,EAAIa,kBACvBb,EAAIa,kBAEJ7H,EAAQsE,WAAW0C,EAAIc,iBACvBd,EAAIc,mBAIhB9H,EAAQ+H,YAAc,SAAUC,EAAOC,GACnC,IAAI/B,EAAUlG,EAAQ0D,SAASsE,GAAShI,EAAQ8F,aAAakC,GAASA,EACtD,OAAZ9B,IACAA,EAAQgC,UAAYD,QAA6CA,EAAY,KAGrFjI,EAAQmI,qBAAuB,SAAUC,IACzB,IAAIC,OACVC,IAAMF,GAEhBpI,EAAQuI,aAAe,SAAUnC,GAC7B,OAAOpG,EAAQmI,qBAAqB/B,EAAKkC,MAE7C,IAAIE,EAAU,KACdxI,EAAQyI,WAAa,SAAUC,GAK3B,OAJgB,OAAZF,IACAA,EAAUpD,SAASuD,cAAc,SAErCH,EAAQI,UAAYF,EACbF,EAAQN,WAEnBlI,EAAQ6I,WAAa,SAAUH,GAK3B,OAJgB,OAAZF,IACAA,EAAUpD,SAASuD,cAAc,SAErCH,EAAQN,UAAYQ,EACbF,EAAQI,WAEnB5I,EAAQ8I,cAAgB,SAAUC,EAAMC,GAAM,OAAOC,KAAKC,MAAMD,KAAKE,UAAYH,EAAKD,EAAO,GAAKA,IAClG/I,EAAQoJ,YAAc,WAClB,IACI,IACI,IAAIC,EAAoB,OAARC,UAAwB,IAARA,SAAiB,EAASA,IAAIC,SAASC,SACvE,GAAIxJ,EAAQ0D,SAAS2F,GACjB,OAAOC,IAGf,MAAO7B,IAGP,IAFA,IAAIgC,EAAYC,KACZC,EAAY,EACTF,GAAaA,EAAUG,QAAUD,IAAc,IAAI,CACtD,IACI,IAAIE,EAAeJ,EAAUG,OAAOL,SAASC,SAC7C,GAAIxJ,EAAQ0D,SAASmG,GAAe,CAChCJ,EAAYA,EAAUG,OACtB,UAGR,MAAOnC,IACP,OAAOgC,EAEX,OAAOA,EAEX,MAAOhC,GACH,OAAOiC,OAGf1J,EAAQ8J,gBAAkB,SAAUC,GAChC,GAAI/J,EAAQ0D,SAASqG,GAAa,CAC9B,IAAIC,EAAkBD,EAAWE,MAAM,KACvC,GAAID,EAAgBxH,OAAS,EAAG,CAG5B,IAFA,IAAI0H,GAAsB,EACtBC,EAAUlF,OACL/E,EAAI,EAAGA,EAAI8J,EAAgBxH,OAAQtC,IAAK,CAC7C,GAAgB,OAAZiK,KACCH,EAAgB9J,KAAMiK,SACsB,IAAjCA,EAAQH,EAAgB9J,IAGnC,CACDgK,GAAsB,EACtB,MAJAC,EAAUA,EAAQH,EAAgB9J,IAO1C,OAAOgK,GAGf,OAAO,GAEXlK,EAAQoK,YAAc,SAAUL,EAAYM,GACxC,OAAO,IAAIC,SAAQ,SAAUC,EAASC,GAClC,GAAIxK,EAAQ8J,gBAAgBC,GACxBQ,SAGJ,IAAIE,EAAYzK,EAAQyC,iBACpBiI,EAAqBC,aAAY,WACjC,OAAI3K,EAAQ8J,gBAAgBC,IACxBa,cAAcF,QACdH,UAGiBxG,IAAZsG,GACarK,EAAQyC,iBACRgI,EAAYJ,GAC1BO,cAAcF,QACdF,EAAO,IAAIK,MAAM3I,EAAY4I,sBAJhC,IAQN,U,+BClQX9K,EAAQsB,YAAa,EACrBtB,EAAQ+K,oBAAsB,YAC9B/K,EAAQgL,uBAAyB,IAAMhL,EAAQ+K,oBAAsB,IACrE/K,EAAQiL,kBAAoB,WAC5BjL,EAAQkL,qBAAuB,cAC/BlL,EAAQmL,kBAAoB,QAC5BnL,EAAQoL,0BAA4B,0BACpCpL,EAAQqL,kBAAoB,sBAC5BrL,EAAQsL,sBAAwB,sBAChCtL,EAAQuL,sBAAwB,sBAChCvL,EAAQ8K,cAAgB,cACxB9K,EAAQwL,cAAgB,mBACxBxL,EAAQyL,qBAAuB,qBAC/BzL,EAAQ0L,yBAA2B,8BACnC1L,EAAQ2L,uBAAyB,aACjC3L,EAAQ4L,wBAA0B,6BAClC5L,EAAQ6L,sBAAwB,wBAChC7L,EAAQ8L,sBAAwB,gCAChC9L,EAAQ+L,6BAA+B,6BACvC/L,EAAQgM,4BAA8B,oBACtChM,EAAQiM,oBAAsB,e,gCCpB9BjM,EAAQsB,YAAa,EACrB,IAAI4K,EAAY,WACZ,SAASA,IACLC,KAAKC,cAAgB,GA4DzB,OA1DAF,EAASpK,UAAUgF,UAAY,SAAUuF,GAGrC,IAFA,IAKIvH,EAAIwH,EALJC,EAAQJ,KACRK,EAAO,GACFC,EAAK,EAAGA,EAAKC,UAAUlK,OAAQiK,IACpCD,EAAKC,EAAK,GAAKC,UAAUD,QAGS1I,IAAlCoI,KAAKC,cAAcC,KAGkB,QAAxCvH,EAAKqH,KAAKC,cAAcC,UAA+B,IAAPvH,GAAyBA,EAAG0B,SAAQ,SAAUmG,GAC3FA,EAAEC,OAAOC,MAAM,KAAML,MAEgB,QAAxCF,EAAKH,KAAKC,cAAcC,UAA+B,IAAPC,GAAyBA,EAAG9F,SAAQ,SAAUmG,EAAGzM,GAC9F,IAAI4E,EACA6H,EAAEG,YACwC,QAAzChI,EAAKyH,EAAMH,cAAcC,UAA+B,IAAPvH,GAAyBA,EAAGiI,OAAO7M,EAAG,SAIpGgM,EAASpK,UAAUkL,OAAS,SAAUjG,EAAOkG,GACzC,IAAIV,EAAQJ,KACRpF,aAAiB5C,MACjB4C,EAAMP,SAAQ,SAAU6F,GAAa,OAAOE,EAAMS,OAAOX,EAAWY,WAGlClJ,IAA9BoI,KAAKC,cAAcrF,GACnBoF,KAAKC,cAAcrF,GAAS,CAAC,CAAE6F,OAAQK,EAAIH,WAAW,KAEwB,IAAzEX,KAAKC,cAAcrF,GAAOmG,QAAQ,CAAEN,OAAQK,EAAIH,WAAW,KAChEX,KAAKC,cAAcrF,GAAOoG,KAAK,CAAEP,OAAQK,EAAIH,WAAW,KAIpEZ,EAASpK,UAAUsL,KAAO,SAAUrG,EAAOkG,GACvC,IAAIV,EAAQJ,KACRpF,aAAiB5C,MACjB4C,EAAMP,SAAQ,SAAU6F,GAAa,OAAOE,EAAMa,KAAKf,EAAWY,WAGhClJ,IAA9BoI,KAAKC,cAAcrF,GACnBoF,KAAKC,cAAcrF,GAAS,CAAC,CAAE6F,OAAQK,EAAIH,WAAW,KAEuB,IAAxEX,KAAKC,cAAcrF,GAAOmG,QAAQ,CAAEN,OAAQK,EAAIH,WAAW,KAChEX,KAAKC,cAAcrF,GAAOoG,KAAK,CAAEP,OAAQK,EAAIH,WAAW,KAIpEZ,EAASpK,UAAUuL,YAAc,SAAUhB,EAAWY,GAClD,IACInI,EADAyH,EAAQJ,KAE6B,QAAxCrH,EAAKqH,KAAKC,cAAcC,UAA+B,IAAPvH,GAAyBA,EAAG0B,SAAQ,SAAUmG,EAAGzM,GAC9F,IAAI4E,EACA6H,EAAEC,SAAWK,IAC6B,QAAzCnI,EAAKyH,EAAMH,cAAcC,UAA+B,IAAPvH,GAAyBA,EAAGiI,OAAO7M,EAAG,QAI7FgM,EA9DI,GAgEflM,EAAQkM,SAAWA,G,gCCjEnBlM,EAAQsB,YAAa,EACrBtB,EAAQsN,mBAAqB,iDAC7BtN,EAAQuN,qBAAuB,iBAC/BvN,EAAQwN,wBAA0B,oBAClCxN,EAAQyN,qBAAuB,yBAC/BzN,EAAQ0N,yBAA2B,iB,gCCLnC1N,EAAQsB,YAAa,EACrB,IAAIqM,EAAuB,EAAQ,GAC/BC,EAAuB,EAAQ,GACnC5N,EAAQ6N,cAAgBD,EAAqBC,cAC7C,IAAIC,EAAoB,WACpB,SAASA,KAsBT,OApBAA,EAAiBhM,UAAUiM,iBAAmB,SAAUnB,EAAQoB,EAAKC,EAAYC,EAAS7D,GACtF,OAAO,IAAIC,SAAQ,SAAUC,EAASC,GAClCmD,EAAqBQ,YAAYC,cAAcxB,EAAQoB,EAAKC,EAAYC,EAAS3D,EAASC,OAGlGsD,EAAiBhM,UAAUuM,QAAU,SAAUzB,EAAQoB,EAAKC,EAAYC,EAAS7D,GAC7E,OAAO,IAAIC,SAAQ,SAAUC,EAASC,GAClCmD,EAAqBQ,YAAYE,QAAQzB,EAAQoB,EAAKC,EAAYC,EAAS3D,EAASC,OAG5FsD,EAAiBhM,UAAUwM,KAAO,SAAUN,EAAKE,GAC7C,OAAO,IAAI5D,SAAQ,SAAUC,EAASC,GAClCmD,EAAqBQ,YAAYG,KAAKN,EAAKE,EAAS3D,EAASC,OAGrEsD,EAAiBhM,UAAUyM,KAAO,SAAUP,EAAKQ,EAAQN,GACrD,OAAO,IAAI5D,SAAQ,SAAUC,EAASC,GAClCmD,EAAqBQ,YAAYI,KAAKP,EAAKQ,EAAQN,EAAS3D,EAASC,OAGtEsD,EAvBY,GAyBvB9N,EAAQ8N,iBAAmBA,EAC3B9N,EAAQmO,YAAc,IAAIL,G,iCC9B1B,IAAIW,EAAatC,MAAQA,KAAKsC,WAAc,SAAUC,EAASC,EAAYC,EAAGC,GAE1E,OAAO,IAAKD,IAAMA,EAAItE,WAAU,SAAUC,EAASC,GAC/C,SAASsE,EAAU3N,GAAS,IAAM4N,EAAKF,EAAUG,KAAK7N,IAAW,MAAOsG,GAAK+C,EAAO/C,IACpF,SAASwH,EAAS9N,GAAS,IAAM4N,EAAKF,EAAiB,MAAE1N,IAAW,MAAOsG,GAAK+C,EAAO/C,IACvF,SAASsH,EAAKG,GAJlB,IAAe/N,EAIa+N,EAAOC,KAAO5E,EAAQ2E,EAAO/N,QAJ1CA,EAIyD+N,EAAO/N,MAJhDA,aAAiByN,EAAIzN,EAAQ,IAAIyN,GAAE,SAAUrE,GAAWA,EAAQpJ,OAITiO,KAAKN,EAAWG,GAClGF,GAAMF,EAAYA,EAAUhC,MAAM6B,EAASC,GAAc,KAAKK,YAGlEK,EAAelD,MAAQA,KAAKkD,aAAgB,SAAUX,EAAS9I,GAC/D,IAAsG0J,EAAGC,EAAGnO,EAAGoO,EAA3GC,EAAI,CAAEzH,MAAO,EAAG0H,KAAM,WAAa,GAAW,EAAPtO,EAAE,GAAQ,MAAMA,EAAE,GAAI,OAAOA,EAAE,IAAOuO,KAAM,GAAIC,IAAK,IAChG,OAAOJ,EAAI,CAAER,KAAMa,EAAK,GAAI,MAASA,EAAK,GAAI,OAAUA,EAAK,IAAwB,mBAAX5O,SAA0BuO,EAAEvO,OAAO6O,UAAY,WAAa,OAAO3D,OAAUqD,EACvJ,SAASK,EAAKlO,GAAK,OAAO,SAAUoO,GAAK,OACzC,SAAcC,GACV,GAAIV,EAAG,MAAM,IAAIW,UAAU,mCAC3B,KAAOR,GAAG,IACN,GAAIH,EAAI,EAAGC,IAAMnO,EAAY,EAAR4O,EAAG,GAAST,EAAU,OAAIS,EAAG,GAAKT,EAAS,SAAOnO,EAAImO,EAAU,SAAMnO,EAAEf,KAAKkP,GAAI,GAAKA,EAAEP,SAAW5N,EAAIA,EAAEf,KAAKkP,EAAGS,EAAG,KAAKb,KAAM,OAAO/N,EAE3J,OADImO,EAAI,EAAGnO,IAAG4O,EAAK,CAAS,EAARA,EAAG,GAAQ5O,EAAED,QACzB6O,EAAG,IACP,KAAK,EAAG,KAAK,EAAG5O,EAAI4O,EAAI,MACxB,KAAK,EAAc,OAAXP,EAAEzH,QAAgB,CAAE7G,MAAO6O,EAAG,GAAIb,MAAM,GAChD,KAAK,EAAGM,EAAEzH,QAASuH,EAAIS,EAAG,GAAIA,EAAK,CAAC,GAAI,SACxC,KAAK,EAAGA,EAAKP,EAAEG,IAAIM,MAAOT,EAAEE,KAAKO,MAAO,SACxC,QACI,KAAM9O,EAAIqO,EAAEE,MAAMvO,EAAIA,EAAEoB,OAAS,GAAKpB,EAAEA,EAAEoB,OAAS,KAAkB,IAAVwN,EAAG,IAAsB,IAAVA,EAAG,IAAW,CAAEP,EAAI,EAAG,SACjG,GAAc,IAAVO,EAAG,MAAc5O,GAAM4O,EAAG,GAAK5O,EAAE,IAAM4O,EAAG,GAAK5O,EAAE,IAAM,CAAEqO,EAAEzH,MAAQgI,EAAG,GAAI,MAC9E,GAAc,IAAVA,EAAG,IAAYP,EAAEzH,MAAQ5G,EAAE,GAAI,CAAEqO,EAAEzH,MAAQ5G,EAAE,GAAIA,EAAI4O,EAAI,MAC7D,GAAI5O,GAAKqO,EAAEzH,MAAQ5G,EAAE,GAAI,CAAEqO,EAAEzH,MAAQ5G,EAAE,GAAIqO,EAAEG,IAAIzC,KAAK6C,GAAK,MACvD5O,EAAE,IAAIqO,EAAEG,IAAIM,MAChBT,EAAEE,KAAKO,MAAO,SAEtBF,EAAKpK,EAAKvF,KAAKqO,EAASe,GAC1B,MAAOhI,GAAKuI,EAAK,CAAC,EAAGvI,GAAI8H,EAAI,EAAK,QAAUD,EAAIlO,EAAI,EACtD,GAAY,EAAR4O,EAAG,GAAQ,MAAMA,EAAG,GAAI,MAAO,CAAE7O,MAAO6O,EAAG,GAAKA,EAAG,QAAK,EAAQb,MAAM,GArB9BJ,CAAK,CAACpN,EAAGoO,OAwB7D/P,EAAQsB,YAAa,EACrB,IAAI6O,EAAU,EAAQ,GAClBC,EAAgB,EAAQ,IACxBC,EAAiB,EAAQ,KACzBC,EAAe,EAAQ,GAC3BtQ,EAAQuQ,iBAAmB,WACvB,IAWI,KAVuB,gBAAiBtL,QACjC,qBAAsBA,QACtB,SAAUA,QACV,YAAaA,QACb,cAAeA,OAAOuL,SACtB,SAAU5P,QACV,YAAauD,MAAMrC,WACnB,YAAaqC,MAAMrC,WACnB,gBAAiBmD,QACjB,QAASA,OAAOwL,aAEnB,OAAO,EAEX,IAAIrK,EAAOhB,SAASuD,cAAc,UAClC,OAAOwH,EAAQ7L,WAAW8B,aAAmC,EAASA,EAAKsK,cAAgBP,EAAQlM,QAAQmC,EAAKsK,WAAW,OAE/H,MAAOjJ,GACH,OAAO,IAGfxC,OAAO0L,iBAAiB,QAAQ,WAAc,OAAOlC,OAAU,OAAQ,OAAQ,GAAQ,WACnF,IAAImC,EAAMC,EAAOC,EAAeC,EAAOC,EAAOC,EAAgBnM,EAAIoM,EAC9D5E,EAAI6E,EACR,OAAO9B,EAAYlD,MAAM,SAAUiF,GAC/B,OAAQA,EAAGpJ,OACP,KAAK,EAyBD,GAxBA4I,EAAOT,EAAQrK,aAAa,KAC5B+K,EAA2C,QAAlCvE,EAAKrH,OAAOoM,wBAAqC,IAAP/E,EAAgBA,EAAK,EACxEwE,EAAgB,CACZQ,cAAeC,UAAUC,UACzBC,gBAAiB,GAAKC,OAAOjM,MAAQoL,EACrCc,iBAAkB,GAAKD,OAAOhM,OAASmL,EACvCe,gBAAiB,GAAKL,UAAUM,cAChCC,mBAAoB,GAAKP,UAAUQ,eAEvChB,EAAQZ,EAAQtK,cAChBmL,EAAQb,EAAQxK,eAChBsL,EAA4B,IAAVF,GAAyB,IAAVC,EAC7BhR,EAAQuQ,qBACRO,EAAckB,iBAAmB,OAEjCf,IACAH,EAAcmB,aAAehB,EAAe1O,aAExB,QAAnB4O,EAAK/L,gBAA6B,IAAP+L,OAAgB,EAASA,EAAGe,gBACxDpB,EAAcqB,YAAc/M,SAAS8M,aAAa3P,YAElD4N,EAAQzM,SAAsB,OAAb0B,eAAkC,IAAbA,cAAsB,EAASA,SAASgN,cAC9EtB,EAAcuB,aAAejN,SAASgN,aAErCE,cAAe,MAAO,CAAC,EAAG,GAC/BhC,EAAaiC,WAAWC,UAAUC,WAAYC,cAAcC,WAC5DvB,EAAGpJ,MAAQ,EACf,KAAK,EAMD,OALAoJ,EAAGzB,KAAKxC,KAAK,CAAC,EAAG,EAAG,CAAE,IACtBkD,EAAeuC,aAAaJ,UAAU,CAClCK,SAAUC,aAEdhO,EAAKgM,EACE,CAAC,EAAGT,EAAeuC,aAAaG,aAAa,QAASC,eACjE,KAAK,EAED,OADAlO,EAAGmO,IAAM7B,EAAG1B,OACL,CAAC,EAAG,GACf,KAAK,EAID,MAHAwB,EAAOE,EAAG1B,OACVY,EAAa4C,YAAY,8BAAgChC,GACzDiC,QAAQC,MAAMlC,GACRA,EACV,KAAK,EAGD,OAFAd,EAAciD,eAAezC,EAAME,GACnCF,EAAK0C,SACE,CAAC,aAGjB,I,iCCrHP,IACQC,EADJC,EAAarH,MAAQA,KAAKqH,YACtBD,EAAgB,SAAU/S,EAAGiT,GAI7B,OAHAF,EAAgB3S,OAAO8S,gBAClB,CAAEC,UAAW,cAAgBxP,OAAS,SAAU3D,EAAGiT,GAAKjT,EAAEmT,UAAYF,IACvE,SAAUjT,EAAGiT,GAAK,IAAK,IAAIzR,KAAKyR,EAAOA,EAAE1R,eAAeC,KAAIxB,EAAEwB,GAAKyR,EAAEzR,MACpDxB,EAAGiT,IAErB,SAAUjT,EAAGiT,GAEhB,SAASG,IAAOzH,KAAKjI,YAAc1D,EADnC+S,EAAc/S,EAAGiT,GAEjBjT,EAAEsB,UAAkB,OAAN2R,EAAa7S,OAAOY,OAAOiS,IAAMG,EAAG9R,UAAY2R,EAAE3R,UAAW,IAAI8R,KAGnFnF,EAAatC,MAAQA,KAAKsC,WAAc,SAAUC,EAASC,EAAYC,EAAGC,GAE1E,OAAO,IAAKD,IAAMA,EAAItE,WAAU,SAAUC,EAASC,GAC/C,SAASsE,EAAU3N,GAAS,IAAM4N,EAAKF,EAAUG,KAAK7N,IAAW,MAAOsG,GAAK+C,EAAO/C,IACpF,SAASwH,EAAS9N,GAAS,IAAM4N,EAAKF,EAAiB,MAAE1N,IAAW,MAAOsG,GAAK+C,EAAO/C,IACvF,SAASsH,EAAKG,GAJlB,IAAe/N,EAIa+N,EAAOC,KAAO5E,EAAQ2E,EAAO/N,QAJ1CA,EAIyD+N,EAAO/N,MAJhDA,aAAiByN,EAAIzN,EAAQ,IAAIyN,GAAE,SAAUrE,GAAWA,EAAQpJ,OAITiO,KAAKN,EAAWG,GAClGF,GAAMF,EAAYA,EAAUhC,MAAM6B,EAASC,GAAc,KAAKK,YAGlEK,EAAelD,MAAQA,KAAKkD,aAAgB,SAAUX,EAAS9I,GAC/D,IAAsG0J,EAAGC,EAAGnO,EAAGoO,EAA3GC,EAAI,CAAEzH,MAAO,EAAG0H,KAAM,WAAa,GAAW,EAAPtO,EAAE,GAAQ,MAAMA,EAAE,GAAI,OAAOA,EAAE,IAAOuO,KAAM,GAAIC,IAAK,IAChG,OAAOJ,EAAI,CAAER,KAAMa,EAAK,GAAI,MAASA,EAAK,GAAI,OAAUA,EAAK,IAAwB,mBAAX5O,SAA0BuO,EAAEvO,OAAO6O,UAAY,WAAa,OAAO3D,OAAUqD,EACvJ,SAASK,EAAKlO,GAAK,OAAO,SAAUoO,GAAK,OACzC,SAAcC,GACV,GAAIV,EAAG,MAAM,IAAIW,UAAU,mCAC3B,KAAOR,GAAG,IACN,GAAIH,EAAI,EAAGC,IAAMnO,EAAY,EAAR4O,EAAG,GAAST,EAAU,OAAIS,EAAG,GAAKT,EAAS,SAAOnO,EAAImO,EAAU,SAAMnO,EAAEf,KAAKkP,GAAI,GAAKA,EAAEP,SAAW5N,EAAIA,EAAEf,KAAKkP,EAAGS,EAAG,KAAKb,KAAM,OAAO/N,EAE3J,OADImO,EAAI,EAAGnO,IAAG4O,EAAK,CAAS,EAARA,EAAG,GAAQ5O,EAAED,QACzB6O,EAAG,IACP,KAAK,EAAG,KAAK,EAAG5O,EAAI4O,EAAI,MACxB,KAAK,EAAc,OAAXP,EAAEzH,QAAgB,CAAE7G,MAAO6O,EAAG,GAAIb,MAAM,GAChD,KAAK,EAAGM,EAAEzH,QAASuH,EAAIS,EAAG,GAAIA,EAAK,CAAC,GAAI,SACxC,KAAK,EAAGA,EAAKP,EAAEG,IAAIM,MAAOT,EAAEE,KAAKO,MAAO,SACxC,QACI,KAAM9O,EAAIqO,EAAEE,MAAMvO,EAAIA,EAAEoB,OAAS,GAAKpB,EAAEA,EAAEoB,OAAS,KAAkB,IAAVwN,EAAG,IAAsB,IAAVA,EAAG,IAAW,CAAEP,EAAI,EAAG,SACjG,GAAc,IAAVO,EAAG,MAAc5O,GAAM4O,EAAG,GAAK5O,EAAE,IAAM4O,EAAG,GAAK5O,EAAE,IAAM,CAAEqO,EAAEzH,MAAQgI,EAAG,GAAI,MAC9E,GAAc,IAAVA,EAAG,IAAYP,EAAEzH,MAAQ5G,EAAE,GAAI,CAAEqO,EAAEzH,MAAQ5G,EAAE,GAAIA,EAAI4O,EAAI,MAC7D,GAAI5O,GAAKqO,EAAEzH,MAAQ5G,EAAE,GAAI,CAAEqO,EAAEzH,MAAQ5G,EAAE,GAAIqO,EAAEG,IAAIzC,KAAK6C,GAAK,MACvD5O,EAAE,IAAIqO,EAAEG,IAAIM,MAChBT,EAAEE,KAAKO,MAAO,SAEtBF,EAAKpK,EAAKvF,KAAKqO,EAASe,GAC1B,MAAOhI,GAAKuI,EAAK,CAAC,EAAGvI,GAAI8H,EAAI,EAAK,QAAUD,EAAIlO,EAAI,EACtD,GAAY,EAAR4O,EAAG,GAAQ,MAAMA,EAAG,GAAI,MAAO,CAAE7O,MAAO6O,EAAG,GAAKA,EAAG,QAAK,EAAQb,MAAM,GArB9BJ,CAAK,CAACpN,EAAGoO,OAwB7D/P,EAAQsB,YAAa,EACrB,IAAIuS,EAAwB,EAAQ,KAChCC,EAAuB,EAAQ,KAC/B3D,EAAU,EAAQ,GAClB4D,EAAgB,EAAQ,IACxBC,EAAkB,EAAQ,KAC1BC,EAAa,EAAQ,IACrBC,EAAgB,EAAQ,GACxBC,EAAc,EAAQ,IACtBC,EAAuB,4JAkSvBC,EAAc,IAjSO,SAAUC,GAE/B,SAASC,IACL,IAAIzP,EACAyH,EAAQ+H,EAAOjU,KAAK8L,KAAM,CAAEqI,YAAaX,EAA+B,QAAGY,IAAK,CAAC,CACzE1O,GAAI,mBACJ2O,WAAYZ,EAA8B,WACxC,CACVa,iBAAiB,EACjBC,eAAe,EACfC,gBAAgB,KACd1I,KACNI,EAAMuI,SAAW,IAAIb,EAAW/H,SAChCK,EAAMwI,gBAAkB,KACxBxI,EAAMyI,eAAiB,KACvBzI,EAAM0I,sBAAuB,EAC7B1I,EAAM2I,sBAAuB,EAC7B3I,EAAM4I,WAAa,KACnB5I,EAAM6I,SAAW,KACjB7I,EAAMoG,UAAY,KAClBpG,EAAM8I,gBAAkB,KACxB9I,EAAM+I,QAAU,SAAUC,GAAS,OAAOnB,EAAqBzP,KAAK4Q,IACpEhJ,EAAMiJ,WAAajJ,EAAMiJ,WAAW9T,KAAK6K,GACzC,IAAIkJ,EAA4C,QAA7B3Q,EAAKyH,EAAMmJ,oBAAiC,IAAP5Q,OAAgB,EAASA,EAAG6Q,cAAc,gBAIlG,OAHoB,OAAhBF,IACAA,EAAYG,QAAUrJ,EAAMiJ,YAEzBjJ,EAoQX,OA9RAiH,EAAUe,EAAmBD,GA4B7BC,EAAkBzS,UAAU0Q,UAAY,SAAUqD,GAC9C,IAAI/Q,EACJ,GAAIqH,KAAK2J,YACL3J,KAAK4J,oBAAoB,IAAIlL,MAAM,4BAavC,GAVAsB,KAAK6J,YAAYH,EAAQhD,UACuE,kBAApFgD,aAAyC,EAASA,EAAQX,wBAClE/I,KAAK+I,qBAAuBW,EAAQX,sBAEwD,kBAApFW,aAAyC,EAASA,EAAQZ,wBAClE9I,KAAK8I,qBAAuBY,EAAQZ,sBAE8C,iBAA1EY,aAAyC,EAASA,EAAQV,cAClEhJ,KAAKgJ,WAAaU,EAAQV,YAEI,iBAAvBU,EAAQnB,WAAyB,CACxC,IAAIjO,EAAQrB,SAASuD,cAAc,SACnClC,EAAMwP,KAAO,WACbxP,EAAMyP,YAAcL,EAAQnB,WACC,QAA5B5P,EAAKqH,KAAKuJ,oBAAiC,IAAP5Q,GAAyBA,EAAGqR,mBAAmB,aAAc1P,EAAM2P,aAGhH7B,EAAkBzS,UAAUiR,aAAe,SAAUsD,EAAMC,GAKvD,OAJAnK,KAAKoK,QAAQF,GACTlG,EAAQzM,SAAS4S,IACjBnK,KAAKqK,aAAaF,GAEfnK,KAAKsK,gBAEhBlC,EAAkBzS,UAAU2U,aAAe,WACvC,IACI3R,EAAIwH,EAAI6E,EADR5E,EAAQJ,KAEZ,GAA2B,OAAvBA,KAAKuK,cACL,OAAOvK,KAAKuK,cAEhB,GAAsB,OAAlBvK,KAAKiJ,SACL,OAAO9K,QAAQE,OAAO,IAAIK,MAAM,uBAEpC,IAAI8L,EAAiD,QAA5B7R,EAAKqH,KAAKuJ,oBAAiC,IAAP5Q,OAAgB,EAASA,EAAG6Q,cAAc,mBACvG,IAAKxF,EAAQlM,QAAQ0S,GACjB,GAAIxK,KAAK8I,qBAAsB,CAC3B9E,EAAQtJ,YAAY8P,GACpB,IAAIC,EAAiBD,EAAkBhB,cAAc,KAChDxF,EAAQlM,QAAQ2S,KACjBA,EAAehB,QAAU,SAAUnO,GAG/B,OAFA0I,EAAQzI,UAAUD,GAClB8E,EAAMuI,SAAShO,UAAU,IAClB,SAKfqJ,EAAQxJ,YAAYgQ,GAG5B,IAAIE,EAAiD,QAA5BvK,EAAKH,KAAKuJ,oBAAiC,IAAPpJ,OAAgB,EAASA,EAAGqJ,cAAc,mBACvG,IAAKxF,EAAQlM,QAAQ4S,GACjB,GAAI1K,KAAK+I,qBAAsB,CAC3B/E,EAAQtJ,YAAYgQ,GACpB,IAAIC,EAAiBD,EAAkBlB,cAAc,KAChDxF,EAAQlM,QAAQ6S,KACjBA,EAAelB,QAAU,SAAUnO,GAG/B,OAFA0I,EAAQzI,UAAUD,GAClB8E,EAAMuI,SAAShO,UAAU,IAClB,SAKfqJ,EAAQxJ,YAAYkQ,GAG5B,IAAIE,EAAUzC,EAAOxS,UAAU2U,aAAapW,KAAK8L,MAC7C6K,EAAqC,QAA5B7F,EAAKhF,KAAKuJ,oBAAiC,IAAPvE,OAAgB,EAASA,EAAGwE,cAAc,UAI3F,OAHIxF,EAAQlM,QAAQ+S,aAAqC,EAASA,EAAM7V,QACpEgL,KAAK8K,QAAQD,GAEVD,GAEXxC,EAAkBzS,UAAUoV,WAAa,SAAUzP,GAC/C,IAAK6M,EAAOxS,UAAUoV,WAAW7W,KAAK8L,KAAM1E,GACxC,OAAO,EAGX,GAAgB,MADFA,EAAE0P,MAAQ1P,EAAE0P,MAAQ1P,EAAE2P,SAChB,CAChB,IAAIlR,EAAUiG,KAAKkL,oBAQnB,OAPIlH,EAAQ7L,WAAW4B,EAAQoR,OAC3BpR,EAAQoR,QAGRnH,EAAQrJ,UAAUZ,EAAS,SAE/BiK,EAAQzI,UAAUD,IACX,EAEX,OAAO,GAEX8M,EAAkBzS,UAAUmV,QAAU,SAAU/Q,GAC5C,IAAKiK,EAAQlM,QAAQiC,GACjB,IACIA,EAAQqR,QAEZ,MAAO9P,MAGf8M,EAAkBzS,UAAUyU,QAAU,SAAUF,GAC5ClK,KAAKiJ,SAAWiB,GAEpB9B,EAAkBzS,UAAU0U,aAAe,SAAU7D,GACjDxG,KAAKwG,UAAYA,GAErB4B,EAAkBzS,UAAUuV,kBAAoB,WAC5C,IAAIvS,EAEJ,OAD+C,QAA5BA,EAAKqH,KAAKuJ,oBAAiC,IAAP5Q,OAAgB,EAASA,EAAG6Q,cAAc,iBAGrGpB,EAAkBzS,UAAU0V,eAAiB,SAAUC,GAEnD,OADgC,OAAlBtL,KAAK0G,SAAoB,qBAAuB1G,KAAK0G,SAAS4E,IAGhFlD,EAAkBzS,UAAU4V,aAAe,SAAUD,GACjD,IAAI3S,EACA6S,EAAUxL,KAAKqL,eAAeC,GAC9BvR,EAAuC,QAA5BpB,EAAKqH,KAAKuJ,oBAAiC,IAAP5Q,OAAgB,EAASA,EAAG6Q,cAAc,cACxFxF,EAAQlM,QAAQiC,IACjBiK,EAAQpI,YAAY7B,EAASyR,IAGrCpD,EAAkBzS,UAAU0T,WAAa,SAAUxO,GAC/C,OAAOyH,EAAUtC,UAAM,OAAQ,GAAQ,WACnC,IAAIyL,EAAWZ,EAAOa,EAAKtC,EAAOuC,EAAUC,EAAUC,EAAU9J,EAAS+J,EAAOC,EAAUC,EAAmBC,EAAgBX,EAC7H,OAAOpI,EAAYlD,MAAM,SAAUrH,GAC/B,OAAQA,EAAGkD,OACP,KAAK,EAKD,GAJAmI,EAAQzI,UAAUV,GAClB4Q,EAAYzL,KAAKuJ,aACjBsB,EAAQY,aAA6C,EAASA,EAAUjC,cAAc,UACtFkC,EAAMD,aAA6C,EAASA,EAAUjC,cAAc,aAChFxF,EAAQlM,QAAQ+S,IAAU7G,EAAQlM,QAAQ4T,GAE1C,OADA1L,KAAK4J,oBAAoB,IAAIlL,MAAM,wBAC5B,CAAC,GAIZ,GAFA0K,EAAQyB,EAAM7V,MACd2W,EAAWD,EAAI1W,MACXgP,EAAQlM,QAAQsR,GAGhB,OAFApJ,KAAK8K,QAAQD,GACb7K,KAAKuL,aAAa,gBACX,CAAC,GAAG,GAEV,GAAIvH,EAAQlM,QAAQ6T,GAGrB,OAFA3L,KAAK8K,QAAQY,GACb1L,KAAKuL,aAAa,mBACX,CAAC,GAAG,GAEV,IAAKvL,KAAKmJ,QAAQC,GAGnB,OAFApJ,KAAK8K,QAAQD,GACb7K,KAAKuL,aAAa,gBACX,CAAC,GAAG,GAEV,GAAIvH,EAAQzL,aAAaoT,GAG1B,OAFA3L,KAAK8K,QAAQY,GACb1L,KAAKuL,aAAa,iBACX,CAAC,GAAG,GAEfK,EAAW5D,EAAY5G,qBACnB4C,EAAQzM,SAASyI,KAAKgJ,cACtB4C,EAAW,WAAa5L,KAAKgJ,WAAa4C,GAE9C7J,EAAU,CACN,eAAgB,mBAChB,KAAQ/B,KAAKiJ,UAEbjF,EAAQzM,SAASyI,KAAKwG,aACtBzE,EAAoB,WAAI/B,KAAKwG,WAEjC7N,EAAGkD,MAAQ,EACf,KAAK,EAED,OADAlD,EAAG6K,KAAKxC,KAAK,CAAC,EAAG,EAAG,CAAE,IACf,CAAC,EAAG4G,EAAc5F,YAAYI,KAAKwJ,EAAU,CAC5CM,UAAW9C,EACX+C,aAAcR,GACf5J,IACX,KAAK,EAED,OADA8J,EAAWlT,EAAG4K,OACP,CAAC,EAAG,GACf,KAAK,EAaD,OAZAuI,EAAQnT,EAAG4K,OACXwI,EAAWD,EACN9H,EAAQlM,QAAQiU,EAASK,cAI1BpM,KAAK2I,SAAShO,UAAU,EAAGoR,GAC3B/E,QAAQC,MAAM6E,GACdD,EAAW,CACPQ,MAAO,uBANXR,EAAWE,EAASK,YASjB,CAAC,EAAG,GACf,KAAK,EAGD,GAFAJ,EAAoBjE,EAAcuE,wBAEL,aAD7BL,EAAiBjI,EAAQzM,SAASsU,GAAYU,KAAKC,MAAMX,GAAYA,GAClDQ,OAAgD,OAAzBJ,EAAeI,MAAgB,CAGrE,OAFArM,KAAKkJ,gBAAkB+C,EAAeI,MACtCf,EAAY,KACJW,EAAeI,OACnB,IAAK,sBACL,IAAK,oBACDf,EAAY,eACZ,MACJ,IAAK,kBACDA,EAAY,oBACZ,MACJ,IAAK,qBACDA,EAAY,eACZ,MACJ,IAAK,wBACDA,EAAY,aACZ,MACJ,IAAK,gBACDA,EAAY,cACZ,MACJ,IAAK,YACDA,EAAY,WACZ,MACJ,IAAK,iBACDA,EAAY,sBACZ,MACJ,QACIA,EAAY,uBAEyB,IAAzCW,EAAeQ,wBACfnB,EAAY,mBAEhBtL,KAAKuL,aAAaD,GAClBtL,KAAK2I,SAAShO,UAAU,EAAGsR,EAAeI,OAC1CL,SAAsEA,EAAkBU,UAAU,IAAK,sBAAuB,CAC1HC,UAAWvD,EACXwD,UAAWX,EAAeI,MAC1BQ,aAAc7M,KAAKqL,eAAeC,UAItCtL,KAAK2I,SAAShO,UAAU,EAAGsR,EAAea,cACtC9I,EAAQ7L,WAAW6H,KAAK4I,mBACxB5I,KAAK4I,gBAAgBqD,EAAea,cACpC9M,KAAK4I,gBAAkB,KACvB5I,KAAK6I,eAAiB,KACtB7I,KAAKuK,cAAgB,KACrBvK,KAAK+M,QAGb,MAAO,CAAC,WAKrB3E,EA/Ra,CAgStBP,EAAgBmF,gBAElBnZ,EAAQ4S,aAAe,CACnBkC,SAAUT,EAAYS,SACtB/B,aAAcsB,EAAYtB,aAAarR,KAAK2S,GAC5C7B,UAAW6B,EAAY7B,UAAU9Q,KAAK2S,K,iCCjW1C,OAAe,4uJ,iCCAf,OAAe,miD,iCCCf,IACQd,EADJC,EAAarH,MAAQA,KAAKqH,YACtBD,EAAgB,SAAU/S,EAAGiT,GAI7B,OAHAF,EAAgB3S,OAAO8S,gBAClB,CAAEC,UAAW,cAAgBxP,OAAS,SAAU3D,EAAGiT,GAAKjT,EAAEmT,UAAYF,IACvE,SAAUjT,EAAGiT,GAAK,IAAK,IAAIzR,KAAKyR,EAAOA,EAAE1R,eAAeC,KAAIxB,EAAEwB,GAAKyR,EAAEzR,MACpDxB,EAAGiT,IAErB,SAAUjT,EAAGiT,GAEhB,SAASG,IAAOzH,KAAKjI,YAAc1D,EADnC+S,EAAc/S,EAAGiT,GAEjBjT,EAAEsB,UAAkB,OAAN2R,EAAa7S,OAAOY,OAAOiS,IAAMG,EAAG9R,UAAY2R,EAAE3R,UAAW,IAAI8R,KAGvF5T,EAAQsB,YAAa,EACrB,IAAI6O,EAAU,EAAQ,GAElBgJ,EAAiB,SAAU7E,GAE3B,SAAS6E,EAAcC,EAAMvD,GACzB,IAAItJ,EAAQ+H,EAAOjU,KAAK8L,KAAMiN,EAAMvD,IAAY1J,KAShD,OARAI,EAAMmK,cAAgB,KACtBnK,EAAMwI,gBAAkB,KACxBxI,EAAMyI,eAAiB,KACvBzI,EAAMsI,gBAAiB,EACmE,kBAA9EgB,aAAyC,EAASA,EAAQhB,kBAClEtI,EAAMsI,eAAiBgB,EAAQhB,gBAEnCtI,EAAM2K,WAAa3K,EAAM2K,WAAWxV,KAAK6K,GAClCA,EAoDX,OA/DAiH,EAAU2F,EAAe7E,GAazB6E,EAAcrX,UAAUoX,KAAO,SAAUG,GAChClN,KAAK2J,cAGVxB,EAAOxS,UAAUoX,KAAK7Y,KAAK8L,MACP,OAAhBA,KAAKmN,QACLnN,KAAKmN,OAAOC,oBAAoB,WAAYpN,KAAK+K,YAAY,GAEjE/K,KAAKqN,aAAa,IAAI3O,MAAMwO,QAAuCA,EAAS,2BAEhFF,EAAcrX,UAAU2U,aAAe,WACnC,IAAIlK,EAAQJ,KACZ,OAA2B,OAAvBA,KAAKuK,gBAGTvK,KAAKuK,cAAgB,IAAIpM,SAAQ,SAAUC,EAASC,GAChD+B,EAAMwI,gBAAkBxK,EACxBgC,EAAMyI,eAAiBxK,KAE3B2B,KAAKvF,UACe,OAAhBuF,KAAKmN,QACLnN,KAAKmN,OAAO3I,iBAAiB,WAAYxE,KAAK+K,YAAY,IARnD/K,KAAKuK,eAYpByC,EAAcrX,UAAUoV,WAAa,SAAUzP,GAE3C,OAAgB,MADFA,EAAE0P,MAAQ1P,EAAE0P,MAAQ1P,EAAE2P,WACdjL,KAAK0I,iBACvB1E,EAAQzI,UAAUD,GAClB0E,KAAK+M,KAAK,kBACH,IAIfC,EAAcrX,UAAU0X,aAAe,SAAUpG,GACzCjD,EAAQ7L,WAAW6H,KAAK6I,kBACxB7I,KAAK6I,eAAe5B,GACpBjH,KAAK4I,gBAAkB,KACvB5I,KAAKuK,cAAgB,KACrBvK,KAAK6I,eAAiB,OAG9BmE,EAAcrX,UAAUiU,oBAAsB,SAAU3C,GACpD,IAAIjD,EAAQ7L,WAAW6H,KAAK6I,gBAIxB,MAAM5B,EAHNjH,KAAKqN,aAAapG,IAMnB+F,EAhES,CADL,EAAQ,GAkEZM,cACXzZ,EAAQmZ,cAAgBA,G,+BClFxBnZ,EAAQsB,YAAa,EACrBtB,EAAQyY,sBAAwB,WAC5B,IAAIiB,EAAWzU,OAAOyU,SACtB,MAAwB,iBAAbA,GAAsC,OAAbA,EACzBA,EAASnH,WAEX,eAAgBtN,OACdA,OAAOsN,gBAGd,GAGRvS,EAAQ2Z,YAAc,SAAUC,EAAmBC,GAC/C,OAAQA,GACJ,IAAK,IACD,MAA6B,MAAtBD,EACX,IAAK,KACD,MAA6B,MAAtBA,GAAmD,MAAtBA,EACxC,IAAK,MACD,MAA6B,QAAtBA,GAAqD,SAAtBA,EAC1C,IAAK,OACD,MAA6B,SAAtBA,EAEf,OAAO,I,gCCxBX5Z,EAAQsB,YAAa,EACrB,IAAI6O,EAAU,EAAQ,GACtBnQ,EAAQqT,eAAiB,SAAUzC,EAAME,EAAegJ,GACpD,IAAIhV,EACAiV,EAAM5J,EAAQzM,SAASkN,GAAQT,EAAQrK,aAAa8K,GAAQA,EAChE,GAAY,OAARmJ,EAAc,CACd,IAAIC,EAAWD,EAAIC,SACnB,IAAgB,IAAZF,EACA,IAAK,IAAI5Z,EAAI8Z,EAASxX,OAAS,EAAGtC,GAAK,EAAGA,IACtC6Z,EAAIE,YAAYD,EAAS9Z,IAGjC,IAAK,IAAIuB,KAAOqP,EACZ,GAAIA,EAAc/O,eAAeN,GAAM,CAGnC,IAFA,IAAIyY,EAA6C,QAA7BpV,EAAKgM,EAAcrP,UAAyB,IAAPqD,EAAgBA,EAAK,GAC1EqV,GAAQ,EACHC,EAAI,EAAGA,EAAIJ,EAASxX,OAAQ4X,IACjC,GAAIJ,EAASI,GAAGrU,KAAOtE,EAAK,CACxBuY,EAASI,GAAGjZ,MAAQ+Y,EACpBC,GAAQ,EACR,MAGHA,GACDna,EAAQqa,eAAeN,EAAKtY,EAAKyY,MAMrDla,EAAQqa,eAAiB,SAAUzJ,EAAM7K,EAAI5E,GACzC,IACI,IAAImZ,EAAkBnZ,QAAqCA,EAAQ,GAC/DoZ,EAAepK,EAAQ7L,WAAWsM,EAAK+E,eACvC/E,EAAK+E,cAAc,IAAM5P,GAAMoK,EAAQrK,aAAaC,GACxD,GAAqB,OAAjBwU,EACAA,EAAapZ,MAAQgP,EAAQ1H,WAAW6R,OAEvC,CACD,IAA+C,IAA3C/I,UAAUC,UAAUtE,QAAQ,UAC5B,IACIqN,EAAenV,SAASuD,cAAc,4BAA8BwH,EAAQ1H,WAAW1C,GAAjD,WACnBoK,EAAQ1H,WAAW1C,GAAM,YAAcoK,EAAQ1H,WAAW6R,GAAmB,QAEpG,MAAO7S,IAGU,OAAjB8S,KACAA,EAAenV,SAASuD,cAAc,UACzBsN,KAAO,SACpBsE,EAAa9Z,KAAO0P,EAAQ1H,WAAW1C,GACvCwU,EAAaxU,GAAKoK,EAAQ1H,WAAW1C,GACrCwU,EAAapZ,MAAQgP,EAAQ1H,WAAW6R,IAE5C1J,EAAK4J,YAAYD,IAGzB,MAAO9S,MAEXzH,EAAQuO,KAAO,SAAUqC,EAAM6J,EAAQC,EAAWC,QAC5B,IAAdD,IAAwBA,GAAY,GACxC,IAAI5V,EAAK2V,EAAOxQ,MAAM,KAAM+D,EAAMlJ,EAAG,GAAI8V,EAAa9V,EAAG,GAErD0J,EAAS,QACMzK,IAAf6W,GACaA,EAAW3Q,MAAM,KACnBzD,SAAQ,SAAUqU,GACzB,IAAI/V,EAAK+V,EAAK5Q,MAAM,KAAMxI,EAAMqD,EAAG,GAAI3D,EAAQ2D,EAAG,GAClD0J,EAAO/M,QAAiBsC,IAAV5C,EAAsB,GAAK2Z,mBAAmB3Z,MAGpEnB,EAAQqT,eAAezC,EAAMpC,EAAQkM,GACrC9J,EAAKhE,OAAS,OACdgE,EAAKmK,OAAS/M,EACd4C,EAAKoK,aAAa,eAAgBP,QACnB1W,IAAX4W,IACA/J,EAAK+J,OAASA,EAAOla,MAEzBmQ,EAAK0C,W,gCC/ET,OAAe,2B,gCCAf,OAAe,gG,+BCCftT,EAAQsB,YAAa,EACrB,IAAIY,EAAc,EAAQ,GACtBiO,EAAU,EAAQ,GAClB+D,EAAgB,EAAQ,GAExBrG,EACA,SAAuBoN,EAAiBC,EAAeC,GACnDhP,KAAKiP,OAAS,EACdjP,KAAKkP,WAAa,KAClBlP,KAAKwL,QAAU,KACfxL,KAAKoM,YAAc,KACnBpM,KAAKiP,OAASH,EACd9O,KAAKkP,WAAaH,OACOnX,IAArBoX,IACAhP,KAAKwL,QAAUwD,IAK3Bnb,EAAQ6N,cAAgBA,EACxB,IAAIyN,EAA0B,WAC1B,SAASA,KAmIT,OAjIAA,EAAuBxZ,UAAUsM,cAAgB,SAAUxB,EAAQoB,EAAKC,EAAYC,EAAS6G,EAAiBwG,EAAelR,GACzH,IAAImR,EAAwC,iBAAZnR,EAAuBA,EApB1C,IAqBToR,EAAM,IAAIC,eACdD,EAAIE,KAAK/O,EAAQoB,GAAK,GACtByN,EAAIG,OAAS,WACTC,aAAaC,GACbA,EAAe,EACX3L,EAAQ7L,WAAWyQ,IACnBA,EAAgB0G,IAGxBA,EAAIM,QAAU,WACVF,aAAaC,GACbA,EAAe,EACf,IAAIE,EAAa7L,EAAQlM,QAAQ+J,GAA2BA,EAApBA,EAAI/D,MAAM,KAAK,GACnDgS,EAAe,GAKfA,EAJC9L,EAAQlM,QAAQwX,EAAIJ,YAIN,cAAgBW,EAAY,+BAH5BP,EAAIJ,WAKvB,IAAIlD,EAAoBjE,EAAcuE,wBACtCN,SAAsEA,EAAkBU,UAAU,IAAK,eAAgB,CACnHE,UAAW,uBACXC,aAAciD,IAElB,IAAI7I,EAAQ,IAAIvF,EAAc4N,EAAIL,OAAQa,GAC1C,IAAI9L,EAAQ7L,WAAWiX,GAInB,MAAMnI,EAHNmI,EAAcnI,IAMtB,IAAI0I,EAAeI,YAAW,SAAUC,GACpC,IACIV,EAAIW,mBAAqB,aACzBX,EAAIY,QAER,MAAOC,IACP,IAAIN,EAAa7L,EAAQlM,QAAQkY,GAAyC,GAA3BA,EAAWlS,MAAM,KAAK,GACjEkO,EAAoBjE,EAAcuE,wBACtCN,SAAsEA,EAAkBU,UAAU,IAAK,iBAAkB,CACrH0D,cAAe,qBACfC,YAAa,oBAAqBC,UAAWT,IAEjD,IAAI5I,EAAQ,IAAIvF,GAAe,EAAG3L,EAAYqJ,sBAAuBrJ,EAAYqJ,uBACjF,IAAI4E,EAAQ7L,WAAWiX,GAInB,MAAMnI,EAHNmI,EAAcnI,KAKnBoI,EAAoBxN,GACnB0O,GAAe,EACfC,GAAiB,EAChBxM,EAAQlM,QAAQiK,IAA+B,iBAAZA,GACpCtN,OAAO2F,KAAK2H,GAAS1H,SAAQ,SAAU/E,GACnC,GAA0B,iBAAtBA,EAAImb,cAAkC,CACtCD,GAAiB,EACjB,IAAIxb,EAAQ+M,EAAQzM,GAChB0O,EAAQzM,SAASvC,MAC4B,IAAzCA,EAAMyb,cAAc1P,QAAQ,UAGwB,IAA/C/L,EAAMyb,cAAc1P,QAAQ,iBAFjCwP,GAAe,GAO3BjB,EAAIoB,iBAAiBpb,EAAKyM,EAAQzM,OAG3B,SAAXmL,GAAsB+P,IACtBlB,EAAIoB,iBAAiB,eAAgB,oBACrCH,GAAe,GAEnB,IAAI9W,EAAO,KACX,GAAKuK,EAAQlM,QAAQgK,IAAeA,EAAW/J,cAAgBtD,OAY3DgF,EAAOqI,OAXP,GAAIyO,EACA9W,EAAO8S,KAAKoE,UAAU7O,OAErB,CACD,IAAI8O,EAAe9O,EACnBrI,EAAOhF,OAAO2F,KAAKwW,GAAcC,KAAI,SAAUvb,GAC3C,MAAO,IAAOwb,mBAAmBxb,GAA1B,KAA8Cwb,mBAAmBF,EAAatb,OACtFyb,KAAK,KAMhBzB,EAAInN,KAAK1I,IAEb0V,EAAuBxZ,UAAUuM,QAAU,SAAUzB,EAAQoB,EAAKC,EAAYC,EAASiP,EAAiBnI,EAAgB3K,GA0BpH8B,KAAKiC,cAAcxB,EAAQoB,EAAKC,EAAYC,GAzBrB,SAAUuN,GAC7B,IAAI3W,EAAIwH,EACR,GAAImP,EAAIL,QAAU,KAAOK,EAAIL,OAAS,IAC9BjL,EAAQ7L,WAAW6Y,IACnBA,EAAgB1B,EAAI2B,aAAe3B,EAAIzD,UAAYyD,EAAI4B,aAAc5B,OAGxE,CACD,IACI9D,EAAU,eADGxH,EAAQlM,QAAQ+J,GAA2BA,EAApBA,EAAI/D,MAAM,KAAK,IACb,qBAAuBwR,EAAIL,OACjEjD,EAAoBjE,EAAcuE,wBACtCN,SAAsEA,EAAkBU,UAAU,IAAK,eAAgB,CACnHE,UAAW,uBACXC,aAAcrB,IAElB,IAAIvE,EAAQ,IAAIvF,EAAc4N,EAAIL,OAAQK,EAAIJ,WAAY1D,GAE1D,GADAvE,EAAMmF,YAA8F,QAA/EjM,EAAgC,QAA1BxH,EAAK2W,EAAI2B,mBAAgC,IAAPtY,EAAgBA,EAAK2W,EAAIzD,gBAA6B,IAAP1L,EAAgBA,EAAKmP,EAAI4B,cACjIlN,EAAQ7L,WAAW0Q,GAInB,MAAM5B,EAHN4B,EAAe5B,MAO4C4B,EAAgB3K,IAE3FiR,EAAuBxZ,UAAUwM,KAAO,SAAUN,EAAKE,EAASiP,EAAiBnI,GAC7E7I,KAAKkC,QAAQ,MAAOL,OAAKjK,EAAWmK,EAASiP,EAAiBnI,IAElEsG,EAAuBxZ,UAAUyM,KAAO,SAAUP,EAAKQ,EAAQN,EAASiP,EAAiBnI,GACrF7I,KAAKkC,QAAQ,OAAQL,EAAKQ,EAAQN,EAASiP,EAAiBnI,IAEzDsG,EApIkB,GAsI7Btb,EAAQsb,uBAAyBA,EACjCtb,EAAQmO,YAAc,IAAImN,G,+BC3J1B,IACQ/H,EADJC,EAAarH,MAAQA,KAAKqH,YACtBD,EAAgB,SAAU/S,EAAGiT,GAI7B,OAHAF,EAAgB3S,OAAO8S,gBAClB,CAAEC,UAAW,cAAgBxP,OAAS,SAAU3D,EAAGiT,GAAKjT,EAAEmT,UAAYF,IACvE,SAAUjT,EAAGiT,GAAK,IAAK,IAAIzR,KAAKyR,EAAOA,EAAE1R,eAAeC,KAAIxB,EAAEwB,GAAKyR,EAAEzR,MACpDxB,EAAGiT,IAErB,SAAUjT,EAAGiT,GAEhB,SAASG,IAAOzH,KAAKjI,YAAc1D,EADnC+S,EAAc/S,EAAGiT,GAEjBjT,EAAEsB,UAAkB,OAAN2R,EAAa7S,OAAOY,OAAOiS,IAAMG,EAAG9R,UAAY2R,EAAE3R,UAAW,IAAI8R,KAGvF5T,EAAQsB,YAAa,EACrB,IAAIgc,EAAoB,EAAQ,IAC5BC,EAAmB,EAAQ,IAC3BpN,EAAU,EAAQ,GACtBnQ,EAAQwd,oBAAsB,IAAI3S,MAAM,6BACxC7K,EAAQyd,cAAgB,aACxB,IAAIC,EAAiB,SAAUnT,GACtB4F,EAAQlM,QAAQmB,SAASQ,MAI9BsW,WAAWwB,EAAgB,IAAKnT,GAH5BA,KAcRvK,EAAQ2d,sBAAwB,SAAUvE,EAAM3E,GAC5C,IAAImJ,EAAMxY,SAASuD,cAAc,OACjCiV,EAAI1V,UAAYkR,EACXjJ,EAAQlM,QAAQwQ,IACjBA,EAAIjO,SAAQ,SAAUqX,GAClB,IAAIpX,EAAQ,KACP0J,EAAQlM,QAAQ4Z,EAAW9X,KAEd,QADdU,EAAQmX,EAAIjI,cAAc,IAAMkI,EAAW9X,OAEvC6X,EAAI3D,YAAYxT,GAChBA,EAAQ,MAGhBiX,GAAe,YACXjX,EAAQrB,SAASuD,cAAc,UACzB5C,GAAK8X,EAAW9X,GACtBU,EAAMuU,aAAa,KAAM6C,EAAW9X,IACpCU,EAAMyP,YAAc2H,EAAWnJ,WAC/BtP,SAASQ,KAAK4U,YAAY/T,SAItC,IAAI6S,EA/BS,SAAUsE,GAEvB,IADA,IAAIE,EAAQ3Z,MAAMrC,UAAUic,MAAM1d,KAAKud,EAAI5D,UAClC3V,EAAQ,EAAGA,EAAQyZ,EAAMtb,OAAQ6B,IACtC,GAAIyZ,EAAMzZ,GAAO2Z,WAAaC,KAAKC,aAC/B,OAAOJ,EAAMzZ,GAGrB,OAAO,KAwBM8Z,CAAWP,GACxB,GAAe,OAAXtE,EACA,MAAMtZ,EAAQwd,oBAKlB,OAHAE,GAAe,WACXtY,SAASQ,KAAK4U,YAAYlB,MAEvBA,GAEX,IAAI8E,EAAsB,WACtB,SAASA,IACL,IAAI7R,EAAQJ,KACZA,KAAKkS,oBAAsB,SAAUC,EAAezL,GAChD,GAAIyL,EAAcC,OAAOve,EAAQyd,gBAAkB,EAAG,CAGlD,IAFA,IAAIe,EAAiBF,EACjBG,EAAcze,EAAQyd,cAAciB,KAAKJ,GACtB,OAAhBG,GAAsB,CACzB,IAAIE,EAAaF,EAAY,GAC7B,QAAmB1a,IAAf4a,EAA0B,CAC1B,IAAI7Z,EAAK6Z,EAAW1U,MAAM,oBAAqB2U,EAAS9Z,EAAG,GAAI+Z,EAAoB/Z,EAAG,GAClF3D,EAAQ0R,EAAS+L,EAAOE,QAExBN,EADArO,EAAQzM,SAASvC,KAAWgP,EAAQlM,QAAQ9C,EAAM2d,QACjCN,EAAeO,QAAQN,EAAY,GAAItd,EAAM2d,aAEnC/a,IAAtB8a,EACYL,EAAeO,QAAQN,EAAY,GAAII,GAGvCL,EAAeO,QAAQN,EAAY,GAAI,IAGhEA,EAAcze,EAAQyd,cAAciB,KAAKJ,GAE7C,OAAOE,EAEX,OAAOF,GAEXnS,KAAK6S,gBAAkB,SAAUC,EAAkBpM,EAAUqM,GACpCD,EAAiBhV,MAAM,KAC7BzD,SAAQ,SAAU2Y,GAC7B,IAAIra,EAAKqa,EAAelV,MAAM,KAAMmV,EAAWta,EAAG,GAAIua,EAAWva,EAAG,GACpE,QAAiBf,IAAbqb,QAAuCrb,IAAbsb,EAAwB,CAClD,IAAIC,EAAgBF,EAASN,OACzB3d,EAAQoL,EAAM8R,oBAAoBgB,EAAUxM,GAC5C0M,EAAgBL,EAAGM,aAAaF,GACpCJ,EAAGlE,aAAasE,EAAene,GAASoe,GAAiB,SAIrEpT,KAAKsT,uBAAyB,SAAUP,EAAIrM,GACxC,IAAI6M,EAAOR,EAAGS,QACd,IAAKxP,EAAQlM,QAAQyb,GAAO,CACxB,GAAI,eAAgBA,EAAM,CACtB,IAAIE,EAAeF,EAAiB,WAChCG,EAAetT,EAAM8R,oBAAoBuB,EAAc/M,GAC3DqM,EAAGtW,UAAYiX,GAAgBX,EAAGtW,UAEtC,GAAI,eAAgB8W,EAAM,CACtB,IAAII,EAAeJ,EAAiB,WAChCG,EAAetT,EAAM8R,oBAAoByB,EAAcjN,GAC3DqM,EAAGhX,UAAY2X,GAAgBX,EAAGhX,UAEtC,GAAI,eAAgBwX,EAAM,CACtB,IAAIT,EAAmBS,EAAiB,WACxCnT,EAAMyS,gBAAgBC,EAAkBpM,EAAUqM,MAI9D/S,KAAK4T,iBAAmB,SAAUb,EAAIrM,GAElC,GADAtG,EAAMkT,uBAAuBP,EAAIrM,GAC7BqM,EAAGlB,WAAaC,KAAKC,aAAc,CACnC,IAAIlE,OAA2BjW,IAAhBmb,EAAGlF,SAAyBkF,EAAGlF,SAAWkF,EAAGc,WAC5D7b,MAAMrC,UAAUic,MAAM1d,KAAK2Z,GAAUxT,SAAQ,SAAUyZ,GAC/CA,EAAMjC,WAAaC,KAAKC,cACxB3R,EAAMwT,iBAAiBE,EAAOpN,QAK9C1G,KAAK+T,aAAe,SAAUC,EAAUC,GACpC,GAAiB,OAAbD,EACA,MAAMngB,EAAQwd,oBAElB,IAAI6C,EAAOD,EAAcE,SAAS,KAAOF,EAAcG,OAAO,EAAGH,EAAc5d,OAAS,GAAK4d,EACzFI,EAASjU,EAAMkU,iBAAiBN,GACpChN,QAAQuN,IAAI,4BAA6BF,EAAQ,YAAaH,GAC9DG,EAAOha,SAAQ,SAAUJ,GACrB,IAAItB,EACAwD,EAA0C,QAAnCxD,EAAKsB,EAAKoZ,aAAa,cAA2B,IAAP1a,EAAgBA,EAAKsB,EAAKkC,IAC5E6H,EAAQzM,SAAS4E,IAAQA,EAAIqY,WAAW,OACxCva,EAAKkC,IAAM+X,EAAO/X,OAI9B6D,KAAKsU,iBAAmB,SAAUN,GAC9B,IAAIK,EAAS,GAIb,OAHiB,OAAbL,GACAhc,MAAMrC,UAAUic,MAAM1d,KAAK8f,EAASH,YAAYxZ,SAAQ,SAAUJ,GAAQ,OAAOmG,EAAMqU,eAAexa,EAAMoa,MAEzGA,GAYf,OATApC,EAAmBtc,UAAU8e,eAAiB,SAAUC,EAAUL,GAC9D,IAAIjU,EAAQJ,KACR0U,aAAoBC,iBACpBN,EAAOrT,KAAK0T,GAGZ1c,MAAMrC,UAAUic,MAAM1d,KAAKwgB,EAASb,YAAYxZ,SAAQ,SAAUua,GAAa,OAAOxU,EAAMqU,eAAeG,EAAWP,OAGvHpC,EAtGc,GAwGzBpe,EAAQoe,mBAAqBA,EAC7B,IAAI3E,EAAgB,SAAUnF,GAE1B,SAASmF,EAAaL,EAAMvD,GACxB,IAAItJ,EAAQ+H,EAAOjU,KAAK8L,OAASA,KACjCI,EAAMyU,KAAO,KACbzU,EAAM+M,OAAS,KACf/M,EAAM0U,YAAa,EACnB1U,EAAMsG,SAAW,KACjBtG,EAAMsJ,QAAU,CACZjB,eAAe,EACfD,iBAAiB,EACjBuM,oBAAoB,GAExB3U,EAAMuJ,UAAY,WAAc,OAAOvJ,EAAM0U,YAC7C,IAAIE,EAAc,CACdpb,GAAI,gBAAiByO,YAAa8I,EAA2B,QAAG7I,IAAK,CAAC,CAAEC,WAAY6I,EAA0B,QAAGxX,GAAI,kBAiCzH,MA/B2F,kBAA/E8P,aAAyC,EAASA,EAAQlB,mBAClEpI,EAAMsJ,QAAQlB,gBAAkBkB,EAAQlB,iBAEkD,kBAAlFkB,aAAyC,EAASA,EAAQqL,sBAClE3U,EAAMsJ,QAAQqL,mBAAqBrL,EAAQqL,oBAE0C,kBAA7ErL,aAAyC,EAASA,EAAQjB,iBAClErI,EAAMsJ,QAAQjB,cAAgBiB,EAAQjB,oBAEsC7Q,KAA3E8R,aAAyC,EAASA,EAAQuL,cAA8B7U,EAAMsJ,QAAQjB,gBACvGuM,EAActL,EAAQuL,aAE1B7U,EAAMyU,KAAO,KACbzU,EAAM+M,OAAS,MACqB,IAAhC/M,EAAMsJ,QAAQjB,gBACVzE,EAAQzM,SAASyd,EAAYpb,MAC7BwG,EAAMyU,KAAO7Q,EAAQrK,aAAaqb,EAAYpb,KAE/B,OAAfwG,EAAMyU,OACNzU,EAAMyU,KAAOhhB,EAAQ2d,sBAAsBwD,EAAY3M,YAAa2M,EAAY1M,OAGpFtE,EAAQzM,SAAS0V,EAAKrT,MACtBwG,EAAM+M,OAASnJ,EAAQrK,aAAasT,EAAKrT,KAExB,OAAjBwG,EAAM+M,SACN/M,EAAM+M,OAAStZ,EAAQ2d,sBAAsBvE,EAAK5E,YAAa4E,EAAK3E,MAExElI,EAAM8U,eAAiB9U,EAAM8U,eAAe3f,KAAK6K,GACjDA,EAAM+U,aAAe/U,EAAM+U,aAAa5f,KAAK6K,GAC7CA,EAAMgV,QACChV,EAuFX,OAtIAiH,EAAUiG,EAAcnF,GAiDxBmF,EAAa3X,UAAU0f,mBAAqB,SAAUtb,GAClDA,EAAQyK,iBAAiB,QAASxE,KAAKmV,cAAc,IAEzD7H,EAAa3X,UAAUyf,MAAQ,WAC3BpV,KAAK+M,QAETO,EAAa3X,UAAUkU,YAAc,SAAUnD,GAE3C,GADA1G,KAAK0G,SAAWA,EACI,OAAhB1G,KAAKmN,OACL,MAAMtZ,EAAQwd,oBAElBrR,KAAK4T,iBAAiB5T,KAAKmN,OAAQnN,KAAK0G,WAE5C4G,EAAa3X,UAAU2f,OAAS,WAC5B,GAAoB,OAAhBtV,KAAKmN,OACL,MAAMtZ,EAAQwd,oBAElB,IAAItX,EAAUiG,KAAKmN,OACfoI,EAAWvR,EAAQtK,cACnB8b,EAAWzb,EAAQ0b,aAAe,EACtC1b,EAAQO,MAAMob,MAAQH,EAAWC,GAAY,EAAI,GAAK,MAE1DlI,EAAa3X,UAAU8E,QAAU,WAC7B,IACI9B,EADAyH,EAAQJ,KAEZ,IAAIA,KAAK8U,WAAT,CAGA,GAAoB,OAAhB9U,KAAKmN,OACL,MAAMtZ,EAAQwd,qBAEiB,IAA/BrR,KAAK0J,QAAQjB,eAAwC,OAAdzI,KAAK6U,OAC5C7Q,EAAQtJ,YAAYsF,KAAK6U,OACe,IAApC7U,KAAK0J,QAAQqL,oBACb/U,KAAK6U,KAAKrQ,iBAAiB,QAASxE,KAAKmV,cAAc,KAG1B,IAAjCnV,KAAK0J,QAAQlB,iBACb1P,OAAO0L,iBAAiB,UAAWxE,KAAKkV,gBAAgB,GAE5DlR,EAAQtJ,YAAYsF,KAAKmN,QACpBnJ,EAAQlM,QAA+B,QAAtBa,EAAKqH,KAAKmN,cAA2B,IAAPxU,OAAgB,EAASA,EAAG8c,cAK5EzR,EAAQxJ,YAAYwF,KAAKmN,QACzBoE,GAAe,WACXvN,EAAQtJ,YAAY0F,EAAM+M,QAC1B/M,EAAMkV,OAAO/f,KAAK6K,GAClBA,EAAM0U,YAAa,OARvB9U,KAAK8U,YAAa,EAClB9U,KAAKsV,YAWbhI,EAAa3X,UAAUoX,KAAO,WAC1B,GAAoB,OAAhB/M,KAAKmN,OACL,MAAMtZ,EAAQwd,qBAEiB,IAA/BrR,KAAK0J,QAAQjB,eAAwC,OAAdzI,KAAK6U,OAC5C7Q,EAAQxJ,YAAYwF,KAAK6U,MACzB7U,KAAK6U,KAAKzH,oBAAoB,QAASpN,KAAKmV,cAAc,IAE9DnR,EAAQxJ,YAAYwF,KAAKmN,QACzBnN,KAAK8U,YAAa,EAClBhc,OAAOsU,oBAAoB,UAAWpN,KAAKkV,gBAAgB,IAE/D5H,EAAa3X,UAAU4T,WAAa,WAChC,OAAOvJ,KAAKmN,QAEhBG,EAAa3X,UAAUggB,QAAU,WAC7B,OAAO3V,KAAK6U,MAEhBvH,EAAa3X,UAAUwf,aAAe,SAAU7Z,GAG5C,OAFA0I,EAAQzI,UAAUD,GAClB0E,KAAK+M,QACE,GAEXO,EAAa3X,UAAUuf,eAAiB,SAAU5Z,GAC9C,IAAI2P,EAAU3P,EAAE2P,SAAW3P,EAAE0P,MACzB4K,EAAOta,EAAEsa,KACG,KAAZ3K,GAA2B,WAAT2K,GAGtB5V,KAAKmV,aAAa7Z,IAEfgS,EAvIQ,CAwIjB2E,GACFpe,EAAQyZ,aAAeA,G,+BCpTvB,IAAIhL,EAAatC,MAAQA,KAAKsC,WAAc,SAAUC,EAASC,EAAYC,EAAGC,GAE1E,OAAO,IAAKD,IAAMA,EAAItE,WAAU,SAAUC,EAASC,GAC/C,SAASsE,EAAU3N,GAAS,IAAM4N,EAAKF,EAAUG,KAAK7N,IAAW,MAAOsG,GAAK+C,EAAO/C,IACpF,SAASwH,EAAS9N,GAAS,IAAM4N,EAAKF,EAAiB,MAAE1N,IAAW,MAAOsG,GAAK+C,EAAO/C,IACvF,SAASsH,EAAKG,GAJlB,IAAe/N,EAIa+N,EAAOC,KAAO5E,EAAQ2E,EAAO/N,QAJ1CA,EAIyD+N,EAAO/N,MAJhDA,aAAiByN,EAAIzN,EAAQ,IAAIyN,GAAE,SAAUrE,GAAWA,EAAQpJ,OAITiO,KAAKN,EAAWG,GAClGF,GAAMF,EAAYA,EAAUhC,MAAM6B,EAASC,GAAc,KAAKK,YAGlEK,EAAelD,MAAQA,KAAKkD,aAAgB,SAAUX,EAAS9I,GAC/D,IAAsG0J,EAAGC,EAAGnO,EAAGoO,EAA3GC,EAAI,CAAEzH,MAAO,EAAG0H,KAAM,WAAa,GAAW,EAAPtO,EAAE,GAAQ,MAAMA,EAAE,GAAI,OAAOA,EAAE,IAAOuO,KAAM,GAAIC,IAAK,IAChG,OAAOJ,EAAI,CAAER,KAAMa,EAAK,GAAI,MAASA,EAAK,GAAI,OAAUA,EAAK,IAAwB,mBAAX5O,SAA0BuO,EAAEvO,OAAO6O,UAAY,WAAa,OAAO3D,OAAUqD,EACvJ,SAASK,EAAKlO,GAAK,OAAO,SAAUoO,GAAK,OACzC,SAAcC,GACV,GAAIV,EAAG,MAAM,IAAIW,UAAU,mCAC3B,KAAOR,GAAG,IACN,GAAIH,EAAI,EAAGC,IAAMnO,EAAY,EAAR4O,EAAG,GAAST,EAAU,OAAIS,EAAG,GAAKT,EAAS,SAAOnO,EAAImO,EAAU,SAAMnO,EAAEf,KAAKkP,GAAI,GAAKA,EAAEP,SAAW5N,EAAIA,EAAEf,KAAKkP,EAAGS,EAAG,KAAKb,KAAM,OAAO/N,EAE3J,OADImO,EAAI,EAAGnO,IAAG4O,EAAK,CAAS,EAARA,EAAG,GAAQ5O,EAAED,QACzB6O,EAAG,IACP,KAAK,EAAG,KAAK,EAAG5O,EAAI4O,EAAI,MACxB,KAAK,EAAc,OAAXP,EAAEzH,QAAgB,CAAE7G,MAAO6O,EAAG,GAAIb,MAAM,GAChD,KAAK,EAAGM,EAAEzH,QAASuH,EAAIS,EAAG,GAAIA,EAAK,CAAC,GAAI,SACxC,KAAK,EAAGA,EAAKP,EAAEG,IAAIM,MAAOT,EAAEE,KAAKO,MAAO,SACxC,QACI,KAAM9O,EAAIqO,EAAEE,MAAMvO,EAAIA,EAAEoB,OAAS,GAAKpB,EAAEA,EAAEoB,OAAS,KAAkB,IAAVwN,EAAG,IAAsB,IAAVA,EAAG,IAAW,CAAEP,EAAI,EAAG,SACjG,GAAc,IAAVO,EAAG,MAAc5O,GAAM4O,EAAG,GAAK5O,EAAE,IAAM4O,EAAG,GAAK5O,EAAE,IAAM,CAAEqO,EAAEzH,MAAQgI,EAAG,GAAI,MAC9E,GAAc,IAAVA,EAAG,IAAYP,EAAEzH,MAAQ5G,EAAE,GAAI,CAAEqO,EAAEzH,MAAQ5G,EAAE,GAAIA,EAAI4O,EAAI,MAC7D,GAAI5O,GAAKqO,EAAEzH,MAAQ5G,EAAE,GAAI,CAAEqO,EAAEzH,MAAQ5G,EAAE,GAAIqO,EAAEG,IAAIzC,KAAK6C,GAAK,MACvD5O,EAAE,IAAIqO,EAAEG,IAAIM,MAChBT,EAAEE,KAAKO,MAAO,SAEtBF,EAAKpK,EAAKvF,KAAKqO,EAASe,GAC1B,MAAOhI,GAAKuI,EAAK,CAAC,EAAGvI,GAAI8H,EAAI,EAAK,QAAUD,EAAIlO,EAAI,EACtD,GAAY,EAAR4O,EAAG,GAAQ,MAAMA,EAAG,GAAI,MAAO,CAAE7O,MAAO6O,EAAG,GAAKA,EAAG,QAAK,EAAQb,MAAM,GArB9BJ,CAAK,CAACpN,EAAGoO,OAwB7D/P,EAAQsB,YAAa,EACrB,IAAI4S,EAAgB,EAAQ,GACxB/D,EAAU,EAAQ,GAClB6R,EACA,WACI,IAAIzV,EAAQJ,KACZA,KAAKsG,WAAa,IAClBtG,KAAK8V,UAAY,KACjB9V,KAAK+V,qBAAuB,EAC5B/V,KAAKgW,iBAAmB,KACxBhW,KAAKiW,aAAe,GACpBjW,KAAKkW,aAAe,KACpBlW,KAAKmW,UAAY,KACjBnW,KAAKoW,WAAY,EACjBpW,KAAK6B,IAAM,iDACX7B,KAAKqG,UAAY,SAAUgQ,EAAaC,EAAeC,GACnDnW,EAAMkG,WAAa+P,EACfrS,EAAQ7L,WAAWW,OAAO0L,mBAAqB1L,OAAOwL,aAAeA,YAAYkS,MACjFpW,EAAM8V,aAAeI,EACrBlW,EAAM+V,UAAYI,IAG1BvW,KAAK0M,UAAY,SAAU+J,EAAWvW,EAAWwW,GAC7C,GAAwC,OAApC7iB,EAAQuS,WAAW8P,cAGbriB,EAAQuS,WAAWoH,YAAYiJ,GAApC,CAGgC,OAAjC5iB,EAAQuS,WAAW0P,YACnBjiB,EAAQuS,WAAW0P,UAAYjiB,EAAQuS,WAAWuQ,aAClD9iB,EAAQuS,WAAW4P,kBAAmB,IAAIzf,MAAOC,WAErD,IAAIogB,EAAiB,CACjBC,GAAIhjB,EAAQuS,WAAW0P,UAAY,IAAMjiB,EAAQuS,WAAW6P,aAAa5f,OACzEygB,UAAW5W,EACX6W,YAAa7W,EACbmC,OAAQqU,GAAe,GACvBM,WAAW,IAAIzgB,MAAOC,WAE1BogB,EAAevU,OAAO6T,aAAeriB,EAAQuS,WAAW8P,aACxDU,EAAevU,OAAO8T,UAAYtiB,EAAQuS,WAAW+P,UACrDtiB,EAAQuS,WAAW6P,aAAajV,KAAK4V,IACjC/iB,EAAQuS,WAAWgQ,WAAaviB,EAAQuS,WAAW6P,aAAa5f,OAAS,KACzExC,EAAQuS,WAAW6Q,UAG3BjX,KAAKpF,MAAQ,SAAU6b,EAAWvW,EAAWwW,GAAe,OAAOpU,EAAUlC,OAAO,OAAQ,GAAQ,WAChG,OAAO8C,EAAYlD,MAAM,SAAUrH,GAE/B,OADAqH,KAAK0M,UAAU+J,EAAWvW,EAAWwW,GAC9B,CAAC,UAGhB1W,KAAKwN,YAAc,SAAUE,GACzB,OAAO3F,EAAcyF,YAAYpN,EAAMkG,WAAYoH,IAEvD1N,KAAK2W,WAAa,WACd,OAAO7Z,KAAKC,MAAsB,OAAhBD,KAAKE,WAE3BgD,KAAKkX,UAAY,WACM5S,YAAYkS,MACZ3iB,EAAQuS,WAAW2P,qBAAuB,KAG7DliB,EAAQuS,WAAW6Q,SAEvBjX,KAAKmX,YAAc,WACf3Y,YAAY4B,EAAM8W,UAAW,MAC7Bpe,OAAO0L,iBAAiB,gBAAgB,gBACA,IAAxB3Q,EAAkB,YAC1BA,EAAQuS,WAAW6Q,WAExB,IAEPjX,KAAKiX,MAAQ,WACT,GAAwC,OAApCpjB,EAAQuS,WAAW8P,eAGvBriB,EAAQuS,WAAW2P,qBAAuBzR,YAAYkS,MACjB,OAAjC3iB,EAAQuS,WAAW0P,WAAvB,CAGK,GAA+C,IAA3CjiB,EAAQuS,WAAW6P,aAAa5f,OAAc,CACnD,IAAI+gB,EAAapT,EAAQ1N,iBACrB+L,EAAS,QAAUkK,KAAKoE,UAAU9c,EAAQuS,WAAW6P,cAClD,oBAAsBnF,mBAAmBjd,EAAQuS,WAAW4P,kBAAoB,mBAAqBlF,mBAAmBsG,GAI/H,GAHAvjB,EAAQuS,WAAW6P,aAAa5b,SAAQ,SAAUO,GAC9CA,EAAMyc,KAAOD,EAAaxc,EAAMoc,aAEhCnjB,EAAQuS,WAAWgQ,UACLhR,UAAUkS,WAAWzjB,EAAQuS,WAAWvE,IAAKQ,KAEvDxO,EAAQuS,WAAWgQ,WAAY,EAC/BviB,EAAQuS,WAAW+Q,mBAGtB,CACD,IAAIjV,EAAU,IAAIqN,eAClBrN,EAAQsN,KAAK,OAAQ3b,EAAQuS,WAAWvE,KAAK,GAC7CK,EAAQwO,iBAAiB,eAAgB,qCACzCxO,EAAQC,KAAKE,IAGrBxO,EAAQuS,WAAW6P,aAAe,GAClCpiB,EAAQuS,WAAW0P,UAAY,OAEnC9V,KAAKoW,UAAYpS,EAAQ7L,WAAWiN,UAAUkS,YAC1Cxe,OAAOwL,aAAeA,YAAYkS,MAClCxW,KAAK+V,qBAAuBzR,YAAYkS,MACnCxW,KAAKoW,WACNpW,KAAKmX,gBAMrBtjB,EAAQuS,WAAa,IAAIyP,OACQ,IAAtB/c,OAAOsN,aACdtN,OAAOsN,WAAavS,EAAQuS,YAEhCvS,EAAQkT,YAAc,SAAUyE,EAAS3J,GACrChO,EAAQuS,WAAWsG,UAAU,IAAK,kBAAmB,CAAE6K,oBAAqB/L,EAASgM,cAAe3V,GAAO/I,OAAOsE,SAASqa","file":"newAgent.es3.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 182);\n","\"use strict\";\r\nexports.__esModule = true;\r\nvar constants_1 = require(\"./constants\");\r\nexports.formatValue = function (val, desiredLen) {\r\n if (desiredLen === void 0) { desiredLen = 2; }\r\n var retVal = val.toString();\r\n while (retVal.length < desiredLen) {\r\n retVal = '0' + retVal;\r\n }\r\n return retVal;\r\n};\r\nexports.getCurrentTime = function () {\r\n var myCurrentTimestamp = new Date();\r\n return myCurrentTimestamp.getTime();\r\n};\r\nexports.getTimeString = function () {\r\n var today = new Date();\r\n var hours = exports.formatValue(today.getHours());\r\n var mins = exports.formatValue(today.getMinutes());\r\n var secs = exports.formatValue(today.getSeconds());\r\n var ms = exports.formatValue(today.getMilliseconds(), 3);\r\n return hours + \":\" + mins + \":\" + secs + \".\" + ms;\r\n};\r\nexports.getDateTimeString = function () {\r\n var today = new Date();\r\n var hours = exports.formatValue(today.getHours());\r\n var mins = exports.formatValue(today.getMinutes());\r\n var secs = exports.formatValue(today.getSeconds());\r\n var day = exports.formatValue(today.getDate());\r\n var month = exports.formatValue(today.getMonth() + 1);\r\n var year = today.getFullYear();\r\n return month + \"/\" + day + \"/\" + year + \" \" + hours + \":\" + mins + \":\" + secs;\r\n};\r\nexports.isString = function (object) {\r\n return typeof object === 'string';\r\n};\r\nexports.compareIgnoreCase = function (stringValue, matches) {\r\n if (exports.isString(stringValue) && exports.isString(matches)) {\r\n return stringValue.localeCompare(matches, undefined, {\r\n sensitivity: 'accent'\r\n }) === 0;\r\n }\r\n else if (!exports.isEmpty(matches) && matches.constructor === Array) {\r\n var arrayResult = false;\r\n for (var count = 0; count < matches.length; count++) {\r\n var localResult = exports.compareIgnoreCase(stringValue, matches[count]);\r\n if (localResult) {\r\n arrayResult = true;\r\n break;\r\n }\r\n }\r\n return arrayResult;\r\n }\r\n else {\r\n return stringValue !== matches;\r\n }\r\n};\r\nexports.isFunction = function (pointer) {\r\n return typeof pointer === 'function';\r\n};\r\nexports.isEmpty = function (object) {\r\n if (object === undefined || object === null || object === '' || object === 0 || object === false) {\r\n return true;\r\n }\r\n return false;\r\n};\r\nvar whiteSpaceValidationEx = /^\\s*$/;\r\nvar nativeCodeValidationEx = /\\{\\s*\\[native code\\]\\s*\\}/;\r\nexports.isWhitespace = function (s) {\r\n return whiteSpaceValidationEx.test(s);\r\n};\r\nexports.isMethodNative = function (pointer) {\r\n var result = exports.isFunction(pointer) ? (nativeCodeValidationEx).test('' + pointer) : false;\r\n return result;\r\n};\r\nexports.getViewPort = function () {\r\n var _a;\r\n var viewPortWidth = 0;\r\n var viewPortHeight = 0;\r\n if (typeof window.innerWidth !== 'undefined') {\r\n viewPortWidth = window.innerWidth;\r\n viewPortHeight = window.innerHeight;\r\n }\r\n else if (!exports.isEmpty((_a = document.documentElement) === null || _a === void 0 ? void 0 : _a.clientWidth)) {\r\n viewPortWidth = document.documentElement.clientWidth;\r\n viewPortHeight = document.documentElement.clientHeight;\r\n }\r\n else {\r\n viewPortWidth = document.getElementsByTagName('body')[0].clientWidth;\r\n viewPortHeight = document.getElementsByTagName('body')[0].clientHeight;\r\n }\r\n return {\r\n width: viewPortWidth,\r\n height: viewPortHeight\r\n };\r\n};\r\nexports.getWinHeight = function () {\r\n return window.innerHeight || document.documentElement.clientHeight || document.body.clientHeight;\r\n};\r\nexports.getWinWidth = function () {\r\n return window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth;\r\n};\r\nexports.getElementAs = function (id) {\r\n return document.getElementById(id);\r\n};\r\nexports.setClass = function (element, className) {\r\n var elem = exports.isString(element) ? exports.getElementAs(element) : element;\r\n if (elem !== null) {\r\n elem.className = className;\r\n }\r\n};\r\nexports.setCss = function (elem, attrs) {\r\n var element = exports.isString(elem) ? exports.getElementAs(elem) : elem;\r\n if (element !== null) {\r\n Object.keys(attrs).forEach(function (key) {\r\n element.style.setProperty(key, attrs[key]);\r\n });\r\n }\r\n};\r\nexports.hideElement = function (elem) {\r\n exports.setCss(elem, { display: 'none' });\r\n};\r\nexports.showElement = function (elem) {\r\n exports.setCss(elem, { display: 'block' });\r\n};\r\nexports.fireEvent = function (element, event) {\r\n try {\r\n var evt = null;\r\n if (exports.isFunction(document.createEvent)) {\r\n evt = document.createEvent('MouseEvent');\r\n evt.initMouseEvent(event, true, true, window, 0, 0, 0, 0, 0, false, false, false, false, 0, null);\r\n }\r\n else {\r\n evt = new MouseEvent(event, {\r\n button: 0,\r\n bubbles: true,\r\n view: window,\r\n cancelable: true\r\n });\r\n }\r\n return !element.dispatchEvent(evt);\r\n }\r\n catch (e) {\r\n return false;\r\n }\r\n};\r\nexports.stopEvent = function (e) {\r\n var evt = !exports.isEmpty(e) ? e : window.event;\r\n if (!exports.isEmpty(evt)) {\r\n evt.returnValue = false;\r\n evt.cancelBubble = true;\r\n if (exports.isFunction(evt.stopPropagation)) {\r\n evt.stopPropagation();\r\n }\r\n if (exports.isFunction(evt.preventDefault)) {\r\n evt.preventDefault();\r\n }\r\n }\r\n};\r\nexports.displayText = function (label, labelText) {\r\n var element = exports.isString(label) ? exports.getElementAs(label) : label;\r\n if (element !== null) {\r\n element.innerHTML = labelText !== null && labelText !== void 0 ? labelText : '';\r\n }\r\n};\r\nexports.preloadImageBySource = function (source) {\r\n var image = new Image();\r\n image.src = source;\r\n};\r\nexports.preloadImage = function (elem) {\r\n return exports.preloadImageBySource(elem.src);\r\n};\r\nvar encoder = null;\r\nexports.htmlEncode = function (text) {\r\n if (encoder === null) {\r\n encoder = document.createElement('span');\r\n }\r\n encoder.innerText = text;\r\n return encoder.innerHTML;\r\n};\r\nexports.htmlDecode = function (text) {\r\n if (encoder === null) {\r\n encoder = document.createElement('span');\r\n }\r\n encoder.innerHTML = text;\r\n return encoder.innerText;\r\n};\r\nexports.randomInRange = function (from, to) { return Math.floor(Math.random() * (to - from + 1) + from); };\r\nexports.getTopFrame = function () {\r\n try {\r\n try {\r\n var topdomain = top === null || top === void 0 ? void 0 : top.location.hostname;\r\n if (exports.isString(topdomain)) {\r\n return top;\r\n }\r\n }\r\n catch (e) { }\r\n var curWindow = self;\r\n var windowCnt = 0;\r\n while (curWindow != curWindow.parent && windowCnt++ < 32) {\r\n try {\r\n var parentdomain = curWindow.parent.location.hostname;\r\n if (exports.isString(parentdomain)) {\r\n curWindow = curWindow.parent;\r\n continue;\r\n }\r\n }\r\n catch (e) { }\r\n return curWindow;\r\n }\r\n return curWindow;\r\n }\r\n catch (e) {\r\n return self;\r\n }\r\n};\r\nexports.doesObjectExist = function (objectName) {\r\n if (exports.isString(objectName)) {\r\n var objectNameParts = objectName.split('.');\r\n if (objectNameParts.length > 0) {\r\n var conditionFullfilled = true;\r\n var context = window;\r\n for (var i = 0; i < objectNameParts.length; i++) {\r\n if (context !== null &&\r\n (objectNameParts[i] in context &&\r\n typeof (context[objectNameParts[i]]) !== 'undefined')) {\r\n context = context[objectNameParts[i]];\r\n }\r\n else {\r\n conditionFullfilled = false;\r\n break;\r\n }\r\n }\r\n return conditionFullfilled;\r\n }\r\n }\r\n return false;\r\n};\r\nexports.awaitObject = function (objectName, timeout) {\r\n return new Promise(function (resolve, reject) {\r\n if (exports.doesObjectExist(objectName)) {\r\n resolve();\r\n return;\r\n }\r\n var startTime = exports.getCurrentTime();\r\n var objectWaitInterval = setInterval(function () {\r\n if (exports.doesObjectExist(objectName)) {\r\n clearInterval(objectWaitInterval);\r\n resolve();\r\n return;\r\n }\r\n else if (timeout !== undefined) {\r\n var currentTime = exports.getCurrentTime();\r\n if (currentTime - startTime > timeout) {\r\n clearInterval(objectWaitInterval);\r\n reject(new Error(constants_1.ERROR_TIMEOUT));\r\n return;\r\n }\r\n }\r\n }, 111);\r\n });\r\n};\r\n","\"use strict\";\r\nexports.__esModule = true;\r\nexports.STORAGE_IE_TIME_KEY = 'ie11_time';\r\nexports.STORAGE_IE_TIME_STRING = \";\" + exports.STORAGE_IE_TIME_KEY + \"=\";\r\nexports.STORAGE_EVENT_CMD = 'll.event';\r\nexports.STORAGE_RESPONSE_CMD = 'll.response';\r\nexports.STORAGE_READY_CMD = 'ready';\r\nexports.ERROR_STORAGE_UNAVAILABLE = 'ERR_STORAGE_UNAVAILABLE';\r\nexports.ERROR_ENVIRONMENT = 'ERR_UNSUPPORTED_ENV';\r\nexports.ERROR_PROMISE_TIMEOUT = 'ERR_PROMISE_TIMEOUT';\r\nexports.ERROR_REQUEST_TIMEOUT = 'ERR_REQUEST_TIMEOUT';\r\nexports.ERROR_TIMEOUT = 'ERR_TIMEOUT';\r\nexports.ERROR_NO_ARGS = 'ERR_MISSING_ARGS';\r\nexports.ERROR_CONTEXT_LOCKED = 'ERR_ALREADY_LOCKED';\r\nexports.ERROR_NO_STORAGE_MANAGER = 'ERR_STORAGE_MANAGER_MISSING';\r\nexports.ERROR_OPERATION_FAILED = 'ERR_FAILED';\r\nexports.ERROR_COMPONENT_MISSING = 'REQUIRED_COMPONENT_MISSING';\r\nexports.ERROR_NETWORK_TIMEOUT = 'ERROR_NETWORK_TIMEOUT';\r\nexports.INSTANCE_CONFIG_ERROR = 'ERROR_INSTANCE_NOT_CONFIGURED';\r\nexports.ERROR_REVERSE_ALREADY_ACTIVE = 'ERR_REVERSE_ALREADY_ACTIVE';\r\nexports.ERROR_REVERSE_VIEW_INACTIVE = 'ERR_VIEW_INACTIVE';\r\nexports.SESSION_IN_PROGRESS = 'IN_PROGRESS';\r\n","\"use strict\";\r\nexports.__esModule = true;\r\nvar EventBus = (function () {\r\n function EventBus() {\r\n this.eventRegistry = {};\r\n }\r\n EventBus.prototype.fireEvent = function (eventName) {\r\n var _this = this;\r\n var args = [];\r\n for (var _i = 1; _i < arguments.length; _i++) {\r\n args[_i - 1] = arguments[_i];\r\n }\r\n var _a, _b;\r\n if (this.eventRegistry[eventName] === undefined) {\r\n return;\r\n }\r\n (_a = this.eventRegistry[eventName]) === null || _a === void 0 ? void 0 : _a.forEach(function (x) {\r\n x.method.apply(null, args);\r\n });\r\n (_b = this.eventRegistry[eventName]) === null || _b === void 0 ? void 0 : _b.forEach(function (x, i) {\r\n var _a;\r\n if (x.singleUse) {\r\n (_a = _this.eventRegistry[eventName]) === null || _a === void 0 ? void 0 : _a.splice(i, 1);\r\n }\r\n });\r\n };\r\n EventBus.prototype.listen = function (event, fn) {\r\n var _this = this;\r\n if (event instanceof Array) {\r\n event.forEach(function (eventName) { return _this.listen(eventName, fn); });\r\n }\r\n else {\r\n if (this.eventRegistry[event] === undefined) {\r\n this.eventRegistry[event] = [{ method: fn, singleUse: false }];\r\n }\r\n else if (this.eventRegistry[event].indexOf({ method: fn, singleUse: false }) === -1) {\r\n this.eventRegistry[event].push({ method: fn, singleUse: false });\r\n }\r\n }\r\n };\r\n EventBus.prototype.wait = function (event, fn) {\r\n var _this = this;\r\n if (event instanceof Array) {\r\n event.forEach(function (eventName) { return _this.wait(eventName, fn); });\r\n }\r\n else {\r\n if (this.eventRegistry[event] === undefined) {\r\n this.eventRegistry[event] = [{ method: fn, singleUse: true }];\r\n }\r\n else if (this.eventRegistry[event].indexOf({ method: fn, singleUse: true }) === -1) {\r\n this.eventRegistry[event].push({ method: fn, singleUse: true });\r\n }\r\n }\r\n };\r\n EventBus.prototype.unsubscribe = function (eventName, fn) {\r\n var _this = this;\r\n var _a;\r\n (_a = this.eventRegistry[eventName]) === null || _a === void 0 ? void 0 : _a.forEach(function (x, i) {\r\n var _a;\r\n if (x.method === fn) {\r\n (_a = _this.eventRegistry[eventName]) === null || _a === void 0 ? void 0 : _a.splice(i, 1);\r\n }\r\n });\r\n };\r\n return EventBus;\r\n}());\r\nexports.EventBus = EventBus;\r\n","\"use strict\";\r\nexports.__esModule = true;\r\nexports.MonitoringEndPoint = '/webinterfaces/integrated/public/log_data.aspx';\r\nexports.CobrowseAuthEndPoint = '/cobrowse/auth';\r\nexports.CobrowseSessionEndPoint = '/cobrowse/session';\r\nexports.CobrowseJoinEndPoint = '/cobrowse/session/join';\r\nexports.CobrowseACBShellEndPoint = '/cobrowse/acb';\r\n","\"use strict\";\r\nexports.__esModule = true;\r\nvar ajaxrequest_legacy_1 = require(\"./ajaxrequest.legacy\");\r\nvar ajaxrequest_legacy_2 = require(\"./ajaxrequest.legacy\");\r\nexports.AjaxException = ajaxrequest_legacy_2.AjaxException;\r\nvar AjaxRequestClass = (function () {\r\n function AjaxRequestClass() {\r\n }\r\n AjaxRequestClass.prototype.awaitRawResponse = function (method, url, bodyParams, headers, timeout) {\r\n return new Promise(function (resolve, reject) {\r\n ajaxrequest_legacy_1.HttpRequest.requestRawXHR(method, url, bodyParams, headers, resolve, reject);\r\n });\r\n };\r\n AjaxRequestClass.prototype.request = function (method, url, bodyParams, headers, timeout) {\r\n return new Promise(function (resolve, reject) {\r\n ajaxrequest_legacy_1.HttpRequest.request(method, url, bodyParams, headers, resolve, reject);\r\n });\r\n };\r\n AjaxRequestClass.prototype.send = function (url, headers) {\r\n return new Promise(function (resolve, reject) {\r\n ajaxrequest_legacy_1.HttpRequest.send(url, headers, resolve, reject);\r\n });\r\n };\r\n AjaxRequestClass.prototype.post = function (url, params, headers) {\r\n return new Promise(function (resolve, reject) {\r\n ajaxrequest_legacy_1.HttpRequest.post(url, params, headers, resolve, reject);\r\n });\r\n };\r\n return AjaxRequestClass;\r\n}());\r\nexports.AjaxRequestClass = AjaxRequestClass;\r\nexports.HttpRequest = new AjaxRequestClass();\r\n","\"use strict\";\r\nvar __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n};\r\nvar __generator = (this && this.__generator) || function (thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n};\r\nexports.__esModule = true;\r\nvar utils_1 = require(\"cobrowse-common/modules/utils\");\r\nvar formHelpers_1 = require(\"cobrowse-common/modules/formHelpers\");\r\nvar loginControl_1 = require(\"cobrowse-common/components/loginControl\");\r\nvar monitoring_1 = require(\"../components/monitoring\");\r\nexports.isHTML5Supported = function () {\r\n try {\r\n var validationPassed = 'postMessage' in window\r\n && 'addEventListener' in window\r\n && 'JSON' in window\r\n && 'history' in window\r\n && 'pushState' in window.history\r\n && 'keys' in Object\r\n && 'forEach' in Array.prototype\r\n && 'indexOf' in Array.prototype\r\n && 'performance' in window\r\n && 'now' in window.performance;\r\n if (!validationPassed) {\r\n return false;\r\n }\r\n var elem = document.createElement('canvas');\r\n return utils_1.isFunction(elem === null || elem === void 0 ? void 0 : elem.getContext) && !utils_1.isEmpty(elem.getContext('2d'));\r\n }\r\n catch (e) {\r\n return false;\r\n }\r\n};\r\nwindow.addEventListener('load', function () { return __awaiter(void 0, void 0, void 0, function () {\r\n var form, ratio, dynamicParams, sizeX, sizeY, zeroWindowSize, _a, ex_1;\r\n var _b, _c;\r\n return __generator(this, function (_d) {\r\n switch (_d.label) {\r\n case 0:\r\n form = utils_1.getElementAs('t');\r\n ratio = (_b = window.devicePixelRatio) !== null && _b !== void 0 ? _b : 1;\r\n dynamicParams = {\r\n ll_user_agent: navigator.userAgent,\r\n ll_screen_width: \"\" + screen.width * ratio,\r\n ll_screen_height: \"\" + screen.height * ratio,\r\n ll_java_enabled: \"\" + navigator.javaEnabled(),\r\n ll_cookies_enabled: \"\" + navigator.cookieEnabled\r\n };\r\n sizeX = utils_1.getWinWidth();\r\n sizeY = utils_1.getWinHeight();\r\n zeroWindowSize = (sizeX === 0 && sizeY === 0);\r\n if (exports.isHTML5Supported()) {\r\n dynamicParams.ll_html5_enabled = 'yes';\r\n }\r\n if (zeroWindowSize) {\r\n dynamicParams.ll_zero_size = zeroWindowSize.toString();\r\n }\r\n if ((_c = document) === null || _c === void 0 ? void 0 : _c.documentMode) {\r\n dynamicParams.ll_doc_mode = document.documentMode.toString();\r\n }\r\n if (utils_1.isString(document === null || document === void 0 ? void 0 : document.compatMode)) {\r\n dynamicParams.ll_comp_mode = document.compatMode;\r\n }\r\n if (!loginRequired) return [3, 4];\r\n monitoring_1.Monitoring.configure(debugLevel, requestParams.sessionID);\r\n _d.label = 1;\r\n case 1:\r\n _d.trys.push([1, 3, , 4]);\r\n loginControl_1.LoginControl.configure({\r\n uiConfig: uiMessages\r\n });\r\n _a = dynamicParams;\r\n return [4, loginControl_1.LoginControl.authenticate(\"agent\", luserRequest)];\r\n case 2:\r\n _a.jwt = _d.sent();\r\n return [3, 4];\r\n case 3:\r\n ex_1 = _d.sent();\r\n monitoring_1.clientError(\"Authentication failed with \" + ex_1);\r\n console.error(ex_1);\r\n throw ex_1;\r\n case 4:\r\n formHelpers_1.pushJSONToForm(form, dynamicParams);\r\n form.submit();\r\n return [2];\r\n }\r\n });\r\n}); }, false);\r\n","\"use strict\";\r\nvar __extends = (this && this.__extends) || (function () {\r\n var extendStatics = function (d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n };\r\n return function (d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n };\r\n})();\r\nvar __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n};\r\nvar __generator = (this && this.__generator) || function (thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n};\r\nexports.__esModule = true;\r\nvar login_template_html_1 = require(\"./html/login-template.html\");\r\nvar login_template_css_1 = require(\"./html/css/login-template.css\");\r\nvar utils_1 = require(\"../modules/utils\");\r\nvar ajaxrequest_1 = require(\"./ajaxrequest\");\r\nvar promiseDialog_1 = require(\"./promiseDialog\");\r\nvar eventBus_1 = require(\"./eventBus\");\r\nvar IMonitoring_1 = require(\"../interfaces/IMonitoring\");\r\nvar endPoints_1 = require(\"../modules/endPoints\");\r\nvar emailValidationRegEx = /^(([^<>()[\\]\\\\.,;:\\s@\\\"]+(\\.[^<>()[\\]\\\\.,;:\\s@\\\"]+)*)|(\\\".+\\\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/;\r\nvar LoginControlClass = (function (_super) {\r\n __extends(LoginControlClass, _super);\r\n function LoginControlClass() {\r\n var _a;\r\n var _this = _super.call(this, { htmlContent: login_template_html_1[\"default\"], css: [{\r\n id: 'loginTemplateCss',\r\n cssContent: login_template_css_1[\"default\"]\r\n }] }, {\r\n dismissOnEscape: false,\r\n enableOverlay: false,\r\n rejectOnEscape: false\r\n }) || this;\r\n _this.eventBus = new eventBus_1.EventBus();\r\n _this.successCallback = null;\r\n _this.rejectCallback = null;\r\n _this.enableForgotPassword = false;\r\n _this.enableChangePassword = false;\r\n _this.mainServer = null;\r\n _this.userRole = null;\r\n _this.sessionID = null;\r\n _this.lastErrorStatus = null;\r\n _this.isEmail = function (email) { return emailValidationRegEx.test(email); };\r\n _this.onContinue = _this.onContinue.bind(_this);\r\n var loginButton = (_a = _this.getContent()) === null || _a === void 0 ? void 0 : _a.querySelector('#btnContinue');\r\n if (loginButton !== null) {\r\n loginButton.onclick = _this.onContinue;\r\n }\r\n return _this;\r\n }\r\n LoginControlClass.prototype.configure = function (options) {\r\n var _a;\r\n if (this.isVisible()) {\r\n this.reportRejectOrThrow(new Error('ERR_ALREADY_ACTIVE'));\r\n return;\r\n }\r\n this.configureUI(options.uiConfig);\r\n if (typeof (options === null || options === void 0 ? void 0 : options.enableChangePassword) === 'boolean') {\r\n this.enableChangePassword = options.enableChangePassword;\r\n }\r\n if (typeof (options === null || options === void 0 ? void 0 : options.enableForgotPassword) === 'boolean') {\r\n this.enableForgotPassword = options.enableForgotPassword;\r\n }\r\n if (typeof (options === null || options === void 0 ? void 0 : options.mainServer) === 'string') {\r\n this.mainServer = options.mainServer;\r\n }\r\n if (typeof options.cssContent === 'string') {\r\n var style = document.createElement('style');\r\n style.type = 'text/css';\r\n style.textContent = options.cssContent;\r\n (_a = this.getContent()) === null || _a === void 0 ? void 0 : _a.insertAdjacentHTML('afterbegin', style.outerHTML);\r\n }\r\n };\r\n LoginControlClass.prototype.authenticate = function (role, lsessionID) {\r\n this.setRole(role);\r\n if (utils_1.isString(lsessionID)) {\r\n this.setSessionID(lsessionID);\r\n }\r\n return this.displayAsync();\r\n };\r\n LoginControlClass.prototype.displayAsync = function () {\r\n var _this = this;\r\n var _a, _b, _c;\r\n if (this.dialogPromise !== null) {\r\n return this.dialogPromise;\r\n }\r\n if (this.userRole === null) {\r\n return Promise.reject(new Error('ERR_NOT_CONFIGURED'));\r\n }\r\n var forgotPasswordRow = (_a = this.getContent()) === null || _a === void 0 ? void 0 : _a.querySelector('.forgotPassword');\r\n if (!utils_1.isEmpty(forgotPasswordRow)) {\r\n if (this.enableForgotPassword) {\r\n utils_1.showElement(forgotPasswordRow);\r\n var forgotPassword = forgotPasswordRow.querySelector('a');\r\n if (!utils_1.isEmpty(forgotPassword)) {\r\n forgotPassword.onclick = function (e) {\r\n utils_1.stopEvent(e);\r\n _this.eventBus.fireEvent(3);\r\n return false;\r\n };\r\n }\r\n }\r\n else {\r\n utils_1.hideElement(forgotPasswordRow);\r\n }\r\n }\r\n var changePasswordRow = (_b = this.getContent()) === null || _b === void 0 ? void 0 : _b.querySelector('.changePassword');\r\n if (!utils_1.isEmpty(changePasswordRow)) {\r\n if (this.enableChangePassword) {\r\n utils_1.showElement(changePasswordRow);\r\n var changePassword = changePasswordRow.querySelector('a');\r\n if (!utils_1.isEmpty(changePassword)) {\r\n changePassword.onclick = function (e) {\r\n utils_1.stopEvent(e);\r\n _this.eventBus.fireEvent(4);\r\n return false;\r\n };\r\n }\r\n }\r\n else {\r\n utils_1.hideElement(changePasswordRow);\r\n }\r\n }\r\n var promise = _super.prototype.displayAsync.call(this);\r\n var login = (_c = this.getContent()) === null || _c === void 0 ? void 0 : _c.querySelector('#login');\r\n if (utils_1.isEmpty(login === null || login === void 0 ? void 0 : login.value)) {\r\n this.doFocus(login);\r\n }\r\n return promise;\r\n };\r\n LoginControlClass.prototype.keyHandler = function (e) {\r\n if (!_super.prototype.keyHandler.call(this, e)) {\r\n return false;\r\n }\r\n var keycode = e.which ? e.which : e.keyCode;\r\n if (keycode === 13) {\r\n var element = this.getContinueButton();\r\n if (utils_1.isFunction(element.click)) {\r\n element.click();\r\n }\r\n else {\r\n utils_1.fireEvent(element, 'click');\r\n }\r\n utils_1.stopEvent(e);\r\n return false;\r\n }\r\n return true;\r\n };\r\n LoginControlClass.prototype.doFocus = function (element) {\r\n if (!utils_1.isEmpty(element)) {\r\n try {\r\n element.focus();\r\n }\r\n catch (e) { }\r\n }\r\n };\r\n LoginControlClass.prototype.setRole = function (role) {\r\n this.userRole = role;\r\n };\r\n LoginControlClass.prototype.setSessionID = function (sessionID) {\r\n this.sessionID = sessionID;\r\n };\r\n LoginControlClass.prototype.getContinueButton = function () {\r\n var _a;\r\n var loginButton = (_a = this.getContent()) === null || _a === void 0 ? void 0 : _a.querySelector('#btnContinue');\r\n return loginButton;\r\n };\r\n LoginControlClass.prototype.getMessageText = function (messageID) {\r\n var message = this.uiConfig === null ? 'ERR_NOT_CONFIGURED' : this.uiConfig[messageID];\r\n return message;\r\n };\r\n LoginControlClass.prototype.displayError = function (messageID) {\r\n var _a;\r\n var message = this.getMessageText(messageID);\r\n var element = (_a = this.getContent()) === null || _a === void 0 ? void 0 : _a.querySelector('#ErrorCode');\r\n if (!utils_1.isEmpty(element)) {\r\n utils_1.displayText(element, message);\r\n }\r\n };\r\n LoginControlClass.prototype.onContinue = function (evt) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var loginForm, login, psw, email, password, endPoint, response, headers, err_1, apiError, monitoringContext, parsedResponse, messageID;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n utils_1.stopEvent(evt);\r\n loginForm = this.getContent();\r\n login = loginForm === null || loginForm === void 0 ? void 0 : loginForm.querySelector('#login');\r\n psw = loginForm === null || loginForm === void 0 ? void 0 : loginForm.querySelector('#password');\r\n if (utils_1.isEmpty(login) || utils_1.isEmpty(psw)) {\r\n this.reportRejectOrThrow(new Error('ERR_INVALID_CONTENT'));\r\n return [2];\r\n }\r\n email = login.value;\r\n password = psw.value;\r\n if (utils_1.isEmpty(email)) {\r\n this.doFocus(login);\r\n this.displayError('missingEmail');\r\n return [2, false];\r\n }\r\n else if (utils_1.isEmpty(password)) {\r\n this.doFocus(psw);\r\n this.displayError('missingPassword');\r\n return [2, false];\r\n }\r\n else if (!this.isEmail(email)) {\r\n this.doFocus(login);\r\n this.displayError('invalidEmail');\r\n return [2, false];\r\n }\r\n else if (utils_1.isWhitespace(password)) {\r\n this.doFocus(psw);\r\n this.displayError('emptyPassword');\r\n return [2, false];\r\n }\r\n endPoint = endPoints_1.CobrowseAuthEndPoint;\r\n if (utils_1.isString(this.mainServer)) {\r\n endPoint = \"https://\" + this.mainServer + endPoint;\r\n }\r\n headers = {\r\n 'Content-type': 'application/json',\r\n 'Role': this.userRole\r\n };\r\n if (utils_1.isString(this.sessionID)) {\r\n headers['lsessionID'] = this.sessionID;\r\n }\r\n _a.label = 1;\r\n case 1:\r\n _a.trys.push([1, 3, , 4]);\r\n return [4, ajaxrequest_1.HttpRequest.post(endPoint, {\r\n userLogin: email,\r\n userPassword: password\r\n }, headers)];\r\n case 2:\r\n response = _a.sent();\r\n return [3, 4];\r\n case 3:\r\n err_1 = _a.sent();\r\n apiError = err_1;\r\n if (!utils_1.isEmpty(apiError.rawResponse)) {\r\n response = apiError.rawResponse;\r\n }\r\n else {\r\n this.eventBus.fireEvent(2, apiError);\r\n console.error(err_1);\r\n response = {\r\n state: \"FAIL_INVALID_LOGIN\"\r\n };\r\n }\r\n return [3, 4];\r\n case 4:\r\n monitoringContext = IMonitoring_1.getMonitoringInstance();\r\n parsedResponse = utils_1.isString(response) ? JSON.parse(response) : response;\r\n if (parsedResponse.state !== \"SUCCESS\" && parsedResponse.state !== \"ok\") {\r\n this.lastErrorStatus = parsedResponse.state;\r\n messageID = null;\r\n switch (parsedResponse.state) {\r\n case \"FAIL_NOT_IN_SERVICE\":\r\n case \"FAIL_TIME_EXPIRED\":\r\n messageID = 'trialExpired';\r\n break;\r\n case \"FAIL_OVER_LIMIT\":\r\n messageID = 'maxNumberExceeded';\r\n break;\r\n case \"FAIL_RESTRICTED_IP\":\r\n messageID = 'unauthorized';\r\n break;\r\n case \"FAIL_PASSWORD_EXPIRED\":\r\n messageID = 'pwdExpired';\r\n break;\r\n case \"FAIL_TMP_LOCK\":\r\n messageID = 'failTmpLock';\r\n break;\r\n case \"FAIL_LOCK\":\r\n messageID = 'failLock';\r\n break;\r\n case \"FAIL_NOT_AGENT\":\r\n messageID = 'authorizationFailed';\r\n break;\r\n default:\r\n messageID = 'invalidEmailPassword';\r\n }\r\n if (parsedResponse.remainingAttemptCount === 1) {\r\n messageID = 'aboutToBeLocked';\r\n }\r\n this.displayError(messageID);\r\n this.eventBus.fireEvent(1, parsedResponse.state);\r\n monitoringContext === null || monitoringContext === void 0 ? void 0 : monitoringContext.syncEvent(\"1\", \"AuthenticationError\", {\r\n UserLogin: email,\r\n ErrorCode: parsedResponse.state,\r\n ErrorMessage: this.getMessageText(messageID)\r\n });\r\n }\r\n else {\r\n this.eventBus.fireEvent(0, parsedResponse.authResponse);\r\n if (utils_1.isFunction(this.successCallback)) {\r\n this.successCallback(parsedResponse.authResponse);\r\n this.successCallback = null;\r\n this.rejectCallback = null;\r\n this.dialogPromise = null;\r\n this.hide();\r\n }\r\n }\r\n return [2];\r\n }\r\n });\r\n });\r\n };\r\n return LoginControlClass;\r\n}(promiseDialog_1.PromiseDialog));\r\nvar loginDialog = new LoginControlClass();\r\nexports.LoginControl = {\r\n eventBus: loginDialog.eventBus,\r\n authenticate: loginDialog.authenticate.bind(loginDialog),\r\n configure: loginDialog.configure.bind(loginDialog)\r\n};\r\n","export default \"\\n
\\n
\\t\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
 
Please login
 \\n
\\n \\n \\n \\n
\\n
\\n
Email: 
\\n
\\n \\n \\n \\n
Password: 
\\n \\n \\n \\n
\\t\\t \\n \\n
\\n \\n \\n
 
 
\\n
\\n
\";","export default \"ul.noDot{list-style:none;margin-left:0 !important;padding-left:0 !important;padding-top:1em;font-size:1.1em}ul.noDot>li{display:block;padding-top:.5em}.loginForm{height:100%}.loginContainer{background-image:url(data:image/jpeg;base64,/9j/4AAQSkZJRgABAgAAZABkAAD/7AARRHVja3kAAQAEAAAAUAAA/+4ADkFkb2JlAGTAAAAAAf/bAIQAAgICAgICAgICAgMCAgIDBAMCAgMEBQQEBAQEBQYFBQUFBQUGBgcHCAcHBgkJCgoJCQwMDAwMDAwMDAwMDAwMDAEDAwMFBAUJBgYJDQsJCw0PDg4ODg8PDAwMDAwPDwwMDAwMDA8MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwM/8AAEQgH4AABAwERAAIRAQMRAf/EAE8AAQEBAQEAAAAAAAAAAAAAAAADAgEJAQEBAAAAAAAAAAAAAAAAAAAAAhABAAAAAAAAAAAAAAAAAAAAABEBAAAAAAAAAAAAAAAAAAAAAP/aAAwDAQACEQMRAD8A9/AAATAAABMAHECYAAAJgAAAAmACYACEpgAmACYAAJgAmADSQBMAEwAATABMAEkACYAAJgAAAAmACSUAAJgAAmAACYAAJgAAAAAAmACgAJgoCYKAmCgAJgAAoCYKAAmCgJgoAACYAANoGFgCgJgoCYKAmCgJgoACYAKAAAmCgJgAoCYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP/9k=);background-repeat:repeat-x;margin-left:0;margin-top:0;margin-right:0;margin-bottom:0;position:absolute;width:100%;height:100%;top:0;left:0;display:none}.optionalLinkBlock{width:20px}.loginText{font-size:11px;font-family:Trebuchet MS,Arial,Helvetica,sans-serif}.loginBlock{width:160px}.loginBoldDark{font-size:10pt;color:#404040;font-family:Verdana;font-weight:bold}.loginError{width:220px;margin-left:-30px;position:relative;margin-bottom:10px}.loginError>span{font-size:10pt;color:#eb3434;font-family:Verdana;font-weight:normal}td,th{font-family:Trebuchet MS,Arial,Helvetica,sans-serif;font-size:12px;color:#333}\";","\"use strict\";\r\nvar __extends = (this && this.__extends) || (function () {\r\n var extendStatics = function (d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n };\r\n return function (d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n };\r\n})();\r\nexports.__esModule = true;\r\nvar utils_1 = require(\"../modules/utils\");\r\nvar dialog_1 = require(\"./dialog\");\r\nvar PromiseDialog = (function (_super) {\r\n __extends(PromiseDialog, _super);\r\n function PromiseDialog(html, options) {\r\n var _this = _super.call(this, html, options) || this;\r\n _this.dialogPromise = null;\r\n _this.successCallback = null;\r\n _this.rejectCallback = null;\r\n _this.rejectOnEscape = true;\r\n if (typeof (options === null || options === void 0 ? void 0 : options.rejectOnEscape) === 'boolean') {\r\n _this.rejectOnEscape = options.rejectOnEscape;\r\n }\r\n _this.keyHandler = _this.keyHandler.bind(_this);\r\n return _this;\r\n }\r\n PromiseDialog.prototype.hide = function (reason) {\r\n if (!this.isVisible()) {\r\n return;\r\n }\r\n _super.prototype.hide.call(this);\r\n if (this.dialog !== null) {\r\n this.dialog.removeEventListener('keypress', this.keyHandler, false);\r\n }\r\n this.reportReject(new Error(reason !== null && reason !== void 0 ? reason : 'ERR_DIALOG_DESTROYED'));\r\n };\r\n PromiseDialog.prototype.displayAsync = function () {\r\n var _this = this;\r\n if (this.dialogPromise !== null) {\r\n return this.dialogPromise;\r\n }\r\n this.dialogPromise = new Promise(function (resolve, reject) {\r\n _this.successCallback = resolve;\r\n _this.rejectCallback = reject;\r\n });\r\n this.display();\r\n if (this.dialog !== null) {\r\n this.dialog.addEventListener('keypress', this.keyHandler, false);\r\n }\r\n return this.dialogPromise;\r\n };\r\n PromiseDialog.prototype.keyHandler = function (e) {\r\n var keycode = e.which ? e.which : e.keyCode;\r\n if (keycode === 27 && this.rejectOnEscape) {\r\n utils_1.stopEvent(e);\r\n this.hide('ERR_DISMISSED');\r\n return false;\r\n }\r\n return true;\r\n };\r\n PromiseDialog.prototype.reportReject = function (error) {\r\n if (utils_1.isFunction(this.rejectCallback)) {\r\n this.rejectCallback(error);\r\n this.successCallback = null;\r\n this.dialogPromise = null;\r\n this.rejectCallback = null;\r\n }\r\n };\r\n PromiseDialog.prototype.reportRejectOrThrow = function (error) {\r\n if (utils_1.isFunction(this.rejectCallback)) {\r\n this.reportReject(error);\r\n }\r\n else {\r\n throw error;\r\n }\r\n };\r\n return PromiseDialog;\r\n}(dialog_1.SimpleDialog));\r\nexports.PromiseDialog = PromiseDialog;\r\n","\"use strict\";\r\nexports.__esModule = true;\r\nexports.getMonitoringInstance = function () {\r\n var Cobrowse = window.Cobrowse;\r\n if (typeof Cobrowse === 'object' && Cobrowse !== null) {\r\n return Cobrowse.Monitoring;\r\n }\r\n else if ('Monitoring' in window) {\r\n return window.Monitoring;\r\n }\r\n else {\r\n return undefined;\r\n }\r\n};\r\nexports.filterEvent = function (allowedDebugLevel, currentEventType) {\r\n switch (currentEventType) {\r\n case \"1\":\r\n return allowedDebugLevel !== \"0\";\r\n case \"10\":\r\n return allowedDebugLevel !== \"0\" && allowedDebugLevel !== \"1\";\r\n case \"100\":\r\n return allowedDebugLevel === \"100\" || allowedDebugLevel === \"1000\";\r\n case \"1000\":\r\n return allowedDebugLevel === \"1000\";\r\n }\r\n return false;\r\n};\r\n","\"use strict\";\r\nexports.__esModule = true;\r\nvar utils_1 = require(\"./utils\");\r\nexports.pushJSONToForm = function (form, dynamicParams, cleanUp) {\r\n var _a;\r\n var frm = utils_1.isString(form) ? utils_1.getElementAs(form) : form;\r\n if (frm !== null) {\r\n var children = frm.children;\r\n if (cleanUp === true) {\r\n for (var i = children.length - 1; i >= 0; i--) {\r\n frm.removeChild(children[i]);\r\n }\r\n }\r\n for (var key in dynamicParams) {\r\n if (dynamicParams.hasOwnProperty(key)) {\r\n var currentValue = (_a = dynamicParams[key]) !== null && _a !== void 0 ? _a : '';\r\n var found = false;\r\n for (var j = 0; j < children.length; j++) {\r\n if (children[j].id === key) {\r\n children[j].value = currentValue;\r\n found = true;\r\n break;\r\n }\r\n }\r\n if (!found) {\r\n exports.appendFormWith(frm, key, currentValue);\r\n }\r\n }\r\n }\r\n }\r\n};\r\nexports.appendFormWith = function (form, id, value) {\r\n try {\r\n var translatedValue = value !== null && value !== void 0 ? value : '';\r\n var inputElement = utils_1.isFunction(form.querySelector) ?\r\n form.querySelector(\"#\" + id) : utils_1.getElementAs(id);\r\n if (inputElement !== null) {\r\n inputElement.value = utils_1.htmlEncode(translatedValue);\r\n }\r\n else {\r\n if (navigator.userAgent.indexOf('MSIE 7') !== -1) {\r\n try {\r\n inputElement = document.createElement(\"\"));\r\n }\r\n catch (e) {\r\n }\r\n }\r\n if (inputElement === null) {\r\n inputElement = document.createElement('input');\r\n inputElement.type = 'hidden';\r\n inputElement.name = utils_1.htmlEncode(id);\r\n inputElement.id = utils_1.htmlEncode(id);\r\n inputElement.value = utils_1.htmlEncode(translatedValue);\r\n }\r\n form.appendChild(inputElement);\r\n }\r\n }\r\n catch (e) { }\r\n};\r\nexports.post = function (form, getURL, cleanForm, target) {\r\n if (cleanForm === void 0) { cleanForm = true; }\r\n var _a = getURL.split('?'), url = _a[0], parameters = _a[1];\r\n var paramPairs = [];\r\n var params = {};\r\n if (parameters !== undefined) {\r\n paramPairs = parameters.split('&');\r\n paramPairs.forEach(function (pair) {\r\n var _a = pair.split('='), key = _a[0], value = _a[1];\r\n params[key] = value === undefined ? '' : decodeURIComponent(value);\r\n });\r\n }\r\n exports.pushJSONToForm(form, params, cleanForm);\r\n form.method = 'post';\r\n form.action = url;\r\n form.setAttribute('lastKnownURL', getURL);\r\n if (target !== undefined) {\r\n form.target = target.name;\r\n }\r\n form.submit();\r\n};\r\n","export default \"
\\n\";","export default \"#LL_modal_mask{display:none;left:0;width:0;height:0;opacity:0;pointer-events:none}\";","\"use strict\";\r\nexports.__esModule = true;\r\nvar constants_1 = require(\"../modules/constants\");\r\nvar utils_1 = require(\"../modules/utils\");\r\nvar IMonitoring_1 = require(\"../interfaces/IMonitoring\");\r\nvar requestTimeout = 10000;\r\nvar AjaxException = (function () {\r\n function AjaxException(exceptionStatus, exceptionText, exceptionMessage) {\r\n this.status = 0;\r\n this.statusText = null;\r\n this.message = null;\r\n this.rawResponse = null;\r\n this.status = exceptionStatus;\r\n this.statusText = exceptionText;\r\n if (exceptionMessage !== undefined) {\r\n this.message = exceptionMessage;\r\n }\r\n }\r\n return AjaxException;\r\n}());\r\nexports.AjaxException = AjaxException;\r\nvar LegacyAjaxRequestClass = (function () {\r\n function LegacyAjaxRequestClass() {\r\n }\r\n LegacyAjaxRequestClass.prototype.requestRawXHR = function (method, url, bodyParams, headers, successCallback, errorCallback, timeout) {\r\n var thisRequestTimeout = typeof timeout === 'number' ? timeout : requestTimeout;\r\n var xhr = new XMLHttpRequest();\r\n xhr.open(method, url, true);\r\n xhr.onload = function () {\r\n clearTimeout(requestTimer);\r\n requestTimer = 0;\r\n if (utils_1.isFunction(successCallback)) {\r\n successCallback(xhr);\r\n }\r\n };\r\n xhr.onerror = function () {\r\n clearTimeout(requestTimer);\r\n requestTimer = 0;\r\n var failedURL = !utils_1.isEmpty(url) ? url.split('?')[0] : url;\r\n var errorMessage = '';\r\n if (!utils_1.isEmpty(xhr.statusText)) {\r\n errorMessage = xhr.statusText;\r\n }\r\n else {\r\n errorMessage = \"Request to \" + failedURL + \" failed on the network level\";\r\n }\r\n var monitoringContext = IMonitoring_1.getMonitoringInstance();\r\n monitoringContext === null || monitoringContext === void 0 ? void 0 : monitoringContext.syncEvent(\"1\", \"SessionError\", {\r\n ErrorCode: \"NetworkRequestFailed\",\r\n ErrorMessage: errorMessage\r\n });\r\n var error = new AjaxException(xhr.status, errorMessage);\r\n if (utils_1.isFunction(errorCallback)) {\r\n errorCallback(error);\r\n }\r\n else {\r\n throw error;\r\n }\r\n };\r\n var requestTimer = setTimeout(function (closureURL) {\r\n try {\r\n xhr.onreadystatechange = function () { };\r\n xhr.abort();\r\n }\r\n catch (err) { }\r\n var failedURL = !utils_1.isEmpty(closureURL) ? closureURL.split('?')[0] : '';\r\n var monitoringContext = IMonitoring_1.getMonitoringInstance();\r\n monitoringContext === null || monitoringContext === void 0 ? void 0 : monitoringContext.syncEvent(\"1\", \"NetworkTimeout\", {\r\n OperationType: \"MainNetworkTimeout\",\r\n Description: 'Request timed out', RemoteURL: failedURL\r\n });\r\n var error = new AjaxException(-1, constants_1.ERROR_REQUEST_TIMEOUT, constants_1.ERROR_REQUEST_TIMEOUT);\r\n if (utils_1.isFunction(errorCallback)) {\r\n errorCallback(error);\r\n }\r\n else {\r\n throw error;\r\n }\r\n }, thisRequestTimeout, url);\r\n var jsonEncoding = false;\r\n var hasContentType = false;\r\n if (!utils_1.isEmpty(headers) && typeof headers === 'object') {\r\n Object.keys(headers).forEach(function (key) {\r\n if (key.toLowerCase() === 'content-type') {\r\n hasContentType = true;\r\n var value = headers[key];\r\n if (utils_1.isString(value)) {\r\n if (value.toLowerCase().indexOf('json') !== -1) {\r\n jsonEncoding = true;\r\n }\r\n else if (value.toLowerCase().indexOf('javascript') !== -1) {\r\n jsonEncoding = true;\r\n }\r\n }\r\n }\r\n xhr.setRequestHeader(key, headers[key]);\r\n });\r\n }\r\n if (method === \"POST\" && !hasContentType) {\r\n xhr.setRequestHeader('Content-type', 'application/json');\r\n jsonEncoding = true;\r\n }\r\n var body = null;\r\n if (!utils_1.isEmpty(bodyParams) && bodyParams.constructor === Object) {\r\n if (jsonEncoding) {\r\n body = JSON.stringify(bodyParams);\r\n }\r\n else {\r\n var dictionary_1 = bodyParams;\r\n body = Object.keys(dictionary_1).map(function (key) {\r\n return '\\\"' + encodeURIComponent(key) + '\\\"' + '=' + encodeURIComponent(dictionary_1[key]);\r\n }).join('&');\r\n }\r\n }\r\n else {\r\n body = bodyParams;\r\n }\r\n xhr.send(body);\r\n };\r\n LegacyAjaxRequestClass.prototype.request = function (method, url, bodyParams, headers, resolveCallback, rejectCallback, timeout) {\r\n var successProcessor = function (xhr) {\r\n var _a, _b;\r\n if (xhr.status >= 200 && xhr.status < 400) {\r\n if (utils_1.isFunction(resolveCallback)) {\r\n resolveCallback(xhr.responseXML || xhr.response || xhr.responseText, xhr);\r\n }\r\n }\r\n else {\r\n var failedURL = !utils_1.isEmpty(url) ? url.split('?')[0] : url;\r\n var message = \"Request to \" + failedURL + \" failed with code \" + xhr.status;\r\n var monitoringContext = IMonitoring_1.getMonitoringInstance();\r\n monitoringContext === null || monitoringContext === void 0 ? void 0 : monitoringContext.syncEvent(\"1\", \"SessionError\", {\r\n ErrorCode: \"NetworkRequestFailed\",\r\n ErrorMessage: message\r\n });\r\n var error = new AjaxException(xhr.status, xhr.statusText, message);\r\n error.rawResponse = (_b = (_a = xhr.responseXML) !== null && _a !== void 0 ? _a : xhr.response) !== null && _b !== void 0 ? _b : xhr.responseText;\r\n if (utils_1.isFunction(rejectCallback)) {\r\n rejectCallback(error);\r\n }\r\n else {\r\n throw error;\r\n }\r\n }\r\n };\r\n this.requestRawXHR(method, url, bodyParams, headers, successProcessor, rejectCallback, timeout);\r\n };\r\n LegacyAjaxRequestClass.prototype.send = function (url, headers, resolveCallback, rejectCallback) {\r\n this.request(\"GET\", url, undefined, headers, resolveCallback, rejectCallback);\r\n };\r\n LegacyAjaxRequestClass.prototype.post = function (url, params, headers, resolveCallback, rejectCallback) {\r\n this.request(\"POST\", url, params, headers, resolveCallback, rejectCallback);\r\n };\r\n return LegacyAjaxRequestClass;\r\n}());\r\nexports.LegacyAjaxRequestClass = LegacyAjaxRequestClass;\r\nexports.HttpRequest = new LegacyAjaxRequestClass();\r\n","\"use strict\";\r\nvar __extends = (this && this.__extends) || (function () {\r\n var extendStatics = function (d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n };\r\n return function (d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n };\r\n})();\r\nexports.__esModule = true;\r\nvar modal_mask_html_1 = require(\"./html/modal-mask.html\");\r\nvar modal_mask_css_1 = require(\"./html/css/modal-mask.css\");\r\nvar utils_1 = require(\"../modules/utils\");\r\nexports.ERROR_NULL_CONTENTS = new Error('Contents must not be NULL');\r\nexports.templateRegEx = /\\${(.+?)}/g;\r\nvar docLoadPromise = function (resolve) {\r\n if (!utils_1.isEmpty(document.body)) {\r\n resolve();\r\n return;\r\n }\r\n setTimeout(docLoadPromise, 111, resolve);\r\n};\r\nvar firstChild = function (div) {\r\n var items = Array.prototype.slice.call(div.children);\r\n for (var count = 0; count < items.length; count++) {\r\n if (items[count].nodeType === Node.ELEMENT_NODE) {\r\n return items[count];\r\n }\r\n }\r\n return null;\r\n};\r\nexports.createDialogContainer = function (html, css) {\r\n var div = document.createElement('div');\r\n div.innerHTML = html;\r\n if (!utils_1.isEmpty(css)) {\r\n css.forEach(function (descriptor) {\r\n var style = null;\r\n if (!utils_1.isEmpty(descriptor.id)) {\r\n style = div.querySelector(\"#\" + descriptor.id);\r\n if (style !== null) {\r\n div.removeChild(style);\r\n style = null;\r\n }\r\n }\r\n docLoadPromise(function () {\r\n style = document.createElement('style');\r\n style.id = descriptor.id;\r\n style.setAttribute('id', descriptor.id);\r\n style.textContent = descriptor.cssContent;\r\n document.body.appendChild(style);\r\n });\r\n });\r\n }\r\n var dialog = firstChild(div);\r\n if (dialog === null) {\r\n throw exports.ERROR_NULL_CONTENTS;\r\n }\r\n docLoadPromise(function () {\r\n document.body.appendChild(dialog);\r\n });\r\n return dialog;\r\n};\r\nvar CustomizableDialog = (function () {\r\n function CustomizableDialog() {\r\n var _this = this;\r\n this.processTemplateText = function (templatedText, uiConfig) {\r\n if (templatedText.search(exports.templateRegEx) > -1) {\r\n var processedValue = templatedText;\r\n var matchResult = exports.templateRegEx.exec(templatedText);\r\n while (matchResult !== null) {\r\n var templateID = matchResult[1];\r\n if (templateID !== undefined) {\r\n var _a = templateID.split(/,\\s*default\\:\\s*/), itemID = _a[0], defaultDescriptor = _a[1];\r\n var value = uiConfig[itemID.trim()];\r\n if (utils_1.isString(value) && !utils_1.isEmpty(value.trim())) {\r\n processedValue = processedValue.replace(matchResult[0], value.trim());\r\n }\r\n else if (defaultDescriptor !== undefined) {\r\n processedValue = processedValue.replace(matchResult[0], defaultDescriptor);\r\n }\r\n else {\r\n processedValue = processedValue.replace(matchResult[0], '');\r\n }\r\n }\r\n matchResult = exports.templateRegEx.exec(templatedText);\r\n }\r\n return processedValue;\r\n }\r\n return templatedText;\r\n };\r\n this.applyAttributes = function (customAttributes, uiConfig, el) {\r\n var attrCollection = customAttributes.split(';');\r\n attrCollection.forEach(function (attrDescriptor) {\r\n var _a = attrDescriptor.split(':'), attrName = _a[0], attrText = _a[1];\r\n if (attrName !== undefined && attrText !== undefined) {\r\n var attributeName = attrName.trim();\r\n var value = _this.processTemplateText(attrText, uiConfig);\r\n var existingValue = el.getAttribute(attributeName);\r\n el.setAttribute(attributeName, value || existingValue || '');\r\n }\r\n });\r\n };\r\n this.customizeSingleElement = function (el, uiConfig) {\r\n var data = el.dataset;\r\n if (!utils_1.isEmpty(data)) {\r\n if ('customText' in data) {\r\n var textTemplate = data['customText'];\r\n var textContents = _this.processTemplateText(textTemplate, uiConfig);\r\n el.innerText = textContents || el.innerText;\r\n }\r\n if ('customHtml' in data) {\r\n var htmlTemplate = data['customHtml'];\r\n var textContents = _this.processTemplateText(htmlTemplate, uiConfig);\r\n el.innerHTML = textContents || el.innerHTML;\r\n }\r\n if ('attributes' in data) {\r\n var customAttributes = data['attributes'];\r\n _this.applyAttributes(customAttributes, uiConfig, el);\r\n }\r\n }\r\n };\r\n this.processUIElement = function (el, uiConfig) {\r\n _this.customizeSingleElement(el, uiConfig);\r\n if (el.nodeType === Node.ELEMENT_NODE) {\r\n var children = el.children !== undefined ? el.children : el.childNodes;\r\n Array.prototype.slice.call(children).forEach(function (child) {\r\n if (child.nodeType === Node.ELEMENT_NODE) {\r\n _this.processUIElement(child, uiConfig);\r\n }\r\n });\r\n }\r\n };\r\n this.setImageRoot = function (contents, imageRootPath) {\r\n if (contents === null) {\r\n throw exports.ERROR_NULL_CONTENTS;\r\n }\r\n var path = imageRootPath.endsWith('/') ? imageRootPath.substr(0, imageRootPath.length - 1) : imageRootPath;\r\n var images = _this.getImageElements(contents);\r\n console.log('Received list of images: ', images, 'path is: ', path);\r\n images.forEach(function (elem) {\r\n var _a;\r\n var src = (_a = elem.getAttribute('src')) !== null && _a !== void 0 ? _a : elem.src;\r\n if (utils_1.isString(src) && src.startsWith('/')) {\r\n elem.src = path + src;\r\n }\r\n });\r\n };\r\n this.getImageElements = function (contents) {\r\n var images = [];\r\n if (contents !== null) {\r\n Array.prototype.slice.call(contents.childNodes).forEach(function (elem) { return _this.retrieveImages(elem, images); });\r\n }\r\n return images;\r\n };\r\n }\r\n CustomizableDialog.prototype.retrieveImages = function (rootElem, images) {\r\n var _this = this;\r\n if (rootElem instanceof HTMLImageElement) {\r\n images.push(rootElem);\r\n }\r\n else {\r\n Array.prototype.slice.call(rootElem.childNodes).forEach(function (childNode) { return _this.retrieveImages(childNode, images); });\r\n }\r\n };\r\n return CustomizableDialog;\r\n}());\r\nexports.CustomizableDialog = CustomizableDialog;\r\nvar SimpleDialog = (function (_super) {\r\n __extends(SimpleDialog, _super);\r\n function SimpleDialog(html, options) {\r\n var _this = _super.call(this) || this;\r\n _this.mask = null;\r\n _this.dialog = null;\r\n _this.visibility = false;\r\n _this.uiConfig = null;\r\n _this.options = {\r\n enableOverlay: true,\r\n dismissOnEscape: true,\r\n dismissOnMaskClick: true\r\n };\r\n _this.isVisible = function () { return _this.visibility; };\r\n var defaultMask = {\r\n id: 'LL_modal_mask', htmlContent: modal_mask_html_1[\"default\"], css: [{ cssContent: modal_mask_css_1[\"default\"], id: 'modalMaskCss' }]\r\n };\r\n if (typeof (options === null || options === void 0 ? void 0 : options.dismissOnEscape) === 'boolean') {\r\n _this.options.dismissOnEscape = options.dismissOnEscape;\r\n }\r\n if (typeof (options === null || options === void 0 ? void 0 : options.dismissOnMaskClick) === 'boolean') {\r\n _this.options.dismissOnMaskClick = options.dismissOnMaskClick;\r\n }\r\n if (typeof (options === null || options === void 0 ? void 0 : options.enableOverlay) === 'boolean') {\r\n _this.options.enableOverlay = options.enableOverlay;\r\n }\r\n if ((options === null || options === void 0 ? void 0 : options.maskControl) !== undefined && _this.options.enableOverlay) {\r\n defaultMask = options.maskControl;\r\n }\r\n _this.mask = null;\r\n _this.dialog = null;\r\n if (_this.options.enableOverlay === true) {\r\n if (utils_1.isString(defaultMask.id)) {\r\n _this.mask = utils_1.getElementAs(defaultMask.id);\r\n }\r\n if (_this.mask === null) {\r\n _this.mask = exports.createDialogContainer(defaultMask.htmlContent, defaultMask.css);\r\n }\r\n }\r\n if (utils_1.isString(html.id)) {\r\n _this.dialog = utils_1.getElementAs(html.id);\r\n }\r\n if (_this.dialog === null) {\r\n _this.dialog = exports.createDialogContainer(html.htmlContent, html.css);\r\n }\r\n _this.escapeListener = _this.escapeListener.bind(_this);\r\n _this.hideListener = _this.hideListener.bind(_this);\r\n _this.reset();\r\n return _this;\r\n }\r\n SimpleDialog.prototype.attachCloseControl = function (element) {\r\n element.addEventListener('click', this.hideListener, false);\r\n };\r\n SimpleDialog.prototype.reset = function () {\r\n this.hide();\r\n };\r\n SimpleDialog.prototype.configureUI = function (uiConfig) {\r\n this.uiConfig = uiConfig;\r\n if (this.dialog === null) {\r\n throw exports.ERROR_NULL_CONTENTS;\r\n }\r\n this.processUIElement(this.dialog, this.uiConfig);\r\n };\r\n SimpleDialog.prototype.center = function () {\r\n if (this.dialog === null) {\r\n throw exports.ERROR_NULL_CONTENTS;\r\n }\r\n var element = this.dialog;\r\n var wndWidth = utils_1.getWinWidth();\r\n var objWidth = element.offsetWidth || 0;\r\n element.style.left = (wndWidth - objWidth) / 2 - 20 + \"px\";\r\n };\r\n SimpleDialog.prototype.display = function () {\r\n var _this = this;\r\n var _a;\r\n if (this.visibility) {\r\n return;\r\n }\r\n if (this.dialog === null) {\r\n throw exports.ERROR_NULL_CONTENTS;\r\n }\r\n if (this.options.enableOverlay === true && this.mask !== null) {\r\n utils_1.showElement(this.mask);\r\n if (this.options.dismissOnMaskClick === true) {\r\n this.mask.addEventListener('click', this.hideListener, false);\r\n }\r\n }\r\n if (this.options.dismissOnEscape === true) {\r\n window.addEventListener('keydown', this.escapeListener, false);\r\n }\r\n utils_1.showElement(this.dialog);\r\n if (!utils_1.isEmpty((_a = this.dialog) === null || _a === void 0 ? void 0 : _a.offsetWidth)) {\r\n this.visibility = true;\r\n this.center();\r\n }\r\n else {\r\n utils_1.hideElement(this.dialog);\r\n docLoadPromise(function () {\r\n utils_1.showElement(_this.dialog);\r\n _this.center.bind(_this);\r\n _this.visibility = true;\r\n });\r\n }\r\n };\r\n SimpleDialog.prototype.hide = function () {\r\n if (this.dialog === null) {\r\n throw exports.ERROR_NULL_CONTENTS;\r\n }\r\n if (this.options.enableOverlay === true && this.mask !== null) {\r\n utils_1.hideElement(this.mask);\r\n this.mask.removeEventListener('click', this.hideListener, false);\r\n }\r\n utils_1.hideElement(this.dialog);\r\n this.visibility = false;\r\n window.removeEventListener('keydown', this.escapeListener, false);\r\n };\r\n SimpleDialog.prototype.getContent = function () {\r\n return this.dialog;\r\n };\r\n SimpleDialog.prototype.getMask = function () {\r\n return this.mask;\r\n };\r\n SimpleDialog.prototype.hideListener = function (e) {\r\n utils_1.stopEvent(e);\r\n this.hide();\r\n return false;\r\n };\r\n SimpleDialog.prototype.escapeListener = function (e) {\r\n var keyCode = e.keyCode || e.which;\r\n var code = e.code;\r\n if (keyCode !== 27 && code !== 'Escape') {\r\n return;\r\n }\r\n this.hideListener(e);\r\n };\r\n return SimpleDialog;\r\n}(CustomizableDialog));\r\nexports.SimpleDialog = SimpleDialog;\r\n","\"use strict\";\r\nvar __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n};\r\nvar __generator = (this && this.__generator) || function (thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n};\r\nexports.__esModule = true;\r\nvar IMonitoring_1 = require(\"cobrowse-common/interfaces/IMonitoring\");\r\nvar utils_1 = require(\"cobrowse-common/modules/utils\");\r\nvar AgentMonitoring = (function () {\r\n function AgentMonitoring() {\r\n var _this = this;\r\n this.debugLevel = \"1\";\r\n this.currentID = null;\r\n this.latestFlushTimeStamp = 0;\r\n this.currentBatchTime = null;\r\n this.currentBatch = [];\r\n this.monitoringID = null;\r\n this.channelID = null;\r\n this.useBeacon = false;\r\n this.url = '/webinterfaces/integrated/public/log_data.aspx';\r\n this.configure = function (_debugLevel, _monitoringID, _channelID) {\r\n _this.debugLevel = _debugLevel;\r\n if (utils_1.isFunction(window.addEventListener) && window.performance && performance.now) {\r\n _this.monitoringID = _monitoringID;\r\n _this.channelID = _channelID;\r\n }\r\n };\r\n this.syncEvent = function (eventType, eventName, eventParams) {\r\n if (exports.Monitoring.monitoringID === null) {\r\n return;\r\n }\r\n else if (!exports.Monitoring.filterEvent(eventType)) {\r\n return;\r\n }\r\n if (exports.Monitoring.currentID === null) {\r\n exports.Monitoring.currentID = exports.Monitoring.generateID();\r\n exports.Monitoring.currentBatchTime = new Date().getTime();\r\n }\r\n var serializedData = {\r\n ID: exports.Monitoring.currentID + \"_\" + exports.Monitoring.currentBatch.length,\r\n commandID: eventName,\r\n commandName: eventName,\r\n params: eventParams || {},\r\n eventTime: new Date().getTime()\r\n };\r\n serializedData.params.monitoringID = exports.Monitoring.monitoringID;\r\n serializedData.params.channelID = exports.Monitoring.channelID;\r\n exports.Monitoring.currentBatch.push(serializedData);\r\n if (exports.Monitoring.useBeacon || exports.Monitoring.currentBatch.length > 10) {\r\n exports.Monitoring.flush();\r\n }\r\n };\r\n this.event = function (eventType, eventName, eventParams) { return __awaiter(_this, void 0, void 0, function () {\r\n return __generator(this, function (_a) {\r\n this.syncEvent(eventType, eventName, eventParams);\r\n return [2];\r\n });\r\n }); };\r\n this.filterEvent = function (currentEventType) {\r\n return IMonitoring_1.filterEvent(_this.debugLevel, currentEventType);\r\n };\r\n this.generateID = function () {\r\n return Math.floor(Math.random() * 100001);\r\n };\r\n this.checkTime = function () {\r\n var currentStamp = performance.now();\r\n if (currentStamp - exports.Monitoring.latestFlushTimeStamp < 10000) {\r\n return;\r\n }\r\n exports.Monitoring.flush();\r\n };\r\n this.initPolling = function () {\r\n setInterval(_this.checkTime, 3333);\r\n window.addEventListener('beforeunload', function () {\r\n if (typeof (exports.Monitoring) !== 'undefined') {\r\n exports.Monitoring.flush();\r\n }\r\n }, false);\r\n };\r\n this.flush = function () {\r\n if (exports.Monitoring.monitoringID === null) {\r\n return;\r\n }\r\n exports.Monitoring.latestFlushTimeStamp = performance.now();\r\n if (exports.Monitoring.currentID === null) {\r\n return;\r\n }\r\n else if (exports.Monitoring.currentBatch.length !== 0) {\r\n var sendTime_1 = utils_1.getCurrentTime();\r\n var params = \"data=\" + JSON.stringify(exports.Monitoring.currentBatch)\r\n + (\"&firstevent_time=\" + encodeURIComponent(exports.Monitoring.currentBatchTime) + \"&sendevent_time=\" + encodeURIComponent(sendTime_1));\r\n exports.Monitoring.currentBatch.forEach(function (event) {\r\n event.time = sendTime_1 - event.eventTime;\r\n });\r\n if (exports.Monitoring.useBeacon) {\r\n var success = navigator.sendBeacon(exports.Monitoring.url, params);\r\n if (!success) {\r\n exports.Monitoring.useBeacon = false;\r\n exports.Monitoring.initPolling();\r\n }\r\n }\r\n else {\r\n var request = new XMLHttpRequest();\r\n request.open('POST', exports.Monitoring.url, true);\r\n request.setRequestHeader('Content-type', 'application/x-www-form-urlencoded');\r\n request.send(params);\r\n }\r\n }\r\n exports.Monitoring.currentBatch = [];\r\n exports.Monitoring.currentID = null;\r\n };\r\n this.useBeacon = utils_1.isFunction(navigator.sendBeacon);\r\n if (window.performance && performance.now) {\r\n this.latestFlushTimeStamp = performance.now();\r\n if (!this.useBeacon) {\r\n this.initPolling();\r\n }\r\n }\r\n }\r\n return AgentMonitoring;\r\n}());\r\nexports.Monitoring = new AgentMonitoring();\r\nif (typeof window.Monitoring === 'undefined') {\r\n window.Monitoring = exports.Monitoring;\r\n}\r\nexports.clientError = function (message, url) {\r\n exports.Monitoring.syncEvent(\"1\", \"JavascriptError\", { JavascriptException: message, JavascriptURL: url || window.location.href });\r\n};\r\n"],"sourceRoot":""}