{"version":3,"sources":["api.js","registerServiceWorker.js","actions/info.js","actions/change.js","actions/errors.js","actions/build.js","actions/job.js","actions/jobs.js","actions/labels.js","actions/logfile.js","actions/nodes.js","actions/openapi.js","actions/project.js","actions/projects.js","actions/status.js","actions/tenants.js","actions/timezone.js","reducers/timezone.js","reducers/index.js","reducers/build.js","reducers/change.js","reducers/configErrors.js","reducers/errors.js","reducers/info.js","reducers/job.js","reducers/jobs.js","reducers/labels.js","reducers/logfile.js","reducers/nodes.js","reducers/openapi.js","reducers/project.js","reducers/projects.js","reducers/status.js","actions/tenant.js","reducers/tenant.js","reducers/tenants.js","store.js","containers/ErrorBoundary.jsx","containers/timezone/SelectTz.jsx","actions/configErrors.js","containers/status/ChangePanel.jsx","containers/status/Change.jsx","containers/status/ChangeQueue.jsx","containers/status/Pipeline.jsx","containers/Refreshable.jsx","pages/Status.jsx","pages/ChangeStatus.jsx","containers/project/ProjectVariant.jsx","containers/project/Project.jsx","pages/Project.jsx","pages/Projects.jsx","containers/SourceContext.jsx","containers/job/Nodeset.jsx","containers/job/Role.jsx","containers/job/JobProject.jsx","containers/job/JobVariant.jsx","containers/job/Job.jsx","pages/Job.jsx","containers/jobs/Jobs.jsx","pages/Jobs.jsx","pages/Labels.jsx","pages/Nodes.jsx","containers/build/Build.jsx","containers/build/Artifact.jsx","containers/build/BuildOutput.jsx","containers/build/Summary.jsx","pages/Build.jsx","containers/build/Manifest.jsx","pages/BuildLogs.jsx","containers/build/Console.jsx","pages/BuildConsole.jsx","containers/logfile/LogFile.jsx","pages/LogFile.jsx","containers/TableFilters.jsx","pages/Builds.jsx","containers/build/Buildset.jsx","pages/Buildset.jsx","pages/Buildsets.jsx","pages/ConfigErrors.jsx","pages/Tenants.jsx","pages/Stream.jsx","pages/OpenApi.jsx","App.jsx","routes.js","index.js","images/logo.png","images/line-angle.png","images/line-t.png"],"names":["getHomepageUrl","url","baseUrl","window","location","href","replace","includes","slice","lastIndexOf","forEach","path","endsWith","apiUrl","ZUUL_API","process","REACT_APP_ZUUL_API","getZuulUrl","isLocalhost","Boolean","hostname","match","registerValidSW","swUrl","navigator","serviceWorker","register","then","registration","onupdatefound","installingWorker","installing","onstatechange","state","controller","console","log","catch","error","fetchInfo","dispatch","type","Axios","get","response","tenant","data","info","fetchInfoFail","setTimeout","fetchChange","changeId","apiPrefix","API","change","receivedAt","Date","now","failedChange","fetchChangeIfNeeded","force","getState","isFetching","shouldFetchChange","Promise","resolve","errorId","addApiError","d","request","responseURL","text","statusText","status","message","id","addError","receiveBuild","buildId","build","shouldIncludeKey","key","value","ignore_underscore","included","taskPathMatches","ref","test","length","i","receiveBuildOutput","output","hosts","phase","Object","entries","stats","host","changed","failures","ok","failed","plays","play","tasks","task","results","result","name","push","rc","errorIds","Set","playbook","didTaskFail","add","index","receiveBuildManifest","manifest","tree","map","n","renderNode","root","object","children","index_links","failedBuildManifest","fetchBuild","builds","failedBuild","fetchBuildManifest","artifacts","artifact","metadata","fetchBuildIfNeeded","log_url","substr","failedBuildOutput","fetchBuildOutput","fetchBuildset","buildset","buildsetId","uuid","receiveBuildset","failedBuildset","fetchBuildsetIfNeeded","buildsets","shouldFetchBuildset","fetchJob","jobname","jobName","json","job","receiveJob","failedJob","fetchJobIfNeeded","tenantJobs","jobs","shouldFetchJob","fetchJobs","receiveJobs","failedJobs","fetchLabels","labels","receiveLabels","failedLabels","STATUSFMT","severityMap","DEBUG","INFO","WARNING","ERROR","TRACE","AUDIT","CRITICAL","OSLO_LOGMATCH","RegExp","SYSTEMD_LOGMATCH","failedLogfile","fetchLogfile","file","item","logfile","requestLogfile","mimetype","transformResponse","split","line","idx","m","sev","exec","severity","fetchLogfileIfNeeded","fetchNodes","nodes","failedNodes","fetchNodesIfNeeded","shouldFetchNodes","fetchOpenApi","whiteLabel","yaml_data","yaml","safeLoad","paths","parameters","splice","servers","description","openapi","fetchOpenApiSuccess","fetchOpenApiFail","fetchOpenApiIfNeeded","shouldFetchOpenApi","fetchProject","project","projectName","templateIdx","configs","config","default_branch","pipelines","templatePipeline","pipeline","filter","queue_name","receiveProject","failedProject","fetchProjectIfNeeded","tenantProjects","projects","shouldFetchProject","fetchProjects","receiveProjects","failedProjects","fetchStatus","failedStatus","fetchTenants","tenants","failedTenants","fetchTenantsIfNeeded","shouldFetchTenants","setTimezoneAction","timezone","reducers","isFetchingOutput","isFetchingManifest","action","update","$merge","configErrors","errors","date","$push","$splice","indexOf","ready","combineReducers","store","createStore","appReducers","applyMiddleware","thunk","ErrorBoundary","hasError","this","setState","props","React","Component","SelectTz","availableTz","moment","tz","names","label","defaultValue","handleChange","selectedTz","setCookie","updateState","loadState","nameEQ","ca","document","cookie","c","charAt","substring","readCookie","currentValue","timezoneAction","customStyles","container","display","control","width","singleValue","color","input","provided","dropdownIndicator","padding","indicatorSeparator","menu","right","top","style","border","borderWidth","cursor","fontSize","Icon","styles","onChange","options","noOptionsMessage","placeholder","theme","borderRadius","spacing","baseUnit","connect","fetchConfigErrorsAction","ChangePanel","expanded","onClick","bind","clicked","e","button","globalExpanded","ms","format","template","largest","minValue","usePlural","delta","time","className","toLowerCase","queued","paused","changeTitle","changeText","githubId","title","jobPercent","Math","floor","jobStrResult","remainingTime","remaining_time","enqueueTime","enqueue_time","elapsedTime","progressPercent","progressWidth","remaining","Number","isNaN","role","aria-valuenow","aria-valuemin","aria-valuemax","job_name","tries","resultBar","report_url","to","linkPrefix","Link","renderJobProgressBar","elapsed_time","renderJobStatusLabel","voting","clear","renderJob","expand","header","renderChangeLink","renderProgressBar","live","renderTimer","renderJobList","Change","iconGlyph","iconTitle","active","failing_reasons","reason","join","icon","image","LineTImage","_tree_branches","LineAngleImage","alt","src","verticalAlign","queue","row","_tree_columns","_tree","_tree_index","renderStatusIcon","renderLineImg","changeWidth","boxSizing","ChangeQueue","shortName","changesList","heads","changes","changeIdx","toString","data-zuul-pipeline","Pipeline","count","pipelineMaxTreeColumns","change_queues","changeQueue","maxTreeColumns","lastTreeLength","head","changeIndex","_tree_position","keys","pop","items_behind","sort","a","b","found","filters","changeFilter","createTree","Badge","filterQueue","Refreshable","updateData","prevProps","remoteData","Spinner","loading","StatusPage","autoReload","visibilityListener","visibilityStateProperty","visible","shouldFetchStatus","timer","clearTimeout","setFilter","pathname","handleKeyPress","charCode","target","preventDefault","blur","handleCheckBox","checked","hash","filterLoaded","hidden","visibilityChangeEvent","mozHidden","msHidden","webkitHidden","addEventListener","removeEventListener","trigger_event_queue","management_event_queue","result_event_queue","zuul_version","last_reconfigured","statusControl","Form","inline","FormGroup","controlId","FormControl","inputRef","onKeyPress","Feedback","zIndex","pointerEvents","Checkbox","defaultChecked","renderSpinner","marginTop","renderStatusHeader","renderStatusFooter","propTypes","PropTypes","string","func","ChangeStatusPage","params","float","isRequired","ProjectVariant","variant","rows","merge_mode","templates","templateList","jobList","Project","variantIdx","selected","canonical_name","TabContainer","Nav","bsClass","NavItem","renderVariantTitle","TabContent","TabPane","ProjectPage","ProjectsPage","shouldFetchProjects","fetchProjectsIfNeeded","headerFormat","Table","Heading","cellFormat","Cell","cellProjectFormat","rowData","cellBuildFormat","columns","column","formatter","prop","formatters","property","cell","PfProvider","striped","bordered","hover","Header","Body","rowKey","SourceContext","context","showBranch","branch","Nodeset","nodeset","groups","group","Card","accented","aggregated","CardTitle","CardBody","AggregateStatusNotifications","AggregateStatusNotification","AggregateStatusCount","Role","target_name","project_canonical_name","JobProject","project_name","override_branch","override_checkout","JobVariant","abstract","final","post_review","protected","descriptionMaxHeight","source_context","renderStatus","whiteSpace","sortKeys","enableClipboard","displayDataTypes","minHeight","onHeightReady","height","parent","values","items","Job","resetMaxHeight","prevState","variant_description","branches","JobPage","JobsList","flatten","jobMap","visited","createNode","extra","marginLeft","tags","tag","pullRight","getNode","filtered","parents","variants","jobVariant","jobFilter","jobNode","attached","parentNode","TreeView","JobsPage","shouldFetchJobs","fetchJobsIfNeeded","Jobs","LabelsPage","shouldFetchLabels","fetchLabelsIfNeeded","NodesPage","cellLabelsFormat","cellPreFormat","fontFamily","cellAgeFormat","fromNow","Build","Panel","undefined","Artifact","ArtifactList","node","BuildOutput","ListView","Item","heading","additionalInfo","InfoItem","zuul_log_id","invocation","module_args","_raw_params","msg","exception","stdout_lines","stderr_lines","renderFailedTask","renderHosts","Summary","myColumns","BuildPage","Manifest","raw_suffix","obj","renderTree","textRenderer","defaultRenderer","Fragment","BuildLogsPage","INTERESTING_KEYS","TaskOutput","interesting_results","include","_ansible_item_label","findLoopLabel","renderData","ret","renderResults","HostTask","showModal","skipped","open","close","taskPath","displayPath","ai","duration","end","diff","start","has","has_interesting_keys","k","v","lc","initExpanded","leftContent","Row","Col","sm","Modal","show","onHide","dialogClassName","aria-hidden","aria-label","Title","PlayBook","trusted","stacked","toUpperCase","idx2","concat","Console","BuildConsolePage","updateSelection","event","lines","lineClicked","currentTarget","innerText","shiftKey","distances","pos","abs","LogFile","LogFilePage","initialScroll","highlightDidUpdate","getLine","nr","getElementsByClassName","getEnd","classList","remove","dehighlight","highlight","element","scrollIntoView","scroll","scrollY","offsetHeight","parse","search","TableFilters","getFilterFromUrl","urlParams","URLSearchParams","activeFilters","filterTypes","getAll","param","filterAdded","field","filterText","filterCategory","filterValue","updateUrl","selectFilterType","filterType","currentFilterType","categoryValue","filterValueSelected","filterCategorySelected","category","categoryValueSelected","updateCurrentValue","onValueKeyPress","keyEvent","stopPropagation","removeFilter","updated","clearFilters","renderFilter","Filter","TypeSelector","onFilterTypeSelected","renderFilterInput","Toolbar","Results","ActiveLabel","List","onRemove","filterData","Button","encodeURIComponent","history","pushState","BuildsPage","queryString","fetchBuilds","prepareTableHeaders","linkBuildFormat","rowdata","linkChangeFormat","ref_url","patchset","newrev","durationFormat","timeFormat","onRow","renderTable","Buildset","buildRows","buildColumns","BuildsetPage","BuildsetsPage","fetchBuildsets","linkBuildsetFormat","ConfigErrorsPage","ctxPath","TenantsPage","projects_link","Terminal","applyAddon","fit","weblinks","StreamPage","searchRegex","searchCaseSensitive","searchWholeWord","onMessage","term","write","onResize","geometry","proposeGeometry","cellHeight","_core","_renderCoordinator","dimensions","actualCellHeight","innerHeight","offsetTop","max","cols","resize","handleCheckBoxRegex","handleCheckBoxCaseSensitive","handleCheckBoxWholeWord","getSearchOptions","regex","wholeWord","caseSensitive","searchOptions","incremental","findPrevious","findNext","receiveBuffer","displayRef","ws","webLinksInit","setOption","selection","attachCustomKeyEventHandler","terminal","focus","Sockette","timeout","maxAttempts","onopen","send","JSON","stringify","onmessage","onreconnect","onmaximum","onclose","onerror","OpenApiPage","SwaggerUi","dom_id","spec","presets","apis","App","menuCollapsed","showErrors","onNavToggleClick","onNavClick","renderContent","allRoutes","globalRoute","Route","noTenantPrefix","routePrefix","component","exact","defaultRoute","Redirect","from","Switch","renderErrors","ToastNotificationList","TimedToastNotification","onDismiss","renderConfigErrors","Notification","seen","Content","Message","Info","leftText","rightText","NotificationDrawer","minWidth","PanelHeading","PanelTitle","PanelCounter","PanelCollapse","collapseIn","PanelBody","activeItem","find","tenantName","matchPath","tenantAction","setTenantAction","Masthead","iconImg","logo","navToggle","thin","renderMenu","Toggle","hasUnreadMessages","rel","withRouter","shouldFetchInfo","ReactDOM","render","basename","URL","getElementById","REACT_APP_ENABLE_SERVICE_WORKER","unregister","origin","fetch","headers","reload","checkValidServiceWorker","registerServiceWorker","module","exports"],"mappings":"iRAiBA,SAASA,EAAgBC,GAavB,IAAIC,GAOJA,GALEA,EADED,GAGQE,OAAOC,SAASC,MAGVC,QAAQ,MAAO,KAAKA,QAAQ,WAAY,MAG9CC,SAAS,OACnBL,EAAUA,EAAQM,MAAM,EAAGN,EAAQO,YAAY,OAG7CP,EAAQK,SAAS,QACnBL,EAAUA,EAAQM,MAAM,EAAGN,EAAQO,YAAY,MAAQ,IA0BzD,MAtBe,CACb,UACA,aACA,QACA,YACA,WACA,YAEKC,SAAQ,SAAAC,GACTT,EAAQK,SAASI,KACnBT,EAAUA,EAAQM,MAAM,EAAGN,EAAQO,YAAYE,GAAQ,OAKvDT,EAAQK,SAAS,SACnBL,EAAUA,EAAQM,MAAM,EAAGN,EAAQO,YAAY,OAAS,IAEpDP,EAAQU,SAAS,OACrBV,GAAoB,KAGfA,EAwBT,IAAMW,EArBN,WAEE,IACIA,EADEC,EAAWC,mHAAYC,mBAiB7B,OAZEH,EAFEC,GAKOd,IAAoB,QAElBY,SAAS,OACpBC,GAAkB,KAEdA,EAAOD,SAAS,WACpBC,GAAkB,QAGbA,EAEMI,GCnFf,IAAMC,EAAcC,QACW,cAA7BhB,OAAOC,SAASgB,UAEe,UAA7BjB,OAAOC,SAASgB,UAEhBjB,OAAOC,SAASgB,SAASC,MACvB,2DA4CN,SAASC,EAAiBC,GACxBC,UAAUC,cACPC,SAASH,GACTI,MAAK,SAAAC,GACJA,EAAaC,cAAgB,WAC3B,IAAMC,EAAmBF,EAAaG,WACtCD,EAAiBE,cAAgB,WACA,cAA3BF,EAAiBG,QACfT,UAAUC,cAAcS,WAK1BC,QAAQC,IAAI,6CAKZD,QAAQC,IAAI,4CAMrBC,OAAM,SAAAC,GACLH,QAAQG,MAAM,4CAA6CA,MCvE1D,IAkBDC,EAAY,SAAZA,IAAY,OAAM,SAAAC,GAEtB,OADAA,EAfqC,CACrCC,KALgC,uBF2FzBC,IAAMC,IAAI9B,EAAS,QEtEvBc,MAAK,SAAAiB,GAAQ,OAAIJ,EAbmB,CACvCC,KARgC,qBAShCI,OAW8CD,EAASE,KAX1CC,KAAKF,YAYfR,OAAM,SAAAC,GACLE,EAVgB,SAAAF,GAAK,MAAK,CAC9BG,KAZgC,kBAahCH,SAQaU,CAAcV,IACvBW,YAAW,WAAOT,EAASD,OAAe,U,kBCL1CW,EAAc,SAACL,EAAQM,GAAT,OAAsB,SAAAX,GAExC,OADAA,EAhBkC,CAClCC,KALkC,yBHyGpC,SAA4BW,EAAWD,GACrC,OAAOT,IAAMC,IAAI9B,EAASuC,EAAY,iBAAmBD,GGrFlDE,CAAsBR,EAAOO,UAAWD,GAC5CxB,MAAK,SAAAiB,GAAQ,OAAIJ,EAdgB,CACpCC,KARkC,uBASlCa,OAY2CV,EAASE,KAXpDS,WAAYC,KAAKC,WAYdpB,OAAM,SAAAC,GAAK,OAAIE,EATC,SAAAF,GAAK,MAAK,CAC7BG,KAb+B,oBAc/BH,SAO2BoB,CAAapB,SAc7BqB,EAAsB,SAACd,EAAQS,EAAQM,GAAjB,OAA2B,SAC5DpB,EAAUqB,GACR,OAAID,GAbkB,SAAA3B,GACxB,IAAMqB,EAASrB,EAAMqB,OACrB,OAAKA,IAGDA,EAAOQ,WAQIC,CAAkBF,KACtBrB,EAASU,EAAYL,EAAQS,IAE/BU,QAAQC,Y,iBCxCfC,EAAU,EAQDC,EAAc,SAAA7B,GACzB,IAAM8B,EAAI,CACRnE,IAAMqC,GAASA,EAAM+B,SAAW/B,EAAM+B,QAAQC,aAAgBhC,EAAMrC,KAUtE,OARIqC,EAAMM,UACRwB,EAAEG,KAAOjC,EAAMM,SAAS4B,WACxBJ,EAAEK,OAASnC,EAAMM,SAAS6B,SAE1BL,EAAEK,OAAS,kHAEXL,EAAEG,KAAOjC,EAAMoC,SAhBK,SAAApC,GAAK,MAAK,CAChCG,KAPuB,YAQvBkC,GAAIT,IACJ5B,SAeOsC,CAASR,I,gBCALS,EAAe,SAACC,EAASC,GAAV,MAAqB,CAC/CtC,KApBiC,sBAqBjCqC,QAASA,EACTC,MAAOA,EACPxB,WAAYC,KAAKC,QAoEZ,SAASuB,EAAiBC,EAAKC,EAAOC,EAAmBC,GAC9D,GAAID,GAAgC,MAAXF,EAAI,GAC3B,OAAO,EAET,GAAIG,EAAU,CACZ,IAAKA,EAAS7E,SAAS0E,GACrB,OAAO,EAET,GAAc,KAAVC,EACF,OAAO,EAGX,OAAO,EAOF,SAASG,EAAiBC,EAAKC,GACpC,GAAIA,EAAKC,OAASF,EAAIE,OACpB,OAAO,EACT,IAAK,IAAIC,EAAE,EAAGA,EAAIH,EAAIE,OAAQC,IAC5B,GAAIH,EAAIG,KAAOF,EAAKE,GAClB,OAAO,EAEX,OAAO,EAIT,IAAMC,EAAqB,SAACZ,EAASa,GACnC,IAAMC,EAAQ,GAEdD,EAAOjF,SAAQ,SAAAmF,GACbC,OAAOC,QAAQF,EAAMG,OAAOtF,SAAQ,YAAoB,IAAD,mBAAjBuF,EAAiB,KAAXD,EAAW,KAChDJ,EAAMK,IAITL,EAAMK,GAAMC,SAAWF,EAAME,QAC7BN,EAAMK,GAAME,UAAYH,EAAMG,SAC9BP,EAAMK,GAAMG,IAAMJ,EAAMI,KALxBR,EAAMK,GAAQD,EACdJ,EAAMK,GAAMI,OAAS,IAMnBL,EAAMG,SAAW,GAEnBN,EAAMS,MAAM5F,SAAQ,SAAA6F,GAClBA,EAAKC,MAAM9F,SAAQ,SAAA+F,GACjB,GAAIA,EAAKb,MAAMK,GACb,GAAIQ,EAAKb,MAAMK,GAAMS,SACjBD,EAAKb,MAAMK,GAAMS,QAAQlB,OAAS,EACpCiB,EAAKb,MAAMK,GAAMS,QAAQhG,SAAQ,SAAAiG,GAC3BA,EAAON,SACTM,EAAOC,KAAOH,EAAKA,KAAKG,KACxBhB,EAAMK,GAAMI,OAAOQ,KAAKF,YAGvB,GAAIF,EAAKb,MAAMK,GAAMa,IAAML,EAAKb,MAAMK,GAAMI,OAAQ,CACzD,IAAIM,EAASF,EAAKb,MAAMK,GACxBU,EAAOC,KAAOH,EAAKA,KAAKG,KACxBhB,EAAMK,GAAMI,OAAOQ,KAAKF,gBActC,IAAMI,EAAW,IAAIC,IAerB,OAdArB,EAAOjF,SAAQ,SAAAuG,GACbA,EAASX,MAAM5F,SAAQ,SAAA6F,GACrBA,EAAKC,MAAM9F,SAAQ,SAAA+F,GACjBX,OAAOC,QAAQU,EAAKb,OAAOlF,SAAQ,aAtGpC,SAASwG,EAAYT,GAC1B,GAAIA,EAAKJ,OACP,OAAO,EAET,GAAII,EAAKC,QAAS,CAAC,IAAD,gBACGD,EAAKC,SADR,IAChB,2BAAiC,CAC/B,GAAIQ,EAD2B,SAE7B,OAAO,GAHK,+BAOlB,OAAO,GA4FKA,CAD2C,uBAE7CH,EAASI,IAAIV,EAAKA,KAAK9B,IACvBoC,EAASI,IAAIZ,EAAKA,KAAK5B,IACvBoC,EAASI,IAAIF,EAASpB,MAAQoB,EAASG,oBAO1C,CACL3E,KA5KgC,6BA6KhCqC,QAASA,EACTc,MAAOA,EACPD,OAAQA,EACRoB,SAAUA,EACVxD,WAAYC,KAAKC,QAgBf4D,EAAuB,SAACvC,EAASwC,GACrC,IAAMF,EAAQ,GAad,OADAE,EAASC,KAAKC,KAAI,SAAAC,GAAC,OAVA,SAAbC,EAAcC,EAAMC,GACxB,IAAMjH,EAAOgH,EAAO,IAAMC,EAAOhB,KAE7B,aAAcgB,GAAUA,EAAOC,SACjCD,EAAOC,SAASL,KAAI,SAAAC,GAAC,OAAIC,EAAW/G,EAAM8G,MAE1CL,EAAMzG,GAAQiH,EAIKF,CAAW,GAAID,MAC/B,CACLhF,KA5MkC,+BA6MlCqC,QAASA,EACTwC,SAAU,CAACC,KAAMD,EAASC,KAAMH,MAAOA,EAC5BU,YAAaR,EAASQ,aACjCvE,WAAYC,KAAKC,QAIfsE,EAAsB,SAACzF,EAAOrC,GAElC,OADAqC,EAAMrC,IAAMA,EACL,CACLwC,KAtN+B,4BAuN/BH,UAIS0F,EAAa,SAACnF,EAAQiC,EAAS7C,EAAO2B,GAAzB,OAAmC,SAAApB,GAC3D,IAAMuC,EAAQ9C,EAAM8C,MAAMkD,OAAOnD,GACjC,OAAKlB,GAASmB,EACLf,QAAQC,WAEjBzB,EA9NiC,CACjCC,KAjBiC,wBL0GnC,SAAqBW,EAAW0B,GAC9B,OAAOpC,IAAMC,IAAI9B,EAASuC,EAAY,SAAW0B,GKoI1CzB,CAAeR,EAAOO,UAAW0B,GACrCnD,MAAK,SAAAiB,GACJJ,EAASqC,EAAaC,EAASlC,EAASE,UAEzCT,OAAM,SAAAC,GAAK,OAAIE,EAxNA,SAACF,EAAOrC,GAE1B,OADAqC,EAAMrC,IAAMA,EACL,CACLwC,KA5B4B,mBA6B5BH,SAoNyB4F,CAAY5F,EAAOO,EAAOO,kBAwB1C+E,EAAqB,SAACrD,EAAS7C,EAAO2B,GAAjB,OAA2B,SAAApB,GAC3D,IAAMuC,EAAQ9C,EAAM8C,MAAMkD,OAAOnD,GACjC,IAAKlB,GAASmB,EAAMuC,SAClB,OAAOtD,QAAQC,UAGjBzB,EA3EyC,CACzCC,KA3LoC,iCA+PmC,oBAOlDsC,EAAMqD,WAP4C,yBAO9DC,EAP8D,QAQrE,GAAI,aAAcA,GACd,SAAUA,EAASC,UACQ,kBAA3BD,EAASC,SAAS7F,KACpB,MAAM,CAAN,EAAOC,IAAMC,IAAI0F,EAASpI,KACvB0B,MAAK,SAAA2F,GACJ9E,EAAS6E,EAAqBvC,EAASwC,EAASxE,UAEjDT,OAAM,SAAAC,GAAK,OAAIE,EAASuF,EAAoBzF,EAAO+F,EAASpI,WARnE,2BAAsC,CAAC,IAAD,yCAPiC,8BAkBvEuC,EAASuF,EAAoB,wBAGlBQ,EAAqB,SAAC1F,EAAQiC,EAASlB,GAAlB,OAA4B,SAACpB,EAAUqB,GACvErB,EAASwF,EAAWnF,EAAQiC,EAASjB,IAAYD,IAC9CjC,MAAK,WACJa,EA7CmB,SAACsC,EAAS7C,EAAO2B,GAAjB,OAA2B,SAAApB,GAClD,IAAMuC,EAAQ9C,EAAM8C,MAAMkD,OAAOnD,GAC3B7E,EAAM8E,EAAMyD,QAAQC,OAAO,EAAG1D,EAAMyD,QAAQ/H,YAAY,KAAO,GACrE,OAAKmD,GAASmB,EAAMY,OACX3B,QAAQC,WAEjBzB,EAzNuC,CACvCC,KA5BkC,+BAqP3BC,IAAMC,IAAI1C,EAAM,sBACpB0B,MAAK,SAAAiB,GAAQ,OAAIJ,EAASkD,EAAmBZ,EAASlC,EAASE,UAC/DT,OAAM,SAAAC,GACL,IAAKA,EAAM+B,QACT,MAAM/B,EAGRI,IAAMC,IAAI1C,EAAM,mBACb0B,MAAK,SAAAiB,GAAQ,OAAIJ,EAASkD,EACzBZ,EAASlC,EAASE,aAEvBT,OAAM,SAAAC,GAAK,OAAIE,EA1EM,SAACF,EAAOrC,GAEhC,OADAqC,EAAMrC,IAAMA,EACL,CACLwC,KAvL6B,0BAwL7BH,SAsEyBoG,CAAkBpG,EAAOrC,SA2BvC0I,CAAiB7D,EAASjB,IAAYD,IAC/CpB,EAAS2F,EAAmBrD,EAASjB,IAAYD,SAoBjDgF,EAAgB,SAAC/F,EAAQgG,GAAT,OAAsB,SAAArG,GAE1C,OADAA,EAjBoC,CACpCC,KArSoC,4BLgHdW,EKsMGP,EAAOO,ULtMC0F,EKsMUD,ELrMpCnG,IAAMC,IAAI9B,EAASuC,EAAY,YAAc0F,IKsMjDnH,MAAK,SAAAiB,GACAA,EAASE,KAAKmF,QAChBrF,EAASE,KAAKmF,OAAOvH,SAAQ,SAAAqE,GAC3BvC,EAASqC,EAAaE,EAAMgE,KAAMhE,OAGtCvC,EArByB,SAACsG,EAAYD,GAAb,MAA2B,CACxDpG,KAxSoC,yBAySpCqG,WAAYA,EACZD,SAAUA,EACVtF,WAAYC,KAAKC,OAiBJuF,CAAgBH,EAAUjG,EAASE,UAE7CT,OAAM,SAAAC,GAAK,OAAIE,EAhBG,SAAAF,GAAK,MAAK,CAC/BG,KA9SoC,sBA+SpCH,SAc2B2G,CAAe3G,OL/M5C,IAAwBc,EAAW0F,IK6NtBI,EAAwB,SAACrG,EAAQiG,EAAYlF,GAArB,OAA+B,SAClEpB,EAAUqB,GACR,GAAID,GAboB,SAACkF,EAAY7G,GACvC,IAAM4G,EAAW5G,EAAM8C,MAAMoE,UAAUL,GACvC,OAAKD,IAGDA,EAAS/E,YACJ,GAOMsF,CAAoBN,EAAYjF,KAC3C,OAAOrB,EAASoG,EAAc/F,EAAQiG,MCjUtCO,EAAW,SAACxG,EAAQyG,GAAT,OAAqB,SAAA9G,GAEpC,OADAA,EAlB+B,CAC/BC,KAL+B,uBNsIdW,EM/GGP,EAAOO,UN+GCmG,EM/GUD,ENgH/B5G,IAAMC,IAAI9B,EAASuC,EAAY,OAASmG,IM/G5C5H,MAAK,SAAAiB,GAAQ,OAAIJ,EAhBI,SAACK,EAAQyG,EAASE,GAAlB,MAA4B,CACpD/G,KAR+B,oBAS/BI,OAAQA,EACRyG,QAASA,EACTG,IAAKD,EACLjG,WAAYC,KAAKC,OAWYiG,CAAW7G,EAAO+D,KAAM0C,EAAS1G,EAASE,UACpET,OAAM,SAAAC,GAAK,OAAIE,EATF,SAAAF,GAAK,MAAK,CAC1BG,KAf4B,iBAgB5BH,SAO2BqH,CAAUrH,ON6GvC,IAAmBc,EAAWmG,IM3FjBK,EAAmB,SAAC/G,EAAQyG,EAAS1F,GAAlB,OAA4B,SAC1DpB,EAAUqB,GACR,OAAID,GAjBe,SAACf,EAAQyG,EAASrH,GACvC,IAAM4H,EAAa5H,EAAMwH,IAAIK,KAAKjH,EAAO+D,MACzC,GAAIiD,EAAY,CACd,IAAMJ,EAAMI,EAAWP,GACvB,OAAKG,IAGDA,EAAI3F,YACC,GAIX,OAAO,EAKQiG,CAAelH,EAAQyG,EAASzF,KACpCrB,EAAS6G,EAASxG,EAAQyG,IAE5BtF,QAAQC,YC5Bb+F,EAAY,SAACnH,GAAD,OAAY,SAAAL,GAE5B,OADAA,EAjBgC,CAChCC,KALgC,wBPyIdW,EOnHGP,EAAOO,UPoHrBV,IAAMC,IAAI9B,EAASuC,EAAY,SOnHnCzB,MAAK,SAAAiB,GAAQ,OAAIJ,EAfK,SAACK,EAAQ2G,GAAT,MAAmB,CAC5C/G,KARgC,qBAShCI,OAAQA,EACRiH,KAAMN,EACNjG,WAAYC,KAAKC,OAWYwG,CAAYpH,EAAO+D,KAAMhE,EAASE,UAC5DT,OAAM,SAAAC,GAAK,OAAIE,EATD,SAAAF,GAAK,MAAK,CAC3BG,KAd6B,kBAe7BH,SAO2B4H,CAAW5H,OPiHxC,IAAoBc,IQrHd+G,EAAc,SAACtH,GAAD,OAAY,SAAAL,GAE9B,OADAA,EAjBkC,CAClCC,KALkC,0BR4IdW,EQtHGP,EAAOO,URuHvBV,IAAMC,IAAI9B,EAASuC,EAAY,WQtHnCzB,MAAK,SAAAiB,GAAQ,OAAIJ,EAfO,SAACK,EAAQ2G,GAAT,MAAmB,CAC9C/G,KARkC,uBASlCI,OAAQA,EACRuH,OAAQZ,EACRjG,WAAYC,KAAKC,OAWY4G,CAAcxH,EAAO+D,KAAMhE,EAASE,UAC9DT,OAAM,SAAAC,GAAK,OAAIE,EATC,SAAAF,GAAK,MAAK,CAC7BG,KAd+B,oBAe/BH,SAO2BgI,CAAahI,ORoH1C,IAAsBc,IS/HhBmH,EAAY,kDAEZC,EAAc,CAClBC,MAAO,EACPC,KAAM,EACNC,QAAS,EACTC,MAAO,EACPC,MAAO,EACPC,MAAO,EACPC,SAAU,GAGNC,EAAgB,IAAIC,OAAJ,YAbN,gEAaM,uBAAsCV,EAAtC,SAChBW,EAAmB,IAAID,OAAJ,YAfN,2DAeM,wCAA0DV,EAA1D,UA+BnBY,EAAgB,SAAC7I,EAAOrC,GAE5B,OADAqC,EAAMrC,IAAMA,EACL,CACLwC,KAxD8B,qBAyD9BH,UAIE8I,EAAe,SAACtG,EAASuG,EAAMpJ,EAAO2B,GAAvB,OAAiC,SAAApB,GACpD,IAAMuC,EAAQ9C,EAAM8C,MAAMkD,OAAOnD,GAC3BwG,EAAOvG,EAAMuC,SAASF,MAAM,IAAMiE,GAEnCC,GACH9I,EAAS2I,EAAc,OACzB,IAAMlL,EAAM8E,EAAMyD,QAAU6C,EAE5B,OAAKzH,GAAS3B,EAAMsJ,QAAQtL,MAAQA,GAGpCuC,EAtE4B,SAACvC,GAAD,MAAU,CACtCwC,KALmC,wBAMnCxC,IAAKA,GAoEIuL,IACa,eAAlBF,EAAKG,SACA/I,IAAMC,IAAI1C,EAAK,CAACyL,kBAAmB,KACvC/J,MAAK,SAAAiB,GAAQ,OAAIJ,EA7Bf,CACLC,KAhDiC,wBAiDjCK,KA2B4CF,EAASE,KAjDtC6I,MAAM,SAASnE,KAAI,SAACoE,EAAMC,GACzC,IAAIC,EACAC,EAAM,KAYV,OAVAD,EAAIZ,EAAiBc,KAAKJ,IAExBG,EAAMvB,EAAYsB,EAAE,KAEpBd,EAAcgB,KAAKJ,GACfE,IACFC,EAAMvB,EAAYsB,EAAE,MAIjB,CACLvH,KAAMqH,EACNxE,MAAOyE,EAAI,EACXI,SAAUF,MAMZxI,WAAYC,KAAKC,WA2BdpB,OAAM,SAAAC,GAAK,OAAIE,EAAS2I,EAAc7I,EAAOrC,YAElDuC,EAAS2I,EAAc,QARdnH,QAAQC,YAWNiI,EAAuB,SAACrJ,EAAQiC,EAASuG,EAAMzH,GAAxB,OAAkC,SAACpB,EAAUqB,GAC/ErB,EAASwF,EAAWnF,EAAQiC,EAASjB,IAAYD,IAC9CjC,MAAK,WACJa,EAAS2F,EAAmBrD,EAASjB,IAAYD,IAC9CjC,MAAK,WACJa,EAAS4I,EAAatG,EAASuG,EAAMxH,IAAYD,YCvErDuI,EAAa,SAACtJ,GAAD,OAAY,SAAAL,GAE7B,OADAA,EAhBiC,CACjCC,KALiC,yBV+IdW,EU1HGP,EAAOO,UV2HtBV,IAAMC,IAAI9B,EAASuC,EAAY,UU1HnCzB,MAAK,SAAAiB,GAAQ,OAAIJ,GAAsBK,EAAO+D,KAdJ,CAC7CnE,KARiC,sBASjC2J,MAYuDxJ,EAASE,KAXhES,WAAYC,KAAKC,YAYdpB,OAAM,SAAAC,GAAK,OAAIE,EATA,SAAAF,GAAK,MAAK,CAC5BG,KAb8B,mBAc9BH,SAO2B+J,CAAY/J,OVwHzC,IAAqBc,IUtGRkJ,EAAqB,SAACzJ,EAAQe,GAAT,OAAmB,SACnDpB,EAAUqB,GACR,GAAID,GAjBiB,SAACf,EAAQZ,GAChC,IAAMmK,EAAQnK,EAAMmK,MACpB,OAAKA,GAAgC,IAAvBA,EAAMA,MAAM5G,SAGtB4G,EAAMtI,YAGNN,KAAKC,MAAQ2I,EAAM7I,WAAa,IASrBgJ,CAAiB1J,EAAQgB,KACpC,OAAOrB,EAAS2J,EAAWtJ,M,kBCJ3B2J,EAAe,SAAfA,EAAgBC,GAAD,OAAgB,SAAAjK,GAEnC,OADAA,EApCwC,CACxCC,KALmC,0BX6F5BC,IAAMC,IAAI3C,IAAoB,gBWnDlC2B,MAAK,SAAAiB,GAAQ,OAAIJ,EAlCa,SAACkK,EAAWD,GAC7C,IAAM3J,EAAO6J,IAAKC,SAASF,GAC3B,GAAID,EAAY,CACd,IAAMI,EAAQ,GACd,IAAK,IAAIlM,KAAQmC,EAAK+J,MAEP,iBAATlM,IAIJmC,EAAK+J,MAAMlM,GAAMgC,IAAImK,WAAWC,OAAO,EAAG,GAC1CF,EAAMlM,EAAKL,QAAQ,wBAAyB,UAAYwC,EAAK+J,MAAMlM,IAErEmC,EAAK+J,MAAQA,EAOf,OALA/J,EAAKkK,QAAU,CAAC,CAEd/M,IAAKoD,EAAWoF,OAAO,EAAGpF,EAAWmC,OAAS,GAC9CyH,YAAa,sBAER,CACLxK,KA5BiC,wBA6BjCyK,QAASpK,GAYkBqK,CAAoBvK,EAASE,KAAM2J,OAC7DpK,OAAM,SAAAC,GACLE,EAVmB,SAAAF,GAAK,MAAK,CACjCG,KAjCmC,qBAkCnCH,SAQa8K,CAAiB9K,IAC1BW,YAAW,WAAOT,EAASgK,OAAkB,UActCa,EAAuB,SAACzJ,GAAD,OAAW,SAACpB,EAAUqB,GACxD,IAAM5B,EAAQ4B,IACd,GAAID,GAZqB,SAAAsJ,GACzB,OAAKA,EAAQA,UAGTA,EAAQpJ,WAQCwJ,CAAmBrL,EAAMiL,SACpC,OAAO1K,EAASgK,EAAavK,EAAMY,OAAO4J,eCXxCc,GAAe,SAAC1K,EAAQ2K,GAAT,OAAqB,SAAAhL,GAExC,OADAA,EAjDmC,CACnCC,KALmC,2BZgIdW,EY1EGP,EAAOO,UZ0ECqK,EY1EUD,EZ2EnC9K,IAAMC,IAAI9B,EAASuC,EAAY,WAAaqK,IY1EhD9L,MAAK,SAAAiB,GAAQ,OAAIJ,EA/CQ,SAACK,EAAQ4K,EAAaD,GAGlD,IACI3B,EADE6B,EAAc,GAuBpB,IArBAF,EAAQG,QAAQjN,SAAQ,SAACkN,EAAQ/B,GACD,OAA1B+B,EAAOC,iBAETH,EAAY7G,KAAKgF,GACjB+B,EAAOE,UAAUpN,SAAQ,SAAAqN,GACvB,IAAIC,EAAWR,EAAQG,QAAQ9B,EAAM,GAAGiC,UAAUG,QAChD,SAAA3C,GAAI,OAAIA,EAAK1E,OAASmH,EAAiBnH,QACjB,IAApBoH,EAASxI,OAEXgI,EAAQG,QAAQ9B,EAAM,GAAGiC,UAAUjH,KAAKkH,IAET,OAA3BC,EAAS,GAAGE,aACdF,EAAS,GAAGE,WAAaH,EAAiBG,YAE5CH,EAAiBjE,KAAKpJ,SAAQ,SAAA+I,GAC5BuE,EAAS,GAAGlE,KAAKjD,KAAK4C,cAM3BoC,EAAM6B,EAAYlI,OAAS,EAAGqG,GAAO,EAAGA,GAAO,EAClD2B,EAAQG,QAAQZ,OAAOW,EAAY7B,GAAM,GAG3C,MAAO,CACLpJ,KAtCiC,wBAuCjCI,OAAQA,EACR4K,YAAaA,EACbD,QAASA,EACTjK,WAAYC,KAAKC,OAYU0K,CACzBtL,EAAO+D,KAAM4G,EAAS5K,EAASE,UAChCT,OAAM,SAAAC,GAAK,OAAIE,EAVE,SAAAF,GAAK,MAAK,CAC9BG,KA9CgC,qBA+ChCH,SAQ2B8L,CAAc9L,OZuE3C,IAAuBc,EAAWqK,IYrDrBY,GAAuB,SAACxL,EAAQ2K,EAAS5J,GAAlB,OAA4B,SAC9DpB,EAAUqB,GACR,OAAID,GAjBmB,SAACf,EAAQ4K,EAAaxL,GAC/C,IAAMqM,EAAiBrM,EAAMuL,QAAQe,SAAS1L,EAAO+D,MACrD,GAAI0H,EAAgB,CAClB,IAAMd,EAAUc,EAAeb,GAC/B,OAAKD,IAGDA,EAAQ1J,YACH,GAIX,OAAO,EAKQ0K,CAAmB3L,EAAQ2K,EAAS3J,KACxCrB,EAAS+K,GAAa1K,EAAQ2K,IAEhCxJ,QAAQC,YC5DbwK,GAAgB,SAAC5L,GAAD,OAAY,SAAAL,GAEhC,OADAA,EAjBoC,CACpCC,KALoC,4BbmIdW,Ea7GGP,EAAOO,Ub8GzBV,IAAMC,IAAI9B,EAASuC,EAAY,aa7GnCzB,MAAK,SAAAiB,GAAQ,OAAIJ,EAfS,SAACK,EAAQ2G,GAAT,MAAmB,CAChD/G,KARoC,yBASpCI,OAAQA,EACR0L,SAAU/E,EACVjG,WAAYC,KAAKC,OAWYiL,CAAgB7L,EAAO+D,KAAMhE,EAASE,UAChET,OAAM,SAAAC,GAAK,OAAIE,EATG,SAAAF,GAAK,MAAK,CAC/BG,KAdiC,sBAejCH,SAO2BqM,CAAerM,Ob2G5C,IAAwBc,IcnIjB,IA0BDwL,GAAc,SAAC/L,GAAD,OAAY,SAAAL,GAE9B,OADAA,EAvBkC,CAClCC,KALkC,0BdsGdW,Ec1EGP,EAAOO,Ud2EvBV,IAAMC,IAAI9B,EAASuC,EAAY,Wc1EnCzB,MAAK,SAAAiB,GAAQ,OAAIJ,EArBgB,CACpCC,KARkC,uBASlCgC,OAmB2C7B,EAASE,KAlBpDS,WAAYC,KAAKC,WAmBdpB,OAAM,SAAAC,GAAK,OAAIE,EAhBC,SAAAF,GAAK,MAAK,CAC7BG,KAb+B,oBAc/BH,SAc2BuM,CAAavM,OdwE1C,IAAsBc,IenFhB0L,GAAe,kBAAM,SAAAtM,GAEzB,OADAA,EAhBmC,CACnCC,KALmC,0BfiG5BC,IAAMC,IAAI9B,EAAS,We3EvBc,MAAK,SAAAiB,GAAQ,OAAIJ,EAdiB,CACrCC,KARmC,wBASnCsM,QAY4CnM,EAASE,KAXrDS,WAAYC,KAAKC,WAYdpB,OAAM,SAAAC,GAAK,OAAIE,EATE,SAAAF,GAAK,MAAK,CAC9BG,KAbgC,qBAchCH,SAO2B0M,CAAc1M,SAc9B2M,GAAuB,SAACrL,GAAD,OAAW,SAACpB,EAAUqB,GACxD,GAAID,GAZqB,SAAA3B,GACzB,IAAM8M,EAAU9M,EAAM8M,QACtB,QAAIA,EAAQA,QAAQvJ,OAAS,KAGzBuJ,EAAQjL,WAOCoL,CAAmBrL,KAC9B,OAAOrB,EAASsM,QCzCb,SAASK,GAAmBvI,GACjC,MAAO,CACLnE,KAJwB,eAKxB2M,SAAUxI,GCHC,ICoBTyI,GAAW,CACftK,MCAa,WAMA,IANC9C,EAMF,uDANU,CACtB6B,YAAY,EACZwL,kBAAkB,EAClBC,oBAAoB,EACpBtH,OAAQ,GACRkB,UAAW,IACVqG,EAAW,uCACZ,OAAQA,EAAO/M,MACf,IdzBiC,sBc0BjC,IdtBoC,yBcuBlC,OAAOgN,IAAOxN,EAAO,CAACyN,OAAQ,CAAC5L,YAAY,KAC7C,Id3BiC,sBc8B/B,OAFA7B,EAAMgG,OAASwH,IACbxN,EAAMgG,OAAQ,CAACyH,OAAQ,CAAC,CAACF,EAAO1K,SAAU0K,EAAOzK,SAC5C0K,IAAOxN,EAAO,CAACyN,OAAQ,CAAC5L,YAAY,KAC7C,Id3BoC,yBc4BlC,OAAO2L,IAAOxN,EAAO,CAACyN,OAAQ,CAC5B5L,YAAY,EACZqF,UAAWsG,IAAOxN,EAAMkH,UAAW,CAACuG,OAAQ,CAC1C,CAACF,EAAO1G,YAAa0G,EAAO3G,eAElC,IdpC8B,mBcqC9B,IdjCoC,sBckClC,OAAO4G,IAAOxN,EAAO,CAACyN,OAAQ,CAAC5L,YAAY,KAE7C,IdlCkC,6BcmChC,OAAO2L,IAAOxN,EAAO,CAACyN,OAAQ,CAACJ,kBAAkB,KACnD,IdnCkC,6BcwChC,OAJArN,EAAMgG,OAASwH,IACbxN,EAAMgG,OAAQ,CAAC,CAACuH,EAAO1K,SAAU,CAAC4K,OAAQ,CAAC3I,SAAUyI,EAAOzI,SACjBnB,MAAO4J,EAAO5J,MACdD,OAAQ6J,EAAO7J,WACrD8J,IAAOxN,EAAO,CAACyN,OAAQ,CAACJ,kBAAkB,KACnD,IdxC+B,0BcyC7B,OAAOG,IAAOxN,EAAO,CAACyN,OAAQ,CAACJ,kBAAkB,KAEnD,IdzCoC,+Bc0ClC,OAAOG,IAAOxN,EAAO,CAACyN,OAAQ,CAACH,oBAAoB,KACrD,Id1CoC,+Bc6ClC,OAFAtN,EAAMgG,OAASwH,IACbxN,EAAMgG,OAAQ,CAAC,CAACuH,EAAO1K,SAAU,CAAC4K,OAAQ,CAACpI,SAAUkI,EAAOlI,aACvDmI,IAAOxN,EAAO,CAACyN,OAAQ,CAACH,oBAAoB,KACrD,Id7CiC,4Bc8C/B,OAAOE,IAAOxN,EAAO,CAACyN,OAAQ,CAACH,oBAAoB,KAErD,QACE,OAAOtN,ID7CTqB,OEhBa,WAGA,IAHCrB,EAGF,uDAHU,CACtB6B,YAAY,EACZR,OAAQ,MACPkM,EAAW,uCACZ,OAAQA,EAAO/M,MACb,IjBTgC,uBiBU9B,MAAO,CACLqB,YAAY,EACZR,OAAQrB,EAAMqB,QAElB,IjBbgC,uBiBc9B,MAAO,CACLQ,YAAY,EACZR,OAAQkM,EAAOlM,QAEnB,IjBjB6B,oBiBkB3B,MAAO,CACLQ,YAAY,EACZR,OAAQrB,EAAMqB,QAElB,QACE,OAAOrB,IFJX0N,aGvBa,WAAyB,IAAxB1N,EAAuB,uDAAf,GAAIuN,EAAW,uCACrC,OAAQA,EAAO/M,MACb,IAAK,6BACH,OAAO+M,EAAOI,OAChB,QACE,OAAO3N,IHmBX2N,OIda,WAAyB,IAAxB3N,EAAuB,uDAAf,GAAIuN,EAAW,uCAKrC,OAHIA,EAAOlN,OAASkN,EAAO/M,KAAKpB,MAAM,oBACpCmO,EAASrL,EAAYqL,EAAOlN,QAEtBkN,EAAO/M,MACb,IlBhBqB,YkBiBnB,OAAIR,EAAMgM,QAAO,SAAA3L,GAAK,OAChBA,EAAMrC,MAAQuP,EAAOlN,MAAMrC,KAC3BqC,EAAMmC,SAAW+K,EAAOlN,MAAMmC,UAASe,OAAS,EAC7CvD,GACTuN,EAAOlN,MAAMqC,GAAK6K,EAAO7K,GACzB6K,EAAOlN,MAAMuN,KAAOrM,KAAKC,MAClBgM,IAAOxN,EAAO,CAAC6N,MAAO,CAACN,EAAOlN,UACvC,IlBvBuB,ckBwBrB,OAAOmN,IAAOxN,EAAO,CAAC8N,QAAS,CAAC,CAAC9N,EAAM+N,QACrC/N,EAAMgM,QAAO,SAAA3C,GAAI,OAAKA,EAAK3G,KAAO6K,EAAO7K,MAAK,IAAK,MACvD,IlBzBwB,ekB0BtB,MAAO,GACT,QACE,OAAO1C,IJLXc,KKnBa,WAGA,IAHCd,EAGF,uDAHU,CACtB6B,YAAY,EACZjB,OAAQ,MACP2M,EAAW,uCACZ,OAAQA,EAAO/M,MACb,IrBT8B,qBqBU9B,IrBR8B,kBqBS5B,MAAO,CACLqB,YAAY,EACZjB,OAAQ,MAEZ,IrBd8B,qBqBe5B,MAAO,CACLiB,YAAY,EACZjB,OAAQ2M,EAAO3M,OACfoN,OAAO,GAEX,QACE,OAAOhO,ILEXwH,IMlBa,WAGA,IAHCxH,EAGF,uDAHU,CACtB6B,YAAY,EACZgG,KAAM,IACL0F,EAAW,uCACZ,OAAQA,EAAO/M,MACb,IlBX6B,oBkBY3B,MAAO,CACLqB,YAAY,EACZgG,KAAM7H,EAAM6H,MAEhB,IlBf6B,oBkBmB3B,OAHK7H,EAAM6H,KAAK0F,EAAO3M,UACrBZ,EAAM6H,KAAO2F,IAAOxN,EAAM6H,KAAM,CAAC4F,OAAQ,CAAC,CAACF,EAAO3M,QAAS,OAEtD,CACLiB,YAAY,EACZgG,KAAM2F,IAAOxN,EAAM6H,KAAM,CACvB,CAAC0F,EAAO3M,QAAS,CACf6M,OAAQ,CACN,CAACF,EAAOlG,SAAUkG,EAAO/F,SAKnC,IlB5B0B,iBkB6BxB,MAAO,CACL3F,YAAY,EACZgG,KAAM7H,EAAM6H,MAEhB,QACE,OAAO7H,INXX6H,KOnBa,WAGA,IAHC7H,EAGF,uDAHU,CACtB6B,YAAY,EACZgG,KAAM,IACL0F,EAAW,uCACZ,OAAQA,EAAO/M,MACb,IlBX8B,qBkBY5B,MAAO,CACLqB,YAAY,EACZgG,KAAM7H,EAAM6H,MAEhB,IlBf8B,qBkBgB5B,MAAO,CACLhG,YAAY,EACZgG,KAAM2F,IAAOxN,EAAM6H,KAAM,CAAC4F,OAAQ,CAAC,CAACF,EAAO3M,QAAS2M,EAAO1F,SAE/D,IlBnB2B,kBkBoBzB,MAAO,CACLhG,YAAY,EACZgG,KAAM7H,EAAM6H,MAEhB,QACE,OAAO7H,IPDXmI,OQpBa,WAGA,IAHCnI,EAGF,uDAHU,CACtB6B,YAAY,EACZsG,OAAQ,IACPoF,EAAW,uCACZ,OAAQA,EAAO/M,MACb,IlBXgC,uBkBY9B,MAAO,CACLqB,YAAY,EACZsG,OAAQnI,EAAMmI,QAElB,IlBfgC,uBkBgB9B,MAAO,CACLtG,YAAY,EACZsG,OAAQqF,IACNxN,EAAMmI,OAAQ,CAACsF,OAAQ,CAAC,CAACF,EAAO3M,QAAS2M,EAAOpF,WAEtD,IlBpB6B,oBkBqB3B,MAAO,CACLtG,YAAY,EACZsG,OAAQnI,EAAMmI,QAElB,QACE,OAAOnI,IRDXsJ,QSpBa,WAIA,IAJCtJ,EAIF,uDAJU,CACtB6B,YAAY,EACZ7D,IAAK,KACL6C,KAAM,MACL0M,EAAW,uCACZ,OAAQA,EAAO/M,MACb,IlBXiC,wBkBY/B,OAAOgN,IAAOxN,EAAO,CAACyN,OAAQ,CAAC5L,YAAY,EACZ7D,IAAKuP,EAAOvP,IACZ6C,KAAM,QACvC,IlBdiC,wBkBe/B,OAAO2M,IAAOxN,EAAO,CAACyN,OAAQ,CAAC5L,YAAY,EACZhB,KAAM0M,EAAO1M,QAC9C,IlBhB8B,qBkBiB5B,OAAO2M,IAAOxN,EAAO,CAACyN,OAAQ,CAAC5L,YAAY,EACZ7D,IAAK,KACL6C,KAAM,QACvC,QACE,OAAOb,ITGXmK,MUtBa,WAIA,IAJCnK,EAIF,uDAJU,CACtBsB,WAAY,EACZO,YAAY,EACZsI,MAAO,IACNoD,EAAW,uCACZ,OAAQA,EAAO/M,MACb,IlBZ+B,sBkBa7B,OAAOgN,IAAOxN,EAAO,CAACyN,OAAQ,CAAC5L,YAAY,KAC7C,IlBb+B,sBkBc7B,OAAO2L,IAAOxN,EAAO,CAACyN,OAAQ,CAC5B5L,YAAY,EACZsI,MAAOoD,EAAOpD,MACd7I,WAAYiM,EAAOjM,cAEvB,IlBlB4B,mBkBmB1B,OAAOkM,IAAOxN,EAAO,CAACyN,OAAQ,CAAC5L,YAAY,KAC7C,QACE,OAAO7B,IVMXiL,QWzBa,WAGA,IAHCjL,EAGF,uDAHU,CACtB6B,YAAY,EACZoJ,QAAS,MACRsC,EAAW,uCACZ,OAAQA,EAAO/M,MACb,IlBRiC,wBkBSjC,IlBPiC,qBkBQ/B,MAAO,CACLqB,YAAY,EACZjB,OAAQZ,EAAMiL,SAElB,IlBbiC,wBkBc/B,MAAO,CACLpJ,YAAY,EACZoJ,QAASsC,EAAOtC,SAEpB,QACE,OAAOjL,IXSXuL,QYxBa,WAGA,IAHCvL,EAGF,uDAHU,CACtB6B,YAAY,EACZyK,SAAU,IACTiB,EAAW,uCACZ,OAAQA,EAAO/M,MACb,IlBXiC,wBkBY/B,MAAO,CACLqB,YAAY,EACZyK,SAAUtM,EAAMsM,UAEpB,IlBfiC,wBkBmB/B,OAHKtM,EAAMsM,SAASiB,EAAO3M,UACzBZ,EAAMsM,SAAWkB,IAAOxN,EAAMsM,SAAU,CAACmB,OAAQ,CAAC,CAACF,EAAO3M,QAAS,OAE9D,CACLiB,YAAY,EACZyK,SAAUkB,IAAOxN,EAAMsM,SAAU,CAC/B,CAACiB,EAAO3M,QAAS,CACf6M,OAAQ,CACN,CAACF,EAAO/B,aAAc+B,EAAOhC,aAKvC,IlB5B8B,qBkB6B5B,MAAO,CACL1J,YAAY,EACZyK,SAAUtM,EAAMsM,UAEpB,QACE,OAAOtM,IZLXsM,SazBa,WAGA,IAHCtM,EAGF,uDAHU,CACtB6B,YAAY,EACZyK,SAAU,IACTiB,EAAW,uCACZ,OAAQA,EAAO/M,MACb,IlBXkC,yBkBYhC,MAAO,CACLqB,YAAY,EACZyK,SAAUtM,EAAMsM,UAEpB,IlBfkC,yBkBgBhC,MAAO,CACLzK,YAAY,EACZyK,SAAUkB,IACRxN,EAAMsM,SAAU,CAACmB,OAAQ,CAAC,CAACF,EAAO3M,QAAS2M,EAAOjB,aAExD,IlBpB+B,sBkBqB7B,MAAO,CACLzK,YAAY,EACZyK,SAAUtM,EAAMsM,UAEpB,QACE,OAAOtM,IbIXwC,Oc3Ba,WAGA,IAHCxC,EAGF,uDAHU,CACtB6B,YAAY,EACZW,OAAQ,MACP+K,EAAW,uCACZ,OAAQA,EAAO/M,MACb,ICZsB,aDapB,MAAO,CACLqB,YAAY,EACZW,OAAQ,MAEZ,IlBfgC,uBkBgB9B,MAAO,CACLX,YAAY,EACZW,OAAQxC,EAAMwC,QAElB,IlBnBgC,uBkBoB9B,MAAO,CACLX,YAAY,EACZW,OAAQ+K,EAAO/K,QAEnB,IlBvB6B,oBkBwB3B,MAAO,CACLX,YAAY,EACZW,OAAQxC,EAAMwC,QAElB,QACE,OAAOxC,IdEXY,OgBjCa,WAAmC,IAAlCZ,EAAiC,uDAAzB,CAAC2E,KAAM,MAAO4I,EAAW,uCAC/C,OAAQA,EAAO/M,MACb,IDJsB,aCKpB,OAAO+M,EAAO3M,OAChB,QACE,OAAOZ,IhB6BX8M,QiB9Ba,WAGA,IAHC9M,EAGF,uDAHU,CACtB6B,YAAY,EACZiL,QAAS,IACRS,EAAW,uCACZ,OAAQA,EAAO/M,MACb,IpBTiC,wBoBU/B,MAAO,CACLqB,YAAY,EACZiL,QAAS9M,EAAM8M,SAEnB,IpBbiC,wBoBc/B,MAAO,CACLjL,YAAY,EACZiL,QAASS,EAAOT,SAEpB,IpBjB8B,qBoBkB5B,MAAO,CACLjL,YAAY,EACZiL,QAAS9M,EAAM8M,SAEnB,QACE,OAAO9M,IjBUXmN,SDrCa,WAA4B,IAA3BnN,EAA0B,uDAAlB,MAAOuN,EAAW,uCACtC,OAAQA,EAAO/M,MACb,IDJsB,eCKpB,OAAO+M,EAAOJ,SAChB,QACE,OAAOnN,KCmCAiO,eAAgBb,IkBjChBc,GAFDC,YAAYC,GAAaC,YAAgBC,M,0KCuBxCC,G,+MAnBbvO,MAAQ,CACNwO,UAAU,G,mEAIVC,KAAKC,SAAS,CACZF,UAAU,M,+BAKZ,OAAIC,KAAKzO,MAAMwO,SACN,qDAGFC,KAAKE,MAAM/I,a,GApBMgJ,IAAMC,W,wCCE5BC,G,+MAKJ9O,MAAQ,CACN+O,YAAaC,KAAOC,GAAGC,QAAQ3J,KAAI,SAAA8D,GAAI,MAAK,CAACpG,MAAOoG,EAAM8F,MAAO9F,MACjE+F,aAAc,CAACnM,MAAO,MAAOkM,MAAO,Q,EAOtCE,aAAe,SAACC,GACd,IAAML,EAAKK,EAAWrM,MAEtB,EAAKsM,UAAU,iBAAkBN,GACjC,EAAKO,YAAYP,I,EAOnBQ,UAAY,WAeV,IAAIR,EAdJ,SAAqBtK,EAAMyK,GAGzB,IAFA,IAAIM,EAAS/K,EAAO,IAChBgL,EAAKC,SAASC,OAAOnG,MAAM,KACtBlG,EAAI,EAAGA,EAAImM,EAAGpM,OAAQC,IAAK,CAElC,IADA,IAAIsM,EAAIH,EAAGnM,GACY,MAAhBsM,EAAEC,OAAO,IACdD,EAAIA,EAAEE,UAAU,EAAGF,EAAEvM,QAEvB,GAA0B,IAAtBuM,EAAE/B,QAAQ2B,GACZ,OAAOI,EAAEE,UAAUN,EAAOnM,OAAQuM,EAAEvM,QAGxC,OAAO6L,EAEAa,CAAW,iBAAkB,IAClChB,GACF,EAAKO,YAAYP,I,EAIrBO,YAAc,SAACP,GAEb,EAAKP,SAAS,CACZwB,aAAc,CAACjN,MAAOgM,EAAIE,MAAOF,KAGnC,IAAIkB,EAAiBjD,GAAkB+B,GACvC,EAAKN,MAAMpO,SAAS4P,I,mEA1CpB1B,KAAKgB,c,gCAUI9K,EAAM1B,GACf2M,SAASC,OAASlL,EAAO,IAAM1B,EAAQ,a,+BAmCvC,IAYMmN,EAAe,CACnBC,UAAW,iBAAO,CAChBC,QAAS,iBAEXC,QAAS,iBAAO,CACdC,MAAO,OACPF,QAAS,SAEXG,YAAa,iBAAO,CAClBC,MArBc,YAuBhBC,MAAO,SAACC,GAAD,oBAAC,gBACHA,GADE,IAELF,MAzBc,aA2BhBG,kBAAkB,SAACD,GAAD,oBAAC,gBACdA,GADa,IAEhBE,QAAS,SAEXC,mBAAoB,aACpBC,KAAM,SAACJ,GAAD,oBAAC,gBACFA,GADC,IAEJJ,MAAO,OACPS,MAAO,IACPC,IAAK,WAGT,OACI,yBAAKC,MAvCc,CACrBC,OAAQ,gBACRC,YAAa,YACbC,OAAQ,UACRhB,QAAS,UACTiB,SAAU,OACVT,QAAS,QAkCP,kBAACU,GAAA,EAAD,CAAML,MAhCS,CACjBL,QAAS,OA+BkBtQ,KAAK,KAAKmE,KAAK,YACxC,kBAAC,KAAD,CACI8M,OAAQrB,EACRnN,MAAOwL,KAAKzO,MAAMkQ,aAClBwB,SAAUjD,KAAKY,aACfsC,QAASlD,KAAKzO,MAAM+O,YACpB6C,iBAAkB,iBAAM,gBACxBC,YAAa,YACbzC,aAAcX,KAAKzO,MAAMoP,aACzB0C,MAAO,SAACA,GAAD,oBAAC,gBACHA,GADE,IAELC,aAAc,EACdC,QAAQ,6BACLF,EAAME,SADF,IAELC,SAAU,c,GAhHHrD,IAAMC,WAyHdqD,iBAAUpD,I,qBC7HlB,SAASqD,GAAyBvR,GACvC,OAAO,SAACL,GACN,OvCiGwBY,EuCjGCP,EAAOO,UvCkG3BV,IAAMC,IAAI9B,EAASuC,EAAY,kBuCjGjCzB,MAAK,SAAAiB,GACJJ,EAAS,CAACC,KAAM,6BACNmN,OAAQhN,EAASE,UAE5BT,OAAM,SAAAC,GACL,MAAOA,KvC2Ff,IAA4Bc,G,gJwC7FtBiR,I,2DAOJ,aAAgB,IAAD,+BACb,gBACKpS,MAAQ,CACXqS,UAAU,GAEZ,EAAKC,QAAU,EAAKA,QAAQC,KAAb,iBACf,EAAKC,SAAU,EANF,E,qDASNC,GAEP,GAAiB,IAAbA,EAAEC,OAAN,CAGA,IAAIL,EAAW5D,KAAKzO,MAAMqS,SACrB5D,KAAK+D,UACRH,EAAW5D,KAAKE,MAAMgE,gBAExBlE,KAAK+D,SAAU,EACf/D,KAAKC,SAAS,CAAE2D,UAAWA,O,2BAGvBO,GACJ,OAAO5D,YAAgB4D,GAAIC,OAAO,CAChCC,SAAU,iBACVC,QAAS,EACTC,SAAU,EACVC,WAAW,M,kCAIFL,GAEX,IAEIM,EADM3R,KAAKC,MACGoR,EACdpQ,EAAS,eACTF,EAAOmM,KAAK0E,KAAKD,GAMrB,OALIA,EAAS,MACX1Q,EAAS,cACA0Q,EAAS,OAClB1Q,EAAS,gBAEJ,wBAAM4Q,UAAW5Q,GAASF,K,mCAGrBkF,GACZ,IAAI9C,EAAS8C,EAAI9C,OAAS8C,EAAI9C,OAAO2O,cAAgB,KAcrD,OAbe,OAAX3O,IAGEA,EAFY,OAAZ8C,EAAIxJ,KACa,IAAfwJ,EAAI8L,OACG,UAEA,SAEa,OAAf9L,EAAI+L,QAAmB/L,EAAI+L,OAC3B,SAEA,eAGN7O,I,uCAGSrD,GAChB,IAAIH,EAAWG,EAAOqB,IAAM,KACxB8Q,EAActS,EAED,OAAbA,GAAqBG,EAAOgC,MAC9BmQ,EAAcnS,EAAOgC,KAEvB,IAAIoQ,EAAa,GACjB,GAAmB,OAAfpS,EAAOrD,IAAc,CACvB,IAAI0V,EAAWxS,EAAS9B,MAAM,6BAC1BsU,GACFF,EAAcE,EACdD,EAAa,IAAMC,EAAS,IACnB,iBAAiBpQ,KAAKpC,KAC/BuS,EAAavS,EAAS3C,MAAM,EAAG,SAEJ,KAApB2C,EAASqC,SAClBkQ,EAAavS,EAAS3C,MAAM,EAAG,IAEjC,OACE,6BACE,qBAAGH,KAAMiD,EAAOrD,KACE,KAAfyV,EACC,wBAAME,MAAOH,GAAcC,GAAsBD,M,wCAKxCnS,GAAS,IAAD,OACrBuS,EAAaC,KAAKC,MAAM,IAAMzS,EAAOwG,KAAKtE,QAC9C,OACE,uBAAK6P,UAAU,qCACZ/R,EAAOwG,KAAKtC,KAAI,SAACiC,EAAKoC,GACrB,IAAIlF,EAAS,EAAKqP,aAAavM,GAC/B,GAAe,WAAX9C,EAAqB,CACvB,IAAI0O,EAAY,GAChB,OAAQ1O,GACN,IAAK,UACH0O,EAAY,wBACZ,MACF,IAAK,OACL,IAAK,UACHA,EAAY,uBACZ,MACF,IAAK,WACL,IAAK,cACL,IAAK,eACL,IAAK,eACHA,EAAY,wBACZ,MACF,IAAK,SACL,IAAK,UACHA,EAAY,qBAKhB,OAAO,uBAAKA,UAAW,eAAiBA,EACtCpQ,IAAK4G,EACL+J,MAAOnM,EAAI7C,KACXwM,MAAO,CAACX,MAAOoD,EAAa,OAE9B,MAAO,S,kCAOJvS,GACX,IAAI2S,EAMJ,OAJEA,EAD4B,OAA1B3S,EAAO4S,eACO,UAEAxF,KAAK0E,KAAK9R,EAAO4S,gBAGjC,gBAAC,WAAD,KACE,yBAAON,MAAM,iBAAiBP,UAAU,QACrCY,GAEH,2BACA,yBAAOL,MAAM,eAAeP,UAAU,QACnC3E,KAAKyF,YAAY7S,EAAO8S,kB,2CAMXC,EAAaJ,GACjC,IAGIZ,EAHAiB,EAAyBD,GAAeA,EACAJ,GADtB,IAIlBM,EAAgBD,EAChBV,EAAQ,GACRY,EAAYP,EAchB,OAbIQ,OAAOC,MAAMJ,KACfC,EAAgB,IAChBD,EAAkB,EAClBjB,EAAY,8CAEI,OAAdmB,IACFZ,EAAQ,6BAA+B3E,YAAgBuF,GAAW1B,OAAO,CACvEC,SAAU,6CACVC,QAAS,EACTC,SAAU,MAKZ,uBAAKI,UAAU,2BACTO,MAAOA,GACX,uBAAKP,UAAW,gBAAkBA,EAChCsB,KAAK,cACLC,gBAAeN,EACfO,gBAAe,EACfC,gBAAe,IACf1D,MAAO,CAAC,MAASmD,EAAgB,U,2CAMnB5P,GACpB,IAAI0O,EACJ,OAAQ1O,GACN,IAAK,UACH0O,EAAY,gBACZ,MACF,IAAK,UACHA,EAAY,eACZ,MACF,IAAK,WACL,IAAK,cACL,IAAK,eACL,IAAK,eACHA,EAAY,gBACZ,MACF,IAAK,SACL,IAAK,UACHA,EAAY,aACZ,MAEF,QACEA,EAAY,gBAGhB,OACE,wBAAMA,UAAW,yBAA2BA,GAAY1O,K,gCAIjD8C,GAAM,IACP5G,EAAW6N,KAAKE,MAAhB/N,OACJkU,EAAWtN,EAAI7C,KACf6C,EAAIuN,MAAQ,IACdD,EAAWA,EAAW,KAAOtN,EAAIuN,MAAQ,cAE3C,IAgBIC,EAhBArQ,EAAO,GACX,GAAmB,OAAf6C,EAAI9C,OACNC,EAAO,qBAAGyO,UAAU,gBAAgBhV,KAAMoJ,EAAIyN,YAAaH,QACtD,GAAgB,OAAZtN,EAAIxJ,IAAc,CAC3B,IAAIA,EAAMwJ,EAAIxJ,IACd,GAAIwJ,EAAIxJ,IAAIoB,MAAM,WAAY,CAC5B,IAAM8V,EACJtU,EAAOuU,WAAa,IAAM3N,EAAIxJ,IAEhC2G,EAAO,gBAACyQ,GAAA,EAAD,CAAMhC,UAAU,gBAAgB8B,GAAIA,GAAKJ,QAEhDnQ,EAAO,qBAAGyO,UAAU,gBAAgBhV,KAAMJ,GAAM8W,QAGlDnQ,EAAO,wBAAMyO,UAAU,iBAAiB0B,GAG1C,IAAIpQ,EAAS+J,KAAKsF,aAAavM,GAQ/B,OANEwN,EADa,gBAAXtQ,EACU+J,KAAK4G,qBACf7N,EAAI8N,aAAc9N,EAAIyM,gBAEZxF,KAAK8G,qBAAqB7Q,GAItC,4BACGC,EACAqQ,GACe,IAAfxN,EAAIgO,OACH,yBAAOpC,UAAU,wBAAjB,iBAAiE,GACnE,uBAAKjC,MAAO,CAACsE,MAAO,a,oCAIX5N,GAAO,IAAD,OACnB,OACE,sBAAIuL,UAAU,iCACXvL,EAAKtC,KAAI,SAACiC,EAAKoC,GAAN,OACR,sBAAI5G,IAAK4G,EAAKwJ,UAAU,mCACrB,EAAKsC,UAAUlO,U,+BAMf,IACD6K,EAAa5D,KAAKzO,MAAlBqS,SADA,EAE2B5D,KAAKE,MAAhCtN,EAFA,EAEAA,OACJsU,EAHI,EAEQhD,eAEZlE,KAAK+D,UACPmD,EAAStD,GAEX,IAAMuD,EACJ,uBAAKxC,UAAU,mCACb,uBAAKA,UAAU,qCACVd,QAAS7D,KAAK6D,SACjB,uBAAKc,UAAU,OACb,uBAAKA,UAAU,YACb,wBAAMA,UAAU,kBAAkB/R,EAAOkK,SACzC,uBAAK6H,UAAU,OACb,uBAAKA,UAAU,YACZ3E,KAAKoH,iBAAiBxU,IAEzB,uBAAK+R,UAAU,YACZ3E,KAAKqH,kBAAkBzU,OAIb,IAAhBA,EAAO0U,KACN,uBAAK3C,UAAU,uBACZ3E,KAAKuH,YAAY3U,IAElB,KAGPsU,EAASlH,KAAKwH,cAAc5U,EAAOwG,MAAQ,IAGhD,OACE,gBAAC,WAAD,KACG+N,O,GAvTiBhH,cA6TXsD,gBAAQ,SAAAlS,GAAK,MAAK,CAACY,OAAQZ,EAAMY,UAAjCsR,CAA2CE,IC3TpD8D,G,mLAQc7U,GAChB,IAAI8U,EAAY,mBACZC,EAAY,aAChB,IAAsB,IAAlB/U,EAAOgV,OACTF,EAAY,wBACZC,EAAY,2DAEP,IAAoB,IAAhB/U,EAAO0U,KAChBI,EAAa,qBACbC,EAAY,6CACP,GAAI/U,EAAOiV,iBACPjV,EAAOiV,gBAAgB/S,OAAS,EAAG,CAC5C,IAAIgT,EAASlV,EAAOiV,gBAAgBE,KAAK,MACzCJ,EAAY,mBAAqBG,EAE/BJ,EADEI,EAAOnX,MAAM,kBACH,yDAEA,+BAGhB,IAAMqX,EACF,wBACErD,UAAW,qBAAuB+C,EAClCxC,MAAOyC,IAEb,OAAI/U,EAAO0U,KAEP,gBAACX,GAAA,EAAD,CAAMF,GAAIzG,KAAKE,MAAM/N,OAAOuU,WAAa,kBAAoB9T,EAAOqB,IACjE+T,GAIEA,I,oCAIIpV,EAAQmC,GACrB,IAAIkT,EAAQC,KAKZ,OAJItV,EAAOuV,eAAe7I,QAAQvK,KAAOnC,EAAOuV,eAAerT,OAAS,IAEtEmT,EAAQG,MAEH,uBAAKC,IAAI,OAAOC,IAAKL,EAAOvF,MAAO,CAAC6F,cAAe,gB,+BAGjD,IAGLxT,EAHI,EAC4BiL,KAAKE,MAAjCtN,EADA,EACAA,OAAQ4V,EADR,EACQA,MAAO5E,EADf,EACeA,SACnB6E,EAAM,GAEV,IAAK1T,EAAI,EAAGA,EAAIyT,EAAME,cAAe3T,IAAK,CACxC,IAAI4P,EAAY,GACZ5P,EAAInC,EAAO+V,MAAM7T,QAA8B,OAApBlC,EAAO+V,MAAM5T,KAC1C4P,EAAY,yBAEd8D,EAAItS,KACF,sBAAI5B,IAAKQ,EAAG4P,UAAW,kBAAoBA,GACxC5P,IAAMnC,EAAOgW,YAAc5I,KAAK6I,iBAAiBjW,GAAU,IACrB,IAAtCA,EAAOuV,eAAe7I,QAAQvK,GAC7BiL,KAAK8I,cAAclW,EAAQmC,GAAM,KAGzC,IAAIgU,EAAc,IAAM,GAAKP,EAAME,cAQnC,OAPAD,EAAItS,KACF,sBAAI5B,IAAKQ,EAAI,EACX4P,UAAU,mBACVjC,MAAO,CAACX,MAAOgH,EAAc,OAC7B,gBAAC,GAAD,CAAanW,OAAQA,EAAQsR,eAAgBN,MAI/C,yBAAOe,UAAU,kBAAkBjC,MAAO,CAACsG,UAAW,gBACpD,6BACE,0BAAKP,S,GAhFMtI,aAuFNsD,gBAAQ,SAAAlS,GAAK,MAAK,CAACY,OAAQZ,EAAMY,UAAjCsR,CAA2CgE,IC1D3CwB,G,2KA1BF,IAAD,EAC8BjJ,KAAKE,MAAnCsI,EADA,EACAA,MAAOlL,EADP,EACOA,SAAUsG,EADjB,EACiBA,SACrBsF,EAAYV,EAAMtS,KAClBgT,EAAUpU,OAAS,KACrBoU,EAAYA,EAAUnR,OAAO,EAAG,IAAM,OAExC,IAAIoR,EAAc,GAYlB,OAXAX,EAAMY,MAAMpZ,SAAQ,SAACqZ,EAASC,GAC5BD,EAAQrZ,SAAQ,SAAC4C,EAAQuI,GACvBgO,EAAYhT,KACV,gBAAC,GAAD,CACEvD,OAAQA,EACR4V,MAAOA,EACP5E,SAAUA,EACVrP,IAAK+U,EAAUC,WAAapO,WAKlC,uBAAKwJ,UAAU,eAAe6E,qBAAoBlM,GAChD,mCAAU,wBAAM4H,MAAOsD,EAAMtS,MAAOgT,IACnCC,O,GA5BiBhJ,aC4HXsJ,G,6KApHDnM,GACV,IAAIoM,EAAQ,EACRC,EAAyB,EAyD7B,OAxDArM,EAASsM,cAAc5Z,SAAQ,SAAA6Z,GAC7B,IAAIhT,EAAO,GACPiT,EAAiB,EACjBT,EAAU,GACVU,EAAiB,EACrBF,EAAYT,MAAMpZ,SAAQ,SAAAga,GACxBA,EAAKha,SAAQ,SAAC4C,EAAQqX,GACpBZ,EAAQzW,EAAOqB,IAAMrB,EACrBA,EAAOsX,eAAiBD,QAI5BJ,EAAYxR,KAAOjD,OAAO+U,KAAKd,GAAStB,KAAK,KAC7C8B,EAAYT,MAAMpZ,SAAQ,SAAAga,GACxBA,EAAKha,SAAQ,SAAA4C,IACS,IAAhBA,EAAO0U,OACToC,GAAS,GAEX,IAAIvO,EAAMtE,EAAKyI,QAAQ1M,EAAOqB,IAC9B,GAAIkH,GAAO,EAIT,IAHAvI,EAAOgW,YAAczN,EAErBtE,EAAKsE,GAAO,KACqB,OAA1BtE,EAAKA,EAAK/B,OAAS,IACxB+B,EAAKuT,WAGPxX,EAAOgW,YAAc,EAEvBhW,EAAOuV,eAAiB,GACxBvV,EAAO+V,MAAQ,GACsB,qBAAzB/V,EAAOyX,eACjBzX,EAAOyX,aAAe,IAExBzX,EAAOyX,aAAaC,MAAK,SAAUC,EAAGC,GACpC,OAAQnB,EAAQmB,GAAGN,eAAiBb,EAAQkB,GAAGL,kBAEjDtX,EAAOyX,aAAara,SAAQ,SAAAiE,GAC1B4C,EAAKV,KAAKlC,GACN4C,EAAK/B,OAASiV,GAAkBA,EAAiB,GACnDnX,EAAOuV,eAAehS,KAAKU,EAAK/B,OAAS,MAGzC+B,EAAK/B,OAASgV,IAChBA,EAAiBjT,EAAK/B,QAEpB+B,EAAK/B,OAAS6U,IAChBA,EAAyB9S,EAAK/B,QAEhClC,EAAO+V,MAAQ9R,EAAK/G,MAAM,GAC1Bia,EAAiBlT,EAAK/B,aAG1B+U,EAAYnB,cAAgBoB,KAE9BxM,EAASoL,cAAgBiB,EAClBD,I,kCAGGlB,EAAOjL,GACjB,IAAIkN,GAAQ,EACRC,EAAUnN,EAAO3N,QAAQ,MAAO,KAAKqL,MAAM,KAmB/C,OAlBAuN,EAAMY,MAAMpZ,SAAQ,SAAAqZ,GAClBA,EAAQrZ,SAAQ,SAAA4C,GACd8X,EAAQ1a,SAAQ,SAAA2a,GACVA,IACC/X,EAAOkK,UAAqD,IAA1ClK,EAAOkK,QAAQwC,QAAQqL,IACzC/X,EAAOqB,KAA2C,IAArCrB,EAAOqB,GAAGqL,QAAQqL,MAClCF,GAAQ,YAYTA,I,+BAGE,IAAD,SAC+BzK,KAAKE,MAApC5C,EADA,EACAA,SAAUC,EADV,EACUA,OAAQqG,EADlB,EACkBA,SACpB8F,EAAQ1J,KAAK4K,WAAWtN,GAC9B,OACE,uBAAKqH,UAAU,mCACb,uBAAKA,UAAU,wBACb,0BAAKrH,EAASpH,KAAd,IAAoB,gBAAC2U,GAAA,EAAD,KAAQnB,IAC3BpM,EAASf,YACR,6BACE,yBAAIe,EAASf,YAAYtB,MAAM,gBACrB,IAEfqC,EAASsM,cAAcrM,QAAO,SAAA3C,GAAI,OAAIA,EAAKwO,MAAMtU,OAAS,KACzDyI,QAAO,SAAA3C,GAAI,OAAM2C,IACmB,IAAnCA,EAAO+B,QAAQhC,EAASpH,OACtB,EAAK4U,YAAYlQ,EAAM2C,MAEzBzG,KAAI,SAAA+S,GAAW,OACd,gBAAC,GAAD,CACErB,MAAOqB,EACPjG,SAAUA,EACVtG,SAAUA,EAASpH,KACnB3B,IAAKsV,EAAYxR,e,GAnHR8H,a,UCmCR4K,G,sLAzBP/K,KAAKE,MAAM/N,OAAO+D,MACpB8J,KAAKgL,e,yCAIWC,GACdjL,KAAKE,MAAM/N,OAAO+D,OAAS+U,EAAU9Y,OAAO+D,MAC9C8J,KAAKgL,e,sCAIS,IAAD,OACPE,EAAelL,KAAKE,MAApBgL,WACR,OACE,gBAACC,GAAA,EAAD,CAASC,QAAUF,EAAW9X,YAG5B,qBAAGuR,UAAU,UAAUd,QAAS,WAAO,EAAKmH,YAAW,KACrD,gBAACjI,GAAA,EAAD,CAAMhR,KAAK,KAAKmE,KAAK,YADvB,yB,GAxBkBiK,aCOpBkL,G,oDAwBJ,aAAgB,IAAD,+BACb,gBAhBF9Z,MAAQ,CACNgM,OAAQ,KACRqG,UAAU,EACV0H,YAAY,GAYC,EATfC,mBAAqB,WAC4B,YAA3CpK,SAAS,EAAKqK,0BAChB,EAAKC,SAAU,EACf,EAAKT,cAEL,EAAKS,SAAU,GAIJ,EA6BfT,WAAa,SAAC9X,G/BxBmB,IAACf,G+ByB5Be,GAAU,EAAKuY,SAAW,EAAKla,MAAM+Z,aACvC,EAAKpL,MAAMpO,U/B1BmBK,E+B0BU,EAAK+N,MAAM/N,O/B1BV,SAACL,EAAUqB,GACxD,OAZwB,SAAA5B,GACxB,IAAMwC,EAASxC,EAAMwC,OACrB,OAAKA,IAGDA,EAAOX,WAOPsY,CAAkBvY,KACbrB,EAASoM,GAAY/L,IAEvBmB,QAAQC,a+BuBRtC,MAAK,WAAW,EAAKM,MAAM+Z,YAAc,EAAKG,UAC7C,EAAKE,MAAQpZ,WAAW,EAAKyY,WAAY,SAI3C,EAAKW,QACPC,aAAa,EAAKD,OAClB,EAAKA,MAAQ,OAvCF,EA2DfE,UAAY,SAACtO,GACX,EAAKA,OAAO/I,MAAQ+I,EACpB,EAAK0C,SAAS,CAAC1C,OAAQA,IACvB,EAAKuD,UAAU,qBAAsBvD,EAAQ9N,OAAOC,SAASoc,WA9DhD,EAiEfC,eAAiB,SAAC/H,GACG,KAAfA,EAAEgI,WACJ,EAAKH,UAAU7H,EAAEiI,OAAOzX,OACxBwP,EAAEkI,iBACFlI,EAAEiI,OAAOE,SArEE,EAyEfC,eAAiB,SAACpI,GAChB,EAAK/D,SAAS,CAAC2D,SAAUI,EAAEiI,OAAOI,UAClC,EAAKvL,UAAU,yBAA0BkD,EAAEiI,OAAOI,QAAS,MA3E9C,EA8EfrL,UAAY,WACV,SAASQ,EAAYtL,EAAMyK,GAGzB,IAFA,IAAIM,EAAS/K,EAAO,IAChBgL,EAAKC,SAASC,OAAOnG,MAAM,KACtBlG,EAAI,EAAGA,EAAImM,EAAGpM,OAAQC,IAAK,CAElC,IADA,IAAIsM,EAAIH,EAAGnM,GACY,MAAhBsM,EAAEC,OAAO,IACdD,EAAIA,EAAEE,UAAU,EAAGF,EAAEvM,QAEvB,GAA0B,IAAtBuM,EAAE/B,QAAQ2B,GACZ,OAAOI,EAAEE,UAAUN,EAAOnM,OAAQuM,EAAEvM,QAGxC,OAAO6L,EAET,IAAIpD,EAASiE,EAAW,qBAAsB,IAC1CoC,EAAWpC,EAAW,0BAA0B,GAC5B,kBAAboC,IACTA,EAAyB,SAAbA,GAGV,EAAK1D,MAAMxQ,SAAS4c,OACtB/O,EAAS,EAAK2C,MAAMxQ,SAAS4c,KAAKxc,MAAM,KAEtCyN,GAAUqG,IACZ,EAAK3D,SAAS,CACZ1C,OAAQA,EACRqG,SAAUA,KAtGd,EAAK2I,cAAe,EACpB,EAAKZ,MAAQ,KACb,EAAKF,SAAU,EAGgB,qBAApBtK,SAASqL,QAClB,EAAKC,sBAAwB,mBAC7B,EAAKjB,wBAA0B,mBACQ,qBAAvBrK,SAASuL,WACzB,EAAKD,sBAAwB,sBAC7B,EAAKjB,wBAA0B,sBACO,qBAAtBrK,SAASwL,UACzB,EAAKF,sBAAwB,qBAC7B,EAAKjB,wBAA0B,qBACW,qBAA1BrK,SAASyL,eACzB,EAAKH,sBAAwB,yBAC7B,EAAKjB,wBAA0B,yBAEjCrK,SAAS0L,iBACP,EAAKJ,sBAAuB,EAAKlB,oBAAoB,GAtB1C,E,uDAyBJrV,EAAM1B,EAAOsX,GACtB3K,SAASC,OAASlL,EAAO,IAAM1B,EAAQ,UAAYsX,I,0CAkBnD3K,SAAS+D,MAAQ,cACjBlF,KAAKgB,YACL,8E,6CAIIhB,KAAK2L,QACPC,aAAa5L,KAAK2L,OAClB3L,KAAK2L,MAAQ,MAEf3L,KAAKyL,SAAU,EACftK,SAAS2L,oBACP9M,KAAKyM,sBAAuBzM,KAAKuL,sB,yCAsDjBxX,GAClB,OACE,2CACiB,4BAAOA,EAAOgZ,oBACPhZ,EAAOgZ,oBAAoBjY,OAAS,KAF5D,eAIE,4BAAOf,EAAOiZ,uBACRjZ,EAAOiZ,uBAAuBlY,OAAS,KAL/C,0BAOE,4BAAOf,EAAOkZ,mBACRlZ,EAAOkZ,mBAAmBnY,OAAS,KAR3C,e,yCAcgBf,GAClB,OACE,gBAAC,WAAD,KACE,0CAAiB,4BAAOA,EAAOmZ,eAC9BnZ,EAAOoZ,kBACN,+CAAsB,4BACjB5M,OAAWxM,EAAOoZ,mBAAmB3M,GAAGR,KAAKE,MAAMxB,UAAU0F,OAAO,UAC1D,M,+BAKZ,IAAD,OACA8G,EAAelL,KAAKE,MAApBgL,WADA,EAEiClL,KAAKzO,MAAtC+Z,EAFA,EAEAA,WAAY/N,EAFZ,EAEYA,OAAQqG,EAFpB,EAEoBA,SACtB7P,EAASmX,EAAWnX,OACtBiM,KAAKzC,SAAWyC,KAAKuM,cAAgBhP,IACvCyC,KAAKuM,cAAe,EACpBvM,KAAKzC,OAAO/I,MAAQ+I,GAEtB,IAAM6P,EACJ,gBAACC,GAAA,EAAD,CAAMC,QAAM,GACV,gBAACC,GAAA,EAAD,CAAWC,UAAU,UACnB,gBAACC,GAAA,EAAD,CACE1b,KAAK,OACLqR,YAAY,yBACZzC,aAAcpD,EACdmQ,SAAU,SAAA3Y,GAAC,OAAI,EAAKwI,OAASxI,GAC7B4Y,WAAY3N,KAAK+L,iBAChBxO,GACH,gBAACkQ,GAAA,EAAYG,SAAb,KACE,wBACE/J,QAAS,WAAO,EAAKgI,UAAU,KAC/BnJ,MAAO,CAACG,OAAQ,UAAWgL,OAAQ,GAAIC,cAAe,SAEtD,gBAAC/K,GAAA,EAAD,CAAMhR,KAAK,KAAKmT,MAAM,eAAehP,KAAK,WAJ5C,UAUJ,gBAACqX,GAAA,EAAD,CAAWC,UAAU,UAArB,8BAEE,gBAACO,GAAA,EAAD,CACEC,eAAgBpK,EAChBX,SAAUjD,KAAKoM,mBAIvB,OACE,gBAAC,WAAD,KACE,uBAAKzH,UAAU,aAAajC,MAAO,CAACb,QAAS,SAC1C7B,KAAKiO,gBACN,gBAACF,GAAA,EAAD,CACEC,eAAgB1C,EAChBrI,SAAU,SAACe,GAAO,EAAK/D,SAAS,CAACqL,WAAYtH,EAAEiI,OAAOI,WACtD3J,MAAO,CAACwL,UAAW,QAHrB,gBAQDna,GAAUiM,KAAKmO,mBAAmBpa,GAClCqZ,EACD,uBAAKzI,UAAU,OACZ5Q,GAAUA,EAAOqJ,UAAUtG,KAAI,SAAA8D,GAAI,OAClC,gBAAC,GAAD,CACE0C,SAAU1C,EACV2C,OAAQA,EACRqG,SAAUA,EACVrP,IAAKqG,EAAK1E,WAIfnC,GAAUiM,KAAKoO,mBAAmBra,Q,GA/NlBgX,IAAnBM,GACGgD,UAAY,CACjB3e,SAAU4e,KAAUpX,OACpB/E,OAAQmc,KAAUpX,OAClBwH,SAAU4P,KAAUC,OACpBrD,WAAYoD,KAAUpX,OACtBpF,SAAUwc,KAAUE,MA8NT/K,oBAAQ,SAAAlS,GAAK,MAAK,CAC/BY,OAAQZ,EAAMY,OACduM,SAAUnN,EAAMmN,SAChBwM,WAAY3Z,EAAMwC,UAHL0P,CAIX4H,IChPEoD,G,+MAQJzD,WAAa,SAAC9X,GACZ,EAAKgN,MAAMpO,SAASmB,EAClB,EAAKiN,MAAM/N,OAAQ,EAAK+N,MAAMvP,MAAM+d,OAAOjc,SAAUS,IACpDjC,MAAK,WAAO,EAAK0a,MAAQpZ,WAAW,EAAKyY,WAAY,QAEpD,EAAKW,QACPC,aAAa,EAAKD,OAClB,EAAKA,MAAQ,O,mEAKfxK,SAAS+D,MAAQlF,KAAKE,MAAMvP,MAAM+d,OAAOjc,SAAW,iBACpD,8E,6CAIIuN,KAAK2L,QACPC,aAAa5L,KAAK2L,OAClB3L,KAAK2L,MAAQ,Q,+BAIN,IAEH/Y,EADiBoN,KAAKE,MAApBgL,WACkBtY,OAC1B,OACE,gBAAC,WAAD,KACE,uBAAK8P,MAAO,CAACiM,MAAO,UACjB3O,KAAKiO,iBACF,2BACLrb,GAAUA,EAAOkE,KAAI,SAAC8D,EAAMO,GAAP,OACpB,uBAAKwJ,UAAU,MAAMpQ,IAAK4G,GACxB,gBAAC,GAAD,CACE+I,gBAAgB,EAChBtR,OAAQgI,a,GA3CSmQ,IAAzB0D,GACGJ,UAAY,CACjB1d,MAAO2d,KAAUpX,OAAO0X,WACxBzc,OAAQmc,KAAUpX,OAClBgU,WAAYoD,KAAUpX,OACtBpF,SAAUwc,KAAUE,MA8CT/K,oBAAQ,SAAAlS,GAAK,MAAK,CAC/BY,OAAQZ,EAAMY,OACd+Y,WAAY3Z,EAAMqB,UAFL6Q,CAGXgL,I,sDCzDEI,G,2KAMO,IAAD,EACoB7O,KAAKE,MAAzB/N,EADA,EACAA,OAAQ2c,EADR,EACQA,QACVC,EAAO,GAIb,GAFAA,EAAK5Y,KAAK,CAACuK,MAAO,aAAclM,MAAOsa,EAAQE,aAE3CF,EAAQG,UAAUna,OAAS,EAAG,CAChC,IAAMoa,EACJ,sBAAIvK,UAAU,cACXmK,EAAQG,UAAUnY,KAAI,SAAC8D,EAAMO,GAAP,OACrB,sBAAIwJ,UAAU,kBAAkBpQ,IAAK4G,GAAMP,OAGjDmU,EAAK5Y,KAAK,CAACuK,MAAO,YAAalM,MAAO0a,IAwBxC,OArBAJ,EAAQ1R,UAAUpN,SAAQ,SAAAsN,GAGxB,IAAM6R,EACJ,gBAAC,WAAD,KACG7R,EAASE,YACR,yBAAG,yCAAH,IAA6BF,EAASE,WAAtC,KACF,sBAAImH,UAAU,cACXrH,EAASlE,KAAKtC,KAAI,SAAC8D,EAAMO,GAAP,OACjB,sBAAIwJ,UAAU,kBAAkBpQ,IAAK4G,GACnC,gBAACwL,GAAA,EAAD,CAAMF,GAAItU,EAAOuU,WAAa,QAAU9L,EAAK,GAAG1E,MAC7C0E,EAAK,GAAG1E,YAOrB6Y,EAAK5Y,KAAK,CAACuK,MAAOpD,EAASpH,KAAO,QAAS1B,MAAO2a,OAIlD,2BACE,yBAAOxK,UAAU,sCACf,6BACGoK,EAAKjY,KAAI,SAAA8D,GAAI,OACZ,sBAAIrG,IAAKqG,EAAK8F,OACZ,sBAAIgC,MAAO,CAACX,MAAO,QAASnH,EAAK8F,OACjC,0BAAK9F,EAAKpG,kB,GAlDG2L,aA4DdsD,gBAAQ,SAAAlS,GAAK,MAAK,CAACY,OAAQZ,EAAMY,UAAjCsR,CAA2CoL,ICF3CO,G,+MA9Cb7d,MAAQ,CACN8d,WAAY,G,kEAGMP,EAASQ,GAC3B,IAAIpK,EAAQ4J,EAAQ3R,eAIpB,OAHImS,IACFpK,EAAQ,8BAASA,IAEZA,I,+BAGE,IAAD,OACApI,EAAYkD,KAAKE,MAAjBpD,QACAuS,EAAerP,KAAKzO,MAApB8d,WAER,OACE,gBAAC,WAAD,KACE,0BAAKvS,EAAQyS,gBACb,gBAACC,GAAA,EAAD,CAAcvb,GAAG,gBACf,2BACE,gBAACwb,GAAA,EAAD,CAAKC,QAAQ,4BACV5S,EAAQG,QAAQnG,KAAI,SAACgY,EAAS3T,GAAV,OACnB,gBAACwU,GAAA,EAAD,CACEpb,IAAK4G,EACL0I,QAAS,kBAAM,EAAK5D,SAAS,CAACoP,WAAYlU,MAC1C,2BACG,EAAKyU,mBAAmBd,EAASO,IAAelU,SAKzD,gBAAC0U,GAAA,EAAD,KACE,gBAACC,GAAA,EAAD,KACGhT,EAAQG,QAAQoS,IACf,gBAAC,GAAD,CAAgBP,QAAShS,EAAQG,QAAQoS,c,GAxCrClP,aCJhB4P,G,+MAQJ/E,WAAa,SAAC9X,GACZ,EAAKgN,MAAMpO,SAAS6L,GAClB,EAAKuC,MAAM/N,OAAQ,EAAK+N,MAAMvP,MAAM+d,OAAO3R,YAAa7J,K,mEAI1DiO,SAAS+D,MAAQ,kBAAoBlF,KAAKE,MAAMvP,MAAM+d,OAAO3R,YAC7D,8E,+BAGS,IAEHa,EADiBoC,KAAKE,MAApBgL,WAC0BrN,SAASmC,KAAKE,MAAM/N,OAAO+D,MACvD6G,EAAciD,KAAKE,MAAMvP,MAAM+d,OAAO3R,YAC5C,OACE,gBAAC,WAAD,KACE,uBAAK2F,MAAO,CAACiM,MAAO,UACjB3O,KAAKiO,iBAEPrQ,GAAkBA,EAAeb,IACjC,gBAAC,GAAD,CAASD,QAASc,EAAeb,U,GA5BhBgO,IAApBgF,GACG1B,UAAY,CACjB1d,MAAO2d,KAAUpX,OAAO0X,WACxBzc,OAAQmc,KAAUpX,OAClBgU,WAAYoD,KAAUpX,OACtBpF,SAAUwc,KAAUE,MA6BT/K,oBAAQ,SAAAlS,GAAK,MAAK,CAC/BY,OAAQZ,EAAMY,OACd+Y,WAAY3Z,EAAMuL,WAFL2G,CAGXsM,I,WCpCEC,G,6KAOQ9c,GACV8M,KAAKE,MAAMpO,SrCsBsB,SAACK,EAAQe,GAAT,OAAmB,SACtDpB,EAAUqB,GACR,OAAID,GAboB,SAACf,EAAQZ,GACnC,IAAMsM,EAAWtM,EAAMsM,SAASA,SAAS1L,EAAO+D,MAChD,OAAK2H,GAAgC,IAApBA,EAAS/I,SAGtB+I,EAASzK,YACJ,GAOM6c,CAAoB9d,EAAQgB,KAChCrB,EAASiM,GAAc5L,IAEzBmB,QAAQC,WqC3BK2c,CAAsBlQ,KAAKE,MAAM/N,OAAQe,M,0CAI7DiO,SAAS+D,MAAQ,gBACjB,8E,+BAGS,IAAD,OAEFrH,EADiBmC,KAAKE,MAApBgL,WACoBrN,SAASmC,KAAKE,MAAM/N,OAAO+D,MAEvD,IAAK2H,EACH,OAAQ,uCAGV,IAAMsS,EAAe,SAAA3b,GAAK,OAAI,gBAAC4b,GAAA,EAAMC,QAAP,KAAgB7b,IACxC8b,EAAa,SAAC9b,GAAD,OACjB,gBAAC4b,GAAA,EAAMG,KAAP,KAAa/b,IACTgc,EAAoB,SAAChc,EAAOiU,GAAR,OACxB,gBAAC2H,GAAA,EAAMG,KAAP,KACE,gBAAC5J,GAAA,EAAD,CAAMF,GAAI,EAAKvG,MAAM/N,OAAOuU,WAAa,YAAc+B,EAAIgI,QAAQlB,gBAChE/a,KAGDkc,EAAkB,SAAClc,GAAD,OACtB,gBAAC4b,GAAA,EAAMG,KAAP,KACE,gBAAC5J,GAAA,EAAD,CAAMF,GAAI,EAAKvG,MAAM/N,OAAOuU,WAAa,mBAAqBlS,GAA9D,YAIEmc,EAAU,GAsBhB,MArBkB,CAAC,OAAQ,aAAc,OAAQ,eACvC3gB,SAAQ,SAAA4gB,GAChB,IAAIC,EAAYP,EACZQ,EAAOF,EACI,SAAXA,IACFC,EAAYL,GAEC,eAAXI,IACFE,EAAO,mBAEM,gBAAXF,IACFE,EAAO,OACPD,EAAYH,GAEdC,EAAQxa,KAAK,CACXgR,OAAQ,CAACzG,MAAOkQ,EACdG,WAAY,CAACZ,IACfa,SAAUF,EACVG,KAAM,CAACF,WAAY,CAACF,SAItB,gBAAC,WAAD,KACE,uBAAKnO,MAAO,CAACiM,MAAO,UACjB3O,KAAKiO,iBAER,gBAACmC,GAAA,EAAMc,WAAP,CACEC,SAAO,EACPC,UAAQ,EACRC,OAAK,EACLV,QAASA,GAET,gBAACP,GAAA,EAAMkB,OAAP,MACA,gBAAClB,GAAA,EAAMmB,KAAP,CACExC,KAAMlR,EACN2T,OAAO,e,GA3EQzG,IAArBiF,GACG3B,UAAY,CACjBlc,OAAQmc,KAAUpX,OAClBgU,WAAYoD,KAAUpX,OACtBpF,SAAUwc,KAAUE,MA+ET/K,oBAAQ,SAAAlS,GAAK,MAAK,CAC/BY,OAAQZ,EAAMY,OACd+Y,WAAY3Z,EAAMsM,YAFL4F,CAGXuM,I,+BCzEWyB,G,2KAbH,IAAD,EACyBzR,KAAKE,MAA7BwR,EADD,EACCA,QAASC,EADV,EACUA,WACjB,OACE,8BACGD,EAAQ5U,QACR6U,GAAiC,WAAnBD,EAAQE,QACvB,KAAOF,EAAQE,OAAS,IAH1B,KAIKF,EAAQzhB,U,GAbSkQ,IAAMC,W,gECuEnByR,G,2KAzDF,IACDC,EAAY9R,KAAKE,MAAjB4R,QACFpW,EACJ,sBAAIiJ,UAAU,cACXmN,EAAQpW,MAAM5E,KAAI,SAAC8D,EAAMO,GACxB,IAAM4W,EAAS,GAMf,OALAD,EAAQC,OAAO/hB,SAAQ,SAAAgiB,IACmB,IAApCA,EAAMtW,MAAM4D,QAAQ1E,EAAK1E,OAC3B6b,EAAO5b,KAAK6b,EAAM9b,SAIpB,sBAAIyO,UAAU,kBAAkBpQ,IAAK4G,GACnC,wBAAM+J,MAAM,aACTtK,EAAK1E,MAFV,SAIE,wBAAMgP,MAAM,cACTtK,EAAK8F,OAER,wBAAMwE,MAAM,UACT6M,EAAOjd,OAAS,GAAK,KAAOid,EAAOjb,KAAI,SAAA8D,GAAI,OAAKA,KAAS,WAMtE,OACE,gBAACqX,GAAA,EAAD,CAAMC,UAAQ,EAACC,YAAU,GACvB,gBAACC,GAAA,EAAD,KACGN,EAAQ5b,MAEX,gBAACmc,GAAA,EAAD,KACE,gBAACC,GAAA,EAAD,KACE,gBAACC,GAAA,EAAD,KACE,wBAAMrN,MAAM,SACV,gBAACnC,GAAA,EAAD,CAAMhR,KAAK,KAAKmE,KAAK,WACrB,gBAACsc,GAAA,EAAD,KACGV,EAAQpW,MAAM5G,UAIrB,gBAACyd,GAAA,EAAD,KACE,wBAAMrN,MAAM,UACV,gBAACnC,GAAA,EAAD,CAAMhR,KAAK,KAAKmE,KAAK,iBACrB,gBAACsc,GAAA,EAAD,KACGV,EAAQC,OAAOjd,WAKvB4G,Q,GAvDWyE,aCMPsS,G,2KAVH,IACAxM,EAASjG,KAAKE,MAAd+F,KACR,OACE,8BACGA,EAAKyM,YADR,MACwBzM,EAAK0M,uBAD7B,S,GARaxS,IAAMC,WCmBVwS,G,2KAdH,IACA9V,EAAYkD,KAAKE,MAAjBpD,QACR,OACE,8BACGA,EAAQ+V,aACR/V,EAAQgW,iBACT,uBAAyBhW,EAAQgW,gBAAkB,IAClDhW,EAAQiW,mBACT,yBAA2BjW,EAAQiW,kBAAmB,S,GAbrC5S,IAAMC,WCYzB4S,G,+KAQUlE,GACZ,IAAM/a,EAAS,CAAC,CACdiU,KAAM8G,EAAQ/H,OAAS,YAAc,eACrC7Q,KAAM4Y,EAAQ/H,OAAS,SAAW,eA2BpC,OAzBI+H,EAAQmE,UACVlf,EAAOoC,KAAK,CACV6R,KAAM,iBACN9R,KAAM,aAGN4Y,EAAQoE,OACVnf,EAAOoC,KAAK,CACV6R,KAAM,iBACN9R,KAAM,UAGN4Y,EAAQqE,aACVpf,EAAOoC,KAAK,CACV6R,KAAM,SACN9R,KAAM,gBAGN4Y,EAAQsE,WACVrf,EAAOoC,KAAK,CACV6R,KAAM,SACN9R,KAAM,cAKR,uBAAKyO,UAAU,gCACV5Q,EAAO+C,KAAI,SAAC8D,EAAMO,GAAP,OACV,uBAAK5G,IAAK4G,EAAKwJ,UAAU,qCACvB,gBAAC5B,GAAA,EAAD,CAAMhR,KAAK,KAAKmE,KAAM0E,EAAKoN,OAC1BpN,EAAK1E,Y,+BAOP,IAAD,SAC0C8J,KAAKE,MAA/C/N,EADA,EACAA,OAAQ2c,EADR,EACQA,QAASuE,EADjB,EACiBA,qBACnBtE,EAAO,GAEI,CACf,cAAe,UAAW,SAAU,SACpC,SAAU,WAAY,UAAW,YACjC,UAAW,YAAa,qBAEjB/e,SAAQ,SAAAuE,GACf,IAAImM,EAAQnM,EACRC,EAAQsa,EAAQva,GAoBpB,GAlBc,YAAVmM,GAAuBlM,IACzBA,EACE,gBAAC,GAAD,CACEkd,QAAS5C,EAAQwE,eACjB3B,YAAY,KAGJ,WAAVjR,IACFlM,EACE,gBAACmS,GAAA,EAAD,CAAMF,GAAI,EAAKvG,MAAM/N,OAAOuU,WAAa,oBAAsBoI,EAAQ5Y,MAAvE,kBAKU,WAAVwK,IACFlM,EAAQ,EAAK+e,aAAazE,IAGvBta,EAAL,CA2BA,GAvBc,YAAVkM,IACFlM,EAAQ,gBAAC,GAAD,CAASsd,QAAStd,KAGd,WAAVkM,IACFlM,EACE,gBAACmS,GAAA,EAAD,CAAMF,GAAItU,EAAOuU,WAAa,QAAUlS,GACrCA,IAIO,cAAVkM,IACFlM,EACE,wBAAMkO,MAAO,CAAC8Q,WAAY,aACxB,gBAAC,KAAD,CACElL,IAAK9T,EACL0B,KAAM,KACNud,UAAU,EACVC,iBAAiB,EACjBC,kBAAkB,MAIZ,gBAAVjT,EAAyB,CAC3B,IAAMgC,EAAQ,CACZ8Q,WAAY,YAEVH,EAAuB,IACzB3Q,EAAMkR,UAAYP,GAEpB7e,EACE,gBAAC,eAAD,CAAaqf,cAAe,SAAAC,GACpBA,EAAST,GACX,EAAKnT,MAAM6T,OAAO9T,SAAS,CAACoT,qBAAsBS,MAGtD,uBAAKpR,MAAOA,GACTlO,IAKTua,EAAK5Y,KAAK,CAACuK,MAAOA,EAAOlM,MAAOA,QAuClC,MArCqB,CACnB,oBAAqB,eAAgB,QAAS,mBAAoB,SAEvDxE,SAAQ,SAAAuE,GACnB,IAAImM,EAAQnM,EACRyf,EAASlF,EAAQva,GAErB,GAAsB,IAAlByf,EAAOlf,OAAX,CAGA,IAAMmf,EACJ,sBAAItP,UAAU,cACXqP,EAAOld,KAAI,SAACtC,EAAO2G,GAClB,IAAIP,EAcJ,OAZEA,EADY,sBAAV8F,EACK,gBAAC,GAAD,CAAY5D,QAAStI,IACT,UAAVkM,EACF,gBAAC,GAAD,CAAMuF,KAAMzR,IACA,iBAAVkM,EACLlM,EAAK,KACAA,EAAK,KAAW,UAEhBA,EAAK,KAGPA,EAGP,sBAAImQ,UAAU,kBAAkBpQ,IAAK4G,GAClCP,OAMXmU,EAAK5Y,KAAK,CAACuK,MAAOA,EAAOlM,MAAOyf,QAGhC,2BACE,yBAAOtP,UAAU,sCACf,6BACGoK,EAAKjY,KAAI,SAAA8D,GAAI,OACZ,sBAAIrG,IAAKqG,EAAK8F,OACZ,sBAAIgC,MAAO,CAACX,MAAO,QAASnH,EAAK8F,OACjC,0BAAK9F,EAAKpG,kB,GA7KD2L,aAuLVsD,gBAAQ,SAAAlS,GAAK,MAAK,CAACY,OAAQZ,EAAMY,UAAjCsR,CAA2CuP,IClH3CkB,G,+MApEb3iB,MAAQ,CACN8d,WAAY,EACZgE,qBAAsB,G,EAGxBc,eAAiB,WACf,EAAKlU,SAAS,CAACoT,qBAAsB,K,kEAGnBpI,EAAWmJ,GACzBA,EAAUf,qBAAuB,GACnCrT,KAAKmU,mB,yCAIWrF,EAASQ,GAC3B,IAAIpK,EAAQ4J,EAAQuF,oBAapB,OAZKnP,IACHA,EAAQ,GACR4J,EAAQwF,SAAStkB,SAAQ,SAAC4K,GACpBsK,IACFA,GAAS,MAEXA,GAAStK,MAGT0U,IACFpK,EAAQ,8BAASA,IAEZA,I,+BAGE,IAAD,OACAnM,EAAQiH,KAAKE,MAAbnH,IADA,EAEqCiH,KAAKzO,MAA1C8d,EAFA,EAEAA,WAAYgE,EAFZ,EAEYA,qBAEpB,OACE,gBAAC,WAAD,KACE,0BAAKta,EAAI,GAAG7C,MACZ,gBAACsZ,GAAA,EAAD,CAAcvb,GAAG,YACf,2BACE,gBAACwb,GAAA,EAAD,CAAKC,QAAQ,4BACV3W,EAAIjC,KAAI,SAACgY,EAAS3T,GAAV,OACP,gBAACwU,GAAA,EAAD,CACEpb,IAAK4G,EACL0I,QAAS,kBAAM,EAAK5D,SAAS,CAACoP,WAAYlU,MAC1C,2BACG,EAAKyU,mBAAmBd,EAASO,IAAelU,SAKzD,gBAAC0U,GAAA,EAAD,KACE,gBAACC,GAAA,EAAD,KACE,gBAAC,GAAD,CACEhB,QAAS/V,EAAIsW,GACbgE,qBAAsBA,EACtBU,OAAQ/T,gB,GA9DRG,aCHZoU,G,+MAQJvJ,WAAa,SAAC9X,GACZ,EAAKgN,MAAMpO,SAASoH,EAClB,EAAKgH,MAAM/N,OAAQ,EAAK+N,MAAMvP,MAAM+d,OAAO7V,QAAS3F,K,mEAItDiO,SAAS+D,MAAQ,cAAgBlF,KAAKE,MAAMvP,MAAM+d,OAAO7V,QACzD,8E,yCAGkBoS,GACdjL,KAAKE,MAAM/N,OAAO+D,OAAS+U,EAAU9Y,OAAO+D,MAC7C8J,KAAKE,MAAMvP,MAAM+d,OAAO7V,UAAYoS,EAAUta,MAAM+d,OAAO7V,SAC5DmH,KAAKgL,e,+BAIE,IAEH7R,EADiB6G,KAAKE,MAApBgL,WACsB9R,KAAK4G,KAAKE,MAAM/N,OAAO+D,MAC/C2C,EAAUmH,KAAKE,MAAMvP,MAAM+d,OAAO7V,QACxC,OACE,gBAAC,WAAD,KACE,uBAAK6J,MAAO,CAACiM,MAAO,UACjB3O,KAAKiO,iBAEP9U,GAAcA,EAAWN,IAAY,gBAAC,GAAD,CAAKE,IAAKI,EAAWN,U,GAlC7CkS,IAAhBwJ,GACGlG,UAAY,CACjB1d,MAAO2d,KAAUpX,OAAO0X,WACxBzc,OAAQmc,KAAUpX,OAClBgU,WAAYoD,KAAUpX,OACtBpF,SAAUwc,KAAUE,MAmCT/K,oBAAQ,SAAAlS,GAAK,MAAK,CAC/BY,OAAQZ,EAAMY,OACd+Y,WAAY3Z,EAAMwH,OAFL0K,CAGX8Q,I,WCrCEC,G,+MAMJjjB,MAAQ,CACNgM,OAAQ,KACRkX,SAAS,G,EAGX1I,eAAiB,SAAC/H,GACG,KAAfA,EAAEgI,WACJ,EAAK/L,SAAS,CAAC1C,OAAQyG,EAAEiI,OAAOzX,QAChCwP,EAAEkI,iBACFlI,EAAEiI,OAAOE,S,wDAIF,IAAD,SACA/S,EAAS4G,KAAKE,MAAd9G,KADA,EAEoB4G,KAAKzO,MAAzBgM,EAFA,EAEAA,OAAQkX,EAFR,EAEQA,QAEV/N,EAAa1G,KAAKE,MAAM/N,OAAOuU,WAAa,QAG5CgO,EAAS,GAEThZ,EAAQ,GAERiZ,EAAU,GAEVC,EAAa,SAAC7b,EAAK8b,GAAN,MAAiB,CAClChhB,KACE,gBAAC,WAAD,KACE,gBAAC8S,GAAA,EAAD,CAAMF,GAAIC,EAAa3N,EAAI7C,MAAO6C,EAAI7C,MACrC2e,GAAU,iCAASA,EAAT,KACV9b,EAAIwD,aACH,wBAAMmG,MAAO,CAACoS,WAAY,SAAU/b,EAAIwD,aAEzCxD,EAAIgc,MAAQhc,EAAIgc,KAAKje,KAAI,SAACke,EAAK7Z,GAAN,OACxB,gBAAC0P,GAAA,EAAD,CACEtW,IAAK4G,EACL8Z,WAAS,GACRD,OAGThN,KAAM,aACNzW,MAAO,CACLqS,UAAU,KAIRsR,EAAU,SAAVA,EAAoBnc,EAAKoc,GAC7B,IAAKR,EAAQ5b,EAAI7C,MAAO,CAEtB,IAAIkf,EAAU,GACd,GAAIrc,EAAIsc,SAAU,CAAC,IAAD,gBACOtc,EAAIsc,UADX,IAChB,2BAAqC,CAAC,IAA7BC,EAA4B,QAC/BA,EAAWvB,SAC6B,IAAxCqB,EAAQ9V,QAAQgW,EAAWvB,SAC7BqB,EAAQjf,KAAKmf,EAAWvB,SAJZ,+BAYlB,GAJAY,EAAQ5b,EAAI7C,MAAQ0e,EAAW7b,EAAK,MACpC4b,EAAQ5b,EAAI7C,MAAMkf,QAAUA,EAC5BT,EAAQ5b,EAAI7C,MAAMif,SAAWA,GAExBV,EAAS,CAAC,IAAD,gBACOW,GADP,IACZ,2BAA4B,CAAC,IAApBrB,EAAmB,QACtBW,EAAOX,IACTmB,EAAQR,EAAOX,GAASoB,IAHhB,gCAQhB,OAAOR,EAAQ5b,EAAI7C,OA1Db,cA6DQkD,GA7DR,IA6DR,2BAAsB,CAAC,IAAdL,EAAa,QACpB2b,EAAO3b,EAAI7C,MAAQ6C,GA9Db,8BAiER,IAAIoc,GAAW,EACf,GAAI5X,EAAQ,CACV4X,GAAW,EACX,IAFU,EAENzK,EAAUnN,EAAO3N,QAAQ,MAAO,KAAKqL,MAAM,KAFrC,cAGM7B,GAHN,yBAGDL,EAHC,QAIR2R,EAAQ1a,SAAQ,SAAAulB,GACXA,KACmC,IAAjCxc,EAAI7C,KAAKoJ,QAAQiW,IACjBxc,EAAIwD,cAAuD,IAAxCxD,EAAIwD,YAAY+C,QAAQiW,KAC9CL,EAAQnc,GAAMoc,OALpB,2BAAuB,IAHb,+BAlEJ,oBAgFQ/b,GAhFR,IAgFR,2BAAsB,CAAC,IAAdL,EAAa,QACdyc,EAAUN,EAAQnc,EAAKoc,GAC7B,IAAKK,EAAQL,SAAU,CACrB,IAAIM,GAAW,EACf,IAAKhB,EAAS,qBAEOe,EAAQJ,SAFf,IAEZ,2BAAoC,CAAC,IAA5BrB,EAA2B,QAC5B2B,EAAaf,EAAQZ,GACtB2B,GAKAA,EAAWha,QACdga,EAAWha,MAAQ,IAEjB+Z,EAEFC,EAAWha,MAAMvF,KAAKye,EAAW7b,EAAK,aAEtC2c,EAAWha,MAAMvF,KAAKqf,GAExBC,GAAW,GAbThkB,QAAQC,IACN,OAAQqH,EAAI7C,KAAM,WAAY6d,EAAQ,qBANhC,+BAsBT0B,GAAuC,IAA3BD,EAAQJ,QAAQtgB,QAC/B4G,EAAMvF,KAAKqf,KA3GT,8BA+GR,OACE,uBAAK7Q,UAAU,uBACb,gBAAC0I,GAAA,EAAD,CAAMC,QAAM,GACV,gBAACC,GAAA,EAAD,CAAWC,UAAU,QACnB,gBAACC,GAAA,EAAD,CACE1b,KAAK,OACLqR,YAAY,WACZzC,aAAcpD,EACdmQ,SAAU,SAAA3Y,GAAC,OAAI,EAAKwI,OAASxI,GAC7B4Y,WAAY3N,KAAK+L,iBAClBxO,GACC,gBAACkQ,GAAA,EAAYG,SAAb,KACE,wBACE/J,QAAS,WAAO,EAAK5D,SAAS,CAAC1C,OAAQ,KACxB,EAAKA,OAAO/I,MAAQ,IACnCkO,MAAO,CAACG,OAAQ,UAAWgL,OAAQ,GAAIC,cAAe,SAEtD,gBAAC/K,GAAA,EAAD,CAAMhR,KAAK,KAAKmT,MAAM,eAAehP,KAAK,WAL5C,UAWN,gBAACqX,GAAA,EAAD,CAAWC,UAAU,gBAArB,yBAEE,gBAACO,GAAA,EAAD,CACEC,eAAgByG,EAChBxR,SAAU,SAACe,GAAD,OAAO,EAAK/D,SAAS,CAACwU,QAASzQ,EAAEiI,OAAOI,eAGxD,gBAACsJ,GAAA,EAAD,CAAUja,MAAOA,S,GAhKFyE,aAsKRsD,gBAAQ,SAAAlS,GAAK,MAAK,CAC/BY,OAAQZ,EAAMY,UADDsR,CAEX+Q,IC9KEoB,G,6KAOQ1iB,GACV8M,KAAKE,MAAMpO,SpDuBkB,SAACK,EAAQe,GAAT,OAAmB,SAACpB,EAAUqB,GAC7D,OAAID,GAZkB,SAACf,EAAQZ,GAC/B,IAAM6H,EAAO7H,EAAM6H,KAAKA,KAAKjH,EAAO+D,MACpC,OAAKkD,GAAwB,IAAhBA,EAAKtE,SAGdsE,EAAKhG,YACA,GAMIyiB,CAAgB1jB,EAAQgB,KAC5BrB,EAASwH,EAAUnH,IAErBmB,QAAQC,WoD3BOuiB,CAAkB9V,KAAKE,MAAM/N,OAAQe,M,0CAIzDiO,SAAS+D,MAAQ,YACjB,8E,+BAGS,IAEH9L,EADiB4G,KAAKE,MAApBgL,WACgB9R,KAAK4G,KAAKE,MAAM/N,OAAO+D,MAC/C,OACE,gBAAC,WAAD,KACE,uBAAKwM,MAAO,CAACiM,MAAO,UACjB3O,KAAKiO,iBAEP7U,GAAQA,EAAKtE,OAAS,GACrB,gBAACihB,GAAD,CACI3c,KAAMA,S,GA1BG2R,IAAjB6K,GACGvH,UAAY,CACjBlc,OAAQmc,KAAUpX,OAClBgU,WAAYoD,KAAUpX,OACtBpF,SAAUwc,KAAUE,MA4BT/K,oBAAQ,SAAAlS,GAAK,MAAK,CAC/BY,OAAQZ,EAAMY,OACd+Y,WAAY3Z,EAAM6H,QAFLqK,CAGXmS,ICnCEI,G,6KAOQ9iB,GACV8M,KAAKE,MAAMpO,SpDuBoB,SAACK,EAAQe,GAAT,OAAmB,SACpDpB,EAAUqB,GACR,GAAID,GAbkB,SAACf,EAAQZ,GACjC,IAAMmI,EAASnI,EAAMmI,OAAOA,OAAOvH,EAAO+D,MAC1C,OAAKwD,GAA4B,IAAlBA,EAAO5E,SAGlB4E,EAAOtG,YACF,GAOM6iB,CAAkB9jB,EAAQgB,KACrC,OAAOrB,EAAS2H,EAAYtH,KoD1BV+jB,CAAoBlW,KAAKE,MAAM/N,OAAQe,M,0CAI3DiO,SAAS+D,MAAQ,cACjB,8E,+BAGS,IAEHxL,EADiBsG,KAAKE,MAApBgL,WACkBxR,OAAOsG,KAAKE,MAAM/N,OAAO+D,MAEnD,IAAKwD,EACH,OAAQ,uCAGV,IAAMyW,EAAe,SAAA3b,GAAK,OAAI,gBAAC4b,GAAA,EAAMC,QAAP,KAAgB7b,IACxC8b,EAAa,SAAA9b,GAAK,OAAI,gBAAC4b,GAAA,EAAMG,KAAP,KAAa/b,IACnCmc,EAAU,GAWhB,MAVkB,CAAC,QACT3gB,SAAQ,SAAA4gB,GAChB,IAAIC,EAAYP,EACZQ,EAAOF,EACXD,EAAQxa,KAAK,CACXgR,OAAQ,CAACzG,MAAOkQ,EAAQG,WAAY,CAACZ,IACrCa,SAAUF,EACVG,KAAM,CAACF,WAAY,CAACF,SAItB,gBAAC,WAAD,KACE,uBAAKnO,MAAO,CAACiM,MAAO,UACjB3O,KAAKiO,iBAER,gBAACmC,GAAA,EAAMc,WAAP,CACEC,SAAO,EACPC,UAAQ,EACRC,OAAK,EACLV,QAASA,GAET,gBAACP,GAAA,EAAMkB,OAAP,MACA,gBAAClB,GAAA,EAAMmB,KAAP,CACExC,KAAMrV,EACN8X,OAAO,e,GAnDMzG,IAAnBiL,GACG3H,UAAY,CACjBlc,OAAQmc,KAAUpX,OAClBgU,WAAYoD,KAAUpX,OACtBpF,SAAUwc,KAAUE,MAsDT/K,oBAAQ,SAAAlS,GAAK,MAAK,CAC/BY,OAAQZ,EAAMY,OACd+Y,WAAY3Z,EAAMmI,UAFL+J,CAGXuS,IC5DEG,G,6KAOQjjB,GACV8M,KAAKE,MAAMpO,SAAS8J,EAAmBoE,KAAKE,MAAM/N,OAAQe,M,0CAI1DiO,SAAS+D,MAAQ,aACjB,8E,+BAGS,IAEHxJ,EADiBsE,KAAKE,MAApBgL,WACiBxP,MAEnByU,EAAe,SAAA3b,GAAK,OAAI,gBAAC4b,GAAA,EAAMC,QAAP,KAAgB7b,IACxC8b,EAAa,SAAA9b,GAAK,OAAI,gBAAC4b,GAAA,EAAMG,KAAP,KAAa/b,IACnC4hB,EAAmB,SAAA5hB,GAAK,OAAI,gBAAC4b,GAAA,EAAMG,KAAP,KAAa/b,EAAMuT,KAAK,OACpDsO,EAAgB,SAAA7hB,GAAK,OACzB,gBAAC4b,GAAA,EAAMG,KAAP,CAAY7N,MAAO,CAAC4T,WAAY,oCAC7B9hB,IAEC+hB,EAAgB,SAAA/hB,GAAK,OACzB,gBAAC4b,GAAA,EAAMG,KAAP,CAAY7N,MAAO,CAAC4T,WAAY,oCAC7B/V,QAAY/L,GAAOgiB,YAGlB7F,EAAU,GA0BhB,MAzBkB,CAChB,KAAM,SAAU,aAAc,SAAU,WAAY,QACpD,MAAO,WAEC3gB,SAAQ,SAAA4gB,GAChB,IAAIC,EAAYP,EACZQ,EAAOF,EACI,WAAXA,GACFE,EAAO,OACPD,EAAYuF,GACQ,eAAXxF,EACTE,EAAO,kBACa,WAAXF,GACTE,EAAO,cACPD,EAAYwF,GACQ,QAAXzF,IACTE,EAAO,aACPD,EAAY0F,GAEd5F,EAAQxa,KAAK,CACXgR,OAAQ,CAACzG,MAAOkQ,EAAQG,WAAY,CAACZ,IACrCa,SAAUF,EACVG,KAAM,CAACF,WAAY,CAACF,SAItB,gBAAC,WAAD,KACE,uBAAKnO,MAAO,CAACiM,MAAO,UACjB3O,KAAKiO,iBAER,gBAACmC,GAAA,EAAMc,WAAP,CACEC,SAAO,EACPC,UAAQ,EACRC,OAAK,EACLV,QAASA,GAET,gBAACP,GAAA,EAAMkB,OAAP,MACA,gBAAClB,GAAA,EAAMmB,KAAP,CACExC,KAAMrT,EACN8V,OAAO,a,GAxEKzG,IAAlBoL,GACG9H,UAAY,CACjBlc,OAAQmc,KAAUpX,OAClBgU,WAAYoD,KAAUpX,OACtBpF,SAAUwc,KAAUE,MA4ET/K,oBAAQ,SAAAlS,GAAK,MAAK,CAC/BY,OAAQZ,EAAMY,OACd+Y,WAAY3Z,EAAMmK,SAFL+H,CAGX0S,I,WCvFEM,G,2KAQO,IAAD,EACkBzW,KAAKE,MAAvB7L,EADA,EACAA,MAAOuT,EADP,EACOA,OACf,OACE,gBAAC8O,GAAA,EAAD,KACE,gBAACA,GAAA,EAAMrG,QAAP,qBAA6Bhc,EAAMgE,MACnC,gBAACqe,GAAA,EAAMnF,KAAP,KACI,2BACE,sBAAI5M,UAAU,4BACZ,sBAAIA,UAAoB,YAATiD,EAAmB,cAAS+O,GACzC,gBAAChQ,GAAA,EAAD,CAAMF,GAAIzG,KAAKE,MAAM/N,OAAOuU,WAAa,UAAYrS,EAAMgE,MAA3D,YAIDhE,EAAMuC,UACN,sBAAI+N,UAAoB,SAATiD,EAAgB,cAAS+O,GACtC,gBAAChQ,GAAA,EAAD,CAAMF,GAAIzG,KAAKE,MAAM/N,OAAOuU,WAAa,UAAYrS,EAAMgE,KAAO,SAAlE,SAIFhE,EAAMY,QACN,sBAAI0P,UAAoB,YAATiD,EAAmB,cAAS+O,GACzC,gBAAChQ,GAAA,EAAD,CACEF,GAAIzG,KAAKE,MAAM/N,OAAOuU,WAAa,UAAYrS,EAAMgE,KAAO,YAD9D,aAOL,2BACG2H,KAAKE,MAAM/I,iB,GArCRgJ,aA+CLsD,gBAAQ,SAAAlS,GAAK,MAAK,CAACY,OAAQZ,EAAMY,UAAjCsR,CAA2CgT,IC9CpDG,G,2KAKM,IACAjf,EAAaqI,KAAKE,MAAlBvI,SACR,OACE,2BAAOgN,UAAU,qCAAqCjC,MAAO,CAACX,MAAM,QAClE,+BACG3M,OAAO+U,KAAKxS,EAASC,UAAUd,KAAI,SAAAvC,GAAG,OACrC,wBAAIA,IAAKA,GACP,4BAAKA,GACL,wBAAImO,MAAO,CAACX,MAAM,SAAUpK,EAASC,SAASrD,c,GAbrC4L,IAAMC,WAkDdyW,G,2KAvBH,IAGFnb,EAFYsE,KAAKE,MAAf7L,MAEYqD,UAAUZ,KAAI,SAACa,EAAUjB,GAC3C,IAAMogB,EAAO,CAACjjB,KAAM,uBAAGlE,KAAMgI,EAASpI,KAAMoI,EAASzB,MACvC8R,KAAM,MAKpB,OAJIrQ,EAASC,WACXkf,EAAI,MAAW,CAAC,CAACjjB,KAAM,kBAAC,GAAD,CAAUU,IAAKmC,EAAOiB,SAAUA,IACtCqQ,KAAM,MAElB8O,KAGT,OACE,yBAAKnS,UAAU,uBACb,kBAACgR,GAAA,EAAD,CACEja,MAAOA,S,GArBUyE,IAAMC,W,WC+DlB2W,G,8KA9EA7hB,GACX,OACE,gBAAC8hB,GAAA,EAAD,KACG5hB,OAAOC,QAAQH,GAAO4B,KAAI,mCAAEvB,EAAF,KAAQye,EAAR,YACzB,gBAACgD,GAAA,EAASC,KAAV,CACE1iB,IAAKgB,EACL2hB,QAAS3hB,EACT4hB,eAAgB,CACd,gBAACH,GAAA,EAASI,SAAV,CAAmB7iB,IAAI,KAAK2Q,MAAM,WAChC,gBAACnC,GAAA,EAAD,CAAMhR,KAAK,KAAKmE,KAAK,SACrB,8BAAS8d,EAAOte,KAElB,gBAACshB,GAAA,EAASI,SAAV,CAAmB7iB,IAAI,UAAU2Q,MAAM,gBACrC,gBAACnC,GAAA,EAAD,CAAMhR,KAAK,KAAKmE,KAAK,OACrB,8BAAS8d,EAAOxe,UAElB,gBAACwhB,GAAA,EAASI,SAAV,CAAmB7iB,IAAI,OAAO2Q,MAAM,gBAClC,gBAACnC,GAAA,EAAD,CAAMhR,KAAK,KAAKmE,KAAK,mBACrB,8BAAS8d,EAAOve,oB,uCASZF,EAAMQ,GACtB,OACE,gBAAC2gB,GAAA,EAAD,CAAOniB,IAAKgB,EAAOQ,EAAKshB,aACtB,gBAACX,GAAA,EAAMrG,QAAP,KAAgB9a,EAAhB,KAAwBQ,EAAKG,MAC7B,gBAACwgB,GAAA,EAAMnF,KAAP,KACGxb,EAAKuhB,YAAcvhB,EAAKuhB,WAAWC,aACnCxhB,EAAKuhB,WAAWC,YAAYC,aAC1B,0BAAQjjB,IAAI,OACTwB,EAAKuhB,WAAWC,YAAYC,YAD/B,IAC4C,4BAG9CzhB,EAAK0hB,KACJ,uBAAKljB,IAAI,OAAOwB,EAAK0hB,KAEtB1hB,EAAK2hB,WACJ,uBAAKnjB,IAAI,MAAMmO,MAAO,CAAET,MAAO,QAAUlM,EAAK2hB,WAE/C3hB,EAAK4hB,cAAgB5hB,EAAK4hB,aAAa7iB,OAAS,GAC/C,uBAAKP,IAAI,SAASmO,MAAO,CAAE8Q,WAAY,YAActO,MAAM,UACxDnP,EAAK4hB,aAAa7nB,OAAO,IAAIiY,KAAK,OAGtChS,EAAK6hB,cAAgB7hB,EAAK6hB,aAAa9iB,OAAS,GAC/C,uBAAKP,IAAI,SAASmO,MAAO,CAAC8Q,WAAY,WAAYvR,MAAO,OAAQiD,MAAM,UACpEnP,EAAK6hB,aAAa9nB,OAAO,IAAIiY,KAAK,W,+BAQpC,IAAD,OACA9S,EAAW+K,KAAKE,MAAhBjL,OACR,OACE,gBAAC,WAAD,KACE,uBAAKV,IAAI,SACNa,OAAOC,QAAQJ,GACdsI,QAAO,uCAAuB5H,OAAOb,OAAS,KAC9CgC,KAAI,mCAAEvB,EAAF,iBAA4BI,OAAOmB,KAAI,SAAAnB,GAAM,OAChD,EAAKkiB,iBAAiBtiB,EAAMI,UAEjC,uBAAKpB,IAAI,SACNyL,KAAK8X,YAAY7iB,S,GA3EFkL,aCGpB4X,G,2KAOO,IAAD,OACA1jB,EAAU2L,KAAKE,MAAf7L,MACF0a,EAAO,GACPiJ,EAAY,CAChB,WAAY,SAAU,WAAY,SAClC,WAAY,aAAc,WAAY,WACtC,UAAW,SAAU,SAAU,WAAY,SAAU,SACrD,MAAO,UAAW,UAAW,UAAW,YAmE1C,OAjEK3jB,EAAM8D,UAET6f,EAAU3b,OAAO2b,EAAU1Y,QAAQ,YAAa,GAGlD0Y,EAAUhoB,SAAQ,SAAA4gB,GAChB,IAAIlQ,EAAQkQ,EACRpc,EAAQH,EAAMuc,GACH,aAAXA,IACFlQ,EAAQ,MACRlM,EACE,gBAAC,WAAD,KACA,gBAACmS,GAAA,EAAD,CAAMF,GAAI,EAAKvG,MAAM/N,OAAOuU,WAAa,QAAUlS,GAChDA,GAEH,wCACA,gBAACmS,GAAA,EAAD,CAAMF,GAAI,EAAKvG,MAAM/N,OAAOuU,WAAa,oBAAsBlS,EAAQ,YAAcH,EAAMyI,QAASoI,MAAM,yDAA1G,mBAMW,aAAX0L,IACFpc,EACE,gBAACmS,GAAA,EAAD,CAAMF,GAAI,EAAKvG,MAAM/N,OAAOuU,WAAa,aAAelS,EAAM6D,MAC3D7D,EAAM6D,OAIE,WAAXuY,IAEApc,EADEA,EACM,OAEA,SAGG,eAAXoc,GAAsC,aAAXA,IAC7Bpc,EAAQ+L,OAAW/L,GAAOgM,GAAG,EAAKN,MAAMxB,UAAU0F,OAAO,wBAE5C,aAAXwM,IACApc,EAAQ+L,YAAgB/L,EAAO,WAC5B4P,OAAO,4BAEV5P,GAAqB,YAAXoc,GAAmC,YAAXA,IACpCpc,EAAQ,qBAAG7E,KAAM6E,GAAQA,IAEZ,YAAXoc,IACFlQ,EAAQ,UAENlM,EADEH,EAAMuC,UAAYvC,EAAMuC,SAASQ,YAC3B,qBAAGzH,KAAM6E,EAAQ,cAAeA,GAEhC,qBAAG7E,KAAM6E,GAAQA,IAGd,YAAXoc,IACFlQ,EAAQ,UACRlM,EAAQ,qBAAG7E,KAAM6E,GAAQA,IAEZ,aAAXoc,IACFlQ,EAAQ,YAENlM,GACFua,EAAK5Y,KAAK,CAAC5B,IAAKmM,EAAOlM,MAAOA,OAIhC,gBAAC,WAAD,KACE,2BACA,yBAAOmQ,UAAU,sCACf,6BACGoK,EAAKjY,KAAI,SAAA8D,GAAI,OACZ,sBAAIrG,IAAKqG,EAAKrG,KACZ,0BAAKqG,EAAKrG,KACV,0BAAKqG,EAAKpG,aAKlB,uCACA,gBAAC,GAAD,CAAcH,MAAOA,IACrB,qCACCA,EAAMa,OAAS,gBAAC,GAAD,CAAaD,OAAQZ,EAAMa,a,GAjG7BiL,aAwGPsD,gBAAQ,SAAAlS,GAAK,MAAK,CAACY,OAAQZ,EAAMY,OAAQuM,SAAUnN,EAAMmN,YAAzD+E,CAAqEsU,IC1G9EE,G,+MAOJjN,WAAa,SAAC9X,GACZ,EAAKgN,MAAMpO,SAAS+F,EAClB,EAAKqI,MAAM/N,OAAQ,EAAK+N,MAAMvP,MAAM+d,OAAOta,QAAS,Q,mEAItD+M,SAAS+D,MAAQ,aACjB,8E,+BAGS,IAEH7Q,EADiB2L,KAAKE,MAApBgL,WACiB3T,OAAOyI,KAAKE,MAAMvP,MAAM+d,OAAOta,SACxD,OACE,gBAAC,WAAD,KACE,uBAAKsO,MAAO,CAACiM,MAAO,UACjB3O,KAAKiO,iBAET5Z,GACA,gBAAC,GAAD,CAAOA,MAAOA,EAAOuT,OAAO,WAC1B,gBAAC,GAAD,CAASvT,MAAOA,U,GA3BD0W,IAAlBkN,GACG5J,UAAY,CACjB1d,MAAO2d,KAAUpX,OAAO0X,WACxB1D,WAAYoD,KAAUpX,OACtB/E,OAAQmc,KAAUpX,QA8BPuM,oBAAQ,SAAAlS,GAAK,MAAK,CAC/BY,OAAQZ,EAAMY,OACd+Y,WAAY3Z,EAAM8C,SAFLoP,CAGXwU,ICUWC,G,2KAzCH,IAAD,EACmBlY,KAAKE,MAAvB/N,EADD,EACCA,OAAQkC,EADT,EACSA,MAEV8jB,EAAa,SAACC,GAClB,MAAyB,0BAAjBA,EAAIrd,UACJ1G,EAAMuC,SAASQ,YAAe,aAAe,IAGjDsE,EAAQrH,EAAMuC,SAASC,KAAKC,KAChC,SAAAC,GAAC,O9DmBA,SAASshB,EAAWlmB,EAAQkC,EAAOpE,EAAMmoB,EAAKE,EAAcC,GACjE,IAAMzB,EAAO,GACT5gB,EAAOkiB,EAAIliB,KAEX,aAAckiB,GAAOA,EAAIjhB,WAC3B2f,EAAKpb,MAAQ0c,EAAIjhB,SAASL,KACxB,SAAAC,GAAC,OAAIshB,EAAWlmB,EAAQkC,EAAOpE,EAAKmoB,EAAIliB,KAAK,IAAKa,EACnCuhB,EAAcC,OAEZ,0BAAjBH,EAAIrd,SACN7E,EAAOkiB,EAAIliB,KAAO,IAElB4gB,EAAK9O,KAAO,eAGd,IAAIlQ,EAAUzD,EAAMyD,QASpB,OARIA,EAAQ5H,SAAS,OACnB4H,EAAUA,EAAQhI,MAAM,GAAI,IAET,eAAjBsoB,EAAIrd,SACN+b,EAAKjjB,KAAOykB,EAAanmB,EAAQkC,EAAOpE,EAAMiG,EAAM4B,EAASsgB,GAE7DtB,EAAKjjB,KAAO0kB,EAAgBzgB,EAAS7H,EAAMiG,EAAMkiB,GAE5CtB,E8D3CEuB,CACHlmB,EAAQkC,EAAO,IAAK0C,GACpB,SAAC5E,EAAQkC,EAAOpE,EAAMiG,EAAM4B,EAASsgB,GAArC,OACE,8BACE,kBAACzR,GAAA,EAAD,CACEF,GAAItU,EAAOuU,WAAa,UAAYrS,EAAMgE,KAAO,OAASpI,EAAOiG,GAChEkiB,EAAIliB,MAHT,YAKe,uBAAGvG,KAAMmI,EAAU7H,EAAOiG,EAAOiiB,EAAWC,IAA5C,OALf,OAMQ,0BAAMzT,UAAU,wBANxB,QAQF,SAAC7M,EAAS7H,EAAMiG,EAAMkiB,GAAtB,OACE,8BACGA,EAAIliB,KADP,YAEe,uBAAGvG,KAAMmI,EAAU7H,EAAOiG,EAAOiiB,EAAWC,IAA5C,OAFf,OAGQ,0BAAMzT,UAAU,wBAHxB,WAON,OACE,kBAAC,IAAM6T,SAAP,KACE,6BACA,yBAAK7T,UAAU,uBACb,kBAACgR,GAAA,EAAD,CACEja,MAAOA,U,GAvCIyE,IAAMC,WCAvBqY,G,+MAOJzN,WAAa,SAAC9X,GACZ,EAAKgN,MAAMpO,SAAS+F,EAClB,EAAKqI,MAAM/N,OAAQ,EAAK+N,MAAMvP,MAAM+d,OAAOta,QAAS,Q,mEAItD+M,SAAS+D,MAAQ,aACjB,8E,+BAGS,IAEH7Q,EADiB2L,KAAKE,MAApBgL,WACiB3T,OAAOyI,KAAKE,MAAMvP,MAAM+d,OAAOta,SACxD,OACE,gBAAC,WAAD,KACE,uBAAKsO,MAAO,CAACiM,MAAO,UACjB3O,KAAKiO,iBAEP5Z,GAASA,EAAMuC,UACf,gBAAC,GAAD,CAAOvC,MAAOA,EAAOuT,OAAO,QAC1B,gBAAC,GAAD,CAAUzV,OAAQ6N,KAAKE,MAAM/N,OAAQkC,MAAOA,U,GA3B3B0W,IAAtB0N,GACGpK,UAAY,CACjB1d,MAAO2d,KAAUpX,OAAO0X,WACxB1D,WAAYoD,KAAUpX,OACtB/E,OAAQmc,KAAUpX,QA8BPuM,oBAAQ,SAAAlS,GAAK,MAAK,CAC/BY,OAAQZ,EAAMY,OACd+Y,WAAY3Z,EAAM8C,SAFLoP,CAGXgV,I,+BC1BEC,GAAmB,CAAC,MAAO,SAAU,UAGrCC,G,gLAMUnkB,GAAQ,IAAD,OACbokB,EAAsB,GAU5B,OATApkB,EAAMxE,SAAQ,SAACiG,EAAQkF,GACR/F,OAAOC,QAAQY,GAAQsH,QAClC,0CAAkBjJ,EAAlB,WACc,EAAM,EAAK4L,MAAM2Y,YACxB/jB,QACP8jB,EAAoBziB,KAAKgF,MAK3B,uBAAK5G,IAAI,WACNqkB,EAAoB9jB,OAAO,GAC3B,gBAAC,WAAD,KACE,sBAAIP,IAAI,kBAAR,WACCqkB,EAAoB9hB,KAAI,SAACqE,GAAD,OACvB,uBAAKwJ,UAAU,2BAA2BpQ,IAAK4G,GAC7C,sBAAI5G,IAAK4G,GAAMA,EAAf,KhE2CR,SAAuBP,GAC5B,IAAM8F,EAAQ9F,EAAKke,oBACnB,MAAyB,kBAAXpY,EAAsBA,EAAQ,GgE7CTqY,CAAcvkB,EAAM2G,KACzC/F,OAAOC,QAAQb,EAAM2G,IAAMrE,KAAI,mCAAEvC,EAAF,KAAOC,EAAP,YAC9B,EAAKwkB,WAAWzkB,EAAKC,GAAO,c,iCAUhCD,EAAKC,EAAOC,GACrB,IAAIwkB,EACJ,OAAK3kB,EAAiBC,EAAKC,EAAOC,EAAmBuL,KAAKE,MAAM2Y,UAI9DI,EADY,OAAVzkB,EAEA,mCAIyB,kBAAXA,EAEd,2BACGA,GAGsB,kBAAXA,EAEd,2BACE,gBAAC,KAAD,CACE8T,IAAK9T,EACL0B,KAAM,KACNud,UAAU,EACVC,iBAAiB,EACjBC,kBAAkB,KAKtB,2BACGnf,EAAM+U,YAMX,uBAAKhV,IAAKA,GACP0kB,GAAO,0BAAK1kB,GACZ0kB,GAAOA,IApCF,gBAAC,WAAD,CAAgB1kB,IAAKA,M,+BAyCtB,IAAD,OACAnC,EAAS4N,KAAKE,MAAd9N,KAER,OACE,gBAAC,WAAD,KACGgD,OAAOC,QAAQjD,GAAM0E,KAAI,mCAAEvC,EAAF,KAAOC,EAAP,WAClB,YAAND,EAAgB,EAAK2kB,cAAc1kB,GAAO,EAAKwkB,WAAWzkB,EAAKC,W,GAtFhD2L,aA6FnBgZ,G,oDA0BJ,WAAajZ,GAAQ,IAAD,wBAClB,cAAMA,IAjBR3O,MAAQ,CACN6nB,WAAW,EACXzjB,QAAQ,EACRH,SAAS,EACT6jB,SAAS,EACT3jB,IAAI,GAWc,EARpB4jB,KAAO,WACL,EAAKrZ,SAAS,CAAEmZ,WAAW,KAOT,EAJpBG,MAAQ,WACN,EAAKtZ,SAAS,CAAEmZ,WAAW,KAGT,MAGsB,EAAKlZ,MAArC3K,EAHU,EAGVA,KAAMikB,EAHI,EAGJA,SAAUC,EAHN,EAGMA,YAHN,OAKdlkB,EAAKI,OACP,EAAKpE,MAAMoE,QAAS,EACXJ,EAAKC,QACd,EAAKjE,MAAMiE,SAAU,EACZD,EAAK8jB,QACd,EAAK9nB,MAAM8nB,SAAU,EAErB,EAAK9nB,MAAMmE,IAAK,EAGdf,EAAgB6kB,EAAUC,KAC5B,EAAKloB,MAAM6nB,WAAY,GAhBP,E,sDAmBT,IAAD,EAC6CpZ,KAAKE,MAAlDxP,EADA,EACAA,SAAUqF,EADV,EACUA,KAAMR,EADhB,EACgBA,KAAMikB,EADtB,EACsBA,SAAUnjB,EADhC,EACgCA,SAElCqjB,EAAK,GACP1Z,KAAKzO,MAAMoE,OACb+jB,EAAGvjB,KACD,gBAAC6gB,GAAA,EAASI,SAAV,CAAmB7iB,IAAI,SAAS2Q,MAAM,qBACpC,wBAAMP,UAAU,cAAcd,QAAS7D,KAAKsZ,MAA5C,YAEKtZ,KAAKzO,MAAMiE,QACpBkkB,EAAGvjB,KACD,gBAAC6gB,GAAA,EAASI,SAAV,CAAmB7iB,IAAI,UAAU2Q,MAAM,qBACrC,wBAAMP,UAAU,eAAed,QAAS7D,KAAKsZ,MAA7C,aAEKtZ,KAAKzO,MAAM8nB,QACpBK,EAAGvjB,KACD,gBAAC6gB,GAAA,EAASI,SAAV,CAAmB7iB,IAAI,UAAU2Q,MAAM,qBACrC,wBAAMP,UAAU,eAAed,QAAS7D,KAAKsZ,MAA7C,aAEKtZ,KAAKzO,MAAMmE,IACpBgkB,EAAGvjB,KACD,gBAAC6gB,GAAA,EAASI,SAAV,CAAmB7iB,IAAI,KAAK2Q,MAAM,qBAChC,wBAAMP,UAAU,UAAUd,QAAS7D,KAAKsZ,MAAxC,QAGNI,EAAGvjB,KACD,gBAAC6gB,GAAA,EAASI,SAAV,CAAmB7iB,IAAI,YACrB,wBAAMoQ,UAAU,uBACd,gBAAC5B,GAAA,EAAD,CAAMhR,KAAK,KAAKmE,KAAK,mBACpBxF,KAKP,IAAIipB,EAAWpZ,YACbA,GAAOxK,EAAKA,KAAK4jB,SAASC,KAAKC,KAAK9jB,EAAKA,KAAK4jB,SAASG,QACvD1V,OAAO,CACLC,SAAU,yBACVC,QAAS,EACTC,SAAU,IAGdmV,EAAGvjB,KACD,gBAAC6gB,GAAA,EAASI,SAAV,CAAmB7iB,IAAI,iBACrB,wBAAMoQ,UAAU,iBAAiBgV,KAIrC,IAAMzS,EAAS7Q,EAAS0jB,IAAIhkB,EAAKA,KAAK9B,IAElCiC,EAAOH,EAAKA,KAAKG,KAChBA,IACHA,EAAOX,EAAKuJ,QAEV/I,EAAKkQ,OACP/P,EAAOH,EAAKkQ,KAAK/P,KAAO,KAAOA,GAEjC,IhEtIgCkiB,EAAKjO,EA0BXla,EgE4GpB+pB,GhEtI0B5B,EgEsIgBpY,KAAKE,MAAM3K,KhEtItB4U,EgEsI4BuO,GhErI5DtjB,OAAOC,QAAQ+iB,GAAK7a,QACzB,mCAAE0c,EAAF,KAAKC,EAAL,YAAa/P,EAAKta,SAASoqB,IAAY,KAANC,KACjCplB,OAAS,GgEoILqlB,OAAKxD,EAIT,OAHKqD,IACHG,EAAK,IAGL,gBAAC,WAAD,KACE,gBAACnD,GAAA,EAASC,KAAV,CACE1iB,IAAI,SACJ2iB,QAAShhB,EACTkkB,aAAclT,EACdiQ,eAAgBuC,EAChBW,YAAaF,GAEZH,GACA,gBAACM,GAAA,EAAD,KACE,gBAACC,GAAA,EAAD,CAAKC,GAAI,IACP,2BACE,gBAAC,GAAD,CAAYpoB,KAAM4N,KAAKE,MAAM3K,KAAMsjB,QAASH,SAMrD,gBAAC+B,GAAA,EAAD,CAAOlmB,IAAI,QAAQmmB,KAAM1a,KAAKzO,MAAM6nB,UAAWuB,OAAQ3a,KAAKuZ,MACrDqB,gBAAgB,4BACrB,gBAACH,GAAA,EAAMnJ,OAAP,KACE,0BACE3M,UAAU,QACVd,QAAS7D,KAAKuZ,MACdsB,cAAY,OACZC,aAAW,SAEX,gBAAC/X,GAAA,EAAD,CAAMhR,KAAK,KAAKmE,KAAK,WAEvB,gBAACukB,GAAA,EAAMM,MAAP,KAAcrqB,EACZ,wBAAMiU,UAAU,kCACd,qBAAGhV,KAAM,KhEjJKM,EgEiJYupB,EhEhJjCvpB,EAAK8X,KAAK,OgEiJD,gBAAChF,GAAA,EAAD,CAAMhR,KAAK,KAAKmE,KAAK,OAAOgP,MAAM,kBAK1C,gBAACuV,GAAA,EAAMlJ,KAAP,KACE,gBAAC,GAAD,CAAYnf,KAAMmD,W,GAlJP4K,aA0JjB6a,G,2KAQO,IAAD,EAC8Chb,KAAKE,MAAnD3J,EADA,EACAA,SAAUF,EADV,EACUA,SAAUmjB,EADpB,EACoBA,SAAUC,EAD9B,EAC8BA,YAGhCvS,EADgC,QAAnB3Q,EAASpB,OAEZkB,EAAS0jB,IAAIxjB,EAASpB,MAAQoB,EAASG,QACvC/B,EAAgB6kB,EAAUC,GAEpCC,EAAK,GAWX,OAVInjB,EAAS0kB,SACXvB,EAAGvjB,KACD,gBAAC6gB,GAAA,EAASI,SAAV,CAAmB7iB,IAAI,UAAU2Q,MAAM,mJACrC,wBAAMP,UAAU,uBACd,gBAAC5B,GAAA,EAAD,CAAMhR,KAAK,KAAKmE,KAAK,SADvB,cAQJ,gBAAC8gB,GAAA,EAASC,KAAV,CACEiE,SAAS,EACT/D,eAAgBuC,EAChBU,aAAclT,EACdgQ,QAAS3gB,EAASpB,MAAM,GAAGgmB,cAAgB5kB,EAASpB,MAAMrF,MAAM,GAAK,YACrEyM,YAAahG,EAASA,UAEnBA,EAASX,MAAMkB,KAAI,SAACjB,EAAMsF,GAAP,OAClB,gBAAC,WAAD,CAAgB5G,IAAK4G,GACnB,gBAACmf,GAAA,EAAD,CAAK/lB,IAAI,QACP,gBAACgmB,GAAA,EAAD,CAAKC,GAAI,IACP,uCAAe3kB,EAAKA,KAAKK,QAG5BL,EAAKC,MAAMgB,KAAI,SAACf,EAAMqlB,GAAP,OACdhmB,OAAOC,QAAQU,EAAKb,OAAO4B,KAAI,mCAAEpG,EAAF,KAAY6E,EAAZ,YAC7B,gBAAC+kB,GAAA,EAAD,CAAK/lB,IAAK6mB,EAAK1qB,GACb,gBAAC6pB,GAAA,EAAD,CAAKC,GAAI,IACP,gBAAC,GAAD,CAAU9pB,SAAUA,EACV8oB,SAAUA,EAAS6B,OAAO,CACxBlgB,EAAIoO,WAAY6R,EAAK7R,WAAY7Y,IACnC+oB,YAAaA,EAAa1jB,KAAMA,EAAMR,KAAMA,EAC5Cc,SAAUA,qB,GAlDnB8J,aAoFRmb,G,2KAhBF,IAAD,EACkCtb,KAAKE,MAAvC7J,EADA,EACAA,SAAUpB,EADV,EACUA,OAAQwkB,EADlB,EACkBA,YAE1B,OACE,gBAAC,WAAD,KACE,gBAACzC,GAAA,EAAD,CAAUziB,IAAI,YAAYoQ,UAAU,gBACjC1P,EAAO6B,KAAI,SAACP,EAAU4E,GAAX,OACV,gBAAC,GAAD,CAAU5G,IAAK4G,EAAK5E,SAAUA,EAAUijB,SAAU,CAACre,EAAIoO,YAC7CkQ,YAAaA,EAAapjB,SAAUA,a,GAfpC8J,aClUhBob,G,+MAOJvQ,WAAa,SAAC9X,GACZ,EAAKgN,MAAMpO,SAAS+F,EAClB,EAAKqI,MAAM/N,OAAQ,EAAK+N,MAAMvP,MAAM+d,OAAOta,QAAS,Q,mEAItD+M,SAAS+D,MAAQ,aACjB,8E,+BAGS,IAEH7Q,EADiB2L,KAAKE,MAApBgL,WACiB3T,OAAOyI,KAAKE,MAAMvP,MAAM+d,OAAOta,SAClDkY,EAAOtM,KAAKE,MAAMxQ,SAAS4c,KAAK/K,UAAU,GAAGtG,MAAM,KAEzD,OACE,gBAAC,WAAD,KACE,uBAAKyH,MAAO,CAACiM,MAAO,UACjB3O,KAAKiO,iBAEP5Z,GAASA,EAAMY,QACf,gBAAC,GAAD,CAAOZ,MAAOA,EAAOuT,OAAO,WAC1B,gBAAC,GAAD,CACE3S,OAAQZ,EAAMY,OACdoB,SAAUhC,EAAMgC,SAChBojB,YAAanN,EAAKxX,OAAO,EAAEwX,OAAKqK,U,GAhCd5L,IAAzBwQ,GACGlN,UAAY,CACjB1d,MAAO2d,KAAUpX,OAAO0X,WACxB1D,WAAYoD,KAAUpX,OACtB/E,OAAQmc,KAAUpX,QAoCPuM,oBAAQ,SAAAlS,GAAK,MAAK,CAC/BY,OAAQZ,EAAMY,OACd+Y,WAAY3Z,EAAM8C,SAFLoP,CAGX8X,I,UC9CJ,SAASC,GAAiBC,GACxB,IAAMC,EAAQjsB,OAAOC,SAAS4c,KAAK/K,UAAU,GAAGtG,MAAM,KAAKnE,IAAIiP,QACzD4V,EAAc5V,OAAO0V,EAAMG,cAAcC,WAC/C,GAAKJ,EAAMK,UAA6B,IAAjBJ,EAAM5mB,OAItB,CAEL,IAAMinB,EAAYL,EAAM5kB,KAAI,SAACklB,GAAD,OAAU5W,KAAK6W,IAAIN,EAAcK,MAEzDD,EAAU,GAAKA,EAAU,GAC3BL,EAAM,GAAKC,EAEXD,EAAM,GAAKC,OATbD,EAAM,GAAK,CAACC,GACZD,EAAMrf,OAAO,EAAG,GAWlB5M,OAAOC,SAAS4c,KAAO,IAAMoP,EAAMpR,OAAOvC,KAAK,K,IAI3CmU,G,2KASO,IAAD,EAC0Blc,KAAKE,MAA/B7L,EADA,EACAA,MAAOjC,EADP,EACOA,KAAMmJ,EADb,EACaA,SACrB,OACE,gBAAC,WAAD,KACE,gBAACmb,GAAA,EAAD,KACE,gBAACA,GAAA,EAAMrG,QAAP,qBAA6Bhc,EAAMgE,MACnC,gBAACqe,GAAA,EAAMnF,KAAP,KACE,gBAAC5K,GAAA,EAAD,CAAMF,GAAG,KAAT,OADF,OAEE,gBAACE,GAAA,EAAD,CAAMF,GAAG,eAAT,SAFF,OAGE,gBAACE,GAAA,EAAD,CAAMF,GAAG,eAAT,QAHF,OAIE,gBAACE,GAAA,EAAD,CAAMF,GAAG,eAAT,WAJF,OAKE,gBAACE,GAAA,EAAD,CAAMF,GAAG,eAAT,SALF,OAME,gBAACE,GAAA,EAAD,CAAMF,GAAG,eAAT,SANF,OAOE,gBAACE,GAAA,EAAD,CAAMF,GAAG,eAAT,SAPF,OAQE,gBAACE,GAAA,EAAD,CAAMF,GAAG,eAAT,YARF,SAWF,uBAAK9B,UAAU,mBACb,6BACE,6BACGvS,EAAK0E,KAAI,SAACoE,GAAD,QACLK,GAAaL,EAAKK,UAAYA,IAChC,sBAAIhH,IAAK2G,EAAKxE,MAAOiO,UAAW,MAAQzJ,EAAKxE,OAC3C,sBAAIiO,UAAU,cAAcd,QAAS2X,IAClCtgB,EAAKxE,OAER,0BACE,wBAAMiO,UAAW,iBAAiBzJ,EAAKK,UAAU,IAC9CL,EAAKrH,KAAK,mB,GArCZsM,aAmDPsD,gBAAQ,SAAAlS,GAAK,MAAK,CAACY,OAAQZ,EAAMY,UAAjCsR,CAA2CyY,ICrEpDC,G,+MAOJ5qB,MAAQ,CACNmqB,MAAO,GACPU,eAAe,G,EAGjBpR,WAAa,SAAC9X,GACZ,EAAKgN,MAAMpO,SAAS0J,EAClB,EAAK0E,MAAM/N,OACX,EAAK+N,MAAMvP,MAAM+d,OAAOta,QACxB,EAAK8L,MAAMvP,MAAM+d,OAAO/T,KACxBzH,K,EAQJmpB,mBAAqB,SAACX,GACpB,IAAMY,EAAU,SAACC,GACf,OAAOpb,SAASqb,uBAAuB,MAAQD,GAAI,IAE/CE,EAAS,SAACf,GACd,OAAIA,EAAM5mB,OAAS,GAAK4mB,EAAM,GAAKA,EAAM,GAChCA,EAAM,GAENA,EAAM,IAee,IAA5B,EAAKnqB,MAAMmqB,MAAM5mB,QACjB,EAAKvD,MAAMmqB,MAAM,KAAOA,EAAM,IAC9B,EAAKnqB,MAAMmqB,MAAM,KAAOA,EAAM,IAC5B,EAAKnqB,MAAMmqB,MAAM5mB,OAAS,GAfZ,SAAC4mB,GAEnB,IADA,IAAM9B,EAAM6C,EAAOf,GACVvgB,EAAMugB,EAAM,GAAIvgB,GAAOye,EAAKze,IACnCmhB,EAAQnhB,GAAKuhB,UAAUC,OAAO,aAc9BC,CAAY,EAAKrrB,MAAMmqB,OAGzB,EAAKzb,SAAS,CAACyb,MAAOA,EAAOU,eAAe,KAd5B,SAACV,GAEjB,IADA,IAAM9B,EAAM6C,EAAOf,GACVvgB,EAAMugB,EAAM,GAAIvgB,GAAOye,EAAKze,IACnCmhB,EAAQnhB,GAAKuhB,UAAUjmB,IAAI,aAc7BomB,CAAU,EAAKtrB,MAAMmqB,Q,mEAtCvBva,SAAS+D,MAAQ,qBACjB,8E,2CA0CA,IAAMwW,EAAQ1b,KAAKE,MAAMxQ,SAAS4c,KAAK/K,UAAU,GAAGtG,MAAM,KAAKnE,IAAIiP,QACnE,GAAI2V,EAAM5mB,OAAS,EAAG,CACpB,IAAMgoB,EAAU3b,SAASqb,uBAAuB,MAAQd,EAAM,IAE9D,GAAIoB,EAAQhoB,OAAS,EAAG,CACtB,IAAKkL,KAAKzO,MAAM6qB,cAAe,CAE7B,IAAMjV,EAAShG,SAASqb,uBAAuB,UAC3CrV,EAAOrS,SACTgoB,EAAQ,GAAGC,iBACXttB,OAAOutB,OAAO,EAAGvtB,OAAOwtB,QAAU9V,EAAO,GAAG+V,aAAe,IAI/Dld,KAAKqc,mBAAmBX,O,+BAKnB,IACDxQ,EAAelL,KAAKE,MAApBgL,WACF7W,EAAQ2L,KAAKE,MAAM7L,MAAMkD,OAAOyI,KAAKE,MAAMvP,MAAM+d,OAAOta,SACxDmH,EAAW4hB,iBAAMnd,KAAKE,MAAMxQ,SAAS0tB,QAAQ7hB,SACnD,OACE,gBAAC,WAAD,KACE,uBAAKmH,MAAO,CAACiM,MAAO,UACjB3O,KAAKiO,iBAEP/C,EAAW9Y,MAAQ,gBAAC,GAAD,CAASiC,MAAOA,EAAOjC,KAAM8Y,EAAW9Y,KAAMmJ,SAAUA,S,GA5F1DwP,IAApBoR,GACG9N,UAAY,CACjB1d,MAAO2d,KAAUpX,OAAO0X,WACxB1D,WAAYoD,KAAUpX,OACtB/E,OAAQmc,KAAUpX,QA8FPuM,oBAAQ,SAAAlS,GAAK,MAAK,CAC/BY,OAAQZ,EAAMY,OACd+Y,WAAY3Z,EAAMsJ,QAClBxG,MAAO9C,EAAM8C,SAHAoP,CAIX0Y,I,0CC6GWkB,G,+MAjNbC,iBAAmB,WACjB,IAAMC,EAAY,IAAIC,gBAAgB,EAAKtd,MAAMxQ,SAAS0tB,QACtDK,EAAgB,GAUpB,OATA,EAAKC,YAAY1tB,SAAQ,SAAA4K,GACvB2iB,EAAUI,OAAO/iB,EAAK3G,IAAIjE,SAAQ,SAAA4tB,GAChCH,EAActnB,KAAK,CACjBuK,MAAO9F,EAAKsK,MAAQ,KAAO0Y,EAC3BrpB,IAAKqG,EAAK3G,GACVO,MAAOopB,UAGb,EAAK3d,SAAS,CAACwd,cAAeA,IACvBA,G,EAqBTI,YAAc,SAACC,EAAOtpB,GACpB,IAAIupB,EAAa,GAEfA,EADED,EAAM5Y,MACK4Y,EAAM5Y,MAEN4Y,EAEfC,GAAc,KAEVvpB,EAAMwpB,eACRD,IACGvpB,EAAMwpB,eAAe9Y,OAAS1Q,EAAMwpB,gBACrC,KACCxpB,EAAMypB,YAAY/Y,OAAS1Q,EAAMypB,aAC3BzpB,EAAM0Q,MACf6Y,GAAcvpB,EAAM0Q,MAEpB6Y,GAAcvpB,EAGhB,IAAIipB,EAAa,uBAAO,EAAKlsB,MAAMksB,eAAlB,CAAiC,CAChD/c,MAAOqd,EACPxpB,IAAKupB,EAAM7pB,GACXO,MAAOA,KAET,EAAKyL,SAAS,CAAEwd,cAAeA,IAC/B,EAAKzS,WAAWyS,GAChB,EAAKS,UAAUT,I,EAGjBU,iBAAmB,SAAAC,GACa,EAAK7sB,MAA3B8sB,oBACkBD,GACxB,EAAKne,UAAS,SAAAmU,GACZ,MAAO,CACL3S,aAAc,GACd4c,kBAAmBD,EACnBJ,eAC4B,mBAA1BI,EAAWA,gBACPzH,EACAvC,EAAU4J,eAChBM,cAC4B,mBAA1BF,EAAWA,WACP,GACAhK,EAAUkK,mB,EAMxBC,oBAAsB,SAAAN,GAAgB,IAAD,EACS,EAAK1sB,MAAzC8sB,EAD2B,EAC3BA,kBAEJJ,IAH+B,EACRxc,eAGzB,EAAKxB,SAAS,CAAEwB,aAAcwc,IAC1BA,GACF,EAAKJ,YAAYQ,EAAmBJ,K,EAK1CO,uBAAyB,SAAAC,GACI,EAAKltB,MAAxBysB,iBACeS,GACrB,EAAKxe,SAAS,CAAE+d,eAAgBS,EAAUhd,aAAc,M,EAI5Did,sBAAwB,SAAAlqB,GAAU,IAAD,EAC6B,EAAKjD,MAAzDkQ,EADuB,EACvBA,aAAc4c,EADS,EACTA,kBAAmBL,EADV,EACUA,eAEzC,GAAIA,GAAkBvc,IAAiBjN,IACrC,EAAKyL,SAAS,CAAEwB,aAAcjN,IAC1BA,GAAO,CACT,IAAIypB,EAAc,CAChBD,eAAgBA,EAChBC,YAAazpB,GAEf,EAAKqpB,YAAYQ,EAAmBJ,K,EAK1CU,mBAAqB,SAAAlD,GACnB,EAAKxb,SAAS,CAAEwB,aAAcga,EAAMxP,OAAOzX,S,EAG7CoqB,gBAAkB,SAAAC,GAAa,IAAD,EACgB,EAAKttB,MAAzCkQ,EADoB,EACpBA,aAAc4c,EADM,EACNA,kBAED,UAAjBQ,EAAStqB,KAAmBkN,GAAgBA,EAAa3M,OAAS,IACpE,EAAKmL,SAAS,CAAEwB,aAAc,KAC9B,EAAKoc,YAAYQ,EAAmB5c,GACpCod,EAASC,kBACTD,EAAS3S,mB,EAIb6S,aAAe,SAAAxhB,GAAW,IAChBkgB,EAAkB,EAAKlsB,MAAvBksB,cAEJ/mB,EAAQ+mB,EAAcne,QAAQ/B,GAClC,GAAI7G,GAAS,EAAG,CACd,IAAIsoB,EAAO,uBACNvB,EAAc3tB,MAAM,EAAG4G,IADjB,aAEN+mB,EAAc3tB,MAAM4G,EAAQ,KAEjC,EAAKuJ,SAAS,CAAEwd,cAAeuB,IAC/B,EAAKhU,WAAWgU,GAChB,EAAKd,UAAUc,K,EAInBC,aAAe,WACb,EAAKhf,SAAS,CAAEwd,cAAe,KAC/B,EAAKzS,aACL,EAAKkT,UAAU,K,EAmBjBgB,aAAe,WAAO,IAAD,EAC0B,EAAK3tB,MAA1C8sB,EADW,EACXA,kBAAmBZ,EADR,EACQA,cAC3B,OACE,gBAAC,WAAD,KACE,uBAAK/a,MAAO,CAAEX,MAAO,MACnB,gBAACod,GAAA,EAAD,KACE,gBAACA,GAAA,EAAOC,aAAR,CACE1B,YAAa,EAAKA,YAClBW,kBAAmBA,EACnBgB,qBAAsB,EAAKlB,mBAE5B,EAAKmB,sBAGT7B,GAAiBA,EAAc3oB,OAAS,GACvC,gBAACyqB,GAAA,EAAQC,QAAT,KACE,gBAACL,GAAA,EAAOM,YAAR,KAAqB,mBACrB,gBAACN,GAAA,EAAOO,KAAR,KACGjC,EAAc3mB,KAAI,SAAC8D,EAAMlE,GACxB,OACE,gBAACyoB,GAAA,EAAOlI,KAAR,CACE1iB,IAAKmC,EACLipB,SAAU,EAAKZ,aACfa,WAAYhlB,GAEXA,EAAK8F,WAKd,gBAACmf,GAAA,EAAD,CAAQhc,QAAS,SAAAG,GACfA,EAAEkI,iBACF,EAAK+S,iBAFP,wB,yDAvLCxB,GACT,IAAIxtB,EAAOR,OAAOC,SAASoc,SACvB2R,EAAc3oB,OAAS,IACzB7E,GAAQ,IACRwtB,EAAcztB,SAAQ,SAAC4K,EAAMO,GACvBA,EAAM,IACRlL,GAAQ,KAEVA,GACE6vB,mBAAmBllB,EAAKrG,KACtB,IACFurB,mBAAmBllB,EAAKpG,WAI9B/E,OAAOswB,QAAQC,UAAU,CAAC/vB,KAAMA,GAAO,GAAIA,K,0CA0HxB,IAAD,SAC0B+P,KAAKzO,MAAzC8sB,EADU,EACVA,kBAAmB5c,EADT,EACSA,aAC3B,OAAK4c,EAIH,gBAAC5Q,GAAA,EAAD,CACE1b,KAAMssB,EAAkBD,WACxB5pB,MAAOiN,EACP2B,YAAaib,EAAkBjb,YAC/BH,SAAU,SAAAe,GAAC,OAAI,EAAK2a,mBAAmB3a,IACvC2J,WAAY,SAAA3J,GAAC,OAAI,EAAK4a,gBAAgB5a,MARjC,S,GAhKc7D,aCKrB8f,G,oDAMJ,aAAgB,IAAD,+BACb,gBAUFjV,WAAa,SAACN,GACZ,IAAIwV,EAAc,GACdxV,GACFA,EAAQ1a,SAAQ,SAAA4K,GAAI,OAAIslB,GAAe,IAAMtlB,EAAKrG,IAAM,IAAMqG,EAAKpG,SAErE,EAAKyL,SAAS,CAAC1I,OAAQ,O1E+E3B,SAAsB7E,EAAWwtB,GAC/B,IAAIjwB,EAAO,SAIX,OAHIiwB,IACFjwB,GAAQ,IAAMiwB,EAAYpwB,MAAM,IAE3BkC,IAAMC,IAAI9B,EAASuC,EAAYzC,G0EnFpCkwB,CAAY,EAAKjgB,MAAM/N,OAAOO,UAAWwtB,GAAajvB,MAAK,SAAAiB,GACzD,EAAK+N,SAAS,CAAC1I,OAAQrF,EAASE,WAhBlC,EAAKguB,sBACL,EAAK7uB,MAAQ,CACXgG,OAAQ,KACR8mB,kBAAmB,EAAKX,YAAY,GACpCD,cAAe,GACfhc,aAAc,IAPH,E,iEAuBbN,SAAS+D,MAAQ,cACblF,KAAKE,MAAM/N,OAAO+D,MACpB8J,KAAKgL,WAAWhL,KAAKsd,sB,yCAILrS,GACdjL,KAAKE,MAAM/N,OAAO+D,OAAS+U,EAAU9Y,OAAO+D,MAC5C8J,KAAKE,MAAMxB,WAAauM,EAAUvM,UACpCsB,KAAKgL,WAAWhL,KAAKsd,sB,4CAIF,IAAD,OACdnN,EAAe,SAAA3b,GAAK,OAAI,gBAAC4b,GAAA,EAAMC,QAAP,KAAgB7b,IACxC8b,EAAa,SAAC9b,GAAD,OACjB,gBAAC4b,GAAA,EAAMG,KAAP,KAAa/b,IACT6rB,EAAkB,SAAC7rB,EAAO8rB,GAAR,OACtB,gBAAClQ,GAAA,EAAMG,KAAP,KACE,gBAAC5J,GAAA,EAAD,CAAMF,GAAI,EAAKvG,MAAM/N,OAAOuU,WAAa,UAAY4Z,EAAQ7P,QAAQpY,MAAO7D,KAG1E+rB,EAAmB,SAAC/rB,EAAO8rB,GAAR,OACvB,gBAAClQ,GAAA,EAAMG,KAAP,KACE,qBAAG5gB,KAAM2wB,EAAQ7P,QAAQ+P,SAAUhsB,EAAQ8rB,EAAQ7P,QAAQ7d,OAAO,IAAI0tB,EAAQ7P,QAAQgQ,SAAWH,EAAQ7P,QAAQiQ,OAASJ,EAAQ7P,QAAQiQ,OAAO3oB,OAAO,EAAG,GAAKuoB,EAAQ7P,QAAQmB,UAG9K+O,EAAiB,SAACnsB,GAAD,OACrB,gBAAC4b,GAAA,EAAMG,KAAP,KACGhQ,YAAgB/L,EAAO,WAAW4P,OAAO,4BAGxCwc,EAAa,SAACpsB,GAAD,OACjB,gBAAC4b,GAAA,EAAMG,KAAP,KACGhQ,OAAW/L,GAAOgM,GAAG,EAAKN,MAAMxB,UAAU0F,OAAO,yBAGtDpE,KAAK2Q,QAAU,GACf3Q,KAAK0d,YAAc,GACD,CAChB,MACA,UACA,SACA,WACA,SACA,WACA,aACA,UACQ1tB,SAAQ,SAAA4gB,GAChB,IAAIE,EAAOF,EACPC,EAAYP,EAED,QAAXM,EACFE,EAAO,WACa,eAAXF,GACTE,EAAO,aACPD,EAAY+P,GACQ,WAAXhQ,GACTE,EAAO,SACPD,EAAY0P,GACQ,WAAX3P,EACTC,EAAYwP,EACQ,aAAXzP,IACTC,EAAY8P,GAEd,IAAMjgB,EAAQkQ,EAAOtP,OAAO,GAAG6Z,cAAgBvK,EAAO9gB,MAAM,GAC5D,EAAK6gB,QAAQxa,KAAK,CAChBgR,OAAQ,CAACzG,MAAOA,EAAOqQ,WAAY,CAACZ,IACpCa,SAAUF,EACVG,KAAM,CAACF,WAAY,CAACF,MAET,eAATC,GAAkC,YAATA,GAA+B,aAATA,GACnC,YAATA,GAA+B,SAATA,GAC3B,EAAK4M,YAAYvnB,KAAK,CACpBlC,GAAI6c,EACJ5L,MAAOxE,EACP0C,YAAa,aAAe1C,EAC5B0d,WAAY,YAKlBpe,KAAK0d,YAAYvnB,KAAK,CACpBlC,GAAI,OACJiR,MAAO,QACP9B,YAAa,uBACbgb,WAAY,W,kCAIH7mB,GACX,OACE,gBAAC6Y,GAAA,EAAMc,WAAP,CACEC,SAAO,EACPC,UAAQ,EACRT,QAAS3Q,KAAK2Q,SAEd,gBAACP,GAAA,EAAMkB,OAAP,MACA,gBAAClB,GAAA,EAAMmB,KAAP,CACExC,KAAMxX,EACNia,OAAO,OACPqP,MAAO,SAACpY,GACN,OAAQA,EAAIxS,QACV,IAAK,UACH,MAAO,CAAE0O,UAAW,WACtB,QACE,MAAO,CAAEA,UAAW,kB,+BAMxB,IACApN,EAAWyI,KAAKzO,MAAhBgG,OACR,OACE,gBAAC,WAAD,KACGyI,KAAKkf,eACL3nB,EAASyI,KAAK8gB,YAAYvpB,GAAU,4C,GAlJpB8lB,IAAnB4C,GACG5R,UAAY,CACjBlc,OAAQmc,KAAUpX,OAClBwH,SAAU4P,KAAUC,QAqJT9K,oBAAQ,SAAAlS,GAAK,MAAK,CAACY,OAAQZ,EAAMY,OAAQuM,SAAUnN,EAAMmN,YAAzD+E,CAAqEwc,IC3J9Ec,G,2KAMO,IAAD,OACA5oB,EAAa6H,KAAKE,MAAlB/H,SACF4W,EAAO,GAIPiS,EAAY,GACZC,EAAe,CACnB,MAAO,SAAU,SAAU,YA6C7B,MAlDkB,CAChB,SAAU,UAAW,SAAU,WAAY,SAAU,UAAW,YAOxDjxB,SAAQ,SAAA4gB,GAChB,IAAIlQ,EAAQkQ,EACRpc,EAAQ2D,EAASyY,GACN,WAAXA,IACFpc,EACE,qBAAG7E,KAAMwI,EAASqoB,SACfroB,EAASvF,OADZ,IACqBuF,EAASsoB,WAInB,aAAX7P,IACFlQ,EAAQ,YAENlM,GACFua,EAAK5Y,KAAK,CAAC5B,IAAKmM,EAAOlM,MAAOA,OAI9B2D,EAASZ,QACXY,EAASZ,OAAOvH,SAAQ,SAAAqE,GACtB,IAAMoU,EAAM,GACZwY,EAAajxB,SAAQ,SAAA4gB,GACJ,QAAXA,EACFnI,EAAItS,KAAK9B,EAAMgS,UACK,aAAXuK,EACTnI,EAAItS,KAAKoK,YAAgBlM,EAAMslB,SAAU,WAC/BvV,OAAO,2BACG,WAAXwM,EACTnI,EAAItS,KAAK9B,EAAM0S,OAAS,OAAS,SACb,WAAX6J,EACTnI,EAAItS,KAAK,gBAACwQ,GAAA,EAAD,CACEF,GAAI,EAAKvG,MAAM/N,OAAOuU,WAAa,UAAYrS,EAAMgE,MACpDhE,EAAM4B,SAGlBwS,EAAItS,KAAK9B,EAAMuc,OAGnBoQ,EAAU7qB,KAAKsS,MAKjB,gBAAC,WAAD,KACE,gBAACiO,GAAA,EAAD,KACE,gBAACA,GAAA,EAAMrG,QAAP,wBAAgClY,EAASE,MACzC,gBAACqe,GAAA,EAAMnF,KAAP,KACE,yBAAO5M,UAAU,sCACf,6BACGoK,EAAKjY,KAAI,SAAA8D,GAAI,OACZ,sBAAIrG,IAAKqG,EAAKrG,KACZ,0BAAKqG,EAAKrG,KACV,0BAAKqG,EAAKpG,eAOrB2D,EAASZ,QACR,gBAACmf,GAAA,EAAD,KACE,gBAACA,GAAA,EAAMrG,QAAP,eACA,gBAACqG,GAAA,EAAMnF,KAAP,KACE,yBAAO5M,UAAU,sCACf,6BACE,0BACGsc,EAAanqB,KAAI,SAAA8D,GAAI,OACpB,sBAAIrG,IAAKqG,GAAOA,QAItB,6BACGzC,EAASZ,OAAOT,KAAI,SAAC8D,EAAMO,GAAP,OACnB,sBAAI5G,IAAK4G,EAAKwJ,UAA2B,YAAhB/J,EAAK3E,OAAuB,UAAW,WAC7D+qB,EAAU7lB,GAAKrE,KAAI,SAAC8D,EAAMO,GAAP,OAClB,sBAAI5G,IAAK4G,GAAMP,mB,GA5FhBuF,aA2GRsD,gBAAQ,SAAAlS,GAAK,MAAK,CAACY,OAAQZ,EAAMY,UAAjCsR,CAA2Csd,IC3GpDG,G,+MAOJlW,WAAa,SAAC9X,GACZ,EAAKgN,MAAMpO,SAAS0G,EAClB,EAAK0H,MAAM/N,OAAQ,EAAK+N,MAAMvP,MAAM+d,OAAOtW,WAAYlF,K,mEAIzDiO,SAAS+D,MAAQ,gBACjB,8E,+BAGS,IAEH/M,EADiB6H,KAAKE,MAApBgL,WACoBzS,UAAUuH,KAAKE,MAAMvP,MAAM+d,OAAOtW,YAC9D,OACE,gBAAC,WAAD,KACE,uBAAKsK,MAAO,CAACiM,MAAO,UACjB3O,KAAKiO,iBAEP9V,GAAY,gBAAC,GAAD,CAAUA,SAAUA,S,GAzBd4S,IAArBmW,GACG7S,UAAY,CACjB1d,MAAO2d,KAAUpX,OAAO0X,WACxB1D,WAAYoD,KAAUpX,OACtB/E,OAAQmc,KAAUpX,QA2BPuM,oBAAQ,SAAAlS,GAAK,MAAK,CAC/BY,OAAQZ,EAAMY,OACd+Y,WAAY3Z,EAAM8C,SAFLoP,CAGXyd,ICjCEC,G,oDAKJ,aAAgB,IAAD,+BACb,gBAWFnW,WAAa,SAACN,GACZ,IAAIwV,EAAc,GACdxV,GACFA,EAAQ1a,SAAQ,SAAA4K,GAAI,OAAIslB,GAAe,IAAMtlB,EAAKrG,IAAM,IAAMqG,EAAKpG,SAErE,EAAKyL,SAAS,CAACxH,UAAW,O7E2F9B,SAAyB/F,EAAWwtB,GAClC,IAAIjwB,EAAO,YAIX,OAHIiwB,IACFjwB,GAAQ,IAAMiwB,EAAYpwB,MAAM,IAE3BkC,IAAMC,IAAI9B,EAASuC,EAAYzC,G6E/FpCmxB,CAAe,EAAKlhB,MAAM/N,OAAOO,UAAWwtB,GAAajvB,MAAK,SAAAiB,GAC5D,EAAK+N,SAAS,CAACxH,UAAWvG,EAASE,WAhBrC,EAAKguB,sBACL,EAAK7uB,MAAQ,CACXkH,UAAW,KACX4lB,kBAAmB,EAAKX,YAAY,GACpCD,cAAe,GACfhc,aAAc,IARH,E,iEAwBbN,SAAS+D,MAAQ,iBACblF,KAAKE,MAAM/N,OAAO+D,MACpB8J,KAAKgL,WAAWhL,KAAKsd,sB,yCAILrS,GACdjL,KAAKE,MAAM/N,OAAO+D,OAAS+U,EAAU9Y,OAAO+D,MAC9C8J,KAAKgL,WAAWhL,KAAKsd,sB,4CAIF,IAAD,OACdnN,EAAe,SAAA3b,GAAK,OAAI,gBAAC4b,GAAA,EAAMC,QAAP,KAAgB7b,IACxC8b,EAAa,SAAC9b,GAAD,OAAW,gBAAC4b,GAAA,EAAMG,KAAP,KAAa/b,IACrC+rB,EAAmB,SAAC/rB,EAAO8rB,GAAR,OACvB,gBAAClQ,GAAA,EAAMG,KAAP,KACE,qBAAG5gB,KAAM2wB,EAAQ7P,QAAQ+P,SACtBhsB,EACA8rB,EAAQ7P,QAAQ7d,OAAS,IAAM0tB,EAAQ7P,QAAQgQ,SAC/CH,EAAQ7P,QAAQiQ,OACdJ,EAAQ7P,QAAQiQ,OAAO3oB,OAAO,EAAG,GACnCuoB,EAAQ7P,QAAQmB,UAIjByP,EAAqB,SAAC7sB,EAAO8rB,GAAR,OACzB,gBAAClQ,GAAA,EAAMG,KAAP,KACE,gBAAC5J,GAAA,EAAD,CACEF,GAAI,EAAKvG,MAAM/N,OAAOuU,WAClB,aAAe4Z,EAAQ7P,QAAQpY,MAClC7D,KAIPwL,KAAK2Q,QAAU,GACf3Q,KAAK0d,YAAc,GACD,CAChB,UACA,SACA,WACA,SACA,UACQ1tB,SAAQ,SAAA4gB,GAChB,IAAIE,EAAOF,EACPC,EAAYP,EACD,WAAXM,EACFC,EAAY0P,EACQ,WAAX3P,IACTC,EAAYwQ,GAEd,IAAM3gB,EAAQkQ,EAAOtP,OAAO,GAAG6Z,cAAgBvK,EAAO9gB,MAAM,GAC5D,EAAK6gB,QAAQxa,KAAK,CAChBgR,OAAQ,CAACzG,MAAOA,EAAOqQ,WAAY,CAACZ,IACpCa,SAAUF,EACVG,KAAM,CAACF,WAAY,CAACF,MAEP,WAAXD,GACF,EAAK8M,YAAYvnB,KAAK,CACpBlC,GAAI6c,EACJ5L,MAAOxE,EACP0C,YAAa,aAAe1C,EAC5B0d,WAAY,YAKlBpe,KAAK0d,YAAYvnB,KAAK,CACpBlC,GAAI,OACJiR,MAAO,WACP9B,YAAa,0BACbgb,WAAY,W,kCAIH3lB,GACX,OACE,gBAAC2X,GAAA,EAAMc,WAAP,CACEC,SAAO,EACPC,UAAQ,EACRT,QAAS3Q,KAAK2Q,SAEd,gBAACP,GAAA,EAAMkB,OAAP,MACA,gBAAClB,GAAA,EAAMmB,KAAP,CACExC,KAAMtW,EACN+Y,OAAO,OACPqP,MAAO,SAACpY,GACN,OAAQA,EAAIxS,QACV,IAAK,UACH,MAAO,CAAE0O,UAAW,WACtB,QACE,MAAO,CAAEA,UAAW,kB,+BAMxB,IACAlM,EAAcuH,KAAKzO,MAAnBkH,UACR,OACE,gBAAC,WAAD,KACGuH,KAAKkf,eACLzmB,EAAYuH,KAAK8gB,YAAYroB,GAAa,4C,GAnIvB4kB,IAAtB8D,GACG9S,UAAY,CACjBlc,OAAQmc,KAAUpX,QAuIPuM,oBAAQ,SAAAlS,GAAK,MAAK,CAACY,OAAQZ,EAAMY,UAAjCsR,CAA2C0d,IC1IpDG,G,+MAOJtW,WAAa,WACX,EAAK9K,MAAMpO,SAAS4R,GAAwB,EAAKxD,MAAM/N,U,wDAG9C,IAAD,OACA8M,EAAiBe,KAAKE,MAAtBjB,aACR,OACE,gBAAC,WAAD,KACE,uBAAK0F,UAAU,cAGb,qBAAGA,UAAU,UAAUd,QAAS,WAAO,EAAKmH,eAC1C,gBAACjI,GAAA,EAAD,CAAMhR,KAAK,KAAKmE,KAAK,YADvB,qBAIF,uBAAKyO,UAAU,aACb,sBAAIA,UAAU,cACX1F,EAAanI,KAAI,SAAC8D,EAAMO,GACvB,IAAIomB,EAAU3mB,EAAK0Y,eAAerjB,KAIlC,MAHmC,WAA/B2K,EAAK0Y,eAAe1B,SACtB2P,GAAW,KAAO3mB,EAAK0Y,eAAe1B,OAAS,KAG/C,sBAAIjN,UAAU,kBAAkBpQ,IAAK4G,GACnC,0BAAKP,EAAK0Y,eAAexW,QAAzB,MAAqCykB,GACrC,qBAAG7e,MAAO,CAAC8Q,WAAY,aACpB5Y,EAAKhJ,kB,GAjCKuO,aA6ChBsD,gBAAQ,SAAAlS,GAAK,MAAK,CAC/BY,OAAQZ,EAAMY,OACd8M,aAAc1N,EAAM0N,gBAFPwE,CAGX6d,IC/CEE,G,+MAMJxW,WAAa,SAAC9X,GACZ,EAAKgN,MAAMpO,SAASyM,GAAqBrL,K,mEAIzCiO,SAAS+D,MAAQ,eACjBlF,KAAKgL,e,6EAMI,IAEH3M,EADiB2B,KAAKE,MAApBgL,WACmB7M,QACrB8R,EAAe,SAAA3b,GAAK,OAAI,gBAAC4b,GAAA,EAAMC,QAAP,KAAgB7b,IACxC8b,EAAa,SAAC9b,GAAD,OACjB,gBAAC4b,GAAA,EAAMG,KAAP,KAAa/b,IACTmc,EAAU,GA8BhB,MA7BkB,CAChB,OAAQ,SAAU,WAAY,OAAQ,SAAU,YAChD,iBAAkB,SACV3gB,SAAQ,SAAA4gB,GAChB,IAAIE,EAAOF,EACI,mBAAXA,EACFE,EAAO,WACa,aAAXF,IACTE,EAAO,iBAETH,EAAQxa,KAAK,CACXgR,OAAQ,CAACzG,MAAOkQ,EACdG,WAAY,CAACZ,IACfa,SAAUF,EACVG,KAAM,CAACF,WAAY,CAACT,SAGxBjS,EAAQrO,SAAQ,SAAAmC,GACdA,EAAO4B,OACL,gBAAC4S,GAAA,EAAD,CAAMF,GAAI,MAAQtU,EAAO+D,KAAO,WAAhC,UACF/D,EAAOsvB,cACL,gBAAC9a,GAAA,EAAD,CAAMF,GAAI,MAAQtU,EAAO+D,KAAO,aAAhC,YACF/D,EAAOiH,KACL,gBAACuN,GAAA,EAAD,CAAMF,GAAI,MAAQtU,EAAO+D,KAAO,SAAhC,QACF/D,EAAOoF,OACL,gBAACoP,GAAA,EAAD,CAAMF,GAAI,MAAQtU,EAAO+D,KAAO,WAAhC,UACF/D,EAAOsG,UACL,gBAACkO,GAAA,EAAD,CAAMF,GAAI,MAAQtU,EAAO+D,KAAO,cAAhC,gBAGF,gBAAC,WAAD,KACE,uBAAKwM,MAAO,CAACiM,MAAO,UACjB3O,KAAKiO,iBAER,gBAACmC,GAAA,EAAMc,WAAP,CACEC,SAAO,EACPC,UAAQ,EACRC,OAAK,EACLV,QAASA,GAET,gBAACP,GAAA,EAAMkB,OAAP,MACA,gBAAClB,GAAA,EAAMmB,KAAP,CACExC,KAAM1Q,EACNmT,OAAO,e,GApEOzG,IAApByW,GACGnT,UAAY,CACjBnD,WAAYoD,KAAUpX,OACtBpF,SAAUwc,KAAUE,MAyET/K,oBAAQ,SAAAlS,GAAK,MAAK,CAAC2Z,WAAY3Z,EAAM8M,WAArCoF,CAAgD+d,I,2DCxE/DE,YAASC,WAAWC,IACpBF,YAASC,WAAWE,IACpBH,YAASC,WAAWvE,I,IAEd0E,G,oDAaJ,aAAe,IAAD,+BACZ,gBAPFvwB,MAAQ,CACNwwB,aAAa,EACbC,qBAAqB,EACrBC,iBAAiB,GAGL,EAcdC,UAAY,SAACluB,GACX,EAAKmuB,KAAKC,MAAMpuB,IAfJ,EAkBdquB,SAAW,WAIT,IAAMC,EAAW,EAAKH,KAAKI,kBAC3B,GAAID,EAAU,CACZ,IAAME,EAAa,EAAKL,KAAKM,MAAMC,mBAAmBC,WAAWC,iBAC3D9O,EAASrkB,OAAOozB,YAAc,EAAKV,KAAKrF,QAAQgG,UAAY,GAE5D/T,EAAO3J,KAAK2d,IAAI3d,KAAKC,MAAMyO,EAAS0O,GAAa,IACjDQ,EAAO5d,KAAK2d,IAAIT,EAASU,KAAM,IAEjC,EAAKb,KAAKpT,OAASA,GAAQ,EAAKoT,KAAKa,OAASA,GAChD,EAAKb,KAAKc,OAAOD,EAAMjU,KA/Bf,EAiGdmU,oBAAsB,SAAClf,GACrB,EAAK/D,SAAS,CAAC8hB,YAAa/d,EAAEiI,OAAOI,WAlGzB,EAqGd8W,4BAA8B,SAACnf,GAC7B,EAAK/D,SAAS,CAAC+hB,oBAAqBhe,EAAEiI,OAAOI,WAtGjC,EAyGd+W,wBAA0B,SAACpf,GACzB,EAAK/D,SAAS,CAACgiB,gBAAiBje,EAAEiI,OAAOI,WA1G7B,EA6GdgX,iBAAmB,WACjB,MAAO,CACLC,MAAO,EAAK/xB,MAAMwwB,YAClBwB,UAAW,EAAKhyB,MAAM0wB,gBACtBuB,cAAe,EAAKjyB,MAAMywB,sBAjHhB,EAqHdjW,eAAiB,SAAC/H,GAChB,IAAMyf,EAAgB,EAAKJ,mBAC3BI,EAAcC,YAAwB,UAAV1f,EAAEzP,IAChB,UAAVyP,EAAEzP,KAEJyP,EAAEkI,iBAEU,UAAVlI,EAAEzP,KAAmByP,EAAE8X,SACzB,EAAKqG,KAAKwB,aAAa3f,EAAEiI,OAAOzX,MAAOivB,GAEvC,EAAKtB,KAAKyB,SAAS5f,EAAEiI,OAAOzX,MAAOivB,IA7HrC,EAAKI,cAAgB,GACrB,EAAKC,WAAa3jB,cAClB,EAAKub,MAAQ,GAJD,E,oEAQR1b,KAAK+jB,KACPtyB,QAAQC,IAAI,aACZsO,KAAK+jB,GAAGxK,W,0CA0BS,IAAD,OACZ7K,EAAS,CACbrW,KAAM2H,KAAKE,MAAMvP,MAAM+d,OAAOta,SAG1ByG,EADY,IAAI2iB,gBAAgBxd,KAAKE,MAAMxQ,SAAS0tB,QAChCnrB,IAAI,WAC1B4I,IACF6T,EAAO7T,QAAUA,GAEnBsG,SAAS+D,MAAQ,iBAAmBwJ,EAAOrW,KAAKvI,MAAM,EAAG,GAEzD,IhFMmB4C,EgFNbyvB,EAAO,IAAIT,YAEjBS,EAAK6B,eACL7B,EAAK8B,UAAU,WAAY,IAC3B9B,EAAK8B,UAAU,aAAc,KAC7B9B,EAAK8B,UAAU,gBAAgB,GAC/B9B,EAAK8B,UAAU,cAAc,GAC7B9B,EAAK8B,UAAU,QAAS,CAACC,UAAW,wBAIpC/B,EAAKgC,6BAA4B,SAAUngB,GACzC,MAAiB,aAAVA,EAAEzP,KAAgC,WAAVyP,EAAEzP,OAGnC4tB,EAAK7I,KAAKtZ,KAAKokB,UACfjC,EAAKkC,QAELrkB,KAAK+jB,GAAK,IAAIO,MhFZK5xB,EgFYiBsN,KAAKE,MAAM/N,OAAOO,WhFXrCvC,EAASuC,GACrB9C,QAAQ,kBAAmB,WAAa,kBgFUqB,CAChE20B,QAAS,IACTC,YAAa,EACbC,OAAQ,WACNhzB,QAAQC,IAAI,UACZ,EAAKqyB,GAAGW,KAAKC,KAAKC,UAAUlW,KAE9BmW,UAAW,SAAA7gB,GACT,EAAKke,UAAUle,EAAE5R,OAEnB0yB,YAAa,SAAA9gB,GACXvS,QAAQC,IAAI,kBAAmBsS,IAEjC+gB,UAAW,SAAA/gB,GACTvS,QAAQC,IAAI,mBAAoBsS,IAElCghB,QAAS,SAAAhhB,GACRvS,QAAQC,IAAI,UAAWsS,GACvB,EAAKke,UAAU,8BAEhB+C,QAAS,SAAAjhB,GACRvS,QAAQC,IAAI,WAAYsS,MAI3BhE,KAAKmiB,KAAOA,EAEZA,EAAKrF,QAAQpa,MAAML,QAAU,MAC7BrC,KAAKqiB,WACL5yB,OAAOod,iBAAiB,SAAU7M,KAAKqiB,Y,+BAqC9B,IAAD,OACR,OACE,gBAAC,WAAD,KACE,gBAAChV,GAAA,EAAD,CAAMC,QAAM,GACV,gBAACC,GAAA,EAAD,CAAWC,UAAU,UACnB,gBAACC,GAAA,EAAD,CACE1b,KAAK,OACLqR,YAAY,SACZuK,WAAY3N,KAAK+L,iBAJrB,sBAOE,gBAACgC,GAAA,EAAD,CACE1B,QAASrM,KAAKzO,MAAMwwB,YACpB9e,SAAUjD,KAAKkjB,sBATnB,2BAYE,gBAACnV,GAAA,EAAD,CACE1B,QAASrM,KAAKzO,MAAMywB,oBACpB/e,SAAUjD,KAAKmjB,8BAdnB,uBAiBE,gBAACpV,GAAA,EAAD,CACE1B,QAASrM,KAAKzO,MAAM0wB,gBACpBhf,SAAUjD,KAAKojB,4BAIrB,uBAAKxuB,IAAK,SAAAA,GAAG,OAAI,EAAKwvB,SAAWxvB,U,GA3KhBuL,aAkLVsD,gBAAQ,SAAAlS,GAAK,MAAK,CAACY,OAAQZ,EAAMY,UAAjCsR,CAA2Cqe,I,qBC1LpDoD,I,uNAOJla,WAAa,SAAC9X,GACZ,EAAKgN,MAAMpO,SAAS6K,EAAqBzJ,K,mEAIzCiO,SAAS+D,MAAQ,WACjBlF,KAAKgL,e,yCAGaC,GACdjL,KAAKE,MAAMgL,WAAW1O,SACtBwD,KAAKE,MAAMgL,WAAW1O,UAAYyO,EAAUC,WAAW1O,SACzD2oB,KAAU,CACRC,OAAQ,oBACRC,KAAMrlB,KAAKE,MAAMgL,WAAW1O,QAC5B8oB,QAAS,CAACH,KAAUG,QAAQC,U,+BAMhC,OACE,gBAAC,WAAD,KACE,uBAAK5gB,UAAU,aAAajC,MAAO,CAACb,QAAS,SAC1C7B,KAAKiO,iBAER,uBAAKha,GAAG,0B,GAjCU8W,KAApBma,GACG7W,UAAY,CACjBlc,OAAQmc,KAAUpX,OAClBgU,WAAYoD,KAAUpX,OACtBpF,SAAUwc,KAAUE,MAmCT/K,oBAAQ,SAAAlS,GAAK,MAAK,CAC/BY,OAAQZ,EAAMY,OACd+Y,WAAY3Z,EAAMiL,WAFLiH,CAGXyhB,IC1BEM,G,oDA6BJ,aAAe,IAAD,+BACZ,gBAlBFj0B,MAAQ,CACNk0B,eAAe,EACfC,YAAY,GAeA,EAZdC,iBAAmB,WACjB,EAAK1lB,SAAS,CACZwlB,eAAgB,EAAKl0B,MAAMk0B,iBAUjB,EANdG,WAAa,WACX,EAAK3lB,SAAS,CACZwlB,eAAe,KAIL,EAyBdI,cAAgB,WAAO,IAAD,EACK,EAAK3lB,MAAtB7N,EADY,EACZA,KAAMF,EADM,EACNA,OACR2zB,EAAY,GAElB,OAAIzzB,EAAKe,WACC,iDAEV,EAAKmP,KAEFhF,QAAO,SAAA3C,GAAI,OACHzI,EAAO4J,aAAenB,EAAKmrB,cAAiB5zB,EAAO4J,cAC3D/L,SAAQ,SAAC4K,EAAMlE,GACdovB,EAAU3vB,KACR,kBAAC6vB,GAAA,EAAD,CACEzxB,IAAKmC,EACLzG,KACE2K,EAAKmrB,aACHnrB,EAAKqrB,eADYrrB,EAAK6L,GACUtU,EAAO+zB,YAActrB,EAAK6L,GAC9D0f,UAAWvrB,EAAKurB,UAChBC,OAAK,QAITj0B,EAAOk0B,cACTP,EAAU3vB,KACR,kBAACmwB,GAAA,EAAD,CAAUC,KAAK,IAAI9f,GAAItU,EAAOk0B,aAAc9xB,IAAI,mBAGlD,kBAACiyB,GAAA,EAAD,KACGV,KAtDO,EA2FdW,aAAe,SAACvnB,GACd,OACE,kBAACwnB,GAAA,EAAD,KACGxnB,EAAOpI,KAAI,SAAAlF,GAAK,OAChB,kBAAC+0B,GAAA,EAAD,CACIpyB,IAAK3C,EAAMqC,GACXlC,KAAK,QACL60B,UAAW,WAAO,EAAK1mB,MAAMpO,S9E9HT,CAC/BC,KA3ByB,cA4BzBkC,G8E4H4DrC,EAAMqC,OAEzD,0BAAMiR,MAAO3E,OAAW3O,EAAMuN,MAAMqB,GAAG,EAAKN,MAAMxB,UAAU0F,UACxD,gCAASxS,EAAMiC,MADnB,KACoCjC,EAAMmC,OAD1C,QAESnC,EAAMrC,WAtGV,EA8Gds3B,mBAAqB,SAAC5nB,GAAkB,IAC9B8gB,EAAY,EAAK7f,MAAjB6f,QACF7gB,EAAS,GAiCf,OAhCAD,EAAajP,SAAQ,SAAC4K,EAAMO,GAC1B,IAAIvJ,EAAQgJ,EAAKhJ,MACbwP,EAASxP,EAAM0N,QAAQ,mBACX,IAAZ8B,IACFxP,EAAQA,EAAM9B,MAAMsR,EAAS,IAAInG,MAAM,MAAM,IAE/C,IAAIsmB,EAAU3mB,EAAK0Y,eAAerjB,KACC,WAA/B2K,EAAK0Y,eAAe1B,SACtB2P,GAAW,KAAO3mB,EAAK0Y,eAAe1B,OAAS,KAEjD1S,EAAO/I,KACL,kBAAC2wB,GAAA,EAAD,CACEvyB,IAAK4G,EACL4rB,MAAM,EACNljB,QAAS,WACPkc,EAAQ5pB,KAAK,EAAK+J,MAAM/N,OAAOuU,WAAa,kBAC5C,EAAKzG,SAAS,CAACylB,YAAY,MAG7B,kBAAC3iB,GAAA,EAAD,CAAM4B,UAAU,YAAY5S,KAAK,KAAKmE,KAAK,mBAC3C,kBAAC4wB,GAAA,EAAaE,QAAd,KACE,kBAACF,GAAA,EAAaG,QAAd,KACGr1B,GAEH,kBAACk1B,GAAA,EAAaI,KAAd,CACEC,SAAUvsB,EAAK0Y,eAAexW,QAC9BsqB,UAAW7F,UAOnB,kBAAC8F,GAAA,EAAD,CAAoB3kB,MAAO,CAAC4kB,SAAU,UACtC,kBAACD,GAAA,EAAmB3Q,MAApB,KACE,kBAAC2Q,GAAA,EAAmBE,aAApB,KACE,kBAACF,GAAA,EAAmBG,WAApB,sBAGA,kBAACH,GAAA,EAAmBI,aAApB,CACE5zB,KAAMqL,EAAOpK,OAAS,eAE1B,kBAACuyB,GAAA,EAAmBK,cAApB,CAAkCzzB,GAAI,EAAG0zB,YAAU,GACjD,kBAACN,GAAA,EAAmBO,UAApB,CAA8BrzB,IAAI,yBAC/B2K,EAAOpI,KAAI,SAAA8D,GAAI,OAAKA,UA3J7B,EAAK2H,KCjCY,CACnB,CACE2C,MAAO,SACPuB,GAAI,UACJ0f,UAAW9a,IAEb,CACEnG,MAAO,WACPuB,GAAI,YACJ0f,UAAWnW,IAEb,CACE9K,MAAO,OACPuB,GAAI,QACJ0f,UAAWvQ,IAEb,CACE1Q,MAAO,SACPuB,GAAI,UACJ0f,UAAWnQ,IAEb,CACE9Q,MAAO,QACPuB,GAAI,SACJ0f,UAAWhQ,IAEb,CACEjR,MAAO,SACPuB,GAAI,UACJ0f,UAAWlG,IAEb,CACE/a,MAAO,YACPuB,GAAI,aACJ0f,UAAWhF,IAEb,CACE1a,GAAI,2BACJ0f,UAAW1X,IAEb,CACEhI,GAAI,mBACJ0f,UAAWrE,IAEb,CACErb,GAAI,yBACJ0f,UAAWpW,IAEb,CACEtJ,GAAI,gBACJ0f,UAAW5R,IAEb,CACE9N,GAAI,kBACJ0f,UAAWlO,IAEb,CACExR,GAAI,uBACJ0f,UAAW1N,IAEb,CACEhS,GAAI,0BACJ0f,UAAW5K,IAEb,CACE9U,GAAI,6BACJ0f,UAAWhK,IAEb,CACE1V,GAAI,wBACJ0f,UAAWjF,IAEb,CACEza,GAAI,iBACJ0f,UAAW7E,IAEb,CACE7a,GAAI,WACJ0f,UAAW3E,GACXuE,aAAa,GAEf,CACEtf,GAAI,WACJ0f,UAAWjB,GACXe,gBAAgB,IDrDJ,E,0DAKA,IAAD,OACHv2B,EAAasQ,KAAKE,MAAlBxQ,SACFm4B,EAAa7nB,KAAKuC,KAAKulB,MAC3B,SAAAltB,GAAI,OAAIlL,EAASoc,WAAalR,EAAK6L,MAErC,OACE,wBAAI9B,UAAU,iCACX3E,KAAKuC,KAAKhF,QAAO,SAAA3C,GAAI,OAAIA,EAAKsK,SAAOpO,KAAI,SAAA8D,GAAI,OAC5C,wBAAIrG,IAAKqG,EAAK6L,GAAI9B,UAAW/J,IAASitB,EAAa,SAAW,IAC5D,kBAAClhB,GAAA,EAAD,CACEF,GAAI,EAAKvG,MAAM/N,OAAOuU,WAAa9L,EAAK6L,GACxC5C,QAAS,EAAK+hB,YACbhrB,EAAKsK,c,2CA0CG,MAEMlF,KAAKE,MAAtB/N,EAFW,EAEXA,OAAQE,EAFG,EAEHA,KAChB,GAAIA,EAAKkN,MAAO,CACd,IAAIwoB,EAAYhsB,EAEhB,GAAI1J,EAAKF,OAEP4J,GAAa,EACbgsB,EAAa11B,EAAKF,YACb,IAAKE,EAAKF,OAAQ,CAEvB4J,GAAa,EAEb,IAAMpL,EAAQq3B,aACZhoB,KAAKE,MAAMxQ,SAASoc,SAAU,CAAC7b,KAAM,eAEnCU,IACFo3B,EAAap3B,EAAM+d,OAAOvc,QAI9B,GAAIA,EAAO+D,OAAS6xB,EAAY,CAC9B,IAAME,EjDvIP,SAA0B/xB,EAAM6F,GACrC,IAAIrJ,EAAY,GACZgU,EAAa,GACbwf,EAAc,GACdG,EAAe,UAOnB,OANKtqB,IACHrJ,EAAY,UAAYwD,EAAO,IAC/BwQ,EAAa,MAAQxQ,EACrBgwB,EAAc,aACdG,EAAe,YAEV,CACLt0B,KAdsB,aAetBI,OAAQ,CACN+D,KAAMA,EACN6F,WAAYA,EACZsqB,aAAcA,EACd3f,WAAYA,EACZhU,UAAWA,EACXwzB,YAAaA,IiDoHUgC,CAAgBH,EAAYhsB,GACjDiE,KAAKE,MAAMpO,SAASm2B,GAChBF,GACF/nB,KAAKE,MAAMpO,SAAS4R,GAAwBukB,EAAa91B,a,+BAiFvD,IAAD,SAC+B6N,KAAKzO,MAAnCk0B,EADD,EACCA,cAAeC,EADhB,EACgBA,WADhB,EAEkC1lB,KAAKE,MAAtChB,EAFD,EAECA,OAAQD,EAFT,EAESA,aAAc9M,EAFvB,EAEuBA,OAE9B,OACE,kBAAC,IAAMqmB,SAAP,KACE,kBAAC2P,GAAA,EAAD,CACEC,QAASC,KACT1C,iBAAkB3lB,KAAK2lB,iBACvB2C,WAAS,EACTC,MAAI,GAEJ,yBAAK5jB,UAAU,4BACZxS,EAAO+D,MAAQ8J,KAAKwoB,aACrB,wBAAI7jB,UAAU,iCACV1F,EAAanK,OAAS,GACtB,kBAACuyB,GAAA,EAAmBoB,OAApB,CACE9jB,UAAU,qBACV+jB,mBAAiB,EACjBhmB,MAAO,CAACT,MAAO,UACf4B,QAAS,SAACG,GACRA,EAAEkI,iBACF,EAAKjM,SAAS,CAACylB,YAAa,EAAKn0B,MAAMm0B,gBAG7C,4BACE,kBAAC/e,GAAA,EAAD,CAAMF,GAAG,YAAT,QAEF,4BACE,uBAAG9W,KAAK,2BACLg5B,IAAI,sBAAsB1c,OAAO,UADpC,kBAKD9Z,EAAO+D,MACN,4BACE,kBAACyQ,GAAA,EAAD,CAAMF,GAAItU,EAAOk0B,cACf,0CADF,IAC2Bl0B,EAAO+D,OAItC,4BACA,kBAAC,GAAD,QAGDwvB,GAAc1lB,KAAK6mB,mBAAmB5nB,KAEvCwmB,GACA,yBAAK9gB,UAAU,iDACZxS,EAAO+D,MAAQ8J,KAAKwoB,eAI1BtpB,EAAOpK,OAAS,GAAKkL,KAAKymB,aAAavnB,GACxC,yBAAKyF,UAAU,sCACb,kBAAC,GAAD,KACG3E,KAAK6lB,uB,GA3PA1lB,IAAMC,WAoQTwoB,gBAAWnlB,aACxB,SAAAlS,GAAK,MAAK,CACR2N,OAAQ3N,EAAM2N,OACdD,aAAc1N,EAAM0N,aACpB5M,KAAMd,EAAMc,KACZF,OAAQZ,EAAMY,OACduM,SAAUnN,EAAMmN,YANM+E,CAQxB+hB,KEpRF/lB,GAAM3N,UlFuBiC,SAACA,EAAUqB,GAChD,GAZsB,SAAA5B,GACtB,IAAMc,EAAOd,EAAMc,KACnB,OAAKA,IAGDA,EAAKe,WAOLy1B,CAAgB11B,KAClB,OAAOrB,EAASD,QkFvBpBi3B,IAASC,OACP,kBAAC,IAAD,CAAUtpB,MAAOA,IACf,kBAAC,IAAD,CAAQupB,SAAU,IAAIC,IAAI35B,KAAkBwc,UAAU,kBAAC,GAAD,QAC3C3K,SAAS+nB,eAAe,SnFfxB,WACb,GAAoD,SAAhD74B,mHAAY84B,gCAGd,OAFA13B,QAAQC,IAAI,gCA+FV,kBAAmBZ,WACrBA,UAAUC,cAAcwO,MAAMtO,MAAK,SAAAC,GACjCA,EAAak4B,iBA5FjB,GAA6C,kBAAmBt4B,UAAW,CAGzE,GADkB,IAAIm4B,IAAI54B,GAAwBZ,OAAOC,UAC3C25B,SAAW55B,OAAOC,SAAS25B,OAIvC,OAGF55B,OAAOod,iBAAiB,QAAQ,WAC9B,IAAMhc,EAAK,UAAMR,GAAN,sBAEPG,IAiDV,SAAkCK,GAEhCy4B,MAAMz4B,GACHI,MAAK,SAAAiB,GAGkB,MAApBA,EAAS6B,SACuD,IAAhE7B,EAASq3B,QAAQt3B,IAAI,gBAAgBqN,QAAQ,cAG7CxO,UAAUC,cAAcwO,MAAMtO,MAAK,SAAAC,GACjCA,EAAak4B,aAAan4B,MAAK,WAC7BxB,OAAOC,SAAS85B,eAKpB54B,EAAgBC,MAGnBc,OAAM,WACLF,QAAQC,IACN,oEArEA+3B,CAAwB54B,GAIxBC,UAAUC,cAAcwO,MAAMtO,MAAK,WACjCQ,QAAQC,IACN,gHAMJd,EAAgBC,OmFlBxB64B,I,kBCtCAC,EAAOC,QAAU,kvC,kBCAjBD,EAAOC,QAAU,0X,kBCAjBD,EAAOC,QAAU,0S","file":"static/js/main.5b6c00c0.chunk.js","sourcesContent":["/* global process */\n// Copyright 2018 Red Hat, Inc\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\"); you may\n// not use this file except in compliance with the License. You may obtain\n// a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the\n// License for the specific language governing permissions and limitations\n// under the License.\n\nimport Axios from 'axios'\n\nfunction getHomepageUrl (url) {\n //\n // Discover serving location from href.\n //\n // This is only needed for sub-directory serving.\n // Serving the application from '/' may simply default to '/'\n //\n // Note that this is not enough for sub-directory serving,\n // The static files location also needs to be adapted with the 'homepage'\n // settings of the package.json file.\n //\n // This homepage url is used for the Router and Link resolution logic\n //\n let baseUrl\n if (url) {\n baseUrl = url\n } else {\n baseUrl = window.location.href\n }\n // Get dirname of the current url\n baseUrl = baseUrl.replace(/\\\\/g, '/').replace(/\\/[^/]*$/, '/')\n\n // Remove any query strings\n if (baseUrl.includes('?')) {\n baseUrl = baseUrl.slice(0, baseUrl.lastIndexOf('?'))\n }\n // Remove any hash anchor\n if (baseUrl.includes('/#')) {\n baseUrl = baseUrl.slice(0, baseUrl.lastIndexOf('/#') + 1)\n }\n\n // Remove known sub-path\n const subDir = [\n '/build/',\n '/buildset/',\n '/job/',\n '/project/',\n '/stream/',\n '/status/',\n ]\n subDir.forEach(path => {\n if (baseUrl.includes(path)) {\n baseUrl = baseUrl.slice(0, baseUrl.lastIndexOf(path) + 1)\n }\n })\n\n // Remove tenant scope\n if (baseUrl.includes('/t/')) {\n baseUrl = baseUrl.slice(0, baseUrl.lastIndexOf('/t/') + 1)\n }\n if (! baseUrl.endsWith('/')) {\n baseUrl = baseUrl + '/'\n }\n // console.log('Homepage url is ', baseUrl)\n return baseUrl\n}\n\nfunction getZuulUrl () {\n // Return the zuul root api absolute url\n const ZUUL_API = process.env.REACT_APP_ZUUL_API\n let apiUrl\n\n if (ZUUL_API) {\n // Api url set at build time, use it\n apiUrl = ZUUL_API\n } else {\n // Api url is relative to homepage path\n apiUrl = getHomepageUrl () + 'api/'\n }\n if (! apiUrl.endsWith('/')) {\n apiUrl = apiUrl + '/'\n }\n if (! apiUrl.endsWith('/api/')) {\n apiUrl = apiUrl + 'api/'\n }\n // console.log('Api url is ', apiUrl)\n return apiUrl\n}\nconst apiUrl = getZuulUrl()\n\n\nfunction getStreamUrl (apiPrefix) {\n const streamUrl = (apiUrl + apiPrefix)\n .replace(/(http)(s)?:\\/\\//, 'ws$2://') + 'console-stream'\n // console.log('Stream url is ', streamUrl)\n return streamUrl\n}\n\n// Direct APIs\nfunction fetchInfo () {\n return Axios.get(apiUrl + 'info')\n}\nfunction fetchOpenApi () {\n return Axios.get(getHomepageUrl () + 'openapi.yaml')\n}\nfunction fetchTenants () {\n return Axios.get(apiUrl + 'tenants')\n}\nfunction fetchConfigErrors (apiPrefix) {\n return Axios.get(apiUrl + apiPrefix + 'config-errors')\n}\nfunction fetchStatus (apiPrefix) {\n return Axios.get(apiUrl + apiPrefix + 'status')\n}\nfunction fetchChangeStatus (apiPrefix, changeId) {\n return Axios.get(apiUrl + apiPrefix + 'status/change/' + changeId)\n}\nfunction fetchBuild (apiPrefix, buildId) {\n return Axios.get(apiUrl + apiPrefix + 'build/' + buildId)\n}\nfunction fetchBuilds (apiPrefix, queryString) {\n let path = 'builds'\n if (queryString) {\n path += '?' + queryString.slice(1)\n }\n return Axios.get(apiUrl + apiPrefix + path)\n}\nfunction fetchBuildset (apiPrefix, buildsetId) {\n return Axios.get(apiUrl + apiPrefix + 'buildset/' + buildsetId)\n}\nfunction fetchBuildsets (apiPrefix, queryString) {\n let path = 'buildsets'\n if (queryString) {\n path += '?' + queryString.slice(1)\n }\n return Axios.get(apiUrl + apiPrefix + path)\n}\nfunction fetchProject (apiPrefix, projectName) {\n return Axios.get(apiUrl + apiPrefix + 'project/' + projectName)\n}\nfunction fetchProjects (apiPrefix) {\n return Axios.get(apiUrl + apiPrefix + 'projects')\n}\nfunction fetchJob (apiPrefix, jobName) {\n return Axios.get(apiUrl + apiPrefix + 'job/' + jobName)\n}\nfunction fetchJobs (apiPrefix) {\n return Axios.get(apiUrl + apiPrefix + 'jobs')\n}\nfunction fetchLabels (apiPrefix) {\n return Axios.get(apiUrl + apiPrefix + 'labels')\n}\nfunction fetchNodes (apiPrefix) {\n return Axios.get(apiUrl + apiPrefix + 'nodes')\n}\n\nexport {\n apiUrl,\n getHomepageUrl,\n getStreamUrl,\n fetchChangeStatus,\n fetchConfigErrors,\n fetchStatus,\n fetchBuild,\n fetchBuilds,\n fetchBuildset,\n fetchBuildsets,\n fetchProject,\n fetchProjects,\n fetchJob,\n fetchJobs,\n fetchLabels,\n fetchNodes,\n fetchOpenApi,\n fetchTenants,\n fetchInfo\n}\n","/* global process */\n// In production, we register a service worker to serve assets from local cache.\n\n// This lets the app load faster on subsequent visits in production, and gives\n// it offline capabilities. However, it also means that developers (and users)\n// will only see deployed updates on the \"N+1\" visit to a page, since previously\n// cached resources are updated in the background.\n\n// To learn more about the benefits of this model, read\n// https://github.com/facebook/create-react-app/blob/master/packages/react-scripts/template/README.md#making-a-progressive-web-app\n// This link also includes instructions on opting out of this behavior.\n\nconst isLocalhost = Boolean(\n window.location.hostname === 'localhost' ||\n // [::1] is the IPv6 localhost address.\n window.location.hostname === '[::1]' ||\n // 127.0.0.1/8 is considered localhost for IPv4.\n window.location.hostname.match(\n /^127(?:\\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/\n )\n)\n\nexport default function register () {\n if (process.env.REACT_APP_ENABLE_SERVICE_WORKER !== 'true') {\n console.log('Disabled service worker')\n unregister()\n return\n }\n\n if (process.env.NODE_ENV === 'production' && 'serviceWorker' in navigator) {\n // The URL constructor is available in all browsers that support SW.\n const publicUrl = new URL(process.env.PUBLIC_URL, window.location)\n if (publicUrl.origin !== window.location.origin) {\n // Our service worker won't work if PUBLIC_URL is on a different origin\n // from what our page is served on. This might happen if a CDN is used to\n // serve assets; see https://github.com/facebookincubator/create-react-app/issues/2374\n return\n }\n\n window.addEventListener('load', () => {\n const swUrl = `${process.env.PUBLIC_URL}/service-worker.js`\n\n if (isLocalhost) {\n // This is running on localhost. Lets check if a service worker still exists or not.\n checkValidServiceWorker(swUrl)\n\n // Add some additional logging to localhost, pointing developers to the\n // service worker/PWA documentation.\n navigator.serviceWorker.ready.then(() => {\n console.log(\n 'This web app is being served cache-first by a service ' +\n 'worker. To learn more, visit https://goo.gl/SC7cgQ'\n )\n })\n } else {\n // Is not local host. Just register service worker\n registerValidSW(swUrl)\n }\n })\n }\n}\n\nfunction registerValidSW (swUrl) {\n navigator.serviceWorker\n .register(swUrl)\n .then(registration => {\n registration.onupdatefound = () => {\n const installingWorker = registration.installing\n installingWorker.onstatechange = () => {\n if (installingWorker.state === 'installed') {\n if (navigator.serviceWorker.controller) {\n // At this point, the old content will have been purged and\n // the fresh content will have been added to the cache.\n // It's the perfect time to display a \"New content is\n // available; please refresh.\" message in your web app.\n console.log('New content is available; please refresh.')\n } else {\n // At this point, everything has been precached.\n // It's the perfect time to display a\n // \"Content is cached for offline use.\" message.\n console.log('Content is cached for offline use.')\n }\n }\n }\n }\n })\n .catch(error => {\n console.error('Error during service worker registration:', error)\n })\n}\n\nfunction checkValidServiceWorker (swUrl) {\n // Check if the service worker can be found. If it can't reload the page.\n fetch(swUrl)\n .then(response => {\n // Ensure service worker exists, and that we really are getting a JS file.\n if (\n response.status === 404 ||\n response.headers.get('content-type').indexOf('javascript') === -1\n ) {\n // No service worker found. Probably a different app. Reload the page.\n navigator.serviceWorker.ready.then(registration => {\n registration.unregister().then(() => {\n window.location.reload()\n })\n })\n } else {\n // Service worker found. Proceed as normal.\n registerValidSW(swUrl)\n }\n })\n .catch(() => {\n console.log(\n 'No internet connection found. App is running in offline mode.'\n )\n })\n}\n\nexport function unregister () {\n if ('serviceWorker' in navigator) {\n navigator.serviceWorker.ready.then(registration => {\n registration.unregister()\n })\n }\n}\n","// Copyright 2018 Red Hat, Inc\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\"); you may\n// not use this file except in compliance with the License. You may obtain\n// a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the\n// License for the specific language governing permissions and limitations\n// under the License.\n\nimport * as API from '../api'\n\nexport const INFO_FETCH_REQUEST = 'INFO_FETCH_REQUEST'\nexport const INFO_FETCH_SUCCESS = 'INFO_FETCH_SUCCESS'\nexport const INFO_FETCH_FAIL = 'INFO_FETCH_FAIL'\n\nexport const fetchInfoRequest = () => ({\n type: INFO_FETCH_REQUEST\n})\n\nexport const fetchInfoSuccess = json => ({\n type: INFO_FETCH_SUCCESS,\n tenant: json.info.tenant,\n})\n\nconst fetchInfoFail = error => ({\n type: INFO_FETCH_FAIL,\n error\n})\n\nconst fetchInfo = () => dispatch => {\n dispatch(fetchInfoRequest())\n return API.fetchInfo()\n .then(response => dispatch(fetchInfoSuccess(response.data)))\n .catch(error => {\n dispatch(fetchInfoFail(error))\n setTimeout(() => {dispatch(fetchInfo())}, 5000)\n })\n}\n\nconst shouldFetchInfo = state => {\n const info = state.info\n if (!info) {\n return true\n }\n if (info.isFetching) {\n return false\n }\n return true\n}\n\nexport const fetchInfoIfNeeded = () => (dispatch, getState) => {\n if (shouldFetchInfo(getState())) {\n return dispatch(fetchInfo())\n }\n}\n","// Copyright 2018 Red Hat, Inc\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\"); you may\n// not use this file except in compliance with the License. You may obtain\n// a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the\n// License for the specific language governing permissions and limitations\n// under the License.\n\nimport * as API from '../api'\n\nexport const CHANGE_FETCH_REQUEST = 'CHANGE_FETCH_REQUEST'\nexport const CHANGE_FETCH_SUCCESS = 'CHANGE_FETCH_SUCCESS'\nexport const CHANGE_FETCH_FAIL = 'CHANGE_FETCH_FAIL'\n\nexport const requestChange = () => ({\n type: CHANGE_FETCH_REQUEST\n})\n\nexport const receiveChange = json => ({\n type: CHANGE_FETCH_SUCCESS,\n change: json,\n receivedAt: Date.now()\n})\n\nconst failedChange = error => ({\n type: CHANGE_FETCH_FAIL,\n error\n})\n\nconst fetchChange = (tenant, changeId) => dispatch => {\n dispatch(requestChange())\n return API.fetchChangeStatus(tenant.apiPrefix, changeId)\n .then(response => dispatch(receiveChange(response.data)))\n .catch(error => dispatch(failedChange(error)))\n}\n\nconst shouldFetchChange = state => {\n const change = state.change\n if (!change) {\n return true\n }\n if (change.isFetching) {\n return false\n }\n return true\n}\n\nexport const fetchChangeIfNeeded = (tenant, change, force) => (\n dispatch, getState) => {\n if (force || shouldFetchChange(getState())) {\n return dispatch(fetchChange(tenant, change))\n }\n return Promise.resolve()\n}\n","// Copyright 2018 Red Hat, Inc\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\"); you may\n// not use this file except in compliance with the License. You may obtain\n// a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the\n// License for the specific language governing permissions and limitations\n// under the License.\n\nexport const ADD_ERROR = 'ADD_ERROR'\nexport const CLEAR_ERROR = 'CLEAR_ERROR'\nexport const CLEAR_ERRORS = 'CLEAR_ERRORS'\n\nlet errorId = 0\n\nexport const addError = error => ({\n type: ADD_ERROR,\n id: errorId++,\n error\n})\n\nexport const addApiError = error => {\n const d = {\n url: (error && error.request && error.request.responseURL) || error.url\n }\n if (error.response) {\n d.text = error.response.statusText\n d.status = error.response.status\n } else {\n d.status = 'Unable to fetch URL, check your network connectivity,'\n + ' browser plugins, ad-blockers, or try to refresh this page'\n d.text = error.message\n }\n return addError(d)\n}\n\nexport const clearError = id => ({\n type: CLEAR_ERROR,\n id\n})\n\nexport const clearErrors = () => ({\n type: CLEAR_ERRORS\n})\n","// Copyright 2018 Red Hat, Inc\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\"); you may\n// not use this file except in compliance with the License. You may obtain\n// a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the\n// License for the specific language governing permissions and limitations\n// under the License.\n\nimport Axios from 'axios'\n\nimport * as API from '../api'\n\nexport const BUILD_FETCH_REQUEST = 'BUILD_FETCH_REQUEST'\nexport const BUILD_FETCH_SUCCESS = 'BUILD_FETCH_SUCCESS'\nexport const BUILD_FETCH_FAIL = 'BUILD_FETCH_FAIL'\n\nexport const BUILDSET_FETCH_REQUEST = 'BUILDSET_FETCH_REQUEST'\nexport const BUILDSET_FETCH_SUCCESS = 'BUILDSET_FETCH_SUCCESS'\nexport const BUILDSET_FETCH_FAIL = 'BUILDSET_FETCH_FAIL'\n\nexport const BUILD_OUTPUT_REQUEST = 'BUILD_OUTPUT_FETCH_REQUEST'\nexport const BUILD_OUTPUT_SUCCESS = 'BUILD_OUTPUT_FETCH_SUCCESS'\nexport const BUILD_OUTPUT_FAIL = 'BUILD_OUTPUT_FETCH_FAIL'\n\nexport const BUILD_MANIFEST_REQUEST = 'BUILD_MANIFEST_FETCH_REQUEST'\nexport const BUILD_MANIFEST_SUCCESS = 'BUILD_MANIFEST_FETCH_SUCCESS'\nexport const BUILD_MANIFEST_FAIL = 'BUILD_MANIFEST_FETCH_FAIL'\n\nexport const requestBuild = () => ({\n type: BUILD_FETCH_REQUEST\n})\n\nexport const receiveBuild = (buildId, build) => ({\n type: BUILD_FETCH_SUCCESS,\n buildId: buildId,\n build: build,\n receivedAt: Date.now()\n})\n\nconst failedBuild = (error, url) => {\n error.url = url\n return {\n type: BUILD_FETCH_FAIL,\n error\n }\n}\n\nexport const requestBuildOutput = () => ({\n type: BUILD_OUTPUT_REQUEST\n})\n\n// job-output processing functions\nexport function renderTree(tenant, build, path, obj, textRenderer, defaultRenderer) {\n const node = {}\n let name = obj.name\n\n if ('children' in obj && obj.children) {\n node.nodes = obj.children.map(\n n => renderTree(tenant, build, path+obj.name+'/', n,\n textRenderer, defaultRenderer))\n }\n if (obj.mimetype === 'application/directory') {\n name = obj.name + '/'\n } else {\n node.icon = 'fa fa-file-o'\n }\n\n let log_url = build.log_url\n if (log_url.endsWith('/')) {\n log_url = log_url.slice(0, -1)\n }\n if (obj.mimetype === 'text/plain') {\n node.text = textRenderer(tenant, build, path, name, log_url, obj)\n } else {\n node.text = defaultRenderer(log_url, path, name, obj)\n }\n return node\n}\n\nexport function didTaskFail(task) {\n if (task.failed) {\n return true\n }\n if (task.results) {\n for (let result of task.results) {\n if (didTaskFail(result)) {\n return true\n }\n }\n }\n return false\n}\n\nexport function hasInterestingKeys (obj, keys) {\n return Object.entries(obj).filter(\n ([k, v]) => (keys.includes(k) && v !== '')\n ).length > 0\n}\n\nexport function findLoopLabel(item) {\n const label = item._ansible_item_label\n return typeof(label) === 'string' ? label : ''\n}\n\nexport function shouldIncludeKey(key, value, ignore_underscore, included) {\n if (ignore_underscore && key[0] === '_') {\n return false\n }\n if (included) {\n if (!included.includes(key)) {\n return false\n }\n if (value === '') {\n return false\n }\n }\n return true\n}\n\nexport function makeTaskPath (path) {\n return path.join('/')\n}\n\nexport function taskPathMatches (ref, test) {\n if (test.length < ref.length)\n return false\n for (let i=0; i < ref.length; i++) {\n if (ref[i] !== test[i])\n return false\n }\n return true\n}\n\n\nconst receiveBuildOutput = (buildId, output) => {\n const hosts = {}\n // Compute stats\n output.forEach(phase => {\n Object.entries(phase.stats).forEach(([host, stats]) => {\n if (!hosts[host]) {\n hosts[host] = stats\n hosts[host].failed = []\n } else {\n hosts[host].changed += stats.changed\n hosts[host].failures += stats.failures\n hosts[host].ok += stats.ok\n }\n if (stats.failures > 0) {\n // Look for failed tasks\n phase.plays.forEach(play => {\n play.tasks.forEach(task => {\n if (task.hosts[host]) {\n if (task.hosts[host].results &&\n task.hosts[host].results.length > 0) {\n task.hosts[host].results.forEach(result => {\n if (result.failed) {\n result.name = task.task.name\n hosts[host].failed.push(result)\n }\n })\n } else if (task.hosts[host].rc || task.hosts[host].failed) {\n let result = task.hosts[host]\n result.name = task.task.name\n hosts[host].failed.push(result)\n }\n }\n })\n })\n }\n })\n })\n\n // Identify all of the hosttasks (and therefore tasks, plays, and\n // playbooks) which have failed. The errorIds are either task or\n // play uuids, or the phase+index for the playbook. Since they are\n // different formats, we can store them in the same set without\n // collisions.\n const errorIds = new Set()\n output.forEach(playbook => {\n playbook.plays.forEach(play => {\n play.tasks.forEach(task => {\n Object.entries(task.hosts).forEach(([, host]) => {\n if (didTaskFail(host)) {\n errorIds.add(task.task.id)\n errorIds.add(play.play.id)\n errorIds.add(playbook.phase + playbook.index)\n }\n })\n })\n })\n })\n\n return {\n type: BUILD_OUTPUT_SUCCESS,\n buildId: buildId,\n hosts: hosts,\n output: output,\n errorIds: errorIds,\n receivedAt: Date.now()\n }\n}\n\nconst failedBuildOutput = (error, url) => {\n error.url = url\n return {\n type: BUILD_OUTPUT_FAIL,\n error\n }\n}\n\nexport const requestBuildManifest = () => ({\n type: BUILD_MANIFEST_REQUEST\n})\n\nconst receiveBuildManifest = (buildId, manifest) => {\n const index = {}\n\n const renderNode = (root, object) => {\n const path = root + '/' + object.name\n\n if ('children' in object && object.children) {\n object.children.map(n => renderNode(path, n))\n } else {\n index[path] = object\n }\n }\n\n manifest.tree.map(n => renderNode('', n))\n return {\n type: BUILD_MANIFEST_SUCCESS,\n buildId: buildId,\n manifest: {tree: manifest.tree, index: index,\n index_links: manifest.index_links},\n receivedAt: Date.now()\n }\n}\n\nconst failedBuildManifest = (error, url) => {\n error.url = url\n return {\n type: BUILD_MANIFEST_FAIL,\n error\n }\n}\n\nexport const fetchBuild = (tenant, buildId, state, force) => dispatch => {\n const build = state.build.builds[buildId]\n if (!force && build) {\n return Promise.resolve()\n }\n dispatch(requestBuild())\n return API.fetchBuild(tenant.apiPrefix, buildId)\n .then(response => {\n dispatch(receiveBuild(buildId, response.data))\n })\n .catch(error => dispatch(failedBuild(error, tenant.apiPrefix)))\n}\n\nconst fetchBuildOutput = (buildId, state, force) => dispatch => {\n const build = state.build.builds[buildId]\n const url = build.log_url.substr(0, build.log_url.lastIndexOf('/') + 1)\n if (!force && build.output) {\n return Promise.resolve()\n }\n dispatch(requestBuildOutput())\n return Axios.get(url + 'job-output.json.gz')\n .then(response => dispatch(receiveBuildOutput(buildId, response.data)))\n .catch(error => {\n if (!error.request) {\n throw error\n }\n // Try without compression\n Axios.get(url + 'job-output.json')\n .then(response => dispatch(receiveBuildOutput(\n buildId, response.data)))\n })\n .catch(error => dispatch(failedBuildOutput(error, url)))\n}\n\nexport const fetchBuildManifest = (buildId, state, force) => dispatch => {\n const build = state.build.builds[buildId]\n if (!force && build.manifest) {\n return Promise.resolve()\n }\n\n dispatch(requestBuildManifest())\n for (let artifact of build.artifacts) {\n if ('metadata' in artifact &&\n 'type' in artifact.metadata &&\n artifact.metadata.type === 'zuul_manifest') {\n return Axios.get(artifact.url)\n .then(manifest => {\n dispatch(receiveBuildManifest(buildId, manifest.data))\n })\n .catch(error => dispatch(failedBuildManifest(error, artifact.url)))\n }\n }\n dispatch(failedBuildManifest('no manifest found'))\n}\n\nexport const fetchBuildIfNeeded = (tenant, buildId, force) => (dispatch, getState) => {\n dispatch(fetchBuild(tenant, buildId, getState(), force))\n .then(() => {\n dispatch(fetchBuildOutput(buildId, getState(), force))\n dispatch(fetchBuildManifest(buildId, getState(), force))\n })\n}\n\nexport const requestBuildset = () => ({\n type: BUILDSET_FETCH_REQUEST\n})\n\nexport const receiveBuildset = (buildsetId, buildset) => ({\n type: BUILDSET_FETCH_SUCCESS,\n buildsetId: buildsetId,\n buildset: buildset,\n receivedAt: Date.now()\n})\n\nconst failedBuildset = error => ({\n type: BUILDSET_FETCH_FAIL,\n error\n})\n\nconst fetchBuildset = (tenant, buildset) => dispatch => {\n dispatch(requestBuildset())\n return API.fetchBuildset(tenant.apiPrefix, buildset)\n .then(response => {\n if (response.data.builds) {\n response.data.builds.forEach(build => {\n dispatch(receiveBuild(build.uuid, build))\n })\n }\n dispatch(receiveBuildset(buildset, response.data))\n })\n .catch(error => dispatch(failedBuildset(error)))\n}\n\nconst shouldFetchBuildset = (buildsetId, state) => {\n const buildset = state.build.buildsets[buildsetId]\n if (!buildset) {\n return true\n }\n if (buildset.isFetching) {\n return false\n }\n return false\n}\n\nexport const fetchBuildsetIfNeeded = (tenant, buildsetId, force) => (\n dispatch, getState) => {\n if (force || shouldFetchBuildset(buildsetId, getState())) {\n return dispatch(fetchBuildset(tenant, buildsetId))\n }\n}\n","// Copyright 2018 Red Hat, Inc\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\"); you may\n// not use this file except in compliance with the License. You may obtain\n// a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the\n// License for the specific language governing permissions and limitations\n// under the License.\n\nimport * as API from '../api'\n\nexport const JOB_FETCH_REQUEST = 'JOB_FETCH_REQUEST'\nexport const JOB_FETCH_SUCCESS = 'JOB_FETCH_SUCCESS'\nexport const JOB_FETCH_FAIL = 'JOB_FETCH_FAIL'\n\nexport const requestJob = () => ({\n type: JOB_FETCH_REQUEST\n})\n\nexport const receiveJob = (tenant, jobname, json) => ({\n type: JOB_FETCH_SUCCESS,\n tenant: tenant,\n jobname: jobname,\n job: json,\n receivedAt: Date.now()\n})\n\nconst failedJob = error => ({\n type: JOB_FETCH_FAIL,\n error\n})\n\nconst fetchJob = (tenant, jobname) => dispatch => {\n dispatch(requestJob())\n return API.fetchJob(tenant.apiPrefix, jobname)\n .then(response => dispatch(receiveJob(tenant.name, jobname, response.data)))\n .catch(error => dispatch(failedJob(error)))\n}\n\nconst shouldFetchJob = (tenant, jobname, state) => {\n const tenantJobs = state.job.jobs[tenant.name]\n if (tenantJobs) {\n const job = tenantJobs[jobname]\n if (!job) {\n return true\n }\n if (job.isFetching) {\n return false\n }\n return false\n }\n return true\n}\n\nexport const fetchJobIfNeeded = (tenant, jobname, force) => (\n dispatch, getState) => {\n if (force || shouldFetchJob(tenant, jobname, getState())) {\n return dispatch(fetchJob(tenant, jobname))\n }\n return Promise.resolve()\n}\n","// Copyright 2018 Red Hat, Inc\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\"); you may\n// not use this file except in compliance with the License. You may obtain\n// a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the\n// License for the specific language governing permissions and limitations\n// under the License.\n\nimport * as API from '../api'\n\nexport const JOBS_FETCH_REQUEST = 'JOBS_FETCH_REQUEST'\nexport const JOBS_FETCH_SUCCESS = 'JOBS_FETCH_SUCCESS'\nexport const JOBS_FETCH_FAIL = 'JOBS_FETCH_FAIL'\n\nexport const requestJobs = () => ({\n type: JOBS_FETCH_REQUEST\n})\n\nexport const receiveJobs = (tenant, json) => ({\n type: JOBS_FETCH_SUCCESS,\n tenant: tenant,\n jobs: json,\n receivedAt: Date.now()\n})\n\nconst failedJobs = error => ({\n type: JOBS_FETCH_FAIL,\n error\n})\n\nconst fetchJobs = (tenant) => dispatch => {\n dispatch(requestJobs())\n return API.fetchJobs(tenant.apiPrefix)\n .then(response => dispatch(receiveJobs(tenant.name, response.data)))\n .catch(error => dispatch(failedJobs(error)))\n}\n\nconst shouldFetchJobs = (tenant, state) => {\n const jobs = state.jobs.jobs[tenant.name]\n if (!jobs || jobs.length === 0) {\n return true\n }\n if (jobs.isFetching) {\n return false\n }\n return false\n}\n\nexport const fetchJobsIfNeeded = (tenant, force) => (dispatch, getState) => {\n if (force || shouldFetchJobs(tenant, getState())) {\n return dispatch(fetchJobs(tenant))\n }\n return Promise.resolve()\n}\n","// Copyright 2018 Red Hat, Inc\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\"); you may\n// not use this file except in compliance with the License. You may obtain\n// a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the\n// License for the specific language governing permissions and limitations\n// under the License.\n\nimport * as API from '../api'\n\nexport const LABELS_FETCH_REQUEST = 'LABELS_FETCH_REQUEST'\nexport const LABELS_FETCH_SUCCESS = 'LABELS_FETCH_SUCCESS'\nexport const LABELS_FETCH_FAIL = 'LABELS_FETCH_FAIL'\n\nexport const requestLabels = () => ({\n type: LABELS_FETCH_REQUEST\n})\n\nexport const receiveLabels = (tenant, json) => ({\n type: LABELS_FETCH_SUCCESS,\n tenant: tenant,\n labels: json,\n receivedAt: Date.now()\n})\n\nconst failedLabels = error => ({\n type: LABELS_FETCH_FAIL,\n error\n})\n\nconst fetchLabels = (tenant) => dispatch => {\n dispatch(requestLabels())\n return API.fetchLabels(tenant.apiPrefix)\n .then(response => dispatch(receiveLabels(tenant.name, response.data)))\n .catch(error => dispatch(failedLabels(error)))\n}\n\nconst shouldFetchLabels = (tenant, state) => {\n const labels = state.labels.labels[tenant.name]\n if (!labels || labels.length === 0) {\n return true\n }\n if (labels.isFetching) {\n return false\n }\n return false\n}\n\nexport const fetchLabelsIfNeeded = (tenant, force) => (\n dispatch, getState) => {\n if (force || shouldFetchLabels(tenant, getState())) {\n return dispatch(fetchLabels(tenant))\n }\n}\n","// Copyright 2018 Red Hat, Inc\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\"); you may\n// not use this file except in compliance with the License. You may obtain\n// a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the\n// License for the specific language governing permissions and limitations\n// under the License.\n\nimport Axios from 'axios'\n\nimport {fetchBuild, fetchBuildManifest} from './build'\n\nexport const LOGFILE_FETCH_REQUEST = 'LOGFILE_FETCH_REQUEST'\nexport const LOGFILE_FETCH_SUCCESS = 'LOGFILE_FETCH_SUCCESS'\nexport const LOGFILE_FETCH_FAIL = 'LOGFILE_FETCH_FAIL'\n\nexport const requestLogfile = (url) => ({\n type: LOGFILE_FETCH_REQUEST,\n url: url,\n})\n\nconst SYSLOGDATE = '\\\\w+\\\\s+\\\\d+\\\\s+\\\\d{2}:\\\\d{2}:\\\\d{2}((\\\\.|\\\\,)\\\\d{3,6})?'\nconst DATEFMT = '\\\\d{4}-\\\\d{2}-\\\\d{2} \\\\d{2}:\\\\d{2}:\\\\d{2}((\\\\.|\\\\,)\\\\d{3,6})?'\nconst STATUSFMT = '(DEBUG|INFO|WARNING|ERROR|TRACE|AUDIT|CRITICAL)'\n\nconst severityMap = {\n DEBUG: 1,\n INFO: 2,\n WARNING: 3,\n ERROR: 4,\n TRACE: 5,\n AUDIT: 6,\n CRITICAL: 7,\n}\n\nconst OSLO_LOGMATCH = new RegExp(`^(${DATEFMT})(( \\\\d+)? (${STATUSFMT}).*)`)\nconst SYSTEMD_LOGMATCH = new RegExp(`^(${SYSLOGDATE})( (\\\\S+) \\\\S+\\\\[\\\\d+\\\\]\\\\: (${STATUSFMT})?.*)`)\n\nconst receiveLogfile = (data) => {\n\n const out = data.split(/\\r?\\n/).map((line, idx) => {\n let m = null\n let sev = null\n\n m = SYSTEMD_LOGMATCH.exec(line)\n if (m) {\n sev = severityMap[m[7]]\n } else {\n OSLO_LOGMATCH.exec(line)\n if (m) {\n sev = severityMap[m[7]]\n }\n }\n\n return {\n text: line,\n index: idx+1,\n severity: sev\n }\n })\n return {\n type: LOGFILE_FETCH_SUCCESS,\n data: out,\n receivedAt: Date.now()\n }\n}\n\nconst failedLogfile = (error, url) => {\n error.url = url\n return {\n type: LOGFILE_FETCH_FAIL,\n error\n }\n}\n\nconst fetchLogfile = (buildId, file, state, force) => dispatch => {\n const build = state.build.builds[buildId]\n const item = build.manifest.index['/' + file]\n\n if (!item)\n dispatch(failedLogfile(null))\n const url = build.log_url + file\n\n if (!force && state.logfile.url === url) {\n return Promise.resolve()\n }\n dispatch(requestLogfile())\n if (item.mimetype === 'text/plain') {\n return Axios.get(url, {transformResponse: []})\n .then(response => dispatch(receiveLogfile(response.data)))\n .catch(error => dispatch(failedLogfile(error, url)))\n }\n dispatch(failedLogfile(null))\n}\n\nexport const fetchLogfileIfNeeded = (tenant, buildId, file, force) => (dispatch, getState) => {\n dispatch(fetchBuild(tenant, buildId, getState(), force))\n .then(() => {\n dispatch(fetchBuildManifest(buildId, getState(), force))\n .then(() => {\n dispatch(fetchLogfile(buildId, file, getState(), force))\n })\n })\n}\n","// Copyright 2018 Red Hat, Inc\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\"); you may\n// not use this file except in compliance with the License. You may obtain\n// a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the\n// License for the specific language governing permissions and limitations\n// under the License.\n\nimport * as API from '../api'\n\nexport const NODES_FETCH_REQUEST = 'NODES_FETCH_REQUEST'\nexport const NODES_FETCH_SUCCESS = 'NODES_FETCH_SUCCESS'\nexport const NODES_FETCH_FAIL = 'NODES_FETCH_FAIL'\n\nexport const requestNodes = () => ({\n type: NODES_FETCH_REQUEST\n})\n\nexport const receiveNodes = (tenant, json) => ({\n type: NODES_FETCH_SUCCESS,\n nodes: json,\n receivedAt: Date.now()\n})\n\nconst failedNodes = error => ({\n type: NODES_FETCH_FAIL,\n error\n})\n\nconst fetchNodes = (tenant) => dispatch => {\n dispatch(requestNodes())\n return API.fetchNodes(tenant.apiPrefix)\n .then(response => dispatch(receiveNodes(tenant.name, response.data)))\n .catch(error => dispatch(failedNodes(error)))\n}\n\nconst shouldFetchNodes = (tenant, state) => {\n const nodes = state.nodes\n if (!nodes || nodes.nodes.length === 0) {\n return true\n }\n if (nodes.isFetching) {\n return false\n }\n if (Date.now() - nodes.receivedAt > 60000) {\n // Refetch after 1 minutes\n return true\n }\n return false\n}\n\nexport const fetchNodesIfNeeded = (tenant, force) => (\n dispatch, getState) => {\n if (force || shouldFetchNodes(tenant, getState())) {\n return dispatch(fetchNodes(tenant))\n }\n}\n","// Copyright 2018 Red Hat, Inc\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\"); you may\n// not use this file except in compliance with the License. You may obtain\n// a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the\n// License for the specific language governing permissions and limitations\n// under the License.\n\nimport * as API from '../api'\nimport yaml from 'js-yaml'\n\nexport const OPENAPI_FETCH_REQUEST = 'OPENAPI_FETCH_REQUEST'\nexport const OPENAPI_FETCH_SUCCESS = 'OPENAPI_FETCH_SUCCESS'\nexport const OPENAPI_FETCH_FAIL = 'OPENAPI_FETCH_FAIL'\n\nexport const fetchOpenApiRequest = () => ({\n type: OPENAPI_FETCH_REQUEST\n})\n\nexport const fetchOpenApiSuccess = (yaml_data, whiteLabel) => {\n const data = yaml.safeLoad(yaml_data)\n if (whiteLabel) {\n const paths = {}\n for (let path in data.paths) {\n // Remove tenant list api\n if (path === '/api/tenants') {\n continue\n }\n // Remove tenant in path parameter\n data.paths[path].get.parameters.splice(0, 1)\n paths[path.replace('/api/tenant/{tenant}/', '/api/')] = data.paths[path]\n }\n data.paths = paths\n }\n data.servers = [{\n // Trim the trailing '/api/'\n url: API.apiUrl.substr(0, API.apiUrl.length - 5),\n description: 'Production server',\n }]\n return {\n type: OPENAPI_FETCH_SUCCESS,\n openapi: data,\n }\n}\n\nconst fetchOpenApiFail = error => ({\n type: OPENAPI_FETCH_FAIL,\n error\n})\n\nconst fetchOpenApi = (whiteLabel) => dispatch => {\n dispatch(fetchOpenApiRequest())\n return API.fetchOpenApi()\n .then(response => dispatch(fetchOpenApiSuccess(response.data, whiteLabel)))\n .catch(error => {\n dispatch(fetchOpenApiFail(error))\n setTimeout(() => {dispatch(fetchOpenApi())}, 5000)\n })\n}\n\nconst shouldFetchOpenApi = openapi => {\n if (!openapi.openapi) {\n return true\n }\n if (openapi.isFetching) {\n return false\n }\n return true\n}\n\nexport const fetchOpenApiIfNeeded = (force) => (dispatch, getState) => {\n const state = getState()\n if (force || shouldFetchOpenApi(state.openapi)) {\n return dispatch(fetchOpenApi(state.tenant.whiteLabel))\n }\n}\n","// Copyright 2018 Red Hat, Inc\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\"); you may\n// not use this file except in compliance with the License. You may obtain\n// a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the\n// License for the specific language governing permissions and limitations\n// under the License.\n\nimport * as API from '../api'\n\nexport const PROJECT_FETCH_REQUEST = 'PROJECT_FETCH_REQUEST'\nexport const PROJECT_FETCH_SUCCESS = 'PROJECT_FETCH_SUCCESS'\nexport const PROJECT_FETCH_FAIL = 'PROJECT_FETCH_FAIL'\n\nexport const requestProject = () => ({\n type: PROJECT_FETCH_REQUEST\n})\n\nexport const receiveProject = (tenant, projectName, project) => {\n // TODO: fix api to return template name or merge them\n // in the mean-time, merge the jobs in project configs\n const templateIdx = []\n let idx\n project.configs.forEach((config, idx) => {\n if (config.default_branch === null) {\n // This must be a template\n templateIdx.push(idx)\n config.pipelines.forEach(templatePipeline => {\n let pipeline = project.configs[idx - 1].pipelines.filter(\n item => item.name === templatePipeline.name)\n if (pipeline.length === 0) {\n // Pipeline doesn't exist in project config\n project.configs[idx - 1].pipelines.push(templatePipeline)\n } else {\n if (pipeline[0].queue_name === null) {\n pipeline[0].queue_name = templatePipeline.queue_name\n }\n templatePipeline.jobs.forEach(job => {\n pipeline[0].jobs.push(job)\n })\n }\n })\n }\n })\n for (idx = templateIdx.length - 1; idx >= 0; idx -= 1) {\n project.configs.splice(templateIdx[idx], 1)\n }\n\n return {\n type: PROJECT_FETCH_SUCCESS,\n tenant: tenant,\n projectName: projectName,\n project: project,\n receivedAt: Date.now(),\n }\n}\n\nconst failedProject = error => ({\n type: PROJECT_FETCH_FAIL,\n error\n})\n\nconst fetchProject = (tenant, project) => dispatch => {\n dispatch(requestProject())\n return API.fetchProject(tenant.apiPrefix, project)\n .then(response => dispatch(receiveProject(\n tenant.name, project, response.data)))\n .catch(error => dispatch(failedProject(error)))\n}\n\nconst shouldFetchProject = (tenant, projectName, state) => {\n const tenantProjects = state.project.projects[tenant.name]\n if (tenantProjects) {\n const project = tenantProjects[projectName]\n if (!project) {\n return true\n }\n if (project.isFetching) {\n return false\n }\n return false\n }\n return true\n}\n\nexport const fetchProjectIfNeeded = (tenant, project, force) => (\n dispatch, getState) => {\n if (force || shouldFetchProject(tenant, project, getState())) {\n return dispatch(fetchProject(tenant, project))\n }\n return Promise.resolve()\n}\n","// Copyright 2018 Red Hat, Inc\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\"); you may\n// not use this file except in compliance with the License. You may obtain\n// a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the\n// License for the specific language governing permissions and limitations\n// under the License.\n\nimport * as API from '../api'\n\nexport const PROJECTS_FETCH_REQUEST = 'PROJECTS_FETCH_REQUEST'\nexport const PROJECTS_FETCH_SUCCESS = 'PROJECTS_FETCH_SUCCESS'\nexport const PROJECTS_FETCH_FAIL = 'PROJECTS_FETCH_FAIL'\n\nexport const requestProjects = () => ({\n type: PROJECTS_FETCH_REQUEST\n})\n\nexport const receiveProjects = (tenant, json) => ({\n type: PROJECTS_FETCH_SUCCESS,\n tenant: tenant,\n projects: json,\n receivedAt: Date.now()\n})\n\nconst failedProjects = error => ({\n type: PROJECTS_FETCH_FAIL,\n error\n})\n\nconst fetchProjects = (tenant) => dispatch => {\n dispatch(requestProjects())\n return API.fetchProjects(tenant.apiPrefix)\n .then(response => dispatch(receiveProjects(tenant.name, response.data)))\n .catch(error => dispatch(failedProjects(error)))\n}\n\nconst shouldFetchProjects = (tenant, state) => {\n const projects = state.projects.projects[tenant.name]\n if (!projects || projects.length === 0) {\n return true\n }\n if (projects.isFetching) {\n return false\n }\n return false\n}\n\nexport const fetchProjectsIfNeeded = (tenant, force) => (\n dispatch, getState) => {\n if (force || shouldFetchProjects(tenant, getState())) {\n return dispatch(fetchProjects(tenant))\n }\n return Promise.resolve()\n}\n","// Copyright 2018 Red Hat, Inc\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\"); you may\n// not use this file except in compliance with the License. You may obtain\n// a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the\n// License for the specific language governing permissions and limitations\n// under the License.\n\nimport * as API from '../api'\n\nexport const STATUS_FETCH_REQUEST = 'STATUS_FETCH_REQUEST'\nexport const STATUS_FETCH_SUCCESS = 'STATUS_FETCH_SUCCESS'\nexport const STATUS_FETCH_FAIL = 'STATUS_FETCH_FAIL'\n\nexport const requestStatus = () => ({\n type: STATUS_FETCH_REQUEST\n})\n\nexport const receiveStatus = json => ({\n type: STATUS_FETCH_SUCCESS,\n status: json,\n receivedAt: Date.now()\n})\n\nconst failedStatus = error => ({\n type: STATUS_FETCH_FAIL,\n error\n})\n\n// Create fake delay\n//function sleeper(ms) {\n// return function(x) {\n// return new Promise(resolve => setTimeout(() => resolve(x), ms));\n// };\n//}\n\nconst fetchStatus = (tenant) => dispatch => {\n dispatch(requestStatus())\n return API.fetchStatus(tenant.apiPrefix)\n .then(response => dispatch(receiveStatus(response.data)))\n .catch(error => dispatch(failedStatus(error)))\n}\n\nconst shouldFetchStatus = state => {\n const status = state.status\n if (!status) {\n return true\n }\n if (status.isFetching) {\n return false\n }\n return true\n}\n\nexport const fetchStatusIfNeeded = (tenant) => (dispatch, getState) => {\n if (shouldFetchStatus(getState())) {\n return dispatch(fetchStatus(tenant))\n }\n return Promise.resolve()\n}\n","// Copyright 2018 Red Hat, Inc\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\"); you may\n// not use this file except in compliance with the License. You may obtain\n// a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the\n// License for the specific language governing permissions and limitations\n// under the License.\n\nimport * as API from '../api'\n\nexport const TENANTS_FETCH_REQUEST = 'TENANTS_FETCH_REQUEST'\nexport const TENANTS_FETCH_SUCCESS = 'TENANTS_FETCH_SUCCESS'\nexport const TENANTS_FETCH_FAIL = 'TENANTS_FETCH_FAIL'\n\nexport const requestTenants = () => ({\n type: TENANTS_FETCH_REQUEST\n})\n\nexport const receiveTenants = json => ({\n type: TENANTS_FETCH_SUCCESS,\n tenants: json,\n receivedAt: Date.now()\n})\n\nconst failedTenants = error => ({\n type: TENANTS_FETCH_FAIL,\n error\n})\n\nconst fetchTenants = () => dispatch => {\n dispatch(requestTenants())\n return API.fetchTenants()\n .then(response => dispatch(receiveTenants(response.data)))\n .catch(error => dispatch(failedTenants(error)))\n}\n\nconst shouldFetchTenants = state => {\n const tenants = state.tenants\n if (tenants.tenants.length > 0) {\n return false\n }\n if (tenants.isFetching) {\n return false\n }\n return true\n}\n\nexport const fetchTenantsIfNeeded = (force) => (dispatch, getState) => {\n if (force || shouldFetchTenants(getState())) {\n return dispatch(fetchTenants())\n }\n}\n","// Licensed under the Apache License, Version 2.0 (the \"License\"); you may\n// not use this file except in compliance with the License. You may obtain\n// a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the\n// License for the specific language governing permissions and limitations\n// under the License.\n\nexport const TIMEZONE_SET = 'TIMEZONE_SET'\n\nexport function setTimezoneAction (name) {\n return {\n type: TIMEZONE_SET,\n timezone: name\n }\n}\n","// Licensed under the Apache License, Version 2.0 (the \"License\"); you may\n// not use this file except in compliance with the License. You may obtain\n// a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the\n// License for the specific language governing permissions and limitations\n// under the License.\n\nimport { TIMEZONE_SET } from '../actions/timezone'\n\nexport default (state = 'UTC', action) => {\n switch (action.type) {\n case TIMEZONE_SET:\n return action.timezone\n default:\n return state\n }\n }\n","// Copyright 2018 Red Hat, Inc\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\"); you may\n// not use this file except in compliance with the License. You may obtain\n// a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the\n// License for the specific language governing permissions and limitations\n// under the License.\n\nimport { combineReducers } from 'redux'\n\nimport configErrors from './configErrors'\nimport change from './change'\nimport errors from './errors'\nimport build from './build'\nimport info from './info'\nimport job from './job'\nimport jobs from './jobs'\nimport labels from './labels'\nimport logfile from './logfile'\nimport nodes from './nodes'\nimport openapi from './openapi'\nimport project from './project'\nimport projects from './projects'\nimport status from './status'\nimport tenant from './tenant'\nimport tenants from './tenants'\nimport timezone from './timezone'\n\nconst reducers = {\n build,\n change,\n configErrors,\n errors,\n info,\n job,\n jobs,\n labels,\n logfile,\n nodes,\n openapi,\n project,\n projects,\n status,\n tenant,\n tenants,\n timezone,\n}\n\nexport default combineReducers(reducers)\n","// Copyright 2018 Red Hat, Inc\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\"); you may\n// not use this file except in compliance with the License. You may obtain\n// a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the\n// License for the specific language governing permissions and limitations\n// under the License.\n\nimport update from 'immutability-helper'\n\nimport {\n BUILD_FETCH_FAIL,\n BUILD_FETCH_REQUEST,\n BUILD_FETCH_SUCCESS,\n\n BUILDSET_FETCH_FAIL,\n BUILDSET_FETCH_REQUEST,\n BUILDSET_FETCH_SUCCESS,\n\n BUILD_OUTPUT_FAIL,\n BUILD_OUTPUT_REQUEST,\n BUILD_OUTPUT_SUCCESS,\n\n BUILD_MANIFEST_FAIL,\n BUILD_MANIFEST_REQUEST,\n BUILD_MANIFEST_SUCCESS,\n} from '../actions/build'\n\n\nexport default (state = {\n isFetching: false,\n isFetchingOutput: false,\n isFetchingManifest: false,\n builds: {},\n buildsets: {},\n}, action) => {\n switch (action.type) {\n case BUILD_FETCH_REQUEST:\n case BUILDSET_FETCH_REQUEST:\n return update(state, {$merge: {isFetching: true}})\n case BUILD_FETCH_SUCCESS:\n state.builds = update(\n state.builds, {$merge: {[action.buildId]: action.build}})\n return update(state, {$merge: {isFetching: false}})\n case BUILDSET_FETCH_SUCCESS:\n return update(state, {$merge: {\n isFetching: false,\n buildsets: update(state.buildsets, {$merge: {\n [action.buildsetId]: action.buildset}})\n }})\n case BUILD_FETCH_FAIL:\n case BUILDSET_FETCH_FAIL:\n return update(state, {$merge: {isFetching: false}})\n\n case BUILD_OUTPUT_REQUEST:\n return update(state, {$merge: {isFetchingOutput: true}})\n case BUILD_OUTPUT_SUCCESS:\n state.builds = update(\n state.builds, {[action.buildId]: {$merge: {errorIds: action.errorIds,\n hosts: action.hosts,\n output: action.output}}})\n return update(state, {$merge: {isFetchingOutput: false}})\n case BUILD_OUTPUT_FAIL:\n return update(state, {$merge: {isFetchingOutput: false}})\n\n case BUILD_MANIFEST_REQUEST:\n return update(state, {$merge: {isFetchingManifest: true}})\n case BUILD_MANIFEST_SUCCESS:\n state.builds = update(\n state.builds, {[action.buildId]: {$merge: {manifest: action.manifest}}})\n return update(state, {$merge: {isFetchingManifest: false}})\n case BUILD_MANIFEST_FAIL:\n return update(state, {$merge: {isFetchingManifest: false}})\n\n default:\n return state\n }\n}\n","// Copyright 2018 Red Hat, Inc\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\"); you may\n// not use this file except in compliance with the License. You may obtain\n// a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the\n// License for the specific language governing permissions and limitations\n// under the License.\n\nimport {\n CHANGE_FETCH_FAIL,\n CHANGE_FETCH_REQUEST,\n CHANGE_FETCH_SUCCESS\n} from '../actions/change'\n\nexport default (state = {\n isFetching: false,\n change: null\n}, action) => {\n switch (action.type) {\n case CHANGE_FETCH_REQUEST:\n return {\n isFetching: true,\n change: state.change\n }\n case CHANGE_FETCH_SUCCESS:\n return {\n isFetching: false,\n change: action.change,\n }\n case CHANGE_FETCH_FAIL:\n return {\n isFetching: false,\n change: state.change,\n }\n default:\n return state\n }\n}\n","// Copyright 2018 Red Hat, Inc\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\"); you may\n// not use this file except in compliance with the License. You may obtain\n// a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the\n// License for the specific language governing permissions and limitations\n// under the License.\n\nexport default (state = [], action) => {\n switch (action.type) {\n case 'FETCH_CONFIGERRORS_SUCCESS':\n return action.errors\n default:\n return state\n }\n}\n","// Copyright 2018 Red Hat, Inc\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\"); you may\n// not use this file except in compliance with the License. You may obtain\n// a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the\n// License for the specific language governing permissions and limitations\n// under the License.\n\nimport update from 'immutability-helper'\n\nimport {\n ADD_ERROR,\n CLEAR_ERROR,\n CLEAR_ERRORS,\n addApiError,\n} from '../actions/errors'\n\n\nexport default (state = [], action) => {\n // Intercept API failure\n if (action.error && action.type.match(/.*_FETCH_FAIL$/)) {\n action = addApiError(action.error)\n }\n switch (action.type) {\n case ADD_ERROR:\n if (state.filter(error => (\n error.url === action.error.url &&\n error.status === action.error.status)).length > 0)\n return state\n action.error.id = action.id\n action.error.date = Date.now()\n return update(state, {$push: [action.error]})\n case CLEAR_ERROR:\n return update(state, {$splice: [[state.indexOf(\n state.filter(item => (item.id === action.id))[0]), 1]]})\n case CLEAR_ERRORS:\n return []\n default:\n return state\n }\n}\n","// Copyright 2018 Red Hat, Inc\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\"); you may\n// not use this file except in compliance with the License. You may obtain\n// a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the\n// License for the specific language governing permissions and limitations\n// under the License.\n\nimport {\n INFO_FETCH_REQUEST,\n INFO_FETCH_SUCCESS,\n INFO_FETCH_FAIL,\n} from '../actions/info'\n\nexport default (state = {\n isFetching: false,\n tenant: null,\n}, action) => {\n switch (action.type) {\n case INFO_FETCH_REQUEST:\n case INFO_FETCH_FAIL:\n return {\n isFetching: true,\n tenant: null,\n }\n case INFO_FETCH_SUCCESS:\n return {\n isFetching: false,\n tenant: action.tenant,\n ready: true\n }\n default:\n return state\n }\n}\n","// Copyright 2018 Red Hat, Inc\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\"); you may\n// not use this file except in compliance with the License. You may obtain\n// a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the\n// License for the specific language governing permissions and limitations\n// under the License.\n\nimport {\n JOB_FETCH_FAIL,\n JOB_FETCH_REQUEST,\n JOB_FETCH_SUCCESS\n} from '../actions/job'\n\nimport update from 'immutability-helper'\n\nexport default (state = {\n isFetching: false,\n jobs: {},\n}, action) => {\n switch (action.type) {\n case JOB_FETCH_REQUEST:\n return {\n isFetching: true,\n jobs: state.jobs,\n }\n case JOB_FETCH_SUCCESS:\n if (!state.jobs[action.tenant]) {\n state.jobs = update(state.jobs, {$merge: {[action.tenant]: {}}})\n }\n return {\n isFetching: false,\n jobs: update(state.jobs, {\n [action.tenant]: {\n $merge: {\n [action.jobname]: action.job\n }\n }\n })\n }\n case JOB_FETCH_FAIL:\n return {\n isFetching: false,\n jobs: state.jobs,\n }\n default:\n return state\n }\n}\n","// Copyright 2018 Red Hat, Inc\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\"); you may\n// not use this file except in compliance with the License. You may obtain\n// a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the\n// License for the specific language governing permissions and limitations\n// under the License.\n\nimport {\n JOBS_FETCH_FAIL,\n JOBS_FETCH_REQUEST,\n JOBS_FETCH_SUCCESS\n} from '../actions/jobs'\n\nimport update from 'immutability-helper'\n\nexport default (state = {\n isFetching: false,\n jobs: {},\n}, action) => {\n switch (action.type) {\n case JOBS_FETCH_REQUEST:\n return {\n isFetching: true,\n jobs: state.jobs,\n }\n case JOBS_FETCH_SUCCESS:\n return {\n isFetching: false,\n jobs: update(state.jobs, {$merge: {[action.tenant]: action.jobs}}),\n }\n case JOBS_FETCH_FAIL:\n return {\n isFetching: false,\n jobs: state.jobs,\n }\n default:\n return state\n }\n}\n","// Copyright 2018 Red Hat, Inc\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\"); you may\n// not use this file except in compliance with the License. You may obtain\n// a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the\n// License for the specific language governing permissions and limitations\n// under the License.\n\nimport {\n LABELS_FETCH_FAIL,\n LABELS_FETCH_REQUEST,\n LABELS_FETCH_SUCCESS\n} from '../actions/labels'\n\nimport update from 'immutability-helper'\n\nexport default (state = {\n isFetching: false,\n labels: {},\n}, action) => {\n switch (action.type) {\n case LABELS_FETCH_REQUEST:\n return {\n isFetching: true,\n labels: state.labels,\n }\n case LABELS_FETCH_SUCCESS:\n return {\n isFetching: false,\n labels: update(\n state.labels, {$merge: {[action.tenant]: action.labels}}),\n }\n case LABELS_FETCH_FAIL:\n return {\n isFetching: false,\n labels: state.labels,\n }\n default:\n return state\n }\n}\n","// Copyright 2018 Red Hat, Inc\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\"); you may\n// not use this file except in compliance with the License. You may obtain\n// a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the\n// License for the specific language governing permissions and limitations\n// under the License.\n\nimport update from 'immutability-helper'\n\nimport {\n LOGFILE_FETCH_FAIL,\n LOGFILE_FETCH_REQUEST,\n LOGFILE_FETCH_SUCCESS,\n} from '../actions/logfile'\n\n\nexport default (state = {\n isFetching: false,\n url: null,\n data: null\n}, action) => {\n switch (action.type) {\n case LOGFILE_FETCH_REQUEST:\n return update(state, {$merge: {isFetching: true,\n url: action.url,\n data: null}})\n case LOGFILE_FETCH_SUCCESS:\n return update(state, {$merge: {isFetching: false,\n data: action.data}})\n case LOGFILE_FETCH_FAIL:\n return update(state, {$merge: {isFetching: false,\n url: null,\n data: null}})\n default:\n return state\n }\n}\n","// Copyright 2018 Red Hat, Inc\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\"); you may\n// not use this file except in compliance with the License. You may obtain\n// a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the\n// License for the specific language governing permissions and limitations\n// under the License.\n\nimport {\n NODES_FETCH_FAIL,\n NODES_FETCH_REQUEST,\n NODES_FETCH_SUCCESS\n} from '../actions/nodes'\n\nimport update from 'immutability-helper'\n\nexport default (state = {\n receivedAt: 0,\n isFetching: false,\n nodes: [],\n}, action) => {\n switch (action.type) {\n case NODES_FETCH_REQUEST:\n return update(state, {$merge: {isFetching: true}})\n case NODES_FETCH_SUCCESS:\n return update(state, {$merge: {\n isFetching: false,\n nodes: action.nodes,\n receivedAt: action.receivedAt\n }})\n case NODES_FETCH_FAIL:\n return update(state, {$merge: {isFetching: false}})\n default:\n return state\n }\n}\n","// Copyright 2018 Red Hat, Inc\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\"); you may\n// not use this file except in compliance with the License. You may obtain\n// a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the\n// License for the specific language governing permissions and limitations\n// under the License.\n\nimport {\n OPENAPI_FETCH_REQUEST,\n OPENAPI_FETCH_SUCCESS,\n OPENAPI_FETCH_FAIL,\n} from '../actions/openapi'\n\nexport default (state = {\n isFetching: false,\n openapi: null,\n}, action) => {\n switch (action.type) {\n case OPENAPI_FETCH_REQUEST:\n case OPENAPI_FETCH_FAIL:\n return {\n isFetching: true,\n tenant: state.openapi,\n }\n case OPENAPI_FETCH_SUCCESS:\n return {\n isFetching: false,\n openapi: action.openapi,\n }\n default:\n return state\n }\n}\n","// Copyright 2018 Red Hat, Inc\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\"); you may\n// not use this file except in compliance with the License. You may obtain\n// a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the\n// License for the specific language governing permissions and limitations\n// under the License.\n\nimport {\n PROJECT_FETCH_FAIL,\n PROJECT_FETCH_REQUEST,\n PROJECT_FETCH_SUCCESS\n} from '../actions/project'\n\nimport update from 'immutability-helper'\n\nexport default (state = {\n isFetching: false,\n projects: {},\n}, action) => {\n switch (action.type) {\n case PROJECT_FETCH_REQUEST:\n return {\n isFetching: true,\n projects: state.projects,\n }\n case PROJECT_FETCH_SUCCESS:\n if (!state.projects[action.tenant]) {\n state.projects = update(state.projects, {$merge: {[action.tenant]: {}}})\n }\n return {\n isFetching: false,\n projects: update(state.projects, {\n [action.tenant]: {\n $merge: {\n [action.projectName]: action.project\n }\n }\n })\n }\n case PROJECT_FETCH_FAIL:\n return {\n isFetching: false,\n projects: state.projects,\n }\n default:\n return state\n }\n}\n","// Copyright 2018 Red Hat, Inc\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\"); you may\n// not use this file except in compliance with the License. You may obtain\n// a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the\n// License for the specific language governing permissions and limitations\n// under the License.\n\nimport {\n PROJECTS_FETCH_FAIL,\n PROJECTS_FETCH_REQUEST,\n PROJECTS_FETCH_SUCCESS\n} from '../actions/projects'\n\nimport update from 'immutability-helper'\n\nexport default (state = {\n isFetching: false,\n projects: {},\n}, action) => {\n switch (action.type) {\n case PROJECTS_FETCH_REQUEST:\n return {\n isFetching: true,\n projects: state.projects,\n }\n case PROJECTS_FETCH_SUCCESS:\n return {\n isFetching: false,\n projects: update(\n state.projects, {$merge: {[action.tenant]: action.projects}}),\n }\n case PROJECTS_FETCH_FAIL:\n return {\n isFetching: false,\n projects: state.projects,\n }\n default:\n return state\n }\n}\n","// Copyright 2018 Red Hat, Inc\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\"); you may\n// not use this file except in compliance with the License. You may obtain\n// a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the\n// License for the specific language governing permissions and limitations\n// under the License.\n\nimport { TENANT_SET } from '../actions/tenant'\nimport {\n STATUS_FETCH_FAIL,\n STATUS_FETCH_REQUEST,\n STATUS_FETCH_SUCCESS\n} from '../actions/status'\n\nexport default (state = {\n isFetching: false,\n status: null\n}, action) => {\n switch (action.type) {\n case TENANT_SET:\n return {\n isFetching: false,\n status: null,\n }\n case STATUS_FETCH_REQUEST:\n return {\n isFetching: true,\n status: state.status\n }\n case STATUS_FETCH_SUCCESS:\n return {\n isFetching: false,\n status: action.status,\n }\n case STATUS_FETCH_FAIL:\n return {\n isFetching: false,\n status: state.status,\n }\n default:\n return state\n }\n}\n","// Copyright 2018 Red Hat, Inc\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\"); you may\n// not use this file except in compliance with the License. You may obtain\n// a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the\n// License for the specific language governing permissions and limitations\n// under the License.\n\nexport const TENANT_SET = 'TENANT_SET'\n\nexport function setTenantAction (name, whiteLabel) {\n let apiPrefix = ''\n let linkPrefix = ''\n let routePrefix = ''\n let defaultRoute = '/status'\n if (!whiteLabel) {\n apiPrefix = 'tenant/' + name + '/'\n linkPrefix = '/t/' + name\n routePrefix = '/t/:tenant'\n defaultRoute = '/tenants'\n }\n return {\n type: TENANT_SET,\n tenant: {\n name: name,\n whiteLabel: whiteLabel,\n defaultRoute: defaultRoute,\n linkPrefix: linkPrefix,\n apiPrefix: apiPrefix,\n routePrefix: routePrefix\n }\n }\n}\n","// Copyright 2018 Red Hat, Inc\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\"); you may\n// not use this file except in compliance with the License. You may obtain\n// a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the\n// License for the specific language governing permissions and limitations\n// under the License.\n\nimport { TENANT_SET } from '../actions/tenant'\n\nexport default (state = {name: null}, action) => {\n switch (action.type) {\n case TENANT_SET:\n return action.tenant\n default:\n return state\n }\n}\n","// Copyright 2018 Red Hat, Inc\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\"); you may\n// not use this file except in compliance with the License. You may obtain\n// a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the\n// License for the specific language governing permissions and limitations\n// under the License.\n\nimport {\n TENANTS_FETCH_FAIL,\n TENANTS_FETCH_REQUEST,\n TENANTS_FETCH_SUCCESS\n} from '../actions/tenants'\n\nexport default (state = {\n isFetching: false,\n tenants: []\n}, action) => {\n switch (action.type) {\n case TENANTS_FETCH_REQUEST:\n return {\n isFetching: true,\n tenants: state.tenants\n }\n case TENANTS_FETCH_SUCCESS:\n return {\n isFetching: false,\n tenants: action.tenants,\n }\n case TENANTS_FETCH_FAIL:\n return {\n isFetching: false,\n tenants: state.tenants,\n }\n default:\n return state\n }\n}\n","// Copyright 2018 Red Hat, Inc\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\"); you may\n// not use this file except in compliance with the License. You may obtain\n// a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the\n// License for the specific language governing permissions and limitations\n// under the License.\n\nimport { applyMiddleware, createStore } from 'redux'\nimport thunk from 'redux-thunk'\n\nimport appReducers from './reducers'\n\nconst store = createStore(appReducers, applyMiddleware(thunk))\n\nexport default store","// Copyright 2019 Red Hat, Inc\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\"); you may\n// not use this file except in compliance with the License. You may obtain\n// a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the\n// License for the specific language governing permissions and limitations\n// under the License.\n\nimport React from 'react'\nimport PropTypes from 'prop-types'\n\n\nclass ErrorBoundary extends React.Component {\n static propTypes = {\n children: PropTypes.object,\n }\n\n state = {\n hasError: false\n }\n\n componentDidCatch() {\n this.setState({\n hasError: true\n })\n }\n\n render() {\n if (this.state.hasError) {\n return
Queue: {shortName}
\n {changesList}\n{pipeline.description.split(/\\r?\\n\\r?\\n/)}
\n ) : ''}\n\n Queue lengths: {status.trigger_event_queue ?\n status.trigger_event_queue.length : '0'\n } events, \n {status.management_event_queue ?\n status.management_event_queue.length : '0'\n } management events, \n {status.result_event_queue ?\n status.result_event_queue.length : '0'\n } results.\n
\n )\n }\n\n renderStatusFooter (status) {\n return (\nZuul version: {status.zuul_version}
\n {status.last_reconfigured ? (\nLast reconfigured: \n {moment.utc(status.last_reconfigured).tz(this.props.timezone).format('llll')}\n
) : ''}\nQueue: {pipeline.queue_name}
)}\n{item.label} | \n{item.value} | \n
Loading...
)\n }\n\n const headerFormat = value =>{item.label} | \n{item.value} | \n
Loading...
)\n }\n\n const headerFormat = value =>{key} | \n{artifact.metadata[key]} | \n
{task.msg}\n )}\n {task.exception && (\n
{task.exception}\n )}\n {task.stdout_lines && task.stdout_lines.length > 0 && (\n
\n {task.stdout_lines.slice(-42).join('\\n')}\n\n )}\n {task.stderr_lines && task.stderr_lines.length > 0 && (\n
\n {task.stderr_lines.slice(-42).join('\\n')}\n\n )}\n
{item.key} | \n{item.value} | \n
\n null\n\n )\n } else if (typeof(value) === 'string') {\n ret = (\n
\n {value}\n\n )\n } else if (typeof(value) === 'object') {\n ret = (\n
\n\n )\n } else {\n ret = (\n\n
\n {value.toString()}\n\n )\n }\n\n return (\n
\n\n \n\n
\n
\n {line.index}\n | \n\n \n {line.text+'\\n'}\n \n | \n
Loading...
}\n{item.key} | \n{item.value} | \n
{item} | \n ))}\n
{item} | \n ))}\n
Loading...
}\n\n {item.error}\n
\n