{"version":3,"sources":["webpack://pnp/webpack/universalModuleDefinition","webpack://pnp/webpack/bootstrap","webpack://pnp/webpack/runtime/define property getters","webpack://pnp/webpack/runtime/global","webpack://pnp/webpack/runtime/hasOwnProperty shorthand","webpack://pnp/webpack/runtime/make namespace object","webpack://pnp/./build/packages/esm/logging/logger.js","webpack://pnp/./build/packages/esm/logging/listeners.js","webpack://pnp/./build/packages/esm/common/util.js","webpack://pnp/./build/packages/esm/common/collections.js","webpack://pnp/./node_modules/tslib/tslib.es6.js","webpack://pnp/./build/packages/esm/common/libconfig.js","webpack://pnp/./build/packages/esm/common/safe-global.js","webpack://pnp/./build/packages/esm/common/net.js","webpack://pnp/./build/packages/esm/common/storage.js","webpack://pnp/./build/packages/esm/config-store/configuration.js","webpack://pnp/./build/packages/esm/config-store/providers/cachingConfigurationProvider.js","webpack://pnp/./build/packages/esm/odata/batch.js","webpack://pnp/./build/packages/esm/odata/caching.js","webpack://pnp/./build/packages/esm/odata/add-prop.js","webpack://pnp/./build/packages/esm/odata/invokable-extensions.js","webpack://pnp/./build/packages/esm/odata/invokable-binder.js","webpack://pnp/./build/packages/esm/odata/parsers.js","webpack://pnp/./build/packages/esm/odata/queryable.js","webpack://pnp/./build/packages/esm/odata/pipeline.js","webpack://pnp/./build/packages/esm/odata/pipeline-binder.js","webpack://pnp/./build/packages/esm/odata/request-builders.js","webpack://pnp/./build/packages/esm/sp/utils/metadata.js","webpack://pnp/./build/packages/esm/sp/utils/extractweburl.js","webpack://pnp/./build/packages/esm/sp/telemetry.js","webpack://pnp/./build/packages/esm/sp/sphttpclient.js","webpack://pnp/./build/packages/esm/sp/utils/toabsoluteurl.js","webpack://pnp/./build/packages/esm/sp/operations.js","webpack://pnp/./build/packages/esm/sp/sharepointqueryable.js","webpack://pnp/./build/packages/esm/sp/decorators.js","webpack://pnp/./build/packages/esm/sp/odata.js","webpack://pnp/./build/packages/esm/sp/batch.js","webpack://pnp/./build/packages/esm/sp/splibconfig.js","webpack://pnp/./build/packages/esm/sp/rest.js","webpack://pnp/./build/packages/esm/sp/utils/escapeQueryStrValue.js","webpack://pnp/./build/packages/esm/sp/sites/types.js","webpack://pnp/./build/packages/esm/sp/sites/index.js","webpack://pnp/./build/packages/esm/sp/webs/types.js","webpack://pnp/./build/packages/esm/sp/utils/toResourcePath.js","webpack://pnp/./build/packages/esm/sp/lists/types.js","webpack://pnp/./build/packages/esm/sp/lists/web.js","webpack://pnp/./build/packages/esm/sp/items/types.js","webpack://pnp/./build/packages/esm/sp/items/list.js","webpack://pnp/./build/packages/esm/config-store/providers/spListConfigurationProvider.js","webpack://pnp/./build/packages/esm/sp-addinhelpers/sprequestexecutorclient.js","webpack://pnp/./build/packages/esm/sp/types.js","webpack://pnp/./build/packages/esm/sp/utils/objectToSPKeyValueCollection.js","webpack://pnp/./build/packages/esm/sp/utils/file-names.js","webpack://pnp/./build/packages/esm/sp/webs/index.js","webpack://pnp/./build/packages/esm/sp-addinhelpers/sprestaddin.js","webpack://pnp/./build/packages/esm/graph/graphlibconfig.js","webpack://pnp/./build/packages/esm/graph/graphhttpclient.js","webpack://pnp/./build/packages/esm/graph/utils/toabsoluteurl.js","webpack://pnp/./build/packages/esm/graph/batch.js","webpack://pnp/./build/packages/esm/graph/rest.js","webpack://pnp/./build/packages/esm/graph/types.js","webpack://pnp/./build/packages/esm/graph/operations.js","webpack://pnp/./build/packages/esm/sp/files/types.js","webpack://pnp/./build/packages/esm/graph/graphqueryable.js","webpack://pnp/./build/packages/esm/sp/appcatalog/types.js","webpack://pnp/./build/packages/esm/sp/appcatalog/web.js","webpack://pnp/./build/packages/esm/sp/appcatalog/index.js","webpack://pnp/./build/packages/esm/sp/attachments/types.js","webpack://pnp/./build/packages/esm/sp/clientside-pages/funcs.js","webpack://pnp/./build/packages/esm/sp/attachments/item.js","webpack://pnp/./build/packages/esm/sp/files/web.js","webpack://pnp/./build/packages/esm/sp/comments/types.js","webpack://pnp/./build/packages/esm/sp/clientside-pages/types.js","webpack://pnp/./build/packages/esm/sp/comments/item.js","webpack://pnp/./build/packages/esm/sp/clientside-pages/web.js","webpack://pnp/./build/packages/esm/sp/folders/types.js","webpack://pnp/./build/packages/esm/sp/column-defaults/list.js","webpack://pnp/./build/packages/esm/sp/column-defaults/folder.js","webpack://pnp/./build/packages/esm/sp/content-types/types.js","webpack://pnp/./build/packages/esm/sp/content-types/web.js","webpack://pnp/./build/packages/esm/sp/content-types/item.js","webpack://pnp/./build/packages/esm/sp/content-types/list.js","webpack://pnp/./build/packages/esm/sp/features/types.js","webpack://pnp/./build/packages/esm/sp/features/site.js","webpack://pnp/./build/packages/esm/sp/features/web.js","webpack://pnp/./build/packages/esm/sp/fields/types.js","webpack://pnp/./build/packages/esm/sp/fields/web.js","webpack://pnp/./build/packages/esm/sp/fields/list.js","webpack://pnp/./build/packages/esm/sp/files/folder.js","webpack://pnp/./build/packages/esm/sp/files/item.js","webpack://pnp/./build/packages/esm/sp/folders/item.js","webpack://pnp/./build/packages/esm/sp/folders/list.js","webpack://pnp/./build/packages/esm/sp/folders/web.js","webpack://pnp/./build/packages/esm/sp/forms/types.js","webpack://pnp/./build/packages/esm/sp/forms/list.js","webpack://pnp/./build/packages/esm/sp/hubsites/types.js","webpack://pnp/./build/packages/esm/sp/hubsites/site.js","webpack://pnp/./build/packages/esm/sp/hubsites/web.js","webpack://pnp/./build/packages/esm/sp/hubsites/index.js","webpack://pnp/./build/packages/esm/sp/navigation/types.js","webpack://pnp/./build/packages/esm/sp/navigation/web.js","webpack://pnp/./build/packages/esm/sp/navigation/index.js","webpack://pnp/./build/packages/esm/sp/profiles/types.js","webpack://pnp/./build/packages/esm/sp/profiles/index.js","webpack://pnp/./build/packages/esm/sp/regional-settings/types.js","webpack://pnp/./build/packages/esm/sp/regional-settings/funcs.js","webpack://pnp/./build/packages/esm/sp/regional-settings/web.js","webpack://pnp/./build/packages/esm/sp/user-custom-actions/types.js","webpack://pnp/./build/packages/esm/sp/regional-settings/user-custom-actions.js","webpack://pnp/./build/packages/esm/sp/regional-settings/list.js","webpack://pnp/./build/packages/esm/sp/regional-settings/field.js","webpack://pnp/./build/packages/esm/sp/regional-settings/content-type.js","webpack://pnp/./build/packages/esm/sp/related-items/types.js","webpack://pnp/./build/packages/esm/sp/search/query.js","webpack://pnp/./build/packages/esm/sp/search/types.js","webpack://pnp/./build/packages/esm/sp/search/suggest.js","webpack://pnp/./build/packages/esm/sp/search/index.js","webpack://pnp/./build/packages/esm/sp/site-users/types.js","webpack://pnp/./build/packages/esm/sp/security/types.js","webpack://pnp/./build/packages/esm/sp/sharing/types.js","webpack://pnp/./build/packages/esm/sp/site-groups/types.js","webpack://pnp/./build/packages/esm/sp/security/funcs.js","webpack://pnp/./build/packages/esm/sp/sharing/funcs.js","webpack://pnp/./build/packages/esm/sp/security/item.js","webpack://pnp/./build/packages/esm/sp/security/list.js","webpack://pnp/./build/packages/esm/sp/security/web.js","webpack://pnp/./build/packages/esm/sp/sharing/file.js","webpack://pnp/./build/packages/esm/sp/sharing/folder.js","webpack://pnp/./build/packages/esm/sp/sharing/item.js","webpack://pnp/./build/packages/esm/sp/sharing/web.js","webpack://pnp/./build/packages/esm/sp/site-designs/types.js","webpack://pnp/./build/packages/esm/sp/site-designs/web.js","webpack://pnp/./build/packages/esm/sp/site-designs/index.js","webpack://pnp/./build/packages/esm/sp/site-groups/web.js","webpack://pnp/./build/packages/esm/sp/site-scripts/types.js","webpack://pnp/./build/packages/esm/sp/site-scripts/web.js","webpack://pnp/./build/packages/esm/sp/site-scripts/list.js","webpack://pnp/./build/packages/esm/sp/site-scripts/index.js","webpack://pnp/./build/packages/esm/sp/site-users/web.js","webpack://pnp/./build/packages/esm/sp/social/types.js","webpack://pnp/./build/packages/esm/sp/social/index.js","webpack://pnp/./build/packages/esm/sp/sputilities/types.js","webpack://pnp/./build/packages/esm/sp/sputilities/index.js","webpack://pnp/./build/packages/esm/sp/subscriptions/types.js","webpack://pnp/./build/packages/esm/sp/subscriptions/list.js","webpack://pnp/./build/packages/esm/sp/taxonomy/types.js","webpack://pnp/./build/packages/esm/sp/taxonomy/index.js","webpack://pnp/./build/packages/esm/sp/user-custom-actions/list.js","webpack://pnp/./build/packages/esm/sp/user-custom-actions/web.js","webpack://pnp/./build/packages/esm/sp/user-custom-actions/site.js","webpack://pnp/./build/packages/esm/sp/views/types.js","webpack://pnp/./build/packages/esm/sp/views/list.js","webpack://pnp/./build/packages/esm/sp/webparts/types.js","webpack://pnp/./build/packages/esm/sp/webparts/file.js","webpack://pnp/./build/packages/esm/sp/presets/all.js","webpack://pnp/./build/packages/esm/graph/decorators.js","webpack://pnp/./build/packages/esm/graph/conversations/types.js","webpack://pnp/./build/packages/esm/graph/attachments/types.js","webpack://pnp/./build/packages/esm/graph/utils/type.js","webpack://pnp/./build/packages/esm/graph/attachments/conversations.js","webpack://pnp/./build/packages/esm/graph/directory-objects/types.js","webpack://pnp/./build/packages/esm/graph/groups/types.js","webpack://pnp/./build/packages/esm/graph/calendars/funcs.js","webpack://pnp/./build/packages/esm/graph/calendars/types.js","webpack://pnp/./build/packages/esm/graph/calendars/groups.js","webpack://pnp/./build/packages/esm/graph/users/types.js","webpack://pnp/./build/packages/esm/graph/calendars/users.js","webpack://pnp/./build/packages/esm/graph/contacts/types.js","webpack://pnp/./build/packages/esm/graph/contacts/users.js","webpack://pnp/./build/packages/esm/graph/conversations/groups.js","webpack://pnp/./build/packages/esm/graph/directory-objects/index.js","webpack://pnp/./build/packages/esm/graph/groups/index.js","webpack://pnp/./build/packages/esm/graph/insights/types.js","webpack://pnp/./build/packages/esm/graph/insights/users.js","webpack://pnp/./build/packages/esm/graph/invitations/types.js","webpack://pnp/./build/packages/esm/graph/invitations/index.js","webpack://pnp/./build/packages/esm/graph/members/types.js","webpack://pnp/./build/packages/esm/graph/members/groups.js","webpack://pnp/./build/packages/esm/graph/messages/types.js","webpack://pnp/./build/packages/esm/graph/messages/users.js","webpack://pnp/./build/packages/esm/graph/onedrive/types.js","webpack://pnp/./build/packages/esm/graph/onedrive/users.js","webpack://pnp/./build/packages/esm/graph/onenote/types.js","webpack://pnp/./build/packages/esm/graph/onenote/users.js","webpack://pnp/./build/packages/esm/graph/photos/types.js","webpack://pnp/./build/packages/esm/graph/photos/groups.js","webpack://pnp/./build/packages/esm/graph/photos/users.js","webpack://pnp/./build/packages/esm/graph/planner/types.js","webpack://pnp/./build/packages/esm/graph/planner/groups.js","webpack://pnp/./build/packages/esm/graph/planner/users.js","webpack://pnp/./build/packages/esm/graph/planner/index.js","webpack://pnp/./build/packages/esm/graph/search/types.js","webpack://pnp/./build/packages/esm/graph/search/index.js","webpack://pnp/./build/packages/esm/graph/subscriptions/types.js","webpack://pnp/./build/packages/esm/graph/subscriptions/index.js","webpack://pnp/./build/packages/esm/graph/teams/types.js","webpack://pnp/./build/packages/esm/graph/teams/users.js","webpack://pnp/./build/packages/esm/graph/teams/index.js","webpack://pnp/./build/packages/esm/graph/users/index.js","webpack://pnp/./build/packages/esm/pnpjs/index.js","webpack://pnp/./build/packages/esm/pnpjs/pnplibconfig.js"],"names":["root","factory","exports","module","define","amd","self","__webpack_require__","definition","key","o","Object","defineProperty","enumerable","get","g","globalThis","this","Function","e","window","obj","prop","prototype","hasOwnProperty","call","r","Symbol","toStringTag","value","LogLevel","Logger","instance","activeLogLevel","set","configurable","undefined","_instance","LoggerImpl","subscribe","listeners","_i","arguments","length","forEach","listener","clearSubscribers","count","write","message","level","log","writeJSON","json","JSON","stringify","entry","error","err","data","subscribers","push","s","slice","map","subscriber","ConsoleListener","msg","format","console","warn","join","FunctionListener","method","getCtxCallback","context","params","apply","dateAdd","date","interval","units","ret","Date","toString","toLowerCase","setFullYear","getFullYear","setMonth","getMonth","setDate","getDate","setTime","getTime","combine","paths","filter","path","stringIsNullOrEmpty","replace","getRandomString","chars","text","Array","i","charAt","Math","floor","random","getGUID","d","now","c","isFunc","f","objectDefinedNotNull","isArray","array","constructor","target","source","noOverwrite","check","getOwnPropertyNames","v","reduce","t","isUrlAbsolute","url","test","sanitizeGuid","guid","matches","exec","jsS","hOP","p","getHashCode","hash","charCodeAt","objectEntries","entries","keys","k","objectToMap","Map","mergeMaps","maps","assign","extendStatics","b","setPrototypeOf","__proto__","__extends","TypeError","String","__","create","__assign","n","__decorate","decorators","desc","getOwnPropertyDescriptor","Reflect","decorate","__awaiter","thisArg","_arguments","P","generator","Promise","resolve","reject","fulfilled","step","next","rejected","result","done","then","__generator","body","y","_","label","sent","trys","ops","verb","iterator","op","pop","__values","m","__read","ar","__spreadArray","to","from","il","j","runtimeCreateHooks","onRuntimeCreate","hook","indexOf","DefaultRuntime","Runtime","_v","_this","defaulter","def","has","config","export","e_1","_a","expt","_b","_c","_d","e_1_1","return","safeGlobal","mergeHeaders","Request","headers","name","append","mergeOptions","getADALResource","u","URL","protocol","hostname","FetchClient","fetch","options","BearerTokenFetchClient","_super","token","Headers","LambdaFetchClient","tokenFactory","SPFxAdalClient","aadTokenProviderFactory","getTokenProvider","getToken","resource","PnPClientStorageWrapper","store","defaultTimeoutMinutes","enabled","cacheExpirationHandler","bind","MemoryStorage","getItem","persistable","parse","expiration","delete","put","expire","setItem","createPersistable","removeItem","getOrPut","getter","deleteExpired","defaultTimeout","pnp","setTimeout","catch","_store","size","clear","index","PnPClientStorage","_local","_session","localStorage","sessionStorage","Settings","_settings","add","addJSON","load","provider","getConfiguration","getJSON","CachingConfigurationProvider","wrappedProvider","cacheKey","cacheStore","selectPnPCache","getWrappedProvider","providedConfig","pnpCache","local","session","Error","Batch","_batchId","_reqs","_deps","_rDeps","_index","sort","info1","info2","track","batchee","batch","batchIndex","info","id","requestId","toUpperCase","parser","addDependency","resolver","addResolveBatchDependency","execute","all","executeImpl","storage","CachingOptions","storeName","CachingParserWrapper","cacheOptions","response","cacheData","addProp","_enableExtensions","globalExtensions","factoryExtensions","ObjExtensionsSym","for","extendGlobal","extendCol","extendObj","extensions","extendFactory","proto","getPrototypeOf","a","clearGlobalExtensions","disableExtensions","enableExtensions","applyFactoryExtensions","args","extensionOrDefault","or","rest","extension","invoker","invokableFactory","defaultAction","as","ags","Proxy","_thisArg","argArray","receiver","ODataParser","handleError","parseImpl","parseFloat","status","txt","parseODataJSON","ok","HttpRequestError","init","results","TextParser","BlobParser","blob","JSONParser","BufferParser","arrayBuffer","buffer","LambdaParser","statusText","isHttpRequestError","clone","cloneQueryableData","parsed","Queryable","dataSeed","_data","cloneParentWasCaching","parentUrl","query","useCaching","_runtime","getRuntime","setRuntime","toUrl","concat","pathPart","configure","configureFrom","sourceRuntime","usingCaching","runtime","defaultOpts","cachingOptions","usingParser","withPipeline","pipeline","pipes","inBatch","hasBatch","addBatchDependency","cloneTo","settings","includeBatch","includeQuery","cloneParentCacheOptions","setResult","hasResult","shift","pipe","promise","ctx","returnResult","isBatched","requestPipelineMethod","alwaysRun","propertyKey","descriptor","PipelineMethods","logStart","caching","batchDependency","hydrate","send","batchId","client","clientFactory","opts","logEnd","getDefaultPipeline","pipelineBinder","defaultPipelineBinder","previous","metadata","type","extractWebUrl","candidateUrl","substr","tag","originalMethod","getClientTag","h","deleteFromCollection","methodName","isTagged","SPHttpClient","_impl","fetchClientFactory","_digestCache","getDigestFactory","clientTag","digest","cache","credentials","fetchRaw","rawHeaders","retry","setRetry","delay","parseInt","attempts","retryCount","post","patch","digests","webUrl","cachedDigest","resp","newCachedDigest","sp","GetContextWebInformation","FormDigestTimeoutSeconds","FormDigestValue","toAbsoluteUrl","baseUrl","tempClient","location_1","pageContext","web","absoluteUrl","siteUrl","_spPageContextInfo","webAbsoluteUrl","webServerRelativeUrl","location","registerCustomRequestClientFactory","requestClientFactory","httpClientFactory","defaultFactory","operation","toUrlAndQuery","spGet","_forceCaching","spPost","spDelete","spPatch","spPostDelete","spPostDeleteETag","eTag","spInvokableFactory","_SharePointQueryable","lastIndexOf","aliasedParams","match","labelName","char","select","selects","encodeURIComponent","expand","expands","additionalPath","getParent","parent","SharePointQueryable","_SharePointQueryableCollection","orderBy","ascending","split","skip","top","SharePointQueryableCollection","_SharePointQueryableInstance","_update","mapper","props","SharePointQueryableInstance","deleteable","deleteableWithETag","defaultPath","class_1","odataUrlFrom","candidate","parts","__metadata","uri","editLink","SPODataEntityParserImpl","SPODataEntityArrayParserImpl","spODataEntity","spODataEntityArray","SPBatch","ParseResponse","responses","header","statusRegExp","RegExp","lines","state","line","trim","Response","absoluteRequestUrl","batchBody","currentChangeSetId","reqInfo","castHeaders","batchOptions","fetchResponse","requests","request","emptyGuid","existing","spPart","SPRest","_options","_baseUrl","setup","spfxContext","createIsolated","cloneGlobal","childConfigHook","callback","escapeQueryStrValue","_Site","Web","getChanges","postBody","openWebById","webId","Site","getRootWeb","rootWeb","Url","getContextInfo","site","q","SupportedSchemaVersions","createBatch","siteId","Id","getDocumentLibraries","absoluteWebUrl","GetDocumentLibraries","getWebUrlFromPageUrl","absolutePageUrl","GetWebUrlFromPageUrl","createCommunicationSite","title","lcid","shareByEmailEnabled","description","classification","siteDesignId","hubSiteId","owner","createCommunicationSiteFromProps","Classification","Description","HubSiteId","Lcid","Owner","ShareByEmailEnabled","SiteDesignId","Title","WebTemplate","WebTemplateExtensionId","exists","createModernTeamSite","displayName","alias","isPublic","owners","createModernTeamSiteFromProps","optionalParams","CreationOptions","Owners","_Webs","template","language","inheritPermissions","Language","UseSamePermissionsAsParentSite","Webs","_Web","getParentWeb","ParentWeb","update","properties","applyTheme","colorPaletteUrl","fontSchemeUrl","backgroundImageUrl","shareGenerated","applyWebTemplate","mapToIcon","filename","progId","getStorageEntity","setStorageEntity","comments","removeStorageEntity","getSubwebsFilteredForCurrentUser","nWebTemplateFilter","nConfigurationFilter","availableWebTemplates","includeCrossLanugage","toResourcePath","DecodedUrl","RenderListDataOptions","ControlMode","_Lists","getById","List","getByTitle","enableContentTypes","additionalSettings","addSettings","list","ensure","addOrUpdateSettings","ContentTypesEnabled","created","ensureSiteAssetsLibrary","Lists","ensureSitePagesLibrary","_List","getItemsByCAMLQuery","getListItemChangesSinceToken","recycle","Recycle","renderListData","viewXml","RenderListData","renderListDataAsStream","parameters","overrideParams","RenderOptions","bodyOptions","overrideParameters","renderListFormData","itemId","formId","mode","RenderListFormData","reserveListItemId","ReserveListItemId","getListItemEntityTypeFullName","ListItemEntityTypeFullName","addValidateUpdateItemUsingPath","formValues","decodedUrl","bNewDocumentUpdate","checkInComment","additionalProps","addProps","res","FolderPath","leafName","LeafName","objectType","UnderlyingObjectType","listItemCreateInfo","AddValidateUpdateItemUsingPath","getParentInfos","urlInfo","RootFolderServerRelativePath","RootFolder","ServerRelativePath","RootFolderServerRelativeUrl","ServerRelativeUrl","RootFolderUniqueId","UniqueId","getList","listRelativeUrl","getCatalog","_Items","Item","getItemByStringId","stringId","reverse","getPaged","PagedItemCollectionParser","getAll","requestSize","acceptHeader","items","Items","itemsCollector","gatherer","last","hasNext","getNext","listItemEntityTypeFullName","removeDependency","listItemEntityType","ensureListItemEntityTypeName","item","candidatelistItemEntityTypeFullName","_Item","ItemVersions","poster","ItemUpdatedParser","deleteWithParams","getWopiFrameUrl","action","GetWOPIFrameUrl","validateUpdateListItem","ParentList","_ItemVersions","versionId","ItemVersion","_ItemVersion","PagedItemCollection","nextUrl","_parent","__next","SPListConfigurationProvider","listTitle","keyFieldName","valueFieldName","lists","asCaching","PrincipalType","PrincipalSource","PageType","objectToSPKeyValueCollection","Key","Value","ValueType","InvalidFileFolderNameCharsOnlineRegex","InvalidFileFolderNameCharsOnPremiseRegex","containsInvalidFileFolderChars","input","onPremise","stripInvalidFileFolderChars","replacer","SPRestAddIn","crossDomainSite","addInWebUrl","hostWebUrl","_cdImpl","crossDomainWeb","urlPart","graphPart","graph","GraphHttpClient","retryContext","spFxContext","msGraphClientFactory","getClient","_graphBaseUrl","GraphBatch","batchUrl","maxRequests","_loop_1","this_1","requestsChunk","batchRequest","queryUrl","splice","formatRequests","parseResponse","parsedResponse","chain","makeUrlRelative","requestFragment","graphResponse","code","parsedResponses","fill","responseId","nextLink","GraphRest","GraphEndpoints","endpoint","Beta","V1","regex","replaces","CheckinType","MoveOperations","TemplateFileType","graphGet","graphPost","graphDelete","graphPatch","graphPut","graphInvokableFactory","_GraphQueryable","setEndpoint","getUrlBase","substring","GraphQueryable","_GraphQueryableCollection","num","skipToken","GraphQueryableCollection","GraphQueryableSearchableCollection","_GraphQueryableSearchableCollection","search","_GraphQueryableInstance","GraphQueryableInstance","_Files","getByName","File","content","shouldOverWrite","Files","file","addUsingPath","Overwrite","AutoCheckoutOnInvalidData","XorHash","addChunked","progress","chunkSize","odataUrl","setContentChunked","addTemplateFile","fileUrl","templateFileType","_File","Versions","approve","comment","cancelUpload","uploadId","checkin","checkinType","Major","checkout","copyTo","copyByPath","destUrl","KeepBoth","srcUrl","webBaseUrl","hostUrl","destPath","ResetAuthorAndCreatedOnCopy","ShouldBypassSharedLocks","srcPath","deny","moveTo","moveOperations","moveByPath","publish","undoCheckout","unpublish","Exists","getText","getBlob","getBuffer","setContent","listItemAllFields","fileSize","totalBlocks","currentPointer","blockNumber","stage","startUpload","continueUpload","finishUpload","fragment","StartUpload","fileOffset","ContinueUpload","_Versions","Version","deleteAll","deleteById","recycleByID","deleteByLabel","recycleByLabel","restoreByLabel","_Version","_AppCatalog","getAppById","App","syncSolutionToTeams","useSharePointItemId","appId","listId","listItems","AppCatalog","adder","_App","deploy","skipFeatureDeployment","do","retract","install","uninstall","upgrade","remove","getAppCatalog","getTenantAppCatalogWeb","CorporateCatalogUrl","_Attachments","Attachment","Attachments","addMultiple","files","deleteMultiple","recycleMultiple","_Attachment","getParsed","getNextOrder","collection","max","order","reindex","columns","controls","getFileByServerRelativeUrl","fileRelativeUrl","getFileByServerRelativePath","getFileById","uniqueId","getFileByUrl","PromotedState","_Comments","Comments","Comment","_Comment","Replies","like","unlike","_Replies","initFrom","ClientsidePage","getLikedBy","itemInfo","likeUrl","getLikedByInformation","_ClientsidePage","noInit","sections","commentsDisabled","_bannerImageDirty","_bannerImageThumbnailUrlDirty","_pageSettings","controlType","pageSettingsSlice","isDefaultDescription","isDefaultThumbnail","_layoutPart","getDefaultLayoutPart","fromJSON","dataVersion","instanceId","authorByline","authors","layoutType","showPublishDate","showTopicHeader","textAlignment","topicHeader","reservedHeight","serverProcessedContent","htmlStrings","searchablePlainTexts","imageSources","links","PageLayoutType","BannerImageUrl","setBannerImage","BannerThumbnailUrl","TopicHeader","htmlAttributes","findIndex","layoutIndex","hasVerticalSection","addVerticalSection","addSection","section","CanvasSection","sectionIndex","pageData","canvasControls","CanvasContent1","layouts","LayoutWebpartsContent","setControls","CommentsDisabled","save","serverRelativePath","imgInfo_1","webUrl_1","saveBody","bannerImageUrlValue","updater","bannerImageUrl","r1","r2","SiteId","WebId","imageSource","customMetadata","ListId","IsPageCheckedOutToCurrentUser","AuthorByline","getCanvasContent1","getLayoutWebpartsContent","thumbnailUrl","discardPageCheckout","promoteToNews","promoteNewsImpl","findControlById","findControl","predicate","copy","pageName","promotedState","page","CreateClientsidePage","pageLayout","makeGuid","guidSite","guidWeb","guidFile","getControls","searchParams","openWeb","translateX","translateY","imageSourceType","altText","setBannerImageFromExternalUrl","FileName","pathname","setAuthorById","authorId","userLoginData","setAuthorByLoginName","LoginName","authorLoginName","UserPrincipalName","role","upn","initer","listData","itemData","mergeColumnToTree","CanvasColumn","part","ClientsideWebpart","mergePartToTree","position","textData","ClientsideText","innerHTML","canvasData","column","displayMode","emphasis","getEmphasisObj","control","specialSaveHandling","zoneEmphasis","VersionInfo","LastVersionCreatedBy","LastVersionCreated","positionData","sectionFactor","zoneIndex","getOrCreateSection","addColumn","addControl","webPartId","texts","webPartData","ClientsidePageFromFile","pageInitData","newPage","_emphasis","_memId","_order","_layoutIndex","factor","defaultColumn","Default","_section","getControl","ColumnControl","_column","onColumnChange","setData","anchorComponentId","controlIndex","col","addedFromPersistedData","editorType","fromComponentDef","import","reservedWidth","setProperties","getProperties","component","componendId","preconfiguredEntries","Manifest","default","getClientsideWebParts","addClientsidePage","layout","loadClientsidePage","addRepostPage","details","AbsoluteUrl","_Folders","Folder","Folders","folder","serverRelativeUrl","overwrite","_Folder","origin","addSubFolderUsingPath","leafPath","folders","ListItemAllFields","getShareable","shareable","getDefaultColumnValues","baseFilePath","xml","rootFolder","defVals","subMatches","st","sm","decodeURIComponent","setDefaultColumnValues","defaults","fieldDefs","defaultsByPath","pathDefaults","pathFields","tags","href","pathDefault","fieldDefault","fd","InternalName","fieldDef","TypeAsString","wssId","termName","termId","eventReceivers","eventReceiverCreationInformation","EventType","ReceiverAssembly","ReceiverClass","ReceiverName","SequenceNumber","Synchronization","folderProps","serRelPath","vti_x005f_listname","fieldDefaults","merge","docLib","folderPath","existingDefaults","filteredExistingDefaults","find","ed","clearDefaultColumnValues","_ContentTypes","addAvailableContentType","contentTypeId","ContentTypes","contentType","ContentType","group","_ContentType","FieldLinks","_FieldLinks","FieldLink","_FieldLink","_Features","force","Features","featdefScope","featureId","feature","Feature","_Feature","deactivate","DefinitionId","FieldTypes","DateTimeFieldFormatType","DateTimeFieldFriendlyFormatType","AddFieldOptions","CalendarType","UrlFieldFormatType","FieldUserSelectionMode","ChoiceFieldFormatType","_Fields","createFieldAsXml","SchemaXml","Fields","field","Field","getByInternalNameOrTitle","fieldType","addText","maxLength","FieldTypeKind","MaxLength","addCalculated","formula","dateFormat","outputType","Text","DateFormat","Formula","OutputType","addDateTime","displayFormat","calendarType","friendlyDisplayFormat","DateOnly","Gregorian","Unspecified","DateTimeCalendarType","DisplayFormat","FriendlyDisplayFormat","addNumber","minValue","maxValue","MinimumValue","MaximumValue","addCurrency","currencyLocalId","CurrencyLocaleId","addMultilineText","numberOfLines","richText","restrictedMode","appendOnly","allowHyperlink","AllowHyperlink","AppendOnly","NumberOfLines","RestrictedMode","RichText","addUrl","Hyperlink","addUser","selectionMode","SelectionMode","addLookup","lookupListId","lookupFieldName","LookupFieldName","LookupListId","addChoice","choices","fillIn","Dropdown","Choices","EditFormat","FillInChoice","addMultiChoice","addBoolean","addDependentLookupField","primaryLookupFieldId","showField","addLocation","_Field","req","setShowInDisplayForm","show","setShowInEditForm","setShowInNewForm","getFolderByServerRelativeUrl","folderRelativeUrl","getFolderByServerRelativePath","getFolderById","_Forms","Form","Forms","_Form","_HubSites","HubSite","HubSites","_HubSite","getSite","SiteUrl","joinHubSite","registerHubSite","unRegisterHubSite","hubSiteData","forceRefresh","syncHubSiteTheme","_NavigationNodes","NavigationNode","visible","IsVisible","NavigationNodes","node","moveAfter","nodeId","previousNodeId","_NavigationNode","_Navigation","Navigation","_NavigationService","getMenuState","menuNodeKey","depth","mapProviderName","customProperties","NavigationService","getMenuNodeKey","currentUrl","UrlZone","_Profiles","clientPeoplePickerQuery","ClientPeoplePickerQuery","profileLoader","ProfileLoader","Profiles","amIFollowedBy","loginName","amIFollowing","getFollowedTags","maxCount","getFollowersFor","getPeopleFollowedBy","getPropertiesFor","getUserProfilePropertyFor","propertyName","hideSuggestion","isFollowing","follower","followee","setMyProfilePic","profilePicSource","reader","FileReader","onload","readAsArrayBuffer","setSingleValueProfileProperty","accountName","propertyValue","setMultiValuedProfileProperty","propertyValues","createPersonalSiteEnqueueBulk","emails","ownerUserProfile","userProfile","createPersonalSite","interactiveRequest","shareAllSocialData","share","clientPeoplePickerResolveUser","queryParams","clientPeoplePickerSearchUser","ProfileLoaderFactory","ClientPeoplePickerFactory","getBodyFrom","ClientPeoplePickerResolveUser","ClientPeoplePickerSearchUser","_RegionalSettings","TimeZone","TimeZones","getInstalledLanguages","RegionalSettings","_TimeZone","utcToLocalTime","utcTime","dateIsoString","toISOString","UTCToLocalTime","localTimeToUTC","localTime","getTimezoneOffset","LocalTimeToUTC","_TimeZones","getValueForUICultureBinder","propName","cultureName","titleResource","descriptionResource","UserCustomActionRegistrationType","UserCustomActionScope","_UserCustomActions","UserCustomAction","UserCustomActions","_UserCustomAction","_RelatedItemManager","getRelatedItems","sourceListName","sourceItemId","RelatedItemManager","SourceItemID","SourceListName","getPageOneRelatedItems","addSingleLink","sourceWebUrl","targetListName","targetItemID","targetWebUrl","tryAddReverseLink","SourceWebUrl","TargetItemID","TargetListName","TargetWebUrl","TryAddReverseLink","addSingleLinkToUrl","targetItemUrl","TargetItemUrl","addSingleLinkFromUrl","sourceItemUrl","targetItemId","SourceItemUrl","deleteSingleLink","tryDeleteReverseLink","TryDeleteReverseLink","funcs","toPropCase","str","$1","SearchQueryBuilder","queryText","_query","Querytext","proxy","pk","mappedPk","propKey","SortDirection","ReorderingRuleMatchType","QueryPropertyValueType","queryRegex","_Search","queryInit","parseQuery","HitHighlightedProperties","fixArrProp","Properties","RefinementFilters","ReorderingRules","SelectProperties","SortList","SearchResults","toSearchQuery","Search","rawResponse","_url","_raw","_primary","postquery","RawSearchResults","ElapsedTime","PrimaryQueryResult","RelevantResults","RowCount","TotalRows","TotalRowsIncludingDuplicates","formatSearchResults","Table","Rows","getPage","pageNumber","pageSize","rows","RowLimit","StartRow","rawResults","tempResults","tempResults_1","tempResults_1_1","tempResult","cells","Cells","cell","writable","_Suggest","mapQueryToQueryString","PeopleNames","s_1","suggest","s_2","PersonalResults","Queries","querytext","querySetter","checkProp","Suggest","SearchBuiltInSourceId","Documents","ItemsMatchingContentType","ItemsMatchingTag","ItemsRelatedToCurrentUser","ItemsWithSameKeywordAsThisItem","LocalPeopleResults","LocalReportsAndDataResults","LocalSharePointResults","LocalVideoResults","Pages","Pictures","Popular","RecentlyChangedItems","RecommendedItems","Wiki","searchWithCaching","searchSuggest","PermissionKind","SharingRole","SPSharedObjectType","SharingDomainRestrictionMode","SharingOperationStatusCode","SharingLinkKind","RoleType","_SiteUsers","SiteUser","getByEmail","email","getByLoginName","removeById","SiteUsers","removeByLoginName","_SiteUser","user","SiteGroups","_SiteGroups","SiteGroup","groupName","_SiteGroup","setUserAsOwner","userId","_RoleAssignments","RoleAssignment","principalId","roleDefId","RoleAssignments","_RoleAssignment","_RoleDefinitions","RoleDefinition","getByType","roleTypeKind","basePermissions","BasePermissions","High","Low","Name","Order","RoleDefinitions","_RoleDefinition","bpObj","parent_1","getUserEffectivePermissions","GetUserEffectivePermissions","getCurrentUserEffectivePermissions","EffectiveBasePermissions","breakRoleInheritance","copyRoleAssignments","clearSubscopes","resetRoleInheritance","userHasPermissions","permission","perms","hasPermissions","currentUserHasPermissions","perm","FullMask","shareObject","bypass","roleValue","userStr","sendShareObjectRequest","getRoleValue","includeAnonymousLinkInEmail","propagateAcl","useSimplifiedRoles","loginNames","peoplePickerInput","emailData","emailBody","emailSubject","subject","sendEmail","getShareLink","kind","expString","createLink","linkKind","checkPermissions","recipients","getSharingInformation","getObjectSharingSettings","unshareObject","deleteLinkByKind","unshareLink","shareId","shareWith","requireSignin","roleFilter","login","Edit","Contributor","Reader","w","Guest","View","checkSharingPermissions","unshare","deleteSharingLinkByKind","shareEverything","dependency","shareObjectRaw","_SiteDesigns","createSiteDesign","creationInfo","SiteDesignsCloneFactory","applySiteDesign","getSiteDesigns","getSiteDesignMetadata","updateSiteDesign","updateInfo","deleteSiteDesign","getSiteDesignRights","grantSiteDesignRights","principalNames","grantedRights","revokeSiteDesignRights","addSiteDesignTask","addSiteDesignTaskToCurrentWeb","getSiteDesignTask","task","getSiteDesignRun","getSiteDesignRunStatus","runId","SiteDesigns","getSiteDesignRuns","createDefaultAssociatedGroups","groupNameSeed","siteOwner","siteOwner2","SiteScriptActionOutcome","_SiteScripts","getSiteScripts","SiteScriptsCloneFactory","createSiteScript","getSiteScriptMetadata","deleteSiteScript","updateSiteScript","Content","getSiteScriptFromList","listUrl","getSiteScriptFromWeb","executeSiteScriptAction","actionDefinition","SiteScripts","getSiteScript","extractInfo","absoluteListUrl","ensureUser","logonName","getUserById","SocialActorType","SocialActorTypes","SocialFollowResult","SocialStatusCode","_Social","MySocial","getFollowedSitesUri","SocialCloneFactory","FollowedSitesUri","getFollowedDocumentsUri","FollowedDocumentsUri","follow","actorInfo","createSocialActorInfoRequestBody","isFollowed","stopFollowing","Social","_MySocial","followed","types","MySocialCloneFactory","Followed","followedCount","FollowedCount","followers","Followers","suggestions","Suggestions","_Utilities","excute","Body","From","Subject","To","CC","BCC","AdditionalHeaders","UtilitiesCloneFactory","getCurrentUserEmailAddresses","resolvePrincipal","scopes","sources","inputIsEmailOnly","addToUserInfoList","matchUserInfoList","searchPrincipals","createEmailBodyForInvitation","pageAddress","expandGroupsToPrincipals","inputs","createWikiPage","Utilities","_Subscriptions","subscriptionId","Subscription","notificationUrl","expirationDate","clientState","subscription","Subscriptions","_Subscription","expirationDateTime","_TermStore","TermGroups","TermSets","TermStore","_TermGroups","TermGroup","_TermGroup","_TermSets","TermSet","_TermSet","Terms","Children","Relations","getTermById","Term","getAllChildrenAsOrderedTree","setInfo","tree","ensureOrder","visitor","terms","sorts","setSorts","ordering","setId","orderedChildren_1","found","ch","children","child","orderedTerm","defaultLabel","labels","l","isDefault","childrenCount","customSortOrder","_Children","_Terms","_Term","_Relations","Relation","_Relation","ViewScope","_Views","personalView","Views","view","_View","ViewFields","renderAsHtml","setViewXml","_ViewFields","getSchemaXml","fieldTitleOrInternalName","move","removeAll","fieldInternalName","getView","viewId","WebPartsPersonalizationScope","_LimitedWebPartManager","WebPartDefinitions","LimitedWebPartManagerCloneFactory","webPartXml","LimitedWebPartManager","_WebPartDefinitions","WebPartDefinition","getByControlId","_WebPartDefinition","saveChanges","zoneId","close","open","getLimitedWebPartManager","scope","Shared","class_2","class_3","updateable","class_4","updateableWithETag","class_5","addable","class_6","class_7","Conversation","_Conversation","Threads","Conversations","_Conversations","Thread","_Thread","Posts","reply","_Threads","_Post","forward","Post","_Posts","Senders","_Senders","remover","addFile","bytes","contentBytes","DirectoryObjectTypes","GroupType","_DirectoryObject","getMemberObjects","securityEnabledOnly","DirectoryObject","getMemberGroups","checkMemberGroups","groupIds","DirectoryObjects","_DirectoryObjects","getByIds","ids","directoryObject","_Group","addFavorite","Group","removeFavorite","resetUnseenCount","subscribeByMail","unsubscribeByMail","getCalendarView","start","end","Groups","_Groups","mailNickname","groupType","additionalProperties","mailEnabled","Office365","securityEnabled","Security","groupTypes","calendarView","Calendar","_Calendar","Events","Calendars","_Calendars","Event","_Event","_Events","event","_User","People","User","Users","_Users","_People","Contact","_Contact","Contacts","_Contacts","givenName","surName","emailAddresses","businessPhones","contact","ContactFolder","_ContactFolder","ContactFolders","_ContactFolders","parentFolderId","contactFolder","Insights","_Insights","TrendingInsights","UsedInsights","SharedInsights","TrendingInsight","_TrendingInsight","Resource","_TrendingInsights","UsedInsight","_UsedInsight","_UsedInsights","SharedInsight","_SharedInsight","_SharedInsights","_Resource","Invitations","_Invitations","invitedUserEmailAddress","inviteRedirectUrl","Member","_Member","Members","_Members","Message","_Message","Messages","_Messages","MailFolder","_MailFolder","MailFolders","_MailFolders","MailboxSettings","_MailboxSettings","sendMail","Drive","_Drive","Root","DriveItems","getItemById","DriveItem","Drives","_Drives","_Root","searcher","_DriveItem","parentReference","getContent","responseType","_DriveItems","OneNote","_OneNote","Notebooks","Sections","Notebook","_Notebook","_Notebooks","notebook","Section","_Section","_Sections","Photo","_Photo","Planner","_Planner","Plans","Tasks","Buckets","PlanDetails","_PlanDetails","Plan","_Plan","_Plans","plan","TaskDetails","_TaskDetails","Task","_Task","_Tasks","planId","assignments","bucketId","Bucket","_Bucket","_Buckets","orderHint","bucket","executeQuery","changeType","Team","_Team","Channels","archive","shouldSetSpoSiteReadOnlyForMembers","unarchive","cloneTeam","partsToClone","visibility","creator","locationArray","Teams","teamId","operationId","getOperationById","_Teams","team","location_2","Channel","_Channel","Tabs","_Channels","channel","Tab","_Tab","_Tabs","appUrl","tab","createTeam","util"],"mappings":";CAAA,SAA2CA,EAAMC,GAC1B,iBAAZC,SAA0C,iBAAXC,OACxCA,OAAOD,QAAUD,IACQ,mBAAXG,QAAyBA,OAAOC,IAC9CD,OAAO,GAAIH,GACe,iBAAZC,QACdA,QAAa,IAAID,IAEjBD,EAAU,IAAIC,IARhB,CASGK,MAAM,WACT,M,mBCTA,IAAIC,EAAsB,CCA1B,EAAwB,CAACL,EAASM,KACjC,IAAI,IAAIC,KAAOD,EACXD,EAAoBG,EAAEF,EAAYC,KAASF,EAAoBG,EAAER,EAASO,IAC5EE,OAAOC,eAAeV,EAASO,EAAK,CAAEI,YAAY,EAAMC,IAAKN,EAAWC,OCJ3EF,EAAoBQ,EAAI,WACvB,GAA0B,iBAAfC,WAAyB,OAAOA,WAC3C,IACC,OAAOC,MAAQ,IAAIC,SAAS,cAAb,GACd,MAAOC,GACR,GAAsB,iBAAXC,OAAqB,OAAOA,QALjB,GCAxBb,EAAoBG,EAAI,CAACW,EAAKC,IAAUX,OAAOY,UAAUC,eAAeC,KAAKJ,EAAKC,GCClFf,EAAoBmB,EAAKxB,IACH,oBAAXyB,QAA0BA,OAAOC,aAC1CjB,OAAOC,eAAeV,EAASyB,OAAOC,YAAa,CAAEC,MAAO,WAE7DlB,OAAOC,eAAeV,EAAS,aAAc,CAAE2B,OAAO,K,6hMCDvD,IAiIWC,EAjIPC,EAAwB,WACxB,SAASA,KAyFT,OAvFApB,OAAOC,eAAemB,EAAQ,iBAAkB,CAI5CjB,IAAK,WACD,OAAOiB,EAAOC,SAASC,gBAE3BC,IAAK,SAAUL,GACXE,EAAOC,SAASC,eAAiBJ,GAErChB,YAAY,EACZsB,cAAc,IAElBxB,OAAOC,eAAemB,EAAQ,WAAY,CACtCjB,IAAK,WAID,YAHyBsB,IAArBL,EAAOM,WAAgD,OAArBN,EAAOM,YACzCN,EAAOM,UAAY,IAAIC,GAEpBP,EAAOM,WAElBxB,YAAY,EACZsB,cAAc,IAOlBJ,EAAOQ,UAAY,WAEf,IADA,IAAIC,EAAY,GACPC,EAAK,EAAGA,EAAKC,UAAUC,OAAQF,IACpCD,EAAUC,GAAMC,UAAUD,GAE9BD,EAAUI,SAAQ,SAAUC,GAAY,OAAOd,EAAOC,SAASO,UAAUM,OAK7Ed,EAAOe,iBAAmB,WACtB,OAAOf,EAAOC,SAASc,oBAE3BnC,OAAOC,eAAemB,EAAQ,QAAS,CAInCjB,IAAK,WACD,OAAOiB,EAAOC,SAASe,OAE3BlC,YAAY,EACZsB,cAAc,IAQlBJ,EAAOiB,MAAQ,SAAUC,EAASC,QAChB,IAAVA,IAAoBA,EAAQ,GAChCnB,EAAOC,SAASmB,IAAI,CAAED,MAAOA,EAAOD,QAASA,KAQjDlB,EAAOqB,UAAY,SAAUC,EAAMH,QACjB,IAAVA,IAAoBA,EAAQ,GAChCjC,KAAK+B,MAAMM,KAAKC,UAAUF,GAAOH,IAOrCnB,EAAOoB,IAAM,SAAUK,GACnBzB,EAAOC,SAASmB,IAAIK,IAOxBzB,EAAO0B,MAAQ,SAAUC,GACrB3B,EAAOC,SAASmB,IAAI,CAAEQ,KAAMD,EAAKR,MAAO,EAAeD,QAASS,EAAIT,WAEjElB,EA1FgB,GA6FvBO,EAA4B,WAC5B,SAASA,EAAWL,EAAgB2B,QACT,IAAnB3B,IAA6BA,EAAiB,QAC9B,IAAhB2B,IAA0BA,EAAc,IAC5C3C,KAAKgB,eAAiBA,EACtBhB,KAAK2C,YAAcA,EA0BvB,OAxBAtB,EAAWf,UAAUgB,UAAY,SAAUM,GACvC5B,KAAK2C,YAAYC,KAAKhB,IAE1BP,EAAWf,UAAUuB,iBAAmB,WACpC,IAAIgB,EAAI7C,KAAK2C,YAAYG,MAAM,GAE/B,OADA9C,KAAK2C,YAAYjB,OAAS,EACnBmB,GAEXnD,OAAOC,eAAe0B,EAAWf,UAAW,QAAS,CACjDT,IAAK,WACD,OAAOG,KAAK2C,YAAYjB,QAE5B9B,YAAY,EACZsB,cAAc,IAElBG,EAAWf,UAAUyB,MAAQ,SAAUC,EAASC,QAC9B,IAAVA,IAAoBA,EAAQ,GAChCjC,KAAKkC,IAAI,CAAED,MAAOA,EAAOD,QAASA,KAEtCX,EAAWf,UAAU4B,IAAM,SAAUK,QACnBpB,IAAVoB,GAAuBvC,KAAKgB,gBAAkBuB,EAAMN,OACpDjC,KAAK2C,YAAYI,KAAI,SAAUC,GAAc,OAAOA,EAAWd,IAAIK,OAGpElB,EA/BoB,IAqC/B,SAAWR,GACPA,EAASA,EAAkB,QAAI,GAAK,UACpCA,EAASA,EAAe,KAAI,GAAK,OACjCA,EAASA,EAAkB,QAAI,GAAK,UACpCA,EAASA,EAAgB,MAAI,GAAK,QAClCA,EAASA,EAAc,IAAI,IAAM,MALrC,CAMGA,IAAaA,EAAW,KCxI3B,IAAIoC,EAAiC,WACjC,SAASA,KAwCT,OAjCAA,EAAgB3C,UAAU4B,IAAM,SAAUK,GACtC,IAAIW,EAAMlD,KAAKmD,OAAOZ,GACtB,OAAQA,EAAMN,OACV,KAAK,EACL,KAAK,EACDmB,QAAQlB,IAAIgB,GACZ,MACJ,KAAK,EACDE,QAAQC,KAAKH,GACb,MACJ,KAAK,EACDE,QAAQZ,MAAMU,KAS1BD,EAAgB3C,UAAU6C,OAAS,SAAUZ,GACzC,IAAIW,EAAM,GAEV,GADAA,EAAIN,KAAK,YAAcL,EAAMP,cACVb,IAAfoB,EAAMG,KACN,IACIQ,EAAIN,KAAK,UAAYP,KAAKC,UAAUC,EAAMG,OAE9C,MAAOxC,GACHgD,EAAIN,KAAK,8CAAgD1C,GAGjE,OAAOgD,EAAII,KAAK,KAEbL,EAzCyB,GAgDhCM,EAAkC,WAOlC,SAASA,EAAiBC,GACtBxD,KAAKwD,OAASA,EAUlB,OAHAD,EAAiBjD,UAAU4B,IAAM,SAAUK,GACvCvC,KAAKwD,OAAOjB,IAETgB,EAlB0B,GC3C9B,SAASE,EAAeC,EAASF,GAEpC,IADA,IAAIG,EAAS,GACJnC,EAAK,EAAGA,EAAKC,UAAUC,OAAQF,IACpCmC,EAAOnC,EAAK,GAAKC,UAAUD,GAE/B,OAAO,WACHgC,EAAOI,MAAMF,EAASC,IAYvB,SAASE,EAAQC,EAAMC,EAAUC,GACpC,IAAIC,EAAM,IAAIC,KAAKJ,EAAKK,YACxB,OAAQJ,EAASK,eACb,IAAK,OACDH,EAAII,YAAYJ,EAAIK,cAAgBN,GACpC,MACJ,IAAK,UACDC,EAAIM,SAASN,EAAIO,WAAa,EAAIR,GAClC,MACJ,IAAK,QACDC,EAAIM,SAASN,EAAIO,WAAaR,GAC9B,MACJ,IAAK,OACDC,EAAIQ,QAAQR,EAAIS,UAAY,EAAIV,GAChC,MACJ,IAAK,MACDC,EAAIQ,QAAQR,EAAIS,UAAYV,GAC5B,MACJ,IAAK,OACDC,EAAIU,QAAQV,EAAIW,UAAoB,KAARZ,GAC5B,MACJ,IAAK,SACDC,EAAIU,QAAQV,EAAIW,UAAoB,IAARZ,GAC5B,MACJ,IAAK,SACDC,EAAIU,QAAQV,EAAIW,UAAoB,IAARZ,GAC5B,MACJ,QACIC,OAAM9C,EAGd,OAAO8C,EAOJ,SAASY,IAEZ,IADA,IAAIC,EAAQ,GACHtD,EAAK,EAAGA,EAAKC,UAAUC,OAAQF,IACpCsD,EAAMtD,GAAMC,UAAUD,GAE1B,OAAOsD,EACFC,QAAO,SAAUC,GAAQ,OAAQC,EAAoBD,MACrDjC,KAAI,SAAUiC,GAAQ,OAAOA,EAAKE,QAAQ,UAAW,IAAIA,QAAQ,UAAW,OAC5E5B,KAAK,KACL4B,QAAQ,MAAO,KASjB,SAASC,EAAgBC,GAE5B,IADA,IAAIC,EAAO,IAAIC,MAAMF,GACZG,EAAI,EAAGA,EAAIH,EAAOG,IACvBF,EAAKE,GAAK,iEAAiEC,OAAOC,KAAKC,MAAsB,GAAhBD,KAAKE,WAEtG,OAAON,EAAK/B,KAAK,IAQd,SAASsC,IACZ,IAAIC,EAAI3B,KAAK4B,MACb,MAAO,uCAAuCZ,QAAQ,SAAS,SAAUa,GACrE,IAAItF,GAAKoF,EAAoB,GAAhBJ,KAAKE,UAAiB,GAAK,EAExC,OADAE,EAAIJ,KAAKC,MAAMG,EAAI,KACL,MAANE,EAAYtF,EAAS,EAAJA,EAAU,GAAM0D,SAAS,OASnD,SAAS6B,EAAOC,GACnB,MAAoB,mBAANA,EAMX,SAASC,EAAqB9F,GACjC,OAAO,MAAOA,EAKX,SAAS+F,EAAQC,GACpB,OAAOd,MAAMa,QAAUb,MAAMa,QAAQC,GAASA,GAAiC,iBAAjBA,EAAM1E,QAAuB0E,EAAMC,cAAgBf,MAW9G,SAAS,EAAOgB,EAAQC,EAAQC,EAAazB,GAGhD,QAFoB,IAAhByB,IAA0BA,GAAc,QAC7B,IAAXzB,IAAqBA,EAAS,WAAc,OAAO,KAClDmB,EAAqBK,GACtB,OAAOD,EAGX,IAAIG,EAAQD,EAAc,SAAU/G,EAAG8F,GAAK,QAASA,KAAK9F,IAAQ,WAAc,OAAO,GAGvF,OAAOC,OAAOgH,oBAAoBH,GAC7BxB,QAFG,SAAU4B,GAAK,OAAOF,EAAMH,EAAQK,IAAM5B,EAAO4B,MAGpDC,QAAO,SAAUC,EAAGF,GAErB,OADAE,EAAEF,GAAKJ,EAAOI,GACPE,IACRP,GAOA,SAASQ,EAAcC,GAC1B,MAAO,sBAAsBC,KAAKD,GAO/B,SAAS9B,EAAoBpC,GAChC,OAAOA,SAAiCA,EAAEnB,OAAS,EAOhD,SAASuF,EAAaC,GACzB,GAAIjC,EAAoBiC,GACpB,OAAOA,EAEX,IAAIC,EAAU,kEAAkEC,KAAKF,GACrF,OAAmB,OAAZC,EAAmBD,EAAOC,EAAQ,GAOtC,SAASE,EAAI5H,GAChB,OAAO4C,KAAKC,UAAU7C,GAQnB,SAAS6H,EAAI7H,EAAG8H,GACnB,OAAO7H,OAAOa,eAAeC,KAAKf,EAAG8H,GAQlC,SAASC,EAAY3E,GACxB,IAAI4E,EAAO,EACX,GAAiB,IAAb5E,EAAEnB,OACF,OAAO+F,EAEX,IAAK,IAAIlC,EAAI,EAAGA,EAAI1C,EAAEnB,OAAQ6D,IAE1BkC,GAASA,GAAQ,GAAKA,EADZ5E,EAAE6E,WAAWnC,GAEvBkC,GAAQ,EAEZ,OAAOA,ECjNX,IAAIE,EAAgB3B,EAAOtG,OAAOkI,SAAWlI,OAAOkI,QAAU,SAAUnI,GAAK,OAAOC,OAAOmI,KAAKpI,GAAGsD,KAAI,SAAU+E,GAAK,MAAO,CAACA,EAAGrI,EAAEqI,QAM5H,SAASC,EAAYtI,GACxB,OAAIyG,EAAqBzG,GACd,IAAIuI,IAAIL,EAAclI,IAE1B,IAAIuI,IAQR,SAASC,EAAU3B,GAEtB,IADA,IAAI4B,EAAO,GACF1G,EAAK,EAAGA,EAAKC,UAAUC,OAAQF,IACpC0G,EAAK1G,EAAK,GAAKC,UAAUD,GAE7B,IAAK,IAAI+D,EAAI,EAAGA,EAAI2C,EAAKxG,OAAQ6D,IAC7B2C,EAAK3C,GAAG5D,SAAQ,SAAUgF,EAAGmB,GAEP,iBAANA,GAAwB,gBAANA,GAA8D,oBAAtCpI,OAAOY,UAAU6D,SAAS3D,KAAKmG,GAEjFL,EAAOrF,IAAI6G,EAAGpI,OAAOyI,OAAO,GAAI7B,EAAOzG,IAAIiI,IAAM,GAAInB,IAGrDL,EAAOrF,IAAI6G,EAAGnB,MAI1B,OAAOL,ECvBX,IAAI8B,EAAgB,SAASvC,EAAGwC,GAI5B,OAHAD,EAAgB1I,OAAO4I,gBAClB,CAAEC,UAAW,cAAgBjD,OAAS,SAAUO,EAAGwC,GAAKxC,EAAE0C,UAAYF,IACvE,SAAUxC,EAAGwC,GAAK,IAAK,IAAId,KAAKc,EAAO3I,OAAOY,UAAUC,eAAeC,KAAK6H,EAAGd,KAAI1B,EAAE0B,GAAKc,EAAEd,MAC3E1B,EAAGwC,IAGrB,SAASG,EAAU3C,EAAGwC,GACzB,GAAiB,mBAANA,GAA0B,OAANA,EAC3B,MAAM,IAAII,UAAU,uBAAyBC,OAAOL,GAAK,iCAE7D,SAASM,IAAO3I,KAAKqG,YAAcR,EADnCuC,EAAcvC,EAAGwC,GAEjBxC,EAAEvF,UAAkB,OAAN+H,EAAa3I,OAAOkJ,OAAOP,IAAMM,EAAGrI,UAAY+H,EAAE/H,UAAW,IAAIqI,GAG5E,IAAIE,EAAW,WAQlB,OAPAA,EAAWnJ,OAAOyI,QAAU,SAAkBtB,GAC1C,IAAK,IAAIhE,EAAG0C,EAAI,EAAGuD,EAAIrH,UAAUC,OAAQ6D,EAAIuD,EAAGvD,IAE5C,IAAK,IAAIgC,KADT1E,EAAIpB,UAAU8D,GACO7F,OAAOY,UAAUC,eAAeC,KAAKqC,EAAG0E,KAAIV,EAAEU,GAAK1E,EAAE0E,IAE9E,OAAOV,IAEKjD,MAAM5D,KAAMyB,YAezB,SAASsH,EAAWC,EAAY1C,EAAQ9G,EAAKyJ,GAChD,IAA2HpD,EAAvHE,EAAItE,UAAUC,OAAQjB,EAAIsF,EAAI,EAAIO,EAAkB,OAAT2C,EAAgBA,EAAOvJ,OAAOwJ,yBAAyB5C,EAAQ9G,GAAOyJ,EACrH,GAAuB,iBAAZE,SAAoD,mBAArBA,QAAQC,SAAyB3I,EAAI0I,QAAQC,SAASJ,EAAY1C,EAAQ9G,EAAKyJ,QACpH,IAAK,IAAI1D,EAAIyD,EAAWtH,OAAS,EAAG6D,GAAK,EAAGA,KAASM,EAAImD,EAAWzD,MAAI9E,GAAKsF,EAAI,EAAIF,EAAEpF,GAAKsF,EAAI,EAAIF,EAAES,EAAQ9G,EAAKiB,GAAKoF,EAAES,EAAQ9G,KAASiB,GAChJ,OAAOsF,EAAI,GAAKtF,GAAKf,OAAOC,eAAe2G,EAAQ9G,EAAKiB,GAAIA,EAWzD,SAAS4I,EAAUC,EAASC,EAAYC,EAAGC,GAE9C,OAAO,IAAKD,IAAMA,EAAIE,WAAU,SAAUC,EAASC,GAC/C,SAASC,EAAUjJ,GAAS,IAAMkJ,EAAKL,EAAUM,KAAKnJ,IAAW,MAAOV,GAAK0J,EAAO1J,IACpF,SAAS8J,EAASpJ,GAAS,IAAMkJ,EAAKL,EAAiB,MAAE7I,IAAW,MAAOV,GAAK0J,EAAO1J,IACvF,SAAS4J,EAAKG,GAJlB,IAAerJ,EAIaqJ,EAAOC,KAAOP,EAAQM,EAAOrJ,QAJ1CA,EAIyDqJ,EAAOrJ,MAJhDA,aAAiB4I,EAAI5I,EAAQ,IAAI4I,GAAE,SAAUG,GAAWA,EAAQ/I,OAITuJ,KAAKN,EAAWG,GAClGF,GAAML,EAAYA,EAAU7F,MAAM0F,EAASC,GAAc,KAAKQ,WAI/D,SAASK,EAAYd,EAASe,GACjC,IAAsGpE,EAAGqE,EAAGzD,EAAG/G,EAA3GyK,EAAI,CAAEC,MAAO,EAAGC,KAAM,WAAa,GAAW,EAAP5D,EAAE,GAAQ,MAAMA,EAAE,GAAI,OAAOA,EAAE,IAAO6D,KAAM,GAAIC,IAAK,IAChG,OAAO7K,EAAI,CAAEiK,KAAMa,EAAK,GAAI,MAASA,EAAK,GAAI,OAAUA,EAAK,IAAwB,mBAAXlK,SAA0BZ,EAAEY,OAAOmK,UAAY,WAAa,OAAO7K,OAAUF,EACvJ,SAAS8K,EAAK9B,GAAK,OAAO,SAAUnC,GAAK,OACzC,SAAcmE,GACV,GAAI7E,EAAG,MAAM,IAAIwC,UAAU,mCAC3B,KAAO8B,OACH,GAAItE,EAAI,EAAGqE,IAAMzD,EAAY,EAARiE,EAAG,GAASR,EAAU,OAAIQ,EAAG,GAAKR,EAAS,SAAOzD,EAAIyD,EAAU,SAAMzD,EAAErG,KAAK8J,GAAI,GAAKA,EAAEP,SAAWlD,EAAIA,EAAErG,KAAK8J,EAAGQ,EAAG,KAAKZ,KAAM,OAAOrD,EAE3J,OADIyD,EAAI,EAAGzD,IAAGiE,EAAK,CAAS,EAARA,EAAG,GAAQjE,EAAEjG,QACzBkK,EAAG,IACP,KAAK,EAAG,KAAK,EAAGjE,EAAIiE,EAAI,MACxB,KAAK,EAAc,OAAXP,EAAEC,QAAgB,CAAE5J,MAAOkK,EAAG,GAAIZ,MAAM,GAChD,KAAK,EAAGK,EAAEC,QAASF,EAAIQ,EAAG,GAAIA,EAAK,CAAC,GAAI,SACxC,KAAK,EAAGA,EAAKP,EAAEI,IAAII,MAAOR,EAAEG,KAAKK,MAAO,SACxC,QACI,MAAkBlE,GAAZA,EAAI0D,EAAEG,MAAYhJ,OAAS,GAAKmF,EAAEA,EAAEnF,OAAS,KAAkB,IAAVoJ,EAAG,IAAsB,IAAVA,EAAG,IAAW,CAAEP,EAAI,EAAG,SACjG,GAAc,IAAVO,EAAG,MAAcjE,GAAMiE,EAAG,GAAKjE,EAAE,IAAMiE,EAAG,GAAKjE,EAAE,IAAM,CAAE0D,EAAEC,MAAQM,EAAG,GAAI,MAC9E,GAAc,IAAVA,EAAG,IAAYP,EAAEC,MAAQ3D,EAAE,GAAI,CAAE0D,EAAEC,MAAQ3D,EAAE,GAAIA,EAAIiE,EAAI,MAC7D,GAAIjE,GAAK0D,EAAEC,MAAQ3D,EAAE,GAAI,CAAE0D,EAAEC,MAAQ3D,EAAE,GAAI0D,EAAEI,IAAI/H,KAAKkI,GAAK,MACvDjE,EAAE,IAAI0D,EAAEI,IAAII,MAChBR,EAAEG,KAAKK,MAAO,SAEtBD,EAAKT,EAAK7J,KAAK8I,EAASiB,GAC1B,MAAOrK,GAAK4K,EAAK,CAAC,EAAG5K,GAAIoK,EAAI,EAAK,QAAUrE,EAAIY,EAAI,EACtD,GAAY,EAARiE,EAAG,GAAQ,MAAMA,EAAG,GAAI,MAAO,CAAElK,MAAOkK,EAAG,GAAKA,EAAG,QAAK,EAAQZ,MAAM,GArB9BJ,CAAK,CAAChB,EAAGnC,MAqCtD,SAASqE,EAASvL,GACrB,IAAIoD,EAAsB,mBAAXnC,QAAyBA,OAAOmK,SAAUI,EAAIpI,GAAKpD,EAAEoD,GAAI0C,EAAI,EAC5E,GAAI0F,EAAG,OAAOA,EAAEzK,KAAKf,GACrB,GAAIA,GAAyB,iBAAbA,EAAEiC,OAAqB,MAAO,CAC1CqI,KAAM,WAEF,OADItK,GAAK8F,GAAK9F,EAAEiC,SAAQjC,OAAI,GACrB,CAAEmB,MAAOnB,GAAKA,EAAE8F,KAAM2E,MAAOzK,KAG5C,MAAM,IAAIgJ,UAAU5F,EAAI,0BAA4B,mCAGjD,SAASqI,EAAOzL,EAAGqJ,GACtB,IAAImC,EAAsB,mBAAXvK,QAAyBjB,EAAEiB,OAAOmK,UACjD,IAAKI,EAAG,OAAOxL,EACf,IAAmBgB,EAAYP,EAA3BqF,EAAI0F,EAAEzK,KAAKf,GAAO0L,EAAK,GAC3B,IACI,WAAc,IAANrC,GAAgBA,KAAM,MAAQrI,EAAI8E,EAAEwE,QAAQG,MAAMiB,EAAGvI,KAAKnC,EAAEG,OAExE,MAAO4B,GAAStC,EAAI,CAAEsC,MAAOA,GAC7B,QACI,IACQ/B,IAAMA,EAAEyJ,OAASe,EAAI1F,EAAU,SAAI0F,EAAEzK,KAAK+E,GAElD,QAAU,GAAIrF,EAAG,MAAMA,EAAEsC,OAE7B,OAAO2I,EAmBJ,SAASC,EAAcC,EAAIC,GAC9B,IAAK,IAAI/F,EAAI,EAAGgG,EAAKD,EAAK5J,OAAQ8J,EAAIH,EAAG3J,OAAQ6D,EAAIgG,EAAIhG,IAAKiG,IAC1DH,EAAGG,GAAKF,EAAK/F,GACjB,OAAO8F,EA5DkB3L,OAAOkJ,OAkGXlJ,OAAOkJ,OCtMhC,IAAI/F,EAAI,CACJ,sBACA,+BACA,qBACA,wBACA,sCACA,cACA,QAEA4I,EAAqB,GAClB,SAASC,EAAgBC,GACxBF,EAAmBG,QAAQD,GAAQ,IAEnCA,EAAKE,GACLJ,EAAmB7I,KAAK+I,IAGhC,IAAIG,EAAyB,WACzB,SAASA,EAAQC,GACb,IAAIC,EAAQhM,UACD,IAAP+L,IAAiBA,EAAK,IAAI/D,KAC9BhI,KAAK+L,GAAKA,EACV,IAAIE,EAAY,SAAUzM,EAAK0M,GACtBF,EAAMD,GAAGI,IAAI3M,IACdwM,EAAMD,GAAG9K,IAAIzB,EAAK0M,IAI1BD,EAAUpJ,EAAE,GAAI,WAChBoJ,EAAUpJ,EAAE,GAAI,IAChBoJ,EAAUpJ,EAAE,IAAI,GAChBoJ,EAAUpJ,EAAE,IAAI,GAChBoJ,EAAUpJ,EAAE,GAAI,KAChBoJ,EAAUpJ,EAAE,GAAI,MAChBoJ,EAAUpJ,EAAE,IAAI,GAChB4I,EAAmB9J,SAAQ,SAAUgK,GAAQ,OAAOA,EAAKK,MAwC7D,OAlCAF,EAAQxL,UAAU6H,OAAS,SAAUiE,GACjCpM,KAAK+L,GAAK9D,EAAUjI,KAAK+L,GAAIhE,EAAYqE,KAO7CN,EAAQxL,UAAUT,IAAM,SAAUL,GAC9B,OAAOQ,KAAK+L,GAAGlM,IAAIL,IAKvBsM,EAAQxL,UAAU+L,OAAS,WACvB,IAAIC,EAAKC,EACLC,EAAO,IAAIxE,IACf,IACI,IAAK,IAAIyE,EAAKzB,EAAShL,KAAK+L,IAAKW,EAAKD,EAAG1C,QAAS2C,EAAGxC,KAAMwC,EAAKD,EAAG1C,OAAQ,CACvE,IAAI4C,EAAKzB,EAAOwB,EAAG9L,MAAO,GAAIpB,EAAMmN,EAAG,GAAI/L,EAAQ+L,EAAG,GAC1C,kBAARnN,GACAgN,EAAKvL,IAAIzB,EAAKoB,IAI1B,MAAOgM,GAASN,EAAM,CAAE9J,MAAOoK,GAC/B,QACI,IACQF,IAAOA,EAAGxC,OAASqC,EAAKE,EAAGI,SAASN,EAAG/L,KAAKiM,GAEpD,QAAU,GAAIH,EAAK,MAAMA,EAAI9J,OAEjC,OAAOgK,GAEJV,EA1DiB,GA+DjBD,EADI,IAAIC,EAAQ,IAAI9D,IAAI,CAAC,CAAC,iBAAiB,MCrF3C8E,OAA+B,IAAX,EAAAhN,EAAyBK,OAAS,EAAAL,ECE1D,SAASiN,EAAazG,EAAQC,GAC7BL,EAAqBK,IACV,IAAIyG,QAAQ,GAAI,CAAEC,QAAS1G,IACjC0G,QAAQtL,SAAQ,SAAUf,EAAOsM,GAClC5G,EAAO6G,OAAOD,EAAMtM,MAIzB,SAASwM,EAAa9G,EAAQC,GACjC,GAAIL,EAAqBK,GAAS,CAC9B,IAAI0G,EAAU,EAAO3G,EAAO2G,SAAW,GAAI1G,EAAO0G,UAClD3G,EAAS,EAAOA,EAAQC,IACjB0G,QAAUA,GAQlB,SAASI,EAAgBtG,GAC5B,IAAIuG,EAAI,IAAIC,IAAIxG,GAChB,OAAOuG,EAAEE,SAAW,KAAOF,EAAEG,SAKjC,IAAIC,EAA6B,WAC7B,SAASA,KAKT,OAHAA,EAAYpN,UAAUqN,MAAQ,SAAU5G,EAAK6G,GACzC,OAAOd,EAAWa,MAAM5G,EAAK6G,IAE1BF,EANqB,GAY5BG,EAAwC,SAAUC,GAElD,SAASD,EAAuBE,GAC5B,IAAI/B,EAAQ8B,EAAOtN,KAAKR,OAASA,KAEjC,OADAgM,EAAM+B,MAAQA,EACP/B,EAUX,OAdAxD,EAAUqF,EAAwBC,GAMlCD,EAAuBvN,UAAUqN,MAAQ,SAAU5G,EAAK6G,QACpC,IAAZA,IAAsBA,EAAU,IACpC,IAAIX,EAAU,IAAIe,QAIlB,OAHAjB,EAAaE,EAASW,EAAQX,SAC9BA,EAAQhM,IAAI,gBAAiB,UAAYjB,KAAK+N,OAC9CH,EAAQX,QAAUA,EACXa,EAAOxN,UAAUqN,MAAMnN,KAAKR,KAAM+G,EAAK6G,IAE3CC,EAfgC,CAgBzCH,GAEEO,EAAmC,SAAUH,GAE7C,SAASG,EAAkBC,GACvB,IAAIlC,EAAQ8B,EAAOtN,KAAKR,KAAM,OAASA,KAEvC,OADAgM,EAAMkC,aAAeA,EACdlC,EAuBX,OA3BAxD,EAAUyF,EAAmBH,GAY7BG,EAAkB3N,UAAUqN,MAAQ,SAAU5G,EAAK6G,GAC/C,OAAOvE,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAIuM,EACJ,OAAOnC,EAAYpK,MAAM,SAAUyM,GAC/B,OAAQA,EAAGjC,OACP,KAAK,EAED,OADA+B,EAAKvM,KACE,CAAC,EAAaA,KAAKkO,aAAa,CAAEnH,IAAKA,EAAK6G,QAASA,KAChE,KAAK,EAED,OADArB,EAAGwB,MAAQtB,EAAGhC,OACP,CAAC,EAAcqD,EAAOxN,UAAUqN,MAAMnN,KAAKR,KAAM+G,EAAK6G,YAK1EK,EA5B2B,CA6BpCJ,GAKEM,EAAgC,SAAUL,GAM1C,SAASK,EAAezK,GACpB,IAAIsI,EAAQ8B,EAAOtN,KAAKR,MAAM,SAAU2D,GAAU,OAAO0F,EAAU2C,OAAO,OAAQ,GAAQ,WAEtF,OAAO5B,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAAG,MAAO,CAAC,EAAa9G,EAAQ0K,wBAAwBC,oBAC7D,KAAK,EAED,MAAO,CAAC,EADG9B,EAAG9B,OACiB6D,SAASjB,EAAgB1J,EAAOoD,kBAGrE/G,KAEV,OADAgM,EAAMtI,QAAUA,EACTsI,EAoBX,OAtCAxD,EAAU2F,EAAgBL,GAyB1BK,EAAe7N,UAAUgO,SAAW,SAAUC,GAC1C,OAAOlF,EAAUrJ,UAAM,OAAQ,GAAQ,WAEnC,OAAOoK,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAAG,MAAO,CAAC,EAAaxK,KAAK0D,QAAQ0K,wBAAwBC,oBAClE,KAAK,EAED,MAAO,CAAC,EADG9B,EAAG9B,OACiB6D,SAASC,YAKrDJ,EAvCwB,CAwCjCF,GC/HEO,EAAyC,WAMzC,SAASA,EAAwBC,EAAOC,QACN,IAA1BA,IAAoCA,GAAyB,GACjE1O,KAAKyO,MAAQA,EACbzO,KAAK0O,sBAAwBA,EAC7B1O,KAAK2O,QAAU3O,KAAKgH,OAGhB6E,EAAehM,IAAI,0BACnBG,KAAK4O,yBAwJb,OArJAJ,EAAwBK,KAAO,SAAUJ,GACrC,OAAO,IAAID,OAA2C,IAAZ,EAA0B,IAAIM,EAAkBL,IAO9FD,EAAwBlO,UAAUT,IAAM,SAAUL,GAC9C,IAAKQ,KAAK2O,QACN,OAAO,KAEX,IAAIlP,EAAIO,KAAKyO,MAAMM,QAAQvP,GAC3B,IAAK0G,EAAqBzG,GACtB,OAAO,KAEX,IAAIuP,EAAc3M,KAAK4M,MAAMxP,GAC7B,OAAI,IAAIyE,KAAK8K,EAAYE,aAAe,IAAIhL,MACxClE,KAAKmP,OAAO3P,GACL,MAGAwP,EAAYpO,OAU3B4N,EAAwBlO,UAAU8O,IAAM,SAAU5P,EAAKC,EAAG4P,GAClDrP,KAAK2O,SACL3O,KAAKyO,MAAMa,QAAQ9P,EAAKQ,KAAKuP,kBAAkB9P,EAAG4P,KAQ1Db,EAAwBlO,UAAU6O,OAAS,SAAU3P,GAC7CQ,KAAK2O,SACL3O,KAAKyO,MAAMe,WAAWhQ,IAU9BgP,EAAwBlO,UAAUmP,SAAW,SAAUjQ,EAAKkQ,EAAQL,GAChE,OAAOhG,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAIP,EACJ,OAAO2K,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EACD,OAAKxK,KAAK2O,QAIE,QADZlP,EAAIO,KAAKH,IAAIL,IACa,CAAC,EAAa,GACjC,CAAC,EAAakQ,KAJV,CAAC,EAAcA,KAK9B,KAAK,EACDjQ,EAAI8M,EAAG9B,OACPzK,KAAKoP,IAAI5P,EAAKC,EAAG4P,GACjB9C,EAAG/B,MAAQ,EACf,KAAK,EAAG,MAAO,CAAC,EAAc/K,WAQ9C+O,EAAwBlO,UAAUqP,cAAgB,WAC9C,OAAOtG,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAIuF,EAAG/F,EACP,OAAO4K,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EACD,IAAKxK,KAAK2O,QACN,MAAO,CAAC,GAEZpJ,EAAI,EACJgH,EAAG/B,MAAQ,EACf,KAAK,EACD,OAAMjF,EAAIvF,KAAKyO,MAAM/M,OAEP,QADdlC,EAAMQ,KAAKyO,MAAMjP,IAAI+F,IACO,CAAC,EAAa,GACrC,yBAAyByB,KAAKhH,KAAKyO,MAAMM,QAAQvP,IAE/C,CAAC,EAAaQ,KAAKH,IAAIL,IAFsC,CAAC,EAAa,GAH7C,CAAC,EAAa,GAMvD,KAAK,EAED+M,EAAG9B,OACH8B,EAAG/B,MAAQ,EACf,KAAK,EAED,OADAjF,IACO,CAAC,EAAa,GACzB,KAAK,EAAG,MAAO,CAAC,WAQhCiJ,EAAwBlO,UAAU0G,KAAO,WAErC,IAGI,OAFAhH,KAAKyO,MAAMa,QAFL,SAGNtP,KAAKyO,MAAMe,WAHL,MAIC,EAEX,MAAOtP,GACH,OAAO,IAMfsO,EAAwBlO,UAAUiP,kBAAoB,SAAU9P,EAAG4P,GAC/D,QAAelO,IAAXkO,EAAsB,CAEtB,IAAIO,EAAiB/D,EAAehM,IAAI,gCACpCG,KAAK0O,sBAAwB,IAC7BkB,EAA8C,GAA7B5P,KAAK0O,uBAE1BW,EAASxL,EAAQ,IAAIK,KAAQ,SAAU0L,GAE3C,OAAOvI,EAAI,CAAEwI,IAAK,EAAGX,WAAYG,EAAQzO,MAAOnB,KAKpD+O,EAAwBlO,UAAUsO,uBAAyB,WACvD,IAAI5C,EAAQhM,KACPA,KAAK2O,SAGV3O,KAAK2P,gBAAgBxF,MAAK,WAEtB2F,WAAWrM,EAAeuI,EAAOA,EAAM4C,wBAAyB/C,EAAehM,IAAI,2CACpFkQ,MAAM3M,QAAQZ,QAEdgM,EAtKiC,GA4KxCM,EAA+B,WAC/B,SAASA,EAAckB,QACJ,IAAXA,IAAqBA,EAAS,IAAIhI,KACtChI,KAAKgQ,OAASA,EAwBlB,OAtBAtQ,OAAOC,eAAemP,EAAcxO,UAAW,SAAU,CACrDT,IAAK,WACD,OAAOG,KAAKgQ,OAAOC,MAEvBrQ,YAAY,EACZsB,cAAc,IAElB4N,EAAcxO,UAAU4P,MAAQ,WAC5BlQ,KAAKgQ,OAAOE,SAEhBpB,EAAcxO,UAAUyO,QAAU,SAAUvP,GACxC,OAAOQ,KAAKgQ,OAAOnQ,IAAIL,IAE3BsP,EAAcxO,UAAUd,IAAM,SAAU2Q,GACpC,OAAO7K,MAAMgG,KAAKtL,KAAKgQ,QAAQG,GAAO,IAE1CrB,EAAcxO,UAAUkP,WAAa,SAAUhQ,GAC3CQ,KAAKgQ,OAAOb,OAAO3P,IAEvBsP,EAAcxO,UAAUgP,QAAU,SAAU9P,EAAKkD,GAC7C1C,KAAKgQ,OAAO/O,IAAIzB,EAAKkD,IAElBoM,EA3BuB,GAgC9BsB,EAAkC,WAMlC,SAASA,EAAiBC,EAAQC,QACf,IAAXD,IAAqBA,EAAS,WACjB,IAAbC,IAAuBA,EAAW,MACtCtQ,KAAKqQ,OAASA,EACdrQ,KAAKsQ,SAAWA,EA4BpB,OA1BA5Q,OAAOC,eAAeyQ,EAAiB9P,UAAW,QAAS,CAIvDT,IAAK,WAID,OAHoB,OAAhBG,KAAKqQ,SACLrQ,KAAKqQ,OAAS,IAAI7B,EAAkD,oBAAnB,aAAiC,IAAIM,EAAkByB,eAErGvQ,KAAKqQ,QAEhBzQ,YAAY,EACZsB,cAAc,IAElBxB,OAAOC,eAAeyQ,EAAiB9P,UAAW,UAAW,CAIzDT,IAAK,WAID,OAHsB,OAAlBG,KAAKsQ,WACLtQ,KAAKsQ,SAAW,IAAI9B,EAAoD,oBAArB,eAAmC,IAAIM,EAAkB0B,iBAEzGxQ,KAAKsQ,UAEhB1Q,YAAY,EACZsB,cAAc,IAEXkP,EAtC0B,GC9MjCK,EAA0B,WAM1B,SAASA,EAASC,QACI,IAAdA,IAAwBA,EAAY,IAAI1I,KAC5ChI,KAAK0Q,UAAYA,EAyErB,OAjEAD,EAASnQ,UAAUqQ,IAAM,SAAUnR,EAAKoB,GACpCZ,KAAK0Q,UAAUzP,IAAIzB,EAAKoB,IAQ5B6P,EAASnQ,UAAUsQ,QAAU,SAAUpR,EAAKoB,GACxCZ,KAAK0Q,UAAUzP,IAAIzB,EAAK6H,EAAIzG,KAOhC6P,EAASnQ,UAAUsD,MAAQ,SAAU6D,GACjC,IAAIuE,EAAQhM,KACZ,OAAO,IAAI0J,SAAQ,SAAUC,EAASC,GAClC,IACIoC,EAAM0E,UAAYzI,EAAU+D,EAAM0E,UAAW3I,EAAYN,IACzDkC,IAEJ,MAAOzJ,GACH0J,EAAO1J,QASnBuQ,EAASnQ,UAAUuQ,KAAO,SAAUC,GAChC,IAAI9E,EAAQhM,KACZ,OAAO,IAAI0J,SAAQ,SAAUC,EAASC,GAClCkH,EAASC,mBAAmB5G,MAAK,SAAUvJ,GACvCoL,EAAM0E,UAAYzI,EAAU+D,EAAM0E,UAAW3I,EAAYnH,IACzD+I,OACDoG,MAAMnG,OASjB6G,EAASnQ,UAAUT,IAAM,SAAUL,GAC/B,OAAOQ,KAAK0Q,UAAU7Q,IAAIL,IAAQ,MAQtCiR,EAASnQ,UAAU0Q,QAAU,SAAUxR,GACnC,IAAIC,EAAIO,KAAKH,IAAIL,GACjB,OAAIC,QACOA,EAEJ4C,KAAK4M,MAAMxP,IAEfgR,EAjFkB,GCoD7B,QApDkD,WAQ9C,SAASQ,EAA6BC,EAAiBC,EAAUC,GAC7DpR,KAAKkR,gBAAkBA,EACvBlR,KAAKmR,SAAWA,EAChBnR,KAAKkR,gBAAkBA,EACvBlR,KAAKyO,MAAQ,GAA4BzO,KAAKqR,iBAsClD,OA/BAJ,EAA6B3Q,UAAUgR,mBAAqB,WACxD,OAAOtR,KAAKkR,iBAOhBD,EAA6B3Q,UAAUyQ,iBAAmB,WACtD,IAAI/E,EAAQhM,KAEZ,OAAMA,KAAKyO,OAAYzO,KAAKyO,MAAME,QAG3B3O,KAAKyO,MAAMgB,SAASzP,KAAKmR,UAAU,WACtC,OAAOnF,EAAMkF,gBAAgBH,mBAAmB5G,MAAK,SAAUoH,GAE3D,OADAvF,EAAMyC,MAAMW,IAAIpD,EAAMmF,SAAUI,GACzBA,QALJvR,KAAKkR,gBAAgBH,oBASpCE,EAA6B3Q,UAAU+Q,eAAiB,WACpD,IAAIG,EAAW,IAAIpB,EACnB,GAAKoB,EAAc,OAAMA,EAASC,MAAa,QAC3C,OAAOD,EAASC,MAEpB,GAAKD,EAAgB,SAAMA,EAASE,QAAe,QAC/C,OAAOF,EAASE,QAEpB,MAAMC,MAAM,iFAETV,EAlDsC,GCJjD,IAAIW,GAAuB,WACvB,SAASA,EAAMC,QACM,IAAbA,IAAuBA,EAAWjM,KACtC5F,KAAK6R,SAAWA,EAChB7R,KAAK8R,MAAQ,GACb9R,KAAK+R,MAAQ,GACb/R,KAAKgS,OAAS,GACdhS,KAAKiS,QAAU,EA2FnB,OAzFAvS,OAAOC,eAAeiS,EAAMtR,UAAW,UAAW,CAC9CT,IAAK,WACD,OAAOG,KAAK6R,UAEhBjS,YAAY,EACZsB,cAAc,IAElBxB,OAAOC,eAAeiS,EAAMtR,UAAW,WAAY,CAI/CT,IAAK,WAED,OAAOG,KAAK8R,MAAMI,MAAK,SAAUC,EAAOC,GAAS,OAAOD,EAAMhC,MAAQiC,EAAMjC,UAEhFvQ,YAAY,EACZsB,cAAc,IAOlB0Q,EAAMtR,UAAU+R,MAAQ,SAAUC,GAC9BA,EAAQ5P,KAAK6P,MAAQvS,WAGkB,IAA5BsS,EAAQ5P,KAAK8P,YAA8BF,EAAQ5P,KAAK8P,WAAa,KAC5EF,EAAQ5P,KAAK8P,aAAexS,KAAKiS,SAQzCL,EAAMtR,UAAUqQ,IAAM,SAAUjN,GAC5B,IAAI+O,EAAO,CACPC,GAAIhP,EAAQiP,UACZxC,MAAOzM,EAAQ8O,WACfhP,OAAQE,EAAQF,OAAOoP,cACvBhF,QAASlK,EAAQkK,QACjBiF,OAAQnP,EAAQmP,OAChBjJ,OAAQ,KACRD,QAAS,KACT5C,IAAKrD,EAAQqD,KAGbQ,EAAI,IAAImC,SAAQ,SAAUC,EAASC,GACnC6I,EAAK9I,QAAUA,EACf8I,EAAK7I,OAASA,KAGlB,OADA5J,KAAK8R,MAAMlP,KAAK6P,GACTlL,GAMXqK,EAAMtR,UAAUwS,cAAgB,WAC5B,IAAIC,EAAW,aAIf,OAHA/S,KAAK+R,MAAMnP,KAAK,IAAI8G,SAAQ,SAAUC,GAClCoJ,EAAWpJ,MAERoJ,GAOXnB,EAAMtR,UAAU0S,0BAA4B,SAAUzL,GAClDvH,KAAKgS,OAAOpP,KAAK2E,IAOrBqK,EAAMtR,UAAU2S,QAAU,WACtB,IAAIjH,EAAQhM,KAGZ,OAAO0J,QAAQwJ,IAAIlT,KAAK+R,OACnB5H,MAAK,WAAc,OAAOT,QAAQwJ,IAAIlH,EAAM+F,UAC5C5H,MAAK,WAAc,OAAO6B,EAAMmH,iBAChChJ,MAAK,WAAc,OAAOT,QAAQwJ,IAAIlH,EAAMgG,WAC5C7H,MAAK,gBAEPyH,EAlGe,GCAtBwB,GAAU,IAAIhD,EACdiD,GAAgC,WAChC,SAASA,EAAe7T,EAAK8T,EAAWpE,GACpClP,KAAKR,IAAMA,EACXQ,KAAKsT,UAAYA,EACjBtT,KAAKkP,WAAaA,EActB,OAZAxP,OAAOC,eAAe0T,EAAe/S,UAAW,QAAS,CACrDT,IAAK,WACD,MAAuB,UAAnBG,KAAKsT,UACEF,GAAQ3B,MAGR2B,GAAQ1B,SAGvB9R,YAAY,EACZsB,cAAc,IAEXmS,EAlBwB,GAqB/BE,GAAsC,WACtC,SAASA,EAAqBV,EAAQW,GAClCxT,KAAK6S,OAASA,EACd7S,KAAKwT,aAAeA,EAYxB,OAVAD,EAAqBjT,UAAU2O,MAAQ,SAAUwE,GAC7C,IAAIzH,EAAQhM,KACZ,OAAOA,KAAK6S,OAAO5D,MAAMwE,GAAUtJ,MAAK,SAAU1J,GAAK,OAAOuL,EAAM0H,UAAUjT,OAElF8S,EAAqBjT,UAAUoT,UAAY,SAAUhR,GAIjD,OAHgC,OAA5B1C,KAAKwT,aAAa/E,OAClBzO,KAAKwT,aAAa/E,MAAMW,IAAIpP,KAAKwT,aAAahU,IAAKkD,EAAM1C,KAAKwT,aAAatE,YAExExM,GAEJ6Q,EAf8B,GCflC,SAASI,GAAQrN,EAAQ4G,EAAMlO,EAASgG,GAC3CmE,QAAQxJ,eAAe2G,EAAOhG,UAAW4M,EAAM,CAC3ChM,cAAc,EACdtB,YAAY,EACZC,IAAK,WACD,OAAOb,EAAQgB,KAAMgF,MCXjC,IAAI4O,IAAoB,EACpBC,GAAmB,GACnBC,GAAoB,IAAI9L,IACxB+L,GAAmBrT,OAAOsT,IAAI,YAMvBC,GAAe,SAAU/T,GAChC0T,IAAoB,EACpBM,GAAUL,GAAkB3T,IASrBiU,GAAY,SAAU7N,EAAQ8N,GAMrC,OALAR,IAAoB,EACfzK,QAAQgD,IAAI7F,EAAQyN,KACrB5K,QAAQlI,IAAIqF,EAAQyN,GAAkB,IAE1CG,GAAU/K,QAAQtJ,IAAIyG,EAAQyN,IAAmBK,GAC1C9N,GAQA+N,GAAgB,SAAUrV,EAASoV,GAC1CR,IAAoB,EAEpB,IAAIU,EAAQnL,QAAQoL,eAAevV,GAC9BmK,QAAQgD,IAAImI,EAAOP,KACpB5K,QAAQxJ,eAAe2U,EAAOP,GAAkB,CAC5CnT,MAAOgF,MAGf,IAAIpG,EAAM8U,EAAMP,IACXD,GAAkB3H,IAAI3M,IACvBsU,GAAkB7S,IAAIzB,EAAK,IAE/B0U,GAAUJ,GAAkBjU,IAAIL,GAAM4U,IAE1C,SAASF,GAAUM,EAAGtU,GACdoF,MAAMa,QAAQjG,GACdsU,EAAE5R,KAAKgB,MAAM4Q,EAAGpJ,EAAc,GAAIF,EAAOhL,KAGzCsU,EAAE5R,KAAK1C,GAMR,IAAIuU,GAAwB,WAC/BZ,GAAiBnS,OAAS,GAKnBgT,GAAoB,WAC3Bd,IAAoB,GAKbe,GAAmB,WAC1Bf,IAAoB,GASbgB,GAAyB,SAAU5V,EAAS6V,GACnD,IAAIpV,EAAIT,EAAQ6V,GACZP,EAAQnL,QAAQoL,eAAevV,GACnC,GAAImK,QAAQgD,IAAImI,EAAOP,IAAmB,CACtC,IAAIK,EAAaN,GAAkBjU,IAAIsJ,QAAQtJ,IAAIyU,EAAOP,KAC1DtU,EAAI0U,GAAU1U,EAAG2U,GAErB,OAAO3U,GAEJ,SAASqV,GAAmBhK,EAAIiK,EAAIzO,GAEvC,IADA,IAAI0O,EAAO,GACFxT,EAAK,EAAGA,EAAKC,UAAUC,OAAQF,IACpCwT,EAAKxT,EAAK,GAAKC,UAAUD,GAE7B,GAAIoS,GAAmB,CACnB,IAAIQ,EAAa,GAEbjL,QAAQgD,IAAI7F,EAAQyN,KACpBK,EAAWxR,KAAKgB,MAAMwQ,EAAYhJ,EAAc,GAAIF,EAAO/B,QAAQtJ,IAAIyG,EAAQyN,OAGnFK,EAAWxR,KAAKgB,MAAMwQ,EAAYhJ,EAAc,GAAIF,EAAO2I,MAC3D,IAAK,IAAItO,EAAI,EAAGA,EAAI6O,EAAW1S,OAAQ6D,IAAK,CACxC,IAAI0P,EAAYb,EAAW7O,GACvB0E,OAAS9I,EAab,GAZI6E,EAAOiP,GAEPhL,EAASgL,EAAUrR,WAAM,EAAQwH,EAAc,CAACN,EAAIxE,GAAS4E,EAAO8J,KAExD,QAAPlK,GAAgB3B,QAAQgD,IAAI8I,EAAWD,EAAK,IAEjD/K,EAASd,QAAQtJ,IAAIoV,EAAWD,EAAK,GAAI1O,GAEpC6C,QAAQgD,IAAI8I,EAAWnK,KAE5Bb,EAASd,QAAQtJ,IAAIoV,EAAWnK,GAAIlH,WAAM,EAAQwH,EAAc,CAAC9E,GAAS4E,EAAO8J,WAE/D,IAAX/K,EAIP,OAAOA,GAInB,OAAO8K,EAAGnR,WAAM,EAAQwH,EAAc,CAAC9E,GAAS4E,EAAO8J,KC9H3D,IAAgCE,GA+DrBC,IA/DqBD,GA+Dc,SAAUtH,GACpD,OAAO5N,KAAKoV,cAAcxH,IAhEoB,SAAUvH,GACxD,OAAO,WAEH,IADA,IAAIwO,EAAO,GACFrT,EAAK,EAAGA,EAAKC,UAAUC,OAAQF,IACpCqT,EAAKrT,GAAMC,UAAUD,GAEzB,IAAIxC,EAAU,SAAUqW,GACpB,IAAI5U,EAAIf,OAAOyI,QAAO,WAElB,IADA,IAAImN,EAAM,GACD9T,EAAK,EAAGA,EAAKC,UAAUC,OAAQF,IACpC8T,EAAI9T,GAAMC,UAAUD,GAExB,OAAO0T,GAAQ1U,KAAKoD,MAAMsR,GAAS9J,EAAc,CAAC3K,GAAIyK,EAAOoK,OAC9D,IAAKjP,EAAYwI,KAAKjL,MAAMyC,EAAa+E,EAAc,MAAC,GAASF,EAAOmK,OAE3E,OADAlM,QAAQb,eAAe7H,EAAG4F,EAAY/F,WAC/BG,GAGX,OAAIoL,EAAehM,IAAI,QACZb,EAAQ6V,GAGR,IAAIU,MAAMX,GAAuB5V,EAAS6V,GAAO,CACpDjR,MAAO,SAAU0C,EAAQkP,EAAUC,GAC/B,OAAOX,GAAmB,SAAS,WAE/B,IADA,IAAIN,EAAI,GACChT,EAAK,EAAGA,EAAKC,UAAUC,OAAQF,IACpCgT,EAAEhT,GAAMC,UAAUD,GAEtB,OAAO2H,QAAQvF,MAAM4Q,EAAE,GAAIA,EAAE,GAAIA,EAAE,MACpClO,EAAQkP,EAAUC,IAEzB5V,IAAK,SAAUyG,EAAQiB,EAAGmO,GACtB,OAAOZ,GAAmB,OAAO,WAE7B,IADA,IAAIN,EAAI,GACChT,EAAK,EAAGA,EAAKC,UAAUC,OAAQF,IACpCgT,EAAEhT,GAAMC,UAAUD,GAEtB,OAAO2H,QAAQtJ,IAAI2U,EAAE,GAAIA,EAAE,GAAIA,EAAE,MAClClO,EAAQiB,EAAGmO,IAElBvJ,IAAK,SAAU7F,EAAQiB,GACnB,OAAOuN,GAAmB,OAAO,WAE7B,IADA,IAAIN,EAAI,GACChT,EAAK,EAAGA,EAAKC,UAAUC,OAAQF,IACpCgT,EAAEhT,GAAMC,UAAUD,GAEtB,OAAO2H,QAAQgD,IAAIqI,EAAE,GAAIA,EAAE,MAC5BlO,EAAQiB,IAEftG,IAAK,SAAUqF,EAAQiB,EAAG3G,EAAO8U,GAC7B,OAAOZ,GAAmB,OAAO,WAE7B,IADA,IAAIN,EAAI,GACChT,EAAK,EAAGA,EAAKC,UAAUC,OAAQF,IACpCgT,EAAEhT,GAAMC,UAAUD,GAEtB,OAAO2H,QAAQlI,IAAIuT,EAAE,GAAIA,EAAE,GAAIA,EAAE,GAAIA,EAAE,MACxClO,EAAQiB,EAAG3G,EAAO8U,SC1DrCC,GAA6B,WAC7B,SAASA,KAwDT,OAtDAA,EAAYrV,UAAU2O,MAAQ,SAAUxO,GACpC,IAAIuL,EAAQhM,KACZ,OAAO,IAAI0J,SAAQ,SAAUC,EAASC,GAC9BoC,EAAM4J,YAAYnV,EAAGmJ,IACrBoC,EAAM6J,UAAUpV,EAAGkJ,EAASC,OAIxC+L,EAAYrV,UAAUuV,UAAY,SAAUpV,EAAGkJ,EAASC,GACpD,IAAIoC,EAAQhM,KACPS,EAAEwM,QAAQd,IAAI,mBAAqE,IAAhD2J,WAAWrV,EAAEwM,QAAQpN,IAAI,oBAA0C,MAAbY,EAAEsV,OAC5FpM,EAAQ,IAIRlJ,EAAE4E,OACG8E,MAAK,SAAU6L,GAAO,OAAOA,EAAI9Q,QAAQ,OAAQ,IAAIxD,OAAS,EAAIW,KAAK4M,MAAM+G,GAAO,MACpF7L,MAAK,SAAU/H,GAAQ,OAAOuH,EAAQqC,EAAMiK,eAAe7T,OAC3D2N,OAAM,SAAU7P,GAAK,OAAO0J,EAAO1J,OAUhDyV,EAAYrV,UAAUsV,YAAc,SAAUnV,EAAGmJ,GAI7C,OAHKnJ,EAAEyV,IACHC,GAAiBC,KAAK3V,GAAG0J,KAAKP,GAE3BnJ,EAAEyV,IAObP,EAAYrV,UAAU2V,eAAiB,SAAU7T,GAC7C,IAAI6H,EAAS7H,EAYb,OAXIkF,EAAIlF,EAAM,KAEN6H,EADA3C,EAAIlF,EAAKyD,EAAG,WACHzD,EAAKyD,EAAEwQ,QAGPjU,EAAKyD,EAGbyB,EAAIlF,EAAM,WACf6H,EAAS7H,EAAKxB,OAEXqJ,GAEJ0L,EAzDqB,GA4D5BW,GAA4B,SAAUxI,GAEtC,SAASwI,IACL,OAAkB,OAAXxI,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAK/D,OAPAwI,EAAU8N,EAAYxI,GAItBwI,EAAWhW,UAAUuV,UAAY,SAAUpV,EAAGkJ,GAC1ClJ,EAAE4E,OAAO8E,KAAKR,IAEX2M,EARoB,CAS7BX,IAEEY,GAA4B,SAAUzI,GAEtC,SAASyI,IACL,OAAkB,OAAXzI,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAK/D,OAPAwI,EAAU+N,EAAYzI,GAItByI,EAAWjW,UAAUuV,UAAY,SAAUpV,EAAGkJ,GAC1ClJ,EAAE+V,OAAOrM,KAAKR,IAEX4M,EARoB,CAS7BZ,IAEEc,GAA4B,SAAU3I,GAEtC,SAAS2I,IACL,OAAkB,OAAX3I,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAK/D,OAPAwI,EAAUiO,EAAY3I,GAItB2I,EAAWnW,UAAUuV,UAAY,SAAUpV,EAAGkJ,GAC1ClJ,EAAE2B,OAAO+H,KAAKR,IAEX8M,EARoB,CAS7Bd,IAEEe,GAA8B,SAAU5I,GAExC,SAAS4I,IACL,OAAkB,OAAX5I,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAU/D,OAZAwI,EAAUkO,EAAc5I,GAIxB4I,EAAapW,UAAUuV,UAAY,SAAUpV,EAAGkJ,GACxC3D,EAAOvF,EAAEkW,aACTlW,EAAEkW,cAAcxM,KAAKR,GAGrBlJ,EAAEmW,SAASzM,KAAKR,IAGjB+M,EAbsB,CAc/Bf,IAEEkB,GAA8B,SAAU/I,GAExC,SAAS+I,EAAahE,GAClB,IAAI7G,EAAQ8B,EAAOtN,KAAKR,OAASA,KAEjC,OADAgM,EAAM6G,OAASA,EACR7G,EAKX,OATAxD,EAAUqO,EAAc/I,GAMxB+I,EAAavW,UAAUuV,UAAY,SAAUpV,EAAGkJ,GAC5C3J,KAAK6S,OAAOpS,GAAG0J,KAAKR,IAEjBkN,EAVsB,CAW/BlB,IAEEQ,GAAkC,SAAUrI,GAE5C,SAASqI,EAAiBnU,EAASyR,EAAUsC,EAAQe,QAClC,IAAXf,IAAqBA,EAAStC,EAASsC,aACxB,IAAfe,IAAyBA,EAAarD,EAASqD,YACnD,IAAI9K,EAAQ8B,EAAOtN,KAAKR,KAAMgC,IAAYhC,KAK1C,OAJAgM,EAAMyH,SAAWA,EACjBzH,EAAM+J,OAASA,EACf/J,EAAM8K,WAAaA,EACnB9K,EAAM+K,oBAAqB,EACpB/K,EAeX,OAxBAxD,EAAU2N,EAAkBrI,GAW5BqI,EAAiBC,KAAO,SAAU3V,GAC9B,OAAO4I,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAI6G,EACJ,OAAOuD,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAAG,MAAO,CAAC,EAAa/J,EAAEuW,QAAQ3R,QACvC,KAAK,EAED,OADAwB,EAAI0F,EAAG9B,OACA,CAAC,EAAc,IAAI0L,EAAiB,iDAAmD1V,EAAEsV,OAAS,KAAOtV,EAAEqW,WAAa,QAAUjQ,EAAGpG,EAAEuW,kBAK3Jb,EAzB0B,CA0BnCxE,OCnJK,SAASsF,GAAmB1Q,GAC/B,IAAI8D,EAGA9D,EAAOqH,SAAWrH,EAAOqH,QAAQvD,OACjCA,EAAO9D,EAAOqH,QAAQvD,KACtB9D,EAAOqH,QAAQvD,KAAO,KAE1B,IAAIxH,EAAIR,KAAKC,UAAUiE,GAAQ,SAAU/G,EAAKoB,GAC1C,OAAQpB,GACJ,IAAK,QACD,OAAO6C,KAAKC,UAAU8I,EAAc,GAAIF,EAAOtK,KACnD,IAAK,QACL,IAAK,kBACL,IAAK,iBACL,IAAK,gBACL,IAAK,SACD,MAAO,IACX,QACI,OAAOA,KAEhB,GACCsW,EAAS7U,KAAK4M,MAAMpM,GAAG,SAAUrD,EAAKoB,GACtC,OAAQpB,GACJ,IAAK,QACD,OAAO,IAAIwI,IAAI3F,KAAK4M,MAAMrO,IAC9B,IAAK,QACL,IAAK,kBACL,IAAK,iBACL,IAAK,gBACL,IAAK,SACD,OAAO2F,EAAO/G,GAClB,QACI,OAAOoB,MAOnB,OAJIyJ,IACA6M,EAAOtJ,QAAQvD,KAAOA,EACtB9D,EAAOqH,QAAQvD,KAAOA,GAEnB6M,EAEX,IAAIC,GAA2B,WAC3B,SAASA,EAAUC,QACE,IAAbA,IAAuBA,EAAW,IACtCpX,KAAKqX,MAAQ3X,OAAOyI,OAAO,GAAI,CAC3BmP,uBAAuB,EACvB1J,QAAS,GACT2J,UAAW,GACX1E,OAAQ,IAAI8C,GACZ6B,MAAO,IAAIxP,IACXjB,IAAK,GACL0Q,YAAY,GACbR,GAAmBG,IACtBpX,KAAK0X,SAAW,KA+NpB,OA7NAhY,OAAOC,eAAewX,EAAU7W,UAAW,OAAQ,CAC/CT,IAAK,WACD,OAAOG,KAAKqX,OAEhBpW,IAAK,SAAUL,GACXZ,KAAKqX,MAAQ3X,OAAOyI,OAAO,GAAInI,KAAK0C,KAAMuU,GAAmBrW,KAEjEhB,YAAY,EACZsB,cAAc,IAElBiW,EAAU7W,UAAUqX,WAAa,WAC7B,OAAsB,OAAlB3X,KAAK0X,SACE7L,EAEJ7L,KAAK0X,UAEhBP,EAAU7W,UAAUsX,WAAa,WAG7B,IADA,IAAI/C,EAAO,GACFrT,EAAK,EAAGA,EAAKC,UAAUC,OAAQF,IACpCqT,EAAKrT,GAAMC,UAAUD,GAWzB,OATIqT,EAAK,aAAc/I,EACnB9L,KAAK0X,SAAW7C,EAAK,IAGrB7U,KAAK0X,SAAW7C,EAAK,GAAK,IAAI/I,EAAQD,EAAeQ,UAAY,IAAIP,EACjE+I,EAAKnT,OAAS,GAAKwE,EAAqB2O,EAAK,KAC7C7U,KAAK0X,SAASvP,OAAO0M,EAAK,KAG3B7U,MAMXmX,EAAU7W,UAAUuX,MAAQ,WACxB,OAAO7X,KAAK0C,KAAKqE,KAOrBoQ,EAAU7W,UAAUwX,OAAS,SAAUC,GAEnC,OADA/X,KAAK0C,KAAKqE,KAAOgR,EACV/X,MAEXN,OAAOC,eAAewX,EAAU7W,UAAW,QAAS,CAKhDT,IAAK,WACD,OAAOG,KAAK0C,KAAK8U,OAErB5X,YAAY,EACZsB,cAAc,IAOlBiW,EAAU7W,UAAU0X,UAAY,SAAUpK,GAEtC,OADAR,EAAapN,KAAK0C,KAAKkL,QAASA,GACzB5N,MAOXmX,EAAU7W,UAAU2X,cAAgB,SAAUxY,GAC1C2N,EAAapN,KAAK0C,KAAKkL,QAASnO,EAAEiD,KAAKkL,SACvC,IAAIsK,EAAgBzY,EAAEkY,aAItB,OAHKO,EAAcrY,IAAI,kBACnBG,KAAK4X,WAAWM,GAEblY,MAOXmX,EAAU7W,UAAU6X,aAAe,SAAUvK,GACzC,IAAIwK,EAAUpY,KAAK2X,aACnB,IAAKS,EAAQvY,IAAI,sBAAuB,CAGpC,GAFAG,KAAK0C,KAAK+U,YAAa,EAEA,iBAAZ7J,EAAsB,CAC7B,GAAI3I,EAAoB2I,GACpB,MAAM+D,MAAM,8BAEhB/D,EAAU,CAAEpO,IAAKoO,GAGrB,IAAIyK,EAAc,CACdnJ,WAAYrL,EAAQ,IAAIK,KAAQ,SAAUkU,EAAQvY,IAAI,iCACtDyT,UAAW8E,EAAQvY,IAAI,wBAE3BG,KAAK0C,KAAK4V,eAAiB,EAAOD,EAAazK,GAEnD,OAAO5N,MAEXmX,EAAU7W,UAAUiY,YAAc,SAAU1F,GAExC,OADA7S,KAAK0C,KAAKmQ,OAASA,EACZ7S,MAOXmX,EAAU7W,UAAUkY,aAAe,SAAUC,GAEzC,OADAzY,KAAK0C,KAAKgW,MAAQD,EAAS3V,MAAM,GAC1B9C,MAOXmX,EAAU7W,UAAU6M,OAAS,SAAU4K,GACnC/X,KAAK0C,KAAKqE,IAAMlC,EAAQ7E,KAAK0C,KAAKqE,IAAKgR,IAa3CZ,EAAU7W,UAAUqY,QAAU,SAAUpG,GACpC,GAAIvS,KAAK4Y,SACL,MAAMjH,MAAM,0CAKhB,OAHIzL,EAAqBqM,IACrBA,EAAMF,MAAMrS,MAETA,MAKXmX,EAAU7W,UAAUuY,mBAAqB,WACrC,OAAI3S,EAAqBlG,KAAK0C,KAAK6P,OACxBvS,KAAK0C,KAAK6P,MAAMO,gBAEpB,WAAc,OAAO,OAEhCpT,OAAOC,eAAewX,EAAU7W,UAAW,WAAY,CAKnDT,IAAK,WACD,OAAOqG,EAAqBlG,KAAK0C,KAAK6P,QAE1C3S,YAAY,EACZsB,cAAc,IAElBxB,OAAOC,eAAewX,EAAU7W,UAAW,QAAS,CAKhDT,IAAK,WACD,OAAOG,KAAK4Y,SAAW5Y,KAAK0C,KAAK6P,MAAQ,MAE7C3S,YAAY,EACZsB,cAAc,IAElBxB,OAAOC,eAAewX,EAAU7W,UAAW,YAAa,CAKpDT,IAAK,WACD,OAAOG,KAAK0C,KAAK6U,WAErB3X,YAAY,EACZsB,cAAc,IAQlBiW,EAAU7W,UAAUwY,QAAU,SAAUxS,EAAQyS,GAuB5C,YAtBiB,IAAbA,IAAuBA,EAAW,IAEtCA,EAAW,EAAO,CACdC,cAAc,EACdC,cAAc,GACfF,GACHzS,EAAO5D,KAAOhD,OAAOyI,OAAO,GAAI8O,GAAmBjX,KAAK0C,MAAO,CAC3D6P,MAAO,KACP2G,wBAAyB,KACzB5B,uBAAuB,GACxBL,GAAmB3Q,EAAO5D,OAC7B4D,EAAO2R,cAAcjY,MACjB+Y,EAASC,cACT1S,EAAOqS,QAAQ3Y,KAAKuS,OAEpBwG,EAASE,cAAgBjZ,KAAKwX,MAAMvH,KAAO,GAC3CjQ,KAAKwX,MAAM7V,SAAQ,SAAUgF,EAAGmB,GAAK,OAAOxB,EAAOkR,MAAMvW,IAAI6G,EAAGnB,MAEhE3G,KAAK0C,KAAK+U,aACVnR,EAAO5D,KAAK4U,uBAAwB,EACpChR,EAAO5D,KAAKwW,wBAA0BlZ,KAAK0C,KAAK4V,gBAE7ChS,GAEJ6Q,EA3OmB,GCzBvB,SAASgC,GAAUzV,EAAS9C,GAC/B,OAAO,IAAI8I,SAAQ,SAAUC,GACzBjG,EAAQuG,OAASrJ,EACjB8C,EAAQ0V,WAAY,EACpBzP,EAAQjG,MAQhB,SAASqG,GAAKhE,GACV,OAAOA,EAAE2S,MAAMhX,OAAS,EAAIqE,EAAE2S,MAAMW,OAARtT,CAAgBA,GAAK2D,QAAQC,QAAQ5D,GAO9D,SAASuT,GAAK5V,GACjB,GAAIA,EAAQgV,MAAMhX,OAAS,EAEvB,MADAZ,EAAOiB,MAAM,IAAM2B,EAAQiP,UAAY,OAAQ,IAAKzO,MAAQU,UAAY,0CAA2C,GAC7G+M,MAAM,yCAEhB,IAAI4H,EAAUxP,GAAKrG,GAASyG,MAAK,SAAUqP,GAAO,OApCtD,SAAsB9V,GAMlB,OALA5C,EAAOoB,IAAI,CACPQ,KAAgC,IAA1B5B,EAAOE,eAAqC0C,EAAQuG,OAAS,GACnEhI,MAAO,EACPD,QAAS,IAAM0B,EAAQiP,UAAY,OAAQ,IAAKzO,MAAQU,UAAY,0EAEjE8E,QAAQC,QAAQjG,EAAQuG,QA8B0BwP,CAAaD,MAASzJ,OAAM,SAAU7P,GAE3F,MADAY,EAAO0B,MAAMtC,GACPA,KAMV,OAJIwD,EAAQgW,WAERhW,EAAQ6O,MAAMS,0BAA0BuG,GAErCA,EAKJ,SAASI,GAAsBC,GAElC,YADkB,IAAdA,IAAwBA,GAAY,GACjC,SAAUtT,EAAQuT,EAAaC,GAClC,IAAItW,EAASsW,EAAWlZ,MACxBkZ,EAAWlZ,MAAQ,WAEf,IADA,IAAIiU,EAAO,GACFrT,EAAK,EAAGA,EAAKC,UAAUC,OAAQF,IACpCqT,EAAKrT,GAAMC,UAAUD,GAGzB,OAAKoY,GAAa/E,EAAKnT,OAAS,GAAK4F,EAAIuN,EAAK,GAAI,cAAgBA,EAAK,GAAGuE,WACtEtY,EAAOiB,MAAM,IAAM8S,EAAK,GAAGlC,UAAY,OAAQ,IAAKzO,MAAQU,UAAY,sCAAwCiV,EAAc,iCAAkC,GACzJnQ,QAAQC,QAAQkL,EAAK,MAGhC/T,EAAOiB,MAAM,IAAM8S,EAAK,GAAGlC,UAAY,OAAQ,IAAKzO,MAAQU,UAAY,qCAAuCiV,EAAc,IAAK,GAE3HrW,EAAOI,MAAM0C,EAAQuO,GAAM1K,MAAK,SAAUqP,GAAO,OAAOzP,GAAKyP,SAOhF,IAAIO,GAAiC,WACjC,SAASA,KAuHT,OAlHAA,EAAgBC,SAAW,SAAUtW,GACjC,OAAO,IAAIgG,SAAQ,SAAUC,GACzB7I,EAAOoB,IAAI,CACPQ,KAAgC,IAA1B5B,EAAOE,eAAkC,GAAK0C,EACpDzB,MAAO,EACPD,QAAS,IAAM0B,EAAQiP,UAAY,OAAQ,IAAKzO,MAAQU,UAAY,eAAiBlB,EAAQF,OAAS,aAAeE,EAAQqD,IAAM,MAEvI4C,EAAQjG,OAMhBqW,EAAgBE,QAAU,SAAUvW,GAChC,OAAO,IAAIgG,SAAQ,SAAUC,GAEzB,GAAIjG,EAAQ+T,WAAY,CACpB3W,EAAOiB,MAAM,IAAM2B,EAAQiP,UAAY,OAAQ,IAAKzO,MAAQU,UAAY,sDAAuD,GAC/H,IAAI4O,EAAe,IAAIH,GAAe3P,EAAQqD,IAAI3C,eAKlD,QAJ+BjD,IAA3BuC,EAAQ4U,iBACR9E,EAAe,EAAOA,EAAc9P,EAAQ4U,iBAGrB,OAAvB9E,EAAa/E,MAAgB,CAE7B,IAAI/L,EAAO8Q,EAAa/E,MAAM5O,IAAI2T,EAAahU,KAC/C,GAAa,OAATkD,EAcA,OAbA5B,EAAOoB,IAAI,CACPQ,KAAgC,IAA1B5B,EAAOE,eAAkC,GAAK0B,EACpDT,MAAO,EACPD,QAAS,IAAM0B,EAAQiP,UAAY,OAAQ,IAAKzO,MAAQU,UAAY,iCAGpEoB,EAAOtC,EAAQwW,kBACfxW,EAAQwW,kBAGR5S,EAAI5D,EAAQmP,OAAQ,aACpBnQ,EAAOgB,EAAQmP,OAAOsH,QAAQzX,IAE3ByW,GAAUzV,EAAShB,GAAMyH,MAAK,SAAUqP,GAAO,OAAO7P,EAAQ6P,MAG7E1Y,EAAOiB,MAAM,IAAM2B,EAAQiP,UAAY,OAAQ,IAAKzO,MAAQU,UAAY,8BAA+B,GAGvGlB,EAAQmP,OAAS,IAAIU,GAAqB7P,EAAQmP,OAAQW,GAE9D,OAAO7J,EAAQjG,OAMvBqW,EAAgBK,KAAO,SAAU1W,GAC7B,OAAO,IAAIgG,SAAQ,SAAUC,EAASC,GAElC,GAAIlG,EAAQgW,UAAW,CACnB,IAAInS,EAAI7D,EAAQ6O,MAAM5B,IAAIjN,GAEtBsC,EAAOtC,EAAQwW,kBACfxW,EAAQwW,kBAEZpZ,EAAOiB,MAAM,IAAM2B,EAAQiP,UAAY,OAAQ,IAAKzO,MAAQU,UAAY,+BAAiClB,EAAQ6O,MAAM8H,QAAU,IAAK,GAEtI1Q,EAAQwP,GAAUzV,EAAS6D,QAE1B,CACDzG,EAAOiB,MAAM,IAAM2B,EAAQiP,UAAY,OAAQ,IAAKzO,MAAQU,UAAY,qBAAsB,GAE9F,IAAI0V,EAAS5W,EAAQ6W,gBACjBC,EAAO,EAAO9W,EAAQkK,SAAW,GAAI,CAAEpK,OAAQE,EAAQF,SAC3D8W,EAAO3M,MAAMjK,EAAQqD,IAAKyT,GACrBrQ,MAAK,SAAUsJ,GAAY,OAAO/P,EAAQmP,OAAO5D,MAAMwE,MACvDtJ,MAAK,SAAUF,GAAU,OAAOkP,GAAUzV,EAASuG,MACnDE,MAAK,SAAUqP,GAAO,OAAO7P,EAAQ6P,MACrCzJ,OAAM,SAAU7P,GAAK,OAAO0J,EAAO1J,WAOpD6Z,EAAgBU,OAAS,SAAU/W,GAC/B,OAAO,IAAIgG,SAAQ,SAAUC,GACrBjG,EAAQgW,UACR5Y,EAAOoB,IAAI,CACPQ,KAAgC,IAA1B5B,EAAOE,eAAkC,GAAK0C,EACpDzB,MAAO,EACPD,QAAS,IAAM0B,EAAQiP,UAAY,OAAQ,IAAKzO,MAAQU,UAAY,KAAOlB,EAAQF,OAAS,mCAAqCE,EAAQ6O,MAAM8H,QAAU,MAI7JvZ,EAAOoB,IAAI,CACPQ,KAAgC,IAA1B5B,EAAOE,eAAkC,GAAK0C,EACpDzB,MAAO,EACPD,QAAS,IAAM0B,EAAQiP,UAAY,OAAQ,IAAKzO,MAAQU,UAAY,gBAAkBlB,EAAQF,OAAS,cAG/GmG,EAAQjG,OAGhBqF,EAAW,CACP4Q,IAAsB,IACvBI,EAAiB,WAAY,MAChChR,EAAW,CACP4Q,MACDI,EAAiB,UAAW,MAC/BhR,EAAW,CACP4Q,MACDI,EAAiB,OAAQ,MAC5BhR,EAAW,CACP4Q,IAAsB,IACvBI,EAAiB,SAAU,MACvBA,EAxHyB,GA2H7B,SAASW,KACZ,MAAO,CACHX,GAAgBC,SAChBD,GAAgBE,QAChBF,GAAgBK,KAChBL,GAAgBU,QAClB3X,MAAM,GC9ML,SAAS6X,GAAejC,GAE3B,OAAO,SAAU6B,GAEb,OAAO,SAAU/W,GAEb,OAAO,SAAU/D,GAEb,OAAO6Z,GAAK5Z,OAAOyI,OAAO,GAAI,CAC1BoK,MAAO,KACP2H,gBAAiB,KACjB1H,YAAa,EACb8F,eAAgB,KAChBiC,cAAeA,EACfrB,wBAAyB,KACzB5B,uBAAuB,EACvB8B,WAAW,EACXM,UAAWxT,EAAqBzG,EAAE8S,OAClC/O,OAAQA,EACRoK,QAAS,KACT2J,UAAW,GACX1E,OAAQ,IAAI8C,GACZ+C,MAAOA,EAAM5V,MAAM,GACnB0U,MAAO,IAAIxP,IACX2K,UAAW/M,IACXmB,IAAK,GACL0Q,WAAY,SAASzQ,KAAKvH,EAAE+D,SAAW/D,EAAEgY,YAC1CR,GAAmBxX,QAK/B,IAAImb,GAAwBD,GAAeD,MCpC3C,SAASrQ,GAAK5K,EAAGob,GACpB,OAAOnb,OAAOyI,OAAO,CAAEkC,KAAMhD,EAAI5H,IAAMob,GAGpC,SAAS5N,GAAQxN,EAAGob,GACvB,OAAOnb,OAAOyI,OAAO,CAAE8E,QAASxN,GAAKob,GCNlC,SAASC,GAASC,GACrB,MAAO,CACH,WAAc,CAAE,KAAQA,ICDzB,SAASC,GAAcC,GAC1B,GAAIhW,EAAoBgW,GACpB,MAAO,GAEX,IAAI9K,EAAQ8K,EAAarP,QAAQ,SAIjC,OAHIuE,EAAQ,IACRA,EAAQ8K,EAAarP,QAAQ,cAE7BuE,GAAS,EACF8K,EAAaC,OAAO,EAAG/K,GAG3B8K,ECLJ,SAASE,GAAIjO,GAChB,OAAO,SAAU5G,EAAQ9G,EAAKsa,QACP3Y,IAAf2Y,IACAA,EAAapa,OAAOwJ,yBAAyB5C,EAAQ9G,IAEzD,IAAI4b,EAAiBtB,EAAWlZ,MAahC,OAZAkZ,EAAWlZ,MAAQ,WAEf,IADA,IAAIiU,EAAO,GACFrT,EAAK,EAAGA,EAAKC,UAAUC,OAAQF,IACpCqT,EAAKrT,GAAMC,UAAUD,GAEzB,OAAO6H,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,OAAOoK,EAAYpK,MAAM,SAAUuM,GAE/B,OADAvM,KAAKgY,UAAU/K,GAAQ,CAAE,mBAAoBC,KACtC,CAAC,EAAckO,EAAexX,MAAM5D,KAAM6U,WAItDiF,GAGfqB,GAAIE,aAAe,SAAUC,EAAGC,GAE5B,QAD6B,IAAzBA,IAAmCA,GAAuB,GAC1DD,EAAEnP,IAAI,oBAAqB,CAC3B,IAAIqP,EAAaF,EAAEzb,IAAI,oBAIvB,GAHI0b,GACAD,EAAEnM,OAAO,qBAERlK,EAAoBuW,GACrB,OAAOA,EAGf,MAAO,IAEXL,GAAInD,UAAY,SAAUvY,EAAGyN,GACzB,OAAOzN,EAAEuY,UAAU/K,GAAQ,CAAE,mBAAoBC,MAErDiO,GAAIM,SAAW,SAAUhc,GACrB,OAAOA,EAAEiD,KAAKkL,QAAQX,SAAWxN,EAAEiD,KAAKkL,QAAQX,QAAQ,qBCzC5D,IAAIyO,GAA8B,WAC9B,SAASA,IAGL,IADA,IAIInP,EAJAsI,EAAO,GACFrT,EAAK,EAAGA,EAAKC,UAAUC,OAAQF,IACpCqT,EAAKrT,GAAMC,UAAUD,GAMzB,GAHAxB,KAAK0X,SAAW7C,EAAKnT,OAAS,GAAKmT,EAAK,aAAc/I,EAAU+I,EAAK,GAAKhJ,EAC1E7L,KAAK2b,MAAQ9G,EAAKnT,OAAS,GAAKwE,EAAqB2O,EAAK,IACtDA,EAAK,IAAyC,QAAlCtI,EAAKvM,KAAK0X,SAAS7X,IAAI,aAA0B,IAAP0M,OAAgB,EAASA,EAAGqP,uBAAyB,KAC5F,OAAf5b,KAAK2b,MACL,MAAMhK,MAAM,0DAEhB3R,KAAK6b,aAAeC,GAAiB9b,MA2HzC,OAzHA0b,EAAapb,UAAUqN,MAAQ,SAAU5G,EAAK6G,GAC1C,IAAIrB,EAEJ,YADgB,IAAZqB,IAAsBA,EAAU,IAC7BvE,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAIwa,EAAMvN,EAASuO,EAAYO,EAAWC,EAC1C,OAAO5R,EAAYpK,MAAM,SAAUyM,GAC/B,OAAQA,EAAGjC,OACP,KAAK,EAuBD,OAtBAgQ,EAAO,EAAO5M,EAAS,CAAEqO,MAAO,WAAYC,YAAa,gBAAiB,GAG1EnP,EAFAE,EAAU,IAAIe,QAE2C,QAAlCzB,EAAKvM,KAAK0X,SAAS7X,IAAI,aAA0B,IAAP0M,OAAgB,EAASA,EAAGU,SAE7FF,EAAaE,EAASW,EAAQX,SAEzBA,EAAQd,IAAI,WACbc,EAAQE,OAAO,SAAU,oBAExBF,EAAQd,IAAI,iBACbc,EAAQE,OAAO,eAAgB,gDAE9BF,EAAQd,IAAI,+BACbqP,EAAaL,GAAIE,aAAapO,IAC9B8O,EAAY,yBAA2BP,GACzB9Z,OAAS,KACnBqa,EAAYA,EAAUb,OAAO,EAAG,KAEpCjO,EAAQE,OAAO,4BAA6B4O,MAEhDvB,EAAO,EAAOA,EAAM,CAAEvN,QAASA,KACpBzJ,QAAwC,QAA9BgX,EAAKhX,OAAOoP,eAA4B3F,EAAQd,IAAI,oBAAuBc,EAAQd,IAAI,iBAA0B,CAAC,EAAa,GAC7I,CAAC,EAAanM,KAAK6b,aAAab,GAAcjU,KACzD,KAAK,EACDiV,EAASvP,EAAGhC,OACZwC,EAAQE,OAAO,kBAAmB6O,GAClCvP,EAAGjC,MAAQ,EACf,KAAK,EAAG,MAAO,CAAC,EAAcxK,KAAKmc,SAASpV,EAAKyT,YAKjEkB,EAAapb,UAAU6b,SAAW,SAAUpV,EAAK6G,GAC7C,IAAI5B,EAAQhM,UACI,IAAZ4N,IAAsBA,EAAU,IAEpC,IAAIwO,EAAa,IAAIpO,QACrBjB,EAAaqP,EAAYxO,EAAQX,SACjCW,EAAU,EAAOA,EAAS,CAAEX,QAASmP,IACrC,IAAIC,EAAQ,SAAU7C,GAElB,IAAI8C,EAAW,SAAU7I,GACrB,IAAI8I,EACA9I,EAASxG,QAAQd,IAAI,eAErBoQ,EAA4D,IAApDC,SAAS/I,EAASxG,QAAQpN,IAAI,eAAgB,KAItD0c,EAAQ/C,EAAI+C,MAEZ/C,EAAI+C,OAAS,GAEjB/C,EAAIiD,WAEAjD,EAAIkD,YAAclD,EAAIiD,SACtBjD,EAAI5P,OAAO+H,MAAM,yBAA2B6H,EAAIkD,WAAa,oCAAsCjJ,EAASsC,OAAS,KAAOtC,EAASqD,aAIrIhH,WAAWrM,EAAeuI,EAAOqQ,EAAO7C,GAAM+C,IAItDvQ,EAAM2P,MAAMhO,MAAM5G,EAAK6G,GAASzD,MAAK,SAAUsJ,GACnB,MAApBA,EAASsC,OAETuG,EAAS7I,GAGT+F,EAAI7P,QAAQ8J,MAEjB1D,OAAM,SAAU0D,GACS,MAApBA,EAASsC,QAAsC,MAApBtC,EAASsC,OAEpCuG,EAAS7I,GAGT+F,EAAI5P,OAAO6J,OAIvB,OAAO,IAAI/J,SAAQ,SAAUC,EAASC,GAClCyS,EAAM7b,KAAKwL,EAAO,CACdyQ,SAAU,EACVF,MAAO,IACP3S,OAAQA,EACRD,QAASA,EACT+S,WAAY,QAIxBhB,EAAapb,UAAUT,IAAM,SAAUkH,EAAK6G,QACxB,IAAZA,IAAsBA,EAAU,IACpC,IAAI4M,EAAO,EAAO5M,EAAS,CAAEpK,OAAQ,QACrC,OAAOxD,KAAK2N,MAAM5G,EAAKyT,IAE3BkB,EAAapb,UAAUqc,KAAO,SAAU5V,EAAK6G,QACzB,IAAZA,IAAsBA,EAAU,IACpC,IAAI4M,EAAO,EAAO5M,EAAS,CAAEpK,OAAQ,SACrC,OAAOxD,KAAK2N,MAAM5G,EAAKyT,IAE3BkB,EAAapb,UAAUsc,MAAQ,SAAU7V,EAAK6G,QAC1B,IAAZA,IAAsBA,EAAU,IACpC,IAAI4M,EAAO,EAAO5M,EAAS,CAAEpK,OAAQ,UACrC,OAAOxD,KAAK2N,MAAM5G,EAAKyT,IAE3BkB,EAAapb,UAAU6O,OAAS,SAAUpI,EAAK6G,QAC3B,IAAZA,IAAsBA,EAAU,IACpC,IAAI4M,EAAO,EAAO5M,EAAS,CAAEpK,OAAQ,WACrC,OAAOxD,KAAK2N,MAAM5G,EAAKyT,IAEpBkB,EAzIsB,GA6I7BmB,GAAU,IAAI7U,IAClB,SAAS8T,GAAiBxB,GACtB,IAAItO,EAAQhM,KACZ,OAAO,SAAU8c,GAAU,OAAOzT,EAAU2C,OAAO,OAAQ,GAAQ,WAC/D,IAAI+Q,EAAmBhW,EAAKkG,EAAS+P,EAAM9F,EAAQ+F,EAC/C1Q,EAAIE,EACR,OAAOrC,EAAYpK,MAAM,SAAU0M,GAC/B,OAAQA,EAAGlC,OACP,KAAK,EAED,YAAqBrJ,KADrB4b,EAAeF,GAAQhd,IAAIid,KAEjB,IAAI5Y,KACA6Y,EAAa7N,WACZ,CAAC,EAAc6N,EAAanc,QAG3CmG,EAAMlC,EAAQiY,EAAQ,qBACtB7P,EAAU,CACN,OAAU,iCACV,eAAgB,gDAEb,CAAC,EAAaqN,EAAO6B,SAASpV,EAAK,CAClCkV,MAAO,WACPC,YAAa,cACbjP,QAAS,EAAOA,EAAgG,QAAtFR,EAA0C,QAApCF,EAAK+N,EAAO5C,SAAS7X,IAAI,aAA0B,IAAP0M,OAAgB,EAASA,EAAG2Q,UAAuB,IAAPzQ,OAAgB,EAASA,EAAGQ,SAAS,GAC7JzJ,OAAQ,WAEpB,KAAK,EAED,OADAwZ,EAAOtQ,EAAGjC,OACH,CAAC,GAAa,IAAKkL,IAAe1G,MAAM+N,GAAM7S,MAAK,SAAU1J,GAAK,OAAOA,EAAE0c,6BACtF,KAAK,EAOD,OANAjG,EAASxK,EAAGjC,OACZwS,EAAkB,CACd/N,WAAYrL,EAAQ,IAAIK,KAAQ,SAAUgT,EAAOkG,0BACjDxc,MAAOsW,EAAOmG,iBAElBR,GAAQ5b,IAAI6b,EAAQG,GACb,CAAC,EAAcA,EAAgBrc,eC/KnD,SAAS0c,GAAcrC,EAAc7C,GACxC,IAAI7L,EAAIE,EAER,YADgB,IAAZ2L,IAAsBA,EAAUvM,GAC7BxC,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAIud,EAAS3B,EAAoBlY,EAAS8Z,EAAYC,EACtD,OAAOrT,EAAYpK,MAAM,SAAU0M,GAC/B,GAAI5F,EAAcmU,GAEd,MAAO,CAAC,EAAcA,GAI1B,GAFAsC,EAAuC,QAA5BhR,EAAK6L,EAAQvY,IAAI,aAA0B,IAAP0M,OAAgB,EAASA,EAAGgR,QAC3E3B,EAAkD,QAA5BnP,EAAK2L,EAAQvY,IAAI,aAA0B,IAAP4M,OAAgB,EAASA,EAAGmP,oBACjF3W,EAAoBsY,GAErB,MAAO,CAAC,EAAc1Y,EAAQ0Y,EAAStC,IAG3C,GADAvX,EAAU0U,EAAQvY,IAAI,eAElB,MAAO,CAAC,EAAcgF,EAAQnB,EAAQga,YAAYC,IAAIC,YAAa3C,IAMvE,GAAIW,GAEItU,EADJkW,EAAa5B,IACO,WAChB,MAAO,CAAC,EAAc/W,EAAQ2Y,EAAWK,QAAS5C,IAG1D,QAAsC9Z,IAAlC2L,EAAWgR,mBAAkC,CAE7C,GAAIxW,EAAIwF,EAAWgR,mBAAoB,kBACnC,MAAO,CAAC,EAAcjZ,EAAQiI,EAAWgR,mBAAmBC,eAAgB9C,IAE3E,GAAI3T,EAAIwF,EAAWgR,mBAAoB,wBACxC,MAAO,CAAC,EAAcjZ,EAAQiI,EAAWgR,mBAAmBE,qBAAsB/C,IAa1F,YAT4B9Z,IAAxB2L,EAAWmR,WACXR,EAAa3Q,EAAWmR,SAAS9Z,WAAWC,cAC5C,CAAC,aAAc,eAAgB,eAAezC,SAAQ,SAAUkB,GAC5D,IAAIsN,EAAQsN,EAAW7R,QAAQ/I,GAC/B,GAAIsN,EAAQ,EACR,OAAOtL,EAAQ4Y,EAAWvC,OAAO,EAAG/K,GAAQ8K,OAIjD,CAAC,EAAcA,SCpD3B,SAASiD,GAAmCC,GAC/CC,GAAoBpY,EAAOmY,GAAwB,WAAc,OAAOA,GAA0BE,GAEtG,IAAIA,GAAiB,SAAUjG,GAAW,OAAO,WAAc,OAAO,IAAIsD,GAAatD,KACnFgG,GAAoBC,GACpBjE,GAAO,SAAU5W,GACjB,OAAO,SAAU/D,EAAGmO,GAChB,OAAOvE,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAIoY,EAASkG,EAAW5b,EAAMwX,EAAiBnT,EAC/C,OAAOqD,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAOD,OANA4N,EAAU3Y,EAAEkY,aACZ2G,EAAY1D,GAAsBwD,GAAkBhG,GAAxCwC,CAAkDpX,GAC9Dd,EAAOuU,GAAmBxX,EAAEiD,MAC5BwX,EAAkBhU,EAAqBxD,EAAK6P,OAAS7P,EAAK6P,MAAMO,gBAAkB,aAG3E,CAAC,EAAawK,GAAc7d,EAAE8e,gBAAiBnG,IAC1D,KAAK,EAGD,OAFArR,EAAMwF,EAAG9B,OACT2C,EAAa1K,EAAKkL,QAASA,GACpB,CAAC,EAAc0Q,EAAU5e,OAAOyI,OAAO,GAAIzF,EAAM,CAChDwX,gBAAiBA,EACjBnT,IAAKA,eAO1ByX,GAAQ,SAAU/e,EAAGmO,GAa5B,OAPInO,EAAEiD,KAAK4U,uBACP7X,EAAE0Y,aAAa1Y,EAAEiD,KAAKwW,yBAGtBzZ,EAAEgf,gBACFhf,EAAEiD,KAAK+U,YAAa,GAEjB2C,GAAK,MAALA,CAAY3a,EAAGmO,IAEf8Q,GAAS,SAAUjf,EAAGmO,GAAW,OAAOwM,GAAK,OAALA,CAAa3a,EAAGmO,IACxD+Q,GAAW,SAAUlf,EAAGmO,GAAW,OAAOwM,GAAK,SAALA,CAAe3a,EAAGmO,IAC5DgR,GAAU,SAAUnf,EAAGmO,GAAW,OAAOwM,GAAK,QAALA,CAAc3a,EAAGmO,IAC1DiR,GAAe,SAAUpf,EAAGmO,GACnC,IAAI4M,EAAO9a,OAAOyI,OAAO8E,GAAQ,CAAE,gBAAiB,WAAaW,GACjE,OAAO8Q,GAAOjf,EAAG+a,IAEVsE,GAAmB,SAAUrf,EAAGmO,EAASmR,QACnC,IAATA,IAAmBA,EAAO,KAC9B,IAAIvE,EAAO9a,OAAOyI,OAAO8E,GAAQ,CAAE,gBAAiB,SAAU,WAAY8R,IAASnR,GACnF,OAAO8Q,GAAOjf,EAAG+a,ICtDVwE,GAAqB,SAAU/Y,GACtC,OAAOkP,GAAiBlP,IAMxBgZ,GAAsC,SAAUnR,GAShD,SAASmR,EAAqB1B,EAASvY,GACnC,IAAIgH,EAAQhM,KACR+G,EAAM,GACNwQ,EAAY,GACZC,EAAQ,IAAIxP,IAChB,GAAuB,iBAAZuV,EAGP,GAAIzW,EAAcyW,IAAYA,EAAQ2B,YAAY,KAAO,EACrD3H,EAAYgG,EACZxW,EAAMlC,EAAQ0Y,EAASvY,QAEtB,GAAIuY,EAAQ2B,YAAY,KAAO3B,EAAQ2B,YAAY,KAAM,CAE1D,IAAI/O,EAAQoN,EAAQ2B,YAAY,KAChC3H,EAAYgG,EAAQza,MAAM,EAAGqN,GAC7BnL,EAAOH,EAAQ0Y,EAAQza,MAAMqN,GAAQnL,GACrC+B,EAAMlC,EAAQ0S,EAAWvS,QAIrBmL,EAAQoN,EAAQ2B,YAAY,KAChC3H,EAAYgG,EAAQza,MAAM,EAAGqN,GAC7BpJ,EAAMlC,EAAQ0Y,EAASvY,OAG1B,CAED+B,EAAMlC,EADN0S,EAAYgG,EAAQ1F,QACK7S,GAAQ,IACjC,IAAIsB,EAASiX,EAAQ/F,MAAM3X,IAAI,gBAChBsB,IAAXmF,GACAkR,EAAMvW,IAAI,UAAWqF,GAc7B,OAVA0F,EAAQ8B,EAAOtN,KAAKR,KAAM,CACtBuX,UAAWA,EACXC,MAAOA,EACPzQ,IAAKA,KACH/G,KAEiB,iBAAZud,GACPvR,EAAMiM,cAAcsF,GAExBvR,EAAMyS,eAAgB,EACfzS,EAiGX,OAtJAxD,EAAUyW,EAAsBnR,GA0DhCmR,EAAqB3e,UAAUie,cAAgB,WAC3C,IAAIY,EAAgB,IAAInX,IAAIhI,KAAKwX,OAC7BzQ,EAAM/G,KAAK6X,QAAQ3S,QAAQ,sBAAsB,SAAUka,EAAOC,EAAWze,GAG7E,OAFAE,EAAOiB,MAAM,0CAA4Cqd,EAAQ,cAAgBC,EAAY,WAAaze,EAAO,GACjHue,EAAcle,IAAIoe,EAAW,IAAMze,EAAQ,KACpCye,KAEX,GAAIF,EAAclP,KAAO,EAAG,CACxB,IAAIqP,EAAOvY,EAAI6E,QAAQ,MAAQ,EAAI,IAAM,IACzC7E,GAAO,GAAKuY,EAAOha,MAAMgG,KAAK6T,GAAepc,KAAI,SAAU4D,GAAK,OAAOA,EAAE,GAAK,IAAMA,EAAE,MAAOrD,KAAK,KAEtG,OAAOyD,GAOXkY,EAAqB3e,UAAUif,OAAS,WAEpC,IADA,IAAIC,EAAU,GACLhe,EAAK,EAAGA,EAAKC,UAAUC,OAAQF,IACpCge,EAAQhe,GAAMC,UAAUD,GAK5B,OAHIge,EAAQ9d,OAAS,GACjB1B,KAAKwX,MAAMvW,IAAI,UAAWue,EAAQzc,IAAI0c,oBAAoBnc,KAAK,MAE5DtD,MAEXif,EAAqB3e,UAAUT,IAAM,SAAU+N,GAC3C,OAAO4Q,GAAMxe,KAAM4N,IAOvBqR,EAAqB3e,UAAUof,OAAS,WAEpC,IADA,IAAIC,EAAU,GACLne,EAAK,EAAGA,EAAKC,UAAUC,OAAQF,IACpCme,EAAQne,GAAMC,UAAUD,GAK5B,OAHIme,EAAQje,OAAS,GACjB1B,KAAKwX,MAAMvW,IAAI,UAAW0e,EAAQ5c,IAAI0c,oBAAoBnc,KAAK,MAE5DtD,MASXif,EAAqB3e,UAAU0W,MAAQ,SAAUhY,EAAS4gB,EAAgB5G,EAAcC,QAC/D,IAAjBD,IAA2BA,GAAe,QACzB,IAAjBC,IAA2BA,GAAe,GAC9C,IAAIjC,EAAQlJ,EAAOxN,UAAUwY,QAAQtY,KAAKR,KAAMhB,EAAQgB,KAAM4f,GAAiB,CAAE5G,aAAcA,EAAcC,aAAcA,IAE3H,IAAKA,EAAc,CAEf,IAAIpS,EAAI,UACJ7G,KAAKwX,MAAMrL,IAAItF,IACfmQ,EAAMQ,MAAMvW,IAAI4F,EAAG7G,KAAKwX,MAAM3X,IAAIgH,IAG1C,OAAOmQ,GAOXiI,EAAqB3e,UAAU8U,cAAgB,SAAUxH,GACrD,OAAO4Q,GAAMxe,KAAM4N,IAOvBqR,EAAqB3e,UAAUuf,UAAY,SAAU7gB,EAASue,EAASvY,EAAMuN,QACzD,IAAZgL,IAAsBA,EAAUvd,KAAKuX,WACzC,IAAIuI,EAAS9gB,EAAQue,EAASvY,GAAMiT,cAAcjY,MAC9C6G,EAAI,UAOR,OANI7G,KAAKwX,MAAMrL,IAAItF,IACfiZ,EAAOtI,MAAMvW,IAAI4F,EAAG7G,KAAKwX,MAAM3X,IAAIgH,SAEzB1F,IAAVoR,IACAuN,EAASA,EAAOnH,QAAQpG,IAErBuN,GAEJb,EAvJ8B,CAwJvC9H,IAES4I,GAAsBf,GAAmBC,IAKhDe,GAAgD,SAAUlS,GAE1D,SAASkS,IACL,OAAkB,OAAXlS,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KA2C/D,OA7CAwI,EAAUwX,EAAgClS,GAS1CkS,EAA+B1f,UAAUyE,OAAS,SAAUA,GAExD,OADA/E,KAAKwX,MAAMvW,IAAI,UAAWwe,mBAAmB1a,IACtC/E,MAQXggB,EAA+B1f,UAAU2f,QAAU,SAAUA,EAASC,QAChD,IAAdA,IAAwBA,GAAY,GACxC,IAAIzgB,EAAI,WACJ+X,EAAQxX,KAAKwX,MAAMrL,IAAI1M,GAAKO,KAAKwX,MAAM3X,IAAIJ,GAAG0gB,MAAM,KAAO,GAG/D,OAFA3I,EAAM5U,KAAK6c,mBAAmBQ,GAAW,KAAOC,EAAY,MAAQ,SACpElgB,KAAKwX,MAAMvW,IAAIxB,EAAG+X,EAAMlU,KAAK,MACtBtD,MAOXggB,EAA+B1f,UAAU8f,KAAO,SAAUA,GAEtD,OADApgB,KAAKwX,MAAMvW,IAAI,QAASmf,EAAKjc,YACtBnE,MAOXggB,EAA+B1f,UAAU+f,IAAM,SAAUA,GAErD,OADArgB,KAAKwX,MAAMvW,IAAI,OAAQof,EAAIlc,YACpBnE,MAEJggB,EA9CwC,CA+CjDf,IAESqB,GAAgCtB,GAAmBgB,IAK1DO,GAA8C,SAAUzS,GAExD,SAASyS,IACL,OAAkB,OAAXzS,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAiB/D,OAnBAwI,EAAU+X,EAA8BzS,GAUxCyS,EAA6BjgB,UAAUkgB,QAAU,SAAUzF,EAAM0F,GAC7D,IAAIzU,EAAQhM,KACZ,OAAO,SAAU0gB,GAAS,OAAOhC,GAAOvD,GAAInD,UAAUhM,EAAO+O,EAAO,WAAY,CAC5E1Q,KAAMhD,EAAI,EAAOyT,GAASC,GAAO2F,IACjCzT,QAAS,CACL,gBAAiB,WAEtB9C,MAAK,SAAUtE,GAAK,OAAO4a,EAAO5a,EAAG6a,QAErCH,EApBsC,CAqB/CtB,IAES0B,GAA8B3B,GAAmBuB,IAIrD,SAASK,GAAW/Z,GACvB,OAAO,WACH,OAAOgY,GAAa1D,GAAInD,UAAUhY,KAAM6G,EAAI,aAG7C,SAASga,GAAmBha,GAC/B,OAAO,SAAUkY,GAEb,YADa,IAATA,IAAmBA,EAAO,KACvBD,GAAiB3D,GAAInD,UAAUhY,KAAM6G,EAAI,WAAY,GAAIkY,IC7PjE,SAAS+B,GAAY9b,GAExB,OAAO,SAAUsB,GACb,OAAsB,SAAUwH,GAE5B,SAASiT,IAEL,IADA,IAAIlM,EAAO,GACFrT,EAAK,EAAGA,EAAKC,UAAUC,OAAQF,IACpCqT,EAAKrT,GAAMC,UAAUD,GAEzB,OAAOsM,EAAOtN,KAAKR,KAAM6U,EAAK,GAAIA,EAAKnT,OAAS,QAAiBP,IAAZ0T,EAAK,GAAmBA,EAAK,GAAK7P,IAAShF,KAEpG,OARAwI,EAAUuY,EAASjT,GAQZiT,EATU,CAUnBza,ICjBH,SAAS0a,GAAaC,GACzB,IAAIC,EAAQ,GACRre,EAAI,CAAC,aAAc,iBAAkB,aAAc,iBAAkB,YACzE,GAAIyE,EAAI2Z,EAAWpe,EAAE,KAA2B,WAApBoe,EAAUpe,EAAE,IAEhCyE,EAAI2Z,EAAWpe,EAAE,IACjBqe,EAAMte,KAAKqe,EAAUpe,EAAE,KAElByE,EAAI2Z,EAAWpe,EAAE,KAEtBqe,EAAMte,KAAKqe,EAAUE,WAAWC,UAIpC,GAAI9Z,EAAI2Z,EAAWpe,EAAE,KAAOyE,EAAI2Z,EAAWpe,EAAE,IAAK,CAI9C,IAAIwe,EAAWva,EAAcma,EAAUpe,EAAE,KAAOoe,EAAUpe,EAAE,IAAIsd,MAAM,QAAQ,GAAKc,EAAUpe,EAAE,IAC/Fqe,EAAMte,KAAKoY,GAAciG,EAAUpe,EAAE,KAAM,OAAQwe,QAE9C/Z,EAAI2Z,EAAWpe,EAAE,IACtBqe,EAAMte,KAAK,OAAQqe,EAAUpe,EAAE,KAE1ByE,EAAI2Z,EAAWpe,EAAE,KAEtBqe,EAAMte,KAAKqe,EAAUE,WAAWC,KAGxC,OAAIF,EAAMxf,OAAS,GACfZ,EAAOiB,MAAM,uFAAwF,GAC9F,IAEJ8C,EAAQjB,WAAM,EAAQwH,EAAc,GAAIF,EAAOgW,KAE1D,IAAII,GAAyC,SAAUxT,GAEnD,SAASwT,EAAwBtiB,GAC7B,IAAIgN,EAAQ8B,EAAOtN,KAAKR,OAASA,KAMjC,OALAgM,EAAMhN,QAAUA,EAChBgN,EAAMmO,QAAU,SAAUtU,GAEtB,OAAO,EADCmG,EAAMhN,QAAQgiB,GAAanb,GAAI,MACtBA,IAEdmG,EASX,OAjBAxD,EAAU8Y,EAAyBxT,GAUnCwT,EAAwBhhB,UAAU2O,MAAQ,SAAUxO,GAChD,IAAIuL,EAAQhM,KACZ,OAAO8N,EAAOxN,UAAU2O,MAAMzO,KAAKR,KAAMS,GAAG0J,MAAK,SAAUtE,GAEvD,OAAO,EADCmG,EAAMhN,QAAQgiB,GAAanb,GAAI,MACtBA,OAGlByb,EAlBiC,CAmB1C3L,IACE4L,GAA8C,SAAUzT,GAExD,SAASyT,EAA6BviB,GAClC,IAAIgN,EAAQ8B,EAAOtN,KAAKR,OAASA,KAQjC,OAPAgM,EAAMhN,QAAUA,EAChBgN,EAAMmO,QAAU,SAAUtU,GACtB,OAAOA,EAAE9C,KAAI,SAAU4D,GAEnB,OAAO,EADCqF,EAAMhN,QAAQgiB,GAAara,GAAI,MACtBA,OAGlBqF,EAWX,OArBAxD,EAAU+Y,EAA8BzT,GAYxCyT,EAA6BjhB,UAAU2O,MAAQ,SAAUxO,GACrD,IAAIuL,EAAQhM,KACZ,OAAO8N,EAAOxN,UAAU2O,MAAMzO,KAAKR,KAAMS,GAAG0J,MAAK,SAAUtE,GACvD,OAAOA,EAAE9C,KAAI,SAAU4D,GAEnB,OAAO,EADCqF,EAAMhN,QAAQgiB,GAAara,GAAI,MACtBA,UAItB4a,EAtBsC,CAuB/C5L,IACK,SAAS6L,GAAcxiB,GAC1B,OAAO,IAAIsiB,GAAwBtiB,GAEhC,SAASyiB,GAAmBziB,GAC/B,OAAO,IAAIuiB,GAA6BviB,GC/E5C,IAAI0iB,GAAyB,SAAU5T,GAEnC,SAAS4T,EAAQ3a,EAAKqR,QACF,IAAZA,IAAsBA,EAAUvM,GACpC,IAAIG,EAAQ8B,EAAOtN,KAAKR,OAASA,KAGjC,OAFAgM,EAAMjF,IAAMA,EACZiF,EAAMoM,QAAUA,EACTpM,EA4MX,OAlNAxD,EAAUkZ,EAAS5T,GAanB4T,EAAQC,cAAgB,SAAUtX,GAS9B,IARA,IAMI0L,EACAe,EAPA8K,EAAY,GACZC,EAAS,mBAETC,EAAe,IAAIC,OAAO,gCAAiC,KAC3DC,EAAQ3X,EAAK8V,MAAM,MACnB8B,EAAQ,QAGH1c,EAAI,EAAGA,EAAIyc,EAAMtgB,SAAU6D,EAAG,CACnC,IAAI2c,EAAOF,EAAMzc,GACjB,OAAQ0c,GACJ,IAAK,QACD,GAAIC,EAAKhH,OAAO,EAAG2G,EAAOngB,UAAYmgB,EAClCI,EAAQ,oBAGR,GAAoB,KAAhBC,EAAKC,OACL,MAAMxQ,MAAM,0BAA4BpM,GAGhD,MACJ,IAAK,eACmB,KAAhB2c,EAAKC,SACLF,EAAQ,UAEZ,MACJ,IAAK,SACD,IAAIf,EAAQY,EAAa1a,KAAK8a,GAC9B,GAAqB,IAAjBhB,EAAMxf,OACN,MAAMiQ,MAAM,wBAA0BpM,GAE1CwQ,EAASyG,SAAS0E,EAAM,GAAI,IAC5BpK,EAAaoK,EAAM,GACnBe,EAAQ,gBACR,MAEJ,IAAK,gBACmB,KAAhBC,EAAKC,SACLF,EAAQ,QAEZ,MACJ,IAAK,OACDL,EAAUhf,KAAiB,MAAXmT,EAAkB,IAAIqM,SAAa,IAAIA,SAASF,EAAM,CAAEnM,OAAQA,EAAQe,WAAYA,KACpGmL,EAAQ,SAIpB,GAAc,WAAVA,EACA,MAAMtQ,MAAM,2BAEhB,OAAOiQ,GAEXF,EAAQphB,UAAU6S,YAAc,WAC5B,IAAI5G,EACJ,OAAOlD,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAIsa,EAAQ+H,EAAoBC,EAAWC,EAAoBhd,EAAGid,EAASvV,EAASlG,EAAKvD,EAAQif,EAAaC,EAAcC,EAAetd,EAAMuc,EAC7I5V,EAAQhM,KACZ,OAAOoK,EAAYpK,MAAM,SAAUyM,GAC/B,OAAQA,EAAGjC,OACP,KAAK,EAID,OAHA1J,EAAOiB,MAAM,IAAM/B,KAAKqa,QAAU,OAAQ,IAAKnW,MAAQU,UAAY,0BAA4B5E,KAAK4iB,SAASlhB,OAAS,aAAc,GAGhI1B,KAAK4iB,SAASlhB,OAAS,GACvBZ,EAAOiB,MAAM,yBAA0B,GAChC,CAAC,KAEZuY,EAAS,IAAIoB,GAAa1b,KAAKoY,SACxB,CAAC,EAAakF,GAActd,KAAK+G,IAAK/G,KAAKoY,WACtD,KAAK,EAID,IAHAiK,EAAqB5V,EAAGhC,OACxB6X,EAAY,GACZC,EAAqB,GAChBhd,EAAI,EAAGA,EAAIvF,KAAK4iB,SAASlhB,OAAQ6D,IAEX,SADvBid,EAAUxiB,KAAK4iB,SAASrd,IACZ/B,QACJ+e,EAAmB7gB,OAAS,IAE5B4gB,EAAU1f,KAAK,eAAiB2f,EAAqB,UACrDA,EAAqB,IAEzBD,EAAU1f,KAAK,WAAa5C,KAAKqa,QAAU,QAGvCkI,EAAmB7gB,OAAS,IAE5B6gB,EAAqB3c,IACrB0c,EAAU1f,KAAK,WAAa5C,KAAKqa,QAAU,MAC3CiI,EAAU1f,KAAK,sDAAyD2f,EAAqB,UAEjGD,EAAU1f,KAAK,eAAiB2f,EAAqB,OAGzDD,EAAU1f,KAAK,oCACf0f,EAAU1f,KAAK,yCACfqK,EAAU,IAAIe,QACdjH,EAAMD,EAAc0b,EAAQzb,KAAOyb,EAAQzb,IAAMlC,EAAQwd,EAAoBG,EAAQzb,KACrFjG,EAAOiB,MAAM,IAAM/B,KAAKqa,QAAU,OAAQ,IAAKnW,MAAQU,UAAY,oBAAsB4d,EAAQhf,OAAS,IAAMuD,EAAM,aAAc,GAC7G,QAAnByb,EAAQhf,QACRA,EAASgf,EAAQhf,OACjBif,EAAcD,EAAQ5U,QAAQX,QAC1B3F,EAAIkb,EAAS,YAAclb,EAAIkb,EAAQ5U,QAAS,iBAA+CzM,IAAjCshB,EAAY,mBAC1Ejf,EAASif,EAAY,wBACdA,EAAY,kBAEvBH,EAAU1f,KAAKY,EAAS,IAAMuD,EAAM,eACpCkG,EAAQhM,IAAI,eAAgB,iDAG5BqhB,EAAU1f,KAAK4f,EAAQhf,OAAS,IAAMuD,EAAM,eAGhDgG,EAAaE,EAA2C,QAAjCV,EAAKvM,KAAKoY,QAAQvY,IAAI,aAA0B,IAAP0M,OAAgB,EAASA,EAAGU,SAExFuV,EAAQ5U,SACRb,EAAaE,EAASuV,EAAQ5U,QAAQX,SAGrCA,EAAQd,IAAI,WACbc,EAAQE,OAAO,SAAU,oBAExBF,EAAQd,IAAI,iBACbc,EAAQE,OAAO,eAAgB,gDAE9BF,EAAQd,IAAI,8BACbc,EAAQE,OAAO,4BAA6B,oCAGhDF,EAAQtL,SAAQ,SAAUf,EAAOsM,GAC7BoV,EAAU1f,KAAKsK,EAAO,KAAOtM,EAAQ,SAEzC0hB,EAAU1f,KAAK,MACX4f,EAAQ5U,QAAQvD,MAChBiY,EAAU1f,KAAK4f,EAAQ5U,QAAQvD,KAAO,QAiB9C,OAdIkY,EAAmB7gB,OAAS,IAE5B4gB,EAAU1f,KAAK,eAAiB2f,EAAqB,UACrDA,EAAqB,IAEzBD,EAAU1f,KAAK,WAAa5C,KAAKqa,QAAU,QAC3CqI,EAAe,CACX,KAAQJ,EAAUhf,KAAK,IACvB,QAAW,CACP,eAAgB,mCAAqCtD,KAAKqa,SAE9D,OAAU,QAEdvZ,EAAOiB,MAAM,IAAM/B,KAAKqa,QAAU,OAAQ,IAAKnW,MAAQU,UAAY,2BAA4B,GACxF,CAAC,EAAa0V,EAAO3M,MAAM9I,EAAQwd,EAAoB,gBAAiBK,IACnF,KAAK,EAED,OADAC,EAAgBlW,EAAGhC,QACCyL,GAAW,CAAC,EAAa,GACtC,CAAC,EAAaC,GAAiBC,KAAKuM,IAC/C,KAAK,EAGL,MAAOlW,EAAGhC,OACV,KAAK,EAAG,MAAO,CAAC,EAAakY,EAAc3L,QAAQ3R,QACnD,KAAK,EAGD,GAFAA,EAAOoH,EAAGhC,QACVmX,EAAYF,EAAQC,cAActc,IACpB3D,SAAW1B,KAAK4iB,SAASlhB,OACnC,MAAMiQ,MAAM,kEAKhB,OAHA7Q,EAAOiB,MAAM,IAAM/B,KAAKqa,QAAU,OAAQ,IAAKnW,MAAQU,UAAY,gCAAiC,GAG7F,CAAC,EAAcgd,EAAUhb,QAAO,SAAUW,EAAGkM,EAAUtD,GAAS,OAAO5I,EAAE4C,MAAK,WAAc,OAAOd,EAAU2C,OAAO,OAAQ,GAAQ,WACnI,IAAI6W,EAAStW,EAAIE,EAAIH,EACrB,OAAOlC,EAAYpK,MAAM,SAAU0M,GAC/B,OAAQA,EAAGlC,OACP,KAAK,EACDqY,EAAU7iB,KAAK4iB,SAASzS,GACxBrP,EAAOiB,MAAM,IAAM8gB,EAAQnQ,GAAK,OAAQ,IAAKxO,MAAQU,UAAY,gCAAkC5E,KAAKqa,QAAU,IAAK,GACvH3N,EAAGlC,MAAQ,EACf,KAAK,EAGD,OAFAkC,EAAGhC,KAAK9H,KAAK,CAAC,EAAG,EAAG,CAAE,IACtB6J,GAAMF,EAAKsW,GAASlZ,QACb,CAAC,EAAakZ,EAAQhQ,OAAO5D,MAAMwE,IAC9C,KAAK,EAED,OADAhH,EAAG7I,MAAM2I,EAAI,CAACG,EAAGjC,SACV,CAAC,EAAa,GACzB,KAAK,EAGD,OAFA6B,EAAMI,EAAGjC,OACToY,EAAQjZ,OAAO0C,GACR,CAAC,EAAa,GACzB,KAAK,EAAG,MAAO,CAAC,eAGjB5C,QAAQC,aAAQ,aAK5C+X,EAnNiB,CAoN1B9P,IC5NSkR,GAAY,uCAQhB,SAAS,GAAM1W,EAAQgM,QACV,IAAZA,IAAsBA,EAAUvM,GACpCuM,EAAQjQ,OAAOiE,GATnBV,GAAgB,SAAU0M,GACtB,IAAI2K,EAAW3K,EAAQvY,IAAI,MACvBmjB,EAAStjB,OAAOyI,OAAO,GAAI,CAC3ByT,mBAAoB,WAAc,OAAO,IAAIlO,IAC9CqV,GACH3K,EAAQjQ,OAAO,CAAE+U,GAAI8F,OCDzB,IAAIC,GAAwB,WAOxB,SAASA,EAAOC,EAAUC,EAAUzL,QACf,IAAbwL,IAAuBA,EAAW,SACrB,IAAbC,IAAuBA,EAAW,SACrB,IAAbzL,IAAuBA,EAAW7L,GACtC7L,KAAKkjB,SAAWA,EAChBljB,KAAKmjB,SAAWA,EAChBnjB,KAAK0X,SAAWA,EAiDpB,OAxCAuL,EAAO3iB,UAAU0X,UAAY,SAAUpK,EAAS2P,GAE5C,YADgB,IAAZA,IAAsBA,EAAU,IAC7B,IAAI0F,EAAOrV,EAAS2P,IAO/B0F,EAAO3iB,UAAU8iB,MAAQ,SAAUhX,GAC3BA,EAAOsR,YACP,GAAO,CACH2F,YAAajX,GACdpM,KAAK0X,UAGR,GAAOtL,EAAQpM,KAAK0X,WAG5BuL,EAAO3iB,UAAUgjB,eAAiB,SAAUlN,GACxC,OAAO/M,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAIud,EAASgG,EAAa3V,EAASxB,EAAQgM,EAC3C,OAAOhO,EAAYpK,MAAM,SAAUuM,GAW/B,OATA6J,EAAO1W,OAAOyI,OAAO,CACjBoV,QAAS,GACTgG,aAAa,EACbnX,OAAQ,GACRwB,QAAS,IACVwI,GAAQ,IACXmH,EAAUnH,EAAKmH,QAASgG,EAAcnN,EAAKmN,YAAa3V,EAAUwI,EAAKxI,QAASxB,EAASgK,EAAKhK,QAC9FgM,EAAUmL,EAAc,IAAIzX,EAAQD,EAAeQ,UAAY,IAAIP,GAC3D3D,OAAOiE,GACR,CAAC,EAAc,IAAI6W,EAAOrV,EAAS2P,EAASnF,WAI/D6K,EAAO3iB,UAAUkjB,gBAAkB,SAAUC,GACzC,OAAOA,EAAS,CAAE7V,QAAS5N,KAAKkjB,SAAU3F,QAASvd,KAAKmjB,SAAU/K,QAASpY,KAAK0X,YAE7EuL,EA9DgB,GCJpB,SAASS,GAAoB9iB,GAChC,OAAIqE,EAAoBrE,GACb,GAGP,mBAAmBoG,KAAKpG,GAGjBA,EAAMsE,QAAQ,oBAAoB,SAAUka,EAAOC,EAAW1Y,GAEjE,OADA7F,EAAOiB,MAAM,0CAA4Cqd,EAAQ,cAAgBC,EAAY,WAAa1Y,EAAG,GACtG,IAAM0Y,EAAY,KAAOI,mBAAmB9Y,EAAEzB,QAAQ,MAAO,UAIjEua,mBAAmB7e,EAAMsE,QAAQ,MAAO,ODuDvC,IAAI+d,GEzDpB,IAAIU,GAAuB,SAAU7V,GAEjC,SAAS6V,IACL,OAAkB,OAAX7V,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KA4S/D,OA9SAwI,EAAUmb,EAAO7V,GAIjBpO,OAAOC,eAAegkB,EAAMrjB,UAAW,UAAW,CAK9CT,IAAK,WACD,OAAOsb,GAAInD,UAAU4L,GAAI5jB,KAAM,WAAWiY,cAAcjY,MAAO,eAEnEJ,YAAY,EACZsB,cAAc,IAOlByiB,EAAMrjB,UAAUujB,WAAa,SAAUrM,GACnC,IAAIsM,EAAWzZ,GAAK,CAAE,MAAS,EAAOyQ,GAAS,kBAAmBtD,KAClE,OAAOkH,GAAO1e,KAAKgX,MAAM4M,GAAK,cAAeE,IAOjDH,EAAMrjB,UAAUyjB,YAAc,SAAUC,GACpC,OAAO3a,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAI0C,EACJ,OAAO0H,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAAG,MAAO,CAAC,EAAakU,GAAO1e,KAAKgX,MAAMiN,GAAM,gBAAkBD,EAAQ,QAC/E,KAAK,EAED,MAAO,CAAC,EAAc,CACdthB,KAFRA,EAAO6J,EAAG9B,OAGFkT,IAAKiG,GAAI5I,GAAcgG,GAAate,KAAQuV,cAAcjY,gBAUtF2jB,EAAMrjB,UAAU4jB,WAAa,WACzB,OAAO7a,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAI2d,EACJ,OAAOvT,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAAG,MAAO,CAAC,EAAaxK,KAAKmkB,QAAQ5E,OAAO,MAApBvf,IAC7B,KAAK,EAED,OADA2d,EAAMpR,EAAG9B,OACF,CAAC,EAAc0Q,GAAInD,UAAU4L,GAAIjG,EAAIyG,KAAKnM,cAAcjY,MAAO,0BAQ1F2jB,EAAMrjB,UAAU+jB,eAAiB,WAC7B,OAAOhb,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAIskB,EAAMC,EAAG7hB,EAAM+P,EACnB,OAAOrI,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAGD,OAFA8Z,EAAOL,GAAKjkB,KAAKuX,UAAW,oBAAoBU,cAAcjY,MAC9DukB,EAAIpJ,GAAInD,UAAUsM,EAAM,qBACjB,CAAC,EAAa5F,GAAO6F,IAChC,KAAK,EAED,OAAIjd,EADJ5E,EAAO6J,EAAG9B,OACI,8BACVgI,EAAO/P,EAAKya,0BACPqH,wBAA0B/R,EAAK+R,wBAAwBnO,QACrD,CAAC,EAAc5D,IAGf,CAAC,EAAc/P,WAO9CihB,EAAMrjB,UAAUmkB,YAAc,WAC1B,OAAO,IAAI/C,GAAQ1hB,KAAKuX,UAAWvX,KAAK2X,eAM5CgM,EAAMrjB,UAAU6O,OAAS,WACrB,OAAO9F,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAIskB,EAAMC,EACV,OAAOna,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAAG,MAAO,CAAC,EAAaxK,KAAKgX,MAAMiN,GAAM,IAAI1E,OAAO,KAA5Bvf,IAC7B,KAAK,EAGD,OAFAskB,EAAO/X,EAAG9B,OACV8Z,EAAIpJ,GAAInD,UAAUiM,GAAKjkB,KAAKuX,UAAW,6BAA8B,aAC9D,CAAC,EAAamH,GAAO6F,EAAGla,GAAK,CAAEqa,OAAQJ,EAAKK,OACvD,KAAK,EAED,OADApY,EAAG9B,OACI,CAAC,WAU5BkZ,EAAMrjB,UAAUskB,qBAAuB,SAAUC,GAC7C,OAAOxb,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAIukB,EAAG7hB,EACP,OAAO0H,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAGD,OAFA+Z,EAAIpJ,GAAInD,UAAU+H,GAAoB,GAAI,wCAAyC,4BACjFvI,MAAMvW,IAAI,KAAM,IAAMyiB,GAAoBmB,GAAkB,KACvD,CAAC,EAAaN,KACzB,KAAK,EAED,MAAO,CAAC,EAAcjd,EADtB5E,EAAO6J,EAAG9B,OACsB,wBAA0B/H,EAAKoiB,qBAAuBpiB,WAU1GihB,EAAMrjB,UAAUykB,qBAAuB,SAAUC,GAC7C,OAAO3b,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAIukB,EAAG7hB,EACP,OAAO0H,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAGD,OAFA+Z,EAAIpJ,GAAInD,UAAU+H,GAAoB,GAAI,wCAAyC,4BACjFvI,MAAMvW,IAAI,KAAM,IAAMyiB,GAAoBsB,GAAmB,KACxD,CAAC,EAAaT,KACzB,KAAK,EAED,MAAO,CAAC,EAAcjd,EADtB5E,EAAO6J,EAAG9B,OACsB,wBAA0B/H,EAAKuiB,qBAAuBviB,WAsB1GihB,EAAMrjB,UAAU4kB,wBAA0B,SAAUC,EAAOC,EAAMC,EAAqBte,EAAKue,EAAaC,EAAgBC,EAAcC,EAAWC,GAG7I,YAFa,IAATN,IAAmBA,EAAO,WACF,IAAxBC,IAAkCA,GAAsB,GACrDhc,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,OAAOoK,EAAYpK,MAAM,SAAUuM,GAC/B,MAAO,CAAC,EAAcvM,KAAK2lB,iCAAiC,CACpDC,eAAgBL,EAChBM,YAAaP,EACbQ,UAAWL,EACXM,KAAMX,EACNY,MAAON,EACPO,oBAAqBZ,EACrBa,aAAcV,EACdW,MAAOhB,EACPf,IAAKrd,YAKzB4c,EAAMrjB,UAAUqlB,iCAAmC,SAAUjF,GACzD,OAAOrX,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAIuH,EAAGuc,EACP,OAAO1Z,EAAYpK,MAAM,SAAUuM,GAc/B,OAbAhF,EAAI7H,OAAOyI,OAAO,GAAI,CAClByd,eAAgB,GAChBC,YAAa,GACbC,UAAWhD,GACXiD,KAAM,KACNE,qBAAqB,EACrBC,aAAcpD,GACdsD,YAAa,uBACbC,uBAAwBvD,IACzBpC,GACHoD,EAAWzZ,GAAK,CACZ,QAAW,EAAOyQ,GAAS,qDAAsDvT,KAE9E,CAAC,EAAcmX,GAAOuF,GAAKjJ,GAAchb,KAAK6X,SAAU,8BAA+BiM,WAQ1GH,EAAMrjB,UAAUgmB,OAAS,SAAUvf,GAC/B,OAAOsC,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAI8jB,EACJ,OAAO1Z,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAED,OADAsZ,EAAWzZ,GAAK,CAAEtD,IAAKA,IAChB,CAAC,EAAa2X,GAAOuF,GAAKjJ,GAAchb,KAAK6X,SAAU,wBAAyBiM,IAC3F,KAAK,EAED,MAAO,CAAC,EADAvX,EAAG9B,gBAiB/BkZ,EAAMrjB,UAAUimB,qBAAuB,SAAUC,EAAaC,EAAOC,EAAUtB,EAAME,EAAaC,EAAgBoB,EAAQlB,EAAWD,GACjI,OAAOnc,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,OAAOoK,EAAYpK,MAAM,SAAUuM,GAC/B,MAAO,CAAC,EAAcvM,KAAK4mB,8BAA8B,CACjDH,MAAOA,EACPlB,eAAgBA,EAChBD,YAAaA,EACbkB,YAAaA,EACbf,UAAWA,EACXiB,SAAUA,EACVtB,KAAMA,EACNuB,OAAQA,EACRnB,aAAcA,YAKlC7B,EAAMrjB,UAAUsmB,8BAAgC,SAAUlG,GACtD,OAAOrX,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAIuH,EAAGuc,EACP,OAAO1Z,EAAYpK,MAAM,SAAUuM,GA2B/B,OA1BAhF,EAAI7H,OAAOyI,OAAO,GAAI,CAClBod,eAAgB,GAChBD,YAAa,GACbG,UAAW3C,GACX4D,UAAU,EACVtB,KAAM,KACNuB,OAAQ,IACTjG,GACHoD,EAAW,CACP2C,MAAOlf,EAAEkf,MACTD,YAAajf,EAAEif,YACfE,SAAUnf,EAAEmf,SACZG,eAAgB,CACZjB,eAAgBre,EAAEge,eAClBuB,gBAAiB,CACb,QAAW,CAAC,kBAAoBvf,EAAE6d,KAAM,aAAe7d,EAAEke,YAE7DI,YAAate,EAAE+d,YACfyB,OAAQ,CACJ,QAAWxf,EAAEof,UAIrBpf,EAAEie,cACF1B,EAAS+C,eAAeC,gBAAgBzQ,QAAQzT,KAAK,qDAAuD2E,EAAEie,cAE3G,CAAC,EAAc9G,GAAOuF,GAAKjJ,GAAchb,KAAK6X,SAAU,wCAAyCxN,GAAKyZ,YAIzH/a,EAAW,CACPoS,GAAI,kBACLwI,EAAMrjB,UAAW,aAAc,MAClCyI,EAAW,CACPoS,GAAI,mBACLwI,EAAMrjB,UAAW,cAAe,MAC3ByI,EAAW,CACf+X,GAAY,cACb6C,GA9SmB,CAgTxBpD,IAES0D,GAAOjF,GAAmB2E,IC7TrCxa,QAAQxJ,eAAesjB,GAAO3iB,UAAW,OAAQ,CAC7CY,cAAc,EACdtB,YAAY,EACZC,IAAK,WACD,OAAOG,KAAKwjB,iBAAgB,SAAUjX,GAClC,IAAIqB,EAAUrB,EAAGqB,QAAS2P,EAAUhR,EAAGgR,QAASnF,EAAU7L,EAAG6L,QAC7D,OAAO6L,GAAK1G,GAASvF,UAAUpK,GAASgK,WAAWQ,SCG/D,IAAI4O,GAAuB,SAAUlZ,GAEjC,SAASkZ,IACL,OAAkB,OAAXlZ,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAiD/D,OAnDAwI,EAAUwe,EAAOlZ,GAcjBkZ,EAAM1mB,UAAUqQ,IAAM,SAAUwU,EAAOpe,EAAKue,EAAa2B,EAAUC,EAAUC,GAKzE,YAJoB,IAAhB7B,IAA0BA,EAAc,SAC3B,IAAb2B,IAAuBA,EAAW,YACrB,IAAbC,IAAuBA,EAAW,WACX,IAAvBC,IAAiCA,GAAqB,GACnD9d,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAI8jB,EAAUphB,EACd,OAAO0H,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAWD,OAVAsZ,EAAWzZ,GAAK,CACZ,WAAc,EAAOyQ,GAAS,6BAA8B,CACxD+K,YAAaP,EACb8B,SAAUF,EACVf,MAAOhB,EACPf,IAAKrd,EACLsgB,+BAAgCF,EAChCf,YAAaa,MAGd,CAAC,EAAavI,GAAO1e,KAAKgX,MAAMsQ,GAAM,OAAQxD,IACzD,KAAK,EAED,MAAO,CAAC,EAAc,CACdphB,KAFRA,EAAO6J,EAAG9B,OAGFkT,IAAKiG,GAAI5C,GAAate,GAAMwC,QAAQ,gBAAiB,KAAK+S,cAAcjY,gBAMpG+I,EAAW,CACPoS,GAAI,WACL6L,EAAM1mB,UAAW,MAAO,MACnByI,EAAW,CACf+X,GAAY,SACbkG,GAnDmB,CAqDxBhH,IAESsH,GAAOtI,GAAmBgI,IAKjCO,GAAsB,SAAUzZ,GAEhC,SAASyZ,IACL,IAAIvb,EAAmB,OAAX8B,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAEhE,OADAgM,EAAMmD,OAASyR,GAAW,KACnB5U,EAsNX,OA1NAxD,EAAU+e,EAAMzZ,GAMhBpO,OAAOC,eAAe4nB,EAAKjnB,UAAW,OAAQ,CAK1CT,IAAK,WACD,OAAOynB,GAAKtnB,OAEhBJ,YAAY,EACZsB,cAAc,IAElBxB,OAAOC,eAAe4nB,EAAKjnB,UAAW,gBAAiB,CAInDT,IAAK,WACD,OAAOsb,GAAInD,UAAUhY,KAAKgX,MAAM2J,GAA6B,iBAAkB,eAEnF/gB,YAAY,EACZsB,cAAc,IAElBxB,OAAOC,eAAe4nB,EAAKjnB,UAAW,WAAY,CAK9CT,IAAK,WACD,OAAOsb,GAAInD,UAAUsI,GAA8BtgB,KAAM,YAAa,eAE1EJ,YAAY,EACZsB,cAAc,IAMlBqmB,EAAKjnB,UAAUknB,aAAe,WAC1B,OAAOne,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAIynB,EACJ,OAAOrd,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAAG,MAAO,CAAC,EAAagU,GAAMxe,KAAKuf,OAAO,gBAAgBG,OAAO,eACtE,KAAK,EAED,MAAO,CAAC,GAAe+H,OADvBA,EAAalb,EAAG9B,OAAQgd,gBAC4C,EAASA,EAAU9C,IAAMV,GAAKjkB,KAAKuX,WAAWwM,YAAY0D,EAAU9C,IAAM,cAUlK4C,EAAKjnB,UAAUonB,OAAS,SAAUC,GAC9B,OAAOte,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAI8jB,EACJ,OAAO1Z,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAED,OADAsZ,EAAWzZ,GAAK,EAAOyQ,GAAS,UAAW6M,GAAa1a,GAAQ,CAAE,gBAAiB,WAC5E,CAAC,EAAayR,GAAO1e,KAAM8jB,IACtC,KAAK,EAED,MAAO,CAAC,EAAc,CAAEphB,KADjB6J,EAAG9B,OAC0BkT,IAAK3d,eAa7DunB,EAAKjnB,UAAUsnB,WAAa,SAAUC,EAAiBC,EAAeC,EAAoBC,GACtF,IAAIlE,EAAWzZ,GAAK,CAChB0d,mBAAoBA,EACpBF,gBAAiBA,EACjBC,cAAeA,EACfE,eAAgBA,IAEpB,OAAOtJ,GAAO1e,KAAKgX,MAAM4M,GAAK,cAAeE,IAOjDyD,EAAKjnB,UAAU2nB,iBAAmB,SAAUhB,GACxC,IAAI1C,EAAIvkB,KAAKgX,MAAM4M,GAAK,oBAExB,OADAW,EAAEzM,OAAO,iBAAmB4L,GAAoBuD,GAAY,MACrDvI,GAAO6F,IAOlBgD,EAAKjnB,UAAUujB,WAAa,SAAUrM,GAClC,IAAIsM,EAAWzZ,GAAK,CAAE,MAAS,EAAOyQ,GAAS,kBAAmBtD,KAClE,OAAOkH,GAAO1e,KAAKgX,MAAM4M,GAAK,cAAeE,IASjDyD,EAAKjnB,UAAU4nB,UAAY,SAAUC,EAAUlY,EAAMmY,GAGjD,YAFa,IAATnY,IAAmBA,EAAO,QACf,IAAXmY,IAAqBA,EAAS,IAC3B5J,GAAMxe,KAAKgX,MAAM4M,GAAK,uBAAyBF,GAAoByE,GAAY,cAAgBzE,GAAoB0E,GAAU,WAAanY,EAAO,OAO5JsX,EAAKjnB,UAAU+nB,iBAAmB,SAAU7oB,GACxC,OAAOgf,GAAMxe,KAAKgX,MAAM4M,GAAK,qBAAuBF,GAAoBlkB,GAAO,QAUnF+nB,EAAKjnB,UAAUgoB,iBAAmB,SAAU9oB,EAAKoB,EAAO0kB,EAAaiD,GAGjE,YAFoB,IAAhBjD,IAA0BA,EAAc,SAC3B,IAAbiD,IAAuBA,EAAW,IAC/B7J,GAAO1e,KAAKgX,MAAM4M,GAAK,oBAAqBvZ,GAAK,CACpDke,SAAUA,EACVjD,YAAaA,EACb9lB,IAAKA,EACLoB,MAAOA,MAQf2mB,EAAKjnB,UAAUkoB,oBAAsB,SAAUhpB,GAC3C,OAAOkf,GAAO1e,KAAKgX,MAAM4M,GAAK,wBAA0BF,GAAoBlkB,GAAO,QAQvF+nB,EAAKjnB,UAAUmoB,iCAAmC,SAAUC,EAAoBC,QACjD,IAAvBD,IAAiCA,GAAsB,QAC9B,IAAzBC,IAAmCA,GAAwB,GAC/D,IAAIlpB,EAAIO,KAAKgX,MAAMsJ,GAA+B,uDAAyDoI,EAAqB,yBAA2BC,EAAuB,KAClL,OAAOxN,GAAInD,UAAUvY,EAAG,uCAM5B8nB,EAAKjnB,UAAUmkB,YAAc,WACzB,OAAO,IAAI/C,GAAQ1hB,KAAKuX,UAAWvX,KAAK2X,eAQ5C4P,EAAKjnB,UAAUsoB,sBAAwB,SAAU1B,EAAU2B,QACtC,IAAb3B,IAAuBA,EAAW,WACT,IAAzB2B,IAAmCA,GAAuB,GAC9D,IAAI7jB,EAAO,iCAAmCkiB,EAAW,4BAA8B2B,EAAuB,IAC9G,OAAO1N,GAAInD,UAAUsI,GAA8BtgB,KAAMgF,GAAO,4BAEpE+D,EAAW,CACPoS,GAAI,mBACLoM,EAAKjnB,UAAW,eAAgB,MACnCyI,EAAW,CACPoS,GAAI,aACLoM,EAAKjnB,UAAW,SAAU,MAC7ByI,EAAW,CACPoS,GAAI,iBACLoM,EAAKjnB,UAAW,aAAc,MACjCyI,EAAW,CACPoS,GAAI,uBACLoM,EAAKjnB,UAAW,mBAAoB,MACvCyI,EAAW,CACPoS,GAAI,iBACLoM,EAAKjnB,UAAW,aAAc,MACjCyI,EAAW,CACPoS,GAAI,gBACLoM,EAAKjnB,UAAW,YAAa,MAChCyI,EAAW,CACPoS,GAAI,uBACLoM,EAAKjnB,UAAW,mBAAoB,MACvCyI,EAAW,CACPoS,GAAI,uBACLoM,EAAKjnB,UAAW,mBAAoB,MACvCyI,EAAW,CACPoS,GAAI,0BACLoM,EAAKjnB,UAAW,sBAAuB,MACnCyI,EAAW,CACd+X,GAAY,aACbyG,GA1NkB,CA4NvBhH,IAESqD,GAAM5E,GAAmBuI,ICtS7B,SAASuB,GAAe/hB,GAC3B,MAAO,CACHgiB,WAAYhiB,EACZoa,WAAY,CAAEpG,KAAM,oBCQ5B,IAkeWiO,GAuBAC,GAzfPC,GAAwB,SAAUpb,GAElC,SAASob,IACL,OAAkB,OAAXpb,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAkJ/D,OApJAwI,EAAU0gB,EAAQpb,GASlBob,EAAO5oB,UAAU6oB,QAAU,SAAUzW,GACjC,OAAOyI,GAAInD,UAAUoR,GAAKppB,MAAM8X,OAAO,KAAOpF,EAAK,MAAO,eAO9DwW,EAAO5oB,UAAU+oB,WAAa,SAAUlE,GACpC,OAAOhK,GAAInD,UAAUoR,GAAKppB,KAAM,eAAiB0jB,GAAoByB,GAAS,MAAO,kBAWzF+D,EAAO5oB,UAAUqQ,IAAM,SAAUwU,EAAOlc,EAAMge,EAAUqC,EAAoBC,GAKxE,YAJa,IAATtgB,IAAmBA,EAAO,SACb,IAAbge,IAAuBA,EAAW,UACX,IAAvBqC,IAAiCA,GAAqB,QAC/B,IAAvBC,IAAiCA,EAAqB,IACnDlgB,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAIwpB,EACJ,OAAOpf,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAQD,OAPAgf,EAAc9pB,OAAOyI,OAAO,CACxB,kBAAqBmhB,EACrB,aAAgBrC,EAChB,oBAAuBqC,EACvB,YAAergB,EACf,MAASkc,GACVrK,GAAS,WAAYyO,GACjB,CAAC,EAAa7K,GAAO1e,KAAMqK,GAAKmf,KAC3C,KAAK,EAED,MAAO,CAAC,EAAc,CAAE9mB,KADjB6J,EAAG9B,OAC0Bgf,KAAMzpB,KAAKqpB,WAAWG,EAAYrD,iBAc1F+C,EAAO5oB,UAAUopB,OAAS,SAAUvE,EAAOlc,EAAMge,EAAUqC,EAAoBC,GAK3E,YAJa,IAATtgB,IAAmBA,EAAO,SACb,IAAbge,IAAuBA,EAAW,UACX,IAAvBqC,IAAiCA,GAAqB,QAC/B,IAAvBC,IAAiCA,EAAqB,IACnDlgB,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAI2pB,EAAqBF,EACzB,OAAOrf,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EACD,GAAIxK,KAAK4Y,SACL,MAAMjH,MAAM,+DAEhBgY,EAAsB,EAAOJ,EAAoB,CAAEpD,MAAOhB,EAAOU,YAAa5c,EAAM2gB,oBAAqBN,IAAsB,GAC/HG,EAAOzpB,KAAKqpB,WAAWM,EAAoBxD,OAC3C5Z,EAAG/B,MAAQ,EACf,KAAK,EAGD,OAFA+B,EAAG7B,KAAK9H,KAAK,CAAC,EAAG,EAAG,CAAE,IAEf,CAAC,EAAa6mB,EAAKlK,OAAO,QAAZkK,IACzB,KAAK,EAGD,OADAld,EAAG9B,OACI,CAAC,EAAagf,EAAK/B,OAAOiC,GAAqBxf,MAAK,SAAU1J,GAAK,OAAOA,EAAEiC,SACvF,KAAK,EAED,MAAO,CAAC,EAAc,CAAEmnB,SAAS,EAAOnnB,KADjC6J,EAAG9B,OAC0Cgf,KAAMzpB,KAAKqpB,WAAWM,EAAoBxD,SAClG,KAAK,EAED,OADM5Z,EAAG9B,OACF,CAAC,EAAazK,KAAK2Q,IAAIwU,EAAOlc,EAAMge,EAAUqC,EAAoBK,GAAqBxf,MAAK,SAAU1J,GAAK,OAAOA,EAAEiC,SAC/H,KAAK,EAED,MAAO,CAAC,EAAc,CAAEmnB,SAAS,EAAMnnB,KADhC6J,EAAG9B,OACyCgf,KAAMzpB,KAAKqpB,WAAWM,EAAoBxD,SACjG,KAAK,EAAG,MAAO,CAAC,WAQhC+C,EAAO5oB,UAAUwpB,wBAA0B,WACvC,OAAOzgB,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAIoC,EACJ,OAAOgI,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAAG,MAAO,CAAC,EAAakU,GAAO1e,KAAKgX,MAAM+S,GAAO,6BACtD,KAAK,EAED,OADA3nB,EAAOmK,EAAG9B,OACH,CAAC,EAAc2e,GAAKpI,GAAa5e,aAQ5D8mB,EAAO5oB,UAAU0pB,uBAAyB,WACtC,OAAO3gB,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAIoC,EACJ,OAAOgI,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAAG,MAAO,CAAC,EAAakU,GAAO1e,KAAKgX,MAAM+S,GAAO,4BACtD,KAAK,EAED,OADA3nB,EAAOmK,EAAG9B,OACH,CAAC,EAAc2e,GAAKpI,GAAa5e,aAK5D2G,EAAW,CACPoS,GAAI,WACL+N,EAAO5oB,UAAW,MAAO,MAC5ByI,EAAW,CACPoS,GAAI,cACL+N,EAAO5oB,UAAW,SAAU,MAC/ByI,EAAW,CACPoS,GAAI,+BACL+N,EAAO5oB,UAAW,0BAA2B,MAChDyI,EAAW,CACPoS,GAAI,8BACL+N,EAAO5oB,UAAW,yBAA0B,MACtCyI,EAAW,CAChB+X,GAAY,UACboI,GApJoB,CAsJzBlJ,IAES+J,GAAQ/K,GAAmBkK,IAClCe,GAAuB,SAAUnc,GAEjC,SAASmc,IACL,IAAIje,EAAmB,OAAX8B,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAEhE,OADAgM,EAAMmD,OAAS0R,GAAmB,KAC3B7U,EA6TX,OAjUAxD,EAAUyhB,EAAOnc,GAMjBpO,OAAOC,eAAesqB,EAAM3pB,UAAW,2BAA4B,CAK/DT,IAAK,WACD,OAAOsb,GAAInD,UAAU+H,GAAoB/f,KAAM,4BAA6B,+BAEhFJ,YAAY,EACZsB,cAAc,IAElBxB,OAAOC,eAAesqB,EAAM3pB,UAAW,iBAAkB,CAKrDT,IAAK,WACD,OAAOsb,GAAInD,UAAUsI,GAA8BtgB,KAAM,kBAAmB,qBAEhFJ,YAAY,EACZsB,cAAc,IAElBxB,OAAOC,eAAesqB,EAAM3pB,UAAW,gBAAiB,CAKpDT,IAAK,WACD,OAAOsb,GAAInD,UAAU+H,GAAoB/f,KAAM,oBAAqB,oBAExEJ,YAAY,EACZsB,cAAc,IAElBxB,OAAOC,eAAesqB,EAAM3pB,UAAW,sCAAuC,CAK1ET,IAAK,WACD,OAAOsb,GAAInD,UAAU+H,GAAoB/f,KAAM,uCAAwC,0CAE3FJ,YAAY,EACZsB,cAAc,IAQlB+oB,EAAM3pB,UAAUonB,OAAS,SAAUC,EAAY5I,GAE3C,YADa,IAATA,IAAmBA,EAAO,KACvB1V,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAI8jB,EAAUphB,EAAM+mB,EACpB,OAAOrf,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAKD,OAJAsZ,EAAWzZ,GAAK,EAAOyQ,GAAS,WAAY6M,GAAa1a,GAAQ,CAC7D,WAAY8R,EACZ,gBAAiB,WAEd,CAAC,EAAaL,GAAO1e,KAAM8jB,IACtC,KAAK,EAGD,OAFAphB,EAAO6J,EAAG9B,OACVgf,EAAOniB,EAAIqgB,EAAY,SAAW3nB,KAAK6f,UAAUuJ,GAAMppB,KAAKuX,UAAW,eAAiBoQ,EAAWxB,MAAQ,MAAQiD,GAAKppB,MACjH,CAAC,EAAc,CACd0C,KAAMA,EACN+mB,KAAMA,YAUlCQ,EAAM3pB,UAAUujB,WAAa,SAAUrM,GACnC,OAAOkH,GAAO1e,KAAKgX,MAAMoS,GAAM,cAAe/e,GAAK,CAAEmN,MAAO,EAAOsD,GAAS,kBAAmBtD,OAOnGyS,EAAM3pB,UAAU4pB,oBAAsB,SAAU1S,GAE5C,IADA,IAAImI,EAAU,GACLne,EAAK,EAAGA,EAAKC,UAAUC,OAAQF,IACpCme,EAAQne,EAAK,GAAKC,UAAUD,GAEhC,IAAI+iB,EAAIvkB,KAAKgX,MAAMoS,GAAM,YACzB,OAAO1K,GAAO6F,EAAE7E,OAAO9b,MAAM2gB,EAAGnZ,EAAc,GAAIF,EAAOyU,KAAYtV,GAAK,CAAEmN,MAAO,EAAOsD,GAAS,gBAAiBtD,OAMxHyS,EAAM3pB,UAAU6pB,6BAA+B,SAAU3S,GACrD,IAAI/X,EAAIO,KAAKgX,MAAMoS,GAAM,gCAAgC7Q,YAAY,CACjEtJ,MAAO,SAAUxO,GACb,OAAOA,EAAE4E,UAGjB,OAAOqZ,GAAOjf,EAAG4K,GAAK,CAAE,MAAS,EAAOyQ,GAAS,yBAA0BtD,OAK/EyS,EAAM3pB,UAAU8pB,QAAU,WACtB,OAAO/gB,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAI0C,EACJ,OAAO0H,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAAG,MAAO,CAAC,EAAakU,GAAO1e,KAAKgX,MAAMoS,GAAM,aACrD,KAAK,EAED,MAAO,CAAC,EAAc9hB,EADtB5E,EAAO6J,EAAG9B,OACsB,WAAa/H,EAAK2nB,QAAU3nB,WAShFunB,EAAM3pB,UAAUgqB,eAAiB,SAAUC,GACvC,OAAOlhB,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAIukB,EAAG7hB,EACP,OAAO0H,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAGD,OAFA+Z,EAAIvkB,KAAKgX,MAAMoS,GAAM,6BACnB5R,MAAMvW,IAAI,WAAY,IAAMspB,EAAU,KACjC,CAAC,EAAa7L,GAAO6F,IAChC,KAAK,EAGD,OAFA7hB,EAAO6J,EAAG9B,OAEH,CAAC,EAAcpI,KAAK4M,MAAM3H,EAAI5E,EAAM,kBAAoBA,EAAK8nB,eAAiB9nB,YAYzGunB,EAAM3pB,UAAUmqB,uBAAyB,SAAUC,EAAYC,EAAgBnT,QACpD,IAAnBmT,IAA6BA,EAAiB,WACpC,IAAVnT,IAAoBA,EAAQ,IAAIxP,KAChCV,EAAIojB,EAAY,kBAAoBvkB,EAAQukB,EAAWE,iBACvDF,EAAWE,cAAgBF,EAAWE,cAAchkB,QAAO,SAAUD,EAAGZ,GAAK,OAAOY,EAAIZ,MAE5F,IAAI8kB,EAAc,CAAEH,WAAY,EAAO5P,GAAS,+BAAgC4P,IAC5ExkB,EAAqBykB,KACrBE,EAAc,EAAOA,EAAa,CAAEC,mBAAoB,EAAOhQ,GAAS,uCAAwC6P,MAEpH,IAAI3T,EAAQhX,KAAKgX,MAAMoS,GAAM,0BAA0B,GAAM,GAI7D,OAHI5R,GAASA,EAAMvH,KAAO,GACtBuH,EAAM7V,SAAQ,SAAUgF,EAAGmB,GAAK,OAAOkP,EAAMQ,MAAMvW,IAAI6G,EAAGnB,MAEvD+X,GAAO1H,EAAO3M,GAAKwgB,KAQ9BZ,EAAM3pB,UAAUyqB,mBAAqB,SAAUC,EAAQC,EAAQC,GAC3D,OAAO7hB,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAI0C,EACJ,OAAO0H,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAAG,MAAO,CAAC,EAAakU,GAAO1e,KAAKgX,MAAMoS,GAAM,6BAA+B4B,EAAS,aAAeC,EAAS,YAAcC,EAAO,QAC1I,KAAK,EAGD,OAFAxoB,EAAO6J,EAAG9B,OAEH,CAAC,EAAcpI,KAAK4M,MAAM3H,EAAI5E,EAAM,sBAAwBA,EAAKyoB,mBAAqBzoB,YAQjHunB,EAAM3pB,UAAU8qB,kBAAoB,WAChC,OAAO/hB,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAI0C,EACJ,OAAO0H,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAAG,MAAO,CAAC,EAAakU,GAAO1e,KAAKgX,MAAMoS,GAAM,uBACrD,KAAK,EAED,MAAO,CAAC,EAAc9hB,EADtB5E,EAAO6J,EAAG9B,OACsB,qBAAuB/H,EAAK2oB,kBAAoB3oB,WAQpGunB,EAAM3pB,UAAUgrB,8BAAgC,WAG5C,OAAOtrB,KAAKgX,MAAMoS,GAAM,MAAM,GAAO7J,OAAO,8BAA8BpH,aAAa,CACnFjJ,WAAYrL,EAAQ,IAAIK,KAAQ,MAAO,GACvC1E,IAAK,wBAA0BQ,KAAK6X,QACpCvE,UAAW,SAHRtT,GAIFmK,MAAK,SAAU1K,GAAK,OAAOA,EAAE8rB,+BAWtCtB,EAAM3pB,UAAUkrB,+BAAiC,SAAUC,EAAYC,EAAYC,EAAoBC,EAAgBC,GAEnH,YAD2B,IAAvBF,IAAiCA,GAAqB,GACnDtiB,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAI8rB,EAAUC,EACd,OAAO3hB,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAYD,OAXAshB,EAAW,CACPE,WAAYlD,GAAe4C,IAE3BxlB,EAAqB2lB,KACjBA,EAAgBI,WAChBH,EAASI,SAAWpD,GAAe+C,EAAgBI,WAEnDJ,EAAgBM,aAChBL,EAASM,qBAAuBP,EAAgBM,aAGjD,CAAC,EAAazN,GAAO1e,KAAKgX,MAAMoS,GAAM,oCAAqC/e,GAAK,CAC/EshB,mBAAoBA,EACpBC,eAAgBA,EAChBH,WAAYA,EACZY,mBAAoB,EAAOvR,GAAS,2CAA4CgR,OAE5F,KAAK,EAED,MAAO,CAAC,EAAcxkB,EADtBykB,EAAMxf,EAAG9B,OACsB,kCAAoCshB,EAAIO,+BAAiCP,WAQ5H9B,EAAM3pB,UAAUisB,eAAiB,WAC7B,OAAOljB,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAIwsB,EACJ,OAAOpiB,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAAG,MAAO,CAAC,EAAaxK,KAAKuf,OAAO,KAAM,sBAAuB,+BAAgC,gCAAiC,eAAgB,gBAAiB,8BAA+B,gCAAgCG,OAAO,aAAc,YAA/N1f,IAC7B,KAAK,EAED,MAAO,CAAC,EAAc,CACdopB,KAAM,CACFzE,IAHZ6H,EAAUjgB,EAAG9B,QAGWka,GACZ8H,6BAA8BD,EAAQE,WAAWC,mBACjDC,4BAA6BJ,EAAQE,WAAWG,kBAChDC,mBAAoBN,EAAQE,WAAWK,UAE3CtF,UAAW,CACP9C,GAAI6H,EAAQ/E,UAAU9C,GACtBgI,mBAAoBH,EAAQ/E,UAAUkF,mBACtCE,kBAAmBL,EAAQ/E,UAAUoF,kBACrCzI,IAAKoI,EAAQ/E,UAAUrD,eAOvDrb,EAAW,CACPoS,GAAI,aACL8O,EAAM3pB,UAAW,SAAU,MAC9ByI,EAAW,CACPoS,GAAI,iBACL8O,EAAM3pB,UAAW,aAAc,MAClCyI,EAAW,CACPoS,GAAI,gBACL8O,EAAM3pB,UAAW,sBAAuB,MAC3CyI,EAAW,CACPoS,GAAI,wBACL8O,EAAM3pB,UAAW,+BAAgC,MACpDyI,EAAW,CACPoS,GAAI,cACL8O,EAAM3pB,UAAW,UAAW,MAC/ByI,EAAW,CACPoS,GAAI,qBACL8O,EAAM3pB,UAAW,iBAAkB,MACtCyI,EAAW,CACPoS,GAAI,eACL8O,EAAM3pB,UAAW,yBAA0B,MAC9CyI,EAAW,CACPoS,GAAI,yBACL8O,EAAM3pB,UAAW,qBAAsB,MAC1CyI,EAAW,CACPoS,GAAI,wBACL8O,EAAM3pB,UAAW,oBAAqB,MACzCyI,EAAW,CACPoS,GAAI,oCACL8O,EAAM3pB,UAAW,gCAAiC,MACrDyI,EAAW,CACPoS,GAAI,qCACL8O,EAAM3pB,UAAW,iCAAkC,MAC/C2pB,EAlUe,CAmUxB1J,IAES6I,GAAOpK,GAAmBiL,KAKrC,SAAWjB,GACPA,EAAsBA,EAA4B,KAAI,GAAK,OAC3DA,EAAsBA,EAAmC,YAAI,GAAK,cAClEA,EAAsBA,EAAgC,SAAI,GAAK,WAC/DA,EAAsBA,EAAkC,WAAI,GAAK,aACjEA,EAAsBA,EAAgC,SAAI,GAAK,WAC/DA,EAAsBA,EAAuC,gBAAI,IAAM,kBACvEA,EAAsBA,EAAwC,iBAAI,IAAM,mBACxEA,EAAsBA,EAAwC,iBAAI,IAAM,mBACxEA,EAAsBA,EAAmC,YAAI,KAAO,cACpEA,EAAsBA,EAAiC,UAAI,KAAO,YAClEA,EAAsBA,EAAqC,cAAI,KAAO,gBACtEA,EAAsBA,EAAoC,aAAI,MAAQ,eACtEA,EAAsBA,EAA4C,qBAAI,MAAQ,uBAC9EA,EAAsBA,EAAyC,kBAAI,MAAQ,oBAC3EA,EAAsBA,EAAkC,WAAI,MAAQ,aACpEA,EAAsBA,EAAuC,gBAAI,OAAS,kBAC1EA,EAAsBA,EAAmD,4BAAI,OAAS,8BAjB1F,CAkBGA,KAA0BA,GAAwB,KAKrD,SAAWC,GACPA,EAAYA,EAAqB,QAAI,GAAK,UAC1CA,EAAYA,EAAkB,KAAI,GAAK,OACvCA,EAAYA,EAAiB,IAAI,GAAK,MAH1C,CAIGA,KAAgBA,GAAc,KClgBjCtV,GAAQ4T,GAAM,QAASwC,IACvBpW,GAAQ4T,GAAM,mBAAoB6B,GAAM,oBACxCzV,GAAQ4T,GAAM,yBAA0B6B,GAAM,0BAC9CzV,GAAQ4T,GAAM,sBAAuBjH,GAA+B,0BACpEiH,GAAKjnB,UAAU0sB,QAAU,SAAUC,GAC/B,OAAO7D,GAAKppB,KAAM,YAAc0jB,GAAoBuJ,GAAmB,OAE3E1F,GAAKjnB,UAAU4sB,WAAa,SAAUnS,GAClC,OAAO1R,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAI0C,EACJ,OAAO0H,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAAG,MAAO,CAAC,EAAaxK,KAAKgX,MAAM4M,GAAK,cAAgB7I,EAAO,KAAKwE,OAAO,MAAM1f,OACtF,KAAK,EAED,OADA6C,EAAO6J,EAAG9B,OACH,CAAC,EAAc2e,GAAKpI,GAAate,aCR5D,IAAIyqB,GAAwB,SAAUrf,GAElC,SAASqf,IACL,OAAkB,OAAXrf,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAkJ/D,OApJAwI,EAAU2kB,EAAQrf,GASlBqf,EAAO7sB,UAAU6oB,QAAU,SAAUzW,GACjC,OAAOyI,GAAInD,UAAUoV,GAAKptB,MAAM8X,OAAO,IAAMpF,EAAK,KAAM,eAO5Dya,EAAO7sB,UAAU+sB,kBAAoB,SAAUC,GAE3C,OAAOnS,GAAInD,UAAUoV,GAAKptB,KAAKuX,UAAW,sBAAwB+V,EAAW,MAAO,yBAQxFH,EAAO7sB,UAAU8f,KAAO,SAAUA,EAAMmN,GAQpC,YAPgB,IAAZA,IAAsBA,GAAU,GAChCA,EACAvtB,KAAKwX,MAAMvW,IAAI,aAAcwe,mBAAmB,kCAAoCW,IAGpFpgB,KAAKwX,MAAMvW,IAAI,aAAcwe,mBAAmB,mBAAqBW,IAElEpgB,MAMXmtB,EAAO7sB,UAAUktB,SAAW,WACxB,OAAOxtB,KAAKuY,YAAY,IAAIkV,GAA0BztB,MAA/CA,IAQXmtB,EAAO7sB,UAAUotB,OAAS,SAAUC,EAAaC,QACzB,IAAhBD,IAA0BA,EAAc,UACvB,IAAjBC,IAA2BA,EAAe,qCAC9C9sB,EAAOiB,MAAM,kHAAmH,GAGhI,IAAI8rB,EAAQC,GAAM9tB,KAAM,IAAIqgB,IAAIsN,GAAa3V,UAAU,CACnD/K,QAAS,CACL,OAAU2gB,KAalB,OANA5tB,KAAKwX,MAAM7V,SAAQ,SAAUgF,EAAGmB,GACxB,gCAAgCd,KAAKc,IACrC+lB,EAAMrW,MAAMvW,IAAI6G,EAAGnB,MAIpB,IAAI+C,SAAQ,SAAUC,EAASC,GAElC,IAAImkB,EAAiB,GAEjBC,EAAW,SAAUC,GAErB,GAAGrrB,KAAKgB,MAAMmqB,EAAgBE,EAAK5X,SAE/B4X,EAAKC,QACLD,EAAKE,UAAUhkB,KAAK6jB,GAAUje,MAAMnG,GAGpCD,EAAQokB,IAIhBF,EAAML,WAAWrjB,KAAK6jB,GAAUje,MAAMnG,OAS9CujB,EAAO7sB,UAAUqQ,IAAM,SAAUgX,EAAYyG,GAGzC,YAFmB,IAAfzG,IAAyBA,EAAa,SACP,IAA/ByG,IAAyCA,EAA6B,MACnE/kB,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAIquB,EAAkBC,EAAoBxK,EAAUvK,EAChDvN,EAAQhM,KACZ,OAAOoK,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAED,OADA6jB,EAAmBruB,KAAK6Y,qBACjB,CAAC,EAAa7Y,KAAKuuB,6BAA6BH,IAC3D,KAAK,EAUD,OATAE,EAAqB/hB,EAAG9B,OACxBqZ,EAAWzZ,GAAK,EAAOyQ,GAASwT,GAAqB3G,IACrDpO,EAAUmF,GAAO1e,KAAKgX,MAAM8W,GAAO,IAAKhK,GAAU3Z,MAAK,SAAUzH,GAC7D,MAAO,CACHA,KAAMA,EACN8rB,KAAMxiB,EAAMmd,QAAQzmB,EAAKiiB,QAGjC0J,IACO,CAAC,EAAc9U,WAU1C4T,EAAO7sB,UAAUiuB,6BAA+B,SAAUE,GACtD,OAAOplB,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,OAAOoK,EAAYpK,MAAM,SAAUuM,GAC/B,MAAO,CAAC,EAAckiB,GAEdzuB,KAAK6f,UAAUuJ,IAAMkC,wCAIzCviB,EAAW,CACPoS,GAAI,gBACLgS,EAAO7sB,UAAW,WAAY,MACjCyI,EAAW,CACPoS,GAAI,cACLgS,EAAO7sB,UAAW,SAAU,MAC/ByI,EAAW,CACPoS,GAAI,WACLgS,EAAO7sB,UAAW,MAAO,MACnByI,EAAW,CAChB+X,GAAY,UACbqM,GApJoB,CAsJzBnN,IAES8N,GAAQ9O,GAAmBmO,IAKlCuB,GAAuB,SAAU5gB,GAEjC,SAAS4gB,IACL,IAAI1iB,EAAmB,OAAX8B,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAEhE,OADAgM,EAAMmD,OAAS0R,GAAmB,KAC3B7U,EA+NX,OAnOAxD,EAAUkmB,EAAO5gB,GAMjBpO,OAAOC,eAAe+uB,EAAMpuB,UAAW,2BAA4B,CAK/DT,IAAK,WACD,OAAOsb,GAAInD,UAAU+H,GAAoB/f,KAAM,4BAA6B,+BAEhFJ,YAAY,EACZsB,cAAc,IAElBxB,OAAOC,eAAe+uB,EAAMpuB,UAAW,gCAAiC,CAKpET,IAAK,WACD,OAAOsb,GAAInD,UAAU+H,GAAoB/f,KAAM,iCAAkC,oCAErFJ,YAAY,EACZsB,cAAc,IAElBxB,OAAOC,eAAe+uB,EAAMpuB,UAAW,oBAAqB,CAKxDT,IAAK,WACD,OAAOsb,GAAInD,UAAU2I,GAA4B3gB,KAAM,qBAAsB,aAEjFJ,YAAY,EACZsB,cAAc,IAElBxB,OAAOC,eAAe+uB,EAAMpuB,UAAW,oBAAqB,CAKxDT,IAAK,WACD,OAAOsb,GAAInD,UAAU2I,GAA4B3gB,KAAM,qBAAsB,aAEjFJ,YAAY,EACZsB,cAAc,IAElBxB,OAAOC,eAAe+uB,EAAMpuB,UAAW,qBAAsB,CAKzDT,IAAK,WACD,OAAOsb,GAAInD,UAAU2I,GAA4B3gB,KAAM,sBAAuB,aAElFJ,YAAY,EACZsB,cAAc,IAElBxB,OAAOC,eAAe+uB,EAAMpuB,UAAW,WAAY,CAI/CT,IAAK,WACD,OAAOsb,GAAInD,UAAU2W,GAAa3uB,MAAO,eAE7CJ,YAAY,EACZsB,cAAc,IAElBxB,OAAOC,eAAe+uB,EAAMpuB,UAAW,OAAQ,CAC3CT,IAAK,WACD,OAAOG,KAAK6f,UAAUuJ,GAAMppB,KAAKuX,UAAU2D,OAAO,EAAGlb,KAAKuX,UAAU2H,YAAY,QAEpFtf,YAAY,EACZsB,cAAc,IASlBwtB,EAAMpuB,UAAUonB,OAAS,SAAUC,EAAY5I,EAAMqP,GAGjD,YAFa,IAATrP,IAAmBA,EAAO,UACK,IAA/BqP,IAAyCA,EAA6B,MACnE/kB,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAIquB,EAAkBC,EAAoBxK,EAAU8K,EACpD,OAAOxkB,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAED,OADA6jB,EAAmBruB,KAAK6Y,qBACjB,CAAC,EAAa7Y,KAAKuuB,6BAA6BH,IAC3D,KAAK,EAQD,OAPAE,EAAqB/hB,EAAG9B,OACxBqZ,EAAWzZ,GAAK,EAAOyQ,GAASwT,GAAqB3G,GAAa1a,GAAQ,CACtE,WAAY8R,EACZ,gBAAiB,WAErBsP,IACAO,EAASzT,GAAInD,UAAUhY,KAAKgX,MAAMoW,IAAM7U,YAAY,IAAIsW,IAAsB,YACvE,CAAC,EAAanQ,GAAOkQ,EAAQ9K,IACxC,KAAK,EAED,MAAO,CAAC,EAAc,CACdphB,KAFD6J,EAAG9B,OAGF+jB,KAAMxuB,eASlC0uB,EAAMpuB,UAAU8pB,QAAU,WACtB,OAAO1L,GAAO1e,KAAKgX,MAAMoW,GAAM,aAOnCsB,EAAMpuB,UAAUwuB,iBAAmB,SAAUpE,GACzC,OAAOrhB,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,OAAOoK,EAAYpK,MAAM,SAAUuM,GAC/B,MAAO,CAAC,EAAcmS,GAAO1e,KAAKgX,MAAMoW,GAAM,wBAAyB/iB,GAAK,CAAEqgB,WAAYA,aAUtGgE,EAAMpuB,UAAUyuB,gBAAkB,SAAUC,GAExC,YADe,IAAXA,IAAqBA,EAAS,GAC3B3lB,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAIuF,EAAG7C,EACP,OAAO0H,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAGD,OAFAjF,EAAIvF,KAAKgX,MAAMoW,GAAM,6BACnB5V,MAAMvW,IAAI,UAAW+tB,GAChB,CAAC,EAAatQ,GAAOnZ,IAChC,KAAK,EAGD,OAAI+B,EAFJ5E,EAAO6J,EAAG9B,OAEI,mBACH,CAAC,EAAc/H,EAAKusB,iBAExB,CAAC,EAAcvsB,WAW1CgsB,EAAMpuB,UAAU4uB,uBAAyB,SAAUzD,EAAYE,GAE3D,YAD2B,IAAvBA,IAAiCA,GAAqB,GACnDjN,GAAO1e,KAAKgX,MAAMoW,GAAM,0BAA2B/iB,GAAK,CAAEohB,WAAYA,EAAYE,mBAAoBA,MAKjH+C,EAAMpuB,UAAUisB,eAAiB,WAC7B,OAAOljB,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAIwsB,EACJ,OAAOpiB,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAAG,MAAO,CAAC,EAAaxK,KAAKuf,OAAO,KAAM,gBAAiB,iCAAkC,0CAA2C,2CAA4C,0BAA2B,2BAA4B,yCAA0C,2CAA2CG,OAAO,aAAc,wBAAyB,uBAAtV1f,IAC7B,KAAK,EAED,MAAO,CAAC,EAAc,CACdotB,KAAM,CACFzI,IAHZ6H,EAAUjgB,EAAG9B,QAGWka,IAEhBwK,WAAY,CACRxK,GAAI6H,EAAQ2C,WAAWxK,GACvB8H,6BAA8BD,EAAQ2C,WAAWzC,WAAWC,mBAC5DC,4BAA6BJ,EAAQ2C,WAAWzC,WAAWG,kBAC3DC,mBAAoBN,EAAQ2C,WAAWzC,WAAWK,UAEtDtF,UAAW,CACP9C,GAAI6H,EAAQ2C,WAAW1H,UAAU9C,GACjCgI,mBAAoBH,EAAQ2C,WAAW1H,UAAUkF,mBACjDE,kBAAmBL,EAAQ2C,WAAW1H,UAAUoF,kBAChDzI,IAAKoI,EAAQ2C,WAAW1H,UAAUrD,eAYlEsK,EAAMpuB,UAAUiuB,6BAA+B,SAAUE,GACrD,OAAOplB,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,OAAOoK,EAAYpK,MAAM,SAAUuM,GAC/B,MAAO,CAAC,EAAckiB,GAEdzuB,KAAKypB,KAAK6B,wCAI9BviB,EAAW,CACPoS,GAAI,cACLuT,EAAMpuB,UAAW,UAAW,MAC/ByI,EAAW,CACPoS,GAAI,iBACLuT,EAAMpuB,UAAW,mBAAoB,MACxCyI,EAAW,CACPoS,GAAI,sBACLuT,EAAMpuB,UAAW,kBAAmB,MACvCyI,EAAW,CACPoS,GAAI,6BACLuT,EAAMpuB,UAAW,yBAA0B,MACvCouB,EApOe,CAqOxBnO,IAES6M,GAAOpO,GAAmB0P,IAKjCU,GAA+B,SAAUthB,GAEzC,SAASshB,IACL,OAAkB,OAAXthB,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAa/D,OAfAwI,EAAU4mB,EAAethB,GASzBshB,EAAc9uB,UAAU6oB,QAAU,SAAUkG,GACxC,OAAOlU,GAAInD,UAAUsX,GAAYtvB,MAAM8X,OAAO,IAAMuX,EAAY,KAAM,eAE1DtmB,EAAW,CACvB+X,GAAY,aACbsO,GAf2B,CAiBhCpP,IAES2O,GAAe3P,GAAmBoQ,IAKzCG,GAA8B,SAAUzhB,GAExC,SAASyhB,IACL,IAAIvjB,EAAmB,OAAX8B,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAEhE,OADAgM,EAAMmD,OAAS0R,GAAmB,MAC3B7U,EAEX,OANAxD,EAAU+mB,EAAczhB,GAMjByhB,EAPsB,CAQ/BhP,IAES+O,GAActQ,GAAmBuQ,IAIxCC,GAAqC,WACrC,SAASA,EAAoB1P,EAAQ2P,EAASpZ,GAC1CrW,KAAK8f,OAASA,EACd9f,KAAKyvB,QAAUA,EACfzvB,KAAKqW,QAAUA,EAsBnB,OApBA3W,OAAOC,eAAe6vB,EAAoBlvB,UAAW,UAAW,CAI5DT,IAAK,WACD,MAA+B,iBAAjBG,KAAKyvB,SAAwBzvB,KAAKyvB,QAAQ/tB,OAAS,GAErE9B,YAAY,EACZsB,cAAc,IAKlBsuB,EAAoBlvB,UAAU6tB,QAAU,WACpC,OAAInuB,KAAKkuB,QACO/S,GAAInD,UAAU8V,GAAM9tB,KAAKyvB,QAAS,MAAMxX,cAAcjY,KAAK8f,QAAS,cACnE0N,WAEV,IAAI9jB,SAAQ,SAAUjJ,GAAK,OAAOA,EAAE,UAExC+uB,EA1B6B,GA6BpC/B,GAA2C,SAAU3f,GAErD,SAAS2f,EAA0BiC,GAC/B,IAAI1jB,EAAQ8B,EAAOtN,KAAKR,OAASA,KAEjC,OADAgM,EAAM0jB,QAAUA,EACT1jB,EAaX,OAjBAxD,EAAUilB,EAA2B3f,GAMrC2f,EAA0BntB,UAAU2O,MAAQ,SAAUxO,GAClD,IAAIuL,EAAQhM,KACZ,OAAO,IAAI0J,SAAQ,SAAUC,EAASC,GAC9BoC,EAAM4J,YAAYnV,EAAGmJ,IACrBnJ,EAAE2B,OAAO+H,MAAK,SAAU/H,GACpB,IAAIqtB,EAAUnoB,EAAIlF,EAAM,MAAQkF,EAAIlF,EAAKyD,EAAG,UAAYzD,EAAKyD,EAAE8pB,OAASvtB,EAAK,kBAC7EuH,EAAQ,IAAI6lB,GAAoBxjB,EAAM0jB,QAASD,EAASzjB,EAAMiK,eAAe7T,YAKtFqrB,EAlBmC,CAmB5C9X,IACEkZ,GAAmC,SAAU/gB,GAE7C,SAAS+gB,IACL,OAAkB,OAAX/gB,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAY/D,OAdAwI,EAAUqmB,EAAmB/gB,GAI7B+gB,EAAkBvuB,UAAU2O,MAAQ,SAAUxO,GAC1C,IAAIuL,EAAQhM,KACZ,OAAO,IAAI0J,SAAQ,SAAUC,EAASC,GAC9BoC,EAAM4J,YAAYnV,EAAGmJ,IACrBD,EAAQ,CACJ,aAAclJ,EAAEwM,QAAQpN,IAAI,cAKrCgvB,EAf2B,CAgBpClZ,IC3fFhC,GAAQsW,GAAO,QAAS6D,IC8CxB,SA1CiD,WAS7C,SAAS8B,EAA4BjS,EAAKkS,EAAWC,EAAcC,QAC7C,IAAdF,IAAwBA,EAAY,eACnB,IAAjBC,IAA2BA,EAAe,cACvB,IAAnBC,IAA6BA,EAAiB,SAClD/vB,KAAK2d,IAAMA,EACX3d,KAAK6vB,UAAYA,EACjB7vB,KAAK8vB,aAAeA,EACpB9vB,KAAK+vB,eAAiBA,EAwB1B,OAjBAH,EAA4BtvB,UAAUyQ,iBAAmB,WACrD,IAAI/E,EAAQhM,KACZ,OAAOA,KAAK2d,IAAIqS,MAAM3G,WAAWrpB,KAAK6vB,WAAWhC,MAAMtO,OAAOvf,KAAK8vB,aAAc9vB,KAAK+vB,eAA/E/vB,GACFmK,MAAK,SAAUzH,GAAQ,OAAOA,EAAKkE,QAAO,SAAUb,EAAGyoB,GAExD,OADAzoB,EAAEyoB,EAAKxiB,EAAM8jB,eAAiBtB,EAAKxiB,EAAM+jB,gBAClChqB,IACR,QAOP6pB,EAA4BtvB,UAAU2vB,UAAY,SAAU9e,GAExD,YADiB,IAAbA,IAAuBA,EAAW,0BAA4BnR,KAAK2d,IAAI9F,QAAU,IAAM7X,KAAK6vB,WACzF,IAAI,EAA6B7vB,KAAMmR,IAE3Cye,EAxCqC,GCHhD,ICAWM,GA+BAC,GA4BAC,GCxDJ,SAASC,GAA6BjwB,GACzC,OAAO,EAAO0a,GAAS,2BAA4B,CAC/CzE,QAAS3W,OAAOmI,KAAKzH,GAAK2C,KAAI,SAAUvD,GAAO,OAAO,EAAOsb,GAAS,eAAgB,CAClFwV,IAAK9wB,EACL+wB,MAAOpnB,QAAQtJ,IAAIO,EAAKZ,GACxBgxB,UAAW,qBDPvB,SAAWN,GAIPA,EAAcA,EAAoB,KAAI,GAAK,OAI3CA,EAAcA,EAAoB,KAAI,GAAK,OAI3CA,EAAcA,EAAgC,iBAAI,GAAK,mBAIvDA,EAAcA,EAA6B,cAAI,GAAK,gBAIpDA,EAAcA,EAA+B,gBAAI,GAAK,kBAKtDA,EAAcA,EAAmB,IAAI,IAAM,MAzB/C,CA0BGA,KAAkBA,GAAgB,KAKrC,SAAWC,GAIPA,EAAgBA,EAAsB,KAAI,GAAK,OAI/CA,EAAgBA,EAA8B,aAAI,GAAK,eAIvDA,EAAgBA,EAAyB,QAAI,GAAK,UAIlDA,EAAgBA,EAAoC,mBAAI,GAAK,qBAI7DA,EAAgBA,EAA8B,aAAI,GAAK,eAKvDA,EAAgBA,EAAqB,IAAI,IAAM,MAzBnD,CA0BGA,KAAoBA,GAAkB,KAEzC,SAAWC,GACPA,EAASA,EAAkB,SAAK,GAAK,UACrCA,EAASA,EAAsB,YAAI,GAAK,cACxCA,EAASA,EAAqB,WAAI,GAAK,aACvCA,EAASA,EAAqB,WAAI,GAAK,aACvCA,EAASA,EAAe,KAAI,GAAK,OACjCA,EAASA,EAAsB,YAAI,GAAK,cACxCA,EAASA,EAA4B,kBAAI,GAAK,oBAC9CA,EAASA,EAAmB,SAAI,GAAK,WACrCA,EAASA,EAAyB,eAAI,GAAK,iBAC3CA,EAASA,EAAkB,QAAI,GAAK,UACpCA,EAASA,EAAwB,cAAI,GAAK,gBAC1CA,EAASA,EAAuB,aAAI,IAAM,eAC1CA,EAASA,EAAwB,cAAI,IAAM,gBAb/C,CAcGA,KAAaA,GAAW,KE7E3B,IAAIK,GAAwC,kCAExCC,GAA2C,oCAQxC,SAASC,GAA+BC,EAAOC,GAElD,YADkB,IAAdA,IAAwBA,GAAY,GACpCA,EACOH,GAAyC1pB,KAAK4pB,GAG9CH,GAAsCzpB,KAAK4pB,GAWnD,SAASE,GAA4BF,EAAOG,EAAUF,GAGzD,YAFiB,IAAbE,IAAuBA,EAAW,SACpB,IAAdF,IAAwBA,GAAY,GACpCA,EACOD,EAAM1rB,QAAQwrB,GAA0CK,GAGxDH,EAAM1rB,QAAQurB,GAAuCM,GChCpE5nB,QAAQxJ,eAAesjB,GAAO3iB,UAAW,MAAO,CAC5CY,cAAc,EACdtB,YAAY,EACZC,IAAK,WACD,OAAOG,KAAKwjB,iBAAgB,SAAUjX,GAClC,IAAIqB,EAAUrB,EAAGqB,QAAS2P,EAAUhR,EAAGgR,QAASnF,EAAU7L,EAAG6L,QAC7D,OAAOwL,GAAIrG,GAASvF,UAAUpK,GAASgK,WAAWQ,SAI9D6K,GAAO3iB,UAAUmkB,YAAc,WAC3B,OAAOzkB,KAAK2d,IAAI8G,eCTpB,IAiDW,GAAK,IAjDiB,SAAU3W,GAEvC,SAASkjB,IACL,OAAkB,OAAXljB,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KA2C/D,OA7CAwI,EAAUwoB,EAAaljB,GAUvBkjB,EAAY1wB,UAAU2wB,gBAAkB,SAAUC,EAAaC,GAC3D,OAAOnxB,KAAKoxB,QAAQnN,GAAMiN,EAAaC,EAAY,SAQvDH,EAAY1wB,UAAU+wB,eAAiB,SAAUH,EAAaC,GAC1D,OAAOnxB,KAAKoxB,QAAQxN,GAAKsN,EAAaC,EAAY,QAUtDH,EAAY1wB,UAAU8wB,QAAU,SAAUpyB,EAASkyB,EAAaC,EAAYG,GACxE,IAAKxqB,EAAcoqB,GACf,MAAMvf,MAAM,sDAEhB,IAAK7K,EAAcqqB,GACf,MAAMxf,MAAM,qDAEhB,IACI5Q,EAAW/B,EADL6F,EAAQqsB,EAAa,mCACHI,GAE5B,OADAvwB,EAASyW,MAAMvW,IAAI,UAAW,IAAMwe,mBAAmB0R,GAAc,KAC9DnxB,KAAKwjB,iBAAgB,SAAUjX,GAClC,IAAIqB,EAAUrB,EAAGqB,QAASwK,EAAU7L,EAAG6L,QACvC,OAAOrX,EAASiX,UAAUpK,GAASgK,WAAWQ,OAG/C4Y,EA9CqB,CA+C9B/N,KCrCK,SAAS,GAAM7W,EAAQgM,QACV,IAAZA,IAAsBA,EAAUvM,GACpCuM,EAAQjQ,OAAOiE,GAhBnBV,GAAgB,SAAU0M,GACtB,IAAI2K,EAAW3K,EAAQvY,IAAI,SACvB0xB,EAAY7xB,OAAOyI,OAAO,GAAI,CAC9ByT,mBAAoB,WAEhB,IAAIlY,EAAU0U,EAAQvY,IAAI,eAC1B,GAAIqG,EAAqBxC,GACrB,OAAO,IAAIyK,EAAezK,GAE9B,MAAMiO,MAAM,6GAEjBoR,GACH3K,EAAQjQ,OAAO,CAAEqpB,MAAOD,OCZ5B,IAAIE,GAAiC,WACjC,SAASA,IAGL,IADA,IAAI5c,EAAO,GACFrT,EAAK,EAAGA,EAAKC,UAAUC,OAAQF,IACpCqT,EAAKrT,GAAMC,UAAUD,GAKzB,GAHAxB,KAAK0X,SAAW7C,EAAKnT,OAAS,GAAKmT,EAAK,aAAc/I,EAAU+I,EAAK,GAAKhJ,EAC1E7L,KAAK2b,MAAQ9G,EAAKnT,OAAS,GAAKwE,EAAqB2O,EAAK,IACtDA,EAAK,GAAK7U,KAAK0X,SAAS7X,IAAI,SAAS+b,sBAAwB,KAC9C,OAAf5b,KAAK2b,MACL,MAAMhK,MAAM,0DAgFpB,OA7EA8f,EAAgBnxB,UAAUqN,MAAQ,SAAU5G,EAAK6G,GAC7C,IAAIrB,OACY,IAAZqB,IAAsBA,EAAU,IACpC,IAAIX,EAAU,IAAIe,QAElBjB,EAAaE,EAA+C,QAArCV,EAAKvM,KAAK0X,SAAS7X,IAAI,gBAA6B,IAAP0M,OAAgB,EAASA,EAAGU,SAEhGF,EAAaE,EAASW,EAAQX,SACzBA,EAAQd,IAAI,iBACbc,EAAQE,OAAO,eAAgB,oBAE9BF,EAAQd,IAAI,eAEbc,EAAQE,OAAO,aAAc,yBAEjC,IAAIqN,EAAO,EAAO5M,EAAS,CAAEX,QAASA,IACtC,OAAOjN,KAAKmc,SAASpV,EAAKyT,IAE9BiX,EAAgBnxB,UAAU6b,SAAW,SAAUpV,EAAK6G,GAChD,IAAI5B,EAAQhM,UACI,IAAZ4N,IAAsBA,EAAU,IAEpC,IAAIwO,EAAa,IAAIpO,QACrBjB,EAAaqP,EAAYxO,EAAQX,SACjCW,EAAU,EAAOA,EAAS,CAAEX,QAASmP,IACrC,IAAIC,EAAQ,SAAU7C,GAClBxN,EAAM2P,MAAMhO,MAAM5G,EAAK6G,GAASzD,MAAK,SAAUsJ,GAAY,OAAO+F,EAAI7P,QAAQ8J,MAAc1D,OAAM,SAAU0D,GAIhF,MAApBA,EAASsC,QAAsC,MAApBtC,EAASsC,QAAsC,MAApBtC,EAASsC,QAC/DyD,EAAI5P,OAAO6J,GAGf,IAAI8I,EAAQ/C,EAAI+C,MAEhB/C,EAAI+C,OAAS,EACb/C,EAAIiD,WAEAjD,EAAIkD,YAAclD,EAAIiD,UACtBjD,EAAI5P,OAAO6J,GAGf3D,WAAWrM,EAAeuI,EAAOqQ,EAAO7C,GAAM+C,OAGtD,OAAO,IAAI7S,SAAQ,SAAUC,EAASC,GAClC,IAAI8nB,EAAe,CACfjV,SAAU,EACVF,MAAO,IACP3S,OAAQA,EACRD,QAASA,EACT+S,WAAY,GAEhBL,EAAM7b,KAAKwL,EAAO0lB,OAG1BD,EAAgBnxB,UAAUT,IAAM,SAAUkH,EAAK6G,QAC3B,IAAZA,IAAsBA,EAAU,IACpC,IAAI4M,EAAO,EAAO5M,EAAS,CAAEpK,OAAQ,QACrC,OAAOxD,KAAK2N,MAAM5G,EAAKyT,IAE3BiX,EAAgBnxB,UAAUqc,KAAO,SAAU5V,EAAK6G,QAC5B,IAAZA,IAAsBA,EAAU,IACpC,IAAI4M,EAAO,EAAO5M,EAAS,CAAEpK,OAAQ,SACrC,OAAOxD,KAAK2N,MAAM5G,EAAKyT,IAE3BiX,EAAgBnxB,UAAUsc,MAAQ,SAAU7V,EAAK6G,QAC7B,IAAZA,IAAsBA,EAAU,IACpC,IAAI4M,EAAO,EAAO5M,EAAS,CAAEpK,OAAQ,UACrC,OAAOxD,KAAK2N,MAAM5G,EAAKyT,IAE3BiX,EAAgBnxB,UAAU6O,OAAS,SAAUpI,EAAK6G,QAC9B,IAAZA,IAAsBA,EAAU,IACpC,IAAI4M,EAAO,EAAO5M,EAAS,CAAEpK,OAAQ,WACrC,OAAOxD,KAAK2N,MAAM5G,EAAKyT,IAEpBiX,EA3FyB,GCO7B,SAAS,GAAcxW,EAAc7C,GACxC,IAAI7L,EAAIE,EAAIC,EAEZ,YADgB,IAAZ0L,IAAsBA,EAAUvM,GAC7BxC,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAIud,EAASoU,EAAarX,EAC1B,OAAOlQ,EAAYpK,MAAM,SAAU2M,GAC/B,OAAQA,EAAGnC,OACP,KAAK,EACD,GAAI1D,EAAcmU,GAEd,MAAO,CAAC,EAAcA,GAG1B,IAAKhW,EADLsY,EAA0C,QAA/BhR,EAAK6L,EAAQvY,IAAI,gBAA6B,IAAP0M,OAAgB,EAASA,EAAGgR,SAG1E,MAAO,CAAC,EAAc1Y,EAAQ0Y,EAAStC,IAG3C,IAAK/U,EADLyrB,EAAcvZ,EAAQvY,IAAI,gBACc,MAAO,CAAC,EAAa,GAC7D8M,EAAGnC,MAAQ,EACf,KAAK,EAED,OADAmC,EAAGjC,KAAK9H,KAAK,CAAC,EAAG,EAAG,CAAE,IACf,CAAC,EAAa+uB,EAAYC,qBAAqBC,aAC1D,KAAK,EAGD,OAFAvX,EAAS3N,EAAGlC,OAEPxF,EADLsY,EAAuF,QAA5E7Q,EAAuB,QAAjBD,EAAK6N,SAA2B,IAAP7N,OAAgB,EAASA,EAAGpG,mBAAgC,IAAPqG,OAAgB,EAASA,EAAGolB,eAIpH,CAAC,EAAa,GAFV,CAAC,EAAcjtB,EAAQ0Y,EAAStC,IAG/C,KAAK,EAED,OADMtO,EAAGlC,OACF,CAAC,EAAa,GACzB,KAAK,EAEL,MAAO,CAAC,EAAc5F,EAAQ,8BAA+BoW,WCrC7E,IAAI8W,GAA4B,SAAUjkB,GAEtC,SAASikB,EAAWC,EAAUC,EAAa7Z,QACtB,IAAb4Z,IAAuBA,EAAW,oBAClB,IAAhBC,IAA0BA,EAAc,SAC5B,IAAZ7Z,IAAsBA,EAAUvM,GACpC,IAAIG,EAAQ8B,EAAOtN,KAAKR,OAASA,KAIjC,OAHAgM,EAAMgmB,SAAWA,EACjBhmB,EAAMimB,YAAcA,EACpBjmB,EAAMoM,QAAUA,EACTpM,EA6JX,OAtKAxD,EAAUupB,EAAYjkB,GAWtBikB,EAAWzxB,UAAUsX,WAAa,SAAUQ,GAExC,OADApY,KAAKoY,QAAUA,EACRpY,MAEX+xB,EAAWzxB,UAAU6S,YAAc,WAC/B,OAAO9J,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAIsa,EAAQsI,EAAUsP,EAASC,EAC3BnmB,EAAQhM,KACZ,OAAOoK,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAED,GADA1J,EAAOiB,MAAM,IAAM/B,KAAKqa,QAAU,OAAQ,IAAKnW,MAAQU,UAAY,0BAA4B5E,KAAK4iB,SAASlhB,OAAS,aAAc,GAChI1B,KAAK4iB,SAASlhB,OAAS,EAEvB,OADAZ,EAAOiB,MAAM,yBAA0B,GAChC,CAAC,EAAc2H,QAAQC,WAElC2Q,EAAS,IAAImX,GAAgBzxB,KAAKoY,SAClCwK,EAAW5iB,KAAK4iB,SAAS9f,QACzBovB,EAAU,WACN,IAAIE,EAAeC,EAAc3P,EAAc4P,EAC/C,OAAOloB,EAAYpK,MAAM,SAAUyM,GAC/B,OAAQA,EAAGjC,OACP,KAAK,EAcD,OAbA4nB,EAAgBxP,EAAS2P,OAAO,EAAGJ,EAAOF,aAC1CI,EAAe,CACXzP,SAAUuP,EAAOK,eAAeJ,IAEpC1P,EAAe,CACXrY,KAAMhD,EAAIgrB,GACVplB,QAAS,CACL,OAAU,mBACV,eAAgB,oBAEpBzJ,OAAQ,QAEZ1C,EAAOiB,MAAM,IAAMowB,EAAO9X,QAAU,OAAQ,IAAKnW,MAAQU,UAAY,2BAA4B,GAC1F,CAAC,EAAa,GAAcutB,EAAOH,SAAUG,EAAO/Z,UAC/D,KAAK,EAED,OADAka,EAAW7lB,EAAGhC,OACP,CAAC,EAAa6P,EAAO3M,MAAM2kB,EAAU5P,GACnCvY,MAAK,SAAU1J,GAAK,OAAOA,EAAE2B,UAC7B+H,MAAK,SAAUqB,GAAK,OAAOQ,EAAMymB,cAAcL,EAAe5mB,MAC9DrB,MAAK,SAAUuoB,GAChB5xB,EAAOiB,MAAM,IAAMiK,EAAMqO,QAAU,OAAQ,IAAKnW,MAAQU,UAAY,gCAAiC,GACrG8tB,EAAe9Q,UAAUhb,QAAO,SAAU+rB,EAAOlf,EAAUtD,GACvD,IAAI0S,EAAUuP,EAAcjiB,GAE5B,OADArP,EAAOiB,MAAM,IAAMiK,EAAMqO,QAAU,OAAQ,IAAKnW,MAAQU,UAAY,+BAAiCie,EAAQrf,OAAS,IAAMqf,EAAQ9b,IAAM,IAAK,GACxI4rB,EAAMxoB,MAAK,WAAc,OAAO0Y,EAAQhQ,OAAO5D,MAAMwE,GAAUtJ,KAAK0Y,EAAQlZ,SAASoG,MAAM8S,EAAQjZ,aAC3GF,QAAQC,cACZoG,OAAM,SAAU7P,GACf,MAAMA,MAElB,KAAK,EAED,OADAuM,EAAGhC,OACI,CAAC,QAIxB0nB,EAASnyB,KACTuM,EAAG/B,MAAQ,EACf,KAAK,EACD,OAAMoY,EAASlhB,OAAS,EACjB,CAAC,EAAcwwB,KADa,CAAC,EAAa,GAErD,KAAK,EAED,OADA3lB,EAAG9B,OACI,CAAC,EAAa,GACzB,KAAK,EAAG,MAAO,CAAC,WAShCsnB,EAAWzxB,UAAUsyB,gBAAkB,SAAU7rB,GAC7C,IAAKD,EAAcC,GAEf,OAAOA,EAEX,IAAIoJ,EAAQpJ,EAAI6E,QAAQ,UACxB,OAAIuE,EAAQ,GACRA,EAAQpJ,EAAI6E,QAAQ,YACP,EAEF7E,EAAImU,OAAO/K,EAAQ,GAQ3BpJ,EAHIA,EAAImU,OAAO/K,EAAQ,IAKlC4hB,EAAWzxB,UAAUkyB,eAAiB,SAAU5P,GAC5C,IAAI5W,EAAQhM,KACZ,OAAO4iB,EAAS7f,KAAI,SAAUyf,EAASrS,GACnC,IAAI5D,EACAsmB,EAAkB,CAClBngB,GAAI,MAAOvC,EACX3M,OAAQgf,EAAQhf,OAChBuD,IAAKiF,EAAM4mB,gBAAgBpQ,EAAQzb,MAEnCkG,EAAU,GAuBd,OArBAA,EAAU,EAAOA,EAA+C,QAArCV,EAAKP,EAAMoM,QAAQvY,IAAI,gBAA6B,IAAP0M,OAAgB,EAASA,EAAGU,cAC5E9L,IAApBqhB,EAAQ5U,eAEwBzM,IAA5BqhB,EAAQ5U,QAAQX,SAAqD,OAA5BuV,EAAQ5U,QAAQX,UACzDA,EAAU,EAAOA,EAASuV,EAAQ5U,QAAQX,UAGvB,QAAnBuV,EAAQhf,SACRyJ,EAAQ,gBAAkB,yBAGD9L,IAAzBqhB,EAAQ5U,QAAQvD,MAA+C,OAAzBmY,EAAQ5U,QAAQvD,OAEtDwoB,EAAkB,EAAOA,EAAiB,CACtCxoB,KAAMhI,KAAK4M,MAAMuT,EAAQ5U,QAAQvD,UAI3B,EAAOwoB,EAAiB,CACtC5lB,QAASA,QAKrB8kB,EAAWzxB,UAAUmyB,cAAgB,SAAU7P,EAAUkQ,GACrD,OAAO,IAAIppB,SAAQ,SAAUC,EAASC,GAElC,GAAItC,EAAIwrB,EAAe,SACnB,OAAOlpB,EAAO+H,MAAM,4BAA8BmhB,EAActwB,MAAMuwB,KAAO,KAAOD,EAActwB,MAAMR,UAG5G,IADA,IAAIgxB,EAAkB,IAAI1tB,MAAMsd,EAASlhB,QAAQuxB,KAAK,MAC7C1tB,EAAI,EAAGA,EAAIutB,EAAclR,UAAUlgB,SAAU6D,EAAG,CACrD,IAAIkO,EAAWqf,EAAclR,UAAUrc,GAGnC2tB,EAAa1W,SAAS/I,EAASf,GAAI,IAAM,EACrB,MAApBe,EAASsC,OACTid,EAAgBE,GAAc,IAAI9Q,SAGlC4Q,EAAgBE,GAAc,IAAI9Q,SAAS/f,KAAKC,UAAUmR,EAASpJ,MAAOoJ,GAGlF9J,EAAQ,CACJwpB,SAAUL,EAAcK,SACxBvR,UAAWoR,QAIhBjB,EAvKoB,CAwK7BngB,IC1KEwhB,GAA2B,WAO3B,SAASA,EAAUlQ,EAAUC,EAAUzL,QAClB,IAAbwL,IAAuBA,EAAW,SACrB,IAAbC,IAAuBA,EAAW,aACrB,IAAbzL,IAAuBA,EAAW7L,GACtC7L,KAAKkjB,SAAWA,EAChBljB,KAAKmjB,SAAWA,EAChBnjB,KAAK0X,SAAWA,EAoCpB,OAlCA0b,EAAU9yB,UAAUmkB,YAAc,WAC9B,OAAO,IAAIsN,IAAana,WAAW5X,KAAK0X,WAE5C0b,EAAU9yB,UAAU8iB,MAAQ,SAAUhX,GAC9BA,EAAOsR,YACP,GAAO,CACH2F,YAAajX,GACdpM,KAAK0X,UAGR,GAAOtL,EAAQpM,KAAK0X,WAG5B0b,EAAU9yB,UAAUgjB,eAAiB,SAAUlN,GAC3C,OAAO/M,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAIud,EAASgG,EAAa3V,EAASxB,EAAQgM,EAC3C,OAAOhO,EAAYpK,MAAM,SAAUuM,GAW/B,OATA6J,EAAO1W,OAAOyI,OAAO,CACjBoV,QAAS,OACTgG,aAAa,EACbnX,OAAQ,GACRwB,QAAS,IACVwI,GAAQ,IACXmH,EAAUnH,EAAKmH,QAASgG,EAAcnN,EAAKmN,YAAa3V,EAAUwI,EAAKxI,QAASxB,EAASgK,EAAKhK,QAC9FgM,EAAUmL,EAAc,IAAIzX,EAAQD,EAAeQ,UAAY,IAAIP,GAC3D3D,OAAOiE,GACR,CAAC,EAAc,IAAIgnB,EAAUxlB,EAAS2P,EAASnF,WAIlEgb,EAAU9yB,UAAUkjB,gBAAkB,SAAUC,GAC5C,OAAOA,EAAS,CAAE7V,QAAS5N,KAAKkjB,SAAU3F,QAASvd,KAAKmjB,SAAU/K,QAASpY,KAAK0X,YAE7E0b,EAjDmB,GAoDnB5B,GAAQ,IAAI4B,GCxDnBC,GAAgC,WAChC,SAASA,KAeT,OATAA,EAAe3J,OAAS,SAAU3iB,EAAKusB,GACnC,IAAIpgB,EAAM,CAACmgB,EAAeE,KAAMF,EAAeG,IAC3CC,EAAQ,IAAI1R,OAAOuR,EAAU,KAC7BI,EAAWxgB,EAAInO,QAAO,SAAUlC,GAAK,OAAQ4wB,EAAMzsB,KAAKnE,MAAOE,KAAI,SAAUF,GAAK,OAAOA,EAAEqC,QAAQ,IAAK,UAE5G,OADAuuB,EAAQ,IAAI1R,OAAO,MAAQ2R,EAASpwB,KAAK,KAAO,MAAO,MAChDyD,EAAI7B,QAAQuuB,EAAO,IAAMH,EAAW,MAE/CD,EAAeE,KAAO,OACtBF,EAAeG,GAAK,OACbH,EAhBwB,GCK5B,SAAS,GAAmClV,GAC/C,GAAoBnY,EAAOmY,GAAwB,WAAc,OAAOA,GAA0B,GAEtG,IC0yBWwV,GASAC,GAmBAC,GDt0BP,GAAiB,SAAUzb,GAAW,OAAO,WAAc,OAAO,IAAIqZ,GAAgBrZ,KACtF,GAAoB,GACpB,GAAO,SAAU5U,GACjB,OAAO,SAAU/D,EAAGmO,GAChB,OAAOvE,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAIoY,EAASkG,EAAW5b,EAAMwX,EAAiBnT,EAC/C,OAAOqD,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAOD,OANA4N,EAAU3Y,EAAEkY,aACZ2G,EAAY1D,GAAsB,GAAkBxC,GAAxCwC,CAAkDpX,GAC9Dd,EAAOuU,GAAmBxX,EAAEiD,MAC5BwX,EAAkBhU,EAAqBxD,EAAK6P,OAAS7P,EAAK6P,MAAMO,gBAAkB,aAG3E,CAAC,EAAa,GAAcrT,EAAE8e,gBAAiBnG,IAC1D,KAAK,EAGD,OAFArR,EAAMwF,EAAG9B,OACT2C,EAAa1K,EAAKkL,QAASA,GACpB,CAAC,EAAc0Q,EAAU5e,OAAOyI,OAAO,GAAIzF,EAAM,CAChDwX,gBAAiBA,EACjBnT,IAAKA,eAO1B+sB,GAAW,SAAUr0B,EAAGmO,GAAW,OAAO,GAAK,MAAL,CAAYnO,EAAGmO,IACzDmmB,GAAY,SAAUt0B,EAAGmO,GAAW,OAAO,GAAK,OAAL,CAAanO,EAAGmO,IAC3DomB,GAAc,SAAUv0B,EAAGmO,GAAW,OAAO,GAAK,SAAL,CAAenO,EAAGmO,IAC/DqmB,GAAa,SAAUx0B,EAAGmO,GAAW,OAAO,GAAK,QAAL,CAAcnO,EAAGmO,IAC7DsmB,GAAW,SAAUz0B,EAAGmO,GAAW,OAAO,GAAK,MAAL,CAAYnO,EAAGmO,IEnCzDumB,GAAwB,SAAUluB,GACzC,OAAOkP,GAAiBlP,IAMxBmuB,GAAiC,SAAUtmB,GAS3C,SAASsmB,EAAgB7W,EAASvY,GAC9B,IACI+B,EACAwQ,EAFAvL,EAAQhM,KAGRwX,EAAQ,IAAIxP,IAkBhB,OAfIjB,EAAMlC,EADN0S,EADmB,iBAAZgG,EACKA,EAIAA,EAAQ1F,QAHK7S,GAM7BgH,EAAQ8B,EAAOtN,KAAKR,KAAM,CACtBuX,UAAWA,EACXC,MAAOA,EACPzQ,IAAKA,KACH/G,KAEiB,iBAAZud,GACPvR,EAAMiM,cAAcsF,GAEjBvR,EA0FX,OAxHAxD,EAAU4rB,EAAiBtmB,GAqC3BsmB,EAAgB9zB,UAAUif,OAAS,WAE/B,IADA,IAAIC,EAAU,GACLhe,EAAK,EAAGA,EAAKC,UAAUC,OAAQF,IACpCge,EAAQhe,GAAMC,UAAUD,GAK5B,OAHIge,EAAQ9d,OAAS,GACjB1B,KAAKwX,MAAMvW,IAAI,UAAWue,EAAQzc,IAAI0c,oBAAoBnc,KAAK,MAE5DtD,MAOXo0B,EAAgB9zB,UAAUof,OAAS,WAE/B,IADA,IAAIC,EAAU,GACLne,EAAK,EAAGA,EAAKC,UAAUC,OAAQF,IACpCme,EAAQne,GAAMC,UAAUD,GAK5B,OAHIme,EAAQje,OAAS,GACjB1B,KAAKwX,MAAMvW,IAAI,UAAW0e,EAAQ5c,IAAI0c,oBAAoBnc,KAAK,MAE5DtD,MAEXo0B,EAAgB9zB,UAAU8U,cAAgB,SAAUxH,GAChD,OAAOkmB,GAAS9zB,KAAM4N,IAE1BwmB,EAAgB9zB,UAAUT,IAAM,SAAU+N,GACtC,OAAOkmB,GAAS9zB,KAAM4N,IAM1BwmB,EAAgB9zB,UAAUie,cAAgB,WACtC,IAAIxX,EAAM/G,KAAK6X,QACf,GAAI7X,KAAKwX,MAAMvH,KAAO,EAAG,CACrB,IAAIqP,EAAOvY,EAAI6E,QAAQ,MAAQ,EAAI,IAAM,IACzC7E,GAAO,GAAKuY,EAAOha,MAAMgG,KAAKtL,KAAKwX,OAAOzU,KAAI,SAAU4D,GAAK,OAAOA,EAAE,GAAK,IAAMA,EAAE,MAAOrD,KAAK,KAEnG,OAAOyD,GAEXqtB,EAAgB9zB,UAAU+zB,YAAc,SAAUf,GAE9C,OADAtzB,KAAK0C,KAAKqE,IAAMssB,GAAe3J,OAAO1pB,KAAK0C,KAAKqE,IAAKusB,GAC9CtzB,MASXo0B,EAAgB9zB,UAAU0W,MAAQ,SAAUhY,EAAS4gB,EAAgB5G,EAAcC,GAG/E,YAFqB,IAAjBD,IAA2BA,GAAe,QACzB,IAAjBC,IAA2BA,GAAe,GACvCnL,EAAOxN,UAAUwY,QAAQtY,KAAKR,KAAMhB,EAAQgB,KAAM4f,GAAiB,CAAE5G,aAAcA,EAAcC,aAAcA,KAO1Hmb,EAAgB9zB,UAAUuf,UAAY,SAAU7gB,EAASue,EAASvY,GAE9D,YADgB,IAAZuY,IAAsBA,EAAUvd,KAAKuX,WAClC,IAAIvY,EAAQue,EAASvY,IAKhCovB,EAAgB9zB,UAAUg0B,WAAa,WACnC,IAAIvtB,EAAM/G,KAAK6X,QACX1H,EAAQpJ,EAAI6E,QAAQ,SACxB,OAAIuE,GAAS,IAGbA,EAAQpJ,EAAI6E,QAAQ,WACP,EAHF7E,EAAIwtB,UAAU,EAAGpkB,EAAQ,GAM7BpJ,GAEJqtB,EAzHyB,CA0HlCjd,IAESqd,GAAiBL,GAAsBC,IAK9CK,GAA2C,SAAU3mB,GAErD,SAAS2mB,IACL,OAAkB,OAAX3mB,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KA4D/D,OA9DAwI,EAAUisB,EAA2B3mB,GAQrC2mB,EAA0Bn0B,UAAUyE,OAAS,SAAUA,GAEnD,OADA/E,KAAKwX,MAAMvW,IAAI,UAAW8D,GACnB/E,MAQXy0B,EAA0Bn0B,UAAU2f,QAAU,SAAUA,EAASC,QAC3C,IAAdA,IAAwBA,GAAY,GACxC,IAAIzgB,EAAI,WACJ+X,EAAQxX,KAAKwX,MAAMrL,IAAI1M,GAAKO,KAAKwX,MAAM3X,IAAIJ,GAAG0gB,MAAM,KAAO,GAG/D,OAFA3I,EAAM5U,KAAK6c,mBAAmBQ,GAAW,KAAOC,EAAY,MAAQ,SACpElgB,KAAKwX,MAAMvW,IAAIxB,EAAG+X,EAAMlU,KAAK,MACtBtD,MAOXy0B,EAA0Bn0B,UAAU+f,IAAM,SAAUA,GAEhD,OADArgB,KAAKwX,MAAMvW,IAAI,OAAQof,EAAIlc,YACpBnE,MAOXy0B,EAA0Bn0B,UAAU8f,KAAO,SAAUsU,GAEjD,OADA10B,KAAKwX,MAAMvW,IAAI,QAASyzB,EAAIvwB,YACrBnE,MAKXy0B,EAA0Bn0B,UAAUq0B,UAAY,SAAU5mB,GAEtD,OADA/N,KAAKwX,MAAMvW,IAAI,aAAc8M,GACtB/N,MAEXN,OAAOC,eAAe80B,EAA0Bn0B,UAAW,QAAS,CAIhET,IAAK,WAED,OADAG,KAAKwX,MAAMvW,IAAI,SAAU,QAClBjB,MAEXJ,YAAY,EACZsB,cAAc,IAEXuzB,EA/DmC,CAgE5CL,IAESQ,GAA2BT,GAAsBM,IAgBjDI,GAAqCV,GAfS,SAAUrmB,GAE/D,SAASgnB,IACL,OAAkB,OAAXhnB,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAS/D,OAXAwI,EAAUssB,EAAqChnB,GAO/CgnB,EAAoCx0B,UAAUy0B,OAAS,SAAUvd,GAE7D,OADAxX,KAAKwX,MAAMvW,IAAI,UAAWuW,GACnBxX,MAEJ80B,EAZ6C,CAatDL,KAOEO,GAAyC,SAAUlnB,GAEnD,SAASknB,IACL,OAAkB,OAAXlnB,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAE/D,OAJAwI,EAAUwsB,EAAyBlnB,GAI5BknB,EALiC,CAM1CZ,IAESa,GAAyBd,GAAsBa,ID5NtDE,GAAwB,SAAUpnB,GAElC,SAASonB,IACL,OAAkB,OAAXpnB,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAmJ/D,OArJAwI,EAAU0sB,EAAQpnB,GASlBonB,EAAO50B,UAAU60B,UAAY,SAAUjoB,GACnC,GAAI,KAAKlG,KAAKkG,GACV,MAAMyE,MAAM,+EAEhB,OAAOwJ,GAAInD,UAAUod,GAAKp1B,MAAM8X,OAAO,KAAO4L,GAAoBxW,GAAQ,MAAO,kBAUrFgoB,EAAO50B,UAAUqQ,IAAM,SAAU5J,EAAKsuB,EAASC,GAE3C,YADwB,IAApBA,IAA8BA,GAAkB,GAC7CjsB,EAAUrJ,UAAM,OAAQ,GAAQ,WAEnC,OAAOoK,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAAG,MAAO,CAAC,EAAakU,GAAO6W,GAAMv1B,KAAM,iBAAmBs1B,EAAkB,SAAW5R,GAAoB3c,GAAO,MAAO,CAC1HsD,KAAMgrB,KAEd,KAAK,EAED,MAAO,CAAC,EAAc,CACd3yB,KAFG6J,EAAG9B,OAGN+qB,KAAMx1B,KAAKm1B,UAAUpuB,aAajDmuB,EAAO50B,UAAUm1B,aAAe,SAAU1uB,EAAKsuB,EAAS3K,GAEpD,YADmB,IAAfA,IAAyBA,EAAa,CAAEgL,WAAW,IAChDrsB,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAIgF,EAAMgY,EACV,OAAO5S,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAcD,OAbAxF,EAAO,CAAC,4BAA8B0e,GAAoB3c,GAAO,KAC7D2jB,IACIA,EAAWgL,WACX1wB,EAAKpC,KAAK,mBAEV8nB,EAAWiL,2BACX3wB,EAAKpC,KAAK,mCAETqC,EAAoBylB,EAAWkL,UAChC5wB,EAAKpC,KAAK,YAAc8gB,GAAoBgH,EAAWkL,WAG/D5wB,EAAKpC,KAAK,KACH,CAAC,EAAa8b,GAAO6W,GAAMv1B,KAAMgF,EAAK1B,KAAK,KAAM,CAAE+G,KAAMgrB,KACpE,KAAK,EAED,MAAO,CAAC,EAAc,CACd3yB,KAFRsa,EAAOzQ,EAAG9B,OAGF+qB,KAAMJ,GAAKpU,GAAahE,cAgBpDkY,EAAO50B,UAAUu1B,WAAa,SAAU9uB,EAAKsuB,EAASS,EAAUR,EAAiBS,GAG7E,YAFwB,IAApBT,IAA8BA,GAAkB,QAClC,IAAdS,IAAwBA,EAAY,UACjC1sB,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAIyT,EAAUuiB,EACd,OAAO5rB,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAAG,MAAO,CAAC,EAAakU,GAAO1e,KAAKgX,MAAMue,GAAO,iBAAmBD,EAAkB,SAAW5R,GAAoB3c,GAAO,MAAM,KACvI,KAAK,EAOD,OANA0M,EAAWlH,EAAG9B,QAETxF,EADL+wB,EAAWhV,GAAavN,KACc,OAAOzM,KAAKgvB,KAC9CA,EAAWA,EAAS9wB,QAAQ,QAAS,OAGlC,CAAC,EADDkwB,GAAKY,GACcC,kBAAkBZ,EAASS,EAAUC,IACnE,KAAK,EAAG,MAAO,CAAC,EAAcxpB,EAAG9B,gBAYjDyqB,EAAO50B,UAAU41B,gBAAkB,SAAUC,EAASC,GAClD,OAAO/sB,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAIyT,EACJ,OAAOrJ,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAAG,MAAO,CAAC,EAAakU,GAAO1e,KAAKgX,MAAMue,GAAO,8BAAgC7R,GAAoByS,GAAW,sBAAwBC,EAAmB,KAAK,KACrK,KAAK,EAED,MAAO,CAAC,EAAc,CACd1zB,KAFR+Q,EAAWlH,EAAG9B,OAGN+qB,KAAMJ,GAAKpU,GAAavN,cAMpD1K,EAAW,CACPoS,GAAI,YACL+Z,EAAO50B,UAAW,MAAO,MAC5ByI,EAAW,CACPoS,GAAI,qBACL+Z,EAAO50B,UAAW,eAAgB,MACrCyI,EAAW,CACPoS,GAAI,mBACL+Z,EAAO50B,UAAW,aAAc,MACnCyI,EAAW,CACPoS,GAAI,wBACL+Z,EAAO50B,UAAW,kBAAmB,MAC/ByI,EAAW,CAChB+X,GAAY,UACboU,GArJoB,CAuJzBlV,IAESuV,GAAQvW,GAAmBkW,IAKlCmB,GAAuB,SAAUvoB,GAEjC,SAASuoB,IACL,IAAIrqB,EAAmB,OAAX8B,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAEhE,OADAgM,EAAMmD,OAAS0R,GAAmB,MAC3B7U,EA6gBX,OAjhBAxD,EAAU6tB,EAAOvoB,GAMjBpO,OAAOC,eAAe02B,EAAM/1B,UAAW,oBAAqB,CAKxDT,IAAK,WACD,OAAOsb,GAAInD,UAAU2I,GAA4B3gB,KAAM,qBAAsB,yBAEjFJ,YAAY,EACZsB,cAAc,IAElBxB,OAAOC,eAAe02B,EAAM/1B,UAAW,WAAY,CAK/CT,IAAK,WACD,OAAOsb,GAAInD,UAAUse,GAASt2B,MAAO,gBAEzCJ,YAAY,EACZsB,cAAc,IAQlBm1B,EAAM/1B,UAAUi2B,QAAU,SAAUC,GAEhC,YADgB,IAAZA,IAAsBA,EAAU,IAC7B9X,GAAO1e,KAAKgX,MAAMoe,GAAM,oBAAsB1R,GAAoB8S,GAAW,QAWxFH,EAAM/1B,UAAUm2B,aAAe,SAAUC,GACrC,OAAOhY,GAAO1e,KAAKgX,MAAMoe,GAAM,8BAAgCsB,EAAW,MAAM,KAQpFL,EAAM/1B,UAAUq2B,QAAU,SAAUH,EAASI,GAGzC,QAFgB,IAAZJ,IAAsBA,EAAU,SAChB,IAAhBI,IAA0BA,EAAcjD,GAAYkD,OACpDL,EAAQ90B,OAAS,KACjB,MAAMiQ,MAAM,kDAEhB,OAAO+M,GAAO1e,KAAKgX,MAAMoe,GAAM,oBAAsB1R,GAAoB8S,GAAW,iBAAmBI,EAAc,OAKzHP,EAAM/1B,UAAUw2B,SAAW,WACvB,OAAOpY,GAAO1e,KAAKgX,MAAMoe,GAAM,cAQnCiB,EAAM/1B,UAAUy2B,OAAS,SAAUhwB,EAAKuuB,GAEpC,YADwB,IAApBA,IAA8BA,GAAkB,GAC7C5W,GAAO1e,KAAKgX,MAAMoe,GAAM,qBAAuB1R,GAAoB3c,GAAO,gBAAkBuuB,EAAkB,OAUzHe,EAAM/1B,UAAU02B,WAAa,SAAUC,EAAS3B,EAAiB4B,GAE7D,YADiB,IAAbA,IAAuBA,GAAW,GAC/B7tB,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAIuM,EAAI4qB,EAAQvZ,EAAawZ,EAAYC,EACzC,OAAOjtB,EAAYpK,MAAM,SAAUyM,GAC/B,OAAQA,EAAGjC,OACP,KAAK,EAAG,MAAO,CAAC,EAAaxK,KAAKuf,OAAO,oBAAZvf,IAC7B,KAAK,EAID,OAHAuM,EAAKE,EAAGhC,OAAQ0sB,EAAS5qB,EAAGsgB,kBAAmBjP,EAAcrR,EAAG,YAChE6qB,EAAapc,GAAc4C,GAC3ByZ,EAAUD,EAAWlyB,QAAQ,MAAO,OAAOib,MAAM,KAAK,GAAGjb,QAAQ,MAAO,OACjE,CAAC,EAAawZ,GAAO0W,GAAKgC,EAAY,2DAA6D9B,GAAkBjrB,GAAK,CACzHitB,SAAUxO,GAAehiB,EAAcmwB,GAAWA,EAAU,GAAKI,EAAUJ,GAC3ErpB,QAAS,CACLspB,SAAUA,EACVK,6BAA6B,EAC7BC,yBAAyB,EACzBrW,WAAY,CACRpG,KAAM,uBAGd0c,QAAS3O,GAAehiB,EAAcqwB,GAAUA,EAAS,GAAKE,EAAUF,OAEpF,KAAK,EAED,OADA1qB,EAAGhC,OACI,CAAC,WAW5B4rB,EAAM/1B,UAAUo3B,KAAO,SAAUlB,GAE7B,QADgB,IAAZA,IAAsBA,EAAU,IAChCA,EAAQ90B,OAAS,KACjB,MAAMiQ,MAAM,kDAEhB,OAAO+M,GAAO1e,KAAKgX,MAAMoe,GAAM,iBAAmB1R,GAAoB8S,GAAW,QAQrFH,EAAM/1B,UAAUq3B,OAAS,SAAU5wB,EAAK6wB,GAEpC,YADuB,IAAnBA,IAA6BA,EAAiBhE,GAAe8B,WAC1DhX,GAAO1e,KAAKgX,MAAMoe,GAAM,kBAAoB1R,GAAoB3c,GAAO,WAAa6wB,EAAiB,OAUhHvB,EAAM/1B,UAAUu3B,WAAa,SAAUZ,EAAS3B,EAAiB4B,GAE7D,YADiB,IAAbA,IAAuBA,GAAW,GAC/B7tB,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAIuM,EAAI4qB,EAAQvZ,EAAawZ,EAAYC,EACzC,OAAOjtB,EAAYpK,MAAM,SAAUyM,GAC/B,OAAQA,EAAGjC,OACP,KAAK,EAAG,MAAO,CAAC,EAAaxK,KAAKuf,OAAO,oBAAZvf,IAC7B,KAAK,EAID,OAHAuM,EAAKE,EAAGhC,OAAQ0sB,EAAS5qB,EAAGsgB,kBAAmBjP,EAAcrR,EAAG,YAChE6qB,EAAapc,GAAc4C,GAC3ByZ,EAAUD,EAAWlyB,QAAQ,MAAO,OAAOib,MAAM,KAAK,GAAGjb,QAAQ,MAAO,OACjE,CAAC,EAAawZ,GAAO0W,GAAKgC,EAAY,2DAA6D9B,GAAkBjrB,GAAK,CACzHitB,SAAUxO,GAAehiB,EAAcmwB,GAAWA,EAAU,GAAKI,EAAUJ,GAC3ErpB,QAAS,CACLspB,SAAUA,EACVK,6BAA6B,EAC7BC,yBAAyB,EACzBrW,WAAY,CACRpG,KAAM,uBAGd0c,QAAS3O,GAAehiB,EAAcqwB,GAAUA,EAAS,GAAKE,EAAUF,OAEpF,KAAK,EAED,OADA1qB,EAAGhC,OACI,CAAC,WAU5B4rB,EAAM/1B,UAAUw3B,QAAU,SAAUtB,GAEhC,QADgB,IAAZA,IAAsBA,EAAU,IAChCA,EAAQ90B,OAAS,KACjB,MAAMiQ,MAAM,kDAEhB,OAAO+M,GAAO1e,KAAKgX,MAAMoe,GAAM,oBAAsB1R,GAAoB8S,GAAW,QAOxFH,EAAM/1B,UAAU8pB,QAAU,WACtB,OAAO1L,GAAO1e,KAAKgX,MAAMoe,GAAM,aAOnCiB,EAAM/1B,UAAUwuB,iBAAmB,SAAUpE,GACzC,OAAOrhB,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,OAAOoK,EAAYpK,MAAM,SAAUuM,GAC/B,MAAO,CAAC,EAAcmS,GAAO1e,KAAKgX,MAAMoe,GAAM,wBAAyB/qB,GAAK,CAAEqgB,WAAYA,aAQtG2L,EAAM/1B,UAAUy3B,aAAe,WAC3B,OAAOrZ,GAAO1e,KAAKgX,MAAMoe,GAAM,kBAOnCiB,EAAM/1B,UAAU03B,UAAY,SAAUxB,GAElC,QADgB,IAAZA,IAAsBA,EAAU,IAChCA,EAAQ90B,OAAS,KACjB,MAAMiQ,MAAM,kDAEhB,OAAO+M,GAAO1e,KAAKgX,MAAMoe,GAAM,sBAAwB1R,GAAoB8S,GAAW,QAM1FH,EAAM/1B,UAAUgmB,OAAS,WACrB,OAAOjd,EAAUrJ,UAAM,OAAQ,GAAQ,WAEnC,OAAOoK,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAED,OADA+B,EAAG7B,KAAK9H,KAAK,CAAC,EAAG,EAAG,CAAE,IACf,CAAC,EAAa5C,KAAKgX,MAAMoe,IAAM7V,OAAO,SAAxBvf,IACzB,KAAK,EAED,MAAO,CAAC,EADJuM,EAAG9B,OACiBwtB,QAC5B,KAAK,EAID,OAHM1rB,EAAG9B,OAGF,CAAC,GAAc,GAC1B,KAAK,EAAG,MAAO,CAAC,WAShC4rB,EAAM/1B,UAAU43B,QAAU,WACtB,OAAOl4B,KAAKgX,MAAMoe,GAAM,UAAU,GAAO7c,YAAY,IAAIjC,GAAlDtW,CAAgEiN,GAAQ,CAAE,yBAA4B,WAMjHopB,EAAM/1B,UAAU63B,QAAU,WACtB,OAAOn4B,KAAKgX,MAAMoe,GAAM,UAAU,GAAO7c,YAAY,IAAIhC,GAAlDvW,CAAgEiN,GAAQ,CAAE,yBAA4B,WAKjHopB,EAAM/1B,UAAU83B,UAAY,WACxB,OAAOp4B,KAAKgX,MAAMoe,GAAM,UAAU,GAAO7c,YAAY,IAAI7B,GAAlD1W,CAAkEiN,GAAQ,CAAE,yBAA4B,WAKnHopB,EAAM/1B,UAAU0Q,QAAU,WACtB,OAAOhR,KAAKgX,MAAMoe,GAAM,UAAU,GAAO7c,YAAY,IAAI9B,GAAlDzW,CAAgEiN,GAAQ,CAAE,yBAA4B,WAQjHopB,EAAM/1B,UAAU+3B,WAAa,SAAUhD,GACnC,OAAOhsB,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,OAAOoK,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAAG,MAAO,CAAC,EAAakU,GAAO1e,KAAKgX,MAAMoe,GAAM,UAAU,GAAQ,CAC/D/qB,KAAMgrB,EACNpoB,QAAS,CACL,gBAAiB,UAG7B,KAAK,EAED,OADAV,EAAG9B,OACI,CAAC,EAAc2qB,GAAKp1B,eAQ/Cq2B,EAAM/1B,UAAUyO,QAAU,WAEtB,IADA,IAAIyQ,EAAU,GACLhe,EAAK,EAAGA,EAAKC,UAAUC,OAAQF,IACpCge,EAAQhe,GAAMC,UAAUD,GAE5B,OAAO6H,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAIukB,EAAG1e,EACP,OAAOuE,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAED,MAAO,CAAC,GADR+Z,EAAIvkB,KAAKs4B,mBACc/Y,OAAO3b,MAAM2gB,EAAGnZ,EAAc,GAAIF,EAAOsU,IAA3C+E,IACzB,KAAK,EAED,OADA1e,EAAI0G,EAAG9B,OACA,CAAC,EAAc,EAAO2iB,GAAKpM,GAAanb,IAAKA,YAYxEwwB,EAAM/1B,UAAU21B,kBAAoB,SAAUT,EAAMM,EAAUC,GAE1D,YADkB,IAAdA,IAAwBA,EAAY,UACjC1sB,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAIu4B,EAAUC,EAAa9B,EAAU+B,EAAgBlzB,EACrD,OAAO6E,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EASD,OARKxE,EAAO8vB,KACRA,EAAW,WAAc,OAAO,OAEpCyC,EAAW/C,EAAKvlB,KAChBuoB,EAAchc,UAAU+b,EAAWxC,GAAW5xB,WAAY,KAAQo0B,EAAWxC,GAAc,EAAK,EAAI,GACpGW,EAAW9wB,IAEXkwB,EAAS,CAAEY,SAAUA,EAAUgC,YAAa,EAAG3C,UAAWA,EAAW0C,eAAgB,EAAGF,SAAUA,EAAUI,MAAO,WAAYH,YAAaA,IACrI,CAAC,EAAax4B,KAAK44B,YAAYlC,EAAUlB,EAAK1yB,MAAM,EAAGizB,KAClE,KAAK,EACD0C,EAAiBlsB,EAAG9B,OACpBlF,EAAI,EACJgH,EAAG/B,MAAQ,EACf,KAAK,EACD,OAAMjF,EAAIizB,GACV1C,EAAS,CAAEY,SAAUA,EAAUgC,YAAanzB,EAAGwwB,UAAWA,EAAW0C,eAAgBA,EAAgBF,SAAUA,EAAUI,MAAO,WAAYH,YAAaA,IAClJ,CAAC,EAAax4B,KAAK64B,eAAenC,EAAU+B,EAAgBjD,EAAK1yB,MAAM21B,EAAgBA,EAAiB1C,MAFhF,CAAC,EAAa,GAGjD,KAAK,EACD0C,EAAiBlsB,EAAG9B,OACpB8B,EAAG/B,MAAQ,EACf,KAAK,EAED,OADAjF,IACO,CAAC,EAAa,GACzB,KAAK,EAED,OADAuwB,EAAS,CAAEY,SAAUA,EAAUgC,YAAaF,EAAazC,UAAWA,EAAW0C,eAAgBA,EAAgBF,SAAUA,EAAUI,MAAO,YAAaH,YAAaA,IAC7J,CAAC,EAAcx4B,KAAK84B,aAAapC,EAAU+B,EAAgBjD,EAAK1yB,MAAM21B,aAmBjGpC,EAAM/1B,UAAUs4B,YAAc,SAAUlC,EAAUqC,GAC9C,OAAO1vB,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAI8I,EACJ,OAAOsB,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAAG,MAAO,CAAC,EAAakU,GAAO1e,KAAKgX,MAAMoe,GAAM,6BAA+BsB,EAAW,MAAM,GAAQ,CAAErsB,KAAM0uB,KACrH,KAAK,EAOD,MALiB,iBADjBjwB,EAAIyD,EAAG9B,UAIH3B,EAAIA,EAAEkwB,aAEH,CAAC,EAAcljB,WAAWhN,YAgBrDutB,EAAM/1B,UAAUu4B,eAAiB,SAAUnC,EAAUuC,EAAYF,GAC7D,OAAO1vB,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAI8I,EACJ,OAAOsB,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAAG,MAAO,CAAC,EAAakU,GAAO1e,KAAKgX,MAAMoe,GAAM,gCAAkCsB,EAAW,gBAAkBuC,EAAa,KAAK,GAAQ,CAAE5uB,KAAM0uB,KACtJ,KAAK,EAOD,MALiB,iBADjBjwB,EAAIyD,EAAG9B,UAIH3B,EAAIA,EAAEowB,gBAEH,CAAC,EAAcpjB,WAAWhN,YAerDutB,EAAM/1B,UAAUw4B,aAAe,SAAUpC,EAAUuC,EAAYF,GAC3D,OAAO1vB,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAIyT,EACJ,OAAOrJ,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAAG,MAAO,CAAC,EAAakU,GAAO1e,KAAKgX,MAAMoe,GAAM,8BAAgCsB,EAAW,gBAAkBuC,EAAa,KAAK,GAAQ,CAAE5uB,KAAM0uB,KACpJ,KAAK,EAED,MAAO,CAAC,EAAc,CACdr2B,KAFR+Q,EAAWlH,EAAG9B,OAGN+qB,KAAMJ,GAAKpU,GAAavN,cAMpD1K,EAAW,CACPoS,GAAI,eACLkb,EAAM/1B,UAAW,UAAW,MAC/ByI,EAAW,CACPoS,GAAI,oBACLkb,EAAM/1B,UAAW,eAAgB,MACpCyI,EAAW,CACPoS,GAAI,eACLkb,EAAM/1B,UAAW,UAAW,MAC/ByI,EAAW,CACPoS,GAAI,gBACLkb,EAAM/1B,UAAW,WAAY,MAChCyI,EAAW,CACPoS,GAAI,cACLkb,EAAM/1B,UAAW,SAAU,MAC9ByI,EAAW,CACPoS,GAAI,kBACLkb,EAAM/1B,UAAW,aAAc,MAClCyI,EAAW,CACPoS,GAAI,YACLkb,EAAM/1B,UAAW,OAAQ,MAC5ByI,EAAW,CACPoS,GAAI,cACLkb,EAAM/1B,UAAW,SAAU,MAC9ByI,EAAW,CACPoS,GAAI,kBACLkb,EAAM/1B,UAAW,aAAc,MAClCyI,EAAW,CACPoS,GAAI,eACLkb,EAAM/1B,UAAW,UAAW,MAC/ByI,EAAW,CACPoS,GAAI,eACLkb,EAAM/1B,UAAW,UAAW,MAC/ByI,EAAW,CACPoS,GAAI,kBACLkb,EAAM/1B,UAAW,mBAAoB,MACxCyI,EAAW,CACPoS,GAAI,oBACLkb,EAAM/1B,UAAW,eAAgB,MACpCyI,EAAW,CACPoS,GAAI,iBACLkb,EAAM/1B,UAAW,YAAa,MACjCyI,EAAW,CACPoS,GAAI,cACLkb,EAAM/1B,UAAW,SAAU,MAC9ByI,EAAW,CACPoS,GAAI,eACLkb,EAAM/1B,UAAW,UAAW,MAC/ByI,EAAW,CACPoS,GAAI,eACLkb,EAAM/1B,UAAW,UAAW,MAC/ByI,EAAW,CACPoS,GAAI,iBACLkb,EAAM/1B,UAAW,YAAa,MACjCyI,EAAW,CACPoS,GAAI,eACLkb,EAAM/1B,UAAW,UAAW,MAC/ByI,EAAW,CACPoS,GAAI,kBACLkb,EAAM/1B,UAAW,aAAc,MAClCyI,EAAW,CACPoS,GAAI,eACLkb,EAAM/1B,UAAW,UAAW,MAC/ByI,EAAW,CACPoS,GAAI,mBACLkb,EAAM/1B,UAAW,cAAe,MACnCyI,EAAW,CACPoS,GAAI,sBACLkb,EAAM/1B,UAAW,iBAAkB,MACtCyI,EAAW,CACPoS,GAAI,oBACLkb,EAAM/1B,UAAW,eAAgB,MAC7B+1B,EAlhBe,CAmhBxB9V,IAES6U,GAAOpW,GAAmBqX,IAKjC8C,GAA2B,SAAUrrB,GAErC,SAASqrB,IACL,OAAkB,OAAXrrB,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KA8E/D,OAhFAwI,EAAU2wB,EAAWrrB,GASrBqrB,EAAU74B,UAAU6oB,QAAU,SAAUkG,GACpC,OAAOlU,GAAInD,UAAUohB,GAAQp5B,MAAM8X,OAAO,IAAMuX,EAAY,KAAM,iBAMtE8J,EAAU74B,UAAU+4B,UAAY,WAC5B,OAAO3a,GAAO4X,GAASt2B,KAAM,eAOjCm5B,EAAU74B,UAAUg5B,WAAa,SAAUjK,GACvC,OAAO3Q,GAAO1e,KAAKgX,MAAMsf,GAAU,kBAAoBjH,EAAY,OAOvE8J,EAAU74B,UAAUi5B,YAAc,SAAUlK,GACxC,OAAO3Q,GAAO1e,KAAKgX,MAAMsf,GAAU,mBAAqBjH,EAAY,OAOxE8J,EAAU74B,UAAUk5B,cAAgB,SAAUhvB,GAC1C,OAAOkU,GAAO1e,KAAKgX,MAAMsf,GAAU,+BAAiC5S,GAAoBlZ,GAAS,QAOrG2uB,EAAU74B,UAAUm5B,eAAiB,SAAUjvB,GAC3C,OAAOkU,GAAO1e,KAAKgX,MAAMsf,GAAU,gCAAkC5S,GAAoBlZ,GAAS,QAOtG2uB,EAAU74B,UAAUo5B,eAAiB,SAAUlvB,GAC3C,OAAOkU,GAAO1e,KAAKgX,MAAMsf,GAAU,gCAAkC5S,GAAoBlZ,GAAS,QAEtGzB,EAAW,CACPoS,GAAI,mBACLge,EAAU74B,UAAW,YAAa,MACrCyI,EAAW,CACPoS,GAAI,oBACLge,EAAU74B,UAAW,aAAc,MACtCyI,EAAW,CACPoS,GAAI,qBACLge,EAAU74B,UAAW,cAAe,MACvCyI,EAAW,CACPoS,GAAI,uBACLge,EAAU74B,UAAW,gBAAiB,MACzCyI,EAAW,CACPoS,GAAI,wBACLge,EAAU74B,UAAW,iBAAkB,MAC1CyI,EAAW,CACPoS,GAAI,wBACLge,EAAU74B,UAAW,iBAAkB,MAC9ByI,EAAW,CACnB+X,GAAY,aACbqY,GAhFuB,CAkF5BnZ,IAESsW,GAAWtX,GAAmBma,IAKrCQ,GAA0B,SAAU7rB,GAEpC,SAAS6rB,IACL,IAAI3tB,EAAmB,OAAX8B,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAEhE,OADAgM,EAAMmD,OAAS0R,GAAmB,OAC3B7U,EAEX,OANAxD,EAAUmxB,EAAU7rB,GAMb6rB,EAPkB,CAQ3BpZ,IAES6Y,GAAUpa,GAAmB2a,KAQxC,SAAWhG,GACPA,EAAYA,EAAmB,MAAI,GAAK,QACxCA,EAAYA,EAAmB,MAAI,GAAK,QACxCA,EAAYA,EAAuB,UAAI,GAAK,YAHhD,CAIGA,KAAgBA,GAAc,KAKjC,SAAWC,GAIPA,EAAeA,EAAqB,KAAI,GAAK,OAI7CA,EAAeA,EAA0B,UAAI,GAAK,YAIlDA,EAAeA,EAAoC,oBAAI,GAAK,sBAI5DA,EAAeA,EAA8C,8BAAI,MAAQ,gCAhB7E,CAiBGA,KAAmBA,GAAiB,KAEvC,SAAWC,GACPA,EAAiBA,EAA+B,aAAI,GAAK,eACzDA,EAAiBA,EAA2B,SAAI,GAAK,WACrDA,EAAiBA,EAA2B,SAAI,GAAK,WACrDA,EAAiBA,EAAiC,eAAI,GAAK,iBAJ/D,CAKGA,KAAqBA,GAAmB,KE30B3C,IAAI+F,GAA6B,SAAU9rB,GAEvC,SAAS8rB,EAAYrc,EAASvY,GAE1B,YADa,IAATA,IAAmBA,EAAO,2CACvB8I,EAAOtN,KAAKR,KAAMgb,GAAiC,iBAAZuC,EAAuBA,EAAUA,EAAQ1F,SAAU7S,IAAShF,KAmF9G,OAtFAwI,EAAUoxB,EAAa9rB,GASvB8rB,EAAYt5B,UAAUu5B,WAAa,SAAUnnB,GACzC,OAAOyI,GAAInD,UAAU8hB,GAAI95B,KAAM,YAAc0S,EAAK,MAAMuF,cAAcjY,MAAO,kBAQjF45B,EAAYt5B,UAAUy5B,oBAAsB,SAAUrnB,EAAIsnB,GAEtD,YAD4B,IAAxBA,IAAkCA,GAAsB,GACrD3wB,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAIi6B,EAAOnd,EAAQa,EAAKuc,EAAQC,EAAWvL,EAC3C,OAAOxkB,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAGD,OAFAyvB,EAAQ,KACRnd,EAAS9B,GAAchb,KAAK6X,SACvBmiB,GACLC,EAAQvnB,EACD,CAAC,EAAa,IAFY,CAAC,EAAa,GAGnD,KAAK,EAED,MAAO,CAAC,GADRiL,EAAMiG,GAAI9G,GAAQ7E,cAAcjY,OACPgwB,MAAMzQ,OAAO,MAAMxa,OAAO,iCAA9B4Y,IACzB,KAAK,EAED,OADAuc,EAAU3tB,EAAG9B,OAAQ,GAAGka,GACjB,CAAC,EAAahH,EAAIqS,MAAM7G,QAAQ+Q,GAAQrM,MAAM9oB,OAAO,oBAAsB2N,EAAK,KAAK2N,IAAI,EAA3E1C,IACzB,KAAK,EAED,MADAwc,EAAY5tB,EAAG9B,SACE0vB,EAAUz4B,OAAS,GAIhC,MAAMiQ,MAAM,gCAAkCe,EAAK,uBAHnDunB,EAAQE,EAAU,GAAGxV,GAKzBpY,EAAG/B,MAAQ,EACf,KAAK,EAGD,OAFAokB,EAASzT,GAAInD,UAAUoiB,GAAWtd,EAAQ,oDAAsDmd,EAAQ,KAAM,2BACvGhiB,cAAcjY,MACd,CAAC,EAAa0e,GAAOkQ,EAAQ,KACxC,KAAK,EAAG,MAAO,CAAC,EAAcriB,EAAG9B,gBAajDmvB,EAAYt5B,UAAUqQ,IAAM,SAAUwX,EAAUkN,EAASC,GAErD,YADwB,IAApBA,IAA8BA,GAAkB,GAC7CjsB,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAIq6B,EAAO55B,EACX,OAAO2J,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAGD,OAFA6vB,EAAQlf,GAAInD,UAAUoiB,GAAWpf,GAAchb,KAAK6X,SAAU,2CAA6Cyd,EAAkB,SAAWnN,EAAW,MAAO,WACpJlQ,cAAcjY,MACb,CAAC,EAAa0e,GAAO2b,EAAO,CAC3BhwB,KAAMgrB,EAASpoB,QAAS,CACpB,wBAA2B,WAG3C,KAAK,EAED,MAAO,CAAC,EAAc,CACdvK,KAFRjC,EAAI8L,EAAG9B,OAGC+qB,KAAMJ,GAAKpU,GAAavgB,cAM7Cm5B,EAvFqB,CAwF9B5Z,IAESoa,GAAapb,GAAmB4a,IACvCU,GAAsB,SAAUxsB,GAEhC,SAASwsB,IACL,OAAkB,OAAXxsB,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAkE/D,OApEAwI,EAAU8xB,EAAMxsB,GAUhBwsB,EAAKh6B,UAAUi6B,OAAS,SAAUC,GAE9B,YAD8B,IAA1BA,IAAoCA,GAAwB,GACzDx6B,KAAKy6B,GAAG,UAAYD,EAAwB,MAMvDF,EAAKh6B,UAAUo6B,QAAU,WACrB,OAAO16B,KAAKy6B,GAAG,YAKnBH,EAAKh6B,UAAUq6B,QAAU,WACrB,OAAO36B,KAAKy6B,GAAG,YAMnBH,EAAKh6B,UAAUs6B,UAAY,WACvB,OAAO56B,KAAKy6B,GAAG,cAKnBH,EAAKh6B,UAAUu6B,QAAU,WACrB,OAAO76B,KAAKy6B,GAAG,YAMnBH,EAAKh6B,UAAUw6B,OAAS,WACpB,OAAO96B,KAAKy6B,GAAG,WAEnBH,EAAKh6B,UAAUm6B,GAAK,SAAUz1B,GAC1B,OAAO0Z,GAAO1e,KAAKgX,MAAM8iB,GAAK90B,KAElC+D,EAAW,CACPoS,GAAI,eACLmf,EAAKh6B,UAAW,SAAU,MAC7ByI,EAAW,CACPoS,GAAI,gBACLmf,EAAKh6B,UAAW,UAAW,MAC9ByI,EAAW,CACPoS,GAAI,gBACLmf,EAAKh6B,UAAW,UAAW,MAC9ByI,EAAW,CACPoS,GAAI,kBACLmf,EAAKh6B,UAAW,YAAa,MAChCyI,EAAW,CACPoS,GAAI,gBACLmf,EAAKh6B,UAAW,UAAW,MAC9ByI,EAAW,CACPoS,GAAI,eACLmf,EAAKh6B,UAAW,SAAU,MACtBg6B,EArEc,CAsEvB/Z,IAESuZ,GAAM9a,GAAmBsb,IC1KpC/S,GAAKjnB,UAAUy6B,cAAgB,SAAUh0B,GACrC,OAAOqzB,GAAWrzB,GAAO/G,MAAMiY,cAAcjY,OCGjDijB,GAAO3iB,UAAU06B,uBAAyB,WACtC,OAAO3xB,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAIgM,EAAQhM,KACZ,OAAOoK,EAAYpK,MAAM,SAAUuM,GAC/B,MAAO,CAAC,EAAcvM,KAAKwjB,iBAAgB,SAAUjX,GAC7C,IAAIqB,EAAUrB,EAAGqB,QAASwK,EAAU7L,EAAG6L,QACvC,OAAO/O,EAAU2C,OAAO,OAAQ,GAAQ,WACpC,IAAItJ,EACJ,OAAO0H,EAAYpK,MAAM,SAAUyM,GAC/B,OAAQA,EAAGjC,OACP,KAAK,EAAG,MAAO,CAAC,EAAauV,GAAoB,IAAK,kCAAkC/H,UAAUpK,GAASgK,WAAWQ,EAAzF2H,IAC7B,KAAK,EAED,OADArd,EAAO+J,EAAGhC,OACH,CAAC,EAAcmZ,GAAIlhB,EAAKu4B,qBAAqBjjB,UAAUpK,GAASgK,WAAWQ,sBCbtH,IAAI8iB,GAA8B,SAAUptB,GAExC,SAASotB,IACL,OAAkB,OAAXptB,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KA0I/D,OA5IAwI,EAAU0yB,EAAcptB,GASxBotB,EAAa56B,UAAU60B,UAAY,SAAUjoB,GACzC,IAAIjH,EAAIkV,GAAInD,UAAUmjB,GAAWn7B,MAAO,iBAExC,OADAiG,EAAE6R,OAAO,KAAO5K,EAAO,MAChBjH,GAQXi1B,EAAa56B,UAAUqQ,IAAM,SAAUzD,EAAMmoB,GACzC,OAAOhsB,EAAUrJ,UAAM,OAAQ,GAAQ,WAEnC,OAAOoK,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAAG,MAAO,CAAC,EAAakU,GAAO1e,KAAKgX,MAAMokB,GAAa,iBAAmBluB,EAAO,MAAM,GAAQ,CAAE7C,KAAMgrB,KAC5G,KAAK,EAED,MAAO,CAAC,EAAc,CACd3yB,KAFG6J,EAAG9B,OAGN+qB,KAAMx1B,KAAKm1B,UAAUjoB,aAWjDguB,EAAa56B,UAAU+6B,YAAc,SAAUC,GAC3C,OAAOjyB,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAIuF,EACJ,OAAO6E,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EACDjF,EAAI,EACJgH,EAAG/B,MAAQ,EACf,KAAK,EACD,OAAMjF,EAAI+1B,EAAM55B,OACT,CAAC,EAAa1B,KAAK2Q,IAAI2qB,EAAM/1B,GAAG2H,KAAMouB,EAAM/1B,GAAG8vB,UADtB,CAAC,EAAa,GAElD,KAAK,EACD9oB,EAAG9B,OACH8B,EAAG/B,MAAQ,EACf,KAAK,EAED,OADAjF,IACO,CAAC,EAAa,GACzB,KAAK,EAAG,MAAO,CAAC,WAUhC21B,EAAa56B,UAAUi7B,eAAiB,WAEpC,IADA,IAAID,EAAQ,GACH95B,EAAK,EAAGA,EAAKC,UAAUC,OAAQF,IACpC85B,EAAM95B,GAAMC,UAAUD,GAE1B,OAAO6H,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAIuF,EACJ,OAAO6E,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EACDjF,EAAI,EACJgH,EAAG/B,MAAQ,EACf,KAAK,EACD,OAAMjF,EAAI+1B,EAAM55B,OACT,CAAC,EAAa1B,KAAKm1B,UAAUmG,EAAM/1B,IAAI4J,UADd,CAAC,EAAa,GAElD,KAAK,EACD5C,EAAG9B,OACH8B,EAAG/B,MAAQ,EACf,KAAK,EAED,OADAjF,IACO,CAAC,EAAa,GACzB,KAAK,EAAG,MAAO,CAAC,WAUhC21B,EAAa56B,UAAUk7B,gBAAkB,WAErC,IADA,IAAIF,EAAQ,GACH95B,EAAK,EAAGA,EAAKC,UAAUC,OAAQF,IACpC85B,EAAM95B,GAAMC,UAAUD,GAE1B,OAAO6H,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAIuF,EACJ,OAAO6E,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EACDjF,EAAI,EACJgH,EAAG/B,MAAQ,EACf,KAAK,EACD,OAAMjF,EAAI+1B,EAAM55B,OACT,CAAC,EAAa1B,KAAKm1B,UAAUmG,EAAM/1B,IAAI6kB,WADd,CAAC,EAAa,GAElD,KAAK,EACD7d,EAAG9B,OACH8B,EAAG/B,MAAQ,EACf,KAAK,EAED,OADAjF,IACO,CAAC,EAAa,GACzB,KAAK,EAAG,MAAO,CAAC,WAKhCwD,EAAW,CACPoS,GAAI,YACL+f,EAAa56B,UAAW,MAAO,MAClCyI,EAAW,CACPoS,GAAI,oBACL+f,EAAa56B,UAAW,cAAe,MAC1CyI,EAAW,CACPoS,GAAI,uBACL+f,EAAa56B,UAAW,iBAAkB,MAC7CyI,EAAW,CACPoS,GAAI,wBACL+f,EAAa56B,UAAW,kBAAmB,MAC/ByI,EAAW,CACtB+X,GAAY,oBACboa,GA5I0B,CA8I/Blb,IAESob,GAAcpc,GAAmBkc,IACxCO,GAA6B,SAAU3tB,GAEvC,SAAS2tB,IACL,IAAIzvB,EAAmB,OAAX8B,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAEhE,OADAgM,EAAMmD,OAAS0R,GAAmB,MAC3B7U,EAgFX,OApFAxD,EAAUizB,EAAa3tB,GAUvB2tB,EAAYn7B,UAAU43B,QAAU,WAC5B,OAAOl4B,KAAK07B,UAAU,IAAIplB,KAM9BmlB,EAAYn7B,UAAU63B,QAAU,WAC5B,OAAOn4B,KAAK07B,UAAU,IAAInlB,KAK9BklB,EAAYn7B,UAAU83B,UAAY,WAC9B,OAAOp4B,KAAK07B,UAAU,IAAIhlB,KAK9B+kB,EAAYn7B,UAAU0Q,QAAU,WAC5B,OAAOhR,KAAK07B,UAAU,IAAIjlB,KAO9BglB,EAAYn7B,UAAU+3B,WAAa,SAAUhD,GACzC,OAAOhsB,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,OAAOoK,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAAG,MAAO,CAAC,EAAakU,GAAO1e,KAAKgX,MAAMmkB,GAAY,UAAU,GAAQluB,GAAQ,CAAE,gBAAiB,OAAS,CACzG5C,KAAMgrB,MAEd,KAAK,EAED,OADA9oB,EAAG9B,OACI,CAAC,EAAc0wB,GAAWn7B,eAUrDy7B,EAAYn7B,UAAU8pB,QAAU,SAAUrL,GAEtC,YADa,IAATA,IAAmBA,EAAO,KACvBL,GAAO1e,KAAKgX,MAAMmkB,GAAY,iBAAkBluB,GAAQ,CAC3D,WAAY8R,EACZ,gBAAiB,aAGzB0c,EAAYn7B,UAAUo7B,UAAY,SAAU7oB,GACxC,OAAO7S,KAAKgX,MAAMmkB,GAAY,UAAU,GAAO5iB,YAAY1F,EAApD7S,IAEX+I,EAAW,CACPoS,GAAI,eACLsgB,EAAYn7B,UAAW,UAAW,MACrCyI,EAAW,CACPoS,GAAI,eACLsgB,EAAYn7B,UAAW,UAAW,MACrCyI,EAAW,CACPoS,GAAI,iBACLsgB,EAAYn7B,UAAW,YAAa,MACvCyI,EAAW,CACPoS,GAAI,eACLsgB,EAAYn7B,UAAW,UAAW,MACrCyI,EAAW,CACPoS,GAAI,kBACLsgB,EAAYn7B,UAAW,aAAc,MACxCyI,EAAW,CACPoS,GAAI,eACLsgB,EAAYn7B,UAAW,UAAW,MAC9Bm7B,EArFqB,CAsF9Blb,IAES4a,GAAanc,GAAmByc,ICzOpC,SAASE,GAAaC,GACzB,OAAOA,EAAWl6B,OAAS,EAAI,EAAK+D,KAAKo2B,IAAIj4B,MAAM,KAAMg4B,EAAW74B,KAAI,SAAUwC,GAAK,OAAOA,EAAEu2B,UAAa,EAO1G,SAASC,GAAQH,GACpB,IAAK,IAAIr2B,EAAI,EAAGA,EAAIq2B,EAAWl6B,OAAQ6D,IACnCq2B,EAAWr2B,GAAGu2B,MAAQv2B,EAAI,EACtB+B,EAAIs0B,EAAWr2B,GAAI,WACnBw2B,GAAQH,EAAWr2B,GAAGy2B,SAEjB10B,EAAIs0B,EAAWr2B,GAAI,aACxBw2B,GAAQH,EAAWr2B,GAAG02B,UClBlCtoB,GAAQ+a,GAAO,kBAAmB0M,ICAlC7T,GAAKjnB,UAAU47B,2BAA6B,SAAUC,GAClD,OAAO/G,GAAKp1B,KAAM,+BAAiC0jB,GAAoByY,GAAmB,OAE9F5U,GAAKjnB,UAAU87B,4BAA8B,SAAUD,GACnD,OAAO/G,GAAKp1B,KAAM,2CAA6C0jB,GAAoByY,GAAmB,OAE1G5U,GAAKjnB,UAAU+7B,YAAc,SAAUC,GACnC,OAAOlH,GAAKp1B,KAAM,gBAAkBs8B,EAAW,OAEnD/U,GAAKjnB,UAAUi8B,aAAe,SAAUpG,GACpC,OAAOf,GAAKp1B,KAAM,uBAAyB0jB,GAAoByS,GAAW,OCJ9E,ICUWqG,GDVPC,GAA2B,SAAU3uB,GAErC,SAAS2uB,IACL,OAAkB,OAAX3uB,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KA6C/D,OA/CAwI,EAAUi0B,EAAW3uB,GASrB2uB,EAAUn8B,UAAUqQ,IAAM,SAAU8B,GAChC,OAAOpJ,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAI8jB,EAAUje,EACd,OAAOuE,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAKD,MAJoB,iBAATiI,IACPA,EAAO,CAAEpN,KAAMoN,IAEnBqR,EAAWzZ,GAAK,EAAOyQ,GAAS,yCAA0CrI,IACnE,CAAC,EAAaiM,GAAO1e,KAAKgX,MAAM0lB,GAAU,MAAO5Y,IAC5D,KAAK,EAED,OADAje,EAAI0G,EAAG9B,OACA,CAAC,EAAc,EAAOzK,KAAKmpB,QAAQtjB,EAAE6M,IAAK7M,YAUrE42B,EAAUn8B,UAAU6oB,QAAU,SAAUzW,GACpC,OAAOyI,GAAInD,UAAU2kB,GAAQ38B,MAAM8X,OAAO,IAAMpF,EAAK,KAAM,iBAK/D+pB,EAAUn8B,UAAU4P,MAAQ,WACxB,OAAOwO,GAAOvD,GAAInD,UAAUhY,KAAKgX,MAAM0lB,GAAU,aAAc,gBAEnE3zB,EAAW,CACPoS,GAAI,aACLshB,EAAUn8B,UAAW,MAAO,MACnByI,EAAW,CACnB+X,GAAY,aACb2b,GA/CuB,CAiD5Bzc,IAES0c,GAAW1d,GAAmByd,IACrCG,GAA0B,SAAU9uB,GAEpC,SAAS8uB,IACL,OAAkB,OAAX9uB,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAuC/D,OAzCAwI,EAAUo0B,EAAU9uB,GAIpBpO,OAAOC,eAAei9B,EAASt8B,UAAW,UAAW,CAIjDT,IAAK,WACD,OAAOsb,GAAInD,UAAU6kB,GAAQ78B,MAAO,gBAExCJ,YAAY,EACZsB,cAAc,IAKlB07B,EAASt8B,UAAUw8B,KAAO,WACtB,OAAOpe,GAAO1e,KAAKgX,MAAM2lB,GAAS,UAKtCC,EAASt8B,UAAUy8B,OAAS,WACxB,OAAOre,GAAO1e,KAAKgX,MAAM2lB,GAAS,YAKtCC,EAASt8B,UAAU6O,OAAS,WACxB,OAAOuP,GAAO1e,KAAKgX,MAAM2lB,GAAS,mBAEtC5zB,EAAW,CACPoS,GAAI,aACLyhB,EAASt8B,UAAW,OAAQ,MAC/ByI,EAAW,CACPoS,GAAI,eACLyhB,EAASt8B,UAAW,SAAU,MACjCyI,EAAW,CACPoS,GAAI,eACLyhB,EAASt8B,UAAW,SAAU,MAC1Bs8B,EA1CkB,CA2C3Brc,IAESoc,GAAU3d,GAAmB4d,IACpCI,GAA0B,SAAUlvB,GAEpC,SAASkvB,IACL,OAAkB,OAAXlvB,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KA+B/D,OAjCAwI,EAAUw0B,EAAUlvB,GASpBkvB,EAAS18B,UAAUqQ,IAAM,SAAU8B,GAC/B,OAAOpJ,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAI8jB,EAAUje,EACd,OAAOuE,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAKD,MAJoB,iBAATiI,IACPA,EAAO,CAAEpN,KAAMoN,IAEnBqR,EAAWzZ,GAAK,EAAOyQ,GAAS,yCAA0CrI,IACnE,CAAC,EAAaiM,GAAO1e,KAAKgX,MAAM6lB,GAAS,MAAO/Y,IAC3D,KAAK,EAED,OADAje,EAAI0G,EAAG9B,OACA,CAAC,EAAc,EAAOkyB,GAAQ3b,GAAanb,IAAKA,YAK3EkD,EAAW,CACPoS,GAAI,aACL6hB,EAAS18B,UAAW,MAAO,MACnByI,EAAW,CAClB+X,GAAY,YACbkc,GAjCsB,CAmC3Bhd,IAES6c,GAAU7d,GAAmBge,IC9GxC,SAASC,GAASx9B,EAAGsH,GACjB,OAAOm2B,GAAeliB,GAAcvb,EAAEoY,SAAU9Q,GAAKkR,cAAcxY,GC3BvEkU,GAAQ+a,GAAO,WAAYgO,IAC3BhO,GAAMpuB,UAAU68B,WAAa,WACzB,OAAOze,GAAO1e,KAAKgX,MAAMoW,GAAM,aAEnCsB,GAAMpuB,UAAUw8B,KAAO,WACnB,OAAOzzB,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAIo9B,EAAU7f,EAAwB8f,EACtC,OAAOjzB,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAAG,MAAO,CAAC,EAAaxK,KAAKusB,kBAClC,KAAK,EAKD,OAJA6Q,EAAW7wB,EAAG9B,OACd8S,EAAUvC,GAAchb,KAAK6X,SAE7BwlB,EAAUx4B,EAAQ0Y,EADF,mGAC6B,UAAY6f,EAASjO,WAAWxK,GAAK,WAAayY,EAAShQ,KAAKzI,GAAK,aAC3G,CAAC,EAAcjG,GAAOqB,GAAoBsd,aAKrE3O,GAAMpuB,UAAUy8B,OAAS,WACrB,OAAO1zB,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAIo9B,EAAU7f,EAAwB8f,EACtC,OAAOjzB,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAAG,MAAO,CAAC,EAAaxK,KAAKusB,kBAClC,KAAK,EAKD,OAJA6Q,EAAW7wB,EAAG9B,OACd8S,EAAUvC,GAAchb,KAAK6X,SAE7BwlB,EAAUx4B,EAAQ0Y,EADF,mGAC6B,UAAY6f,EAASjO,WAAWxK,GAAK,WAAayY,EAAShQ,KAAKzI,GAAK,cAC3G,CAAC,EAAcjG,GAAOqB,GAAoBsd,aAKrE3O,GAAMpuB,UAAUg9B,sBAAwB,WACpC,OAAOt9B,KAAKgX,MAAMoW,GAAM,sBAAsB1N,OAAO,UAA9C1f,IDzBX,SAAWw8B,GAIPA,EAAcA,EAA2B,YAAI,GAAK,cAIlDA,EAAcA,EAAgC,iBAAI,GAAK,mBAIvDA,EAAcA,EAAwB,SAAI,GAAK,WAZnD,CAaGA,KAAkBA,GAAgB,KAOrC,IAAIe,GAAiC,SAAUzvB,GAK3C,SAASyvB,EAAgBhgB,EAASvY,EAAM5C,EAAMo7B,EAAQC,EAAUC,QAC7C,IAAXF,IAAqBA,GAAS,QACjB,IAAbC,IAAuBA,EAAW,SACb,IAArBC,IAA+BA,GAAmB,GACtD,IAAI1xB,EAAQ8B,EAAOtN,KAAKR,KAAMud,EAASvY,IAAShF,KAqBhD,OApBAgM,EAAM5J,KAAOA,EACb4J,EAAMyxB,SAAWA,EACjBzxB,EAAM0xB,iBAAmBA,EACzB1xB,EAAM2xB,mBAAoB,EAC1B3xB,EAAM4xB,+BAAgC,EAEf,iBAAZrgB,GACPvR,EAAMtJ,KAAK6U,UAAY,GACvBvL,EAAMtJ,KAAKqE,IAAMlC,EAAQmW,GAAcuC,GAAUvY,IAGjDgH,EAAM7D,OAAO80B,GAAS1f,EAAS,MAAOvY,GAG1CgH,EAAM6xB,cAAgB,CAAEC,YAAa,EAAGC,kBAAmB,CAAEC,sBAAsB,EAAMC,oBAAoB,IAE7GjyB,EAAMkyB,YAAcX,EAAgBY,4BAChB,IAAT/7B,GAAyBo7B,GAChCxxB,EAAMoyB,SAASh8B,GAEZ4J,EAo1BX,OAj3BAxD,EAAU+0B,EAAiBzvB,GA+B3ByvB,EAAgBY,qBAAuB,WACnC,MAAO,CACHE,YAAa,MACb/Y,YAAa,2BACb5S,GAAI,uCACJ4rB,WAAY,uCACZ3W,WAAY,CACR4W,aAAc,GACdC,QAAS,GACTC,WAAY,iBACZC,iBAAiB,EACjBC,iBAAiB,EACjBC,cAAe,OACfzZ,MAAO,GACP0Z,YAAa,IAEjBC,eAAgB,IAChBC,uBAAwB,CAAEC,YAAa,GAAIC,qBAAsB,GAAIC,aAAc,GAAIC,MAAO,IAC9Fha,MAAO,eAGfzlB,OAAOC,eAAe49B,EAAgBj9B,UAAW,aAAc,CAC3DT,IAAK,WACD,OAAOG,KAAKoC,KAAKg9B,gBAErBn+B,IAAK,SAAUL,GACXZ,KAAKoC,KAAKg9B,eAAiBx+B,GAE/BhB,YAAY,EACZsB,cAAc,IAElBxB,OAAOC,eAAe49B,EAAgBj9B,UAAW,iBAAkB,CAC/DT,IAAK,WACD,OAAOG,KAAKoC,KAAKi9B,gBAErBp+B,IAAK,SAAUL,GACXZ,KAAKs/B,eAAe1+B,IAExBhB,YAAY,EACZsB,cAAc,IAElBxB,OAAOC,eAAe49B,EAAgBj9B,UAAW,eAAgB,CAC7DT,IAAK,WACD,OAAOG,KAAK69B,cAAcE,kBAAkBE,mBAAqBj+B,KAAKoC,KAAKi9B,eAAiBr/B,KAAKoC,KAAKm9B,oBAE1Gt+B,IAAK,SAAUL,GACXZ,KAAKoC,KAAKm9B,mBAAqB3+B,EAC/BZ,KAAK49B,+BAAgC,EACrC59B,KAAK69B,cAAcE,kBAAkBE,oBAAqB,GAE9Dr+B,YAAY,EACZsB,cAAc,IAElBxB,OAAOC,eAAe49B,EAAgBj9B,UAAW,cAAe,CAC5DT,IAAK,WACD,OAAOqG,EAAqBlG,KAAKoC,KAAKo9B,aAAex/B,KAAKoC,KAAKo9B,YAAc,IAEjFv+B,IAAK,SAAUL,GACXZ,KAAKoC,KAAKo9B,YAAc5+B,EACxBZ,KAAKk+B,YAAYvW,WAAWkX,YAAcj+B,EACtCqE,EAAoBrE,KACpBZ,KAAK2+B,iBAAkB,IAG/B/+B,YAAY,EACZsB,cAAc,IAElBxB,OAAOC,eAAe49B,EAAgBj9B,UAAW,QAAS,CACtDT,IAAK,WACD,OAAOG,KAAKk+B,YAAYvW,WAAWxC,OAEvClkB,IAAK,SAAUL,GACXZ,KAAKoC,KAAK+jB,MAAQvlB,EAClBZ,KAAKk+B,YAAYvW,WAAWxC,MAAQvkB,GAExChB,YAAY,EACZsB,cAAc,IAElBxB,OAAOC,eAAe49B,EAAgBj9B,UAAW,iBAAkB,CAC/DT,IAAK,WACD,OAAOG,KAAKk+B,YAAYY,gBAE5B79B,IAAK,SAAUL,GACXZ,KAAKk+B,YAAYY,eAAiBl+B,GAEtChB,YAAY,EACZsB,cAAc,IAElBxB,OAAOC,eAAe49B,EAAgBj9B,UAAW,cAAe,CAC5DT,IAAK,WACD,OAAOG,KAAKoC,KAAKyjB,aAErB5kB,IAAK,SAAUL,GACX,IAAKqE,EAAoBrE,IAAUA,EAAMc,OAAS,IAC9C,MAAMiQ,MAAM,oDAEhB3R,KAAKoC,KAAKyjB,YAAcjlB,EACnB0G,EAAItH,KAAK69B,cAAe,oBACzB79B,KAAK69B,cAAc4B,eAAiB,IAEpCz/B,KAAK69B,cAAc4B,eAAe7zB,QAAQ,uBAAyB,GACnE5L,KAAK69B,cAAc4B,eAAe78B,KAAK,uBAE3C5C,KAAK69B,cAAcE,kBAAkBC,sBAAuB,GAEhEp+B,YAAY,EACZsB,cAAc,IAElBxB,OAAOC,eAAe49B,EAAgBj9B,UAAW,aAAc,CAC3DT,IAAK,WACD,OAAOG,KAAKk+B,YAAYvW,WAAW8W,YAEvCx9B,IAAK,SAAUL,GACXZ,KAAKk+B,YAAYvW,WAAW8W,WAAa79B,GAE7ChB,YAAY,EACZsB,cAAc,IAElBxB,OAAOC,eAAe49B,EAAgBj9B,UAAW,sBAAuB,CACpET,IAAK,WACD,OAAOG,KAAKk+B,YAAYvW,WAAWiX,eAEvC39B,IAAK,SAAUL,GACXZ,KAAKk+B,YAAYvW,WAAWiX,cAAgBh+B,GAEhDhB,YAAY,EACZsB,cAAc,IAElBxB,OAAOC,eAAe49B,EAAgBj9B,UAAW,kBAAmB,CAChET,IAAK,WACD,OAAOG,KAAKk+B,YAAYvW,WAAWgX,iBAEvC19B,IAAK,SAAUL,GACXZ,KAAKk+B,YAAYvW,WAAWgX,gBAAkB/9B,GAElDhB,YAAY,EACZsB,cAAc,IAElBxB,OAAOC,eAAe49B,EAAgBj9B,UAAW,kBAAmB,CAChET,IAAK,WACD,OAAOG,KAAKk+B,YAAYvW,WAAW+W,iBAEvCz9B,IAAK,SAAUL,GACXZ,KAAKk+B,YAAYvW,WAAW+W,gBAAkB99B,GAElDhB,YAAY,EACZsB,cAAc,IAElBxB,OAAOC,eAAe49B,EAAgBj9B,UAAW,qBAAsB,CACnET,IAAK,WACD,OAAOG,KAAKy9B,SAASiC,WAAU,SAAU78B,GAAK,OAAyB,IAAlBA,EAAE88B,gBAAyB,GAEpF//B,YAAY,EACZsB,cAAc,IAElBxB,OAAOC,eAAe49B,EAAgBj9B,UAAW,eAAgB,CAC7DT,IAAK,WACD,OAAIsG,EAAQnG,KAAKk+B,YAAYvW,WAAW4W,eAAiBv+B,KAAKk+B,YAAYvW,WAAW4W,aAAa78B,OAAS,EAChG1B,KAAKk+B,YAAYvW,WAAW4W,aAAa,GAE7C,MAEX3+B,YAAY,EACZsB,cAAc,IAElBxB,OAAOC,eAAe49B,EAAgBj9B,UAAW,kBAAmB,CAChET,IAAK,WACD,OAAIG,KAAK4/B,mBACE5/B,KAAK6/B,qBAET,MAEXjgC,YAAY,EACZsB,cAAc,IAKlBq8B,EAAgBj9B,UAAUw/B,WAAa,WACnC,IAAIC,EAAU,IAAIC,GAAchgC,KAAM27B,GAAa37B,KAAKy9B,UAAW,GAEnE,OADAz9B,KAAKy9B,SAAS76B,KAAKm9B,GACZA,GAKXxC,EAAgBj9B,UAAUu/B,mBAAqB,WAE3C,IAAII,EAAejgC,KAAKy9B,SAASiC,WAAU,SAAU78B,GAAK,OAAyB,IAAlBA,EAAE88B,eACnE,GAAIM,GAAgB,EAChB,OAAOjgC,KAAKy9B,SAASwC,GAEzB,IAAIF,EAAU,IAAIC,GAAchgC,KAAM27B,GAAa37B,KAAKy9B,UAAW,GAEnE,OADAz9B,KAAKy9B,SAAS76B,KAAKm9B,GACZA,GAOXxC,EAAgBj9B,UAAU89B,SAAW,SAAU8B,GAC3ClgC,KAAKoC,KAAO89B,EACZ,IAAIC,EAAiB99B,KAAK4M,MAAMixB,EAASE,gBACrCC,EAAUh+B,KAAK4M,MAAMixB,EAASI,uBAKlC,OAJID,GAAWA,EAAQ3+B,OAAS,IAC5B1B,KAAKk+B,YAAcmC,EAAQ,IAE/BrgC,KAAKugC,YAAYJ,GACVngC,MAKXu9B,EAAgBj9B,UAAUuQ,KAAO,WAC7B,OAAOxH,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAIwuB,EAAM0R,EACV,OAAO91B,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAAG,MAAO,CAAC,EAAaxK,KAAK+O,QAAQ,KAAM,qBAChD,KAAK,EAED,OADAyf,EAAOjiB,EAAG9B,OACH,CAAC,EAAasV,GAAoB/f,KAAM,wBAA0BwuB,EAAK7J,GAAK,IAA9D5E,IACzB,KAAK,EAGD,OAFAmgB,EAAW3zB,EAAG9B,OACdzK,KAAK09B,iBAAmBlP,EAAKgS,iBACtB,CAAC,EAAcxgC,KAAKo+B,SAAS8B,YAUxD3C,EAAgBj9B,UAAUmgC,KAAO,SAAU3I,GAEvC,YADgB,IAAZA,IAAsBA,GAAU,GAC7BzuB,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAI0gC,EAAoBC,EAAWC,EAAUjjB,EAAKpL,EAAOtM,EAAG46B,EAAUC,EAAqBC,EAAStgC,EACpG,OAAO2J,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EACD,GAAqB,OAAjBxK,KAAKoC,KAAKuiB,GACV,MAAMhT,MAAM,oGAEhB,OAAK3R,KAAK29B,mBACV+C,EAAqB1gC,KAAKghC,eAC1BrjB,EAAMiG,GAAI5I,GAAchb,KAAK6X,UAAUI,cAAcjY,MACrDuS,EAAQoL,EAAI8G,cACZ9G,EAAIye,4BAA4BsE,EAAmBx7B,QAAQ,QAAS,MAC/Dqa,OAAO,SAAU,QAAS,WAAY,OAAQ,UAAU5G,QAAQpG,EADrEoL,GAC8ExT,MAAK,SAAU82B,GAAM,OAAON,EAAYM,KACtHtjB,EAAI4B,OAAO,OAAO5G,QAAQpG,EAA1BoL,GAAmCxT,MAAK,SAAU+2B,GAAM,OAAON,EAAWM,EAAG9c,OAEtE,CAAC,EAAa7R,EAAMU,YARS,CAAC,EAAa,GAStD,KAAK,EAED1G,EAAG9B,QACHxE,EAAI8Z,GAAoB6gB,EAAU,gCAChCppB,MAAMvW,IAAI,WAAY,GAAK0/B,EAAUQ,QACvCl7B,EAAEuR,MAAMvW,IAAI,UAAW,GAAK0/B,EAAUS,OACtCn7B,EAAEuR,MAAMvW,IAAI,WAAY,GAAK0/B,EAAU5T,UACvC/sB,KAAKghC,eAAiB/6B,EAAEsY,gBACnBrY,EAAqBlG,KAAKk+B,YAAYa,0BACvC/+B,KAAKk+B,YAAYa,uBAAyB,IAE9C/+B,KAAKk+B,YAAYa,uBAAuBG,aAAe,CAAEmC,YAAaX,GACjEx6B,EAAqBlG,KAAKk+B,YAAYa,uBAAuBuC,kBAC9DthC,KAAKk+B,YAAYa,uBAAuBuC,eAAiB,IAE7DthC,KAAKk+B,YAAYa,uBAAuBuC,eAAeD,YAAc,CACjEnH,OAAQyG,EAAUY,OAClB7c,OAAQic,EAAUQ,OAClB7E,SAAUqE,EAAU5T,SACpB/I,MAAO2c,EAAUS,OAErBphC,KAAKk+B,YAAYvW,WAAW3D,MAAQ2c,EAAUS,MAC9CphC,KAAKk+B,YAAYvW,WAAWjD,OAASic,EAAUQ,OAC/CnhC,KAAKk+B,YAAYvW,WAAWuS,OAASyG,EAAUY,OAC/CvhC,KAAKk+B,YAAYvW,WAAW2U,SAAWqE,EAAU5T,SACjDxgB,EAAG/B,MAAQ,EACf,KAAK,EACD,OAAMxK,KAAKoC,KAAKo/B,8BAAsC,CAAC,EAAa,GAC7D,CAAC,EAAa9iB,GAAOue,GAASj9B,KAAM,wBAA0BA,KAAKoC,KAAKuiB,GAAK,oBACxF,KAAK,EACDpY,EAAG9B,OACH8B,EAAG/B,MAAQ,EACf,KAAK,EAgBD,OAfAq2B,EAAWnhC,OAAOyI,OAAO2S,GAAS,0BAA2B,CACzD2mB,aAAczhC,KAAKoC,KAAKq/B,cAAgB,GACxCrB,eAAgBpgC,KAAK0hC,oBACrB7b,YAAa7lB,KAAKslB,YAClBgb,sBAAuBtgC,KAAK2hC,2BAC5Bxb,MAAOnmB,KAAKmlB,MACZqa,YAAax/B,KAAK6+B,eAElB7+B,KAAK29B,mBAAqB39B,KAAK49B,iCAC/BkD,EAAsB9gC,KAAK49B,8BAAgC59B,KAAK4hC,aAAe5hC,KAAKghC,eACpFH,EAAW,EAAOA,EAAU,CACxBxB,eAAgByB,KAGxBC,EAAU9D,GAASj9B,KAAM,wBAA0BA,KAAKoC,KAAKuiB,GAAK,cAC3D,CAAC,EAAajG,GAAOqiB,EAAS9zB,GAAQ,CAAE,WAAY,KAAO5C,GAAKw2B,MAC3E,KAAK,EAGD,OAFAt0B,EAAG9B,OACHhK,GAAI,EACCq3B,EACE,CAAC,EAAapZ,GAAOue,GAASj9B,KAAM,wBAA0BA,KAAKoC,KAAKuiB,GAAK,eAD/D,CAAC,EAAa,GAEvC,KAAK,GACDlkB,EAAI8L,EAAG9B,UAEHzK,KAAKoC,KAAKo/B,+BAAgC,GAE9Cj1B,EAAG/B,MAAQ,EACf,KAAK,EAGD,OAFAxK,KAAK29B,mBAAoB,EACzB39B,KAAK49B,+BAAgC,EAC9B,CAAC,EAAcn9B,WAQ1C88B,EAAgBj9B,UAAUuhC,oBAAsB,WAC5C,OAAOx4B,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAI6F,EACJ,OAAOuE,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EACD,GAAqB,OAAjBxK,KAAKoC,KAAKuiB,GACV,MAAMhT,MAAM,oGAEhB,MAAO,CAAC,EAAa+M,GAAOue,GAASj9B,KAAM,wBAA0BA,KAAKoC,KAAKuiB,GAAK,iBAAkBta,GAAKyQ,GAAS,6BACxH,KAAK,EAGD,OAFAjV,EAAI0G,EAAG9B,OACPzK,KAAKo+B,SAASv4B,GACP,CAAC,WAQ5B03B,EAAgBj9B,UAAUwhC,cAAgB,WACtC,OAAOz4B,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,OAAOoK,EAAYpK,MAAM,SAAUuM,GAC/B,MAAO,CAAC,EAAcvM,KAAK+hC,gBAAgB,yBAavDxE,EAAgBj9B,UAAU0hC,gBAAkB,SAAUtvB,GAClD,OAAO1S,KAAKiiC,aAAY,SAAUl8B,GAAK,OAAOA,EAAE2M,KAAOA,MAO3D6qB,EAAgBj9B,UAAU2hC,YAAc,SAAUC,GAE9C,IAAK,IAAI38B,EAAI,EAAGA,EAAIvF,KAAKy9B,SAAS/7B,OAAQ6D,IAEtC,IAAK,IAAIiG,EAAI,EAAGA,EAAIxL,KAAKy9B,SAASl4B,GAAGy2B,QAAQt6B,OAAQ8J,IAEjD,IAAK,IAAI1D,EAAI,EAAGA,EAAI9H,KAAKy9B,SAASl4B,GAAGy2B,QAAQxwB,GAAGywB,SAASv6B,OAAQoG,IAE7D,GAAIo6B,EAAUliC,KAAKy9B,SAASl4B,GAAGy2B,QAAQxwB,GAAGywB,SAASn0B,IAC/C,OAAO9H,KAAKy9B,SAASl4B,GAAGy2B,QAAQxwB,GAAGywB,SAASn0B,GAM5D,OAAO,MAUXy1B,EAAgBj9B,UAAU6hC,KAAO,SAAUxkB,EAAKykB,EAAUjd,EAAO2S,EAASuK,GAEtE,YADgB,IAAZvK,IAAsBA,GAAU,GAC7BzuB,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAIsiC,EACJ,OAAOl4B,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAAG,MAAO,CAAC,EAAa+3B,GAAqB5kB,EAAKykB,EAAUjd,EAAOnlB,KAAKwiC,WAAYH,IACzF,KAAK,EAED,OADAC,EAAO/1B,EAAG9B,OACH,CAAC,EAAczK,KAAK+2B,OAAOuL,EAAMxK,YAW5DyF,EAAgBj9B,UAAUy2B,OAAS,SAAUuL,EAAMxK,GAE/C,YADgB,IAAZA,IAAsBA,GAAU,GAC7BzuB,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAI+G,EAAK07B,EAAUC,EAAUC,EAASC,EAAUte,EAAmBkR,EAAM9U,EACzE,OAAOtW,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAGD,OADA83B,EAAK/B,YAAYvgC,KAAK6iC,eAChB59B,EAAoBjF,KAAKoC,KAAKi9B,gBAAwB,CAAC,EAAa,IAC1Et4B,EAAM,IAAIwG,IAAIvN,KAAKoC,KAAKi9B,gBACxBoD,EAAW,SAAU5/B,GAAK,OAAOA,EAAEqC,QAAQ,mCAAoC,mBACzE6B,EAAI+7B,aAAa32B,IAAI,aAAepF,EAAI+7B,aAAa32B,IAAI,YAAcpF,EAAI+7B,aAAa32B,IAAI,aAClGu2B,EAAWD,EAAS17B,EAAI+7B,aAAajjC,IAAI,aACzC8iC,EAAUF,EAAS17B,EAAI+7B,aAAajjC,IAAI,YACxC+iC,EAAWH,EAAS17B,EAAI+7B,aAAajjC,IAAI,aAElC,CAAC,GADRykB,EAAOL,GAAKjJ,GAAchb,KAAK6X,WACL0H,OAAO,KAAZ+E,KALkG,CAAC,EAAa,IAMzI,KAAK,EAED,OADK/X,EAAG9B,OACCka,KAAO+d,EAAkB,CAAC,EAAa,GACzC,CAAC,EAAape,EAAKP,YAAY4e,IAC1C,KAAK,EAED,MAAO,CAAC,EADEp2B,EAAG9B,OACgBkT,IAAI0e,YAAYuG,GAAUrjB,OAAO,oBAAzCwjB,IACzB,KAAK,EACDvN,EAAOjpB,EAAG9B,OACViW,EAAQ,GACJ1gB,KAAKk+B,YAAYvW,aACbrgB,EAAItH,KAAKk+B,YAAYvW,WAAY,gBACjCjH,EAAMsiB,WAAahjC,KAAKk+B,YAAYvW,WAAWqb,YAE/C17B,EAAItH,KAAKk+B,YAAYvW,WAAY,gBACjCjH,EAAMuiB,WAAajjC,KAAKk+B,YAAYvW,WAAWsb,YAE/C37B,EAAItH,KAAKk+B,YAAYvW,WAAY,qBACjCjH,EAAMwiB,gBAAkBljC,KAAKk+B,YAAYvW,WAAWub,iBAEpD57B,EAAItH,KAAKk+B,YAAYvW,WAAY,aACjCjH,EAAMyiB,QAAUnjC,KAAKk+B,YAAYvW,WAAWwb,UAGpDb,EAAKhD,eAAe9J,EAAK3I,kBAAmBnM,GAC5CnU,EAAG/B,MAAQ,EACf,KAAK,EAAG,MAAO,CAAC,EAAa83B,EAAK7B,KAAK3I,IACvC,KAAK,EAED,OADAvrB,EAAG9B,OACI,CAAC,EAAc63B,WAY1C/E,EAAgBj9B,UAAUg/B,eAAiB,SAAUv4B,EAAK2Z,GAClD5Z,EAAcC,KAEdA,EAAMA,EAAI7B,QAAQ,yCAA0C,MAEhElF,KAAKoC,KAAKi9B,eAAiBt4B,EAC3B/G,KAAK29B,mBAAoB,EAOpB39B,KAAK49B,gCACN59B,KAAK4hC,aAAe76B,EACpB/G,KAAK69B,cAAcE,kBAAkBE,oBAAqB,GAG9Dj+B,KAAKk+B,YAAYvW,WAAWub,gBAAkB,EAC1Ch9B,EAAqBwa,KACjBpZ,EAAIoZ,EAAO,gBACX1gB,KAAKk+B,YAAYvW,WAAWqb,WAAatiB,EAAMsiB,YAE/C17B,EAAIoZ,EAAO,gBACX1gB,KAAKk+B,YAAYvW,WAAWsb,WAAaviB,EAAMuiB,YAE/C37B,EAAIoZ,EAAO,qBACX1gB,KAAKk+B,YAAYvW,WAAWub,gBAAkBxiB,EAAMwiB,iBAEpD57B,EAAIoZ,EAAO,aACX1gB,KAAKk+B,YAAYvW,WAAWwb,QAAUziB,EAAMyiB,WAUxD5F,EAAgBj9B,UAAU8iC,8BAAgC,SAAUr8B,EAAK2Z,GACrE,OAAOrX,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAIm2B,EAASiM,EAAUja,EAAUtF,EAAS5Y,EAC1C,OAAOG,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EASD,OARA2rB,EAAU,IAAI5oB,IAAIxG,GAClBq7B,EAAWpiC,KAAKoC,KAAKihC,SAASn+B,QAAQ,YAAa,IACnDijB,EAAWgO,EAAQmN,SAASnjB,MAAM,UAAUpV,OAC5C8X,EAAUoa,GAASj9B,KAAM,2CACjBwX,MAAMvW,IAAI,gBAAiB,IAAMwe,mBAAmB0I,GAAY,KACxEtF,EAAQrL,MAAMvW,IAAI,WAAY,IAAMwe,mBAAmB2iB,GAAY,KACnEvf,EAAQrL,MAAMvW,IAAI,cAAe,IAAMwe,mBAAmB1Y,GAAO,KACjE8b,EAAQtD,OAAO,qBACR,CAAC,EAAab,GAAOmE,IAChC,KAAK,EAID,OAHA5Y,EAASsC,EAAG9B,OAEZzK,KAAKs/B,eAAer1B,EAAO4iB,kBAAmBnM,GACvC,CAAC,WAU5B6c,EAAgBj9B,UAAUijC,cAAgB,SAAUC,GAChD,OAAOn6B,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAIyjC,EACJ,OAAOr5B,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAAG,MAAO,CAAC,EAAa8V,GAA8BtF,GAAchb,KAAK6X,SAAU,uBAC/EI,cAAcjY,MACd+E,OAAO,SAAWy+B,GAClBjkB,OAAO,YAHae,IAI7B,KAAK,EAED,IADAmjB,EAAgBl3B,EAAG9B,QACD/I,OAAS,EACvB,MAAMiQ,MAAM,+BAAiC6xB,EAAW,KAE5D,MAAO,CAAC,EAAcxjC,KAAK0jC,qBAAqBD,EAAc,GAAGE,oBAUrFpG,EAAgBj9B,UAAUojC,qBAAuB,SAAUE,GACvD,OAAOv6B,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAIyjC,EACJ,OAAOr5B,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAAG,MAAO,CAAC,EAAa8V,GAA8BtF,GAAchb,KAAK6X,SAAU,uBAC/EI,cAAcjY,MACd+E,OAAO,iBAAmB6+B,EAAkB,KAC5CrkB,OAAO,oBAAqB,QAHRe,IAI7B,KAAK,EAED,IADAmjB,EAAgBl3B,EAAG9B,QACD/I,OAAS,EACvB,MAAMiQ,MAAM,wCAA0CiyB,EAAkB,MAU5E,OARA5jC,KAAKoC,KAAKq/B,aAAe,CAACgC,EAAc,GAAGI,mBAC3C7jC,KAAKk+B,YAAYvW,WAAW4W,aAAe,CAACkF,EAAc,GAAGI,mBAC7D7jC,KAAKk+B,YAAYvW,WAAW6W,QAAU,CAAC,CAC/B9rB,GAAIkxB,EACJ12B,KAAMu2B,EAAc,GAAGtd,MACvB2d,KAAM,GACNC,IAAKN,EAAc,GAAGI,oBAEvB,CAAC,WAU5BtG,EAAgBj9B,UAAUyO,QAAU,WAEhC,IADA,IAAIyQ,EAAU,GACLhe,EAAK,EAAGA,EAAKC,UAAUC,OAAQF,IACpCge,EAAQhe,GAAMC,UAAUD,GAE5B,OAAO6H,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAIgkC,EAAQC,EAAUzV,EAAM0V,EAC5B,OAAO95B,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAED,OADAw5B,EAAS/G,GAASj9B,KAAM,oDAAoDuf,OAAO,mBAAoB,sBAAuB,MACvH,CAAC,EAAab,GAAOslB,IAChC,KAAK,EAGD,OAFAC,EAAW13B,EAAG9B,OAEP,CAAC,GADR+jB,EAAQpF,GAAK6a,EAAS,aAAchsB,cAAcjY,MAAM6tB,MAAM1E,QAAQnpB,KAAKoC,KAAKuiB,KACtDpF,OAAO3b,MAAM4qB,EAAMpjB,EAAc,GAAIF,EAAOsU,IAAjDgP,IACzB,KAAK,EAED,OADA0V,EAAW33B,EAAG9B,OACP,CAAC,EAAc,EAAQ2iB,GAAKpM,GAAakjB,IAAYjsB,cAAcjY,MAAOkkC,YAWrG3G,EAAgBj9B,UAAU6H,OAAS,SAAU2X,EAAQ9a,GACjDhF,KAAK0C,KAAK6U,UAAYuI,EAAOpd,KAAKqE,IAClC/G,KAAK0C,KAAKqE,IAAMlC,EAAQ7E,KAAK0C,KAAK6U,UAAWvS,GAAQ,IACrDhF,KAAKiY,cAAc6H,IAEvByd,EAAgBj9B,UAAUohC,kBAAoB,WAC1C,OAAOr/B,KAAKC,UAAUtC,KAAK6iC,gBAE/BtF,EAAgBj9B,UAAUqhC,yBAA2B,WACjD,OAAI3hC,KAAKk+B,YACE77B,KAAKC,UAAU,CAACtC,KAAKk+B,cAGrB77B,KAAKC,UAAU,OAG9Bi7B,EAAgBj9B,UAAUigC,YAAc,SAAUtE,GAG9C,GADAj8B,KAAKy9B,SAAW,GACZxB,GAAYA,EAASv6B,OAAQ,CAC7B,IAAK,IAAI6D,EAAI,EAAGA,EAAI02B,EAASv6B,OAAQ6D,IAGjC,OADkB+B,EAAI20B,EAAS12B,GAAI,eAAiB02B,EAAS12B,GAAGu4B,YAAc,GAE1E,KAAK,EAEGx2B,EAAI20B,EAAS12B,GAAI,qBACjBvF,KAAK69B,cAAgB5B,EAAS12B,GAI9BvF,KAAKmkC,kBAAkB,IAAIC,GAAanI,EAAS12B,KAErD,MACJ,KAAK,EACD,IAAI8+B,EAAO,IAAIC,GAAkBrI,EAAS12B,IAC1CvF,KAAKukC,gBAAgBF,EAAMA,EAAK3hC,KAAK8hC,UACrC,MAEJ,KAAK,EACD,IAAIC,EAAWxI,EAAS12B,GACpBF,EAAO,IAAIq/B,GAAeD,EAASE,UAAWF,GAClDzkC,KAAKukC,gBAAgBl/B,EAAMA,EAAK3C,KAAK8hC,UAKjDzI,GAAQ/7B,KAAKy9B,YAGrBF,EAAgBj9B,UAAUuiC,YAAc,WACpC,IAAI72B,EAAQhM,KAEZ+7B,GAAQ/7B,KAAKy9B,UAEb,IAAImH,EAAa,GAoBjB,OAnBA5kC,KAAKy9B,SAAS97B,SAAQ,SAAUo+B,GAC5BA,EAAQ/D,QAAQr6B,SAAQ,SAAUkjC,GAC1BA,EAAO5I,SAASv6B,OAAS,EAEzBkjC,EAAWhiC,KAAK,CACZkiC,YAAaD,EAAOniC,KAAKoiC,YACzBC,SAAU/4B,EAAMg5B,eAAejF,EAAQgF,UACvCP,SAAUK,EAAOniC,KAAK8hC,WAI1BK,EAAO5I,SAASt6B,SAAQ,SAAUsjC,GAC9BA,EAAQviC,KAAKqiC,SAAW/4B,EAAMg5B,eAAejF,EAAQgF,UACrDH,EAAWhiC,KAAKoJ,EAAMk5B,oBAAoBD,GAASviC,eAKnEkiC,EAAWhiC,KAAK5C,KAAK69B,eACd+G,GAEXrH,EAAgBj9B,UAAU0kC,eAAiB,SAAUpkC,GACjD,OAAIA,EAAQ,GAAKA,EAAQ,EACd,GAEJ,CAAEukC,aAAcvkC,IAE3B28B,EAAgBj9B,UAAUyhC,gBAAkB,SAAUv+B,GAClD,OAAO6F,EAAUrJ,UAAM,OAAQ,GAAQ,WAEnC,OAAOoK,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EACD,GAAqB,OAAjBxK,KAAKoC,KAAKuiB,GACV,MAAMhT,MAAM,iCAEhB,OAAK1M,EAAoBjF,KAAKoC,KAAKgjC,YAAYC,uBACjC,IAAInhC,KAAKlE,KAAKoC,KAAKgjC,YAAYE,oBAC3BhhC,cAAgB,IAC3B,CAAC,EAAatE,KAAKygC,MAAK,IAH8C,CAAC,EAAa,GAI/F,KAAK,EACDl0B,EAAG9B,OACH8B,EAAG/B,MAAQ,EACf,KAAK,EAAG,MAAO,CAAC,EAAakU,GAAOue,GAASj9B,KAAM,wBAA0BA,KAAKoC,KAAKuiB,GAAK,KAAOnhB,GAAS6G,GAAKyQ,GAAS,6BAC1H,KAAK,EAAG,MAAO,CAAC,EAAcvO,EAAG9B,gBAUjD8yB,EAAgBj9B,UAAUikC,gBAAkB,SAAUU,EAASM,GAC3D,IAAIh5B,EAAIE,EAAIC,EACRm4B,EAAS,KACTW,EAAgB,GAChBvF,EAAe,EACfwF,EAAY,EACZ9F,EAAc,EAEd4F,IACIj+B,EAAIi+B,EAAc,eAClBE,EAAYF,EAAaE,WAEzBn+B,EAAIi+B,EAAc,kBAClBtF,EAAesF,EAAatF,cAE5B34B,EAAIi+B,EAAc,mBAClBC,EAAgBD,EAAaC,eAE7Bl+B,EAAIi+B,EAAc,iBAClB5F,EAAc4F,EAAa5F,cAGnC,IAAIwF,EAA2J,QAA3Iz4B,EAAqF,QAA/ED,EAA6B,QAAvBF,EAAK04B,EAAQviC,YAAyB,IAAP6J,OAAgB,EAASA,EAAGw4B,gBAA6B,IAAPt4B,OAAgB,EAASA,EAAG04B,oBAAiC,IAAPz4B,EAAgBA,EAAK,EACxLqzB,EAAU//B,KAAK0lC,mBAAmBD,EAAW9F,EAAawF,GAC1DnJ,EAAU+D,EAAQ/D,QAAQj3B,QAAO,SAAUgB,GAAK,OAAOA,EAAE+1B,QAAUmE,KAEnE4E,EADA7I,EAAQt6B,OAAS,EACRq+B,EAAQ4F,UAAUH,EAAe7F,GAGjC3D,EAAQ,GAErBiJ,EAAQJ,OAASA,EACjBA,EAAOe,WAAWX,IAQtB1H,EAAgBj9B,UAAU6jC,kBAAoB,SAAUU,GACpD,IAAIt4B,EAAIE,EACJqvB,EAAQx0B,EAAIu9B,EAAOniC,KAAM,aAAe4E,EAAIu9B,EAAOniC,KAAK8hC,SAAU,aAAeK,EAAOniC,KAAK8hC,SAASiB,UAAY,EAClH9F,EAAcr4B,EAAIu9B,EAAOniC,KAAM,aAAe4E,EAAIu9B,EAAOniC,KAAK8hC,SAAU,eAAiBK,EAAOniC,KAAK8hC,SAAS7E,YAAc,EAC5HI,EAAU//B,KAAK0lC,mBAAmB5J,EAAO6D,GAA6F,QAA9ElzB,EAA4B,QAAtBF,EAAKs4B,EAAOniC,YAAyB,IAAP6J,OAAgB,EAASA,EAAGw4B,gBAA6B,IAAPt4B,OAAgB,EAASA,EAAG04B,eAAiB,GAC/LN,EAAO9E,QAAUA,EACjBA,EAAQ/D,QAAQp5B,KAAKiiC,IASzBtH,EAAgBj9B,UAAUolC,mBAAqB,SAAU5J,EAAO6D,EAAaoF,GACzE,IAAIhF,EAAU,KACVtC,EAAWz9B,KAAKy9B,SAAS14B,QAAO,SAAUlC,GAAK,OAAOA,EAAEi5B,QAAUA,GAASj5B,EAAE88B,cAAgBA,KASjG,OARIlC,EAAS/7B,OAAS,IAClBq+B,EAA0B,IAAhBJ,EAAoB3/B,KAAK6/B,qBAAuB7/B,KAAK8/B,cACvDhE,MAAQA,EAChBiE,EAAQgF,SAAWA,GAGnBhF,EAAUtC,EAAS,GAEhBsC,GAQXxC,EAAgBj9B,UAAU4kC,oBAAsB,SAAUD,GACtD,IAAI14B,EAAIE,EAAIC,EAGZ,GAAiC,IAA7Bu4B,EAAQviC,KAAKo7B,aAAgD,yCAA3BmH,EAAQviC,KAAKmjC,UAAsD,CACrG,IAAIC,GAAkK,QAAxJp5B,EAAwF,QAAlFD,EAA6B,QAAvBF,EAAK04B,EAAQviC,YAAyB,IAAP6J,OAAgB,EAASA,EAAGw5B,mBAAgC,IAAPt5B,OAAgB,EAASA,EAAGsyB,8BAA2C,IAAPryB,OAAgB,EAASA,EAAGuyB,uBAAyB,KACnO,GAAI/4B,EAAqB4/B,GAErB,IADA,IAAIj+B,EAAOnI,OAAOgH,oBAAoBo/B,GAC7BvgC,EAAI,EAAGA,EAAIsC,EAAKnG,OAAQ6D,IAC7BugC,EAAMj+B,EAAKtC,IAAMugC,EAAMj+B,EAAKtC,IAAIL,QAAQ,MAAO,QAC/C+/B,EAAQviC,KAAKqjC,YAAYhH,uBAAuBE,qBAAuB6G,EAInF,OAAOb,GAEXl8B,EAAW,CACPoS,GAAI,aACLoiB,EAAgBj9B,UAAW,OAAQ,MACtCyI,EAAW,CACPoS,GAAI,aACLoiB,EAAgBj9B,UAAW,OAAQ,MACtCyI,EAAW,CACPoS,GAAI,4BACLoiB,EAAgBj9B,UAAW,sBAAuB,MACrDyI,EAAW,CACPoS,GAAI,sBACLoiB,EAAgBj9B,UAAW,gBAAiB,MAC/CyI,EAAW,CACPoS,GAAI,aACLoiB,EAAgBj9B,UAAW,OAAQ,MACtCyI,EAAW,CACPoS,GAAI,eACLoiB,EAAgBj9B,UAAW,SAAU,MACxCyI,EAAW,CACPoS,GAAI,gBACLoiB,EAAgBj9B,UAAW,UAAW,MAClCi9B,EAl3ByB,CAm3BlCte,IAKEie,GAAiB,SAAU3f,EAASvY,EAAM5C,EAAMo7B,EAAQC,EAAUC,GAIlE,YAHe,IAAXF,IAAqBA,GAAS,QACjB,IAAbC,IAAuBA,EAAW,SACb,IAArBC,IAA+BA,GAAmB,GAC/CvoB,GAAiBooB,GAAjBpoB,CAAkCoI,EAASvY,EAAM5C,EAAMo7B,EAAQC,EAAUC,IAOzEsI,GAAyB,SAAUxQ,GAAQ,OAAOnsB,OAAU,OAAQ,OAAQ,GAAQ,WAC3F,IAAImlB,EACJ,OAAOpkB,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAAG,MAAO,CAAC,EAAagrB,EAAKzmB,WAClC,KAAK,EAGD,OAFAyf,EAAOjiB,EAAG9B,OAEH,CAAC,EADDyyB,GAAeliB,GAAcwa,EAAK3d,SAAU,GAAI,CAAE8M,GAAI6J,EAAK7J,KAAM,GAC7C1M,cAAcud,GAAM3kB,gBAYpD0xB,GAAuB,SAAU5kB,EAAKykB,EAAUjd,EAAOia,EAAgBiD,GAG9E,YAFuB,IAAnBjD,IAA6BA,EAAiB,gBAC5B,IAAlBiD,IAA4BA,EAAgB,GACzCh5B,OAAU,OAAQ,OAAQ,GAAQ,WACrC,IAAI48B,EAAcC,EAClB,OAAO97B,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAID,OADA43B,EAAWA,EAASl9B,QAAQ,WAAY,IACjC,CAAC,EAAawZ,GAAOue,GAAStf,EAAK,wBAAyBtT,GAAK3K,OAAOyI,OAAO2S,GAAS,0BAA2B,CAClHskB,eAAgBA,EAChB5C,cAAe6F,OAE3B,KAAK,EAID,OAHA4D,EAAe15B,EAAG9B,QAClBy7B,EAAUhJ,GAAevf,EAAK,GAAIsoB,IAC1B9gB,MAAQid,EACT,CAAC,EAAa8D,EAAQzF,MAAK,IACtC,KAAK,EAGD,OAFAl0B,EAAG9B,OACHy7B,EAAQ/gB,MAAQA,EACT,CAAC,EAAc+gB,WAKtClG,GAA+B,WAC/B,SAASA,EAAcsC,EAAMxG,EAAO6D,EAAa3D,EAASmK,QACtC,IAAZnK,IAAsBA,EAAU,SAClB,IAAdmK,IAAwBA,EAAY,GACxCnmC,KAAKsiC,KAAOA,EACZtiC,KAAKg8B,QAAUA,EACfh8B,KAAKmmC,UAAYA,EACjBnmC,KAAKomC,OAASxgC,IACd5F,KAAKqmC,OAASvK,EACd97B,KAAKsmC,aAAe3G,EAkFxB,OAhFAjgC,OAAOC,eAAeqgC,EAAc1/B,UAAW,QAAS,CACpDT,IAAK,WACD,OAAOG,KAAKqmC,QAEhBplC,IAAK,SAAUL,GACXZ,KAAKqmC,OAASzlC,EACd,IAAK,IAAI2E,EAAI,EAAGA,EAAIvF,KAAKg8B,QAAQt6B,OAAQ6D,IACrCvF,KAAKg8B,QAAQz2B,GAAG7C,KAAK8hC,SAASiB,UAAY7kC,GAGlDhB,YAAY,EACZsB,cAAc,IAElBxB,OAAOC,eAAeqgC,EAAc1/B,UAAW,cAAe,CAC1DT,IAAK,WACD,OAAOG,KAAKsmC,cAEhBrlC,IAAK,SAAUL,GACXZ,KAAKsmC,aAAe1lC,EACpB,IAAK,IAAI2E,EAAI,EAAGA,EAAIvF,KAAKg8B,QAAQt6B,OAAQ6D,IACrCvF,KAAKg8B,QAAQz2B,GAAG7C,KAAK8hC,SAAS7E,YAAc/+B,GAGpDhB,YAAY,EACZsB,cAAc,IAElBxB,OAAOC,eAAeqgC,EAAc1/B,UAAW,gBAAiB,CAI5DT,IAAK,WAID,OAHIG,KAAKg8B,QAAQt6B,OAAS,GACtB1B,KAAK2lC,UAAU,IAEZ3lC,KAAKg8B,QAAQ,IAExBp8B,YAAY,EACZsB,cAAc,IAKlB8+B,EAAc1/B,UAAUqlC,UAAY,SAAUY,EAAQ5G,QAC9B,IAAhBA,IAA0BA,EAAc3/B,KAAK2/B,aACjD,IAAIkF,EAAS,IAAIT,GAOjB,OANAS,EAAO9E,QAAU//B,KACjB6kC,EAAOniC,KAAK8hC,SAASiB,UAAYzlC,KAAK87B,MACtC+I,EAAOniC,KAAK8hC,SAAS7E,YAAcA,EACnCkF,EAAOniC,KAAK8hC,SAASgB,cAAgBe,EACrC1B,EAAO/I,MAAQH,GAAa37B,KAAKg8B,SACjCh8B,KAAKg8B,QAAQp5B,KAAKiiC,GACXA,GAOX7E,EAAc1/B,UAAUslC,WAAa,SAAUX,GAE3C,OADAjlC,KAAKwmC,cAAcZ,WAAWX,GACvBjlC,MAEXN,OAAOC,eAAeqgC,EAAc1/B,UAAW,WAAY,CACvDT,IAAK,WACD,OAAOG,KAAKmmC,WAEhBllC,IAAK,SAAUL,GACXZ,KAAKmmC,UAAYvlC,GAErBhB,YAAY,EACZsB,cAAc,IAKlB8+B,EAAc1/B,UAAUw6B,OAAS,WAC7B,IAAI9uB,EAAQhM,KACZA,KAAKsiC,KAAK7E,SAAWz9B,KAAKsiC,KAAK7E,SAAS14B,QAAO,SAAUg7B,GAAW,OAAOA,EAAQqG,SAAWp6B,EAAMo6B,UACpGrK,GAAQ/7B,KAAKsiC,KAAK7E,WAEfuC,EA3FuB,GA8F9BoE,GAA8B,WAC9B,SAASA,EAAahiC,EAAM65B,QACX,IAAT75B,IAAmBA,EAAOC,KAAK4M,MAAM5M,KAAKC,UAAU8hC,EAAaqC,gBACpD,IAAbxK,IAAuBA,EAAW,IACtCj8B,KAAKoC,KAAOA,EACZpC,KAAKi8B,SAAWA,EAChBj8B,KAAK0mC,SAAW,KAChB1mC,KAAKomC,OAASxgC,IAoElB,OAlEAlG,OAAOC,eAAeykC,EAAa9jC,UAAW,OAAQ,CAClDT,IAAK,WACD,OAAOG,KAAKoC,MAEhBxC,YAAY,EACZsB,cAAc,IAElBxB,OAAOC,eAAeykC,EAAa9jC,UAAW,UAAW,CACrDT,IAAK,WACD,OAAOG,KAAK0mC,UAEhBzlC,IAAK,SAAU8+B,GACX//B,KAAK0mC,SAAW3G,GAEpBngC,YAAY,EACZsB,cAAc,IAElBxB,OAAOC,eAAeykC,EAAa9jC,UAAW,QAAS,CACnDT,IAAK,WACD,OAAOG,KAAK0C,KAAK8hC,SAASvE,cAE9Bh/B,IAAK,SAAUL,GACXZ,KAAK0C,KAAK8hC,SAASvE,aAAer/B,EAClC,IAAK,IAAI2E,EAAI,EAAGA,EAAIvF,KAAKi8B,SAASv6B,OAAQ6D,IACtCvF,KAAKi8B,SAAS12B,GAAG7C,KAAK8hC,SAASiB,UAAYzlC,KAAK0C,KAAK8hC,SAASiB,UAC9DzlC,KAAKi8B,SAAS12B,GAAG7C,KAAK8hC,SAAS7E,YAAc3/B,KAAK0C,KAAK8hC,SAAS7E,YAChE3/B,KAAKi8B,SAAS12B,GAAG7C,KAAK8hC,SAASvE,aAAer/B,GAGtDhB,YAAY,EACZsB,cAAc,IAElBxB,OAAOC,eAAeykC,EAAa9jC,UAAW,SAAU,CACpDT,IAAK,WACD,OAAOG,KAAK0C,KAAK8hC,SAASgB,eAE9BvkC,IAAK,SAAUL,GACXZ,KAAK0C,KAAK8hC,SAASgB,cAAgB5kC,GAEvChB,YAAY,EACZsB,cAAc,IAElBkjC,EAAa9jC,UAAUslC,WAAa,SAAUX,GAG1C,OAFAA,EAAQJ,OAAS7kC,KACjBA,KAAKi8B,SAASr5B,KAAKqiC,GACZjlC,MAEXokC,EAAa9jC,UAAUqmC,WAAa,SAAUx2B,GAC1C,OAAOnQ,KAAKi8B,SAAS9rB,IAEzBi0B,EAAa9jC,UAAUw6B,OAAS,WAC5B,IAAI9uB,EAAQhM,KACZA,KAAK+/B,QAAQ/D,QAAUh8B,KAAK+/B,QAAQ/D,QAAQj3B,QAAO,SAAU8/B,GAAU,OAAOA,EAAOuB,SAAWp6B,EAAMo6B,UACtGrK,GAAQ/7B,KAAK+/B,QAAQ/D,UAEzBoI,EAAaqC,QAAU,CACnB3I,YAAa,EACbgH,YAAa,EACbC,SAAU,GACVP,SAAU,CACN7E,YAAa,EACb6F,cAAe,GACfvF,aAAc,EACdwF,UAAW,IAGZrB,EA3EsB,GA8E7BwC,GAA+B,WAC/B,SAASA,EAAcxkC,GACnBpC,KAAKoC,KAAOA,EAmChB,OAjCA1C,OAAOC,eAAeinC,EAActmC,UAAW,KAAM,CACjDT,IAAK,WACD,OAAOG,KAAKoC,KAAKsQ,IAErB9S,YAAY,EACZsB,cAAc,IAElBxB,OAAOC,eAAeinC,EAActmC,UAAW,OAAQ,CACnDT,IAAK,WACD,OAAOG,KAAKoC,MAEhBxC,YAAY,EACZsB,cAAc,IAElBxB,OAAOC,eAAeinC,EAActmC,UAAW,SAAU,CACrDT,IAAK,WACD,OAAOG,KAAK6mC,SAEhB5lC,IAAK,SAAUL,GACXZ,KAAK6mC,QAAUjmC,EACfZ,KAAK8mC,eAAe9mC,KAAK6mC,UAE7BjnC,YAAY,EACZsB,cAAc,IAElB0lC,EAActmC,UAAUw6B,OAAS,WAC7B,IAAI9uB,EAAQhM,KACZA,KAAK6kC,OAAO5I,SAAWj8B,KAAK6kC,OAAO5I,SAASl3B,QAAO,SAAUkgC,GAAW,OAAOA,EAAQvyB,KAAO1G,EAAM0G,MACpGqpB,GAAQ/7B,KAAK6kC,OAAO5I,WAExB2K,EAActmC,UAAUymC,QAAU,SAAUrkC,GACxC1C,KAAKoC,KAAOM,GAETkkC,EArCuB,GAwC9BlC,GAAgC,SAAU52B,GAE1C,SAAS42B,EAAer/B,EAAMjD,QACb,IAATA,IAAmBA,EAAOC,KAAK4M,MAAM5M,KAAKC,UAAUoiC,EAAe+B,WACvE,IAAIz6B,EAAQhM,KAOZ,OANIiF,EAAoB7C,EAAKsQ,MACzBtQ,EAAKsQ,GAAK9M,IACVxD,EAAK4kC,kBAAoB5kC,EAAKsQ,KAElC1G,EAAQ8B,EAAOtN,KAAKR,KAAMoC,IAASpC,MAC7BqF,KAAOA,EACN2G,EA8CX,OAxDAxD,EAAUk8B,EAAgB52B,GAY1BpO,OAAOC,eAAe+kC,EAAepkC,UAAW,OAAQ,CACpDT,IAAK,WACD,OAAOG,KAAK0C,KAAKiiC,WAErB1jC,IAAK,SAAUL,GACXZ,KAAK0C,KAAKiiC,UAAY/jC,GAE1BhB,YAAY,EACZsB,cAAc,IAElBxB,OAAOC,eAAe+kC,EAAepkC,UAAW,QAAS,CACrDT,IAAK,WACD,OAAOG,KAAK0C,KAAK8hC,SAASyC,cAE9BhmC,IAAK,SAAUL,GACXZ,KAAK0C,KAAK8hC,SAASyC,aAAermC,GAEtChB,YAAY,EACZsB,cAAc,IAElBwjC,EAAepkC,UAAUwmC,eAAiB,SAAUI,GAChDlnC,KAAK0C,KAAK8hC,SAASgB,cAAgB0B,EAAIX,OACvCvmC,KAAK0C,KAAK8hC,SAASyC,aAAetL,GAAauL,EAAIjL,UACnDj8B,KAAK0C,KAAK8hC,SAASiB,UAAYyB,EAAIxkC,KAAK8hC,SAASiB,UACjDzlC,KAAK0C,KAAK8hC,SAASvE,aAAeiH,EAAIpL,MACtC97B,KAAK0C,KAAK8hC,SAAS7E,YAAcuH,EAAIxkC,KAAK8hC,SAAS7E,aAEvD+E,EAAe+B,QAAU,CACrBU,wBAAwB,EACxBH,kBAAmB,GACnBlJ,YAAa,EACbgH,YAAa,EACbsC,WAAY,WACZrC,SAAU,GACVryB,GAAI,GACJiyB,UAAW,GACXH,SAAU,CACNyC,aAAc,EACdtH,YAAa,EACb6F,cAAe,GACfvF,aAAc,EACdwF,UAAW,IAGZf,EAzDwB,CA0DjCkC,IAEEtC,GAAmC,SAAUx2B,GAE7C,SAASw2B,EAAkBliC,GAEvB,YADa,IAATA,IAAmBA,EAAOC,KAAK4M,MAAM5M,KAAKC,UAAUgiC,EAAkBmC,WACnE34B,EAAOtN,KAAKR,KAAMoC,IAASpC,KAqHtC,OAxHAwI,EAAU87B,EAAmBx2B,GAK7Bw2B,EAAkB+C,iBAAmB,SAAU9nC,GAC3C,IAAI8kC,EAAO,IAAIC,EAEf,OADAD,EAAKiD,OAAO/nC,GACL8kC,GAEX3kC,OAAOC,eAAe2kC,EAAkBhkC,UAAW,QAAS,CACxDT,IAAK,WACD,OAAOG,KAAK0C,KAAKqjC,YAAY5gB,OAEjClkB,IAAK,SAAUL,GACXZ,KAAK0C,KAAKqjC,YAAY5gB,MAAQvkB,GAElChB,YAAY,EACZsB,cAAc,IAElBxB,OAAOC,eAAe2kC,EAAkBhkC,UAAW,cAAe,CAC9DT,IAAK,WACD,OAAOG,KAAK0C,KAAKqjC,YAAYzgB,aAEjCrkB,IAAK,SAAUL,GACXZ,KAAK0C,KAAKqjC,YAAYzgB,YAAc1kB,GAExChB,YAAY,EACZsB,cAAc,IAElBxB,OAAOC,eAAe2kC,EAAkBhkC,UAAW,QAAS,CACxDT,IAAK,WACD,OAAOG,KAAK0C,KAAK8hC,SAASyC,cAE9BhmC,IAAK,SAAUL,GACXZ,KAAK0C,KAAK8hC,SAASyC,aAAermC,GAEtChB,YAAY,EACZsB,cAAc,IAElBxB,OAAOC,eAAe2kC,EAAkBhkC,UAAW,SAAU,CACzDT,IAAK,WACD,OAAOG,KAAK0C,KAAKo8B,gBAErB79B,IAAK,SAAUL,GACXZ,KAAK0C,KAAKo8B,eAAiBl+B,GAE/BhB,YAAY,EACZsB,cAAc,IAElBxB,OAAOC,eAAe2kC,EAAkBhkC,UAAW,QAAS,CACxDT,IAAK,WACD,OAAOG,KAAK0C,KAAK6kC,eAErBtmC,IAAK,SAAUL,GACXZ,KAAK0C,KAAK6kC,cAAgB3mC,GAE9BhB,YAAY,EACZsB,cAAc,IAElBxB,OAAOC,eAAe2kC,EAAkBhkC,UAAW,cAAe,CAC9DT,IAAK,WACD,OAAOG,KAAK0C,KAAKqjC,YAAY1H,aAEjCp9B,IAAK,SAAUL,GACXZ,KAAK0C,KAAKqjC,YAAY1H,YAAcz9B,GAExChB,YAAY,EACZsB,cAAc,IAElBojC,EAAkBhkC,UAAUknC,cAAgB,SAAU7f,GAElD,OADA3nB,KAAK0C,KAAKqjC,YAAYpe,WAAa,EAAO3nB,KAAK0C,KAAKqjC,YAAYpe,WAAYA,GACrE3nB,MAEXskC,EAAkBhkC,UAAUmnC,cAAgB,WACxC,OAAOznC,KAAK0C,KAAKqjC,YAAYpe,YAEjC2c,EAAkBhkC,UAAUwmC,eAAiB,SAAUI,GACnDlnC,KAAK0C,KAAK8hC,SAASgB,cAAgB0B,EAAIX,OACvCvmC,KAAK0C,KAAK8hC,SAASyC,aAAetL,GAAauL,EAAIjL,UACnDj8B,KAAK0C,KAAK8hC,SAASiB,UAAYyB,EAAIxkC,KAAK8hC,SAASiB,UACjDzlC,KAAK0C,KAAK8hC,SAASvE,aAAeiH,EAAIxkC,KAAK8hC,SAASvE,aACpDjgC,KAAK0C,KAAK8hC,SAAS7E,YAAcuH,EAAIxkC,KAAK8hC,SAAS7E,aAEvD2E,EAAkBhkC,UAAUgnC,OAAS,SAAUI,GAC3C,IAAIh1B,EAAK9M,IACL+hC,EAAcD,EAAU/iB,GAAGzf,QAAQ,WAAY,IAAId,cAEnDwjC,EADWvlC,KAAK4M,MAAMy4B,EAAUG,UACAD,qBAAqB,GACzD5nC,KAAK+mC,QAAQrnC,OAAOyI,OAAO,GAAInI,KAAK0C,KAAM,CACtCgQ,GAAIA,EACJqzB,YAAa,CACT1H,YAAa,MACb/Y,YAAasiB,EAAqBtiB,YAAYwiB,QAC9Cp1B,GAAIi1B,EACJrJ,WAAY5rB,EACZiV,WAAYigB,EAAqBjgB,WACjCxC,MAAOyiB,EAAqBziB,MAAM2iB,SAEtCjC,UAAW8B,MAGnBrD,EAAkBmC,QAAU,CACxBU,wBAAwB,EACxBrJ,YAAa,EACbgH,YAAa,EACbC,SAAU,GACVryB,GAAI,KACJ8xB,SAAU,CACNyC,aAAc,EACdtH,YAAa,EACb6F,cAAe,GACfvF,aAAc,EACdwF,UAAW,GAEf3G,eAAgB,IAChByI,cAAe,IACfxB,YAAa,KACbF,UAAW,MAERvB,EAzH2B,CA0HpCsC,IE51CFrf,GAAKjnB,UAAUynC,sBAAwB,WACnC,OAAO/nC,KAAKgX,MAAMsJ,GAA+B,wBAA1CtgB,IAEXunB,GAAKjnB,UAAU0nC,kBACX,SAAU5F,EAAUjd,EAAO8iB,EAAQ5F,GAE/B,YADc,IAAVld,IAAoBA,EAAQid,EAASl9B,QAAQ,YAAa,KACvDq9B,GAAqBviC,KAAMoiC,EAAUjd,EAAO8iB,EAAQ5F,IAEnE9a,GAAKjnB,UAAU4nC,mBAAqB,SAAUljC,GAC1C,OAAOghC,GAAuBhmC,KAAKo8B,4BAA4Bp3B,KAEnEuiB,GAAKjnB,UAAU6nC,cAAgB,SAAUC,GACrC,OAAO/+B,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAIwX,EACJ,OAAOpN,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAED,OADAgN,EAAQmJ,GAA4B3F,GAAchb,KAAK6X,SAAU,gCAAgCI,cAAcjY,MACxG,CAAC,EAAa0e,GAAOlH,EAAOnN,GAAK,EAAOyQ,GAAS,4BAA6BstB,MACzF,KAAK,EAED,MAAO,CAAC,EADJ77B,EAAG9B,OACiB49B,qBClB5C,IAAIC,GAA0B,SAAUx6B,GAEpC,SAASw6B,IACL,OAAkB,OAAXx6B,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KA+D/D,OAjEAwI,EAAU8/B,EAAUx6B,GASpBw6B,EAAShoC,UAAU60B,UAAY,SAAUjoB,GACrC,OAAOiO,GAAInD,UAAUuwB,GAAOvoC,MAAM8X,OAAO,KAAO4L,GAAoBxW,GAAQ,MAAO,iBAOvFo7B,EAAShoC,UAAUqQ,IAAM,SAAU5J,GAC/B,OAAOsC,EAAUrJ,UAAM,OAAQ,GAAQ,WAEnC,OAAOoK,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAAG,MAAO,CAAC,EAAakU,GAAO1e,KAAKgX,MAAMwxB,GAAS,QAAU9kB,GAAoB3c,GAAO,QAC7F,KAAK,EAED,MAAO,CAAC,EAAc,CACdrE,KAFD6J,EAAG9B,OAGFg+B,OAAQzoC,KAAKm1B,UAAUpuB,aAYnDuhC,EAAShoC,UAAUm1B,aAAe,SAAUiT,EAAmBC,GAE3D,YADkB,IAAdA,IAAwBA,GAAY,GACjCt/B,EAAUrJ,UAAM,OAAQ,GAAQ,WAEnC,OAAOoK,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAAG,MAAO,CAAC,EAAakU,GAAO1e,KAAKgX,MAAMwxB,GAAS,4BAA8B9kB,GAAoBglB,GAAqB,eAAiBC,EAAY,OAC5J,KAAK,EAED,MAAO,CAAC,EAAc,CACdjmC,KAFD6J,EAAG9B,OAGFg+B,OAAQF,GAAOvtB,GAAchb,KAAK6X,SAAU,sDAAwD6L,GAAoBglB,GAAqB,gBAMzK3/B,EAAW,CACPoS,GAAI,WACLmtB,EAAShoC,UAAW,MAAO,MAC9ByI,EAAW,CACPoS,GAAI,oBACLmtB,EAAShoC,UAAW,eAAgB,MAC5ByI,EAAW,CAClB+X,GAAY,YACbwnB,GAjEsB,CAmE3BtoB,IAESwoB,GAAUxpB,GAAmBspB,IACpCM,GAAyB,SAAU96B,GAEnC,SAAS86B,IACL,IAAI58B,EAAmB,OAAX8B,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAOhE,OANAgM,EAAMmD,OAAS0R,GAAmB,KAKlC7U,EAAM0b,OAAS1b,EAAMwU,QAAQ,aAAa,SAAU9d,GAAQ,MAAO,CAAGA,KAAMA,EAAM+lC,OAAQz8B,MACnFA,EAiVX,OA1VAxD,EAAUogC,EAAS96B,GAWnBpO,OAAOC,eAAeipC,EAAQtoC,UAAW,mBAAoB,CAKzDT,IAAK,WACD,OAAOsb,GAAInD,UAAUsI,GAA8BtgB,KAAM,oBAAqB,uBAElFJ,YAAY,EACZsB,cAAc,IAElBxB,OAAOC,eAAeipC,EAAQtoC,UAAW,UAAW,CAKhDT,IAAK,WACD,OAAO2oC,GAAQxoC,OAEnBJ,YAAY,EACZsB,cAAc,IAElBxB,OAAOC,eAAeipC,EAAQtoC,UAAW,oBAAqB,CAK1DT,IAAK,WACD,OAAOsb,GAAInD,UAAU2I,GAA4B3gB,KAAM,qBAAsB,wBAEjFJ,YAAY,EACZsB,cAAc,IAElBxB,OAAOC,eAAeipC,EAAQtoC,UAAW,eAAgB,CAKrDT,IAAK,WACD,OAAOsb,GAAInD,UAAUuwB,GAAOvoC,KAAM,gBAAiB,mBAEvDJ,YAAY,EACZsB,cAAc,IAElBxB,OAAOC,eAAeipC,EAAQtoC,UAAW,aAAc,CAKnDT,IAAK,WACD,OAAOsb,GAAInD,UAAU2I,GAA4B3gB,KAAM,cAAe,iBAE1EJ,YAAY,EACZsB,cAAc,IAElBxB,OAAOC,eAAeipC,EAAQtoC,UAAW,oBAAqB,CAK1DT,IAAK,WACD,OAAOsb,GAAInD,UAAU+H,GAAoB/f,KAAM,qBAAsB,wBAEzEJ,YAAY,EACZsB,cAAc,IAElBxB,OAAOC,eAAeipC,EAAQtoC,UAAW,yBAA0B,CAK/DT,IAAK,WACD,OAAOsb,GAAInD,UAAUsI,GAA8BtgB,KAAM,0BAA2B,6BAExFJ,YAAY,EACZsB,cAAc,IAKlB0nC,EAAQtoC,UAAU8pB,QAAU,WACxB,OAAO1L,GAAO1e,KAAKgX,MAAMuxB,GAAQ,aAKrCK,EAAQtoC,UAAUyO,QAAU,WAExB,IADA,IAAIyQ,EAAU,GACLhe,EAAK,EAAGA,EAAKC,UAAUC,OAAQF,IACpCge,EAAQhe,GAAMC,UAAUD,GAE5B,OAAO6H,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAIukB,EACAhY,EACJ,OAAOnC,EAAYpK,MAAM,SAAUyM,GAC/B,OAAQA,EAAGjC,OACP,KAAK,EAAG,MAAO,CAAC,GAAc+B,EAAKvM,KAAKs4B,mBAAmB/Y,OAAO3b,MAAM2I,EAAInB,EAAc,GAAIF,EAAOsU,IAAxE,IAC7B,KAAK,EAED,GAAIlY,EADJid,EAAI9X,EAAGhC,OACI,eAAiB8Z,EAAE,cAC1B,MAAM5S,MAAM,yGAEhB,MAAO,CAAC,EAAc,EAAOyb,GAAKpM,GAAauD,IAAKA,YAUxEqkB,EAAQtoC,UAAUq3B,OAAS,SAAUV,GACjC,OAAO5tB,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAIwsB,EAASpL,EACb,OAAOhX,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAAG,MAAO,CAAC,EAAaxK,KAAKusB,kBAClC,KAAK,EAGD,OAFAC,EAAUjgB,EAAG9B,OACb2W,EAAM,IAAI7T,IAAIif,EAAQ/E,UAAUrD,KACzB,CAAC,EAAa1F,GAAO6pB,GAAO/b,EAAQ/E,UAAUrD,IAAK,sCAAuC/Z,GAAK,CAC9F4sB,QAASnwB,EAAcmwB,GAAWA,EAAUpyB,EAAQuc,EAAIynB,OAAQ5R,GAChEE,OAAQtyB,EAAQuc,EAAIynB,OAAQrc,EAAQ+b,OAAO1b,uBAEvD,KAAK,EAED,OADAtgB,EAAG9B,OACI,CAAC,WAY5Bm+B,EAAQtoC,UAAUu3B,WAAa,SAAUZ,EAASC,GAE9C,YADiB,IAAbA,IAAuBA,GAAW,GAC/B7tB,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAIwsB,EAASpL,EACb,OAAOhX,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAAG,MAAO,CAAC,EAAaxK,KAAKusB,kBAClC,KAAK,EAGD,OAFAC,EAAUjgB,EAAG9B,OACb2W,EAAM,IAAI7T,IAAIif,EAAQ/E,UAAUrD,KACzB,CAAC,EAAa1F,GAAO6pB,GAAOnnB,EAAIynB,OAAQ,4CAA6Cx+B,GAAK,CACzFitB,SAAUxO,GAAehiB,EAAcmwB,GAAWA,EAAUpyB,EAAQuc,EAAIynB,OAAQ5R,IAChFrpB,QAAS,CACLspB,SAAUA,EACVK,6BAA6B,EAC7BC,yBAAyB,EACzBrW,WAAY,CACRpG,KAAM,uBAGd0c,QAAS3O,GAAejkB,EAAQuc,EAAIynB,OAAQrc,EAAQ+b,OAAO1b,wBAEvE,KAAK,EAED,OADAtgB,EAAG9B,OACI,CAAC,WAU5Bm+B,EAAQtoC,UAAUy2B,OAAS,SAAUE,GACjC,OAAO5tB,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAIwsB,EAASpL,EACb,OAAOhX,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAAG,MAAO,CAAC,EAAaxK,KAAKusB,kBAClC,KAAK,EAGD,OAFAC,EAAUjgB,EAAG9B,OACb2W,EAAM,IAAI7T,IAAIif,EAAQ/E,UAAUrD,KACzB,CAAC,EAAa1F,GAAO6pB,GAAOnnB,EAAIynB,OAAQ,sCAAuCx+B,GAAK,CACnF4sB,QAASnwB,EAAcmwB,GAAWA,EAAUpyB,EAAQuc,EAAIynB,OAAQ5R,GAChEE,OAAQtyB,EAAQuc,EAAIynB,OAAQrc,EAAQ+b,OAAO1b,uBAEvD,KAAK,EAED,OADAtgB,EAAG9B,OACI,CAAC,WAY5Bm+B,EAAQtoC,UAAU02B,WAAa,SAAUC,EAASC,GAE9C,YADiB,IAAbA,IAAuBA,GAAW,GAC/B7tB,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAIwsB,EAASpL,EACb,OAAOhX,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAAG,MAAO,CAAC,EAAaxK,KAAKusB,kBAClC,KAAK,EAGD,OAFAC,EAAUjgB,EAAG9B,OACb2W,EAAM,IAAI7T,IAAIif,EAAQ/E,UAAUrD,KACzB,CAAC,EAAa1F,GAAO6pB,GAAOnnB,EAAIynB,OAAQ,4CAA6Cx+B,GAAK,CACzFitB,SAAUxO,GAAehiB,EAAcmwB,GAAWA,EAAUpyB,EAAQuc,EAAIynB,OAAQ5R,IAChFrpB,QAAS,CACLspB,SAAUA,EACVK,6BAA6B,EAC7BC,yBAAyB,EACzBrW,WAAY,CACRpG,KAAM,uBAGd0c,QAAS3O,GAAejkB,EAAQuc,EAAIynB,OAAQrc,EAAQ+b,OAAO1b,wBAEvE,KAAK,EAED,OADAtgB,EAAG9B,OACI,CAAC,WAU5Bm+B,EAAQtoC,UAAUwuB,iBAAmB,SAAUpE,GAC3C,OAAOrhB,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,OAAOoK,EAAYpK,MAAM,SAAUuM,GAC/B,MAAO,CAAC,EAAcmS,GAAO1e,KAAKgX,MAAMuxB,GAAQ,wBAAyBl+B,GAAK,CAAEqgB,WAAYA,aASxGke,EAAQtoC,UAAUwoC,sBAAwB,SAAUC,GAChD,OAAO1/B,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,OAAOoK,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAAG,MAAO,CAAC,EAAakU,GAAO1e,KAAKgX,MAAMuxB,GAAQ,yBAA0Bl+B,GAAK,CAAE0+B,SAAUjgB,GAAeigB,OACjH,KAAK,EAED,OADAx8B,EAAG9B,OACI,CAAC,EAAczK,KAAKgpC,QAAQ7T,UAAU4T,YAQjEH,EAAQtoC,UAAUisB,eAAiB,WAC/B,OAAOljB,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAIwsB,EACJ,OAAOpiB,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAAG,MAAO,CAAC,EAAaxK,KAAKuf,OAAO,oBAAqB,kCAAmC,mDAAoD,4DAA6D,6DAA8D,4CAA6C,6CAA8C,2DAA4D,6DAA6DG,OAAO,+BAAgC,0CAA2C,yCAAzhB1f,IAC7B,KAAK,EAED,MAAO,CAAC,EAAc,CACduoC,OAAQ,CACJ1b,mBAHZL,EAAUjgB,EAAG9B,QAG0BoiB,mBAE/BsC,WAAY,CACRxK,GAAI6H,EAAQyc,kBAAkB9Z,WAAWxK,GACzC8H,6BAA8BD,EAAQyc,kBAAkB9Z,WAAWzC,WAAWC,mBAC9EC,4BAA6BJ,EAAQyc,kBAAkB9Z,WAAWzC,WAAWG,kBAC7EC,mBAAoBN,EAAQyc,kBAAkB9Z,WAAWzC,WAAWK,UAExEtF,UAAW,CACP9C,GAAI6H,EAAQyc,kBAAkB9Z,WAAW1H,UAAU9C,GACnDgI,mBAAoBH,EAAQyc,kBAAkB9Z,WAAW1H,UAAUkF,mBACnEE,kBAAmBL,EAAQyc,kBAAkB9Z,WAAW1H,UAAUoF,kBAClEzI,IAAKoI,EAAQyc,kBAAkB9Z,WAAW1H,UAAUrD,eAUpFwkB,EAAQtoC,UAAU4oC,aAAe,WAC7B,OAAO7/B,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAI6F,EAAGsjC,EACP,OAAO/+B,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAAG,MAAO,CAAC,EAAaxK,KAAKgX,MAAM2J,GAA6B,qBAAqB,GAAOpB,OAAO,WAA3Evf,IAC7B,KAAK,EAOD,OANA6F,EAAI0G,EAAG9B,OACP0+B,EAAY/b,GAAKpM,GAAanb,IAE1B7F,KAAK4Y,WACLuwB,EAAYA,EAAUxwB,QAAQ3Y,KAAKuS,QAEhC,CAAC,EAAc42B,WAK1CpgC,EAAW,CACPoS,GAAI,cACLytB,EAAQtoC,UAAW,UAAW,MACjCyI,EAAW,CACPoS,GAAI,cACLytB,EAAQtoC,UAAW,UAAW,MACjCyI,EAAW,CACPoS,GAAI,aACLytB,EAAQtoC,UAAW,SAAU,MAChCyI,EAAW,CACPoS,GAAI,iBACLytB,EAAQtoC,UAAW,aAAc,MACpCyI,EAAW,CACPoS,GAAI,aACLytB,EAAQtoC,UAAW,SAAU,MAChCyI,EAAW,CACPoS,GAAI,iBACLytB,EAAQtoC,UAAW,aAAc,MACpCyI,EAAW,CACPoS,GAAI,iBACLytB,EAAQtoC,UAAW,mBAAoB,MAC1CyI,EAAW,CACPoS,GAAI,mBACLytB,EAAQtoC,UAAW,eAAgB,MAC/BsoC,EA3ViB,CA4V1BroB,IAESgoB,GAASvpB,GAAmB4pB,ICvavCj1B,GAAQsW,GAAO,aAAcse,GAAQ,cACrCte,GAAM3pB,UAAU8oC,uBAAyB,WACrC,OAAO//B,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAI+X,EAAU+E,EAAQ9X,EAAMqkC,EAAcC,EAAKh9B,EAAKnF,EACpD,OAAOiD,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAAG,MAAO,CAAC,EAAaxK,KAAKupC,WAAWhqB,OAAO,qBAAvBvf,IAC7B,KAAK,EAED,OADA+X,EAAWxL,EAAG9B,OACP,CAAC,EAAazK,KAAKuf,OAAO,iBAAiBG,OAAO,YAApC1f,IACzB,KAAK,EACD8c,EAASvQ,EAAG9B,OACZzF,EAAOH,EAAQ,IAAKkT,EAAS4U,mBAAmB5D,WAAY,2CAC5DsgB,EAAexkC,EAAQiY,EAAO2K,UAAUrD,IAAK,WAAY,2CAA6CV,GAAoB1e,GAAQ,MAClIskC,EAAM,GACN/8B,EAAG/B,MAAQ,EACf,KAAK,EAED,OADA+B,EAAG7B,KAAK9H,KAAK,CAAC,EAAG,EAAG,CAAE,IACf,CAAC,EAAa2lC,GAAOc,EAAc,UAAU9wB,YAAY,IAAIjC,GAA/CiyB,CAA6Dt7B,GAAQ,CAAE,yBAA4B,WAC5H,KAAK,EAED,OADAq8B,EAAM/8B,EAAG9B,OACF,CAAC,EAAa,GACzB,KAAK,EAGD,IAFA6B,EAAMC,EAAG9B,SAEE6B,EAAIyJ,QAAyB,MAAfzJ,EAAIyJ,OAEzB,MAAO,CAAC,EAAc,IAE1B,MAAMzJ,EACV,KAAK,EAKD,MAAO,CAAC,GAHW,QADnBnF,EAAUmiC,EAAIlqB,MAAM,iBACM,GAAKjY,EAAQpE,KAAI,SAAU8D,GAAK,OAAOA,EAAEsb,WAGxCvb,QAAO,SAAU4iC,EAAS3iC,GAC7C,IAAIoE,EAAI,qBAAqB7D,KAAKP,GAIlC,GAAIoE,EAAEvJ,OAAS,EAIX,OADAZ,EAAOiB,MAAM,8CAAgD8E,EAAI,IAAK,GAC/D,KAGX,IAAI4iC,EAAa5iC,EAAEuY,MAAM,sCAmBzB,OAlB6B,OAAfqqB,EAAsB,GAAKA,EAAW1mC,KAAI,SAAU2mC,GAAM,OAAOA,EAAGvnB,WAC1Epf,KAAI,SAAU2mC,GAClB,IAAIC,EAAK,0DAA0DviC,KAAKsiC,GAKpEC,EAAGjoC,OAAS,EACZZ,EAAOiB,MAAM,8CAAgD2nC,EAAK,IAAK,GAGvEF,EAAQ5mC,KAAK,CACTsK,KAAMy8B,EAAG,GACT3kC,KAAM4kC,mBAAmB3+B,EAAE,IAC3BrK,MAAO+oC,EAAG,QAIfH,IACR,IAAIzkC,QAAO,SAAU4B,GAAK,OAAa,OAANA,cAK5DsjB,GAAM3pB,UAAUupC,uBAAyB,SAAUC,GAC/C,OAAOzgC,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAI+pC,EAAWC,EAAgBzkC,EAAGT,EAAOmlC,EAAcz+B,EAAG0+B,EAAYC,EAAMC,EAAMC,EAAaf,EAAKvxB,EAAU+E,EAAQ9X,EAAMqkC,EAC5H,OAAOj/B,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAAG,MAAO,CAAC,EAAa8V,GAA8BtgB,KAAM,UAAUuf,OAAO,eAAgB,gBAAgBxa,OAAO,iBAA5Fub,IAC7B,KAAK,EAGD,IAFAypB,EAAYx9B,EAAG9B,OACfu/B,EAAiB,GACZzkC,EAAI,EAAGA,EAAIukC,EAASpoC,OAAQ6D,IACW,MAApCykC,EAAeF,EAASvkC,GAAGP,MAC3BglC,EAAeF,EAASvkC,GAAGP,MAAQ,CAAC8kC,EAASvkC,IAG7CykC,EAAeF,EAASvkC,GAAGP,MAAMpC,KAAKknC,EAASvkC,IAMvD,IAHAT,EAAQpF,OAAOgH,oBAAoBsjC,GACnCC,EAAe,GAEVz+B,EAAI,EAAGA,EAAI1G,EAAMpD,OAAQ8J,IAC1B0+B,EAAaF,EAAellC,EAAM0G,IAClC2+B,EAAOD,EAAWnnC,KAAI,SAAUunC,GAC5B,IAAIn6B,EAAQ45B,EAAUrK,WAAU,SAAU6K,GAAM,OAAOA,EAAGC,eAAiBF,EAAap9B,QACxF,GAAIiD,EAAQ,EACR,MAAMwB,MAAM,UAAY24B,EAAap9B,KAAO,+FAEhD,IAAIu9B,EAAWV,EAAU55B,GACrBvP,EAAQ,GACZ,OAAQ6pC,EAASC,cACb,IAAK,UACL,IAAK,WACL,IAAK,OACL,IAAK,WACL,IAAK,SACL,IAAK,SACL,IAAK,OACD,GAAIvkC,EAAQmkC,EAAa1pC,OACrB,MAAM+Q,MAAM,aAAe84B,EAASC,aAAe,uCAEvD9pC,EAAQ,GAAK0pC,EAAa1pC,MAC1B,MACJ,IAAK,cAEGA,EADAuF,EAAQmkC,EAAa1pC,OACb0pC,EAAa1pC,MAAMmC,KAAI,SAAU4D,GAAK,MAAO,GAAKA,KAAMrD,KAAK,KAG7D,GAAKgnC,EAAa1pC,MAE9B,MACJ,IAAK,YAEGA,EADAuF,EAAQmkC,EAAa1pC,OACb0pC,EAAa1pC,MAAMmC,KAAI,SAAU4D,GAAK,MAAO,GAAKA,KAAMrD,KAAK,MAG7D,GAAKgnC,EAAa1pC,MAE9B,MACJ,IAAK,WACL,IAAK,oBACD,GAAIuF,EAAQmkC,EAAa1pC,OACrB,MAAM+Q,MAAM,aAAe84B,EAASC,aAAe,uCAGnD9pC,EAAQ0pC,EAAa1pC,MAAM+pC,MAAQ,KAAOL,EAAa1pC,MAAMgqC,SAAW,IAAMN,EAAa1pC,MAAMiqC,OAErG,MACJ,IAAK,gBACL,IAAK,yBAEGjqC,EADAuF,EAAQmkC,EAAa1pC,OACb0pC,EAAa1pC,MAAMmC,KAAI,SAAU4D,GAAK,OAAOA,EAAEgkC,MAAQ,KAAOhkC,EAAEikC,SAAW,IAAMjkC,EAAEkkC,UAAWvnC,KAAK,MAGnG,CAACgnC,EAAa1pC,OAAOmC,KAAI,SAAU4D,GAAK,OAAOA,EAAEgkC,MAAQ,KAAOhkC,EAAEikC,SAAW,IAAMjkC,EAAEkkC,UAAWvnC,KAAK,MAIzH,MAAO,4BAA+BgnC,EAAap9B,KAAO,KAAQtM,EAAQ,qBAE9EwpC,EAAOF,EAAW,GAAGllC,KAAKE,QAAQ,MAAO,OACzCmlC,EAAc,YAAeD,EAAO,KAAQD,EAAK7mC,KAAK,IAAM,OAC5D2mC,EAAarnC,KAAKynC,GAGtB,OADAf,EAAM,qBAAuBW,EAAa3mC,KAAK,IAAM,sBAC9C,CAAC,EAAatD,KAAKupC,WAAWhqB,OAAO,qBAAvBvf,IACzB,KAAK,EAED,OADA+X,EAAWxL,EAAG9B,OACP,CAAC,EAAazK,KAAKuf,OAAO,iBAAiBG,OAAO,YAApC1f,IACzB,KAAK,EAID,OAHA8c,EAASvQ,EAAG9B,OACZzF,EAAOH,EAAQ,IAAKkT,EAAS4U,mBAAmB5D,WAAY,SAC5DsgB,EAAexkC,EAAQiY,EAAO2K,UAAUrD,IAAK,WAAY,6CAA+CV,GAAoB1e,GAAQ,KAAM,SACnI,CAAC,EAAa0Z,GAAO6pB,GAAOc,EAAc,+DAAgE,CAAEh/B,KAAMi/B,KAC7H,KAAK,EAED,OADA/8B,EAAG9B,OACI,CAAC,EAAazK,KAAK8qC,eAAe/lC,OAAO,qEAAqEwa,OAAO,aAAvGvf,IACzB,KAAK,EAED,OADoBuM,EAAG9B,OACC/I,OAAS,EAC1B,CAAC,EAAagd,GAAO0K,GAAKppB,KAAK8qC,eAAgB,OAAQzgC,GAAK,CAC3D0gC,iCAAkC,CAC9BC,UAAW,MACXC,iBAAkB,0GAClBC,cAAe,4EACfC,aAAc,kDACdC,eAAgB,IAChBC,gBAAiB,OARe,CAAC,EAAa,GAW9D,KAAK,EACD9+B,EAAG9B,OACH8B,EAAG/B,MAAQ,EACf,KAAK,EAAG,MAAO,CAAC,WC3LhCo+B,GAAQtoC,UAAU8oC,uBAAyB,WACvC,OAAO//B,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAIsrC,EAAaC,EACjB,OAAOnhC,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAAG,MAAO,CAAC,EAAa+9B,GAAOvoC,KAAM,cAAcuf,OAAO,qBAAlCgpB,IAC7B,KAAK,EAED,OADA+C,EAAc/+B,EAAG9B,OACV,CAAC,EAAazK,KAAKuf,OAAO,qBAAZvf,IACzB,KAAK,EAID,OAHAurC,EAAch/B,EAAG9B,OAAQkiB,mBAGlB,CAAC,EAFF/I,GAAI5I,GAAcgG,GAAasqB,KAAerzB,cAAcjY,MACrDgwB,MAAM7G,QAAQmiB,EAAYE,oBACXpC,0BAChC,KAAK,EAGL,MAAO,CAAC,EAAe78B,EAAG9B,OAAQ1F,QAAO,SAAU4B,GAAK,OAAOA,EAAE3B,KAAKZ,gBAAkBmnC,EAAWxiB,WAAW3kB,0BAK9HwkC,GAAQtoC,UAAUupC,uBAAyB,SAAU4B,EAAeC,GAEhE,YADc,IAAVA,IAAoBA,GAAQ,GACzBriC,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAIsrC,EAAa3tB,EAAKguB,EAAQC,EAAYC,EAAkBC,EAC5D,OAAO1hC,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAAG,MAAO,CAAC,EAAa+9B,GAAOvoC,KAAM,cAAcuf,OAAO,qBAAlCgpB,IAC7B,KAAK,EAID,OAHA+C,EAAc/+B,EAAG9B,OACjBkT,EAAMiG,GAAI5I,GAAcgG,GAAasqB,KAAerzB,cAAcjY,MAClE2rC,EAAShuB,EAAIqS,MAAM7G,QAAQmiB,EAAYE,oBAChC,CAAC,EAAaxrC,KAAKuf,OAAO,qBAAZvf,IACzB,KAAK,EAED,OADA4rC,EAAcr/B,EAAG9B,OAAQkiB,mBAAmB5D,WACrC,CAAC,EAAa4iB,EAAOvC,0BAChC,KAAK,EAkBD,OAjBAyC,EAAmBt/B,EAAG9B,OACtBqhC,EAA2BJ,EAAQG,EAAmBA,EAAiB9mC,QAAO,SAAUkB,GAAK,OAAOA,EAAEjB,OAAS4mC,KAE/GH,EAAc9pC,SAAQ,SAAUkE,GAC5B,IAAIkd,EAAW+oB,EAAyBC,MAAK,SAAUC,GAAM,OAAOA,EAAG9+B,OAASrH,EAAEqH,MAAQ8+B,EAAGhnC,OAAS4mC,KAClG7oB,EACAA,EAASniB,MAAQiF,EAAEjF,MAGnBkrC,EAAyBlpC,KAAK,CAC1BsK,KAAMrH,EAAEqH,KACRlI,KAAM4mC,EACNhrC,MAAOiF,EAAEjF,WAKd,CAAC,EAAa+qC,EAAO9B,uBAAuBiC,IACvD,KAAK,EAGD,OADAv/B,EAAG9B,OACI,CAAC,WAK5Bm+B,GAAQtoC,UAAU2rC,yBAA2B,WACzC,OAAO5iC,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,OAAOoK,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAAG,MAAO,CAAC,EAAaxK,KAAK6pC,uBAAuB,IAAI,IAC7D,KAAK,EAED,OADAt9B,EAAG9B,OACI,CAAC,WCtE5B,IAAIyhC,GAA+B,SAAUp+B,GAEzC,SAASo+B,IACL,OAAkB,OAAXp+B,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAwE/D,OA1EAwI,EAAU0jC,EAAep+B,GASzBo+B,EAAc5rC,UAAU6rC,wBAA0B,SAAUC,GACxD,OAAO/iC,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAI0C,EACJ,OAAO0H,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAAG,MAAO,CAAC,EAAakU,GAAO1e,KAAKgX,MAAMq1B,GAAc,2BAA4BhiC,GAAK,CAAE,cAAiB+hC,MACjH,KAAK,EAED,OADA1pC,EAAO6J,EAAG9B,OACH,CAAC,EAAc,CACd6hC,YAAatsC,KAAKmpB,QAAQzmB,EAAKgQ,IAC/BhQ,KAAMA,YAUlCwpC,EAAc5rC,UAAU6oB,QAAU,SAAUzW,GACxC,OAAOyI,GAAInD,UAAUu0B,GAAYvsC,MAAM8X,OAAO,KAAOpF,EAAK,MAAO,gBAYrEw5B,EAAc5rC,UAAUqQ,IAAM,SAAU+B,EAAIxF,EAAMoY,EAAaknB,EAAOjjB,GAIlE,YAHoB,IAAhBjE,IAA0BA,EAAc,SAC9B,IAAVknB,IAAoBA,EAAQ,6BACL,IAAvBjjB,IAAiCA,EAAqB,IACnDlgB,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAI8jB,EAAUphB,EACd,OAAO0H,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAOD,OANAsZ,EAAWzZ,GAAK3K,OAAOyI,OAAO2S,GAAS,kBAAmB,CACtD,YAAewK,EACf,MAASknB,EACT,GAAM,CAAE,YAAe95B,GACvB,KAAQxF,GACTqc,IACI,CAAC,EAAa7K,GAAO1e,KAAM8jB,IACtC,KAAK,EAED,OADAphB,EAAO6J,EAAG9B,OACH,CAAC,EAAc,CAAE6hC,YAAatsC,KAAKmpB,QAAQzmB,EAAKgQ,IAAKhQ,KAAMA,YAKtFqG,EAAW,CACPoS,GAAI,gCACL+wB,EAAc5rC,UAAW,0BAA2B,MACvDyI,EAAW,CACPoS,GAAI,YACL+wB,EAAc5rC,UAAW,MAAO,MACnByI,EAAW,CACvB+X,GAAY,iBACborB,GA1E2B,CA4EhClsB,IAESqsB,GAAertB,GAAmBktB,IACzCO,GAA8B,SAAU3+B,GAExC,SAAS2+B,IACL,IAAIzgC,EAAmB,OAAX8B,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAEhE,OADAgM,EAAMmD,OAASyR,GAAW,MACnB5U,EA0CX,OA9CAxD,EAAUikC,EAAc3+B,GAMxBpO,OAAOC,eAAe8sC,EAAansC,UAAW,aAAc,CAIxDT,IAAK,WACD,OAAOsb,GAAInD,UAAU00B,GAAW1sC,MAAO,kBAE3CJ,YAAY,EACZsB,cAAc,IAElBxB,OAAOC,eAAe8sC,EAAansC,UAAW,SAAU,CAIpDT,IAAK,WACD,OAAOsb,GAAInD,UAAUsI,GAA8BtgB,KAAM,UAAW,cAExEJ,YAAY,EACZsB,cAAc,IAElBxB,OAAOC,eAAe8sC,EAAansC,UAAW,SAAU,CAIpDT,IAAK,WACD,OAAOsb,GAAInD,UAAUu0B,GAAYvsC,KAAM,UAAW,cAEtDJ,YAAY,EACZsB,cAAc,IAElBxB,OAAOC,eAAe8sC,EAAansC,UAAW,uBAAwB,CAIlET,IAAK,WACD,OAAOsb,GAAInD,UAAUsI,GAA8BtgB,KAAM,wBAAyB,4BAEtFJ,YAAY,EACZsB,cAAc,IAEXurC,EA/CsB,CAgD/BlsB,IAESgsB,GAAcvtB,GAAmBytB,IACxCE,GAA6B,SAAU7+B,GAEvC,SAAS6+B,IACL,OAAkB,OAAX7+B,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAa/D,OAfAwI,EAAUmkC,EAAa7+B,GASvB6+B,EAAYrsC,UAAU6oB,QAAU,SAAUzW,GACtC,OAAOyI,GAAInD,UAAU40B,GAAU5sC,MAAM8X,OAAO,SAAWpF,EAAK,MAAO,gBAEzD3J,EAAW,CACrB+X,GAAY,eACb6rB,GAfyB,CAiB9B3sB,IAES0sB,GAAa1tB,GAAmB2tB,IACvCE,GAA4B,SAAU/+B,GAEtC,SAAS++B,IACL,OAAkB,OAAX/+B,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAE/D,OAJAwI,EAAUqkC,EAAY/+B,GAIf++B,EALoB,CAM7BtsB,IAESqsB,GAAY5tB,GAAmB6tB,IClK1Cl5B,GAAQ4T,GAAM,eAAgB8kB,ICA9B14B,GAAQ+a,GAAO,cAAe6d,GAAa,eCA3C54B,GAAQsW,GAAO,eAAgBoiB,ICG/B,IAAIS,GAA2B,SAAUh/B,GAErC,SAASg/B,IACL,OAAkB,OAAXh/B,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KA6D/D,OA/DAwI,EAAUskC,EAAWh/B,GAUrBg/B,EAAUxsC,UAAUqQ,IAAM,SAAU+B,EAAIq6B,GAEpC,YADc,IAAVA,IAAoBA,GAAQ,GACzB1jC,EAAUrJ,UAAM,OAAQ,GAAQ,WAEnC,OAAOoK,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAAG,MAAO,CAAC,EAAakU,GAAO1e,KAAKgX,MAAMg2B,GAAU,OAAQ3iC,GAAK,CAC9D4iC,aAAc,EACdC,UAAWx6B,EACXq6B,MAAOA,MAEf,KAAK,EAED,MAAO,CAAC,EAAc,CACdrqC,KAFD6J,EAAG9B,OAGF0iC,QAASntC,KAAKmpB,QAAQzW,aAWlDo6B,EAAUxsC,UAAU6oB,QAAU,SAAUzW,GACpC,IAAIy6B,EAAUC,GAAQptC,MAEtB,OADAmtC,EAAQr1B,OAAO,KAAOpF,EAAK,MACpByI,GAAInD,UAAUm1B,EAAS,gBAQlCL,EAAUxsC,UAAUw6B,OAAS,SAAUpoB,EAAIq6B,GAEvC,YADc,IAAVA,IAAoBA,GAAQ,GACzBruB,GAAO1e,KAAKgX,MAAMg2B,GAAU,UAAW3iC,GAAK,CAC/C6iC,UAAWx6B,EACXq6B,MAAOA,MAGfhkC,EAAW,CACPoS,GAAI,YACL2xB,EAAUxsC,UAAW,MAAO,MAC/ByI,EAAW,CACPoS,GAAI,eACL2xB,EAAUxsC,UAAW,SAAU,MACtByI,EAAW,CACnB+X,GAAY,aACbgsB,GA/DuB,CAiE5B9sB,IAESgtB,GAAWhuB,GAAmB8tB,IACrCO,GAA0B,SAAUv/B,GAEpC,SAASu/B,IACL,OAAkB,OAAXv/B,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KA4B/D,OA9BAwI,EAAU6kC,EAAUv/B,GASpBu/B,EAAS/sC,UAAUgtC,WAAa,SAAUP,GAEtC,YADc,IAAVA,IAAoBA,GAAQ,GACzB1jC,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAIquB,EAAkB8e,EAAS5zB,EAC/B,OAAOnP,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAED,OADA6jB,EAAmBruB,KAAK6Y,qBACjB,CAAC,EAAau0B,GAAQptC,MAAMuf,OAAO,eAArB6tB,IACzB,KAAK,EAID,OAHAD,EAAU5gC,EAAG9B,OACb8O,EAAUvZ,KAAK6f,UAAUmtB,GAAUhtC,KAAKuX,UAAW,GAAIvX,KAAKuS,OAAOuoB,OAAOqS,EAAQI,aAAcR,GAChG1e,IACO,CAAC,EAAc9U,WAK1CxQ,EAAW,CACPoS,GAAI,kBACLkyB,EAAS/sC,UAAW,aAAc,MAC9B+sC,EA/BkB,CAgC3B9sB,IAES6sB,GAAUpuB,GAAmBquB,ICzGxC15B,GAAQgQ,GAAO,WAAYqpB,ICA3Br5B,GAAQ4T,GAAM,WAAYylB,ICK1B,IAyeWQ,GAkCAC,GAKAC,GASAC,GA+BAC,GAkBAC,GAKAC,GAKAC,GAplBPC,GAAyB,SAAUlgC,GAEnC,SAASkgC,IACL,OAAkB,OAAXlgC,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAmZ/D,OArZAwI,EAAUwlC,EAASlgC,GASnBkgC,EAAQ1tC,UAAU2tC,iBAAmB,SAAU3E,GAC3C,OAAOjgC,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAI8jB,EAAUphB,EACd,OAAO0H,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAOD,MANmB,iBAAR8+B,IACPA,EAAM,CAAE4E,UAAW5E,IAEvBxlB,EAAWzZ,GAAK,CACZ,WAAc,EAAOyQ,GAAS,wCAAyCwuB,KAEpE,CAAC,EAAa5qB,GAAO1e,KAAKgX,MAAMm3B,GAAQ,oBAAqBrqB,IACxE,KAAK,EAED,MAAO,CAAC,EAAc,CACdphB,KAFRA,EAAO6J,EAAG9B,OAGF2jC,MAAOpuC,KAAKmpB,QAAQzmB,EAAKiiB,cAWrDqpB,EAAQ1tC,UAAU6oB,QAAU,SAAUzW,GAClC,OAAOyI,GAAInD,UAAUq2B,GAAMruC,MAAM8X,OAAO,KAAOpF,EAAK,MAAO,eAO/Ds7B,EAAQ1tC,UAAU+oB,WAAa,SAAUlE,GACrC,OAAOhK,GAAInD,UAAUq2B,GAAMruC,KAAM,eAAiBmlB,EAAQ,MAAO,kBAOrE6oB,EAAQ1tC,UAAUguC,yBAA2B,SAAUphC,GACnD,OAAOiO,GAAInD,UAAUq2B,GAAMruC,KAAM,6BAA+BkN,EAAO,MAAO,gCASlF8gC,EAAQ1tC,UAAUqQ,IAAM,SAAUwU,EAAOopB,EAAW5mB,GAChD,OAAOte,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAI8jB,EAAUphB,EACd,OAAO0H,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAOD,OANAsZ,EAAWzZ,GAAK3K,OAAOyI,OAAO2S,GAASyzB,GAAY,CAC/C,MAASppB,GACVwC,IACExM,GAAIM,SAASzb,OACdmb,GAAInD,UAAUhY,KAAM,UAEjB,CAAC,EAAa0e,GAAO1e,KAAKgX,MAAMm3B,GAAQ,MAAOrqB,IAC1D,KAAK,EAED,MAAO,CAAC,EAAc,CACdphB,KAFRA,EAAO6J,EAAG9B,OAGF2jC,MAAOpuC,KAAKmpB,QAAQzmB,EAAKiiB,cAarDqpB,EAAQ1tC,UAAUkuC,QAAU,SAAUrpB,EAAOspB,EAAW9mB,QAClC,IAAd8mB,IAAwBA,EAAY,KACxC,IAAI/tB,EAAQ,CACRguB,cAAe,EACfC,UAAWF,GAEf,OAAOzuC,KAAK2Q,IAAIwU,EAAO,eAAgB,EAAOzE,EAAOiH,KAWzDqmB,EAAQ1tC,UAAUsuC,cAAgB,SAAUzpB,EAAO0pB,EAASC,EAAYC,EAAYpnB,QAC7D,IAAfonB,IAAyBA,EAAavB,GAAWwB,MACrD,IAAItuB,EAAQ,CACRuuB,WAAYH,EACZJ,cAAe,GACfQ,QAASL,EACTM,WAAYJ,GAEhB,OAAO/uC,KAAK2Q,IAAIwU,EAAO,qBAAsB,EAAOzE,EAAOiH,KAW/DqmB,EAAQ1tC,UAAU8uC,YAAc,SAAUjqB,EAAOkqB,EAAeC,EAAcC,EAAuB5nB,QAC3E,IAAlB0nB,IAA4BA,EAAgB5B,GAAwB+B,eACnD,IAAjBF,IAA2BA,EAAe1B,GAAa6B,gBAC7B,IAA1BF,IAAoCA,EAAwB7B,GAAgCgC,aAChG,IAAIhvB,EAAQ,CACRivB,qBAAsBL,EACtBM,cAAeP,EACfX,cAAe,EACfmB,sBAAuBN,GAE3B,OAAOvvC,KAAK2Q,IAAIwU,EAAO,mBAAoB,EAAOzE,EAAOiH,KAU7DqmB,EAAQ1tC,UAAUwvC,UAAY,SAAU3qB,EAAO4qB,EAAUC,EAAUroB,GAC/D,IAAIjH,EAAQ,CAAEguB,cAAe,GAO7B,YANiBvtC,IAAb4uC,IACArvB,EAAQ,EAAO,CAAEuvB,aAAcF,GAAYrvB,SAE9Bvf,IAAb6uC,IACAtvB,EAAQ,EAAO,CAAEwvB,aAAcF,GAAYtvB,IAExC1gB,KAAK2Q,IAAIwU,EAAO,iBAAkB,EAAOzE,EAAOiH,KAW3DqmB,EAAQ1tC,UAAU6vC,YAAc,SAAUhrB,EAAO4qB,EAAUC,EAAUI,EAAiBzoB,QAC1D,IAApByoB,IAA8BA,EAAkB,MACpD,IAAI1vB,EAAQ,CACR2vB,iBAAkBD,EAClB1B,cAAe,IAQnB,YANiBvtC,IAAb4uC,IACArvB,EAAQ,EAAO,CAAEuvB,aAAcF,GAAYrvB,SAE9Bvf,IAAb6uC,IACAtvB,EAAQ,EAAO,CAAEwvB,aAAcF,GAAYtvB,IAExC1gB,KAAK2Q,IAAIwU,EAAO,mBAAoB,EAAOzE,EAAOiH,KAc7DqmB,EAAQ1tC,UAAUgwC,iBAAmB,SAAUnrB,EAAOorB,EAAeC,EAAUC,EAAgBC,EAAYC,EAAgBhpB,QACjG,IAAlB4oB,IAA4BA,EAAgB,QAC/B,IAAbC,IAAuBA,GAAW,QACf,IAAnBC,IAA6BA,GAAiB,QAC/B,IAAfC,IAAyBA,GAAa,QACnB,IAAnBC,IAA6BA,GAAiB,GAClD,IAAIjwB,EAAQ,CACRkwB,eAAgBD,EAChBE,WAAYH,EACZhC,cAAe,EACfoC,cAAeP,EACfQ,eAAgBN,EAChBO,SAAUR,GAEd,OAAOxwC,KAAK2Q,IAAIwU,EAAO,wBAAyB,EAAOzE,EAAOiH,KAOlEqmB,EAAQ1tC,UAAU2wC,OAAS,SAAU9rB,EAAOkqB,EAAe1nB,QACjC,IAAlB0nB,IAA4BA,EAAgBxB,GAAmBqD,WACnE,IAAIxwB,EAAQ,CACRkvB,cAAeP,EACfX,cAAe,IAEnB,OAAO1uC,KAAK2Q,IAAIwU,EAAO,cAAe,EAAOzE,EAAOiH,KASxDqmB,EAAQ1tC,UAAU6wC,QAAU,SAAUhsB,EAAOisB,EAAezpB,GACxD,IAAIjH,EAAQ,CACRguB,cAAe,GACf2C,cAAeD,GAEnB,OAAOpxC,KAAK2Q,IAAIwU,EAAO,eAAgB,EAAOzE,EAAOiH,KAUzDqmB,EAAQ1tC,UAAUgxC,UAAY,SAAUnsB,EAAOosB,EAAcC,EAAiB7pB,GAC1E,OAAOte,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAI0gB,EAAOoD,EAAUphB,EACrB,OAAO0H,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAUD,OATAkW,EAAQ,EAAO,CACXguB,cAAe,EACf+C,gBAAiBD,EACjBE,aAAcH,EACdprB,MAAOhB,GACRwC,GACH7D,EAAWzZ,GAAK,CACZ,WAAc,EAAOyQ,GAAS,+BAAgC4F,KAE3D,CAAC,EAAahC,GAAO1e,KAAKgX,MAAMm3B,GAAQ,YAAarqB,IAChE,KAAK,EAED,MAAO,CAAC,EAAc,CACdphB,KAFRA,EAAO6J,EAAG9B,OAGF2jC,MAAOpuC,KAAKmpB,QAAQzmB,EAAKiiB,cAerDqpB,EAAQ1tC,UAAUqxC,UAAY,SAAUxsB,EAAOysB,EAASzuC,EAAQ0uC,EAAQlqB,QACrD,IAAXxkB,IAAqBA,EAAS4qC,GAAsB+D,UACxD,IAAIpxB,EAAQ,CACRqxB,QAAS,CACL17B,QAASu7B,GAEbI,WAAY7uC,EACZurC,cAAe,EACfuD,aAAcJ,GAElB,OAAO7xC,KAAK2Q,IAAIwU,EAAO,iBAAkB,EAAOzE,EAAOiH,KAU3DqmB,EAAQ1tC,UAAU4xC,eAAiB,SAAU/sB,EAAOysB,EAASC,EAAQlqB,GACjE,IAAIjH,EAAQ,CACRqxB,QAAS,CACL17B,QAASu7B,GAEblD,cAAe,GACfuD,aAAcJ,GAElB,OAAO7xC,KAAK2Q,IAAIwU,EAAO,sBAAuB,EAAOzE,EAAOiH,KAQhEqmB,EAAQ1tC,UAAU6xC,WAAa,SAAUhtB,EAAOwC,GAI5C,OAAO3nB,KAAK2Q,IAAIwU,EAAO,WAAY,EAHvB,CACRupB,cAAe,GAE8B/mB,KASrDqmB,EAAQ1tC,UAAU8xC,wBAA0B,SAAU5rB,EAAa6rB,EAAsBC,GACrF,OAAOjpC,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAIgF,EAAMtC,EACV,OAAO0H,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAED,OADAxF,EAAO,wCAA0CwhB,EAAc,4BAA8B6rB,EAAuB,iBAAmBC,EAAY,KAC5I,CAAC,EAAa5zB,GAAO1e,KAAKgX,MAAMm3B,GAAQnpC,KACnD,KAAK,EAED,MAAO,CAAC,EAAc,CACdtC,KAFRA,EAAO6J,EAAG9B,OAGF2jC,MAAOpuC,KAAKmpB,QAAQzmB,EAAKiiB,cAYrDqpB,EAAQ1tC,UAAUiyC,YAAc,SAAUptB,EAAOwC,GAE7C,OAAO3nB,KAAK2Q,IAAIwU,EAAO,mBAAoB,EAD/B,CAAEupB,cAAe,IAC4B/mB,KAE7D5e,EAAW,CACPoS,GAAI,wBACL6yB,EAAQ1tC,UAAW,mBAAoB,MAC1CyI,EAAW,CACPoS,GAAI,eACL6yB,EAAQ1tC,UAAW,UAAW,MACjCyI,EAAW,CACPoS,GAAI,qBACL6yB,EAAQ1tC,UAAW,gBAAiB,MACvCyI,EAAW,CACPoS,GAAI,mBACL6yB,EAAQ1tC,UAAW,cAAe,MACrCyI,EAAW,CACPoS,GAAI,iBACL6yB,EAAQ1tC,UAAW,YAAa,MACnCyI,EAAW,CACPoS,GAAI,mBACL6yB,EAAQ1tC,UAAW,cAAe,MACrCyI,EAAW,CACPoS,GAAI,wBACL6yB,EAAQ1tC,UAAW,mBAAoB,MAC1CyI,EAAW,CACPoS,GAAI,cACL6yB,EAAQ1tC,UAAW,SAAU,MAChCyI,EAAW,CACPoS,GAAI,eACL6yB,EAAQ1tC,UAAW,UAAW,MACjCyI,EAAW,CACPoS,GAAI,iBACL6yB,EAAQ1tC,UAAW,YAAa,MACnCyI,EAAW,CACPoS,GAAI,iBACL6yB,EAAQ1tC,UAAW,YAAa,MACnCyI,EAAW,CACPoS,GAAI,sBACL6yB,EAAQ1tC,UAAW,iBAAkB,MACxCyI,EAAW,CACPoS,GAAI,kBACL6yB,EAAQ1tC,UAAW,aAAc,MACpCyI,EAAW,CACPoS,GAAI,+BACL6yB,EAAQ1tC,UAAW,0BAA2B,MACjDyI,EAAW,CACPoS,GAAI,mBACL6yB,EAAQ1tC,UAAW,cAAe,MAC3ByI,EAAW,CACjB+X,GAAY,WACbktB,GArZqB,CAuZ1BhuB,IAESmuB,GAASnvB,GAAmBgvB,IACnCwE,GAAwB,SAAU1kC,GAElC,SAAS0kC,IACL,IAAIxmC,EAAmB,OAAX8B,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAEhE,OADAgM,EAAMmD,OAASyR,GAAW,KACnB5U,EAmEX,OAvEAxD,EAAUgqC,EAAQ1kC,GAYlB0kC,EAAOlyC,UAAUonB,OAAS,SAAUC,EAAY4mB,GAC5C,OAAOllC,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAIyS,EAAMggC,EACV,OAAOroC,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EACD,OAAK,MAAQ+jC,EAAyD,CAAC,EAAa,GAC7E,CAAC,EAAaF,GAAMruC,MAAMuf,OAAO,iBAAiBvH,UAAU,CAC3D/K,QAAS,CACL,OAAU,qBAFDohC,IAKzB,KAAK,EACD57B,EAAOlG,EAAG9B,OACV8jC,EAAY97B,EAAK,cACjBlG,EAAG/B,MAAQ,EACf,KAAK,EAED,OADAioC,EAAMpoC,GAAK,EAAOyQ,GAASyzB,GAAY5mB,GAAa1a,GAAQ,CAAE,gBAAiB,WACxE,CAAC,EAAayR,GAAO1e,KAAMyyC,IACtC,KAAK,EAED,MAAO,CAAC,EAAc,CACd/vC,KAFD6J,EAAG9B,OAGF2jC,MAAOpuC,eASnCwyC,EAAOlyC,UAAUoyC,qBAAuB,SAAUC,GAC9C,OAAOj0B,GAAO1e,KAAKgX,MAAMq3B,GAAO,wBAA0BsE,EAAO,OAKrEH,EAAOlyC,UAAUsyC,kBAAoB,SAAUD,GAC3C,OAAOj0B,GAAO1e,KAAKgX,MAAMq3B,GAAO,qBAAuBsE,EAAO,OAKlEH,EAAOlyC,UAAUuyC,iBAAmB,SAAUF,GAC1C,OAAOj0B,GAAO1e,KAAKgX,MAAMq3B,GAAO,oBAAsBsE,EAAO,OAEjE5pC,EAAW,CACPoS,GAAI,aACLq3B,EAAOlyC,UAAW,SAAU,MAC/ByI,EAAW,CACPoS,GAAI,2BACLq3B,EAAOlyC,UAAW,uBAAwB,MAC7CyI,EAAW,CACPoS,GAAI,wBACLq3B,EAAOlyC,UAAW,oBAAqB,MAC1CyI,EAAW,CACPoS,GAAI,uBACLq3B,EAAOlyC,UAAW,mBAAoB,MAClCkyC,EAxEgB,CAyEzBjyB,IAES8tB,GAAQrvB,GAAmBwzB,KAKtC,SAAWhF,GACPA,EAAWA,EAAoB,QAAI,GAAK,UACxCA,EAAWA,EAAoB,QAAI,GAAK,UACxCA,EAAWA,EAAiB,KAAI,GAAK,OACrCA,EAAWA,EAAiB,KAAI,GAAK,OACrCA,EAAWA,EAAqB,SAAI,GAAK,WACzCA,EAAWA,EAAoB,QAAI,GAAK,UACxCA,EAAWA,EAAmB,OAAI,GAAK,SACvCA,EAAWA,EAAmB,OAAI,GAAK,SACvCA,EAAWA,EAAoB,QAAI,GAAK,UACxCA,EAAWA,EAAmB,OAAI,GAAK,SACvCA,EAAWA,EAAqB,SAAI,IAAM,WAC1CA,EAAWA,EAAgB,IAAI,IAAM,MACrCA,EAAWA,EAAqB,SAAI,IAAM,WAC1CA,EAAWA,EAAsB,UAAI,IAAM,YAC3CA,EAAWA,EAAiB,KAAI,IAAM,OACtCA,EAAWA,EAAwB,YAAI,IAAM,cAC7CA,EAAWA,EAAuB,WAAI,IAAM,aAC5CA,EAAWA,EAAuB,WAAI,IAAM,aAC5CA,EAAWA,EAAiB,KAAI,IAAM,OACtCA,EAAWA,EAAwB,YAAI,IAAM,cAC7CA,EAAWA,EAAiB,KAAI,IAAM,OACtCA,EAAWA,EAAuB,WAAI,IAAM,aAC5CA,EAAWA,EAA6B,iBAAI,IAAM,mBAClDA,EAAWA,EAAoB,QAAI,IAAM,UACzCA,EAAWA,EAAkB,MAAI,IAAM,QACvCA,EAAWA,EAA0B,cAAI,IAAM,gBAC/CA,EAAWA,EAA0B,cAAI,IAAM,gBAC/CA,EAAWA,EAAwB,YAAI,IAAM,cAC7CA,EAAWA,EAA2B,eAAI,IAAM,iBAChDA,EAAWA,EAAwB,YAAI,IAAM,cAC7CA,EAAWA,EAA8B,kBAAI,IAAM,oBA/BvD,CAgCGA,KAAeA,GAAa,KAE/B,SAAWC,GACPA,EAAwBA,EAAkC,SAAI,GAAK,WACnEA,EAAwBA,EAAkC,SAAI,GAAK,WAFvE,CAGGA,KAA4BA,GAA0B,KAEzD,SAAWC,GACPA,EAAgCA,EAA6C,YAAI,GAAK,cACtFA,EAAgCA,EAA0C,SAAI,GAAK,WACnFA,EAAgCA,EAA0C,SAAI,GAAK,WAHvF,CAIGA,KAAoCA,GAAkC,KAKzE,SAAWC,GAIPA,EAAgBA,EAA8B,aAAI,GAAK,eAIvDA,EAAgBA,EAAyC,wBAAI,GAAK,0BAIlEA,EAAgBA,EAAoC,mBAAI,GAAK,qBAI7DA,EAAgBA,EAAsC,qBAAI,GAAK,uBAI/DA,EAAgBA,EAA0C,yBAAI,GAAK,2BAInEA,EAAgBA,EAAuC,sBAAI,IAAM,wBAIjEA,EAAgBA,EAA0C,yBAAI,IAAM,2BA5BxE,CA6BGA,KAAoBA,GAAkB,KAEzC,SAAWC,GACPA,EAAaA,EAAwB,UAAI,GAAK,YAC9CA,EAAaA,EAAoB,MAAI,GAAK,QAC1CA,EAAaA,EAAqB,OAAI,GAAK,SAC3CA,EAAaA,EAAoB,MAAI,GAAK,QAC1CA,EAAaA,EAAoB,MAAI,GAAK,QAC1CA,EAAaA,EAAmB,KAAI,GAAK,OACzCA,EAAaA,EAAqB,OAAI,GAAK,SAC3CA,EAAaA,EAAgC,kBAAI,GAAK,oBACtDA,EAAaA,EAA8B,gBAAI,IAAM,kBACrDA,EAAaA,EAAmC,qBAAI,IAAM,uBAC1DA,EAAaA,EAAkC,oBAAI,IAAM,sBACzDA,EAAaA,EAA8B,gBAAI,IAAM,kBACrDA,EAAaA,EAA2B,aAAI,IAAM,eAClDA,EAAaA,EAAsB,QAAI,IAAM,UAC7CA,EAAaA,EAAuB,SAAI,IAAM,WAflD,CAgBGA,KAAiBA,GAAe,KAEnC,SAAWC,GACPA,EAAmBA,EAA8B,UAAI,GAAK,YAC1DA,EAAmBA,EAA0B,MAAI,GAAK,QAF1D,CAGGA,KAAuBA,GAAqB,KAE/C,SAAWC,GACPA,EAAuBA,EAAwC,gBAAI,GAAK,kBACxEA,EAAuBA,EAAmC,WAAI,GAAK,aAFvE,CAGGA,KAA2BA,GAAyB,KAEvD,SAAWC,GACPA,EAAsBA,EAAgC,SAAI,GAAK,WAC/DA,EAAsBA,EAAoC,aAAI,GAAK,eAFvE,CAGGA,KAA0BA,GAAwB,KC7lBrDp6B,GAAQ4T,GAAM,SAAU4mB,IACxBx6B,GAAQ4T,GAAM,kBAAmB4mB,GAAQ,mBCDzCx6B,GAAQsW,GAAO,SAAUkkB,ICAzBx6B,GAAQi1B,GAAS,QAASrT,ICA1B5hB,GAAQ+a,GAAO,OAAQ0G,GAAM,QCA7BzhB,GAAQ+a,GAAO,SAAU6Z,GAAQ,UCAjC50B,GAAQsW,GAAO,aAAcse,GAAQ,cCCrC50B,GAAQ4T,GAAM,UAAWihB,IACzB70B,GAAQ4T,GAAM,aAAcghB,GAAQ,cACpChhB,GAAKjnB,UAAUwyC,6BAA+B,SAAUC,GACpD,OAAOxK,GAAOvoC,KAAM,iCAAmC0jB,GAAoBqvB,GAAqB,OAEpGxrB,GAAKjnB,UAAU0yC,8BAAgC,SAAUD,GACrD,OAAOxK,GAAOvoC,KAAM,6CAA+C0jB,GAAoBqvB,GAAqB,OAEhHxrB,GAAKjnB,UAAU2yC,cAAgB,SAAU3W,GACrC,OAAOiM,GAAOvoC,KAAM,kBAAoBs8B,EAAW,OCLvD,IAAI4W,GAAwB,SAAUplC,GAElC,SAASolC,IACL,OAAkB,OAAXplC,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAa/D,OAfAwI,EAAU0qC,EAAQplC,GASlBolC,EAAO5yC,UAAU6oB,QAAU,SAAUzW,GACjC,OAAOyI,GAAInD,UAAUm7B,GAAKnzC,MAAM8X,OAAO,KAAOpF,EAAK,MAAO,gBAErD3J,EAAW,CAChB+X,GAAY,UACboyB,GAfoB,CAiBzBlzB,IAESozB,GAAQp0B,GAAmBk0B,IAKlCG,GAAuB,SAAUvlC,GAEjC,SAASulC,IACL,OAAkB,OAAXvlC,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAE/D,OAJAwI,EAAU6qC,EAAOvlC,GAIVulC,EALe,CAMxB9yB,IAES4yB,GAAOn0B,GAAmBq0B,ICrCrC1/B,GAAQsW,GAAO,QAASmpB,GAAO,SCE/B,IAAIE,GAA2B,SAAUxlC,GAErC,SAASwlC,IACL,OAAkB,OAAXxlC,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAa/D,OAfAwI,EAAU8qC,EAAWxlC,GASrBwlC,EAAUhzC,UAAU6oB,QAAU,SAAUzW,GACpC,OAAOyI,GAAInD,UAAUu7B,GAAQvzC,KAAM,sBAAwB0S,EAAK,KAAM,gBAE9D3J,EAAW,CACnB+X,GAAY,kBACbwyB,GAfuB,CAiB5BtzB,IAESwzB,GAAWx0B,GAAmBs0B,IACrCG,GAA0B,SAAU3lC,GAEpC,SAAS2lC,IACL,OAAkB,OAAX3lC,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAqB/D,OAvBAwI,EAAUirC,EAAU3lC,GAOpB2lC,EAASnzC,UAAUozC,QAAU,WACzB,OAAOrqC,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAI6F,EACJ,OAAOuE,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAAG,MAAO,CAAC,EAAaxK,KAAKuf,OAAO,UAAZvf,IAC7B,KAAK,EAED,OADA6F,EAAI0G,EAAG9B,OACA,CAAC,EAAcwZ,GAAKpe,EAAE8tC,kBAKjD5qC,EAAW,CACPoS,GAAI,eACLs4B,EAASnzC,UAAW,UAAW,MAC3BmzC,EAxBkB,CAyB3BlzB,IAESgzB,GAAUv0B,GAAmBy0B,ICjDxC9vB,GAAMrjB,UAAUszC,YAAc,SAAUlvB,GACpC,OAAOrb,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,OAAOoK,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAAG,MAAO,CAAC,EAAakU,GAAO1e,KAAKgX,MAAMiN,GAAM,gBAAkBS,EAAS,QAChF,KAAK,EAED,OADAnY,EAAG9B,OACI,CAAC,WAK5BkZ,GAAMrjB,UAAUuzC,gBAAkB,WAC9B,OAAOxqC,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,OAAOoK,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAAG,MAAO,CAAC,EAAakU,GAAO1e,KAAKgX,MAAMiN,GAAM,qBACrD,KAAK,EAED,OADA1X,EAAG9B,OACI,CAAC,WAK5BkZ,GAAMrjB,UAAUwzC,kBAAoB,WAChC,OAAOzqC,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,OAAOoK,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAAG,MAAO,CAAC,EAAakU,GAAO1e,KAAKgX,MAAMiN,GAAM,uBACrD,KAAK,EAED,OADA1X,EAAG9B,OACI,CAAC,WC/B5B8c,GAAKjnB,UAAUyzC,YAAc,SAAUC,GAEnC,YADqB,IAAjBA,IAA2BA,GAAe,GACvC3qC,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAI0C,EACJ,OAAO0H,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAAG,MAAO,CAAC,EAAaxK,KAAKgX,MAAM4M,GAAK,eAAiBowB,EAAe,IAAhDh0C,IAC7B,KAAK,EAED,MAAoB,iBADpB0C,EAAO6J,EAAG9B,QAEC,CAAC,EAAcpI,KAAK4M,MAAMvM,IAE9B,CAAC,EAAcA,WAK1C6kB,GAAKjnB,UAAU2zC,iBAAmB,WAC9B,OAAOv1B,GAAO1e,KAAKgX,MAAM4M,GAAK,sBChBlCza,QAAQxJ,eAAesjB,GAAO3iB,UAAW,WAAY,CACjDY,cAAc,EACdtB,YAAY,EACZC,IAAK,WACD,OAAOG,KAAKwjB,iBAAgB,SAAUjX,GAClC,IAAIqB,EAAUrB,EAAGqB,QAAS2P,EAAUhR,EAAGgR,QAASnF,EAAU7L,EAAG6L,QAC7D,OAAOo7B,GAASj2B,GAASvF,UAAUpK,GAASgK,WAAWQ,SCCnE,IAAI87B,GAAkC,SAAUpmC,GAE5C,SAASomC,IACL,OAAkB,OAAXpmC,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KA2D/D,OA7DAwI,EAAU0rC,EAAkBpmC,GAS5BomC,EAAiB5zC,UAAU6oB,QAAU,SAAUzW,GAC3C,OAAOyI,GAAInD,UAAUm8B,GAAen0C,MAAM8X,OAAO,IAAMpF,EAAK,KAAM,gBAStEwhC,EAAiB5zC,UAAUqQ,IAAM,SAAUwU,EAAOpe,EAAKqtC,GAEnD,YADgB,IAAZA,IAAsBA,GAAU,GAC7B/qC,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAI8jB,EAAUphB,EACd,OAAO0H,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAMD,OALAsZ,EAAWzZ,GAAK,EAAOyQ,GAAS,qBAAsB,CAClDu5B,UAAWD,EACXjuB,MAAOhB,EACPf,IAAKrd,KAEF,CAAC,EAAa2X,GAAO1e,KAAKgX,MAAMs9B,GAAiB,MAAOxwB,IACnE,KAAK,EAED,MAAO,CAAC,EAAc,CACdphB,KAFRA,EAAO6J,EAAG9B,OAGF8pC,KAAMv0C,KAAKmpB,QAAQzmB,EAAKiiB,cAYpDuvB,EAAiB5zC,UAAUk0C,UAAY,SAAUC,EAAQC,GACrD,IAAI5wB,EAAWzZ,GAAK,CAChBoqC,OAAQA,EACRC,eAAgBA,IAEpB,OAAOh2B,GAAO1e,KAAKgX,MAAMs9B,GAAiB,aAAcxwB,IAE5D/a,EAAW,CACPoS,GAAI,YACL+4B,EAAiB5zC,UAAW,MAAO,MACtCyI,EAAW,CACPoS,GAAI,kBACL+4B,EAAiB5zC,UAAW,YAAa,MACrC4zC,EA9D0B,CA+DnCl0B,IAESs0B,GAAkBt1B,GAAmBk1B,IAK5CS,GAAiC,SAAU7mC,GAE3C,SAAS6mC,IACL,IAAI3oC,EAAmB,OAAX8B,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAEhE,OADAgM,EAAMmD,OAASyR,GAAW,MACnB5U,EAsCX,OA1CAxD,EAAUmsC,EAAiB7mC,GAM3BpO,OAAOC,eAAeg1C,EAAgBr0C,UAAW,WAAY,CAIzDT,IAAK,WACD,OAAOsb,GAAInD,UAAUs8B,GAAgBt0C,KAAM,YAAa,gBAE5DJ,YAAY,EACZsB,cAAc,IAOlByzC,EAAgBr0C,UAAUonB,OAAS,SAAUC,GACzC,OAAOte,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAI8jB,EACJ,OAAO1Z,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAED,OADAsZ,EAAWzZ,GAAK,EAAOyQ,GAAS,qBAAsB6M,GAAa1a,GAAQ,CAAE,gBAAiB,WACvF,CAAC,EAAayR,GAAO1e,KAAM8jB,IACtC,KAAK,EAED,MAAO,CAAC,EAAc,CACdphB,KAFD6J,EAAG9B,OAGF8pC,KAAMv0C,eAMlC+I,EAAW,CACPoS,GAAI,cACLw5B,EAAgBr0C,UAAW,SAAU,MACjCq0C,EA3CyB,CA4ClCp0B,IAES4zB,GAAiBn1B,GAAmB21B,IAK3CC,GAA6B,SAAU9mC,GAEvC,SAAS8mC,IACL,OAAkB,OAAX9mC,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KA2B/D,OA7BAwI,EAAUosC,EAAa9mC,GAIvBpO,OAAOC,eAAei1C,EAAYt0C,UAAW,cAAe,CAKxDT,IAAK,WACD,OAAOsb,GAAInD,UAAUs8B,GAAgBt0C,KAAM,eAAgB,kBAE/DJ,YAAY,EACZsB,cAAc,IAElBxB,OAAOC,eAAei1C,EAAYt0C,UAAW,mBAAoB,CAK7DT,IAAK,WACD,OAAOsb,GAAInD,UAAUs8B,GAAgBt0C,KAAM,oBAAqB,uBAEpEJ,YAAY,EACZsB,cAAc,IAEJ6H,EAAW,CACrB+X,GAAY,eACb8zB,GA7ByB,CA+B9B31B,IAES41B,GAAa71B,GAAmB41B,IAIvCE,GAAoC,SAAUhnC,GAE9C,SAASgnC,EAAmB9vC,GAExB,YADa,IAATA,IAAmBA,EAAO,MACvB8I,EAAOtN,KAAKR,KAAM,kBAAmBgF,IAAShF,KAyCzD,OA5CAwI,EAAUssC,EAAoBhnC,GAa9BgnC,EAAmBx0C,UAAUy0C,aAAe,SAAUC,EAAaC,EAAOC,EAAiBC,GAKvF,YAJoB,IAAhBH,IAA0BA,EAAc,WAC9B,IAAVC,IAAoBA,EAAQ,SACR,IAApBC,IAA8BA,EAAkB,WAC3B,IAArBC,IAA+BA,EAAmB,MAC/Cz2B,GAAO02B,GAAkB,aAAc/qC,GAAK,CAC/C8qC,iBAAkBA,EAClBF,MAAOA,EACPC,gBAAiBA,EACjBF,YAAaA,MASrBF,EAAmBx0C,UAAU+0C,eAAiB,SAAUC,EAAYJ,GAEhE,YADwB,IAApBA,IAA8BA,EAAkB,MAC7Cx2B,GAAO02B,GAAkB,eAAgB/qC,GAAK,CACjDirC,WAAYA,EACZJ,gBAAiBA,MAGzBnsC,EAAW,CACPoS,GAAI,oBACL25B,EAAmBx0C,UAAW,eAAgB,MACjDyI,EAAW,CACPoS,GAAI,sBACL25B,EAAmBx0C,UAAW,iBAAkB,MAC5Cw0C,EA7C4B,CA8CrC71B,IAESm2B,GAAoB,SAAUpwC,GAAQ,OAAO,IAAI8vC,GAAmB9vC,ICvN/E2O,GAAQ4T,GAAM,aAAcstB,ICC5B1rC,QAAQxJ,eAAesjB,GAAO3iB,UAAW,aAAc,CACnDY,cAAc,EACdtB,YAAY,EACZC,IAAK,WACD,OAAOG,KAAKwjB,iBAAgB,SAAUjX,GAClC,IAAIqB,EAAUrB,EAAGqB,QAAS2P,EAAUhR,EAAGgR,QAASnF,EAAU7L,EAAG6L,QAC7D,OAAOg9B,GAAkB73B,GAASvF,UAAUpK,GAASgK,WAAWQ,SCH5E,IAwaWm9B,GAxaPC,GAA2B,SAAU1nC,GAOrC,SAAS0nC,EAAUj4B,EAASvY,QACX,IAATA,IAAmBA,EAAO,sCAC9B,IAAIgH,EAAQ8B,EAAOtN,KAAKR,KAAMud,EAASvY,IAAShF,KAGhD,OAFAgM,EAAMypC,wBAA0B,IAAKC,GAAwBn4B,GAAUtF,cAAcjM,GACrFA,EAAM2pC,cAAgB,IAAKC,GAAcr4B,GAAUtF,cAAcjM,GAC1DA,EAsRX,OAjSAxD,EAAUgtC,EAAW1nC,GAarBpO,OAAOC,eAAe61C,EAAUl1C,UAAW,kBAAmB,CAI1DT,IAAK,WACD,OAAOG,KAAKgX,MAAM6+B,GAAU,mBAAmBh2C,OAEnDD,YAAY,EACZsB,cAAc,IAElBxB,OAAOC,eAAe61C,EAAUl1C,UAAW,uBAAwB,CAI/DT,IAAK,WACD,OAAOG,KAAKgX,MAAM6+B,GAAU,wBAAwBh2C,OAExDD,YAAY,EACZsB,cAAc,IAOlBs0C,EAAUl1C,UAAUw1C,cAAgB,SAAUC,GAC1C,IAAIxxB,EAAIvkB,KAAKgX,MAAM6+B,GAAU,qBAE7B,OADAtxB,EAAE/M,MAAMvW,IAAI,KAAM,IAAMwe,mBAAmBs2B,GAAa,KACjDxxB,EAAE1kB,OAOb21C,EAAUl1C,UAAU01C,aAAe,SAAUD,GACzC,IAAIxxB,EAAIvkB,KAAKgX,MAAM6+B,GAAU,oBAE7B,OADAtxB,EAAE/M,MAAMvW,IAAI,KAAM,IAAMwe,mBAAmBs2B,GAAa,KACjDxxB,EAAE1kB,OAOb21C,EAAUl1C,UAAU21C,gBAAkB,SAAUC,GAE5C,YADiB,IAAbA,IAAuBA,EAAW,IAC/Bl2C,KAAKgX,MAAM6+B,GAAU,mBAAqBK,EAAW,KAAKr2C,OAOrE21C,EAAUl1C,UAAU61C,gBAAkB,SAAUJ,GAC5C,IAAIxxB,EAAIvkB,KAAKgX,MAAM6+B,GAAU,uBAE7B,OADAtxB,EAAE/M,MAAMvW,IAAI,KAAM,IAAMwe,mBAAmBs2B,GAAa,KACjDxxB,EAAE1kB,OAEbH,OAAOC,eAAe61C,EAAUl1C,UAAW,cAAe,CAKtDT,IAAK,WACD,OAAOygB,GAA8BtgB,KAAM,mBAE/CJ,YAAY,EACZsB,cAAc,IAElBxB,OAAOC,eAAe61C,EAAUl1C,UAAW,eAAgB,CAKvDT,IAAK,WACD,OAAO,IAAI21C,EAAUx1C,KAAM,oBAE/BJ,YAAY,EACZsB,cAAc,IAOlBs0C,EAAUl1C,UAAU81C,oBAAsB,SAAUL,GAChD,IAAIxxB,EAAIvkB,KAAKgX,MAAM6+B,GAAU,2BAE7B,OADAtxB,EAAE/M,MAAMvW,IAAI,KAAM,IAAMwe,mBAAmBs2B,GAAa,KACjDxxB,EAAE1kB,OAOb21C,EAAUl1C,UAAU+1C,iBAAmB,SAAUN,GAC7C,IAAIxxB,EAAIvkB,KAAKgX,MAAM6+B,GAAU,wBAE7B,OADAtxB,EAAE/M,MAAMvW,IAAI,KAAM,IAAMwe,mBAAmBs2B,GAAa,KACjDxxB,EAAE1kB,OAEbH,OAAOC,eAAe61C,EAAUl1C,UAAW,eAAgB,CAKvDT,IAAK,WACD,IAAI0kB,EAAIvkB,KAAKgX,MAAM6+B,GAAU,MAE7B,OADAtxB,EAAEzM,OAAO,oBACFyM,EAAE1kB,OAEbD,YAAY,EACZsB,cAAc,IAQlBs0C,EAAUl1C,UAAUg2C,0BAA4B,SAAUP,EAAWQ,GACjE,IAAIhyB,EAAIvkB,KAAKgX,MAAM6+B,GAAU,2DAA6DU,EAAe,MAEzG,OADAhyB,EAAE/M,MAAMvW,IAAI,KAAM,IAAMwe,mBAAmBs2B,GAAa,KACjDxxB,EAAE1kB,OAOb21C,EAAUl1C,UAAUk2C,eAAiB,SAAUT,GAC3C,IAAIxxB,EAAIvkB,KAAKgX,MAAM6+B,GAAU,sBAE7B,OADAtxB,EAAE/M,MAAMvW,IAAI,KAAM,IAAMwe,mBAAmBs2B,GAAa,KACjDr3B,GAAO6F,IAQlBixB,EAAUl1C,UAAUm2C,YAAc,SAAUC,EAAUC,GAClD,IAAIpyB,EAAIvkB,KAAKgX,MAAM6+B,GAAU,MAI7B,OAHAtxB,EAAEzM,OAAO,gFACTyM,EAAE/M,MAAMvW,IAAI,KAAM,IAAMwe,mBAAmBi3B,GAAY,KACvDnyB,EAAE/M,MAAMvW,IAAI,KAAM,IAAMwe,mBAAmBk3B,GAAY,KAChDpyB,EAAE1kB,OAOb21C,EAAUl1C,UAAUs2C,gBAAkB,SAAUC,GAC5C,IAAI7qC,EAAQhM,KACZ,OAAO,IAAI0J,SAAQ,SAAUC,EAASC,GAClC,IAAIktC,EAAS,IAAIC,WACjBD,EAAOE,OAAS,SAAU92C,GAAK,OAAOmJ,EAAU2C,OAAO,OAAQ,GAAQ,WACnE,IAAI4K,EAAQtK,EACZ,OAAOlC,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EACDoM,EAAS1W,EAAEoG,OAAO2D,OAClBsC,EAAG/B,MAAQ,EACf,KAAK,EAED,OADA+B,EAAG7B,KAAK9H,KAAK,CAAC,EAAG,EAAG,CAAE,IACf,CAAC,EAAa8b,GAAOm3B,GAAS71C,KAAM,uBAAwB,CAAEqK,KAAMuM,KAC/E,KAAK,EAGD,OAFArK,EAAG9B,OACHd,IACO,CAAC,EAAa,GACzB,KAAK,EAGD,OAFA2C,EAAMC,EAAG9B,OACTb,EAAO0C,GACA,CAAC,EAAa,GACzB,KAAK,EAAG,MAAO,CAAC,WAI5BwqC,EAAOG,kBAAkBJ,OAUjCrB,EAAUl1C,UAAU42C,8BAAgC,SAAUC,EAAaZ,EAAca,GACrF,OAAO14B,GAAO1e,KAAKgX,MAAM6+B,GAAU,iCAAkCxrC,GAAK,CACtE8sC,YAAaA,EACbZ,aAAcA,EACda,cAAeA,MAUvB5B,EAAUl1C,UAAU+2C,8BAAgC,SAAUF,EAAaZ,EAAce,GACrF,OAAO54B,GAAO1e,KAAKgX,MAAM6+B,GAAU,iCAAkCxrC,GAAK,CACtE8sC,YAAaA,EACbZ,aAAcA,EACde,eAAgBA,MAQxB9B,EAAUl1C,UAAUi3C,8BAAgC,WAEhD,IADA,IAAIC,EAAS,GACJh2C,EAAK,EAAGA,EAAKC,UAAUC,OAAQF,IACpCg2C,EAAOh2C,GAAMC,UAAUD,GAE3B,OAAOxB,KAAK21C,cAAc4B,8BAA8BC,IAE5D93C,OAAOC,eAAe61C,EAAUl1C,UAAW,mBAAoB,CAK3DT,IAAK,WACD,OAAOG,KAAK21C,cAAc8B,kBAE9B73C,YAAY,EACZsB,cAAc,IAElBxB,OAAOC,eAAe61C,EAAUl1C,UAAW,cAAe,CAItDT,IAAK,WACD,OAAOG,KAAK21C,cAAc+B,aAE9B93C,YAAY,EACZsB,cAAc,IAOlBs0C,EAAUl1C,UAAUq3C,mBAAqB,SAAUC,GAE/C,YAD2B,IAAvBA,IAAiCA,GAAqB,GACnD53C,KAAK21C,cAAcgC,mBAAmBC,IAOjDpC,EAAUl1C,UAAUu3C,mBAAqB,SAAUC,GAC/C,OAAO93C,KAAK21C,cAAckC,mBAAmBC,IAOjDtC,EAAUl1C,UAAUy3C,8BAAgC,SAAUC,GAC1D,OAAOh4C,KAAKy1C,wBAAwBsC,8BAA8BC,IAOtExC,EAAUl1C,UAAU23C,6BAA+B,SAAUD,GACzD,OAAOh4C,KAAKy1C,wBAAwBwC,6BAA6BD,IAE9DxC,EAlSmB,CAmS5Bj1B,IAESs1B,GAAW72B,GAAmBw2B,IACrCI,GAA+B,SAAU9nC,GAEzC,SAAS8nC,IACL,OAAkB,OAAX9nC,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAwD/D,OA1DAwI,EAAUotC,EAAe9nC,GASzB8nC,EAAct1C,UAAUi3C,8BAAgC,SAAUC,GAC9D,OAAO94B,GAAO1e,KAAKgX,MAAMkhC,GAAsB,iCAAiC,GAAQ7tC,GAAK,CAAE,SAAYmtC,MAE/G93C,OAAOC,eAAei2C,EAAct1C,UAAW,mBAAoB,CAK/DT,IAAK,WACD,IAAI0kB,EAAIvkB,KAAK6f,UAAUq4B,GAAsBl4C,KAAKuX,UAAW,0DAI7D,OAHIvX,KAAK4Y,WACL2L,EAAIA,EAAE5L,QAAQ3Y,KAAKuS,QAEhBmM,GAAO6F,IAElB3kB,YAAY,EACZsB,cAAc,IAElBxB,OAAOC,eAAei2C,EAAct1C,UAAW,cAAe,CAK1DT,IAAK,WACD,OAAO6e,GAAO1e,KAAKgX,MAAMkhC,GAAsB,oBAEnDt4C,YAAY,EACZsB,cAAc,IAOlB00C,EAAct1C,UAAUq3C,mBAAqB,SAAUC,GAEnD,YAD2B,IAAvBA,IAAiCA,GAAqB,GACnDl5B,GAAO1e,KAAKgX,MAAMkhC,GAAsB,0CAA4CN,EAAqB,OAOpHhC,EAAct1C,UAAUu3C,mBAAqB,SAAUC,GACnD,OAAOp5B,GAAO1e,KAAKgX,MAAMkhC,GAAsB,qCAAuCJ,EAAQ,OAElF/uC,EAAW,CACvB+X,GAAY,wDACb80B,GA1D2B,CA4DhC32B,IACEi5B,GAAuB,SAAU36B,EAASvY,GAC1C,OAAO,IAAI4wC,GAAcr4B,EAASvY,IAElC0wC,GAAyC,SAAU5nC,GAEnD,SAAS4nC,IACL,OAAkB,OAAX5nC,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAuD/D,OAzDAwI,EAAUktC,EAAyB5nC,GASnC4nC,EAAwBp1C,UAAUy3C,8BAAgC,SAAUC,GACxE,OAAO3uC,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAIukB,EAAGwH,EACP,OAAO3hB,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAGD,OAFA+Z,EAAIvkB,KAAKgX,MAAMmhC,GAA2B,OACxCrgC,OAAO,kCACF,CAAC,EAAa4G,GAAO6F,EAAGvkB,KAAKo4C,YAAYJ,KACpD,KAAK,EAED,OADAjsB,EAAMxf,EAAG9B,OACF,CAAC,EAAcpI,KAAK4M,MAAqB,iBAAR8c,EAAmBA,EAAIssB,8BAAgCtsB,YAUnH2pB,EAAwBp1C,UAAU23C,6BAA+B,SAAUD,GACvE,OAAO3uC,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAIukB,EAAGwH,EACP,OAAO3hB,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAGD,OAFA+Z,EAAIvkB,KAAKgX,MAAMmhC,GAA2B,OACxCrgC,OAAO,iCACF,CAAC,EAAa4G,GAAO6F,EAAGvkB,KAAKo4C,YAAYJ,KACpD,KAAK,EAED,OADAjsB,EAAMxf,EAAG9B,OACF,CAAC,EAAcpI,KAAK4M,MAAqB,iBAAR8c,EAAmBA,EAAIusB,6BAA+BvsB,YAUlH2pB,EAAwBp1C,UAAU83C,YAAc,SAAUJ,GACtD,OAAO3tC,GAAK,CAAE,YAAe,EAAOyQ,GAAS,4DAA6Dk9B,MAEpFjvC,EAAW,CACjC+X,GAAY,sEACb40B,GAzDqC,CA2D1Cz2B,IACEk5B,GAA4B,SAAU56B,EAASvY,GAC/C,OAAO,IAAI0wC,GAAwBn4B,EAASvY,KAMhD,SAAWuwC,GAIPA,EAAQA,EAAqB,YAAI,GAAK,cAItCA,EAAQA,EAAkB,SAAI,GAAK,WAInCA,EAAQA,EAAkB,SAAI,GAAK,WAInCA,EAAQA,EAAgB,OAAI,GAAK,SAIjCA,EAAQA,EAAkB,SAAI,GAAK,WApBvC,CAqBGA,KAAYA,GAAU,KClczBpsC,QAAQxJ,eAAesjB,GAAO3iB,UAAW,WAAY,CACjDY,cAAc,EACdtB,YAAY,EACZC,IAAK,WACD,OAAOG,KAAKwjB,iBAAgB,SAAUjX,GAClC,IAAIqB,EAAUrB,EAAGqB,QAAS2P,EAAUhR,EAAGgR,QAASnF,EAAU7L,EAAG6L,QAC7D,OAAOy9B,GAASt4B,GAASvF,UAAUpK,GAASgK,WAAWQ,SCFnE,IAAImgC,GAAmC,SAAUzqC,GAE7C,SAASyqC,IACL,OAAkB,OAAXzqC,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAqD/D,OAvDAwI,EAAU+vC,EAAmBzqC,GAI7BpO,OAAOC,eAAe44C,EAAkBj4C,UAAW,qBAAsB,CAKrET,IAAK,WAED,OADAuD,QAAQC,KAAK,oHACN8X,GAAInD,UAAUsI,GAA8BtgB,KAAM,sBAAuB,0BAEpFJ,YAAY,EACZsB,cAAc,IAElBxB,OAAOC,eAAe44C,EAAkBj4C,UAAW,WAAY,CAI3DT,IAAK,WACD,OAAOsb,GAAInD,UAAUwgC,GAASx4C,MAAO,UAEzCJ,YAAY,EACZsB,cAAc,IAElBxB,OAAOC,eAAe44C,EAAkBj4C,UAAW,YAAa,CAI5DT,IAAK,WACD,OAAOsb,GAAInD,UAAUygC,GAAUz4C,MAAO,WAE1CJ,YAAY,EACZsB,cAAc,IAKlBq3C,EAAkBj4C,UAAUo4C,sBAAwB,WAChD,OAAOrvC,EAAUrJ,UAAM,OAAQ,GAAQ,WAEnC,OAAOoK,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAAG,MAAO,CAAC,EAAa2Q,GAAInD,UAAUsI,GAA8BtgB,KAAM,sBAAuB,2BAAzEmb,IAC7B,KAAK,EAED,MAAO,CAAC,EADE5O,EAAG9B,OACiBqjB,eAK9B/kB,EAAW,CAC3B+X,GAAY,qBACby3B,GAvD+B,CAyDpCh4B,IAESo4B,GAAmB35B,GAAmBu5B,IAC7CK,GAA2B,SAAU9qC,GAErC,SAAS8qC,IACL,OAAkB,OAAX9qC,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KA6D/D,OA/DAwI,EAAUowC,EAAW9qC,GASrB8qC,EAAUt4C,UAAUu4C,eAAiB,SAAUC,GAC3C,OAAOzvC,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAI+4C,EAAehtB,EACnB,OAAO3hB,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAOD,OALIuuC,EADmB,iBAAZD,EACSA,EAGAA,EAAQE,cAErB,CAAC,EAAat6B,GAAO1e,KAAKgX,MAAMwhC,GAAU,mBAAqBO,EAAgB,QAC1F,KAAK,EAED,MAAO,CAAC,EAAczxC,EADtBykB,EAAMxf,EAAG9B,OACsB,kBAAoBshB,EAAIktB,eAAiBltB,WAU5F6sB,EAAUt4C,UAAU44C,eAAiB,SAAUC,GAC3C,OAAO9vC,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAI+4C,EAAehtB,EACnB,OAAO3hB,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAOD,OALIuuC,EADqB,iBAAdI,EACSA,EAGAt1C,EAAQs1C,EAAW,UAA2C,EAAjCA,EAAUC,qBAA0BJ,cAE9E,CAAC,EAAat6B,GAAO1e,KAAKgX,MAAMwhC,GAAU,mBAAqBO,EAAgB,QAC1F,KAAK,EAED,MAAO,CAAC,EAAczxC,EADtBykB,EAAMxf,EAAG9B,OACsB,kBAAoBshB,EAAIstB,eAAiBttB,WAK5FhjB,EAAW,CACPoS,GAAI,sBACLy9B,EAAUt4C,UAAW,iBAAkB,MAC1CyI,EAAW,CACPoS,GAAI,sBACLy9B,EAAUt4C,UAAW,iBAAkB,MAC9ByI,EAAW,CACnB+X,GAAY,aACb83B,GA/DuB,CAiE5Br4B,IAESi4B,GAAWx5B,GAAmB45B,IACrCU,GAA4B,SAAUxrC,GAEtC,SAASwrC,IACL,OAAkB,OAAXxrC,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAiB/D,OAnBAwI,EAAU8wC,EAAYxrC,GAStBwrC,EAAWh5C,UAAU6oB,QAAU,SAAUzW,GAErC,OAAOgM,GAAO1e,KAAKgX,MAAMyhC,GAAW,WAAa/lC,EAAK,KAAK6F,YAAYiJ,GAAcg3B,OAEzFzvC,EAAW,CACPoS,GAAI,gBACLm+B,EAAWh5C,UAAW,UAAW,MACvByI,EAAW,CACpB+X,GAAY,cACbw4B,GAnBwB,CAqB7Bt5B,IAESy4B,GAAYz5B,GAAmBs6B,IC3JnC,SAASC,GAA2BC,GACvC,OAAO,SAAUC,GACb,OAAO/6B,GAAO1e,KAAKgX,MAAM+I,GAAqBy5B,EAAW,yBAA0BnvC,GAAK,CAAEovC,YAAaA,MCD/G9lC,GAAQ4T,GAAM,mBAAoBoxB,IAClCpxB,GAAKjnB,UAAUo5C,cAAgBH,GAA2B,iBAC1DhyB,GAAKjnB,UAAUq5C,oBAAsBJ,GAA2B,uBCEhE,IAsEWK,GAQAC,GA9EPC,GAAoC,SAAUhsC,GAE9C,SAASgsC,IACL,OAAkB,OAAXhsC,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KA8C/D,OAhDAwI,EAAUsxC,EAAoBhsC,GAS9BgsC,EAAmBx5C,UAAU6oB,QAAU,SAAUzW,GAC7C,OAAOyI,GAAInD,UAAU+hC,GAAiB/5C,MAAM8X,OAAO,KAAOpF,EAAK,MAAO,iBAO1EonC,EAAmBx5C,UAAUqQ,IAAM,SAAUgX,GACzC,OAAOte,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAI0C,EACJ,OAAO0H,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAAG,MAAO,CAAC,EAAakU,GAAO1e,KAAMqK,GAAK,EAAOyQ,GAAS,uBAAwB6M,MACvF,KAAK,EAED,OADAjlB,EAAO6J,EAAG9B,OACH,CAAC,EAAc,CACdukB,OAAQhvB,KAAKmpB,QAAQzmB,EAAKiiB,IAC1BjiB,KAAMA,YASlCo3C,EAAmBx5C,UAAU4P,MAAQ,WACjC,OAAOwO,GAAO1e,KAAKgX,MAAMgjC,GAAmB,WAEhDjxC,EAAW,CACPoS,GAAI,aACL2+B,EAAmBx5C,UAAW,MAAO,MACxCyI,EAAW,CACPoS,GAAI,eACL2+B,EAAmBx5C,UAAW,QAAS,MACrByI,EAAW,CAC5B+X,GAAY,sBACbg5B,GAhDgC,CAkDrC95B,IAESg6B,GAAoBh7B,GAAmB86B,IAC9CG,GAAmC,SAAUnsC,GAE7C,SAASmsC,IACL,IAAIjuC,EAAmB,OAAX8B,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAQhE,OAPAgM,EAAMmD,OAASyR,GAAW,OAM1B5U,EAAM0b,OAAS1b,EAAMwU,QAAQ,uBAAuB,SAAU9d,GAAQ,MAAO,CAAGA,KAAMA,EAAMssB,OAAQhjB,MAC7FA,EAEX,OAZAxD,EAAUyxC,EAAmBnsC,GAYtBmsC,EAb2B,CAcpC15B,IAESw5B,GAAmB/6B,GAAmBi7B,KAEjD,SAAWL,GACPA,EAAiCA,EAAuC,KAAI,GAAK,OACjFA,EAAiCA,EAAuC,KAAI,GAAK,OACjFA,EAAiCA,EAA8C,YAAI,GAAK,cACxFA,EAAiCA,EAAyC,OAAI,GAAK,SACnFA,EAAiCA,EAA2C,SAAI,GAAK,WALzF,CAMGA,KAAqCA,GAAmC,KAE3E,SAAWC,GACPA,EAAsBA,EAA+B,QAAI,GAAK,UAC9DA,EAAsBA,EAA4B,KAAI,GAAK,OAC3DA,EAAsBA,EAA2B,IAAI,GAAK,MAC1DA,EAAsBA,EAA4B,KAAI,GAAK,OAJ/D,CAKGA,KAA0BA,GAAwB,KC1FrDI,GAAkB35C,UAAUo5C,cAAgBH,GAA2B,iBACvEU,GAAkB35C,UAAUq5C,oBAAsBJ,GAA2B,uBCD7EtvB,GAAM3pB,UAAUo5C,cAAgBH,GAA2B,iBAC3DtvB,GAAM3pB,UAAUq5C,oBAAsBJ,GAA2B,uBCDjE/G,GAAOlyC,UAAUo5C,cAAgBH,GAA2B,iBAC5D/G,GAAOlyC,UAAUq5C,oBAAsBJ,GAA2B,uBCDlE9M,GAAansC,UAAUo5C,cAAgBH,GAA2B,iBAClE9M,GAAansC,UAAUq5C,oBAAsBJ,GAA2B,uBCIxE,IAAIW,GAAqC,SAAUpsC,GAE/C,SAASosC,IACL,OAAkB,OAAXpsC,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAyF/D,OA3FAwI,EAAU0xC,EAAqBpsC,GAI/BosC,EAAoB55C,UAAU65C,gBAAkB,SAAUC,EAAgBC,GACtE,IAAI7iC,EAAQxX,KAAKgX,MAAMsjC,GAAoB,MAE3C,OADA9iC,EAAMM,OAAO,oBACN4G,GAAOlH,EAAOnN,GAAK,CACtBkwC,aAAcF,EACdG,eAAgBJ,MAGxBF,EAAoB55C,UAAUm6C,uBAAyB,SAAUL,EAAgBC,GAC7E,IAAI7iC,EAAQxX,KAAKgX,MAAMsjC,GAAoB,MAE3C,OADA9iC,EAAMM,OAAO,2BACN4G,GAAOlH,EAAOnN,GAAK,CACtBkwC,aAAcF,EACdG,eAAgBJ,MAGxBF,EAAoB55C,UAAUo6C,cAAgB,SAAUN,EAAgBC,EAAcM,EAAcC,EAAgBC,EAAcC,EAAcC,QAClH,IAAtBA,IAAgCA,GAAoB,GACxD,IAAIvjC,EAAQxX,KAAKgX,MAAMsjC,GAAoB,MAE3C,OADA9iC,EAAMM,OAAO,kBACN4G,GAAOlH,EAAOnN,GAAK,CACtBkwC,aAAcF,EACdG,eAAgBJ,EAChBY,aAAcL,EACdM,aAAcJ,EACdK,eAAgBN,EAChBO,aAAcL,EACdM,kBAAmBL,MAG3Bb,EAAoB55C,UAAU+6C,mBAAqB,SAAUjB,EAAgBC,EAAciB,EAAeP,QAC5E,IAAtBA,IAAgCA,GAAoB,GACxD,IAAIvjC,EAAQxX,KAAKgX,MAAMsjC,GAAoB,MAE3C,OADA9iC,EAAMM,OAAO,uBACN4G,GAAOlH,EAAOnN,GAAK,CACtBkwC,aAAcF,EACdG,eAAgBJ,EAChBmB,cAAeD,EACfF,kBAAmBL,MAG3Bb,EAAoB55C,UAAUk7C,qBAAuB,SAAUC,EAAeb,EAAgBc,EAAcX,QAC9E,IAAtBA,IAAgCA,GAAoB,GACxD,IAAIvjC,EAAQxX,KAAKgX,MAAMsjC,GAAoB,MAE3C,OADA9iC,EAAMM,OAAO,yBACN4G,GAAOlH,EAAOnN,GAAK,CACtBsxC,cAAeF,EACfR,aAAcS,EACdR,eAAgBN,EAChBQ,kBAAmBL,MAG3Bb,EAAoB55C,UAAUs7C,iBAAmB,SAAUxB,EAAgBC,EAAcM,EAAcC,EAAgBc,EAAcZ,EAAce,QAClH,IAAzBA,IAAmCA,GAAuB,GAC9D,IAAIrkC,EAAQxX,KAAKgX,MAAMsjC,GAAoB,MAE3C,OADA9iC,EAAMM,OAAO,qBACN4G,GAAOlH,EAAOnN,GAAK,CACtBkwC,aAAcF,EACdG,eAAgBJ,EAChBY,aAAcL,EACdM,aAAcS,EACdR,eAAgBN,EAChBO,aAAcL,EACdgB,qBAAsBD,MAG9B9yC,EAAW,CACPoS,GAAI,wBACL++B,EAAoB55C,UAAW,kBAAmB,MACrDyI,EAAW,CACPoS,GAAI,+BACL++B,EAAoB55C,UAAW,yBAA0B,MAC5DyI,EAAW,CACPoS,GAAI,sBACL++B,EAAoB55C,UAAW,gBAAiB,MACnDyI,EAAW,CACPoS,GAAI,cACL++B,EAAoB55C,UAAW,qBAAsB,MACxDyI,EAAW,CACPoS,GAAI,gBACL++B,EAAoB55C,UAAW,uBAAwB,MAC1DyI,EAAW,CACPoS,GAAI,yBACL++B,EAAoB55C,UAAW,mBAAoB,MAChCyI,EAAW,CAC7B+X,GAAY,+BACbo5B,GA3FiC,CA6FtCj7B,IAESq7B,GAAqB,SAAUvzC,GAAO,OAAO,IAAImzC,GAAoBl/B,GAA6B,iBAARjU,EAAmBA,EAAMA,EAAI8Q,WC9F9HkkC,GAAQ,IAAI/zC,IAAI,CAChB,CAAC,OAAQ,aACT,CAAC,WAAY,iBACb,CAAC,WAAY,YACb,CAAC,0BAA2B,IAC5B,CAAC,WAAY,IACb,CAAC,WAAY,IACb,CAAC,iBAAkB,IACnB,CAAC,cAAe,IAChB,CAAC,mBAAoB,IACrB,CAAC,UAAW,IACZ,CAAC,aAAc,IACf,CAAC,oBAAqB,IACtB,CAAC,WAAY,IACb,CAAC,oBAAqB,IACtB,CAAC,WAAY,IACb,CAAC,UAAW,IACZ,CAAC,2BAA4B,IAC7B,CAAC,aAAc,IACf,CAAC,sBAAuB,IACxB,CAAC,aAAc,IACf,CAAC,WAAY,IACb,CAAC,aAAc,IACf,CAAC,6BAA8B,IAC/B,CAAC,kBAAmB,IACpB,CAAC,wCAAyC,IAC1C,CAAC,wBAAyB,IAC1B,CAAC,aAAc,IACf,CAAC,uBAAwB,IACzB,CAAC,mBAAoB,IACrB,CAAC,gBAAiB,MAElB0Y,GAAQ,IAAI1Y,IAAI,IACpB,SAASg0C,GAAWC,GAChB,OAAOA,EAAI/2C,QAAQ,QAAQ,SAAUg3C,GAAM,OAAOA,EAAGtpC,iBAQlD,SAASupC,GAAmBC,EAAWC,GAG1C,YAFkB,IAAdD,IAAwBA,EAAY,SACzB,IAAXC,IAAqBA,EAAS,IAC3B,IAAI9mC,MAAM,CACbiC,MAAO9X,OAAOyI,OAAO,CACjBm0C,UAAWF,GACZC,IACJ,CACCx8C,IAAK,SAAUR,EAAMwa,EAAa0iC,GAC9B,IAAIC,EAAK3iC,EAAY1V,WACrB,GAAW,kBAAPq4C,EACA,OAAO,WAAc,OAAOn9C,EAAKmY,OAErC,GAAIukC,GAAM5vC,IAAIqwC,GACV,OAAO,WAEH,IADA,IAAI57C,EAAQ,GACHY,EAAK,EAAGA,EAAKC,UAAUC,OAAQF,IACpCZ,EAAMY,GAAMC,UAAUD,GAE1B,IAAIi7C,EAAWV,GAAMl8C,IAAI28C,GAEzB,OADAn9C,EAAKmY,MAAMilC,EAAS/6C,OAAS,EAAI+6C,EAAWT,GAAWQ,IAAO57C,EAAMc,OAAS,EAAId,EAAQA,EAAM,GACxF27C,GAGf,IAAIG,EAAUh8B,GAAMvU,IAAIqwC,GAAM97B,GAAM7gB,IAAI28C,GAAMR,GAAWQ,GAEzD,OADAn9C,EAAKmY,MAAMklC,IAAW,EACfH,KAInB,IC7EWI,GASAC,GAeAC,GDqDPC,GAAa,4BAKbC,GAAyB,SAAUjvC,GAEnC,SAASivC,IACL,OAAkB,OAAXjvC,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAgF/D,OAlFAwI,EAAUu0C,EAASjvC,GAOnBivC,EAAQz8C,UAAU2S,QAAU,SAAU+pC,GAClC,OAAO3zC,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAIwX,EAAOsM,EAAU3S,EAAUzO,EAC/B,OAAO0H,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EA2BD,OA1BAgN,EAAQxX,KAAKi9C,WAAWD,GACxBl5B,EAAWzZ,GAAK,CACZwY,QAAS,EAAO/H,GAAS,qDAAsDpb,OAAOyI,OAAO,GAAIqP,EAAO,CACpG0lC,yBAA0Bl9C,KAAKm9C,WAAW3lC,EAAM0lC,0BAChDE,WAAYp9C,KAAKm9C,WAAW3lC,EAAM4lC,YAClCC,kBAAmBr9C,KAAKm9C,WAAW3lC,EAAM6lC,mBACzCC,gBAAiBt9C,KAAKm9C,WAAW3lC,EAAM8lC,iBACvCC,iBAAkBv9C,KAAKm9C,WAAW3lC,EAAM+lC,kBACxCC,SAAUx9C,KAAKm9C,WAAW3lC,EAAMgmC,eAIpCx9C,KAAK0C,KAAK+U,aAEVzX,KAAKye,eAAgB,EACrBtN,EAAW,2BAA6B3J,EAAYsc,EAASzZ,MAAQ,IACjEnE,EAAqBlG,KAAK0C,KAAK4V,iBAE3BrT,EAAoBjF,KAAK0C,KAAK4V,eAAe9Y,MAAQs9C,GAAW91C,KAAKhH,KAAK0C,KAAK4V,eAAe9Y,QAC9FQ,KAAK0C,KAAK4V,eAAe9Y,IAAM2R,GAInCnR,KAAK0C,KAAK4V,eAAiB,IAAIjF,GAAelC,IAG/C,CAAC,EAAauN,GAAO1e,KAAM8jB,IACtC,KAAK,EAED,OADAphB,EAAO6J,EAAG9B,OACH,CAAC,EAAc,IAAIgzC,GAAc/6C,EAAM1C,KAAK6X,QAASL,YAUhFulC,EAAQz8C,UAAU68C,WAAa,SAAU98C,GACrC,YAAoB,IAATA,EACA,CAAGgW,QAAS,IAEhB,CAAEA,QAASlQ,EAAQ9F,GAAQA,EAAO,CAACA,KAO9C08C,EAAQz8C,UAAU28C,WAAa,SAAUzlC,GAWrC,MATqB,iBAAVA,EACM,CAAE8kC,UAAW9kC,GAErBA,EAAMkmC,cACElmC,EAAMkmC,gBAGNlmC,GAIrBzO,EAAW,CACPoS,GAAI,eACL4hC,EAAQz8C,UAAW,UAAW,MACvByI,EAAW,CACjB+X,GAAY,0BACbi8B,GAlFqB,CAoF1Bx8B,IAESo9B,GAAS,SAAUpgC,EAAS3P,EAASwK,GAG5C,YAFgB,IAAZxK,IAAsBA,EAAU,SACpB,IAAZwK,IAAsBA,EAAUvM,GAC7B,SAAUmxC,GACb,OAAO,IAAKD,GAAQx/B,GAAUvF,UAAUpK,GAASgK,WAAWQ,GAASnF,QAAQ+pC,KAGjFS,GAA+B,WAC/B,SAASA,EAAcG,EAAaC,EAAMxB,EAAQyB,EAAMC,QACvC,IAATD,IAAmBA,EAAO,WACb,IAAbC,IAAuBA,EAAW,MACtC/9C,KAAK69C,KAAOA,EACZ79C,KAAKq8C,OAASA,EACdr8C,KAAK89C,KAAOA,EACZ99C,KAAK+9C,SAAWA,EAChB/9C,KAAK69C,KAAO79C,KAAK69C,KAAK34C,QAAQ43C,GAAY,IAC1C98C,KAAK89C,KAAOF,EAAYI,UAAYJ,EAAYI,UAAYJ,EAgHhE,OA9GAl+C,OAAOC,eAAe89C,EAAcn9C,UAAW,cAAe,CAC1DT,IAAK,WACD,IAAI0M,EACJ,OAAqF,QAA5EA,EAAKvM,gBAAmC,EAASA,KAAKi+C,wBAAqC,IAAP1xC,OAAgB,EAASA,EAAG2xC,cAAgB,GAE7It+C,YAAY,EACZsB,cAAc,IAElBxB,OAAOC,eAAe89C,EAAcn9C,UAAW,WAAY,CACvDT,IAAK,WACD,IAAI0M,EAAIE,EAAIC,EACZ,OAAsN,QAA7MA,EAAoJ,QAA9ID,EAAkF,QAA5EF,EAAKvM,gBAAmC,EAASA,KAAKi+C,wBAAqC,IAAP1xC,OAAgB,EAASA,EAAG4xC,0BAAuC,IAAP1xC,OAAgB,EAASA,EAAG2xC,uBAAoC,IAAP1xC,OAAgB,EAASA,EAAG2xC,WAAa,GAE3Qz+C,YAAY,EACZsB,cAAc,IAElBxB,OAAOC,eAAe89C,EAAcn9C,UAAW,YAAa,CACxDT,IAAK,WACD,IAAI0M,EAAIE,EAAIC,EACZ,OAAsN,QAA7MA,EAAoJ,QAA9ID,EAAkF,QAA5EF,EAAKvM,gBAAmC,EAASA,KAAKi+C,wBAAqC,IAAP1xC,OAAgB,EAASA,EAAG4xC,0BAAuC,IAAP1xC,OAAgB,EAASA,EAAG2xC,uBAAoC,IAAP1xC,OAAgB,EAASA,EAAG4xC,YAAc,GAE5Q1+C,YAAY,EACZsB,cAAc,IAElBxB,OAAOC,eAAe89C,EAAcn9C,UAAW,+BAAgC,CAC3ET,IAAK,WACD,IAAI0M,EAAIE,EAAIC,EACZ,OAAsN,QAA7MA,EAAoJ,QAA9ID,EAAkF,QAA5EF,EAAKvM,gBAAmC,EAASA,KAAKi+C,wBAAqC,IAAP1xC,OAAgB,EAASA,EAAG4xC,0BAAuC,IAAP1xC,OAAgB,EAASA,EAAG2xC,uBAAoC,IAAP1xC,OAAgB,EAASA,EAAG6xC,+BAAiC,GAE/R3+C,YAAY,EACZsB,cAAc,IAElBxB,OAAOC,eAAe89C,EAAcn9C,UAAW,mBAAoB,CAC/DT,IAAK,WACD,OAAOG,KAAK89C,MAEhBl+C,YAAY,EACZsB,cAAc,IAElBxB,OAAOC,eAAe89C,EAAcn9C,UAAW,uBAAwB,CACnET,IAAK,WACD,IAAI0M,EAAIE,EAAIC,EAAIC,EAIhB,OAHsB,OAAlB3M,KAAK+9C,WACL/9C,KAAK+9C,SAAW/9C,KAAKw+C,qBAAgO,QAA1M7xC,EAA2J,QAArJD,EAA4F,QAAtFD,EAA0B,QAApBF,EAAKvM,KAAK89C,YAAyB,IAAPvxC,OAAgB,EAASA,EAAG4xC,0BAAuC,IAAP1xC,OAAgB,EAASA,EAAG2xC,uBAAoC,IAAP1xC,OAAgB,EAASA,EAAG+xC,aAA0B,IAAP9xC,OAAgB,EAASA,EAAG+xC,OAAS,OAE/R1+C,KAAK+9C,UAEhBn+C,YAAY,EACZsB,cAAc,IAQlBu8C,EAAcn9C,UAAUq+C,QAAU,SAAUC,EAAYC,GAEpD,GAAI7+C,KAAKs+C,UAAYt+C,KAAKq+C,SACtB,OAAO30C,QAAQC,QAAQ,MAI3B,IAAIm1C,OAAoB39C,IAAb09C,EAAyBA,EAAWv3C,EAAItH,KAAKq8C,OAAQ,YAAcr8C,KAAKq8C,OAAO0C,SAAW,GACjGvnC,EAAQ,EAAOxX,KAAKq8C,OAAQ,CAC5B0C,SAAUD,EACVE,SAAUF,GAAQF,EAAa,KAGnC,OAAIpnC,EAAMwnC,SAAWh/C,KAAKs+C,UACf50C,QAAQC,QAAQ,MAEpBg0C,GAAO39C,KAAK69C,KAAZF,CAAkBnmC,IAO7BimC,EAAcn9C,UAAUk+C,oBAAsB,SAAUS,GACpD,IAAI3yC,EAAKC,EACL8J,EAAU,IAAI/Q,MAClB,QAA4B,IAAjB,GAA8C,MAAd25C,EACvC,MAAO,GAEX,IAAIC,EAAcD,EAAW5oC,QAAU4oC,EAAW5oC,QAAU4oC,EAC5D,IACI,IAAK,IAAIE,EAAgBn0C,EAASk0C,GAAcE,EAAkBD,EAAcp1C,QAASq1C,EAAgBl1C,KAAMk1C,EAAkBD,EAAcp1C,OAAQ,CACnJ,IAAIs1C,EAAaD,EAAgBx+C,MAC7B0+C,EAAQD,EAAWE,MAAMlpC,QAAUgpC,EAAWE,MAAMlpC,QAAUgpC,EAAWE,MAC7ElpC,EAAQzT,KAAK08C,EAAM14C,QAAO,SAAUmlB,EAAKyzB,GAOrC,OANAr2C,QAAQxJ,eAAeosB,EAAKyzB,EAAKlvB,IAAK,CAClCpvB,cAAc,EACdtB,YAAY,EACZgB,MAAO4+C,EAAKjvB,MACZkvB,UAAU,IAEP1zB,IACR,MAGX,MAAOnf,GAASN,EAAM,CAAE9J,MAAOoK,GAC/B,QACI,IACQwyC,IAAoBA,EAAgBl1C,OAASqC,EAAK4yC,EAActyC,SAASN,EAAG/L,KAAK2+C,GAEzF,QAAU,GAAI7yC,EAAK,MAAMA,EAAI9J,OAEjC,OAAO6T,GAEJonC,EAzHuB,GE7K9BiC,GAA0B,SAAU5xC,GAEpC,SAAS4xC,IACL,OAAkB,OAAX5xC,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAgD/D,OAlDAwI,EAAUk3C,EAAU5xC,GAIpB4xC,EAASp/C,UAAU2S,QAAU,SAAUuE,GACnC,OAAOnO,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAIyT,EAAUgN,EACd,OAAOrW,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAED,OADAxK,KAAK2/C,sBAAsBnoC,GACpB,CAAC,EAAaxX,KAAKH,OAC9B,KAAK,EAGD,OAFA4T,EAAWlH,EAAG9B,OAEP,CAAC,EAAc,CACdm1C,aAFRn/B,EAASnZ,EAAImM,EAAU,WAAa,SAAUosC,GAAO,OAAOpsC,EAASqsC,QAAQD,GAAKxpC,SAAa,SAAU0pC,GAAO,OAAOtsC,EAASssC,KAEpG,eACpBC,gBAAiBv/B,EAAO,mBACxBw/B,QAASx/B,EAAO,qBAM5Ci/B,EAASp/C,UAAUq/C,sBAAwB,SAAUnoC,GACjD,IAAIxL,EAAQhM,KAMZA,KAAKwX,MAAMvW,IAAI,YAAa,IAAMuW,EAAM0oC,UAAY,KACpD,IANwB37B,EAMpB47B,GANoB57B,EAME/M,EANU,SAAU4oC,GAAa,OAAO,SAAUljC,GACpE5V,EAAIid,EAAG67B,IACPp0C,EAAMwL,MAAMvW,IAAIic,EAAIqH,EAAE67B,GAAWj8C,eAKzCg8C,EAAY,QAAZA,CAAqB,6BACrBA,EAAY,gBAAZA,CAA6B,8BAC7BA,EAAY,WAAZA,CAAwB,wBACxBA,EAAY,kBAAZA,CAA+B,oBAC/BA,EAAY,aAAZA,CAA0B,2BAC1BA,EAAY,UAAZA,CAAuB,WACvBA,EAAY,WAAZA,CAAwB,kBACxBA,EAAY,gBAAZA,CAA6B,6BAC7BA,EAAY,aAAZA,CAA0B,oBAC1BA,EAAY,cAAZA,CAA2B,yBAE/Bp3C,EAAW,CACPoS,GAAI,eACLukC,EAASp/C,UAAW,UAAW,MACvByI,EAAW,CAClB+X,GAAY,wBACb4+B,GAlDsB,CAoD3Bn/B,IAES8/B,GAAU,SAAU9iC,EAAS3P,EAASwK,GAG7C,YAFgB,IAAZxK,IAAsBA,EAAU,SACpB,IAAZwK,IAAsBA,EAAUvM,GAC7B,SAAU2L,GACb,OAAO,IAAKkoC,GAASniC,GAAUvF,UAAUpK,GAASgK,WAAWQ,GAASnF,QAAQuE,MD3DtF,SAAWmlC,GACPA,EAAcA,EAAyB,UAAI,GAAK,YAChDA,EAAcA,EAA0B,WAAI,GAAK,aACjDA,EAAcA,EAA0B,WAAI,GAAK,aAHrD,CAIGA,KAAkBA,GAAgB,KAKrC,SAAWC,GACPA,EAAwBA,EAA+C,sBAAI,GAAK,wBAChFA,EAAwBA,EAA8C,qBAAI,GAAK,uBAC/EA,EAAwBA,EAA6C,oBAAI,GAAK,sBAC9EA,EAAwBA,EAAuC,cAAI,GAAK,gBACxEA,EAAwBA,EAA2C,kBAAI,GAAK,oBAC5EA,EAAwBA,EAAuC,cAAI,GAAK,gBACxEA,EAAwBA,EAA8C,qBAAI,GAAK,uBAC/EA,EAAwBA,EAAsC,aAAI,GAAK,eACvEA,EAAwBA,EAAyC,gBAAI,GAAK,kBAT9E,CAUGA,KAA4BA,GAA0B,KAKzD,SAAWC,GACPA,EAAuBA,EAA6B,KAAI,GAAK,OAC7DA,EAAuBA,EAAmC,WAAI,GAAK,aACnEA,EAAuBA,EAAkC,UAAI,GAAK,YAClEA,EAAuBA,EAAoC,YAAI,GAAK,cACpEA,EAAuBA,EAAwC,gBAAI,GAAK,kBACxEA,EAAuBA,EAAwC,gBAAI,GAAK,kBAN5E,CAOGA,KAA2BA,GAAyB,KACvD,IAAIyD,GAAuC,WACvC,SAASA,KAiBT,OAfAA,EAAsBC,UAAY,uCAClCD,EAAsBE,yBAA2B,uCACjDF,EAAsBG,iBAAmB,uCACzCH,EAAsBI,0BAA4B,uCAClDJ,EAAsBK,+BAAiC,uCACvDL,EAAsBM,mBAAqB,uCAC3CN,EAAsBO,2BAA6B,uCACnDP,EAAsBQ,uBAAyB,uCAC/CR,EAAsBS,kBAAoB,uCAC1CT,EAAsBU,MAAQ,uCAC9BV,EAAsBW,SAAW,uCACjCX,EAAsBY,QAAU,uCAChCZ,EAAsBa,qBAAuB,uCAC7Cb,EAAsBc,iBAAmB,uCACzCd,EAAsBe,KAAO,uCACtBf,EAlB+B,GE7B1Cr9B,GAAO3iB,UAAUy0B,OAAS,SAAUvd,GAChC,OAAOxX,KAAKwjB,iBAAgB,SAAUjX,GAClC,IAAIqB,EAAUrB,EAAGqB,QAAS2P,EAAUhR,EAAGgR,QAASnF,EAAU7L,EAAG6L,QAC7D,OAAOulC,GAAOpgC,EAAS3P,EAASwK,EAAzBulC,CAAkCnmC,OAGjDyL,GAAO3iB,UAAUghD,kBAAoB,SAAU9pC,EAAOhE,GAClD,OAAOxT,KAAKwjB,iBAAgB,SAAUjX,GAClC,IAAIqB,EAAUrB,EAAGqB,QAAS2P,EAAUhR,EAAGgR,QAASnF,EAAU7L,EAAG6L,QAC7D,OAAO,IAAK2kC,GAAQx/B,GAAUvF,UAAUpK,GAASgK,WAAWQ,GAASD,aAAa3E,GAAcP,QAAQuE,OAGhHyL,GAAO3iB,UAAUihD,cAAgB,SAAU/pC,GACvC,OAAOxX,KAAKwjB,iBAAgB,SAAUjX,GAClC,IAAIqB,EAAUrB,EAAGqB,QAAS2P,EAAUhR,EAAGgR,QAASnF,EAAU7L,EAAG6L,QAC7D,OAAOioC,GAAQ9iC,EAAS3P,EAASwK,EAA1BioC,CAAoD,iBAAV7oC,EAAqB,CAAE0oC,UAAW1oC,GAAUA,OCbrG,ICiOWgqC,GCvOAC,GAOAC,GAUAC,GAMAC,GA+CAC,GA+BAC,GF/FPC,GAA4B,SAAUj0C,GAEtC,SAASi0C,IACL,OAAkB,OAAXj0C,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KA0E/D,OA5EAwI,EAAUu5C,EAAYj0C,GAStBi0C,EAAWzhD,UAAU6oB,QAAU,SAAUzW,GACrC,OAAOyI,GAAInD,UAAUgqC,GAAShiD,KAAM,WAAa0S,EAAK,KAAM,gBAOhEqvC,EAAWzhD,UAAU2hD,WAAa,SAAUC,GACxC,OAAO/mC,GAAInD,UAAUgqC,GAAShiD,KAAM,eAAiBkiD,EAAQ,MAAO,mBAOxEH,EAAWzhD,UAAU6hD,eAAiB,SAAUpM,GAC5C,OAAO56B,GAAInD,UAAUgqC,GAAShiD,MAAM8X,OAAO,UAAY2H,mBAAmBs2B,GAAa,MAAO,uBAOlGgM,EAAWzhD,UAAU8hD,WAAa,SAAU1vC,GACxC,OAAOgM,GAAO1e,KAAKgX,MAAMqrC,GAAW,cAAgB3vC,EAAK,OAO7DqvC,EAAWzhD,UAAUgiD,kBAAoB,SAAUvM,GAC/C,IAAIt2C,EAAIO,KAAKgX,MAAMqrC,GAAW,yBAE9B,OADA5iD,EAAE+X,MAAMvW,IAAI,KAAM,IAAMwe,mBAAmBs2B,GAAa,KACjDr3B,GAAOjf,IAQlBsiD,EAAWzhD,UAAUqQ,IAAM,SAAUolC,GACjC,OAAO1sC,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,OAAOoK,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAAG,MAAO,CAAC,EAAakU,GAAO1e,KAAMqK,GAAK,EAAOyQ,GAAS,WAAY,CAAE6oB,UAAWoS,OACxF,KAAK,EAED,OADAxpC,EAAG9B,OACI,CAAC,EAAczK,KAAKmiD,eAAepM,YAK9DhtC,EAAW,CACPoS,GAAI,cACL4mC,EAAWzhD,UAAW,aAAc,MACvCyI,EAAW,CACPoS,GAAI,qBACL4mC,EAAWzhD,UAAW,oBAAqB,MAC9CyI,EAAW,CACPoS,GAAI,YACL4mC,EAAWzhD,UAAW,MAAO,MACnByI,EAAW,CACpB+X,GAAY,cACbihC,GA5EwB,CA8E7B/hC,IAESqiC,GAAYrjC,GAAmB+iC,IAKtCQ,GAA2B,SAAUz0C,GAErC,SAASy0C,IACL,IAAIv2C,EAAmB,OAAX8B,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAQhE,OAPAgM,EAAMmD,OAASyR,GAAW,MAM1B5U,EAAM0b,OAAS1b,EAAMwU,QAAQ,WAAW,SAAU9d,GAAQ,MAAO,CAAGA,KAAMA,EAAM8/C,KAAMx2C,MAC/EA,EAaX,OAvBAxD,EAAU+5C,EAAWz0C,GAYrBpO,OAAOC,eAAe4iD,EAAUjiD,UAAW,SAAU,CAKjDT,IAAK,WACD,OAAOsb,GAAInD,UAAUyqC,GAAWziD,KAAM,UAAW,cAErDJ,YAAY,EACZsB,cAAc,IAEXqhD,EAxBmB,CAyB5BhiC,IAESyhC,GAAWhjC,GAAmBujC,IGhHrCG,GAA6B,SAAU50C,GAEvC,SAAS40C,IACL,OAAkB,OAAX50C,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAkE/D,OApEAwI,EAAUk6C,EAAa50C,GASvB40C,EAAYpiD,UAAU6oB,QAAU,SAAUzW,GACtC,OAAOyI,GAAInD,UAAU2qC,GAAU3iD,MAAM8X,OAAO,IAAMpF,EAAK,KAAM,gBAOjEgwC,EAAYpiD,UAAUqQ,IAAM,SAAUgX,GAClC,OAAOte,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAI8jB,EAAUphB,EACd,OAAO0H,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAED,OADAsZ,EAAWzZ,GAAK,EAAOyQ,GAAS,YAAa6M,IACtC,CAAC,EAAajJ,GAAOvD,GAAInD,UAAUhY,KAAM,WAAY8jB,IAChE,KAAK,EAED,MAAO,CAAC,EAAc,CACdphB,KAFRA,EAAO6J,EAAG9B,OAGF+hC,MAAOxsC,KAAKmpB,QAAQzmB,EAAKiiB,cAWrD+9B,EAAYpiD,UAAU60B,UAAY,SAAUytB,GACxC,OAAOznC,GAAInD,UAAU2qC,GAAU3iD,KAAM,cAAgB4iD,EAAY,MAAO,kBAO5EF,EAAYpiD,UAAU8hD,WAAa,SAAU1vC,GACzC,OAAOgM,GAAO1e,KAAKgX,MAAMyrC,GAAY,eAAiB/vC,EAAK,QAO/DgwC,EAAYpiD,UAAUgiD,kBAAoB,SAAUvM,GAChD,OAAOr3B,GAAO1e,KAAKgX,MAAMyrC,GAAY,sBAAwB1M,EAAY,QAE7EhtC,EAAW,CACPoS,GAAI,mBACLunC,EAAYpiD,UAAW,aAAc,MACxCyI,EAAW,CACPoS,GAAI,0BACLunC,EAAYpiD,UAAW,oBAAqB,MACjCyI,EAAW,CACrB+X,GAAY,eACb4hC,GApEyB,CAsE9B1iC,IAESyiC,GAAazjC,GAAmB0jC,IACvCG,GAA4B,SAAU/0C,GAEtC,SAAS+0C,IACL,IAAI72C,EAAmB,OAAX8B,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAahE,OAPAgM,EAAM0b,OAAS1b,EAAMwU,QAAQ,YAAY,SAAU3a,EAAG0B,GAElD,MAAO,CACH7E,KAAMmD,EACN2mC,MAHWllC,EAAIC,EAAG,SAAWyE,EAAM6T,UAAU8iC,GAAW32C,EAAMuL,UAAW,cAAgBhQ,EAAE4e,MAAQ,MAAQw8B,GAAU32C,OAMtHA,EAuBX,OAtCAxD,EAAUq6C,EAAY/0C,GAiBtBpO,OAAOC,eAAekjD,EAAWviD,UAAW,QAAS,CAKjDT,IAAK,WACD,OAAOsb,GAAInD,UAAUqqC,GAAUriD,KAAM,SAAU,aAEnDJ,YAAY,EACZsB,cAAc,IAMlB2hD,EAAWviD,UAAUwiD,eAAiB,SAAUC,GAC5C,OAAOrkC,GAAO1e,KAAKgX,MAAM2rC,GAAW,kBAAoBI,EAAS,OAErEh6C,EAAW,CACPoS,GAAI,sBACL0nC,EAAWviD,UAAW,iBAAkB,MACpCuiD,EAvCoB,CAwC7BtiC,IAESoiC,GAAY3jC,GAAmB6jC,IF/GtCG,GAAkC,SAAUl1C,GAE5C,SAASk1C,IACL,OAAkB,OAAXl1C,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAmD/D,OArDAwI,EAAUw6C,EAAkBl1C,GAS5Bk1C,EAAiB1iD,UAAU6oB,QAAU,SAAUzW,GAC3C,OAAOuwC,GAAejjD,MAAM8X,OAAO,IAAMpF,EAAK,MASlDswC,EAAiB1iD,UAAUqQ,IAAM,SAAUuyC,EAAaC,GACpD,OAAO95C,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,OAAOoK,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAAG,MAAO,CAAC,EAAakU,GAAO1e,KAAKgX,MAAMosC,GAAiB,iCAAmCF,EAAc,eAAiBC,EAAY,OAC9I,KAAK,EAED,OADA52C,EAAG9B,OACI,CAAC,WAY5Bu4C,EAAiB1iD,UAAUw6B,OAAS,SAAUooB,EAAaC,GACvD,OAAO95C,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,OAAOoK,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAAG,MAAO,CAAC,EAAakU,GAAO1e,KAAKgX,MAAMosC,GAAiB,oCAAsCF,EAAc,eAAiBC,EAAY,OACjJ,KAAK,EAED,OADA52C,EAAG9B,OACI,CAAC,WAKT1B,EAAW,CAC1B+X,GAAY,oBACbkiC,GArD8B,CAuDnChjC,IAESojC,GAAkBpkC,GAAmBgkC,IAK5CK,GAAiC,SAAUv1C,GAE3C,SAASu1C,IACL,IAAIr3C,EAAmB,OAAX8B,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAEhE,OADAgM,EAAMmD,OAASyR,GAAW,MACnB5U,EAwBX,OA5BAxD,EAAU66C,EAAiBv1C,GAM3BpO,OAAOC,eAAe0jD,EAAgB/iD,UAAW,SAAU,CAKvDT,IAAK,WACD,OAAOsb,GAAInD,UAAUyqC,GAAWziD,KAAM,UAAW,cAErDJ,YAAY,EACZsB,cAAc,IAElBxB,OAAOC,eAAe0jD,EAAgB/iD,UAAW,WAAY,CAKzDT,IAAK,WACD,OAAOygB,GAA8BtgB,KAAM,2BAE/CJ,YAAY,EACZsB,cAAc,IAEXmiD,EA7ByB,CA8BlC9iC,IAES0iC,GAAiBjkC,GAAmBqkC,IAK3CC,GAAkC,SAAUx1C,GAE5C,SAASw1C,IACL,OAAkB,OAAXx1C,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAiE/D,OAnEAwI,EAAU86C,EAAkBx1C,GAU5Bw1C,EAAiBhjD,UAAU6oB,QAAU,SAAUzW,GAC3C,OAAO6wC,GAAevjD,KAAM,WAAa0S,EAAK,MAQlD4wC,EAAiBhjD,UAAU60B,UAAY,SAAUjoB,GAC7C,OAAOq2C,GAAevjD,KAAM,cAAgBkN,EAAO,OAQvDo2C,EAAiBhjD,UAAUkjD,UAAY,SAAUC,GAC7C,OAAOF,GAAevjD,KAAM,aAAeyjD,EAAe,MAW9DH,EAAiBhjD,UAAUqQ,IAAM,SAAUzD,EAAMoY,EAAawW,EAAO4nB,GACjE,OAAOr6C,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAI8jB,EAAUphB,EACd,OAAO0H,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAQD,OAPAsZ,EAAWzZ,GAAK,CACZs5C,gBAAiB,CAAE,KAAQD,EAAgBE,KAAKz/C,WAAY,IAAOu/C,EAAgBG,IAAI1/C,YACvF0hB,YAAaP,EACbw+B,KAAM52C,EACN62C,MAAOjoB,EACP3a,WAAY,CAAE,KAAQ,uBAEnB,CAAC,EAAazC,GAAO1e,KAAM8jB,IACtC,KAAK,EAED,MAAO,CAAC,EAAc,CACdphB,KAFRA,EAAO6J,EAAG9B,OAGFlL,WAAYS,KAAKmpB,QAAQzmB,EAAKiiB,cAMvC5b,EAAW,CAC1B+X,GAAY,oBACbwiC,GAnE8B,CAqEnCtjC,IAESgkC,GAAkBhlC,GAAmBskC,IAK5CW,GAAiC,SAAUn2C,GAE3C,SAASm2C,IACL,IAAIj4C,EAAmB,OAAX8B,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAEhE,OADAgM,EAAMmD,OAASyR,GAAW,MACnB5U,EAqCX,OAzCAxD,EAAUy7C,EAAiBn2C,GAW3Bm2C,EAAgB3jD,UAAUonB,OAAS,SAAUC,GACzC,OAAOte,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAI6C,EAAGqhD,EAAOpgC,EAAUphB,EAAMnD,EAAY4kD,EAC1C,OAAO/5C,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EASD,YAP8BrJ,IAA1BmG,EAAIqgB,GADR9kB,EAAI,CAAC,oBACiB,MAClB8kB,EAAW9kB,EAAE,IAAM,EAAOiY,GAAS,MAAQjY,EAAE,IAAK8kB,EAAW9kB,EAAE,MAC/DqhD,EAAQv8B,EAAW9kB,EAAE,KACf+gD,KAAOM,EAAMN,KAAKz/C,WACxB+/C,EAAML,IAAMK,EAAML,IAAI1/C,YAE1B2f,EAAWzZ,GAAK,EAAOyQ,GAAS,qBAAsB6M,GAAa1a,GAAQ,CAAE,gBAAiB,WACvF,CAAC,EAAayR,GAAO1e,KAAM8jB,IACtC,KAAK,EAOD,OANAphB,EAAO6J,EAAG9B,OACVlL,EAAaS,KACTsH,EAAIqgB,EAAY,UAChBw8B,EAAWnkD,KAAK6f,UAAUmkC,GAAiBhkD,KAAKuX,UAAW,IAC3DhY,EAAa4kD,EAAShvB,UAAUxN,EAAWm8B,OAExC,CAAC,EAAc,CACdphD,KAAMA,EACNnD,WAAYA,YAMjC0kD,EA1CyB,CA2ClC1jC,IAESgjC,GAAiBvkC,GAAmBilC,IG/NxC,SAASG,GAA4BrO,GACxC,OAAO1sC,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAIukB,EAAG9jB,EACP,OAAO2J,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAGD,OAFA+Z,EAAIvkB,KAAKgX,MAAM2J,GAA6B,uCAC1CnJ,MAAMvW,IAAI,QAAS,IAAMwe,mBAAmBs2B,GAAa,KACpD,CAAC,EAAaxxB,EAAE1kB,OAC3B,KAAK,EAGD,MAAO,CAAC,EAAcyH,EAFtB7G,EAAI8L,EAAG9B,OAEsB,+BAAiChK,EAAE4jD,4BAA8B5jD,UAQ3G,SAAS6jD,KACZ,OAAOj7C,EAAUrJ,UAAM,OAAQ,GAAQ,WAEnC,OAAOoK,EAAYpK,MAAM,SAAUuM,GAE/B,MAAO,CAAC,EADJvM,KAAKgX,MAAM+I,GAAqB,4BACZlgB,MAAMsK,MAAK,SAAU1J,GAErC,OAAO6G,EAAI7G,EAAG,4BAA8BA,EAAE8jD,yBAA2B9jD,YAWtF,SAAS+jD,GAAqBC,EAAqBC,GAGtD,YAF4B,IAAxBD,IAAkCA,GAAsB,QACrC,IAAnBC,IAA6BA,GAAiB,GAC3Cr7C,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,OAAOoK,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAAG,MAAO,CAAC,EAAakU,GAAO1e,KAAKgX,MAAM+I,GAAqB,4CAA8C0kC,EAAsB,oBAAsBC,EAAiB,OAC/K,KAAK,EAED,OADAn4C,EAAG9B,OACI,CAAC,UASrB,SAASk6C,KACZ,OAAOt7C,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,OAAOoK,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAAG,MAAO,CAAC,EAAakU,GAAO1e,KAAKgX,MAAM+I,GAAqB,0BACpE,KAAK,EAED,OADAxT,EAAG9B,OACI,CAAC,UAWrB,SAASm6C,GAAmB7O,EAAW8O,GAC1C,OAAOx7C,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAI8kD,EACJ,OAAO16C,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAAG,MAAO,CAAC,EAAa45C,GAA4B5jD,KAAKR,KAAM+1C,IACpE,KAAK,EAED,OADA+O,EAAQv4C,EAAG9B,OACJ,CAAC,EAAczK,KAAK+kD,eAAeD,EAAOD,WAU9D,SAASG,GAA0BH,GACtC,OAAOx7C,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAI8kD,EACJ,OAAO16C,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAAG,MAAO,CAAC,EAAa85C,GAAmC9jD,KAAKR,OACrE,KAAK,EAED,OADA8kD,EAAQv4C,EAAG9B,OACJ,CAAC,EAAczK,KAAK+kD,eAAeD,EAAOD,WAY9D,SAASE,GAAenkD,EAAOqkD,GAClC,IAAKA,EACD,OAAO,EAEX,GAAIA,IAASzD,GAAe0D,SACxB,OAAgC,QAAX,MAAbtkD,EAAMgjD,OAAyC,QAAdhjD,EAAMijD,IAGnD,IAAInvB,EAAM,EACV,OAFAuwB,GAAc,IAEF,GAAKA,EAAO,IACpBvwB,IAAauwB,EACN,IAAOrkD,EAAMijD,IAAMnvB,IAErBuwB,GAAQ,IAAMA,EAAO,KAC1BvwB,IAAauwB,EAAO,GACb,IAAOrkD,EAAMgjD,KAAOlvB,ICxH5B,SAASywB,GAAY1lD,EAAGmO,EAASw3C,GAEpC,YADe,IAAXA,IAAqBA,GAAS,GAC3B/7C,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAIqlD,EAAWC,EAASxhC,EACxB,OAAO1Z,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EACD,OAAI46C,EAEO,CAAC,EAAcG,GAAuB9lD,EAAGmO,IAS7C,CAAC,EAAa43C,IANrB53C,EAAU,EAAOA,EAAS,CACtB4+B,MAAO,KACPiZ,6BAA6B,EAC7BC,cAAc,EACdC,oBAAoB,IACrB,IACuC7hB,KAAMl2B,EAAQ4+B,QAC5D,KAAK,EAmBD,OAlBA6Y,EAAY94C,EAAG9B,OAEVnF,MAAMa,QAAQyH,EAAQg4C,cACvBh4C,EAAQg4C,WAAa,CAACh4C,EAAQg4C,aAElCN,EAAUj+C,EAAIuG,EAAQg4C,WAAW7iD,KAAI,SAAUutB,GAAO,MAAO,CAAGA,IAAKA,OACrExM,EAAW,CACP+hC,kBAAmBP,EACnBD,UAAWA,EACXt+C,IAAK6G,EAAQ7G,UAES5F,IAAtByM,EAAQk4C,WAAiD,OAAtBl4C,EAAQk4C,YAC3ChiC,EAAW,EAAOA,EAAU,CACxBiiC,UAAWn4C,EAAQk4C,UAAUz7C,KAC7B27C,kBAA4C7kD,IAA9ByM,EAAQk4C,UAAUG,QAAwBr4C,EAAQk4C,UAAUG,QAAU,mBACpFC,WAAW,KAGZ,CAAC,EAAcX,GAAuB9lD,EAAGqkB,WAW7D,SAASqiC,GAAaC,EAAMl3C,QACZ,IAAfA,IAAyBA,EAAa,MAE1C,IAAIm3C,EAA2B,OAAfn3C,EAAsBA,EAAW8pC,cAAgB,KAE7Dv5C,EAAI0b,GAAInD,UAAUhY,KAAKgX,MAAM2J,GAA6B,aAAc,mBAC5E,OAAOjC,GAAOjf,EAAG4K,GAAK,CAClBwY,QAAS,CACLyjC,YAAY,EACZR,UAAW,KACX/sC,SAAU,CACN7J,WAAYm3C,EACZE,SAAUH,OAUnB,SAASI,GAAiBC,GAC7B,IAAIhnD,EAAI0b,GAAInD,UAAUhY,KAAKgX,MAAM2J,GAA6B,oBAAqB,uBACnF,OAAOjC,GAAOjf,EAAG4K,GAAK,CAAEo8C,WAAYA,KASjC,SAASC,GAAsB7jC,EAASlD,QAC3B,IAAZkD,IAAsBA,EAAU,WACpB,IAAZlD,IAAsBA,EAAU,IACpC,IAAIlgB,EAAI0b,GAAInD,UAAUhY,KAAKgX,MAAM2J,GAA6B,yBAA0B,4BACxF,OAAOjC,GAAOjf,EAAEigB,OAAO9b,MAAMnE,EAAG2L,EAAc,GAAIF,EAAOyU,KAAYtV,GAAK,CAAEwY,QAASA,KAOlF,SAAS8jC,GAAyBhB,QACV,IAAvBA,IAAiCA,GAAqB,GAC1D,IAAIlmD,EAAI0b,GAAInD,UAAUhY,KAAKgX,MAAM2J,GAA6B,4BAA6B,+BAC3F,OAAOjC,GAAOjf,EAAG4K,GAAK,CAAEs7C,mBAAoBA,KAKzC,SAASiB,KACZ,OAAOloC,GAAOvD,GAAInD,UAAUhY,KAAKgX,MAAM2J,GAA6B,iBAAkB,qBAOnF,SAASkmC,GAAiBN,GAC7B,OAAO7nC,GAAOvD,GAAInD,UAAUhY,KAAKgX,MAAM2J,GAA6B,oBAAqB,uBAAwBtW,GAAK,CAAEk8C,SAAUA,KAQ/H,SAASO,GAAYP,EAAUQ,GAElC,YADgB,IAAZA,IAAsBA,EAAUjkC,IAC7BpE,GAAOvD,GAAInD,UAAUhY,KAAKgX,MAAM2J,GAA6B,eAAgB,kBAAmBtW,GAAK,CAAEk8C,SAAUA,EAAUQ,QAASA,KAWxI,SAASC,GAAUvnD,EAAGmmD,EAAY9hB,EAAMmjB,EAAevB,EAAcI,GAGxE,YAFsB,IAAlBmB,IAA4BA,GAAgB,QAC3B,IAAjBvB,IAA2BA,GAAe,GACvCr8C,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAIslD,EAAS4B,EAAeh7C,EAAK4X,EACjC,OAAO1Z,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAUD,OARKlF,MAAMa,QAAQy/C,KACfA,EAAa,CAACA,IAElBN,EAAUj+C,EAAIu+C,EAAW7iD,KAAI,SAAUokD,GACnC,MAAO,CAAE72B,IAAK62B,OAElBD,EAAapjB,IAAS2d,GAAY2F,KAAOtF,GAASuF,YAAcvF,GAASwF,OAElE,CAAC,EADJhnC,GAA8B,WAAY,mBACvBf,OAAO,MAAMxa,OAAO,mBAAqBmiD,GAAYrnD,OAChF,KAAK,EAED,GADAqM,EAAMK,EAAG9B,QACJnF,MAAMa,QAAQ+F,IAAQA,EAAIxK,OAAS,EACpC,MAAMiQ,MAAM,uDAAyDu1C,GAgBzE,OAdApjC,EAAW,CACP2hC,4BAA6BwB,EAC7BpB,kBAAmBP,EACnBI,aAAcA,EACdL,UAAW,QAAUn5C,EAAI,GAAGyY,GAC5BghC,oBAAoB,QAENxkD,IAAd2kD,IACAhiC,EAAW,EAAOA,EAAU,CACxBiiC,UAAWD,EAAUz7C,KACrB27C,kBAAoC7kD,IAAtB2kD,EAAUG,QAAwBH,EAAUG,QAAU,GACpEC,WAAW,KAGZ,CAAC,EAAcxnC,GAAOvD,GAAInD,UAAUvY,EAAEuX,MAAM2J,GAA6B,eAAgB,gBAAiBtW,GAAKyZ,YAK1I,SAASyhC,GAAuB9lD,EAAGmO,GAC/B,IAAI25C,EAAIpsC,GAAInD,UAAU4L,GAAI5I,GAAcvb,EAAEoY,SAAU,4BAA6B,6BAEjF,OADA0vC,EAAEtvC,cAAcjY,MACT0e,GAAO6oC,EAAE7nC,OAAO,0BAA2B,oBAAqBrV,GAAKuD,IAQhF,SAAS43C,GAAa1hB,EAAM0I,GACxB,OAAOnjC,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAgBknD,EAAYh7C,EAC5B,OAAO9B,EAAYpK,MAAM,SAAUyM,GAC/B,OAAQA,EAAGjC,OACP,KAAK,EACD,GAAK,MAACgiC,EAAwC,MAAO,CAAC,EAAa,GAEnE,OADKA,GAED,KAAKsV,GAASuF,YAAa,MAAO,CAAC,EAAa,GAChD,KAAKvF,GAASwF,OACd,KAAKxF,GAAS0F,MAAO,MAAO,CAAC,EAAa,GAE9C,MAAO,CAAC,EAAa,GACzB,KAAK,EAAG,MAAO,CAAC,EAAa5jC,GAAI,WAAY,yBAAyB3L,cAAcjY,MAAMuf,OAAO,KAApEqE,IAC7B,KAAK,EAED,MAAO,CAAC,EAAc,UADjBnX,EAAGhC,OAC6Bka,IACzC,KAAK,EAAG,MAAO,CAAC,EAAaf,GAAI,WAAY,0BAA0B3L,cAAcjY,MAAMuf,OAAO,KAArEqE,IAC7B,KAAK,EAED,MAAO,CAAC,EAAc,UADjBnX,EAAGhC,OAC6Bka,IACzC,KAAK,EAAG,MAAMhT,MAAM,mGACpB,KAAK,EAAG,MAAO,CAAC,EAAa,GAC7B,KAAK,EAED,OADAu1C,EAAapjB,IAAS2d,GAAY2F,KAAOtF,GAASuF,YAAcvF,GAASwF,OAClE,CAAC,EAAatD,GAAgB,YAAYzkC,OAAO,MAAMc,IAAI,GAAGtb,OAAO,mBAAqBmiD,EAA5ElD,IACzB,KAAK,EAED,IADA93C,EAAMO,EAAGhC,QACD/I,OAAS,EACb,MAAMiQ,MAAM,8FAEhB,MAAO,CAAC,EAAc,SAAWzF,EAAI,GAAGyY,IAC5C,KAAK,EAAG,MAAO,CAAC,WJChC,SAAW68B,GAIPA,EAAeA,EAA0B,UAAI,GAAK,YAIlDA,EAAeA,EAA8B,cAAI,GAAK,gBAItDA,EAAeA,EAA6B,aAAI,GAAK,eAKrDA,EAAeA,EAA8B,cAAI,GAAK,gBAKtDA,EAAeA,EAAgC,gBAAI,GAAK,kBAIxDA,EAAeA,EAA6B,aAAI,GAAK,eAIrDA,EAAeA,EAA0B,UAAI,GAAK,YAIlDA,EAAeA,EAA6B,aAAI,GAAK,eAIrDA,EAAeA,EAA+B,eAAI,GAAK,iBAIvDA,EAAeA,EAA+B,eAAI,GAAK,iBAIvDA,EAAeA,EAAoC,oBAAI,IAAM,sBAI7DA,EAAeA,EAA4B,YAAI,IAAM,cAIrDA,EAAeA,EAA8B,cAAI,IAAM,gBAKvDA,EAAeA,EAA0C,0BAAI,IAAM,4BAInEA,EAAeA,EAAqB,KAAI,IAAM,OAI9CA,EAAeA,EAA0B,UAAI,IAAM,YAKnDA,EAAeA,EAAqC,qBAAI,IAAM,uBAI9DA,EAAeA,EAAoC,oBAAI,IAAM,sBAI7DA,EAAeA,EAAiC,iBAAI,IAAM,mBAI1DA,EAAeA,EAA8B,cAAI,IAAM,gBAIvDA,EAAeA,EAA8B,cAAI,IAAM,gBAIvDA,EAAeA,EAA8B,cAAI,IAAM,gBAIvDA,EAAeA,EAA6B,aAAI,IAAM,eAKtDA,EAAeA,EAAkC,kBAAI,IAAM,oBAK3DA,EAAeA,EAAkC,kBAAI,IAAM,oBAI3DA,EAAeA,EAA+B,eAAI,IAAM,iBAIxDA,EAAeA,EAAsC,sBAAI,IAAM,wBAI/DA,EAAeA,EAAuC,uBAAI,IAAM,yBAUhEA,EAAeA,EAA0B,UAAI,IAAM,YAKnDA,EAAeA,EAA8C,8BAAI,IAAM,gCAKvEA,EAAeA,EAAqC,qBAAI,IAAM,uBAI9DA,EAAeA,EAA8B,cAAI,IAAM,gBAIvDA,EAAeA,EAA6B,aAAI,IAAM,eAItDA,EAAeA,EAA6B,aAAI,IAAM,eAItDA,EAAeA,EAA+B,eAAI,IAAM,iBAIxDA,EAAeA,EAAqC,qBAAI,IAAM,uBAI9DA,EAAeA,EAAyB,SAAI,IAAM,WAlKtD,CAmKGA,KAAmBA,GAAiB,KKzYvC7tC,GAAQ+a,GAAO,kBAAmB00B,IAClCzvC,GAAQ+a,GAAO,qCAAsC/N,IACrD+N,GAAMpuB,UAAU8jD,4BAA8BA,GAC9C11B,GAAMpuB,UAAUgkD,mCAAqCA,GACrD51B,GAAMpuB,UAAUkkD,qBAAuBA,GACvC91B,GAAMpuB,UAAUqkD,qBAAuBA,GACvCj2B,GAAMpuB,UAAUskD,mBAAqBA,GACrCl2B,GAAMpuB,UAAU0kD,0BAA4BA,GAC5Ct2B,GAAMpuB,UAAUykD,eAAiBA,GCRjCpxC,GAAQsW,GAAO,kBAAmBm5B,IAClCzvC,GAAQsW,GAAO,qCAAsCtJ,IACrDsJ,GAAM3pB,UAAU8jD,4BAA8BA,GAC9Cn6B,GAAM3pB,UAAUgkD,mCAAqCA,GACrDr6B,GAAM3pB,UAAUkkD,qBAAuBA,GACvCv6B,GAAM3pB,UAAUqkD,qBAAuBA,GACvC16B,GAAM3pB,UAAUskD,mBAAqBA,GACrC36B,GAAM3pB,UAAU0kD,0BAA4BA,GAC5C/6B,GAAM3pB,UAAUykD,eAAiBA,GCRjCpxC,GAAQ4T,GAAM,kBAAmBy8B,IACjCrwC,GAAQ4T,GAAM,kBAAmB67B,IACjCzvC,GAAQ4T,GAAM,qCAAsC5G,IACpD4G,GAAKjnB,UAAU8jD,4BAA8BA,GAC7C78B,GAAKjnB,UAAUgkD,mCAAqCA,GACpD/8B,GAAKjnB,UAAUkkD,qBAAuBA,GACtCj9B,GAAKjnB,UAAUqkD,qBAAuBA,GACtCp9B,GAAKjnB,UAAUskD,mBAAqBA,GACpCr9B,GAAKjnB,UAAU0kD,0BAA4BA,GAC3Cz9B,GAAKjnB,UAAUykD,eAAiBA,GNVhC,SAAWtD,GACPA,EAAYA,EAAkB,KAAI,GAAK,OACvCA,EAAYA,EAAkB,KAAI,GAAK,OACvCA,EAAYA,EAAkB,KAAI,GAAK,OACvCA,EAAYA,EAAmB,MAAI,GAAK,QAJ5C,CAKGA,KAAgBA,GAAc,KAEjC,SAAWC,GACPA,EAAmBA,EAA4B,QAAI,GAAK,UACxDA,EAAmBA,EAAyB,KAAI,GAAK,OACrDA,EAAmBA,EAA2B,OAAI,GAAK,SACvDA,EAAmBA,EAAyB,KAAI,GAAK,OACrDA,EAAmBA,EAAyB,KAAI,GAAK,OACrDA,EAAmBA,EAAwB,IAAI,GAAK,MACpDA,EAAmBA,EAAwB,IAAI,GAAK,MAPxD,CAQGA,KAAuBA,GAAqB,KAE/C,SAAWC,GACPA,EAA6BA,EAAmC,KAAI,GAAK,OACzEA,EAA6BA,EAAwC,UAAI,GAAK,YAC9EA,EAA6BA,EAAwC,UAAI,GAAK,YAHlF,CAIGA,KAAiCA,GAA+B,KAEnE,SAAWC,GAIPA,EAA2BA,EAAkD,sBAAI,GAAK,wBAItFA,EAA2BA,EAAiD,qBAAI,GAAK,uBAIrFA,EAA2BA,EAA4C,iBAAK,GAAK,kBAIjFA,EAA2BA,EAAyC,cAAK,GAAK,eAI9EA,EAA2BA,EAAyD,8BAAK,GAAK,+BAI9FA,EAA2BA,EAAwC,aAAK,GAAK,cAI7EA,EAA2BA,EAA6C,kBAAK,GAAK,mBAIlFA,EAA2BA,EAAqD,0BAAK,GAAK,2BAI1FA,EAA2BA,EAA+C,oBAAK,GAAK,qBAIpFA,EAA2BA,EAA+C,oBAAK,GAAK,qBAIpFA,EAA2BA,EAAqD,0BAAK,GAAK,2BA5C9F,CA6CGA,KAA+BA,GAA6B,KAE/D,SAAWC,GAIPA,EAAgBA,EAA+B,cAAI,GAAK,gBAIxDA,EAAgBA,EAAwB,OAAI,GAAK,SAIjDA,EAAgBA,EAAkC,iBAAI,GAAK,mBAI3DA,EAAgBA,EAAkC,iBAAI,GAAK,mBAI3DA,EAAgBA,EAA+B,cAAI,GAAK,gBAIxDA,EAAgBA,EAA+B,cAAI,GAAK,gBAIxDA,EAAgBA,EAA0B,SAAI,GAAK,WA5BvD,CA6BGA,KAAoBA,GAAkB,KAEzC,SAAWC,GACPA,EAASA,EAAe,KAAI,GAAK,OACjCA,EAASA,EAAgB,MAAI,GAAK,QAClCA,EAASA,EAAiB,OAAI,GAAK,SACnCA,EAASA,EAAsB,YAAI,GAAK,cACxCA,EAASA,EAAsB,YAAI,GAAK,cACxCA,EAASA,EAAwB,cAAI,GAAK,gBAN9C,CAOGA,KAAaA,GAAW,KO7G3BzrB,GAAM/1B,UAAU0mD,UAAY,SAAUpB,EAAY9hB,EAAMmjB,EAAenB,GAGnE,YAFa,IAAThiB,IAAmBA,EAAO2d,GAAYgG,WACpB,IAAlBR,IAA4BA,GAAgB,GACzCD,GAAUhnD,KAAM4lD,EAAY9hB,EAAMmjB,GAAe,EAAOnB,IAEnEzvB,GAAM/1B,UAAU6lD,aAAeA,GAC/B9vB,GAAM/1B,UAAUonD,wBAA0BlB,GAC1CnwB,GAAM/1B,UAAUomD,sBAAwBA,GACxCrwB,GAAM/1B,UAAUqmD,yBAA2BA,GAC3CtwB,GAAM/1B,UAAUqnD,QAAUf,GAC1BvwB,GAAM/1B,UAAUsnD,wBAA0Bf,GAC1CxwB,GAAM/1B,UAAUwmD,YAAcA,GCX9Ble,GAAQtoC,UAAU0mD,UAAY,SAAUpB,EAAY9hB,EAAMmjB,EAAeY,EAAiB/B,GAItF,YAHa,IAAThiB,IAAmBA,EAAO2d,GAAYgG,WACpB,IAAlBR,IAA4BA,GAAgB,QACxB,IAApBY,IAA8BA,GAAkB,GAC7Cx+C,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAI8nD,EAAY3e,EAChB,OAAO/+B,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAED,OADAs9C,EAAa9nD,KAAK6Y,qBACX,CAAC,EAAa7Y,KAAKkpC,gBAC9B,KAAK,EAGD,OAFAC,EAAY58B,EAAG9B,OACfq9C,IACO,CAAC,EAAc3e,EAAU6d,UAAUpB,EAAY9hB,EAAMmjB,EAAeY,EAAiB/B,YAKhHld,GAAQtoC,UAAU6lD,aAAe,SAAUC,EAAMl3C,GAE7C,YADmB,IAAfA,IAAyBA,EAAa,MACnC7F,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAI8nD,EAAY3e,EAChB,OAAO/+B,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAED,OADAs9C,EAAa9nD,KAAK6Y,qBACX,CAAC,EAAa7Y,KAAKkpC,gBAC9B,KAAK,EAGD,OAFAC,EAAY58B,EAAG9B,OACfq9C,IACO,CAAC,EAAc3e,EAAUgd,aAAaC,EAAMl3C,YAKvE05B,GAAQtoC,UAAUonD,wBAA0B,SAAUjB,GAClD,OAAOp9C,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAI8nD,EAAY3e,EAChB,OAAO/+B,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAED,OADAs9C,EAAa9nD,KAAK6Y,qBACX,CAAC,EAAa7Y,KAAKkpC,gBAC9B,KAAK,EAGD,OAFAC,EAAY58B,EAAG9B,OACfq9C,IACO,CAAC,EAAc3e,EAAUue,wBAAwBjB,YAK5E7d,GAAQtoC,UAAUomD,sBAAwB,SAAU7jC,EAASlD,GACzD,OAAOtW,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAI8nD,EAAY3e,EAChB,OAAO/+B,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAED,OADAs9C,EAAa9nD,KAAK6Y,qBACX,CAAC,EAAa7Y,KAAKkpC,gBAC9B,KAAK,EAGD,OAFAC,EAAY58B,EAAG9B,OACfq9C,IACO,CAAC,EAAc3e,EAAUud,sBAAsB7jC,EAASlD,YAKnFipB,GAAQtoC,UAAUqmD,yBAA2B,SAAUhB,GAEnD,YAD2B,IAAvBA,IAAiCA,GAAqB,GACnDt8C,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAI8nD,EAAY3e,EAChB,OAAO/+B,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAED,OADAs9C,EAAa9nD,KAAK6Y,qBACX,CAAC,EAAa7Y,KAAKkpC,gBAC9B,KAAK,EAGD,OAFAC,EAAY58B,EAAG9B,OACfq9C,IACO,CAAC,EAAc3e,EAAUwd,yBAAyBhB,YAK7E/c,GAAQtoC,UAAUqnD,QAAU,WACxB,OAAOt+C,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAI8nD,EAAY3e,EAChB,OAAO/+B,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAED,OADAs9C,EAAa9nD,KAAK6Y,qBACX,CAAC,EAAa7Y,KAAKkpC,gBAC9B,KAAK,EAGD,OAFAC,EAAY58B,EAAG9B,OACfq9C,IACO,CAAC,EAAc3e,EAAUwe,mBAKpD/e,GAAQtoC,UAAUsnD,wBAA0B,SAAUxB,GAClD,OAAO/8C,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAI8nD,EAAY3e,EAChB,OAAO/+B,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAED,OADAs9C,EAAa9nD,KAAK6Y,qBACX,CAAC,EAAa7Y,KAAKkpC,gBAC9B,KAAK,EAGD,OAFAC,EAAY58B,EAAG9B,OACfq9C,IACO,CAAC,EAAc3e,EAAUye,wBAAwBxB,YAK5Exd,GAAQtoC,UAAUwmD,YAAc,SAAUV,EAAMW,GAC5C,OAAO19C,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAI8nD,EAAY3e,EAChB,OAAO/+B,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAED,OADAs9C,EAAa9nD,KAAK6Y,qBACX,CAAC,EAAa7Y,KAAKkpC,gBAC9B,KAAK,EAGD,OAFAC,EAAY58B,EAAG9B,OACfq9C,IACO,CAAC,EAAc3e,EAAU2d,YAAYV,EAAMW,YChItEr4B,GAAMpuB,UAAU0mD,UAAY,SAAUpB,EAAY9hB,EAAMmjB,EAAenB,GAGnE,YAFa,IAAThiB,IAAmBA,EAAO2d,GAAYgG,WACpB,IAAlBR,IAA4BA,GAAgB,GACzCD,GAAUhnD,KAAM4lD,EAAY9hB,EAAMmjB,GAAe,EAAOnB,IAEnEp3B,GAAMpuB,UAAU6lD,aAAeA,GAC/Bz3B,GAAMpuB,UAAUonD,wBAA0BlB,GAC1C93B,GAAMpuB,UAAUomD,sBAAwBA,GACxCh4B,GAAMpuB,UAAUqmD,yBAA2BA,GAC3Cj4B,GAAMpuB,UAAUqnD,QAAUf,GAC1Bl4B,GAAMpuB,UAAUsnD,wBAA0Bf,GAC1Cn4B,GAAMpuB,UAAUwmD,YAAcA,GCC9Bv/B,GAAKjnB,UAAU0mD,UAAY,SAAUpB,EAAY9hB,EAAMgiB,GAEnD,YADa,IAAThiB,IAAmBA,EAAO2d,GAAYgG,MACnCp+C,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAI8nD,EAAiB/gD,EACrB,OAAOqD,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAGD,OAFAs9C,EAAa9nD,KAAK6Y,qBAEX,CAAC,EADF,IAAI0H,GAA6BvF,GAAchb,KAAK6X,SAAU,iBAC3ChY,OAC7B,KAAK,EAGD,OAFAkH,EAAMwF,EAAG9B,OACTq9C,IACO,CAAC,EAAc9nD,KAAKmlD,YAAYtgD,EAAQkC,EAAK,mDAAoD6+C,EAAY9hB,EAAMgiB,YAiB9Iv+B,GAAKjnB,UAAU6kD,YAAc,SAAUp+C,EAAK6+C,EAAY9hB,EAAMgiB,EAAWtZ,EAAOkZ,EAAcD,EAA6BE,GAIvH,YAHqB,IAAjBD,IAA2BA,GAAe,QACV,IAAhCD,IAA0CA,GAA8B,QACjD,IAAvBE,IAAiCA,GAAqB,GACnDR,GAAYnlD,KAAM,CACrB8lD,UAAWA,EACXtZ,MAAOA,EACPiZ,4BAA6BA,EAC7BG,WAAYA,EACZF,aAAcA,EACd5hB,KAAMA,EACN/8B,IAAKA,EACL4+C,mBAAoBA,KAQ5Bp+B,GAAKjnB,UAAUynD,eAAiB,SAAUn6C,GACtC,OAAOu3C,GAAYnlD,KAAM4N,GAAS,IAOtC2Z,GAAKjnB,UAAUsmD,cAAgB,SAAU7/C,GACrC,OAAO2X,GAAOkF,GAAI5jB,KAAM,iBAAiBiY,cAAcjY,MAAOqK,GAAK,CAAEtD,IAAKA,MCnE9E,IAAIihD,GAA8B,SAAUl6C,GAExC,SAASk6C,EAAazqC,EAAS/B,QACR,IAAfA,IAAyBA,EAAa,IAC1C,IACIzU,EAAyB,iBAAZwW,EAAuBA,EAAUA,EAAQ1F,QAE1D,OADQ/J,EAAOtN,KAAKR,KAAMgb,GAAcjU,GAAM,+EAAiFyU,IAAexb,KAsLlJ,OA3LAwI,EAAUw/C,EAAcl6C,GAQxBk6C,EAAa1nD,UAAU2S,QAAU,SAAUyN,GACvC,OAAOhC,GAAO1e,KAAMqK,GAAKqW,EAAOzT,GAAQ,CAAE,eAAgB,sCAO9D+6C,EAAa1nD,UAAU2nD,iBAAmB,SAAUC,GAChD,OAAOloD,KAAKgX,MAAMmxC,GAAyB,oBAAoBl1C,QAAQ,CAAER,KAAMy1C,KAQnFF,EAAa1nD,UAAU8nD,gBAAkB,SAAU5iC,EAAc1I,GAC7D,OAAO9c,KAAKgX,MAAMmxC,GAAyB,mBAAmBl1C,QAAQ,CAAEuS,aAAcA,EAAc,OAAU1I,KAKlHkrC,EAAa1nD,UAAU+nD,eAAiB,WACpC,OAAOroD,KAAKgX,MAAMmxC,GAAyB,kBAAkBl1C,QAAQ,KAMzE+0C,EAAa1nD,UAAUgoD,sBAAwB,SAAU51C,GACrD,OAAO1S,KAAKgX,MAAMmxC,GAAyB,yBAAyBl1C,QAAQ,CAAEP,GAAIA,KAOtFs1C,EAAa1nD,UAAUioD,iBAAmB,SAAUC,GAChD,OAAOxoD,KAAKgX,MAAMmxC,GAAyB,oBAAoBl1C,QAAQ,CAAEu1C,WAAYA,KAMzFR,EAAa1nD,UAAUmoD,iBAAmB,SAAU/1C,GAChD,OAAO1S,KAAKgX,MAAMmxC,GAAyB,oBAAoBl1C,QAAQ,CAAEP,GAAIA,KAMjFs1C,EAAa1nD,UAAUooD,oBAAsB,SAAUh2C,GACnD,OAAO1S,KAAKgX,MAAMmxC,GAAyB,uBAAuBl1C,QAAQ,CAAEP,GAAIA,KASpFs1C,EAAa1nD,UAAUqoD,sBAAwB,SAAUj2C,EAAIk2C,EAAgBC,GAEzE,YADsB,IAAlBA,IAA4BA,EAAgB,GACzC7oD,KAAKgX,MAAMmxC,GAAyB,yBACtCl1C,QAAQ,CACT,cAAiB41C,EAAc1kD,WAC/B,GAAMuO,EACN,eAAkBk2C,KAS1BZ,EAAa1nD,UAAUwoD,uBAAyB,SAAUp2C,EAAIk2C,GAC1D,OAAO5oD,KAAKgX,MAAMmxC,GAAyB,0BACtCl1C,QAAQ,CACT,GAAMP,EACN,eAAkBk2C,KAQ1BZ,EAAa1nD,UAAUyoD,kBAAoB,SAAUjsC,EAAQ0I,GACzD,OAAOxlB,KAAKgX,MAAMmxC,GAAyB,qBACtCl1C,QAAQ,CAAE,OAAU6J,EAAQ,aAAgB0I,KAMrDwiC,EAAa1nD,UAAU0oD,8BAAgC,SAAUxjC,GAC7D,OAAOxlB,KAAKgX,MAAMmxC,GAAyB,iCACtCl1C,QAAQ,CAAE,aAAgBuS,KAMnCwiC,EAAa1nD,UAAU2oD,kBAAoB,SAAUv2C,GACjD,OAAOrJ,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAIkpD,EACJ,OAAO9+C,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAAG,MAAO,CAAC,EAAaxK,KAAKgX,MAAMmxC,GAAyB,qBACxDl1C,QAAQ,CAAE,OAAUP,KAC7B,KAAK,EAED,MAAO,CAAC,EAAcpL,EADtB4hD,EAAO38C,EAAG9B,OACsB,MAAQy+C,EAAO,cAUnElB,EAAa1nD,UAAU6oD,iBAAmB,SAAUrsC,EAAQ0I,GACxD,OAAOxlB,KAAKgX,MAAMmxC,GAAyB,oBACtCl1C,QAAQ,CAAE,OAAU6J,EAAQ0I,aAAcA,KAOnDwiC,EAAa1nD,UAAU8oD,uBAAyB,SAAUtsC,EAAQusC,GAC9D,OAAOrpD,KAAKgX,MAAMmxC,GAAyB,0BACtCl1C,QAAQ,CAAE,OAAU6J,EAAQusC,MAAOA,KAE5CtgD,EAAW,CACPoS,GAAI,wBACL6sC,EAAa1nD,UAAW,mBAAoB,MAC/CyI,EAAW,CACPoS,GAAI,uBACL6sC,EAAa1nD,UAAW,kBAAmB,MAC9CyI,EAAW,CACPoS,GAAI,sBACL6sC,EAAa1nD,UAAW,iBAAkB,MAC7CyI,EAAW,CACPoS,GAAI,6BACL6sC,EAAa1nD,UAAW,wBAAyB,MACpDyI,EAAW,CACPoS,GAAI,wBACL6sC,EAAa1nD,UAAW,mBAAoB,MAC/CyI,EAAW,CACPoS,GAAI,wBACL6sC,EAAa1nD,UAAW,mBAAoB,MAC/CyI,EAAW,CACPoS,GAAI,2BACL6sC,EAAa1nD,UAAW,sBAAuB,MAClDyI,EAAW,CACPoS,GAAI,6BACL6sC,EAAa1nD,UAAW,wBAAyB,MACpDyI,EAAW,CACPoS,GAAI,8BACL6sC,EAAa1nD,UAAW,yBAA0B,MACrDyI,EAAW,CACPoS,GAAI,yBACL6sC,EAAa1nD,UAAW,oBAAqB,MAChDyI,EAAW,CACPoS,GAAI,qCACL6sC,EAAa1nD,UAAW,gCAAiC,MAC5DyI,EAAW,CACPoS,GAAI,yBACL6sC,EAAa1nD,UAAW,oBAAqB,MAChDyI,EAAW,CACPoS,GAAI,wBACL6sC,EAAa1nD,UAAW,mBAAoB,MAC/CyI,EAAW,CACPoS,GAAI,8BACL6sC,EAAa1nD,UAAW,yBAA0B,MAC9C0nD,EA5LsB,CA6L/B/oC,IAESqqC,GAAc,SAAU/rC,EAAS/B,GAAc,OAAO,IAAIwsC,GAAazqC,EAAS/B,IACvF2sC,GAA0B,SAAU5qC,EAAS/B,GAE7C,YADmB,IAAfA,IAAyBA,EAAa,IACnC8tC,GAAY/rC,EAAS/B,ICvMhC+L,GAAKjnB,UAAUipD,kBAAoB,SAAU/jC,GACzC,OAAO8jC,GAAYtpD,KAAM,IAAImpD,sBAAiBhoD,EAAWqkB,IAE7D+B,GAAKjnB,UAAUyoD,kBAAoB,SAAUvjC,GACzC,OAAO8jC,GAAYtpD,KAAM,IAAIgpD,8BAA8BxjC,IAE/D+B,GAAKjnB,UAAU8oD,uBAAyB,SAAUC,GAC9C,OAAOC,GAAYtpD,KAAM,IAAIopD,4BAAuBjoD,EAAWkoD,ICLnElgD,QAAQxJ,eAAesjB,GAAO3iB,UAAW,cAAe,CACpDY,cAAc,EACdtB,YAAY,EACZC,IAAK,WACD,OAAOG,KAAKwjB,iBAAgB,SAAUjX,GAClC,IAAIqB,EAAUrB,EAAGqB,QAAS2P,EAAUhR,EAAGgR,QAASnF,EAAU7L,EAAG6L,QAC7D,OAAOkxC,GAAY/rC,GAASvF,UAAUpK,GAASgK,WAAWQ,SCHtEzE,GAAQ4T,GAAM,aAAck7B,IAC5B9uC,GAAQ4T,GAAM,uBAAwBo7B,GAAW,wBACjDhvC,GAAQ4T,GAAM,wBAAyBo7B,GAAW,yBAClDhvC,GAAQ4T,GAAM,yBAA0Bo7B,GAAW,0BACnDp7B,GAAKjnB,UAAUkpD,8BAAgC,SAAUC,EAAeC,EAAWjF,EAAqBC,EAAgBiF,GAGpH,YAF4B,IAAxBlF,IAAkCA,GAAsB,QACrC,IAAnBC,IAA6BA,GAAiB,GAC3Cr7C,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAIukB,EACJ,OAAOna,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAAG,MAAO,CAAC,EAAaxK,KAAKwkD,qBAAqBC,EAAqBC,IAC5E,KAAK,EAMD,OALAn4C,EAAG9B,QACH8Z,EAAIvkB,KAAKgX,MAAM4M,GAAK,+EAClBpM,MAAMvW,IAAI,KAAM,IAAMyiB,GAAoBgmC,GAAa,IAAM,KAC/DnlC,EAAE/M,MAAMvW,IAAI,KAAM,IAAMyiB,GAAoBimC,GAAc,IAAM,KAChEplC,EAAE/M,MAAMvW,IAAI,KAAM,IAAMyiB,GAAoB+lC,GAAiB,IAAM,KAC5D,CAAC,EAAc/qC,GAAO6F,YClBjD,IAiHWqlC,GAjHPC,GAA8B,SAAU/7C,GAExC,SAAS+7C,EAAatsC,EAAS/B,QACR,IAAfA,IAAyBA,EAAa,IAC1C,IACIzU,EAAyB,iBAAZwW,EAAuBA,EAAUA,EAAQ1F,QAE1D,OADQ/J,EAAOtN,KAAKR,KAAMgb,GAAcjU,GAAM,+EAAiFyU,IAAexb,KAmGlJ,OAxGAwI,EAAUqhD,EAAc/7C,GAQxB+7C,EAAavpD,UAAU2S,QAAU,SAAUyN,GACvC,OAAOhC,GAAO1e,KAAMqK,GAAKqW,KAK7BmpC,EAAavpD,UAAUwpD,eAAiB,WACpC,OAAO9pD,KAAKgX,MAAM+yC,GAAyB,kBAAkB,GAAM92C,QAAQ,KAQ/E42C,EAAavpD,UAAU0pD,iBAAmB,SAAU7kC,EAAOG,EAAa+P,GACpE,OAAOr1B,KAAKgX,MAAM+yC,GAAyB,4DAA8DrmC,GAAoByB,GAAS,YAAczB,GAAoB4B,GAAe,KAClLrS,QAAQoiB,IAOjBw0B,EAAavpD,UAAU2pD,sBAAwB,SAAUv3C,GACrD,OAAO1S,KAAKgX,MAAM+yC,GAAyB,yBAAyB92C,QAAQ,CAAEP,GAAIA,KAOtFm3C,EAAavpD,UAAU4pD,iBAAmB,SAAUx3C,GAChD,OAAO1S,KAAKgX,MAAM+yC,GAAyB,oBAAoB92C,QAAQ,CAAEP,GAAIA,KASjFm3C,EAAavpD,UAAU6pD,iBAAmB,SAAU3B,EAAYnzB,GAI5D,OAHIA,IACAmzB,EAAW4B,QAAU/nD,KAAKC,UAAU+yB,IAEjCr1B,KAAKgX,MAAM+yC,GAAyB,oBAAoB92C,QAAQ,CAAEu1C,WAAYA,KAMzFqB,EAAavpD,UAAU+pD,sBAAwB,SAAUC,GACrD,OAAOtqD,KAAKgX,MAAM+yC,GAAyB,yBAAyB92C,QAAQ,CAAEq3C,QAASA,KAO3FT,EAAavpD,UAAUiqD,qBAAuB,SAAUztC,EAAQrK,GAC5D,OAAOzS,KAAKgX,MAAM+yC,GAAyB,wBAAwB92C,QAAQ,CAAE6J,OAAQA,EAAQrK,KAAMA,KAQvGo3C,EAAavpD,UAAUkqD,wBAA0B,SAAUC,GACvD,OAAOzqD,KAAKgX,MAAM+yC,GAAyB,2BAA2B92C,QAAQ,CAAEw3C,iBAAkBA,KAEtG1hD,EAAW,CACPoS,GAAI,sBACL0uC,EAAavpD,UAAW,iBAAkB,MAC7CyI,EAAW,CACPoS,GAAI,wBACL0uC,EAAavpD,UAAW,mBAAoB,MAC/CyI,EAAW,CACPoS,GAAI,6BACL0uC,EAAavpD,UAAW,wBAAyB,MACpDyI,EAAW,CACPoS,GAAI,wBACL0uC,EAAavpD,UAAW,mBAAoB,MAC/CyI,EAAW,CACPoS,GAAI,wBACL0uC,EAAavpD,UAAW,mBAAoB,MAC/CyI,EAAW,CACPoS,GAAI,6BACL0uC,EAAavpD,UAAW,wBAAyB,MACpDyI,EAAW,CACPoS,GAAI,4BACL0uC,EAAavpD,UAAW,uBAAwB,MACnDyI,EAAW,CACPoS,GAAI,+BACL0uC,EAAavpD,UAAW,0BAA2B,MAC/CupD,EAzGsB,CA0G/B5qC,IAESyrC,GAAc,SAAUntC,EAAS/B,GAAc,OAAO,IAAIquC,GAAatsC,EAAS/B,IACvFuuC,GAA0B,SAAUxsC,EAAS/B,GAE7C,YADmB,IAAfA,IAAyBA,EAAa,IACnCkvC,GAAYntC,EAAS/B,KAGhC,SAAWouC,GAIPA,EAAwBA,EAAiC,QAAI,GAAK,UAKlEA,EAAwBA,EAAiC,QAAI,GAAK,UAIlEA,EAAwBA,EAA8B,KAAI,GAAK,OAK/DA,EAAwBA,EAAgD,uBAAI,GAAK,yBAlBrF,CAmBGA,KAA4BA,GAA0B,KC1IzDriC,GAAKjnB,UAAUqqD,cAAgB,SAAUC,GACrC,OAAOF,GAAY1qD,KAAK6X,QAAS,IAAI0yC,0BAAqBppD,EAAWypD,ICIzE3gC,GAAM3pB,UAAUqqD,cAAgB,WAC5B,OAAOthD,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAIupC,EAAY5rB,EAAKktC,EACrB,OAAOzgD,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAAG,MAAO,CAAC,EAAaxK,KAAKgX,MAAMoS,IAAMmgB,WAAW1pC,OACzD,KAAK,EAED,OADA0pC,EAAah9B,EAAG9B,OACT,CAAC,EAAamZ,GAAI5I,GAAchb,KAAK6X,UAAUI,cAAcjY,MAAMuf,OAAO,OAAO1f,OAC5F,KAAK,EAGD,OAFA8d,EAAMpR,EAAG9B,OACTogD,EAAkBhmD,EAAQ8Y,EAAIyG,IAAK,QAASmlB,EAAWua,MAChD,CAAC,EAAc4G,GAAY1qD,KAAM,IAAIqqD,sBAAsBQ,YCdtF1hD,QAAQxJ,eAAesjB,GAAO3iB,UAAW,cAAe,CACpDY,cAAc,EACdtB,YAAY,EACZC,IAAK,WACD,OAAOG,KAAKwjB,iBAAgB,SAAUjX,GAClC,IAAIqB,EAAUrB,EAAGqB,QAAS2P,EAAUhR,EAAGgR,QAASnF,EAAU7L,EAAG6L,QAC7D,OAAOsyC,GAAYntC,GAASvF,UAAUpK,GAASgK,WAAWQ,SCLtEzE,GAAQ4T,GAAM,YAAa86B,IAC3B1uC,GAAQ4T,GAAM,cAAey6B,GAAU,eACvCz6B,GAAKjnB,UAAUwqD,WAAa,SAAUC,GAClC,OAAO1hD,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAI0C,EACJ,OAAO0H,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAAG,MAAO,CAAC,EAAakU,GAAO1e,KAAKgX,MAAM4M,GAAK,cAAevZ,GAAK,CAAE0gD,UAAWA,MACrF,KAAK,EAED,MAAO,CAAC,EAAc,CACdroD,KAFRA,EAAO6J,EAAG9B,OAGF+3C,KAAMR,GAAShhC,GAAate,cAMxD6kB,GAAKjnB,UAAU0qD,YAAc,SAAUt4C,GACnC,OAAOsvC,GAAShiD,KAAM,eAAiB0S,EAAK,MCjBhD,IA4LWu4C,GAYAC,GAyBAC,GAUAC,GA3OPC,GAAyB,SAAUv9C,GAEnC,SAASu9C,IACL,OAAkB,OAAXv9C,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KA0F/D,OA5FAwI,EAAU6iD,EAASv9C,GAInBpO,OAAOC,eAAe0rD,EAAQ/qD,UAAW,KAAM,CAC3CT,IAAK,WACD,OAAOyrD,GAAStrD,OAEpBJ,YAAY,EACZsB,cAAc,IAElBmqD,EAAQ/qD,UAAUirD,oBAAsB,WACpC,OAAOliD,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAIS,EACJ,OAAO2J,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAAG,MAAO,CAAC,EAAaxK,KAAKgX,MAAMw0C,GAAoB,oBAAoB3rD,OAChF,KAAK,EAED,MAAO,CAAC,GADRY,EAAI8L,EAAG9B,QACiBghD,kBAAoBhrD,WAKhE4qD,EAAQ/qD,UAAUorD,wBAA0B,WACxC,OAAOriD,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAIS,EACJ,OAAO2J,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAAG,MAAO,CAAC,EAAaxK,KAAKgX,MAAMw0C,GAAoB,wBAAwB3rD,OACpF,KAAK,EAED,MAAO,CAAC,GADRY,EAAI8L,EAAG9B,QACiBkhD,sBAAwBlrD,WAKpE4qD,EAAQ/qD,UAAUsrD,OAAS,SAAUC,GACjC,OAAOxiD,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,OAAOoK,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAAG,MAAO,CAAC,EAAakU,GAAO1e,KAAKgX,MAAMw0C,GAAoB,UAAWxrD,KAAK8rD,iCAAiCD,KACpH,KAAK,EAAG,MAAO,CAAC,EAAct/C,EAAG9B,gBAKjD4gD,EAAQ/qD,UAAUyrD,WAAa,SAAUF,GACrC,OAAOxiD,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,OAAOoK,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAAG,MAAO,CAAC,EAAakU,GAAO1e,KAAKgX,MAAMw0C,GAAoB,cAAexrD,KAAK8rD,iCAAiCD,KACxH,KAAK,EAAG,MAAO,CAAC,EAAct/C,EAAG9B,gBAKjD4gD,EAAQ/qD,UAAU0rD,cAAgB,SAAUH,GACxC,OAAOxiD,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,OAAOoK,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAAG,MAAO,CAAC,EAAakU,GAAO1e,KAAKgX,MAAMw0C,GAAoB,iBAAkBxrD,KAAK8rD,iCAAiCD,KAC3H,KAAK,EAAG,MAAO,CAAC,EAAct/C,EAAG9B,gBAKjD4gD,EAAQ/qD,UAAUwrD,iCAAmC,SAAUD,GAC3D,OAAOxhD,GAAK,CACR,MAAS3K,OAAOyI,OAAO2S,GAAS,6BAA8B,CAC1D6J,GAAI,MACLknC,MAGX9iD,EAAW,CACPoS,GAAI,4BACLkwC,EAAQ/qD,UAAW,sBAAuB,MAC7CyI,EAAW,CACPoS,GAAI,gCACLkwC,EAAQ/qD,UAAW,0BAA2B,MACjDyI,EAAW,CACPoS,GAAI,eACLkwC,EAAQ/qD,UAAW,SAAU,MAChCyI,EAAW,CACPoS,GAAI,mBACLkwC,EAAQ/qD,UAAW,aAAc,MACpCyI,EAAW,CACPoS,GAAI,sBACLkwC,EAAQ/qD,UAAW,gBAAiB,MAC7ByI,EAAW,CACjB+X,GAAY,0BACbuqC,GA5FqB,CA8F1B9qC,IAKS0rC,GAAS,SAAU1uC,GAAW,OAAO,IAAI8tC,GAAQ9tC,IACxDiuC,GAAqB,SAAUjuC,EAASzY,GAAS,OAAO,IAAIumD,GAAQ9tC,EAASzY,IAI7EonD,GAA2B,SAAUp+C,GAErC,SAASo+C,IACL,OAAkB,OAAXp+C,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAqE/D,OAvEAwI,EAAU0jD,EAAWp+C,GAIrBo+C,EAAU5rD,UAAU6rD,SAAW,SAAUC,GACrC,OAAO/iD,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAIS,EACJ,OAAO2J,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAAG,MAAO,CAAC,EAAaxK,KAAKgX,MAAMq1C,GAAsB,kBAAoBD,EAAQ,IAA7DpsD,IAC7B,KAAK,EAED,MAAO,CAAC,EAAcsH,EADtB7G,EAAI8L,EAAG9B,OACsB,YAAchK,EAAE6rD,SAASj2C,QAAU5V,WAKpFyrD,EAAU5rD,UAAUisD,cAAgB,SAAUH,GAC1C,OAAO/iD,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAIS,EACJ,OAAO2J,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAAG,MAAO,CAAC,EAAaxK,KAAKgX,MAAMq1C,GAAsB,uBAAyBD,EAAQ,IAAlEpsD,IAC7B,KAAK,EAED,MAAO,CAAC,GADRS,EAAI8L,EAAG9B,QACiB+hD,eAAiB/rD,WAK7DyrD,EAAU5rD,UAAUmsD,UAAY,WAC5B,OAAOpjD,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAIS,EACJ,OAAO2J,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAAG,MAAO,CAAC,EAAaxK,KAAKgX,MAAMq1C,GAAsB,YAAjCrsD,IAC7B,KAAK,EAED,MAAO,CAAC,EAAcsH,EADtB7G,EAAI8L,EAAG9B,OACsB,aAAehK,EAAEisD,UAAUr2C,QAAU5V,WAKtFyrD,EAAU5rD,UAAUqsD,YAAc,WAC9B,OAAOtjD,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAIS,EACJ,OAAO2J,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAAG,MAAO,CAAC,EAAaxK,KAAKgX,MAAMq1C,GAAsB,cAAjCrsD,IAC7B,KAAK,EAED,MAAO,CAAC,EAAcsH,EADtB7G,EAAI8L,EAAG9B,OACsB,eAAiBhK,EAAEmsD,YAAYv2C,QAAU5V,WAK1FsI,EAAW,CACPoS,GAAI,kBACL+wC,EAAU5rD,UAAW,WAAY,MACpCyI,EAAW,CACPoS,GAAI,uBACL+wC,EAAU5rD,UAAW,gBAAiB,MACzCyI,EAAW,CACPoS,GAAI,mBACL+wC,EAAU5rD,UAAW,YAAa,MACrCyI,EAAW,CACPoS,GAAI,qBACL+wC,EAAU5rD,UAAW,cAAe,MAC3ByI,EAAW,CACnB+X,GAAY,OACborC,GAvEuB,CAyE5B3rC,IAKS+qC,GAAWtsC,GAAmBktC,IACrCG,GAAuB,SAAU9uC,EAASvY,GAAQ,OAAOsmD,GAAS/tC,EAASvY,KAM/E,SAAWimD,GACPA,EAAgBA,EAAsB,KAAI,GAAK,OAC/CA,EAAgBA,EAA0B,SAAI,GAAK,WACnDA,EAAgBA,EAAsB,KAAI,GAAK,OAC/CA,EAAgBA,EAAqB,IAAI,GAAK,MAJlD,CAKGA,KAAoBA,GAAkB,KAOzC,SAAWC,GACPA,EAAiBA,EAAuB,KAAI,GAAK,OACjDA,EAAiBA,EAAuB,KAAI,GAAK,OACjDA,EAAiBA,EAA2B,SAAI,GAAK,WACrDA,EAAiBA,EAAuB,KAAI,GAAK,OACjDA,EAAiBA,EAAsB,IAAI,GAAK,MAIhDA,EAAiBA,EAA6C,2BAAI,WAAa,6BAI/EA,EAAiBA,EAAqC,mBAAI,WAAa,qBAIvEA,EAAiBA,EAAoC,kBAAI,YAAc,oBAjB3E,CAkBGA,KAAqBA,GAAmB,KAO3C,SAAWC,GACPA,EAAmBA,EAAuB,GAAI,GAAK,KACnDA,EAAmBA,EAAqC,iBAAI,GAAK,mBACjEA,EAAmBA,EAAiC,aAAI,GAAK,eAC7DA,EAAmBA,EAAkC,cAAI,GAAK,gBAJlE,CAKGA,KAAuBA,GAAqB,KAK/C,SAAWC,GAIPA,EAAiBA,EAAqB,GAAI,GAAK,KAI/CA,EAAiBA,EAAiC,eAAI,GAAK,iBAI3DA,EAAiBA,EAA+B,aAAI,GAAK,eAIzDA,EAAiBA,EAA+B,aAAI,GAAK,eAIzDA,EAAiBA,EAAmC,iBAAI,GAAK,mBAI7DA,EAAiBA,EAAkC,gBAAI,GAAK,kBAI5DA,EAAiBA,EAAgC,cAAI,GAAK,gBAI1DA,EAAiBA,EAAiC,eAAI,GAAK,iBAI3DA,EAAiBA,EAAmC,iBAAI,GAAK,mBAI7DA,EAAiBA,EAAuC,qBAAI,GAAK,uBAIjEA,EAAiBA,EAA6C,2BAAI,IAAM,6BAIxEA,EAAiBA,EAAoD,kCAAI,IAAM,oCAI/EA,EAAiBA,EAA2C,yBAAI,IAAM,2BAItEA,EAAiBA,EAA+B,aAAI,IAAM,eAI1DA,EAAiBA,EAAkC,gBAAI,IAAM,kBAI7DA,EAAiBA,EAA8B,YAAI,IAAM,cAIzDA,EAAiBA,EAAkC,gBAAI,IAAM,kBAI7DA,EAAiBA,EAAuC,qBAAI,IAAM,uBAIlEA,EAAiBA,EAAgC,cAAI,IAAM,gBA5E/D,CA6EGA,KAAqBA,GAAmB,KC9T3CjiD,QAAQxJ,eAAesjB,GAAO3iB,UAAW,SAAU,CAC/CY,cAAc,EACdtB,YAAY,EACZC,IAAK,WACD,OAAOG,KAAKwjB,iBAAgB,SAAUjX,GAClC,IAAIqB,EAAUrB,EAAGqB,QAAS2P,EAAUhR,EAAGgR,QAASnF,EAAU7L,EAAG6L,QAC7D,OAAO6zC,GAAO1uC,GAASvF,UAAUpK,GAASgK,WAAWQ,SCEjE,IAAIy0C,GAA4B,SAAU/+C,GAEtC,SAAS++C,EAAWtvC,EAAS/B,GACzB,IACIzU,EAAyB,iBAAZwW,EAAuBA,EAAUA,EAAQ1F,QAE1D,OADQ/J,EAAOtN,KAAKR,KAAMgb,GAAcjU,GAAM,6BAA+ByU,IAAexb,KAiGhG,OArGAwI,EAAUqkD,EAAY/+C,GAOtB++C,EAAWvsD,UAAUwsD,OAAS,SAAUpsC,GACpC,OAAOhC,GAAO1e,KAAMqK,GAAKqW,KAE7BmsC,EAAWvsD,UAAU4lD,UAAY,SAAUxlC,GACvC,IAAI/c,EAAS,CACTgkB,WAAY,EAAO7M,GAAS,gCAAiC,CACzDiyC,KAAMrsC,EAAMqsC,KACZC,KAAMtsC,EAAMssC,KACZC,QAASvsC,EAAMusC,WAuBvB,OApBIvsC,EAAMwsC,IAAMxsC,EAAMwsC,GAAGxrD,OAAS,IAC9BiC,EAAOgkB,WAAa,EAAOhkB,EAAOgkB,WAAY,CAC1CulC,GAAI,CAAE72C,QAASqK,EAAMwsC,OAGzBxsC,EAAMysC,IAAMzsC,EAAMysC,GAAGzrD,OAAS,IAC9BiC,EAAOgkB,WAAa,EAAOhkB,EAAOgkB,WAAY,CAC1CwlC,GAAI,CAAE92C,QAASqK,EAAMysC,OAGzBzsC,EAAM0sC,KAAO1sC,EAAM0sC,IAAI1rD,OAAS,IAChCiC,EAAOgkB,WAAa,EAAOhkB,EAAOgkB,WAAY,CAC1CylC,IAAK,CAAE/2C,QAASqK,EAAM0sC,QAG1B1sC,EAAM2sC,oBACN1pD,EAAOgkB,WAAa,EAAOhkB,EAAOgkB,WAAY,CAC1C0lC,kBAAmBh9B,GAA6B3P,EAAM2sC,sBAGvDlyC,GAAInD,UAAUhY,KAAKgX,MAAMs2C,GAAuB,aAAa,GAAO,eAAeR,OAAOnpD,IAErGkpD,EAAWvsD,UAAUitD,6BAA+B,WAChD,OAAOpyC,GAAInD,UAAUhY,KAAKgX,MAAMs2C,GAAuB,gCAAgC,GAAO,kCAAkCR,OAAO,KAE3ID,EAAWvsD,UAAUktD,iBAAmB,SAAU58B,EAAO68B,EAAQC,EAASC,EAAkBC,EAAmBC,QACjF,IAAtBA,IAAgCA,GAAoB,GACxD,IAAIlqD,EAAS,CACTiqD,kBAAmBA,EACnBh9B,MAAOA,EACP+8B,iBAAkBA,EAClBE,kBAAmBA,EACnBJ,OAAQA,EACRC,QAASA,GAET12C,EAAQhX,KAAKgX,MAAMs2C,GAAuB,oCAAoC,GAClF,OAAOnyC,GAAInD,UAAUhB,EAAO,sCAAsC81C,OAAOnpD,IAE7EkpD,EAAWvsD,UAAUwtD,iBAAmB,SAAUl9B,EAAO68B,EAAQC,EAAS9K,EAAW1M,GACjF,IAAIvyC,EAAS,CACTi/C,UAAWA,EACXhyB,MAAOA,EACPslB,SAAUA,EACVuX,OAAQA,EACRC,QAASA,GAET12C,EAAQhX,KAAKgX,MAAMs2C,GAAuB,mCAAmC,GACjF,OAAOnyC,GAAInD,UAAUhB,EAAO,qCAAqC81C,OAAOnpD,IAE5EkpD,EAAWvsD,UAAUytD,6BAA+B,SAAUC,GAC1D,IAAIrqD,EAAS,CACTqqD,YAAaA,GAEbh3C,EAAQhX,KAAKgX,MAAMs2C,GAAuB,gCAAgC,GAC9E,OAAOnyC,GAAInD,UAAUhB,EAAO,kCAAkC81C,OAAOnpD,IAEzEkpD,EAAWvsD,UAAU2tD,yBAA2B,SAAUC,EAAQhY,QAC7C,IAAbA,IAAuBA,EAAW,IACtC,IAAIvyC,EAAS,CACTuqD,OAAQA,EACRhY,SAAUA,GAEVl/B,EAAQhX,KAAKgX,MAAMs2C,GAAuB,4BAA4B,GAC1E,OAAOnyC,GAAInD,UAAUhB,EAAO,8BAA8B81C,OAAOnpD,IAErEkpD,EAAWvsD,UAAU6tD,eAAiB,SAAU17C,GAC5C,OAAOpJ,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAIgX,EAAOkvB,EACX,OAAO97B,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAED,OADAwM,EAAQhX,KAAKgX,MAAMs2C,GAAuB,8BAA8B,GACjE,CAAC,EAAanyC,GAAInD,UAAUhB,EAAO,gCAAgC81C,OAAO,CAAEpiC,WAAYjY,KACnG,KAAK,EAED,MAAO,CAAC,EAAc,CACd/P,KAFRwjC,EAAU35B,EAAG9B,OAGL+qB,KAAMJ,GAAKpU,GAAaklB,cAM7C2mB,EAtGoB,CAuG7B5tC,IAESmvC,GAAYpvC,GAAmB6tC,IACtCS,GAAwB,SAAU/vC,EAASvY,GAAQ,OAAOopD,GAAU7wC,EAASvY,IClHjFmE,QAAQxJ,eAAesjB,GAAO3iB,UAAW,UAAW,CAChDY,cAAc,EACdtB,YAAY,EACZC,IAAK,WACD,OAAOG,KAAKwjB,iBAAgB,SAAUjX,GAClC,IAAIqB,EAAUrB,EAAGqB,QAAS2P,EAAUhR,EAAGgR,QAASnF,EAAU7L,EAAG6L,QAC7D,OAAOg2C,GAAU7wC,EAAS,IAAIvF,UAAUpK,GAASgK,WAAWQ,SCHxE,IAAIi2C,GAAgC,SAAUvgD,GAE1C,SAASugD,IACL,OAAkB,OAAXvgD,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KA6C/D,OA/CAwI,EAAU6lD,EAAgBvgD,GAS1BugD,EAAe/tD,UAAU6oB,QAAU,SAAUmlC,GACzC,OAAOnzC,GAAInD,UAAUu2C,GAAavuD,MAAM8X,OAAO,KAAOw2C,EAAiB,MAAO,iBASlFD,EAAe/tD,UAAUqQ,IAAM,SAAU69C,EAAiBC,EAAgBC,GACtE,OAAOrlD,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAI8jB,EAAUphB,EACd,OAAO0H,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EASD,OARAsZ,EAAW,CACP,mBAAsB2qC,EACtB,gBAAmBD,EACnB,SAAYxuD,KAAK6X,SAEjB62C,IACA5qC,EAAS4qC,YAAcA,GAEpB,CAAC,EAAahwC,GAAO1e,KAAMqK,GAAKyZ,EAAU7W,GAAQ,CAAE,eAAgB,wBAC/E,KAAK,EAED,MAAO,CAAC,EAAc,CAAEvK,KADxBA,EAAO6J,EAAG9B,OAC0BkkD,aAAc3uD,KAAKmpB,QAAQzmB,EAAKgQ,cAKxF3J,EAAW,CACPoS,GAAI,aACLkzC,EAAe/tD,UAAW,MAAO,MACnByI,EAAW,CACxB+X,GAAY,kBACbutC,GA/C4B,CAiDjCruC,IAES4uC,GAAgB5vC,GAAmBqvC,IAC1CQ,GAA+B,SAAU/gD,GAEzC,SAAS+gD,IACL,OAAkB,OAAX/gD,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KA8C/D,OAhDAwI,EAAUqmD,EAAe/gD,GAWzB+gD,EAAcvuD,UAAUonB,OAAS,SAAU+mC,EAAgBD,EAAiBE,GACxE,OAAOrlD,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAI8jB,EACJ,OAAO1Z,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAWD,OAVAsZ,EAAW,GACP2qC,IACA3qC,EAASgrC,mBAAqBL,GAE9BD,IACA1qC,EAAS0qC,gBAAkBA,GAE3BE,IACA5qC,EAAS4qC,YAAcA,GAEpB,CAAC,EAAa9vC,GAAQ5e,KAAMqK,GAAKyZ,EAAU7W,GAAQ,CAAE,eAAgB,wBAChF,KAAK,EAED,MAAO,CAAC,EAAc,CAAEvK,KADjB6J,EAAG9B,OAC0BkkD,aAAc3uD,eAStE6uD,EAAcvuD,UAAU6O,OAAS,WAC7B,OAAOwP,GAAS3e,OAEpB+I,EAAW,CACPoS,GAAI,eACL0zC,EAAcvuD,UAAW,SAAU,MACtCyI,EAAW,CACPoS,GAAI,eACL0zC,EAAcvuD,UAAW,SAAU,MAC/BuuD,EAjDuB,CAkDhCtuC,IAESguC,GAAevvC,GAAmB6vC,IC3G7Cl7C,GAAQsW,GAAO,gBAAiB2kC,ICMhC,IAAIG,GAA4B,SAAUjhD,GAEtC,SAASihD,IACL,OAAkB,OAAXjhD,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAyB/D,OA3BAwI,EAAUumD,EAAYjhD,GAItBpO,OAAOC,eAAeovD,EAAWzuD,UAAW,SAAU,CAIlDT,IAAK,WACD,OAAOsb,GAAInD,UAAUg3C,GAAWhvD,MAAO,gBAE3CJ,YAAY,EACZsB,cAAc,IAElBxB,OAAOC,eAAeovD,EAAWzuD,UAAW,OAAQ,CAIhDT,IAAK,WACD,OAAOsb,GAAInD,UAAUi3C,GAASjvD,MAAO,cAEzCJ,YAAY,EACZsB,cAAc,IAEL6H,EAAW,CACpB+X,GAAY,wBACbiuC,GA3BwB,CA6B7BxuC,IAES2uC,GAAYlwC,GAAmB+vC,IACtCI,GAA6B,SAAUrhD,GAEvC,SAASqhD,IACL,OAAkB,OAAXrhD,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAa/D,OAfAwI,EAAU2mD,EAAarhD,GASvBqhD,EAAY7uD,UAAU6oB,QAAU,SAAUzW,GACtC,OAAOyI,GAAInD,UAAUo3C,GAAUpvD,KAAM0S,GAAK,kBAEhC3J,EAAW,CACrB+X,GAAY,WACbquC,GAfyB,CAiB9BnvC,IAESgvC,GAAahwC,GAAmBmwC,IACvCE,GAA4B,SAAUvhD,GAEtC,SAASuhD,IACL,OAAkB,OAAXvhD,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAY/D,OAdAwI,EAAU6mD,EAAYvhD,GAItBpO,OAAOC,eAAe0vD,EAAW/uD,UAAW,OAAQ,CAIhDT,IAAK,WACD,OAAOsb,GAAInD,UAAUi3C,GAASjvD,KAAM,QAAS,cAEjDJ,YAAY,EACZsB,cAAc,IAEXmuD,EAfoB,CAgB7B9uC,IAES6uC,GAAYpwC,GAAmBqwC,IACtCC,GAA2B,SAAUxhD,GAErC,SAASwhD,IACL,OAAkB,OAAXxhD,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAa/D,OAfAwI,EAAU8mD,EAAWxhD,GASrBwhD,EAAUhvD,UAAU6oB,QAAU,SAAUzW,GACpC,OAAOyI,GAAInD,UAAUu3C,GAAQvvD,KAAM0S,GAAK,iBAEhC3J,EAAW,CACnB+X,GAAY,SACbwuC,GAfuB,CAiB5BtvC,IAESivC,GAAWjwC,GAAmBswC,IACrCE,GAA0B,SAAU1hD,GAEpC,SAAS0hD,IACL,OAAkB,OAAX1hD,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAuH/D,OAzHAwI,EAAUgnD,EAAU1hD,GAIpBpO,OAAOC,eAAe6vD,EAASlvD,UAAW,QAAS,CAI/CT,IAAK,WACD,OAAO4vD,GAAMzvD,OAEjBJ,YAAY,EACZsB,cAAc,IAElBxB,OAAOC,eAAe6vD,EAASlvD,UAAW,cAAe,CACrDT,IAAK,WACD,OAAOsb,GAAInD,UAAUo3C,GAAUpvD,KAAM,eAAgB,qBAEzDJ,YAAY,EACZsB,cAAc,IAElBxB,OAAOC,eAAe6vD,EAASlvD,UAAW,WAAY,CAClDT,IAAK,WACD,OAAOsb,GAAInD,UAAU03C,GAAS1vD,MAAO,kBAEzCJ,YAAY,EACZsB,cAAc,IAElBxB,OAAOC,eAAe6vD,EAASlvD,UAAW,YAAa,CACnDT,IAAK,WACD,OAAOsb,GAAInD,UAAU23C,GAAU3vD,MAAO,mBAE1CJ,YAAY,EACZsB,cAAc,IAElBsuD,EAASlvD,UAAUsvD,YAAc,SAAUl9C,GACvC,OAAOyI,GAAInD,UAAUhY,KAAKgX,MAAM64C,GAAM,SAAWn9C,GAAK,qBAM1D88C,EAASlvD,UAAUwvD,4BAA8B,WAC7C,OAAOzmD,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAI+vD,EAASC,EAAMC,EAAaC,EAC5BlkD,EAAQhM,KACZ,OAAOoK,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAAG,MAAO,CAAC,EAAaxK,KAAKuf,OAAO,IAAK,kBAAjBvf,IAC7B,KAAK,EAgED,OA/DA+vD,EAAUxjD,EAAG9B,OAEbwlD,EAAc,SAAUE,EAAOC,EAAOC,GAElC,IAAKlqD,EAAQiqD,KAAWjqD,EAAQkqD,GAC5B,OAAOF,EAEX,IAAIG,EAAW,KACf,GAAc,OAAVF,GAAkBC,EAAS3uD,OAAS,EACpC4uD,EAAWllD,EAAc,GAAIF,EAAOmlD,QAEnC,CACD,IAAIlgD,EAAQigD,EAAM1wB,WAAU,SAAU/4B,GAAK,OAAOA,EAAE4pD,QAAUR,EAAQr9C,MAClEvC,GAAS,IACTmgD,EAAWllD,EAAc,GAAIF,EAAOklD,EAAMjgD,GAAO2rB,SAGzD,GAAiB,OAAbw0B,EAAmB,CACnB,IAAIE,EAAoB,GAYxB,OAXAF,EAAS3uD,SAAQ,SAAUlC,GACvB,IAAIgxD,EAAQN,EAAMpkB,MAAK,SAAU2kB,GAAM,OAAOjxD,IAAMixD,EAAGh+C,MACnD+9C,GACAD,EAAkB5tD,KAAK6tD,MAO/BD,EAAkB5tD,KAAKgB,MAAM4sD,EAAmBplD,EAAc,GAAIF,EAAOilD,EAAMprD,QAAO,SAAU0N,GAAQ,OAAO69C,EAAS1kD,QAAQ6G,EAAKC,IAAM,QACpI89C,EAEX,OAAOL,GA+BJ,CAAC,GA7BRD,EAAU,SAAU3pD,EAAQuZ,GAAU,OAAOzW,EAAU2C,OAAO,OAAQ,GAAQ,WAC1E,IAAI2kD,EAAUprD,EAAGqrD,EAAOC,EACxB,OAAOzmD,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAAG,MAAO,CAAC,EAAajE,EAAOoqD,SAASpxC,OAAO,IAAK,kBAA5BhZ,IAC7B,KAAK,EACDoqD,EAAWpkD,EAAG9B,OACdlF,EAAI,EACJgH,EAAG/B,MAAQ,EACf,KAAK,EACD,OAAMjF,EAAIorD,EAASjvD,QACnBkvD,EAAQD,EAASprD,GACjBsrD,EAAchoD,EAAS,CAAE8nD,SAAU,GAAIG,aAAcF,EAAMG,OAAOhlB,MAAK,SAAUilB,GAAK,OAAOA,EAAEC,aAAc/jD,MAAQ0jD,GAC/GA,EAAMM,cAAgB,EACrB,CAAC,EAAahB,EAAQlwD,KAAK4vD,YAAYe,EAASprD,GAAGmN,IAAKm+C,EAAYF,WADpC,CAAC,EAAa,IAHlB,CAAC,EAAa,GAKrD,KAAK,EACDpkD,EAAG9B,OACHomD,EAAYF,SAAWV,EAAYY,EAAYF,SAAUC,EAAMO,iBAC/D5kD,EAAG/B,MAAQ,EACf,KAAK,EACDsV,EAAOld,KAAKiuD,GACZtkD,EAAG/B,MAAQ,EACf,KAAK,EAED,OADAjF,IACO,CAAC,EAAa,GACzB,KAAK,EAAG,MAAO,CAAC,YAICvF,KA9D7BgwD,EAAO,KA+DX,KAAK,EAED,OADAzjD,EAAG9B,OACI,CAAC,EAAcwlD,EAAYD,EAAM,KAAMD,EAAQoB,0BAKnE3B,EA1HkB,CA2H3BjvC,IAESgvC,GAAUvwC,GAAmBwwC,IACpC4B,GAA2B,SAAUtjD,GAErC,SAASsjD,IACL,OAAkB,OAAXtjD,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAK/D,OAPAwI,EAAU4oD,EAAWtjD,GAIT/E,EAAW,CACnB+X,GAAY,aACbswC,GAPuB,CAS5BpxC,IAES0vC,GAAW1wC,GAAmBoyC,IACrCC,GAAwB,SAAUvjD,GAElC,SAASujD,IACL,OAAkB,OAAXvjD,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAa/D,OAfAwI,EAAU6oD,EAAQvjD,GASlBujD,EAAO/wD,UAAU6oB,QAAU,SAAUzW,GACjC,OAAOm9C,GAAK7vD,KAAM0S,IAEb3J,EAAW,CAChB+X,GAAY,UACbuwC,GAfoB,CAiBzBrxC,IAESyvC,GAAQzwC,GAAmBqyC,IAClCC,GAAuB,SAAUxjD,GAEjC,SAASwjD,IACL,OAAkB,OAAXxjD,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAuB/D,OAzBAwI,EAAU8oD,EAAOxjD,GAIjBpO,OAAOC,eAAe2xD,EAAMhxD,UAAW,WAAY,CAC/CT,IAAK,WACD,OAAOsb,GAAInD,UAAU03C,GAAS1vD,MAAO,iBAEzCJ,YAAY,EACZsB,cAAc,IAElBxB,OAAOC,eAAe2xD,EAAMhxD,UAAW,YAAa,CAChDT,IAAK,WACD,OAAOsb,GAAInD,UAAU23C,GAAU3vD,MAAO,kBAE1CJ,YAAY,EACZsB,cAAc,IAElBxB,OAAOC,eAAe2xD,EAAMhxD,UAAW,MAAO,CAC1CT,IAAK,WACD,OAAOsb,GAAInD,UAAUu3C,GAAQvvD,KAAM,OAAQ,YAE/CJ,YAAY,EACZsB,cAAc,IAEXowD,EA1Be,CA2BxB/wC,IAESsvC,GAAO7wC,GAAmBsyC,IACjCC,GAA4B,SAAUzjD,GAEtC,SAASyjD,IACL,OAAkB,OAAXzjD,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAa/D,OAfAwI,EAAU+oD,EAAYzjD,GAStByjD,EAAWjxD,UAAU6oB,QAAU,SAAUzW,GACrC,OAAOyI,GAAInD,UAAUw5C,GAASxxD,KAAM0S,GAAK,iBAEhC3J,EAAW,CACpB+X,GAAY,cACbywC,GAfwB,CAiB7BvxC,IAES2vC,GAAY3wC,GAAmBuyC,IACtCE,GAA2B,SAAU3jD,GAErC,SAAS2jD,IACL,OAAkB,OAAX3jD,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAuB/D,OAzBAwI,EAAUipD,EAAW3jD,GAIrBpO,OAAOC,eAAe8xD,EAAUnxD,UAAW,WAAY,CACnDT,IAAK,WACD,OAAOsb,GAAInD,UAAU63C,GAAK7vD,KAAM,YAAa,iBAEjDJ,YAAY,EACZsB,cAAc,IAElBxB,OAAOC,eAAe8xD,EAAUnxD,UAAW,SAAU,CACjDT,IAAK,WACD,OAAOsb,GAAInD,UAAU63C,GAAK7vD,KAAM,UAAW,eAE/CJ,YAAY,EACZsB,cAAc,IAElBxB,OAAOC,eAAe8xD,EAAUnxD,UAAW,MAAO,CAC9CT,IAAK,WACD,OAAOsb,GAAInD,UAAUu3C,GAAQvvD,KAAM,OAAQ,YAE/CJ,YAAY,EACZsB,cAAc,IAEXuwD,EA1BmB,CA2B5BlxC,IAESixC,GAAWxyC,GAAmByyC,IC9UzCtoD,QAAQxJ,eAAesjB,GAAO3iB,UAAW,YAAa,CAClDY,cAAc,EACdtB,YAAY,EACZC,IAAK,WACD,OAAOG,KAAKwjB,iBAAgB,SAAUjX,GAClC,IAAIqB,EAAUrB,EAAGqB,QAAS2P,EAAUhR,EAAGgR,QAASnF,EAAU7L,EAAG6L,QAC7D,OAAO82C,GAAU3xC,GAASvF,UAAUpK,GAASgK,WAAWQ,SCNpEzE,GAAQsW,GAAO,oBAAqB+vB,ICApCrmC,GAAQ4T,GAAM,oBAAqByyB,ICAnCrmC,GAAQgQ,GAAO,oBAAqBq2B,ICIpC,IA0KW0X,GA1KPC,GAAwB,SAAU7jD,GAElC,SAAS6jD,IACL,OAAkB,OAAX7jD,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAsD/D,OAxDAwI,EAAUmpD,EAAQ7jD,GAWlB6jD,EAAOrxD,UAAUqQ,IAAM,SAAUwU,EAAOysC,EAAcroC,GAGlD,YAFqB,IAAjBqoC,IAA2BA,GAAe,QACnB,IAAvBroC,IAAiCA,EAAqB,IACnDlgB,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAI8jB,EAAUphB,EACd,OAAO0H,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAKD,OAJAsZ,EAAWzZ,GAAK3K,OAAOyI,OAAO2S,GAAS,WAAY,CAC/C,aAAgB82C,EAChB,MAASzsC,GACVoE,IACI,CAAC,EAAa7K,GAAO1e,KAAKgX,MAAM66C,GAAO,MAAO/tC,IACzD,KAAK,EAED,MAAO,CAAC,EAAc,CACdphB,KAFRA,EAAO6J,EAAG9B,OAGFqnD,KAAM9xD,KAAKmpB,QAAQzmB,EAAKiiB,cAWpDgtC,EAAOrxD,UAAU6oB,QAAU,SAAUzW,GACjC,OAAO+0C,GAAKznD,MAAM8X,OAAO,KAAOpF,EAAK,OAOzCi/C,EAAOrxD,UAAU+oB,WAAa,SAAUlE,GACpC,OAAOsiC,GAAKznD,KAAM,eAAiBmlB,EAAQ,OAE/Cpc,EAAW,CACPoS,GAAI,WACLw2C,EAAOrxD,UAAW,MAAO,MACnByI,EAAW,CAChB+X,GAAY,UACb6wC,GAxDoB,CA0DzB3xC,IAES6xC,GAAQ7yC,GAAmB2yC,IAClCI,GAAuB,SAAUjkD,GAEjC,SAASikD,IACL,IAAI/lD,EAAmB,OAAX8B,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAQhE,OAPAgM,EAAMmD,OAASyR,GAAW,MAM1B5U,EAAM0b,OAAS1b,EAAMwU,QAAQ,WAAW,SAAU9d,GAAQ,MAAO,CAAGA,KAAMA,EAAMovD,KAAM9lD,MAC/EA,EA8BX,OAxCAxD,EAAUupD,EAAOjkD,GAYjBpO,OAAOC,eAAeoyD,EAAMzxD,UAAW,SAAU,CAC7CT,IAAK,WACD,OAAOmyD,GAAWhyD,OAEtBJ,YAAY,EACZsB,cAAc,IAMlB6wD,EAAMzxD,UAAU2xD,aAAe,WAC3B,OAAOjyD,KAAKgX,MAAMywC,GAAM,eAAjBznD,IAOX+xD,EAAMzxD,UAAU4xD,WAAa,SAAU3nC,GACnC,OAAO7L,GAAO1e,KAAKgX,MAAMywC,GAAM,cAAep9C,GAAK,CAAEkgB,QAASA,MAElExhB,EAAW,CACPoS,GAAI,mBACL42C,EAAMzxD,UAAW,eAAgB,MACpCyI,EAAW,CACPoS,GAAI,iBACL42C,EAAMzxD,UAAW,aAAc,MAC3ByxD,EAzCe,CA0CxBxxC,IAESknC,GAAOzoC,GAAmB+yC,IACjCI,GAA6B,SAAUrkD,GAEvC,SAASqkD,IACL,OAAkB,OAAXrkD,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAyD/D,OA3DAwI,EAAU2pD,EAAarkD,GAOvBqkD,EAAY7xD,UAAU8xD,aAAe,WACjC,OAAOpyD,KAAKgX,MAAMg7C,GAAY,YAAvBhyD,IAOXmyD,EAAY7xD,UAAUqQ,IAAM,SAAU0hD,GAClC,OAAO3zC,GAAO1e,KAAKgX,MAAMg7C,GAAY,iBAAmBK,EAA2B,QAQvFF,EAAY7xD,UAAUgyD,KAAO,SAAUlkB,EAAOj+B,GAC1C,OAAOuO,GAAO1e,KAAKgX,MAAMg7C,GAAY,mBAAoB3nD,GAAK,CAAE+jC,MAAOA,EAAOj+B,MAAOA,MAKzFgiD,EAAY7xD,UAAUiyD,UAAY,WAC9B,OAAO7zC,GAAO1e,KAAKgX,MAAMg7C,GAAY,yBAOzCG,EAAY7xD,UAAUw6B,OAAS,SAAU03B,GACrC,OAAO9zC,GAAO1e,KAAKgX,MAAMg7C,GAAY,oBAAsBQ,EAAoB,QAEnFzpD,EAAW,CACPoS,GAAI,qBACLg3C,EAAY7xD,UAAW,eAAgB,MAC1CyI,EAAW,CACPoS,GAAI,YACLg3C,EAAY7xD,UAAW,MAAO,MACjCyI,EAAW,CACPoS,GAAI,aACLg3C,EAAY7xD,UAAW,OAAQ,MAClCyI,EAAW,CACPoS,GAAI,kBACLg3C,EAAY7xD,UAAW,YAAa,MACvCyI,EAAW,CACPoS,GAAI,eACLg3C,EAAY7xD,UAAW,SAAU,MACtByI,EAAW,CACrB+X,GAAY,eACbqxC,GA3DyB,CA6D9BnyC,IAESgyC,GAAahzC,GAAmBmzC,KAE3C,SAAWT,GACPA,EAAUA,EAAwB,aAAI,GAAK,eAC3CA,EAAUA,EAAqB,UAAI,GAAK,YACxCA,EAAUA,EAAwB,aAAI,GAAK,eAC3CA,EAAUA,EAAqB,UAAI,GAAK,YAJ5C,CAKGA,KAAcA,GAAY,KCpL7B/9C,GAAQsW,GAAO,QAAS4nC,IACxBl+C,GAAQsW,GAAO,cAAew9B,GAAM,eACpCx9B,GAAM3pB,UAAUmyD,QAAU,SAAUC,GAChC,OAAOjL,GAAKznD,KAAM,YAAc0yD,EAAS,OCD7C,IA2GWC,GA3GPC,GAAwC,SAAU9kD,GAElD,SAAS8kD,IACL,OAAkB,OAAX9kD,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAsB/D,OAxBAwI,EAAUoqD,EAAwB9kD,GAIlCpO,OAAOC,eAAeizD,EAAuBtyD,UAAW,QAAS,CAC7DT,IAAK,WACD,OAAOsb,GAAInD,UAAU+H,GAAoB/f,KAAM,SAAU,YAE7DJ,YAAY,EACZsB,cAAc,IAElBxB,OAAOC,eAAeizD,EAAuBtyD,UAAW,WAAY,CAChET,IAAK,WACD,OAAOgzD,GAAmB7yD,KAAM,aAEpCJ,YAAY,EACZsB,cAAc,IAElB0xD,EAAuBtyD,UAAU+L,OAAS,SAAUqG,GAChD,OAAOgM,GAAO1e,KAAKgX,MAAM87C,GAAmC,iBAAkBzoD,GAAK,CAAEw7B,UAAWnzB,MAEpGkgD,EAAuBtyD,UAAUgnC,OAAS,SAAUgC,GAChD,OAAO5qB,GAAO1e,KAAKgX,MAAM87C,GAAmC,iBAAkBzoD,GAAK,CAAE0oD,WAAYzpB,MAE9FspB,EAzBgC,CA0BzC3zC,IAES+zC,GAAwB,SAAUz1C,EAASvY,GAAQ,OAAO,IAAI4tD,GAAuBr1C,EAASvY,IACrG8tD,GAAoC,SAAUv1C,EAASvY,GAAQ,OAAOguD,GAAsBz1C,EAASvY,IACrGiuD,GAAqC,SAAUnlD,GAE/C,SAASmlD,IACL,OAAkB,OAAXnlD,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAkB/D,OApBAwI,EAAUyqD,EAAqBnlD,GAS/BmlD,EAAoB3yD,UAAU6oB,QAAU,SAAUzW,GAC9C,OAAOwgD,GAAkBlzD,KAAM,YAAc0S,EAAK,OAOtDugD,EAAoB3yD,UAAU6yD,eAAiB,SAAUzgD,GACrD,OAAOwgD,GAAkBlzD,KAAM,mBAAqB0S,EAAK,OAEtDugD,EArB6B,CAsBtCjzC,IAES6yC,GAAqB7zC,GAAmBi0C,IAC/CG,GAAoC,SAAUtlD,GAE9C,SAASslD,IACL,OAAkB,OAAXtlD,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KA6C/D,OA/CAwI,EAAU4qD,EAAoBtlD,GAI9BpO,OAAOC,eAAeyzD,EAAmB9yD,UAAW,UAAW,CAI3DT,IAAK,WACD,OAAO8gB,GAA4B3gB,KAAM,YAE7CJ,YAAY,EACZsB,cAAc,IAKlBkyD,EAAmB9yD,UAAU+yD,YAAc,WACvC,OAAO30C,GAAO1e,KAAKgX,MAAMk8C,GAAmB,wBAQhDE,EAAmB9yD,UAAUq3B,OAAS,SAAU27B,EAAQ7tB,GACpD,OAAO/mB,GAAO1e,KAAKgX,MAAMk8C,GAAmB,yBAA2BI,EAAS,gBAAkB7tB,EAAY,OAKlH2tB,EAAmB9yD,UAAUizD,MAAQ,WACjC,OAAO70C,GAAO1e,KAAKgX,MAAMk8C,GAAmB,kBAKhDE,EAAmB9yD,UAAUkzD,KAAO,WAChC,OAAO90C,GAAO1e,KAAKgX,MAAMk8C,GAAmB,iBAKhDE,EAAmB9yD,UAAU6O,OAAS,WAClC,OAAOuP,GAAO1e,KAAKgX,MAAMk8C,GAAmB,mBAEzCE,EAhD4B,CAiDrC7yC,IAES2yC,GAAoBl0C,GAAmBo0C,KAElD,SAAWT,GACPA,EAA6BA,EAAmC,KAAI,GAAK,OACzEA,EAA6BA,EAAqC,OAAI,GAAK,SAF/E,CAGGA,KAAiCA,GAA+B,KClHnEt8B,GAAM/1B,UAAUmzD,yBAA2B,SAAUC,GAEjD,YADc,IAAVA,IAAoBA,EAAQf,GAA6BgB,QACtDX,GAAsBhzD,KAAM,kCAAoC0zD,EAAQ,MCmE5E,IAAI,GAAK,IAAIzwC,GC/Db,SAAS,GAAYje,GAExB,OAAO,SAAUsB,GACb,OAAsB,SAAUwH,GAE5B,SAASiT,IAEL,IADA,IAAIlM,EAAO,GACFrT,EAAK,EAAGA,EAAKC,UAAUC,OAAQF,IACpCqT,EAAKrT,GAAMC,UAAUD,GAEzB,OAAOsM,EAAOtN,KAAKR,KAAM6U,EAAK,GAAIA,EAAKnT,OAAS,QAAiBP,IAAZ0T,EAAK,GAAmBA,EAAK,GAAK7P,IAAShF,KAEpG,OARAwI,EAAUuY,EAASjT,GAQZiT,EATU,CAUnBza,IAMH,SAAS,KAEZ,OAAO,SAAUA,GACb,OAAsB,SAAUwH,GAE5B,SAAS8lD,IACL,OAAkB,OAAX9lD,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAK/D,OAPAwI,EAAUorD,EAAS9lD,GAInB8lD,EAAQtzD,UAAU6O,OAAS,WACvB,OAAO6kB,GAAYh0B,OAEhB4zD,EARU,CASnBttD,IAMH,SAAS,KAEZ,OAAO,SAAUA,GACb,OAAsB,SAAUwH,GAE5B,SAAS+lD,IACL,OAAkB,OAAX/lD,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAQ/D,OAVAwI,EAAUqrD,EAAS/lD,GAInB+lD,EAAQvzD,UAAU6O,OAAS,SAAU4P,GAEjC,YADa,IAATA,IAAmBA,EAAO,KACvBiV,GAAYh0B,KAAMiN,GAAQ,CAC7B,WAAY8R,MAGb80C,EAXU,CAYnBvtD,IAMH,SAASwtD,KAEZ,OAAO,SAAUxtD,GACb,OAAsB,SAAUwH,GAE5B,SAASimD,IACL,OAAkB,OAAXjmD,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAK/D,OAPAwI,EAAUurD,EAASjmD,GAInBimD,EAAQzzD,UAAUonB,OAAS,SAAUhH,GACjC,OAAOuT,GAAWj0B,KAAMqK,GAAKqW,KAE1BqzC,EARU,CASnBztD,IAMH,SAAS0tD,KAEZ,OAAO,SAAU1tD,GACb,OAAsB,SAAUwH,GAE5B,SAASmmD,IACL,OAAkB,OAAXnmD,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAQ/D,OAVAwI,EAAUyrD,EAASnmD,GAInBmmD,EAAQ3zD,UAAUonB,OAAS,SAAUhH,EAAO3B,GAExC,YADa,IAATA,IAAmBA,EAAO,KACvBkV,GAAWj0B,KAAMqK,GAAKqW,EAAOzT,GAAQ,CACxC,WAAY8R,OAGbk1C,EAXU,CAYnB3tD,IAMH,SAAS4tD,KAEZ,OAAO,SAAU5tD,GACb,OAAsB,SAAUwH,GAE5B,SAASqmD,IACL,OAAkB,OAAXrmD,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAK/D,OAPAwI,EAAU2rD,EAASrmD,GAInBqmD,EAAQ7zD,UAAUqQ,IAAM,SAAU+P,GAC9B,OAAOqT,GAAU/zB,KAAMqK,GAAKqW,KAEzByzC,EARU,CASnB7tD,IAMH,SAAS6iB,GAAQnqB,GAEpB,OAAO,SAAUsH,GACb,OAAsB,SAAUwH,GAE5B,SAASsmD,IACL,OAAkB,OAAXtmD,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAK/D,OAPAwI,EAAU4rD,EAAStmD,GAInBsmD,EAAQ9zD,UAAU6oB,QAAU,SAAUzW,GAClC,OAAO1T,EAAQgB,KAAM0S,IAElB0hD,EARU,CASnB9tD,IC/HV,IAsBW+tD,GAAelgC,GAtBS,SAAUrmB,GAEzC,SAASwmD,IACL,OAAkB,OAAXxmD,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAgB/D,OAlBAwI,EAAU8rD,EAAexmD,GAIzBpO,OAAOC,eAAe20D,EAAch0D,UAAW,UAAW,CAItDT,IAAK,WACD,OAAO00D,GAAQv0D,OAEnBJ,YAAY,EACZsB,cAAc,IAEF6H,EAAW,CACvB+qD,KACA,MACDQ,GAlB2B,CAoBhCt/B,KAmBSw/B,GAAgBrgC,GAbS,SAAUrmB,GAE1C,SAAS2mD,IACL,OAAkB,OAAX3mD,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAO/D,OATAwI,EAAUisD,EAAgB3mD,GAIT/E,EAAW,CACxB,GAAY,iBACZmrD,KACA/qC,GAAQkrC,KACTI,GAT4B,CAWjChgC,KAmCSigC,GAASvgC,GA7BS,SAAUrmB,GAEnC,SAAS6mD,IACL,OAAkB,OAAX7mD,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAuB/D,OAzBAwI,EAAUmsD,EAAS7mD,GAInBpO,OAAOC,eAAeg1D,EAAQr0D,UAAW,QAAS,CAI9CT,IAAK,WACD,OAAO+0D,GAAM50D,OAEjBJ,YAAY,EACZsB,cAAc,IAOlByzD,EAAQr0D,UAAUu0D,MAAQ,SAAUl4C,GAChC,OAAOoX,GAAU/zB,KAAKgX,MAAM09C,GAAQ,SAAUrqD,GAAKsS,KAE7C5T,EAAW,CACjB,MACD4rD,GAzBqB,CA2B1B3/B,KAmBSu/B,GAAUpgC,GAbS,SAAUrmB,GAEpC,SAASgnD,IACL,OAAkB,OAAXhnD,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAO/D,OATAwI,EAAUssD,EAAUhnD,GAIT/E,EAAW,CAClB,GAAY,WACZmrD,KACA/qC,GAAQurC,KACTI,GATsB,CAW3BrgC,KAMEsgC,GAAuB,SAAUjnD,GAEjC,SAASinD,IACL,OAAkB,OAAXjnD,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAmB/D,OArBAwI,EAAUusD,EAAOjnD,GAOjBinD,EAAMz0D,UAAU00D,QAAU,SAAUviD,GAChC,OAAOshB,GAAU/zB,KAAKgX,MAAMi+C,GAAM,WAAY5qD,GAAKoI,KAOvDsiD,EAAMz0D,UAAUu0D,MAAQ,SAAUl4C,GAC9B,OAAOoX,GAAU/zB,KAAKgX,MAAMi+C,GAAM,SAAU5qD,GAAKsS,KAE7C5T,EAAW,CACf,MACDgsD,GArBmB,CAuBxB//B,IAESigC,GAAO9gC,GAAsB4gC,IAiB7BH,GAAQzgC,GAbS,SAAUrmB,GAElC,SAASonD,IACL,OAAkB,OAAXpnD,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAO/D,OATAwI,EAAU0sD,EAAQpnD,GAIT/E,EAAW,CAChB,GAAY,SACZmrD,KACA/qC,GAAQ8rC,KACTC,GAToB,CAWzBzgC,KA+BS0gC,GAAUhhC,GAzBS,SAAUrmB,GAEpC,SAASsnD,IACL,OAAkB,OAAXtnD,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAmB/D,OArBAwI,EAAU4sD,EAAUtnD,GAQpBsnD,EAAS90D,UAAUqQ,IAAM,SAAU+B,GAC/B,OAAOqhB,GAAU/zB,KAAKgX,MAAMm+C,GAAS,QAAS9qD,GAAK,CAAE,YAAaqI,MAOtE0iD,EAAS90D,UAAUw6B,OAAS,SAAUpoB,GAClC,IAAI2iD,EAAUr1D,KAAKgX,MAAMm+C,GAAS,QAElC,OADAE,EAAQ79C,MAAMvW,IAAI,MAAOyR,GAClBshB,GAAYqhC,IAEhBD,EAtBkB,CAuB3B3gC,KCzJS,GAAaN,GARS,SAAUrmB,GAEvC,SAAS2tB,IACL,OAAkB,OAAX3tB,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAE/D,OAJAwI,EAAUizB,EAAa3tB,GAIhB2tB,EALqB,CAM9BzG,KA8BS,GAAcb,GAxBS,SAAUrmB,GAExC,SAASotB,IACL,OAAkB,OAAXptB,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAkB/D,OApBAwI,EAAU0yB,EAAcptB,GAUxBotB,EAAa56B,UAAUg1D,QAAU,SAAUpoD,EAAMqoD,GAC7C,OAAOxhC,GAAU/zB,KAAMqK,IAAU,kCCjCjBmK,EDiCoD,CAChEghD,aAAcD,EACdroD,KAAMA,GClCPxN,OAAOyI,OAAO,CAAE,cDgCc,mCChCMqM,MADxC,IAAiBA,GDsCLzL,EAAW,CACtB,GAAY,eACZogB,GAAQ,KACT+R,GApB0B,CAsB/BzG,KExCF9gB,GAAQohD,GAAO,cAAe,ICK9B,IAqEWU,GCtEAC,GDCPC,GAAkC,SAAU7nD,GAE5C,SAAS6nD,IACL,OAAkB,OAAX7nD,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KA+B/D,OAjCAwI,EAAUmtD,EAAkB7nD,GAS5B6nD,EAAiBr1D,UAAUs1D,iBAAmB,SAAUC,GAEpD,YAD4B,IAAxBA,IAAkCA,GAAsB,GACrD9hC,GAAU/zB,KAAKgX,MAAM8+C,GAAiB,oBAAqBzrD,GAAK,CAAEwrD,oBAAqBA,MAOlGF,EAAiBr1D,UAAUy1D,gBAAkB,SAAUF,GAEnD,YAD4B,IAAxBA,IAAkCA,GAAsB,GACrD9hC,GAAU/zB,KAAKgX,MAAM8+C,GAAiB,mBAAoBzrD,GAAK,CAAEwrD,oBAAqBA,MAOjGF,EAAiBr1D,UAAU01D,kBAAoB,SAAUC,GACrD,OAAOliC,GAAU/zB,KAAKgX,MAAM8+C,GAAiB,qBAAsBzrD,GAAK,CAAE4rD,SAAUA,MAErEltD,EAAW,CAC1B,MACD4sD,GAjC8B,CAmCnC3gC,IAES8gC,GAAkB3hC,GAAsBwhC,IA4BxCO,GAAmB/hC,GAvBS,SAAUrmB,GAE7C,SAASqoD,IACL,OAAkB,OAAXroD,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAiB/D,OAnBAwI,EAAU2tD,EAAmBroD,GAW7BqoD,EAAkB71D,UAAU81D,SAAW,SAAUC,EAAKt7C,GAElD,YADa,IAATA,IAAmBA,EAAO06C,GAAqBa,iBAC5CviC,GAAU/zB,KAAKgX,MAAMk/C,GAAkB,YAAa7rD,GAAK,CAAEgsD,IAAKA,EAAKt7C,KAAMA,MAElEhS,EAAW,CAC3B,GAAY,oBACZogB,GAAQ2sC,KACTK,GAnB+B,CAqBpC1hC,MAOF,SAAWghC,GAIPA,EAAqBA,EAAsC,gBAAI,GAAK,kBAIpEA,EAAqBA,EAA2B,KAAI,GAAK,OAIzDA,EAAqBA,EAA4B,MAAI,GAAK,QAI1DA,EAAqBA,EAA6B,OAAI,GAAK,SAhB/D,CAiBGA,KAAyBA,GAAuB,KCvFnD,SAAWC,GAIPA,EAAUA,EAAqB,UAAI,GAAK,YAIxCA,EAAUA,EAAmB,QAAI,GAAK,UAItCA,EAAUA,EAAoB,SAAI,GAAK,WAZ3C,CAaGA,KAAcA,GAAY,KAI7B,IAAIa,GAAwB,SAAUzoD,GAElC,SAASyoD,IACL,OAAkB,OAAXzoD,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAkD/D,OApDAwI,EAAU+tD,EAAQzoD,GAOlByoD,EAAOj2D,UAAUk2D,YAAc,WAC3B,OAAOziC,GAAU/zB,KAAKgX,MAAMy/C,GAAO,iBAKvCF,EAAOj2D,UAAUo2D,eAAiB,WAC9B,OAAO3iC,GAAU/zB,KAAKgX,MAAMy/C,GAAO,oBAKvCF,EAAOj2D,UAAUq2D,iBAAmB,WAChC,OAAO5iC,GAAU/zB,KAAKgX,MAAMy/C,GAAO,sBAMvCF,EAAOj2D,UAAUs2D,gBAAkB,WAC/B,OAAO7iC,GAAU/zB,KAAKgX,MAAMy/C,GAAO,qBAMvCF,EAAOj2D,UAAUu2D,kBAAoB,WACjC,OAAO9iC,GAAU/zB,KAAKgX,MAAMy/C,GAAO,uBAQvCF,EAAOj2D,UAAUw2D,gBAAkB,SAAUC,EAAOC,GAChD,IAAIlF,EAAO9xD,KAAKgX,MAAMy/C,GAAO,gBAG7B,OAFA3E,EAAKt6C,MAAMvW,IAAI,gBAAiB81D,EAAM/d,eACtC8Y,EAAKt6C,MAAMvW,IAAI,cAAe+1D,EAAIhe,eAC3B8Y,KAEF/oD,EAAW,CAChB,KACA+qD,MACDyC,GApDoB,CAsDzBZ,IAESc,GAAQtiC,GAAsBoiC,IAuD9BU,GAAS9iC,GAlDS,SAAUrmB,GAEnC,SAASopD,IACL,OAAkB,OAAXppD,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KA4C/D,OA9CAwI,EAAU0uD,EAASppD,GAYnBopD,EAAQ52D,UAAUqQ,IAAM,SAAUzD,EAAMiqD,EAAcC,EAAWC,GAE7D,YAD6B,IAAzBA,IAAmCA,EAAuB,IACvDhuD,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAI8jB,EAAUphB,EACd,OAAO0H,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAaD,OAZAsZ,EAAW,EAAO,CACd0C,YAAatZ,EACboqD,YAAaF,IAAc1B,GAAU6B,UACrCJ,aAAcA,EACdK,gBAAiBJ,IAAc1B,GAAU6B,WAC1CF,GAECD,IAAc1B,GAAU+B,WACxB3zC,EAAW,EAAOA,EAAU,CACxB4zC,WAAYN,IAAc1B,GAAU6B,UAAY,CAAC,WAAa,CAAC,wBAGhE,CAAC,EAAaxjC,GAAU/zB,KAAMqK,GAAKyZ,KAC9C,KAAK,EAED,MAAO,CAAC,EAAc,CACdphB,KAFRA,EAAO6J,EAAG9B,OAGF+hC,MAAOxsC,KAAKmpB,QAAQzmB,EAAKgQ,cAM3C3J,EAAW,CACjB,GAAY,UACZogB,GAAQstC,KACTS,GA9CqB,CAgD1BziC,KC7HK,SAASkjC,GAAaZ,EAAOC,GAChC,IAAIx/C,EAAQxX,KAAKgX,MAAM4d,GAA0B,gBAGjD,OAFApd,EAAMA,MAAMvW,IAAI,gBAAiBwe,mBAAmBs3C,IACpDv/C,EAAMA,MAAMvW,IAAI,cAAewe,mBAAmBu3C,IAC3Cx/C,ECJX,IAiBWogD,GAAWzjC,GAjBS,SAAUrmB,GAErC,SAAS+pD,IACL,IAAI7rD,EAAmB,OAAX8B,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAEhE,OADAgM,EAAM2rD,aAAeA,GACd3rD,EASX,OAbAxD,EAAUqvD,EAAW/pD,GAMrBpO,OAAOC,eAAek4D,EAAUv3D,UAAW,SAAU,CACjDT,IAAK,WACD,OAAOi4D,GAAO93D,OAElBJ,YAAY,EACZsB,cAAc,IAEX22D,EAdmB,CAe5B7iC,KAkBS+iC,GAAY5jC,GAZS,SAAUrmB,GAEtC,SAASkqD,IACL,OAAkB,OAAXlqD,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAM/D,OARAwI,EAAUwvD,EAAYlqD,GAIT/E,EAAW,CACpB,GAAY,aACZogB,GAAQyuC,KACTI,GARwB,CAU7BvjC,KAkBSwjC,GAAQ9jC,GAZS,SAAUrmB,GAElC,SAASoqD,IACL,OAAkB,OAAXpqD,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAM/D,OARAwI,EAAU0vD,EAAQpqD,GAIT/E,EAAW,CAChB,KACA+qD,MACDoE,GARoB,CAUzBljC,KAuCS8iC,GAAS3jC,GAjCS,SAAUrmB,GAEnC,SAASqqD,IACL,OAAkB,OAAXrqD,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KA2B/D,OA7BAwI,EAAU2vD,EAASrqD,GASnBqqD,EAAQ73D,UAAUqQ,IAAM,SAAUgX,GAC9B,OAAOte,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAI0C,EACJ,OAAO0H,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAAG,MAAO,CAAC,EAAaupB,GAAU/zB,KAAMqK,GAAKsd,KAClD,KAAK,EAED,MAAO,CAAC,EAAc,CACdjlB,KAFRA,EAAO6J,EAAG9B,OAGF2tD,MAAOp4D,KAAKmpB,QAAQzmB,EAAKgQ,cAM3C3J,EAAW,CACjB,GAAY,UACZogB,GAAQ8uC,KACTE,GA7BqB,CA+B1B1jC,KC1FF9gB,GAAQ4iD,GAAQ,WAAYqB,GAAU,YACtCjkD,GAAQ4iD,GAAQ,SAAUuB,ICA1B,IAAIO,GAAuB,SAAUvqD,GAEjC,SAASuqD,IACL,OAAkB,OAAXvqD,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KA8C/D,OAhDAwI,EAAU6vD,EAAOvqD,GAIjBpO,OAAOC,eAAe04D,EAAM/3D,UAAW,WAAY,CAI/CT,IAAK,WACD,OAAOq2D,GAAiBl2D,KAAM,aAElCJ,YAAY,EACZsB,cAAc,IAElBxB,OAAOC,eAAe04D,EAAM/3D,UAAW,SAAU,CAI7CT,IAAK,WACD,OAAOy4D,GAAOt4D,OAElBJ,YAAY,EACZsB,cAAc,IAElBxB,OAAOC,eAAe04D,EAAM/3D,UAAW,gBAAiB,CAIpDT,IAAK,WACD,OAAOy4D,GAAOt4D,KAAM,kBAExBJ,YAAY,EACZsB,cAAc,IAElBxB,OAAOC,eAAe04D,EAAM/3D,UAAW,UAAW,CAI9CT,IAAK,WACD,OAAO04D,GAAKv4D,KAAM,YAEtBJ,YAAY,EACZsB,cAAc,IAEV6H,EAAW,CACf+qD,KACA,MACDuE,GAhDmB,CAkDxB1C,IAES4C,GAAOpkC,GAAsBkkC,IAa7BG,GAAQrkC,GAZS,SAAUrmB,GAElC,SAAS2qD,IACL,OAAkB,OAAX3qD,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAM/D,OARAwI,EAAUiwD,EAAQ3qD,GAIT/E,EAAW,CAChB,GAAY,SACZogB,GAAQovC,KACTE,GARoB,CAUzBhkC,KAcS6jC,GAASnkC,GAXS,SAAUrmB,GAEnC,SAAS4qD,IACL,OAAkB,OAAX5qD,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAK/D,OAPAwI,EAAUkwD,EAAS5qD,GAIT/E,EAAW,CACjB,GAAY,WACb2vD,GAPqB,CAS1BjkC,KC3EF9gB,GAAQ0kD,GAAO,WAAYT,GAAU,YACrCjkD,GAAQ0kD,GAAO,YAAaN,GAAW,aACvCpkD,GAAQ0kD,GAAO,SAAUP,IACzBO,GAAM/3D,UAAUq3D,aAAeA,GCE/B,IAYWgB,GAAUxkC,GAZS,SAAUrmB,GAEpC,SAAS8qD,IACL,OAAkB,OAAX9qD,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAM/D,OARAwI,EAAUowD,EAAU9qD,GAIT/E,EAAW,CAClB+qD,KACA,MACD8E,GARsB,CAU3B5jC,KA8CS6jC,GAAW1kC,GAxCS,SAAUrmB,GAErC,SAASgrD,IACL,OAAkB,OAAXhrD,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAkC/D,OApCAwI,EAAUswD,EAAWhrD,GAarBgrD,EAAUx4D,UAAUqQ,IAAM,SAAUooD,EAAWC,EAASC,EAAgBC,EAAgB7B,GAEpF,YAD6B,IAAzBA,IAAmCA,EAAuB,IACvDhuD,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAI8jB,EAAUphB,EACd,OAAO0H,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAED,OADAsZ,EAAW,EAAO,CAAEo1C,eAAgBA,EAAgBD,eAAgBA,EAAgBF,UAAWA,EAAWC,QAASA,GAAW3B,GACvH,CAAC,EAAatjC,GAAU/zB,KAAMqK,GAAKyZ,KAC9C,KAAK,EAED,OADAphB,EAAO6J,EAAG9B,OACH,CAAC,EAAc,CACd0uD,QAASn5D,KAAKmpB,QAAQzmB,EAAKgQ,IAC3BhQ,KAAMA,YAMtBqG,EAAW,CACnB,GAAY,YACZogB,GAAQwvC,KACTG,GApCuB,CAsC5BrkC,KAsCS2kC,GAAgBjlC,GAhCS,SAAUrmB,GAE1C,SAASurD,IACL,OAAkB,OAAXvrD,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KA0B/D,OA5BAwI,EAAU6wD,EAAgBvrD,GAI1BpO,OAAOC,eAAe05D,EAAe/4D,UAAW,WAAY,CAIxDT,IAAK,WACD,OAAOg5D,GAAS74D,OAEpBJ,YAAY,EACZsB,cAAc,IAElBxB,OAAOC,eAAe05D,EAAe/4D,UAAW,eAAgB,CAI5DT,IAAK,WACD,OAAOy5D,GAAet5D,KAAM,iBAEhCJ,YAAY,EACZsB,cAAc,IAED6H,EAAW,CACxB,KACA+qD,MACDuF,GA5B4B,CA8BjCrkC,KA6CSskC,GAAiBnlC,GAvCS,SAAUrmB,GAE3C,SAASyrD,IACL,OAAkB,OAAXzrD,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAiC/D,OAnCAwI,EAAU+wD,EAAiBzrD,GAU3ByrD,EAAgBj5D,UAAUqQ,IAAM,SAAU6V,EAAagzC,GACnD,OAAOnwD,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAc0C,EACd,OAAO0H,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAKD,MAAO,CAAC,EAAaupB,GAAU/zB,KAAMqK,GAJ1B,CACPmc,YAAaA,EACbgzC,eAAgBA,MAGxB,KAAK,EAED,OADA92D,EAAO6J,EAAG9B,OACH,CAAC,EAAc,CACdgvD,cAAez5D,KAAKmpB,QAAQzmB,EAAKgQ,IACjChQ,KAAMA,YAMhBqG,EAAW,CACzB,GAAY,kBACZogB,GAAQiwC,KACTG,GAnC6B,CAqClC9kC,KC3IF9gB,GAAQ0kD,GAAO,WAAYQ,IAC3BllD,GAAQ0kD,GAAO,iBAAkBiB,ICDjC3lD,GAAQ4iD,GAAQ,gBAAiB/B,IACjC7gD,GAAQ4iD,GAAQ,kBAAmBpB,GAAS,mBAC5CxhD,GAAQ4iD,GAAQ,kBAAmBpB,GAAS,mBCF5ChsD,QAAQxJ,eAAeyzB,GAAU9yB,UAAW,mBAAoB,CAC5DY,cAAc,EACdtB,YAAY,EACZC,IAAK,WACD,OAAOG,KAAKwjB,iBAAgB,SAAUjX,GAClC,IAAIqB,EAAUrB,EAAGqB,QAAS2P,EAAUhR,EAAGgR,QAASnF,EAAU7L,EAAG6L,QAC7D,OAAO89C,GAAiB34C,GAASvF,UAAUpK,GAASgK,WAAWQ,SCN3EjP,QAAQxJ,eAAeyzB,GAAU9yB,UAAW,SAAU,CAClDY,cAAc,EACdtB,YAAY,EACZC,IAAK,WACD,OAAOG,KAAKwjB,iBAAgB,SAAUjX,GAClC,IAAIqB,EAAUrB,EAAGqB,QAAS2P,EAAUhR,EAAGgR,QAASnF,EAAU7L,EAAG6L,QAC7D,OAAO6+C,GAAO15C,GAASvF,UAAUpK,GAASgK,WAAWQ,SCHjE,IAgCWshD,GAAWvlC,GAhCS,SAAUrmB,GAErC,SAAS6rD,IACL,OAAkB,OAAX7rD,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KA0B/D,OA5BAwI,EAAUmxD,EAAW7rD,GAIrBpO,OAAOC,eAAeg6D,EAAUr5D,UAAW,WAAY,CACnDT,IAAK,WACD,OAAO+5D,GAAiB55D,OAE5BJ,YAAY,EACZsB,cAAc,IAElBxB,OAAOC,eAAeg6D,EAAUr5D,UAAW,OAAQ,CAC/CT,IAAK,WACD,OAAOg6D,GAAa75D,OAExBJ,YAAY,EACZsB,cAAc,IAElBxB,OAAOC,eAAeg6D,EAAUr5D,UAAW,SAAU,CACjDT,IAAK,WACD,OAAOi6D,GAAe95D,OAE1BJ,YAAY,EACZsB,cAAc,IAEN6H,EAAW,CACnB,GAAY,aACb4wD,GA5BuB,CA8B5B3kC,KAqBS+kC,GAAkB5lC,GAfS,SAAUrmB,GAE5C,SAASksD,IACL,OAAkB,OAAXlsD,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAS/D,OAXAwI,EAAUwxD,EAAkBlsD,GAI5BpO,OAAOC,eAAeq6D,EAAiB15D,UAAW,WAAY,CAC1DT,IAAK,WACD,OAAOo6D,GAASj6D,OAEpBJ,YAAY,EACZsB,cAAc,IAEX84D,EAZ0B,CAanChlC,KAmBS4kC,GAAmBzlC,GAZS,SAAUrmB,GAE7C,SAASosD,IACL,OAAkB,OAAXpsD,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAM/D,OARAwI,EAAU0xD,EAAmBpsD,GAIT/E,EAAW,CAC3B,GAAY,YACZogB,GAAQ4wC,KACTG,GAR+B,CAUpCzlC,KAqBS0lC,GAAchmC,GAfS,SAAUrmB,GAExC,SAASssD,IACL,OAAkB,OAAXtsD,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAS/D,OAXAwI,EAAU4xD,EAActsD,GAIxBpO,OAAOC,eAAey6D,EAAa95D,UAAW,WAAY,CACtDT,IAAK,WACD,OAAOo6D,GAASj6D,OAEpBJ,YAAY,EACZsB,cAAc,IAEXk5D,EAZsB,CAa/BplC,KAmBS6kC,GAAe1lC,GAZS,SAAUrmB,GAEzC,SAASusD,IACL,OAAkB,OAAXvsD,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAM/D,OARAwI,EAAU6xD,EAAevsD,GAIT/E,EAAW,CACvB,GAAY,QACZogB,GAAQgxC,KACTE,GAR2B,CAUhC5lC,KAqBS6lC,GAAgBnmC,GAfS,SAAUrmB,GAE1C,SAASysD,IACL,OAAkB,OAAXzsD,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAS/D,OAXAwI,EAAU+xD,EAAgBzsD,GAI1BpO,OAAOC,eAAe46D,EAAej6D,UAAW,WAAY,CACxDT,IAAK,WACD,OAAOo6D,GAASj6D,OAEpBJ,YAAY,EACZsB,cAAc,IAEXq5D,EAZwB,CAajCvlC,KAmBS8kC,GAAiB3lC,GAZS,SAAUrmB,GAE3C,SAAS0sD,IACL,OAAkB,OAAX1sD,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAM/D,OARAwI,EAAUgyD,EAAiB1sD,GAIT/E,EAAW,CACzB,GAAY,UACZogB,GAAQmxC,KACTE,GAR6B,CAUlC/lC,KAiBSwlC,GAAW9lC,GAXS,SAAUrmB,GAErC,SAAS2sD,IACL,OAAkB,OAAX3sD,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAK/D,OAPAwI,EAAUiyD,EAAW3sD,GAIT/E,EAAW,CACnB,GAAY,aACb0xD,GAPuB,CAS5BzlC,KC5JFrhB,GAAQ0kD,GAAO,WAAYqB,ICM3B,IAkCWgB,GAAcvmC,GAlCS,SAAUrmB,GAExC,SAAS6sD,IACL,OAAkB,OAAX7sD,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KA4B/D,OA9BAwI,EAAUmyD,EAAc7sD,GAWxB6sD,EAAar6D,UAAUsI,OAAS,SAAUgyD,EAAyBC,EAAmBxD,GAElF,YAD6B,IAAzBA,IAAmCA,EAAuB,IACvDhuD,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAI8jB,EACJ,OAAO1Z,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAED,OADAsZ,EAAW,EAAO,CAAE+2C,kBAAmBA,EAAmBD,wBAAyBA,GAA2BvD,GACvG,CAAC,EAAatjC,GAAU/zB,KAAMqK,GAAKyZ,KAC9C,KAAK,EAED,MAAO,CAAC,EAAc,CAAEphB,KADjB6J,EAAG9B,iBAMf1B,EAAW,CACtB,GAAY,gBACb4xD,GA9B0B,CAgC/BlmC,KCtCFtrB,QAAQxJ,eAAeyzB,GAAU9yB,UAAW,cAAe,CACvDY,cAAc,EACdtB,YAAY,EACZC,IAAK,WACD,OAAOG,KAAKwjB,iBAAgB,SAAUjX,GAClC,IAAIqB,EAAUrB,EAAGqB,QAAS2P,EAAUhR,EAAGgR,QAASnF,EAAU7L,EAAG6L,QAC7D,OAAOsiD,GAAYn9C,GAASvF,UAAUpK,GAASgK,WAAWQ,SCDtE,IAcW0iD,GAAS3mC,GAdS,SAAUrmB,GAEnC,SAASitD,IACL,OAAkB,OAAXjtD,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAQ/D,OAVAwI,EAAUuyD,EAASjtD,GAOnBitD,EAAQz6D,UAAUw6B,OAAS,WACvB,OAAO9G,GAAYh0B,KAAKgX,MAAM8jD,GAAQ,UAEnCC,EAXiB,CAY1B/lC,KA4BSgmC,GAAU7mC,GAtBS,SAAUrmB,GAEpC,SAASmtD,IACL,OAAkB,OAAXntD,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAgB/D,OAlBAwI,EAAUyyD,EAAUntD,GAWpBmtD,EAAS36D,UAAUqQ,IAAM,SAAU+B,GAC/B,OAAOqhB,GAAU/zB,KAAKgX,MAAMgkD,GAAS,QAAS3wD,GAAK,CAAE,YAAaqI,MAE3D3J,EAAW,CAClB,GAAY,WACZogB,GAAQ2xC,KACTG,GAlBsB,CAoB3BxmC,KC3CF9gB,GAAQ4iD,GAAQ,SAAUyE,GAAS,UACnCrnD,GAAQ4iD,GAAQ,UAAWyE,ICE3B,IAQWE,GAAU/mC,GARS,SAAUrmB,GAEpC,SAASqtD,IACL,OAAkB,OAAXrtD,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAE/D,OAJAwI,EAAU2yD,EAAUrtD,GAIbqtD,EALkB,CAM3BnmC,KAmBSomC,GAAWjnC,GAbS,SAAUrmB,GAErC,SAASutD,IACL,OAAkB,OAAXvtD,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAO/D,OATAwI,EAAU6yD,EAAWvtD,GAIT/E,EAAW,CACnB,GAAY,YACZogB,GAAQ+xC,IACRhH,MACDmH,GATuB,CAW5B5mC,KAcS6mC,GAAannC,GARS,SAAUrmB,GAEvC,SAASytD,IACL,OAAkB,OAAXztD,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAE/D,OAJAwI,EAAU+yD,EAAaztD,GAIhBytD,EALqB,CAM9BvmC,KAmBSwmC,GAAcrnC,GAbS,SAAUrmB,GAExC,SAAS2tD,IACL,OAAkB,OAAX3tD,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAO/D,OATAwI,EAAUizD,EAAc3tD,GAIT/E,EAAW,CACtB,GAAY,eACZogB,GAAQmyC,IACRpH,MACDuH,GAT0B,CAW/BhnC,KAkBSinC,GAAkBvnC,GAZS,SAAUrmB,GAE5C,SAAS6tD,IACL,OAAkB,OAAX7tD,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAM/D,OARAwI,EAAUmzD,EAAkB7tD,GAIT/E,EAAW,CAC1B,GAAY,mBACZ+qD,MACD6H,GAR8B,CAUnC3mC,KCtEFrhB,GAAQ0kD,GAAO,WAAY+C,IAC3BznD,GAAQ0kD,GAAO,kBAAmBqD,IAClC/nD,GAAQ0kD,GAAO,cAAemD,IAC9BnD,GAAM/3D,UAAUs7D,SAAW,SAAU55D,GACjC,OAAO+xB,GAAU/zB,KAAKgX,MAAMuhD,GAAM,YAAaluD,GAAKrI,KCExD,IA0CW65D,GAAQ1nC,GA1CS,SAAUrmB,GAElC,SAASguD,IACL,OAAkB,OAAXhuD,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAoC/D,OAtCAwI,EAAUszD,EAAQhuD,GAIlBpO,OAAOC,eAAem8D,EAAOx7D,UAAW,OAAQ,CAC5CT,IAAK,WACD,OAAOk8D,GAAK/7D,OAEhBJ,YAAY,EACZsB,cAAc,IAElBxB,OAAOC,eAAem8D,EAAOx7D,UAAW,OAAQ,CAC5CT,IAAK,WACD,OAAOG,KAAKgX,MAAMie,GAAwB,SAE9Cr1B,YAAY,EACZsB,cAAc,IAElBxB,OAAOC,eAAem8D,EAAOx7D,UAAW,SAAU,CAC9CT,IAAK,WACD,OAAOm8D,GAAWh8D,KAAM,WAE5BJ,YAAY,EACZsB,cAAc,IAElBxB,OAAOC,eAAem8D,EAAOx7D,UAAW,eAAgB,CACpDT,IAAK,WACD,OAAOm8D,GAAWh8D,KAAM,iBAE5BJ,YAAY,EACZsB,cAAc,IAElB46D,EAAOx7D,UAAU27D,YAAc,SAAUvpD,GACrC,OAAOwpD,GAAUl8D,KAAM6E,EAAQ,QAAS6N,KAEnC3J,EAAW,CAChB,GAAY,UACb+yD,GAtCoB,CAwCzB9mC,KAqBSmnC,GAAShoC,GAdS,SAAUrmB,GAEnC,SAASsuD,IACL,OAAkB,OAAXtuD,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAQ/D,OAVAwI,EAAU4zD,EAAStuD,GAInBsuD,EAAQ97D,UAAU6oB,QAAU,SAAUzW,GAClC,OAAOmpD,GAAM77D,KAAKs0B,aAAc,UAAY5hB,IAEtC3J,EAAW,CACjB,GAAY,WACbqzD,GAVqB,CAY1B3nC,KAqCSsnC,GAAO5nC,GA9BS,SAAUrmB,GAEjC,SAASuuD,IACL,OAAkB,OAAXvuD,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAwB/D,OA1BAwI,EAAU6zD,EAAOvuD,GAIjBpO,OAAOC,eAAe08D,EAAM/7D,UAAW,WAAY,CAC/CT,IAAK,WACD,OAAOm8D,GAAWh8D,KAAM,aAE5BJ,YAAY,EACZsB,cAAc,IAElBm7D,EAAM/7D,UAAUy0B,OAAS,SAAUvd,GAC/B,IAAI8kD,EAAWt8D,KAAKgX,MAAM+kD,IAE1B,OADAO,EAAS9kD,MAAMvW,IAAI,SAAU,IAAMuW,EAAQ,KACpC8kD,KAEX58D,OAAOC,eAAe08D,EAAM/7D,UAAW,aAAc,CACjDT,IAAK,WACD,OAAOG,KAAKgX,MAAM4d,GAA0B,eAEhDh1B,YAAY,EACZsB,cAAc,IAEV6H,EAAW,CACf,GAAY,SACbszD,GA1BmB,CA4BxBrnC,KAuESknC,GAAY/nC,GAhES,SAAUrmB,GAEtC,SAASyuD,IACL,OAAkB,OAAXzuD,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KA0D/D,OA5DAwI,EAAU+zD,EAAYzuD,GAItBpO,OAAOC,eAAe48D,EAAWj8D,UAAW,WAAY,CACpDT,IAAK,WACD,OAAOm8D,GAAWh8D,KAAM,aAE5BJ,YAAY,EACZsB,cAAc,IAElBxB,OAAOC,eAAe48D,EAAWj8D,UAAW,aAAc,CACtDT,IAAK,WACD,OAAOG,KAAKgX,MAAM4d,GAA0B,eAEhDh1B,YAAY,EACZsB,cAAc,IAElBxB,OAAOC,eAAe48D,EAAWj8D,UAAW,WAAY,CACpDT,IAAK,WACD,OAAOG,KAAKgX,MAAM4d,GAA0B,aAEhDh1B,YAAY,EACZsB,cAAc,IAElBq7D,EAAWj8D,UAAUgyD,KAAO,SAAUkK,EAAiBtvD,GACnD,OAAO+mB,GAAWj0B,KAAMqK,GAAK,EAAOmyD,EAAiB,CAAEtvD,KAAMA,OAEjEqvD,EAAWj8D,UAAUm8D,WAAa,WAC9B,OAAOpzD,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAIyS,EAAMhS,EACV,OAAO2J,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAAG,MAAO,CAAC,EAAaxK,KAAKH,OAClC,KAAK,EAED,OADA4S,EAAOlG,EAAG9B,OACH,CAAC,EAAaqC,EAAWa,MAAM8E,EAAK,gCAAiC,CACpExF,QAAS,CACL,OAAU,oBAEdzJ,OAAQ,MACRk5D,aAAc,iBAE1B,KAAK,EAGD,OAFAj8D,EAAI8L,EAAG9B,OAEA,CAAC,GADJ,IAAI8L,IACgBtH,MAAMxO,YAKlD87D,EAAWj8D,UAAU+3B,WAAa,SAAUhD,GACxC,OAAOnB,GAASl0B,KAAKgX,MAAMklD,GAAW,WAAY,CAC9C7xD,KAAMgrB,KAGDtsB,EAAW,CACpB,KACA+qD,MACDyI,GA5DwB,CA8D7BvnC,KAkBSgnC,GAAa7nC,GAXS,SAAUrmB,GAEvC,SAAS6uD,IACL,OAAkB,OAAX7uD,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAK/D,OAPAwI,EAAUm0D,EAAa7uD,GAIT/E,EAAW,CACrBogB,GAAQ+yC,KACTS,GAPyB,CAS9BloC,KC1LF9gB,GAAQ0kD,GAAO,QAASwD,IACxBloD,GAAQ0kD,GAAO,SAAU8D,ICIzB,IAgCWS,GAAUzoC,GAhCS,SAAUrmB,GAEpC,SAAS+uD,IACL,OAAkB,OAAX/uD,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KA0B/D,OA5BAwI,EAAUq0D,EAAU/uD,GAIpBpO,OAAOC,eAAek9D,EAASv8D,UAAW,YAAa,CACnDT,IAAK,WACD,OAAOi9D,GAAU98D,OAErBJ,YAAY,EACZsB,cAAc,IAElBxB,OAAOC,eAAek9D,EAASv8D,UAAW,WAAY,CAClDT,IAAK,WACD,OAAOk9D,GAAS/8D,OAEpBJ,YAAY,EACZsB,cAAc,IAElBxB,OAAOC,eAAek9D,EAASv8D,UAAW,QAAS,CAC/CT,IAAK,WACD,OAAOG,KAAKgX,MAAM4d,GAA0B,UAEhDh1B,YAAY,EACZsB,cAAc,IAEP6H,EAAW,CAClB,GAAY,YACb8zD,GA5BsB,CA8B3B7nC,KAsBSgoC,GAAW7oC,GAfS,SAAUrmB,GAErC,SAASmvD,IACL,OAAkB,OAAXnvD,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAS/D,OAXAwI,EAAUy0D,EAAWnvD,GAIrBpO,OAAOC,eAAes9D,EAAU38D,UAAW,WAAY,CACnDT,IAAK,WACD,OAAOk9D,GAAS/8D,OAEpBJ,YAAY,EACZsB,cAAc,IAEX+7D,EAZmB,CAa5BjoC,KAwCS8nC,GAAY3oC,GAjCS,SAAUrmB,GAEtC,SAASovD,IACL,OAAkB,OAAXpvD,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KA2B/D,OA7BAwI,EAAU00D,EAAYpvD,GAStBovD,EAAW58D,UAAUqQ,IAAM,SAAU6V,GACjC,OAAOnd,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAI0C,EACJ,OAAO0H,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAAG,MAAO,CAAC,EAAaupB,GAAU/zB,KAAMqK,GAAK,CAAEmc,YAAaA,MACjE,KAAK,EAED,MAAO,CAAC,EAAc,CACd9jB,KAFRA,EAAO6J,EAAG9B,OAGF0yD,SAAUn9D,KAAKmpB,QAAQzmB,EAAKgQ,cAM3C3J,EAAW,CACpB,GAAY,aACZogB,GAAQ6zC,KACTE,GA7BwB,CA+B7BzoC,KAcS2oC,GAAUjpC,GARS,SAAUrmB,GAEpC,SAASuvD,IACL,OAAkB,OAAXvvD,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAE/D,OAJAwI,EAAU60D,EAAUvvD,GAIbuvD,EALkB,CAM3BroC,KAwCS+nC,GAAW5oC,GAjCS,SAAUrmB,GAErC,SAASwvD,IACL,OAAkB,OAAXxvD,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KA2B/D,OA7BAwI,EAAU80D,EAAWxvD,GASrBwvD,EAAUh9D,UAAUqQ,IAAM,SAAU6V,GAChC,OAAOnd,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAI0C,EACJ,OAAO0H,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAAG,MAAO,CAAC,EAAaupB,GAAU/zB,KAAMqK,GAAK,CAAEmc,YAAaA,MACjE,KAAK,EAED,MAAO,CAAC,EAAc,CACd9jB,KAFRA,EAAO6J,EAAG9B,OAGFs1B,QAAS//B,KAAKmpB,QAAQzmB,EAAKgQ,cAM3C3J,EAAW,CACnB,GAAY,YACZogB,GAAQi0C,KACTE,GA7BuB,CA+B5B7oC,KC/IF9gB,GAAQ0kD,GAAO,UAAWuE,ICE1B,IA+BWW,GAAQppC,GA/BS,SAAUrmB,GAElC,SAAS0vD,IACL,OAAkB,OAAX1vD,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAyB/D,OA3BAwI,EAAUg1D,EAAQ1vD,GAOlB0vD,EAAOl9D,UAAU63B,QAAU,WACvB,OAAOn4B,KAAKgX,MAAMumD,GAAO,UAAU,GAAOhlD,YAAY,IAAIhC,GAAnDvW,IAKXw9D,EAAOl9D,UAAU83B,UAAY,WACzB,OAAOp4B,KAAKgX,MAAMumD,GAAO,UAAU,GAAOhlD,YAAY,IAAI7B,GAAnD1W,IAOXw9D,EAAOl9D,UAAU+3B,WAAa,SAAUhD,GACpC,OAAOpB,GAAWj0B,KAAKgX,MAAMumD,GAAO,UAAU,GAAQ,CAAElzD,KAAMgrB,KAEzDtsB,EAAW,CAChB,GAAY,UACby0D,GA3BoB,CA6BzBxoC,KC/BFrhB,GAAQ4iD,GAAQ,QAASgH,ICAzB5pD,GAAQ0kD,GAAO,QAASkF,ICOxB,IAmCWE,GAAUtpC,GAnCS,SAAUrmB,GAEpC,SAAS4vD,IACL,OAAkB,OAAX5vD,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KA6B/D,OA/BAwI,EAAUk1D,EAAU5vD,GAIpBpO,OAAOC,eAAe+9D,EAASp9D,UAAW,QAAS,CAE/CT,IAAK,WACD,OAAO89D,GAAM39D,OAEjBJ,YAAY,EACZsB,cAAc,IAElBxB,OAAOC,eAAe+9D,EAASp9D,UAAW,QAAS,CAE/CT,IAAK,WACD,OAAO+9D,GAAM59D,OAEjBJ,YAAY,EACZsB,cAAc,IAElBxB,OAAOC,eAAe+9D,EAASp9D,UAAW,UAAW,CAEjDT,IAAK,WACD,OAAOg+D,GAAQ79D,OAEnBJ,YAAY,EACZsB,cAAc,IAEP6H,EAAW,CAClB,GAAY,YACb20D,GA/BsB,CAiC3B1oC,KAkBS8oC,GAAc3pC,GAZS,SAAUrmB,GAExC,SAASiwD,IACL,OAAkB,OAAXjwD,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAM/D,OARAwI,EAAUu1D,EAAcjwD,GAIT/E,EAAW,CACtB,GAAY,WACZirD,MACD+J,GAR0B,CAU/B/oC,KAuCSgpC,GAAO7pC,GAjCS,SAAUrmB,GAEjC,SAASmwD,IACL,OAAkB,OAAXnwD,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KA2B/D,OA7BAwI,EAAUy1D,EAAOnwD,GAIjBpO,OAAOC,eAAes+D,EAAM39D,UAAW,QAAS,CAC5CT,IAAK,WACD,OAAO+9D,GAAM59D,OAEjBJ,YAAY,EACZsB,cAAc,IAElBxB,OAAOC,eAAes+D,EAAM39D,UAAW,UAAW,CAC9CT,IAAK,WACD,OAAOg+D,GAAQ79D,OAEnBJ,YAAY,EACZsB,cAAc,IAElBxB,OAAOC,eAAes+D,EAAM39D,UAAW,UAAW,CAC9CT,IAAK,WACD,OAAOi+D,GAAY99D,OAEvBJ,YAAY,EACZsB,cAAc,IAEV6H,EAAW,CACfirD,KACA,MACDiK,GA7BmB,CA+BxBjpC,KAqCS2oC,GAAQxpC,GAlCS,SAAUrmB,GAElC,SAASowD,IACL,OAAkB,OAAXpwD,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KA4B/D,OA9BAwI,EAAU01D,EAAQpwD,GAUlBowD,EAAO59D,UAAUqQ,IAAM,SAAU+U,EAAOP,GACpC,OAAO9b,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAI0C,EACJ,OAAO0H,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAAG,MAAO,CAAC,EAAaupB,GAAU/zB,KAAMqK,GAAK,CAAEqb,MAAOA,EAAOP,MAAOA,MACzE,KAAK,EAED,MAAO,CAAC,EAAc,CACdziB,KAFRA,EAAO6J,EAAG9B,OAGF0zD,KAAMn+D,KAAKmpB,QAAQzmB,EAAKgQ,cAM3C3J,EAAW,CAChB,GAAY,SACZogB,GAAQ60C,KACTE,GA9BoB,CAgCzBzpC,KAkBS2pC,GAAcjqC,GAZS,SAAUrmB,GAExC,SAASuwD,IACL,OAAkB,OAAXvwD,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAM/D,OARAwI,EAAU61D,EAAcvwD,GAIT/E,EAAW,CACtB,GAAY,WACZirD,MACDqK,GAR0B,CAU/BrpC,KAyBSspC,GAAOnqC,GAnBS,SAAUrmB,GAEjC,SAASywD,IACL,OAAkB,OAAXzwD,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAa/D,OAfAwI,EAAU+1D,EAAOzwD,GAIjBpO,OAAOC,eAAe4+D,EAAMj+D,UAAW,UAAW,CAC9CT,IAAK,WACD,OAAOu+D,GAAYp+D,OAEvBJ,YAAY,EACZsB,cAAc,IAEV6H,EAAW,CACfirD,KACA,MACDuK,GAfmB,CAiBxBvpC,KAoDS4oC,GAAQzpC,GA9CS,SAAUrmB,GAElC,SAAS0wD,IACL,OAAkB,OAAX1wD,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAwC/D,OA1CAwI,EAAUg2D,EAAQ1wD,GAYlB0wD,EAAOl+D,UAAUqQ,IAAM,SAAU8tD,EAAQt5C,EAAOu5C,EAAaC,GACzD,OAAOt1D,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAI8jB,EAAUphB,EACd,OAAO0H,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAUD,OATAsZ,EAAW,EAAO,CACd26C,OAAQA,EACRt5C,MAAOA,GACRu5C,GACCC,IACA76C,EAAW,EAAOA,EAAU,CACxB66C,SAAUA,KAGX,CAAC,EAAa5qC,GAAU/zB,KAAMqK,GAAKyZ,KAC9C,KAAK,EAED,MAAO,CAAC,EAAc,CACdphB,KAFRA,EAAO6J,EAAG9B,OAGFy+C,KAAMlpD,KAAKmpB,QAAQzmB,EAAKgQ,cAM3C3J,EAAW,CAChB,GAAY,SACZogB,GAAQm1C,KACTE,GA1CoB,CA4CzB/pC,KAyBSmqC,GAASzqC,GAnBS,SAAUrmB,GAEnC,SAAS+wD,IACL,OAAkB,OAAX/wD,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAa/D,OAfAwI,EAAUq2D,EAAS/wD,GAInBpO,OAAOC,eAAek/D,EAAQv+D,UAAW,QAAS,CAC9CT,IAAK,WACD,OAAO+9D,GAAM59D,OAEjBJ,YAAY,EACZsB,cAAc,IAER6H,EAAW,CACjBirD,KACA,MACD6K,GAfqB,CAiB1B7pC,KA+CS6oC,GAAU1pC,GAzCS,SAAUrmB,GAEpC,SAASgxD,IACL,OAAkB,OAAXhxD,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAmC/D,OArCAwI,EAAUs2D,EAAUhxD,GAWpBgxD,EAASx+D,UAAUqQ,IAAM,SAAUzD,EAAMuxD,EAAQM,GAC7C,OAAO11D,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAc0C,EACd,OAAO0H,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAMD,MAAO,CAAC,EAAaupB,GAAU/zB,KAAMqK,GAL1B,CACP6C,KAAMA,EACN6xD,UAAWA,GAAwB,GACnCN,OAAQA,MAGhB,KAAK,EAED,OADA/7D,EAAO6J,EAAG9B,OACH,CAAC,EAAc,CACdu0D,OAAQh/D,KAAKmpB,QAAQzmB,EAAKgQ,IAC1BhQ,KAAMA,YAMvBqG,EAAW,CAClB,GAAY,WACZogB,GAAQy1C,KACTE,GArCsB,CAuC3BrqC,KC7RF9gB,GAAQ4iD,GAAQ,QAASoH,GAAO,iBCAhChqD,GAAQ0kD,GAAO,QAASuF,GAAO,iBCE/Bz0D,QAAQxJ,eAAeyzB,GAAU9yB,UAAW,UAAW,CACnDY,cAAc,EACdtB,YAAY,EACZC,IAAK,WACD,OAAOG,KAAKwjB,iBAAgB,SAAUjX,GAClC,IAAIqB,EAAUrB,EAAGqB,QAAS2P,EAAUhR,EAAGgR,QAASnF,EAAU7L,EAAG6L,QAC7D,OAAOqlD,GAAQlgD,GAASvF,UAAUpK,GAASgK,WAAWQ,SCHlE,IAcW,GAAS+b,GAdS,SAAUrmB,GAEnC,SAASivC,IACL,OAAkB,OAAXjvC,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAQ/D,OAVAwI,EAAUu0C,EAASjvC,GAInBivC,EAAQz8C,UAAU2+D,aAAe,SAAUp8C,GACvC,OAAOkR,GAAU,GAAO/zB,KAAM,SAAUqK,GAAKwY,KAEvC9Z,EAAW,CACjB,GAAY,WACbg0C,GAVqB,CAY1B/nB,KChBF5B,GAAU9yB,UAAUkX,MAAQ,WAExB,IADA,IAAIoL,EAAW,GACNphB,EAAK,EAAGA,EAAKC,UAAUC,OAAQF,IACpCohB,EAASphB,GAAMC,UAAUD,GAE7B,OAAO6H,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,OAAOoK,EAAYpK,MAAM,SAAUuM,GAC/B,MAAO,CAAC,EAAcvM,KAAKwjB,iBAAgB,SAAUjX,GAC7C,IAAIqB,EAAUrB,EAAGqB,QAAS2P,EAAUhR,EAAGgR,QAASnF,EAAU7L,EAAG6L,QAC7D,OAAO,GAAOmF,GAASvF,UAAUpK,GAASgK,WAAWQ,GAAS6mD,aAAa,CAAEr8C,SAAUA,eCJ3G,IAYW,GAAeuR,GAZS,SAAUrmB,GAEzC,SAAS+gD,IACL,OAAkB,OAAX/gD,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAM/D,OARAwI,EAAUqmD,EAAe/gD,GAIT/E,EAAW,CACvB,KACA+qD,MACDjF,GAR2B,CAUhC75B,KAoDS,GAAgBb,GA9CS,SAAUrmB,GAE1C,SAASugD,IACL,OAAkB,OAAXvgD,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAwC/D,OA1CAwI,EAAU6lD,EAAgBvgD,GAc1BugD,EAAe/tD,UAAUqQ,IAAM,SAAUuuD,EAAY1Q,EAAiBjgD,EAAUugD,EAAoBpuC,GAEhG,YADc,IAAVA,IAAoBA,EAAQ,IACzBrX,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAI8jB,EAAUphB,EACd,OAAO0H,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAOD,OANAsZ,EAAW,EAAO,CACdo7C,WAAYA,EACZpQ,mBAAoBA,EACpBN,gBAAiBA,EACjBjgD,SAAUA,GACXmS,GACI,CAAC,EAAaqT,GAAU/zB,KAAMqK,GAAKyZ,KAC9C,KAAK,EAED,MAAO,CAAC,EAAc,CACdphB,KAFRA,EAAO6J,EAAG9B,OAGFkkD,aAAc3uD,KAAKmpB,QAAQzmB,EAAKgQ,cAM3C3J,EAAW,CACxB,GAAY,iBACZogB,GAAQ,KACTklC,GA1C4B,CA4CjC55B,KClEFtrB,QAAQxJ,eAAeyzB,GAAU9yB,UAAW,gBAAiB,CACzDY,cAAc,EACdtB,YAAY,EACZC,IAAK,WACD,OAAOG,KAAKwjB,iBAAgB,SAAUjX,GAClC,IAAIqB,EAAUrB,EAAGqB,QAAS2P,EAAUhR,EAAGgR,QAASnF,EAAU7L,EAAG6L,QAC7D,OAAO,GAAcmF,GAASvF,UAAUpK,GAASgK,WAAWQ,SCCxE,IA+EW+mD,GAAOhrC,GA/ES,SAAUrmB,GAEjC,SAASsxD,IACL,OAAkB,OAAXtxD,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAyE/D,OA3EAwI,EAAU42D,EAAOtxD,GAIjBpO,OAAOC,eAAey/D,EAAM9+D,UAAW,WAAY,CAC/CT,IAAK,WACD,OAAOw/D,GAASr/D,OAEpBJ,YAAY,EACZsB,cAAc,IAOlBk+D,EAAM9+D,UAAUg/D,QAAU,SAAUC,GAEhC,YAD2C,IAAvCA,IAAiDA,GAAqC,GACnFxrC,GAAU/zB,KAAKgX,MAAMmoD,GAAM,WAAY90D,GAAK,CAAEk1D,mCAAoCA,MAK7FH,EAAM9+D,UAAUk/D,UAAY,WACxB,OAAOzrC,GAAU/zB,KAAKgX,MAAMmoD,GAAM,eAStCC,EAAM9+D,UAAUm/D,UAAY,SAAUvyD,EAAMoY,EAAao6C,EAAcC,GAInE,YAHoB,IAAhBr6C,IAA0BA,EAAc,SACvB,IAAjBo6C,IAA2BA,EAAe,4CAC3B,IAAfC,IAAyBA,EAAa,WACnCt2D,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAI8jB,EAAUjR,EAAQ+sD,EAASl9D,EAAMuH,EAAQwT,EAAYoiD,EACzD,OAAOz1D,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAUD,OATAsZ,EAAW,CACPwB,YAAaA,GAA4B,GACzCkB,YAAatZ,EACbiqD,aAAcjqD,EACdwyD,aAAcA,EACdC,WAAYA,GAEhB9sD,EAAS,IAAIgE,IAAa,SAAUpW,GAAK,OAAOiJ,QAAQC,QAAQlJ,EAAEwM,YAClE2yD,EAAUE,GAAM9/D,KAAM,SAASuY,YAAY1F,GACpC,CAAC,EAAakhB,GAAU6rC,EAASv1D,GAAKyZ,KACjD,KAAK,EAWD,OAVAphB,EAAO6J,EAAG9B,OACVR,EAAS,CAAE81D,OAAQ,GAAIC,YAAa,IAChCt9D,EAAKyJ,IAAI,cACTsR,EAAa/a,EAAK7C,IAAI,YAEO,KAD7BggE,EAAgBpiD,EAAW0C,MAAM,MACfze,SACduI,EAAO81D,OAASF,EAAc,GAAGtrC,UAAUsrC,EAAc,GAAGj0D,QAAQ,KAAO,EAAGi0D,EAAc,GAAG3gD,YAAY,MAC3GjV,EAAO+1D,YAAcH,EAAc,GAAGtrC,UAAUsrC,EAAc,GAAGj0D,QAAQ,KAAO,EAAGi0D,EAAc,GAAG3gD,YAAY,QAGjH,CAAC,EAAcjV,WAK1Cm1D,EAAM9+D,UAAU2/D,iBAAmB,SAAUvtD,GACzC,OAAOuiB,GAAuBj1B,KAAM,cAAgB0S,EAA7CuiB,IAEHlsB,EAAW,CACf,GAAY,QACZ+qD,MACDsL,GA3EmB,CA6ExBpqC,KA2CS8qC,GAAQ3rC,GArCS,SAAUrmB,GAElC,SAASoyD,IACL,OAAkB,OAAXpyD,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KA+B/D,OAjCAwI,EAAU03D,EAAQpyD,GAIlBoyD,EAAO5/D,UAAUsI,OAAS,SAAUu3D,GAChC,OAAO92D,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAI6S,EAAQ+sD,EAASl9D,EAAMuH,EAAQm2D,EAAYP,EAC/C,OAAOz1D,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAGD,OAFAqI,EAAS,IAAIgE,IAAa,SAAUpW,GAAK,OAAOiJ,QAAQC,QAAQlJ,EAAEwM,YAClE2yD,EAAUE,GAAM9/D,KAAM,MAAMuY,YAAY1F,GACjC,CAAC,EAAakhB,GAAU6rC,EAASv1D,GAAK81D,KACjD,KAAK,EAWD,OAVAz9D,EAAO6J,EAAG9B,OACVR,EAAS,CAAE81D,OAAQ,GAAIC,YAAa,IAChCt9D,EAAKyJ,IAAI,cACTi0D,EAAa19D,EAAK7C,IAAI,YAEO,KAD7BggE,EAAgBO,EAAWjgD,MAAM,MACfze,SACduI,EAAO81D,OAASF,EAAc,GAAGtrC,UAAUsrC,EAAc,GAAGj0D,QAAQ,KAAO,EAAGi0D,EAAc,GAAG3gD,YAAY,MAC3GjV,EAAO+1D,YAAcH,EAAc,GAAGtrC,UAAUsrC,EAAc,GAAGj0D,QAAQ,KAAO,EAAGi0D,EAAc,GAAG3gD,YAAY,QAGjH,CAAC,EAAcjV,WAKjClB,EAAW,CAChB,GAAY,SACZogB,GAAQg2C,KACTe,GAjCoB,CAmCzBzrC,KAqBS4rC,GAAUlsC,GAfS,SAAUrmB,GAEpC,SAASwyD,IACL,OAAkB,OAAXxyD,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAS/D,OAXAwI,EAAU83D,EAAUxyD,GAIpBpO,OAAOC,eAAe2gE,EAAShgE,UAAW,OAAQ,CAC9CT,IAAK,WACD,OAAO0gE,GAAKvgE,OAEhBJ,YAAY,EACZsB,cAAc,IAEXo/D,EAZkB,CAa3BtrC,KA8CSqqC,GAAWlrC,GAxCS,SAAUrmB,GAErC,SAAS0yD,IACL,OAAkB,OAAX1yD,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAkC/D,OApCAwI,EAAUg4D,EAAW1yD,GAUrB0yD,EAAUlgE,UAAUqQ,IAAM,SAAU6V,EAAalB,GAE7C,YADoB,IAAhBA,IAA0BA,EAAc,IACrCjc,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAc0C,EACd,OAAO0H,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAKD,MAAO,CAAC,EAAaupB,GAAU/zB,KAAMqK,GAJ1B,CACPib,YAAaA,EACbkB,YAAaA,MAGrB,KAAK,EAED,OADA9jB,EAAO6J,EAAG9B,OACH,CAAC,EAAc,CACdg2D,QAASzgE,KAAKmpB,QAAQzmB,EAAKgQ,IAC3BhQ,KAAMA,YAMtBqG,EAAW,CACnB,GAAY,YACZogB,GAAQk3C,KACTG,GApCuB,CAsC5B/rC,KAmBSisC,GAAMvsC,GAbS,SAAUrmB,GAEhC,SAAS6yD,IACL,OAAkB,OAAX7yD,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAO/D,OATAwI,EAAUm4D,EAAM7yD,GAIT/E,EAAW,CACd,GAAY,OACZ+qD,KACA,MACD6M,GATkB,CAWvB3rC,KA6CSurC,GAAOpsC,GAvCS,SAAUrmB,GAEjC,SAAS8yD,IACL,OAAkB,OAAX9yD,GAAmBA,EAAOlK,MAAM5D,KAAMyB,YAAczB,KAiC/D,OAnCAwI,EAAUo4D,EAAO9yD,GAUjB8yD,EAAMtgE,UAAUqQ,IAAM,SAAUzD,EAAM2zD,EAAQl5C,GAC1C,OAAOte,EAAUrJ,UAAM,OAAQ,GAAQ,WACnC,IAAI8jB,EAAUphB,EACd,OAAO0H,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAKD,OAJAsZ,EAAW,EAAO,CACd0C,YAAatZ,EACb,sBAAuB2zD,GACxBl5C,GACI,CAAC,EAAaoM,GAAU/zB,KAAMqK,GAAKyZ,KAC9C,KAAK,EAED,MAAO,CAAC,EAAc,CACdphB,KAFRA,EAAO6J,EAAG9B,OAGFq2D,IAAK9gE,KAAKmpB,QAAQzmB,EAAKgQ,cAM3C3J,EAAW,CACf,GAAY,QACZogB,GAAQu3C,KACTE,GAnCmB,CAqCxBnsC,KCxPF9gB,GAAQ0kD,GAAO,cAAeyH,GAAO,eCKrCnsD,GAAQ4iD,GAAQ,OAAQ4I,IACxB5I,GAAOj2D,UAAUygE,WAAa,SAAUrgD,GACpC,OAAOrX,EAAUrJ,UAAM,OAAQ,GAAQ,WAEnC,OAAOoK,EAAYpK,MAAM,SAAUuM,GAC/B,OAAQA,EAAG/B,OACP,KAAK,EAAG,MAAO,CAAC,EAAa0pB,GAASl0B,KAAKgX,MAAMy/C,GAAO,QAASpsD,GAAKqW,KACtE,KAAK,EAED,MAAO,CAAC,EAAc,CACdhe,KAFD6J,EAAG9B,OAGF01D,KAAMngE,KAAKmgE,eAMvCh3D,QAAQxJ,eAAeyzB,GAAU9yB,UAAW,QAAS,CACjDY,cAAc,EACdtB,YAAY,EACZC,IAAK,WACD,OAAOG,KAAKwjB,iBAAgB,SAAUjX,GAClC,IAAIqB,EAAUrB,EAAGqB,QAAS2P,EAAUhR,EAAGgR,QAASnF,EAAU7L,EAAG6L,QAC7D,OAAO0nD,GAAMviD,GAASvF,UAAUpK,GAASgK,WAAWQ,SC5BhEjP,QAAQxJ,eAAeyzB,GAAU9yB,UAAW,KAAM,CAC9CY,cAAc,EACdtB,YAAY,EACZC,IAAK,WACD,OAAOG,KAAKwjB,iBAAgB,SAAUjX,GAClC,IAAIqB,EAAUrB,EAAGqB,QAAS2P,EAAUhR,EAAGgR,QAASnF,EAAU7L,EAAG6L,QAC7D,OAAOmgD,GAAKh7C,EAAS,MAAMvF,UAAUpK,GAASgK,WAAWQ,SAIrEjP,QAAQxJ,eAAeyzB,GAAU9yB,UAAW,QAAS,CACjDY,cAAc,EACdtB,YAAY,EACZC,IAAK,WACD,OAAOG,KAAKwjB,iBAAgB,SAAUjX,GAClC,IAAIqB,EAAUrB,EAAGqB,QAAS2P,EAAUhR,EAAGgR,QAASnF,EAAU7L,EAAG6L,QAC7D,OAAOogD,GAAMj7C,GAASvF,UAAUpK,GAASgK,WAAWQ,SCEzD,IAAI4oD,GAAO,CACd74D,OAAQ,EACRtD,QAASA,EACThB,QAASA,EACTJ,eAAgBA,EAChBmC,QAASA,EACTT,gBAAiBA,EACjBgB,QAASA,EACTH,OAAQA,EACRc,cAAeA,EACfZ,qBAAsBA,EACtBe,aAAcA,EACdhC,oBAAqBA,GAKd,GAAK,GAIL,GAAQ,GAIR,GAAU,IAAImL,EAIdhE,GAAS,IAAIqE,EAIbvO,GAAMpB,EAIN,GCzDJ,SAAesL,GAClBP,EAAe1D,OAAOiE,ID2F1B,SAjCU,CAINA,OAAQA,GAIRolB,MAAO,GAIPtvB,IAAKA,GAILkhB,MAAO,GAIPlG,GAAI,GAIJ9J,QAAS,GAIT4tD,KAAMA,I","file":"pnp.js","sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"pnp\"] = factory();\n\telse\n\t\troot[\"pnp\"] = factory();\n})(self, function() {\nreturn ","// The require scope\nvar __webpack_require__ = {};\n\n","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","/**\r\n * Class used to subscribe ILogListener and log messages throughout an application\r\n *\r\n */\r\nvar Logger = /** @class */ (function () {\r\n function Logger() {\r\n }\r\n Object.defineProperty(Logger, \"activeLogLevel\", {\r\n /**\r\n * Gets or sets the active log level to apply for log filtering\r\n */\r\n get: function () {\r\n return Logger.instance.activeLogLevel;\r\n },\r\n set: function (value) {\r\n Logger.instance.activeLogLevel = value;\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n Object.defineProperty(Logger, \"instance\", {\r\n get: function () {\r\n if (Logger._instance === undefined || Logger._instance === null) {\r\n Logger._instance = new LoggerImpl();\r\n }\r\n return Logger._instance;\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n /**\r\n * Adds ILogListener instances to the set of subscribed listeners\r\n *\r\n * @param listeners One or more listeners to subscribe to this log\r\n */\r\n Logger.subscribe = function () {\r\n var listeners = [];\r\n for (var _i = 0; _i < arguments.length; _i++) {\r\n listeners[_i] = arguments[_i];\r\n }\r\n listeners.forEach(function (listener) { return Logger.instance.subscribe(listener); });\r\n };\r\n /**\r\n * Clears the subscribers collection, returning the collection before modification\r\n */\r\n Logger.clearSubscribers = function () {\r\n return Logger.instance.clearSubscribers();\r\n };\r\n Object.defineProperty(Logger, \"count\", {\r\n /**\r\n * Gets the current subscriber count\r\n */\r\n get: function () {\r\n return Logger.instance.count;\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n /**\r\n * Writes the supplied string to the subscribed listeners\r\n *\r\n * @param message The message to write\r\n * @param level [Optional] if supplied will be used as the level of the entry (Default: LogLevel.Info)\r\n */\r\n Logger.write = function (message, level) {\r\n if (level === void 0) { level = 1 /* Info */; }\r\n Logger.instance.log({ level: level, message: message });\r\n };\r\n /**\r\n * Writes the supplied string to the subscribed listeners\r\n *\r\n * @param json The json object to stringify and write\r\n * @param level [Optional] if supplied will be used as the level of the entry (Default: LogLevel.Info)\r\n */\r\n Logger.writeJSON = function (json, level) {\r\n if (level === void 0) { level = 1 /* Info */; }\r\n this.write(JSON.stringify(json), level);\r\n };\r\n /**\r\n * Logs the supplied entry to the subscribed listeners\r\n *\r\n * @param entry The message to log\r\n */\r\n Logger.log = function (entry) {\r\n Logger.instance.log(entry);\r\n };\r\n /**\r\n * Logs an error object to the subscribed listeners\r\n *\r\n * @param err The error object\r\n */\r\n Logger.error = function (err) {\r\n Logger.instance.log({ data: err, level: 3 /* Error */, message: err.message });\r\n };\r\n return Logger;\r\n}());\r\nexport { Logger };\r\nvar LoggerImpl = /** @class */ (function () {\r\n function LoggerImpl(activeLogLevel, subscribers) {\r\n if (activeLogLevel === void 0) { activeLogLevel = 2 /* Warning */; }\r\n if (subscribers === void 0) { subscribers = []; }\r\n this.activeLogLevel = activeLogLevel;\r\n this.subscribers = subscribers;\r\n }\r\n LoggerImpl.prototype.subscribe = function (listener) {\r\n this.subscribers.push(listener);\r\n };\r\n LoggerImpl.prototype.clearSubscribers = function () {\r\n var s = this.subscribers.slice(0);\r\n this.subscribers.length = 0;\r\n return s;\r\n };\r\n Object.defineProperty(LoggerImpl.prototype, \"count\", {\r\n get: function () {\r\n return this.subscribers.length;\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n LoggerImpl.prototype.write = function (message, level) {\r\n if (level === void 0) { level = 1 /* Info */; }\r\n this.log({ level: level, message: message });\r\n };\r\n LoggerImpl.prototype.log = function (entry) {\r\n if (entry !== undefined && this.activeLogLevel <= entry.level) {\r\n this.subscribers.map(function (subscriber) { return subscriber.log(entry); });\r\n }\r\n };\r\n return LoggerImpl;\r\n}());\r\n/**\r\n * A set of logging levels\r\n */\r\nexport var LogLevel;\r\n(function (LogLevel) {\r\n LogLevel[LogLevel[\"Verbose\"] = 0] = \"Verbose\";\r\n LogLevel[LogLevel[\"Info\"] = 1] = \"Info\";\r\n LogLevel[LogLevel[\"Warning\"] = 2] = \"Warning\";\r\n LogLevel[LogLevel[\"Error\"] = 3] = \"Error\";\r\n LogLevel[LogLevel[\"Off\"] = 99] = \"Off\";\r\n})(LogLevel || (LogLevel = {}));\r\n//# sourceMappingURL=logger.js.map","/**\r\n * Implementation of LogListener which logs to the console\r\n *\r\n */\r\nvar ConsoleListener = /** @class */ (function () {\r\n function ConsoleListener() {\r\n }\r\n /**\r\n * Any associated data that a given logging listener may choose to log or ignore\r\n *\r\n * @param entry The information to be logged\r\n */\r\n ConsoleListener.prototype.log = function (entry) {\r\n var msg = this.format(entry);\r\n switch (entry.level) {\r\n case 0 /* Verbose */:\r\n case 1 /* Info */:\r\n console.log(msg);\r\n break;\r\n case 2 /* Warning */:\r\n console.warn(msg);\r\n break;\r\n case 3 /* Error */:\r\n console.error(msg);\r\n break;\r\n }\r\n };\r\n /**\r\n * Formats the message\r\n *\r\n * @param entry The information to format into a string\r\n */\r\n ConsoleListener.prototype.format = function (entry) {\r\n var msg = [];\r\n msg.push(\"Message: \" + entry.message);\r\n if (entry.data !== undefined) {\r\n try {\r\n msg.push(\" Data: \" + JSON.stringify(entry.data));\r\n }\r\n catch (e) {\r\n msg.push(\" Data: Error in stringify of supplied data \" + e);\r\n }\r\n }\r\n return msg.join(\"\");\r\n };\r\n return ConsoleListener;\r\n}());\r\nexport { ConsoleListener };\r\n/**\r\n * Implementation of LogListener which logs to the supplied function\r\n *\r\n */\r\nvar FunctionListener = /** @class */ (function () {\r\n /**\r\n * Creates a new instance of the FunctionListener class\r\n *\r\n * @constructor\r\n * @param method The method to which any logging data will be passed\r\n */\r\n function FunctionListener(method) {\r\n this.method = method;\r\n }\r\n /**\r\n * Any associated data that a given logging listener may choose to log or ignore\r\n *\r\n * @param entry The information to be logged\r\n */\r\n FunctionListener.prototype.log = function (entry) {\r\n this.method(entry);\r\n };\r\n return FunctionListener;\r\n}());\r\nexport { FunctionListener };\r\n//# sourceMappingURL=listeners.js.map","/**\r\n * Gets a callback function which will maintain context across async calls.\r\n * Allows for the calling pattern getCtxCallback(thisobj, method, methodarg1, methodarg2, ...)\r\n *\r\n * @param context The object that will be the 'this' value in the callback\r\n * @param method The method to which we will apply the context and parameters\r\n * @param params Optional, additional arguments to supply to the wrapped method when it is invoked\r\n */\r\n// eslint-disable-next-line @typescript-eslint/ban-types\r\nexport function getCtxCallback(context, method) {\r\n var params = [];\r\n for (var _i = 2; _i < arguments.length; _i++) {\r\n params[_i - 2] = arguments[_i];\r\n }\r\n return function () {\r\n method.apply(context, params);\r\n };\r\n}\r\n/**\r\n * Adds a value to a date\r\n *\r\n * @param date The date to which we will add units, done in local time\r\n * @param interval The name of the interval to add, one of: ['year', 'quarter', 'month', 'week', 'day', 'hour', 'minute', 'second']\r\n * @param units The amount to add to date of the given interval\r\n *\r\n * http://stackoverflow.com/questions/1197928/how-to-add-30-minutes-to-a-javascript-date-object\r\n */\r\nexport function dateAdd(date, interval, units) {\r\n var ret = new Date(date.toString()); // don't change original date\r\n switch (interval.toLowerCase()) {\r\n case \"year\":\r\n ret.setFullYear(ret.getFullYear() + units);\r\n break;\r\n case \"quarter\":\r\n ret.setMonth(ret.getMonth() + 3 * units);\r\n break;\r\n case \"month\":\r\n ret.setMonth(ret.getMonth() + units);\r\n break;\r\n case \"week\":\r\n ret.setDate(ret.getDate() + 7 * units);\r\n break;\r\n case \"day\":\r\n ret.setDate(ret.getDate() + units);\r\n break;\r\n case \"hour\":\r\n ret.setTime(ret.getTime() + units * 3600000);\r\n break;\r\n case \"minute\":\r\n ret.setTime(ret.getTime() + units * 60000);\r\n break;\r\n case \"second\":\r\n ret.setTime(ret.getTime() + units * 1000);\r\n break;\r\n default:\r\n ret = undefined;\r\n break;\r\n }\r\n return ret;\r\n}\r\n/**\r\n * Combines an arbitrary set of paths ensuring and normalizes the slashes\r\n *\r\n * @param paths 0 to n path parts to combine\r\n */\r\nexport function combine() {\r\n var paths = [];\r\n for (var _i = 0; _i < arguments.length; _i++) {\r\n paths[_i] = arguments[_i];\r\n }\r\n return paths\r\n .filter(function (path) { return !stringIsNullOrEmpty(path); })\r\n .map(function (path) { return path.replace(/^[\\\\|/]/, \"\").replace(/[\\\\|/]$/, \"\"); })\r\n .join(\"/\")\r\n .replace(/\\\\/g, \"/\");\r\n}\r\n/**\r\n * Gets a random string of chars length\r\n *\r\n * https://stackoverflow.com/questions/1349404/generate-random-string-characters-in-javascript\r\n *\r\n * @param chars The length of the random string to generate\r\n */\r\nexport function getRandomString(chars) {\r\n var text = new Array(chars);\r\n for (var i = 0; i < chars; i++) {\r\n text[i] = \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789\".charAt(Math.floor(Math.random() * 62));\r\n }\r\n return text.join(\"\");\r\n}\r\n/**\r\n * Gets a random GUID value\r\n *\r\n * http://stackoverflow.com/questions/105034/create-guid-uuid-in-javascript\r\n */\r\n/* eslint-disable no-bitwise */\r\nexport function getGUID() {\r\n var d = Date.now();\r\n return \"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx\".replace(/[xy]/g, function (c) {\r\n var r = (d + Math.random() * 16) % 16 | 0;\r\n d = Math.floor(d / 16);\r\n return (c === \"x\" ? r : (r & 0x3 | 0x8)).toString(16);\r\n });\r\n}\r\n/* eslint-enable no-bitwise */\r\n/**\r\n * Determines if a given value is a function\r\n *\r\n * @param cf The thing to test for functionness\r\n */\r\nexport function isFunc(f) {\r\n return typeof f === \"function\";\r\n}\r\n/**\r\n * Determines if an object is both defined and not null\r\n * @param obj Object to test\r\n */\r\nexport function objectDefinedNotNull(obj) {\r\n return typeof obj !== \"undefined\" && obj !== null;\r\n}\r\n/**\r\n * @returns whether the provided parameter is a JavaScript Array or not.\r\n*/\r\nexport function isArray(array) {\r\n return Array.isArray ? Array.isArray(array) : array && typeof array.length === \"number\" && array.constructor === Array;\r\n}\r\n/**\r\n * Provides functionality to extend the given object by doing a shallow copy\r\n *\r\n * @param target The object to which properties will be copied\r\n * @param source The source object from which properties will be copied\r\n * @param noOverwrite If true existing properties on the target are not overwritten from the source\r\n * @param filter If provided allows additional filtering on what properties are copied (propName: string) => boolean\r\n *\r\n */\r\nexport function assign(target, source, noOverwrite, filter) {\r\n if (noOverwrite === void 0) { noOverwrite = false; }\r\n if (filter === void 0) { filter = function () { return true; }; }\r\n if (!objectDefinedNotNull(source)) {\r\n return target;\r\n }\r\n // ensure we don't overwrite things we don't want overwritten\r\n var check = noOverwrite ? function (o, i) { return !(i in o); } : function () { return true; };\r\n // final filter we will use\r\n var f = function (v) { return check(target, v) && filter(v); };\r\n return Object.getOwnPropertyNames(source)\r\n .filter(f)\r\n .reduce(function (t, v) {\r\n t[v] = source[v];\r\n return t;\r\n }, target);\r\n}\r\n/**\r\n * Determines if a given url is absolute\r\n *\r\n * @param url The url to check to see if it is absolute\r\n */\r\nexport function isUrlAbsolute(url) {\r\n return /^https?:\\/\\/|^\\/\\//i.test(url);\r\n}\r\n/**\r\n * Determines if a string is null or empty or undefined\r\n *\r\n * @param s The string to test\r\n */\r\nexport function stringIsNullOrEmpty(s) {\r\n return s === undefined || s === null || s.length < 1;\r\n}\r\n/**\r\n * Ensures guid values are represented consistently as \"ea123463-137d-4ae3-89b8-cf3fc578ca05\"\r\n *\r\n * @param guid The candidate guid\r\n */\r\nexport function sanitizeGuid(guid) {\r\n if (stringIsNullOrEmpty(guid)) {\r\n return guid;\r\n }\r\n var matches = /([0-9A-F]{8}-[0-9A-F]{4}-[0-9A-F]{4}-[0-9A-F]{4}-[0-9A-F]{12})/i.exec(guid);\r\n return matches === null ? guid : matches[1];\r\n}\r\n/**\r\n * Shorthand for JSON.stringify\r\n *\r\n * @param o Any type of object\r\n */\r\nexport function jsS(o) {\r\n return JSON.stringify(o);\r\n}\r\n/**\r\n * Shorthand for Object.hasOwnProperty\r\n *\r\n * @param o Object to check for\r\n * @param p Name of the property\r\n */\r\nexport function hOP(o, p) {\r\n return Object.hasOwnProperty.call(o, p);\r\n}\r\n/**\r\n * Generates a ~unique hash code\r\n *\r\n * From: https://stackoverflow.com/questions/6122571/simple-non-secure-hash-function-for-javascript\r\n */\r\n/* eslint-disable no-bitwise */\r\nexport function getHashCode(s) {\r\n var hash = 0;\r\n if (s.length === 0) {\r\n return hash;\r\n }\r\n for (var i = 0; i < s.length; i++) {\r\n var chr = s.charCodeAt(i);\r\n hash = ((hash << 5) - hash) + chr;\r\n hash |= 0; // Convert to 32bit integer\r\n }\r\n return hash;\r\n}\r\n/* eslint-enable no-bitwise */\r\n//# sourceMappingURL=util.js.map","import { isFunc, objectDefinedNotNull } from \"./util.js\";\r\n/**\r\n * Used to calculate the object properties, with polyfill if needed\r\n */\r\nvar objectEntries = isFunc(Object.entries) ? Object.entries : function (o) { return Object.keys(o).map(function (k) { return [k, o[k]]; }); };\r\n/**\r\n * Converts the supplied object to a map\r\n *\r\n * @param o The object to map\r\n */\r\nexport function objectToMap(o) {\r\n if (objectDefinedNotNull(o)) {\r\n return new Map(objectEntries(o));\r\n }\r\n return new Map();\r\n}\r\n/**\r\n * Merges to Map instances together, overwriting values in target with matching keys, last in wins\r\n *\r\n * @param target map into which the other maps are merged\r\n * @param maps One or more maps to merge into the target\r\n */\r\nexport function mergeMaps(target) {\r\n var maps = [];\r\n for (var _i = 1; _i < arguments.length; _i++) {\r\n maps[_i - 1] = arguments[_i];\r\n }\r\n for (var i = 0; i < maps.length; i++) {\r\n maps[i].forEach(function (v, k) {\r\n // let's not run the spfx context through Object.assign :)\r\n if ((typeof k === \"string\" && k !== \"spfxContext\") && Object.prototype.toString.call(v) === \"[object Object]\") {\r\n // we only handle one level of deep object merging\r\n target.set(k, Object.assign({}, target.get(k) || {}, v));\r\n }\r\n else {\r\n target.set(k, v);\r\n }\r\n });\r\n }\r\n return target;\r\n}\r\n//# sourceMappingURL=collections.js.map","/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from) {\r\n for (var i = 0, il = from.length, j = to.length; i < il; i++, j++)\r\n to[j] = from[i];\r\n return to;\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","import { __read, __values } from \"tslib\";\r\nimport { mergeMaps, objectToMap } from \"./collections.js\";\r\nexport function setup(config, runtime) {\r\n if (runtime === void 0) { runtime = DefaultRuntime; }\r\n runtime.assign(config);\r\n}\r\n// lable mapping for known config values\r\nvar s = [\r\n \"defaultCachingStore\",\r\n \"defaultCachingTimeoutSeconds\",\r\n \"globalCacheDisable\",\r\n \"enableCacheExpiration\",\r\n \"cacheExpirationIntervalMilliseconds\",\r\n \"spfxContext\",\r\n \"ie11\",\r\n];\r\nvar runtimeCreateHooks = [];\r\nexport function onRuntimeCreate(hook) {\r\n if (runtimeCreateHooks.indexOf(hook) < 0) {\r\n // apply hook logic to default runtime\r\n hook(DefaultRuntime);\r\n runtimeCreateHooks.push(hook);\r\n }\r\n}\r\nvar Runtime = /** @class */ (function () {\r\n function Runtime(_v) {\r\n var _this = this;\r\n if (_v === void 0) { _v = new Map(); }\r\n this._v = _v;\r\n var defaulter = function (key, def) {\r\n if (!_this._v.has(key)) {\r\n _this._v.set(key, def);\r\n }\r\n };\r\n // setup defaults\r\n defaulter(s[0], \"session\");\r\n defaulter(s[1], 60);\r\n defaulter(s[2], false);\r\n defaulter(s[3], false);\r\n defaulter(s[4], 750);\r\n defaulter(s[5], null);\r\n defaulter(s[6], false);\r\n runtimeCreateHooks.forEach(function (hook) { return hook(_this); });\r\n }\r\n /**\r\n *\r\n * @param config The set of properties to add to this runtime instance\r\n */\r\n Runtime.prototype.assign = function (config) {\r\n this._v = mergeMaps(this._v, objectToMap(config));\r\n };\r\n /**\r\n * Gets a runtime value using T to define the available keys, and R to define the type returned by that key\r\n *\r\n * @param key\r\n */\r\n Runtime.prototype.get = function (key) {\r\n return this._v.get(key);\r\n };\r\n /**\r\n * Exports the internal Map representing this runtime\r\n */\r\n Runtime.prototype.export = function () {\r\n var e_1, _a;\r\n var expt = new Map();\r\n try {\r\n for (var _b = __values(this._v), _c = _b.next(); !_c.done; _c = _b.next()) {\r\n var _d = __read(_c.value, 2), key = _d[0], value = _d[1];\r\n if (key !== \"__isDefault__\") {\r\n expt.set(key, value);\r\n }\r\n }\r\n }\r\n catch (e_1_1) { e_1 = { error: e_1_1 }; }\r\n finally {\r\n try {\r\n if (_c && !_c.done && (_a = _b.return)) _a.call(_b);\r\n }\r\n finally { if (e_1) throw e_1.error; }\r\n }\r\n return expt;\r\n };\r\n return Runtime;\r\n}());\r\nexport { Runtime };\r\n// default runtime used globally\r\nvar _runtime = new Runtime(new Map([[\"__isDefault__\", true]]));\r\nexport var DefaultRuntime = _runtime;\r\n//# sourceMappingURL=libconfig.js.map","// export either window or global\r\nexport var safeGlobal = typeof global === \"undefined\" ? window : global;\r\n//# sourceMappingURL=safe-global.js.map","import { __awaiter, __extends, __generator } from \"tslib\";\r\nimport { assign, objectDefinedNotNull } from \"./util.js\";\r\nimport { safeGlobal } from \"./safe-global.js\";\r\nexport function mergeHeaders(target, source) {\r\n if (objectDefinedNotNull(source)) {\r\n var temp = new Request(\"\", { headers: source });\r\n temp.headers.forEach(function (value, name) {\r\n target.append(name, value);\r\n });\r\n }\r\n}\r\nexport function mergeOptions(target, source) {\r\n if (objectDefinedNotNull(source)) {\r\n var headers = assign(target.headers || {}, source.headers);\r\n target = assign(target, source);\r\n target.headers = headers;\r\n }\r\n}\r\n/**\r\n * Parses out the root of the request url to use as the resource when getting the token\r\n *\r\n * @param url The url to parse\r\n */\r\nexport function getADALResource(url) {\r\n var u = new URL(url);\r\n return u.protocol + \"//\" + u.hostname;\r\n}\r\n/**\r\n * Makes requests using the global/window fetch API\r\n */\r\nvar FetchClient = /** @class */ (function () {\r\n function FetchClient() {\r\n }\r\n FetchClient.prototype.fetch = function (url, options) {\r\n return safeGlobal.fetch(url, options);\r\n };\r\n return FetchClient;\r\n}());\r\nexport { FetchClient };\r\n/**\r\n * Makes requests using the fetch API adding the supplied token to the Authorization header\r\n */\r\nvar BearerTokenFetchClient = /** @class */ (function (_super) {\r\n __extends(BearerTokenFetchClient, _super);\r\n function BearerTokenFetchClient(token) {\r\n var _this = _super.call(this) || this;\r\n _this.token = token;\r\n return _this;\r\n }\r\n BearerTokenFetchClient.prototype.fetch = function (url, options) {\r\n if (options === void 0) { options = {}; }\r\n var headers = new Headers();\r\n mergeHeaders(headers, options.headers);\r\n headers.set(\"Authorization\", \"Bearer \" + this.token);\r\n options.headers = headers;\r\n return _super.prototype.fetch.call(this, url, options);\r\n };\r\n return BearerTokenFetchClient;\r\n}(FetchClient));\r\nexport { BearerTokenFetchClient };\r\nvar LambdaFetchClient = /** @class */ (function (_super) {\r\n __extends(LambdaFetchClient, _super);\r\n function LambdaFetchClient(tokenFactory) {\r\n var _this = _super.call(this, null) || this;\r\n _this.tokenFactory = tokenFactory;\r\n return _this;\r\n }\r\n /**\r\n * Executes a fetch request using the supplied url and options\r\n *\r\n * @param url Absolute url of the request\r\n * @param options Any options\r\n */\r\n LambdaFetchClient.prototype.fetch = function (url, options) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var _a;\r\n return __generator(this, function (_b) {\r\n switch (_b.label) {\r\n case 0:\r\n _a = this;\r\n return [4 /*yield*/, this.tokenFactory({ url: url, options: options })];\r\n case 1:\r\n _a.token = _b.sent();\r\n return [2 /*return*/, _super.prototype.fetch.call(this, url, options)];\r\n }\r\n });\r\n });\r\n };\r\n return LambdaFetchClient;\r\n}(BearerTokenFetchClient));\r\nexport { LambdaFetchClient };\r\n/**\r\n * Client wrapping the aadTokenProvider available from SPFx >= 1.6\r\n */\r\nvar SPFxAdalClient = /** @class */ (function (_super) {\r\n __extends(SPFxAdalClient, _super);\r\n /**\r\n *\r\n * @param context provide the appropriate SPFx Context object\r\n */\r\n function SPFxAdalClient(context) {\r\n var _this = _super.call(this, function (params) { return __awaiter(_this, void 0, void 0, function () {\r\n var provider;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0: return [4 /*yield*/, context.aadTokenProviderFactory.getTokenProvider()];\r\n case 1:\r\n provider = _a.sent();\r\n return [2 /*return*/, provider.getToken(getADALResource(params.url))];\r\n }\r\n });\r\n }); }) || this;\r\n _this.context = context;\r\n return _this;\r\n }\r\n /**\r\n * Gets an AAD token for the provided resource using the SPFx AADTokenProvider\r\n *\r\n * @param resource Resource for which a token is to be requested (ex: https://graph.microsoft.com)\r\n */\r\n SPFxAdalClient.prototype.getToken = function (resource) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var provider;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0: return [4 /*yield*/, this.context.aadTokenProviderFactory.getTokenProvider()];\r\n case 1:\r\n provider = _a.sent();\r\n return [2 /*return*/, provider.getToken(resource)];\r\n }\r\n });\r\n });\r\n };\r\n return SPFxAdalClient;\r\n}(LambdaFetchClient));\r\nexport { SPFxAdalClient };\r\n//# sourceMappingURL=net.js.map","import { __awaiter, __generator } from \"tslib\";\r\nimport { dateAdd, getCtxCallback, jsS, objectDefinedNotNull } from \"./util.js\";\r\nimport { DefaultRuntime } from \"./libconfig.js\";\r\n/**\r\n * A wrapper class to provide a consistent interface to browser based storage\r\n *\r\n */\r\nvar PnPClientStorageWrapper = /** @class */ (function () {\r\n /**\r\n * Creates a new instance of the PnPClientStorageWrapper class\r\n *\r\n * @constructor\r\n */\r\n function PnPClientStorageWrapper(store, defaultTimeoutMinutes) {\r\n if (defaultTimeoutMinutes === void 0) { defaultTimeoutMinutes = -1; }\r\n this.store = store;\r\n this.defaultTimeoutMinutes = defaultTimeoutMinutes;\r\n this.enabled = this.test();\r\n // if the cache timeout is enabled call the handler\r\n // this will clear any expired items and set the timeout function\r\n if (DefaultRuntime.get(\"enableCacheExpiration\")) {\r\n this.cacheExpirationHandler();\r\n }\r\n }\r\n PnPClientStorageWrapper.bind = function (store) {\r\n return new PnPClientStorageWrapper(typeof (store) === \"undefined\" ? new MemoryStorage() : store);\r\n };\r\n /**\r\n * Get a value from storage, or null if that value does not exist\r\n *\r\n * @param key The key whose value we want to retrieve\r\n */\r\n PnPClientStorageWrapper.prototype.get = function (key) {\r\n if (!this.enabled) {\r\n return null;\r\n }\r\n var o = this.store.getItem(key);\r\n if (!objectDefinedNotNull(o)) {\r\n return null;\r\n }\r\n var persistable = JSON.parse(o);\r\n if (new Date(persistable.expiration) <= new Date()) {\r\n this.delete(key);\r\n return null;\r\n }\r\n else {\r\n return persistable.value;\r\n }\r\n };\r\n /**\r\n * Adds a value to the underlying storage\r\n *\r\n * @param key The key to use when storing the provided value\r\n * @param o The value to store\r\n * @param expire Optional, if provided the expiration of the item, otherwise the default is used\r\n */\r\n PnPClientStorageWrapper.prototype.put = function (key, o, expire) {\r\n if (this.enabled) {\r\n this.store.setItem(key, this.createPersistable(o, expire));\r\n }\r\n };\r\n /**\r\n * Deletes a value from the underlying storage\r\n *\r\n * @param key The key of the pair we want to remove from storage\r\n */\r\n PnPClientStorageWrapper.prototype.delete = function (key) {\r\n if (this.enabled) {\r\n this.store.removeItem(key);\r\n }\r\n };\r\n /**\r\n * Gets an item from the underlying storage, or adds it if it does not exist using the supplied getter function\r\n *\r\n * @param key The key to use when storing the provided value\r\n * @param getter A function which will upon execution provide the desired value\r\n * @param expire Optional, if provided the expiration of the item, otherwise the default is used\r\n */\r\n PnPClientStorageWrapper.prototype.getOrPut = function (key, getter, expire) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var o;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n if (!this.enabled) {\r\n return [2 /*return*/, getter()];\r\n }\r\n o = this.get(key);\r\n if (!(o === null)) return [3 /*break*/, 2];\r\n return [4 /*yield*/, getter()];\r\n case 1:\r\n o = _a.sent();\r\n this.put(key, o, expire);\r\n _a.label = 2;\r\n case 2: return [2 /*return*/, o];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Deletes any expired items placed in the store by the pnp library, leaves other items untouched\r\n */\r\n PnPClientStorageWrapper.prototype.deleteExpired = function () {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var i, key;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n if (!this.enabled) {\r\n return [2 /*return*/];\r\n }\r\n i = 0;\r\n _a.label = 1;\r\n case 1:\r\n if (!(i < this.store.length)) return [3 /*break*/, 4];\r\n key = this.store.key(i);\r\n if (!(key !== null)) return [3 /*break*/, 3];\r\n if (!/[\"|']?pnp[\"|']? ?: ?1/i.test(this.store.getItem(key))) return [3 /*break*/, 3];\r\n // get those items as get will delete from cache if they are expired\r\n return [4 /*yield*/, this.get(key)];\r\n case 2:\r\n // get those items as get will delete from cache if they are expired\r\n _a.sent();\r\n _a.label = 3;\r\n case 3:\r\n i++;\r\n return [3 /*break*/, 1];\r\n case 4: return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Used to determine if the wrapped storage is available currently\r\n */\r\n PnPClientStorageWrapper.prototype.test = function () {\r\n var str = \"t\";\r\n try {\r\n this.store.setItem(str, str);\r\n this.store.removeItem(str);\r\n return true;\r\n }\r\n catch (e) {\r\n return false;\r\n }\r\n };\r\n /**\r\n * Creates the persistable to store\r\n */\r\n PnPClientStorageWrapper.prototype.createPersistable = function (o, expire) {\r\n if (expire === undefined) {\r\n // ensure we are by default inline with the global library setting\r\n var defaultTimeout = DefaultRuntime.get(\"defaultCachingTimeoutSeconds\");\r\n if (this.defaultTimeoutMinutes > 0) {\r\n defaultTimeout = this.defaultTimeoutMinutes * 60;\r\n }\r\n expire = dateAdd(new Date(), \"second\", defaultTimeout);\r\n }\r\n return jsS({ pnp: 1, expiration: expire, value: o });\r\n };\r\n /**\r\n * Deletes expired items added by this library in this.store and sets a timeout to call itself\r\n */\r\n PnPClientStorageWrapper.prototype.cacheExpirationHandler = function () {\r\n var _this = this;\r\n if (!this.enabled) {\r\n return;\r\n }\r\n this.deleteExpired().then(function () {\r\n // call ourself in the future\r\n setTimeout(getCtxCallback(_this, _this.cacheExpirationHandler), DefaultRuntime.get(\"cacheExpirationIntervalMilliseconds\"));\r\n }).catch(console.error);\r\n };\r\n return PnPClientStorageWrapper;\r\n}());\r\nexport { PnPClientStorageWrapper };\r\n/**\r\n * A thin implementation of in-memory storage for use in nodejs\r\n */\r\nvar MemoryStorage = /** @class */ (function () {\r\n function MemoryStorage(_store) {\r\n if (_store === void 0) { _store = new Map(); }\r\n this._store = _store;\r\n }\r\n Object.defineProperty(MemoryStorage.prototype, \"length\", {\r\n get: function () {\r\n return this._store.size;\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n MemoryStorage.prototype.clear = function () {\r\n this._store.clear();\r\n };\r\n MemoryStorage.prototype.getItem = function (key) {\r\n return this._store.get(key);\r\n };\r\n MemoryStorage.prototype.key = function (index) {\r\n return Array.from(this._store)[index][0];\r\n };\r\n MemoryStorage.prototype.removeItem = function (key) {\r\n this._store.delete(key);\r\n };\r\n MemoryStorage.prototype.setItem = function (key, data) {\r\n this._store.set(key, data);\r\n };\r\n return MemoryStorage;\r\n}());\r\n/**\r\n * A class that will establish wrappers for both local and session storage\r\n */\r\nvar PnPClientStorage = /** @class */ (function () {\r\n /**\r\n * Creates a new instance of the PnPClientStorage class\r\n *\r\n * @constructor\r\n */\r\n function PnPClientStorage(_local, _session) {\r\n if (_local === void 0) { _local = null; }\r\n if (_session === void 0) { _session = null; }\r\n this._local = _local;\r\n this._session = _session;\r\n }\r\n Object.defineProperty(PnPClientStorage.prototype, \"local\", {\r\n /**\r\n * Provides access to the local storage of the browser\r\n */\r\n get: function () {\r\n if (this._local === null) {\r\n this._local = new PnPClientStorageWrapper(typeof (localStorage) === \"undefined\" ? new MemoryStorage() : localStorage);\r\n }\r\n return this._local;\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n Object.defineProperty(PnPClientStorage.prototype, \"session\", {\r\n /**\r\n * Provides access to the session storage of the browser\r\n */\r\n get: function () {\r\n if (this._session === null) {\r\n this._session = new PnPClientStorageWrapper(typeof (sessionStorage) === \"undefined\" ? new MemoryStorage() : sessionStorage);\r\n }\r\n return this._session;\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n return PnPClientStorage;\r\n}());\r\nexport { PnPClientStorage };\r\n//# sourceMappingURL=storage.js.map","import { mergeMaps, objectToMap, jsS } from \"@pnp/common\";\r\n/**\r\n * Class used to manage the current application settings\r\n *\r\n */\r\nvar Settings = /** @class */ (function () {\r\n /**\r\n * Creates a new instance of the settings class\r\n *\r\n * @constructor\r\n */\r\n function Settings(_settings) {\r\n if (_settings === void 0) { _settings = new Map(); }\r\n this._settings = _settings;\r\n }\r\n /**\r\n * Adds a new single setting, or overwrites a previous setting with the same key\r\n *\r\n * @param {string} key The key used to store this setting\r\n * @param {string} value The setting value to store\r\n */\r\n Settings.prototype.add = function (key, value) {\r\n this._settings.set(key, value);\r\n };\r\n /**\r\n * Adds a JSON value to the collection as a string, you must use getJSON to rehydrate the object when read\r\n *\r\n * @param {string} key The key used to store this setting\r\n * @param {any} value The setting value to store\r\n */\r\n Settings.prototype.addJSON = function (key, value) {\r\n this._settings.set(key, jsS(value));\r\n };\r\n /**\r\n * Applies the supplied hash to the setting collection overwriting any existing value, or created new values\r\n *\r\n * @param {ITypedHash} hash The set of values to add\r\n */\r\n Settings.prototype.apply = function (hash) {\r\n var _this = this;\r\n return new Promise(function (resolve, reject) {\r\n try {\r\n _this._settings = mergeMaps(_this._settings, objectToMap(hash));\r\n resolve();\r\n }\r\n catch (e) {\r\n reject(e);\r\n }\r\n });\r\n };\r\n /**\r\n * Loads configuration settings into the collection from the supplied provider and returns a Promise\r\n *\r\n * @param {IConfigurationProvider} provider The provider from which we will load the settings\r\n */\r\n Settings.prototype.load = function (provider) {\r\n var _this = this;\r\n return new Promise(function (resolve, reject) {\r\n provider.getConfiguration().then(function (value) {\r\n _this._settings = mergeMaps(_this._settings, objectToMap(value));\r\n resolve();\r\n }).catch(reject);\r\n });\r\n };\r\n /**\r\n * Gets a value from the configuration\r\n *\r\n * @param {string} key The key whose value we want to return. Returns null if the key does not exist\r\n * @return {string} string value from the configuration\r\n */\r\n Settings.prototype.get = function (key) {\r\n return this._settings.get(key) || null;\r\n };\r\n /**\r\n * Gets a JSON value, rehydrating the stored string to the original object\r\n *\r\n * @param {string} key The key whose value we want to return. Returns null if the key does not exist\r\n * @return {any} object from the configuration\r\n */\r\n Settings.prototype.getJSON = function (key) {\r\n var o = this.get(key);\r\n if (o === undefined || o === null) {\r\n return o;\r\n }\r\n return JSON.parse(o);\r\n };\r\n return Settings;\r\n}());\r\nexport { Settings };\r\n//# sourceMappingURL=configuration.js.map","import { PnPClientStorage } from \"@pnp/common\";\r\n/**\r\n * A caching provider which can wrap other non-caching providers\r\n *\r\n */\r\nvar CachingConfigurationProvider = /** @class */ (function () {\r\n /**\r\n * Creates a new caching configuration provider\r\n * @constructor\r\n * @param {IConfigurationProvider} wrappedProvider Provider which will be used to fetch the configuration\r\n * @param {string} cacheKey Key that will be used to store cached items to the cache\r\n * @param {IPnPClientStore} cacheStore OPTIONAL storage, which will be used to store cached settings.\r\n */\r\n function CachingConfigurationProvider(wrappedProvider, cacheKey, cacheStore) {\r\n this.wrappedProvider = wrappedProvider;\r\n this.cacheKey = cacheKey;\r\n this.wrappedProvider = wrappedProvider;\r\n this.store = (cacheStore) ? cacheStore : this.selectPnPCache();\r\n }\r\n /**\r\n * Gets the wrapped configuration providers\r\n *\r\n * @return {IConfigurationProvider} Wrapped configuration provider\r\n */\r\n CachingConfigurationProvider.prototype.getWrappedProvider = function () {\r\n return this.wrappedProvider;\r\n };\r\n /**\r\n * Loads the configuration values either from the cache or from the wrapped provider\r\n *\r\n * @return {Promise>} Promise of loaded configuration values\r\n */\r\n CachingConfigurationProvider.prototype.getConfiguration = function () {\r\n var _this = this;\r\n // Cache not available, pass control to the wrapped provider\r\n if ((!this.store) || (!this.store.enabled)) {\r\n return this.wrappedProvider.getConfiguration();\r\n }\r\n return this.store.getOrPut(this.cacheKey, function () {\r\n return _this.wrappedProvider.getConfiguration().then(function (providedConfig) {\r\n _this.store.put(_this.cacheKey, providedConfig);\r\n return providedConfig;\r\n });\r\n });\r\n };\r\n CachingConfigurationProvider.prototype.selectPnPCache = function () {\r\n var pnpCache = new PnPClientStorage();\r\n if ((pnpCache.local) && (pnpCache.local.enabled)) {\r\n return pnpCache.local;\r\n }\r\n if ((pnpCache.session) && (pnpCache.session.enabled)) {\r\n return pnpCache.session;\r\n }\r\n throw Error(\"Cannot create a caching configuration provider since cache is not available.\");\r\n };\r\n return CachingConfigurationProvider;\r\n}());\r\nexport default CachingConfigurationProvider;\r\n//# sourceMappingURL=cachingConfigurationProvider.js.map","import { getGUID } from \"@pnp/common\";\r\nvar Batch = /** @class */ (function () {\r\n function Batch(_batchId) {\r\n if (_batchId === void 0) { _batchId = getGUID(); }\r\n this._batchId = _batchId;\r\n this._reqs = [];\r\n this._deps = [];\r\n this._rDeps = [];\r\n this._index = -1;\r\n }\r\n Object.defineProperty(Batch.prototype, \"batchId\", {\r\n get: function () {\r\n return this._batchId;\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n Object.defineProperty(Batch.prototype, \"requests\", {\r\n /**\r\n * The requests contained in this batch\r\n */\r\n get: function () {\r\n // we sort these each time this is accessed\r\n return this._reqs.sort(function (info1, info2) { return info1.index - info2.index; });\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n /**\r\n * Not meant for use directly\r\n *\r\n * @param batchee The IQueryable for this batch to track in order\r\n */\r\n Batch.prototype.track = function (batchee) {\r\n batchee.data.batch = this;\r\n // we need to track the order requests are added to the batch to ensure we always\r\n // operate on them in order\r\n if (typeof batchee.data.batchIndex === \"undefined\" || batchee.data.batchIndex < 0) {\r\n batchee.data.batchIndex = ++this._index;\r\n }\r\n };\r\n /**\r\n * Adds the given request context to the batch for execution\r\n *\r\n * @param context Details of the request to batch\r\n */\r\n Batch.prototype.add = function (context) {\r\n var info = {\r\n id: context.requestId,\r\n index: context.batchIndex,\r\n method: context.method.toUpperCase(),\r\n options: context.options,\r\n parser: context.parser,\r\n reject: null,\r\n resolve: null,\r\n url: context.url,\r\n };\r\n // we create a new promise that will be resolved within the batch\r\n var p = new Promise(function (resolve, reject) {\r\n info.resolve = resolve;\r\n info.reject = reject;\r\n });\r\n this._reqs.push(info);\r\n return p;\r\n };\r\n /**\r\n * Adds a dependency insuring that some set of actions will occur before a batch is processed.\r\n * MUST be cleared using the returned resolve delegate to allow batches to run\r\n */\r\n Batch.prototype.addDependency = function () {\r\n var resolver = function () { return void (0); };\r\n this._deps.push(new Promise(function (resolve) {\r\n resolver = resolve;\r\n }));\r\n return resolver;\r\n };\r\n /**\r\n * The batch's execute method will not resolve util any promises added here resolve\r\n *\r\n * @param p The dependent promise\r\n */\r\n Batch.prototype.addResolveBatchDependency = function (p) {\r\n this._rDeps.push(p);\r\n };\r\n /**\r\n * Execute the current batch and resolve the associated promises\r\n *\r\n * @returns A promise which will be resolved once all of the batch's child promises have resolved\r\n */\r\n Batch.prototype.execute = function () {\r\n var _this = this;\r\n // we need to check the dependencies twice due to how different engines handle things.\r\n // We can get a second set of promises added during the first set resolving\r\n return Promise.all(this._deps)\r\n .then(function () { return Promise.all(_this._deps); })\r\n .then(function () { return _this.executeImpl(); })\r\n .then(function () { return Promise.all(_this._rDeps); })\r\n .then(function () { return void (0); });\r\n };\r\n return Batch;\r\n}());\r\nexport { Batch };\r\n//# sourceMappingURL=batch.js.map","import { PnPClientStorage } from \"@pnp/common\";\r\nvar storage = new PnPClientStorage();\r\nvar CachingOptions = /** @class */ (function () {\r\n function CachingOptions(key, storeName, expiration) {\r\n this.key = key;\r\n this.storeName = storeName;\r\n this.expiration = expiration;\r\n }\r\n Object.defineProperty(CachingOptions.prototype, \"store\", {\r\n get: function () {\r\n if (this.storeName === \"local\") {\r\n return storage.local;\r\n }\r\n else {\r\n return storage.session;\r\n }\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n return CachingOptions;\r\n}());\r\nexport { CachingOptions };\r\nvar CachingParserWrapper = /** @class */ (function () {\r\n function CachingParserWrapper(parser, cacheOptions) {\r\n this.parser = parser;\r\n this.cacheOptions = cacheOptions;\r\n }\r\n CachingParserWrapper.prototype.parse = function (response) {\r\n var _this = this;\r\n return this.parser.parse(response).then(function (r) { return _this.cacheData(r); });\r\n };\r\n CachingParserWrapper.prototype.cacheData = function (data) {\r\n if (this.cacheOptions.store !== null) {\r\n this.cacheOptions.store.put(this.cacheOptions.key, data, this.cacheOptions.expiration);\r\n }\r\n return data;\r\n };\r\n return CachingParserWrapper;\r\n}());\r\nexport { CachingParserWrapper };\r\n//# sourceMappingURL=caching.js.map","/**\r\n * Adds a property to a target instance\r\n *\r\n * @param target The object to whose prototype we will add a property\r\n * @param name Property name\r\n * @param factory Factory method used to produce the property value\r\n * @param path Any additional path required to produce the value\r\n */\r\nexport function addProp(target, name, factory, path) {\r\n Reflect.defineProperty(target.prototype, name, {\r\n configurable: true,\r\n enumerable: true,\r\n get: function () {\r\n return factory(this, path);\r\n },\r\n });\r\n}\r\n//# sourceMappingURL=add-prop.js.map","import { __read, __spreadArray } from \"tslib\";\r\nimport { isFunc, getGUID } from \"@pnp/common\";\r\nvar _enableExtensions = false;\r\nvar globalExtensions = [];\r\nvar factoryExtensions = new Map();\r\nvar ObjExtensionsSym = Symbol.for(\"43f7a601\");\r\n/**\r\n * Creates global extensions across all invokable objects\r\n *\r\n * @param e The global extensions to apply\r\n */\r\nexport var extendGlobal = function (e) {\r\n _enableExtensions = true;\r\n extendCol(globalExtensions, e);\r\n};\r\n/**\r\n * Applies the supplied extensions to a single instance\r\n *\r\n * @param target Object to which extensions are applied\r\n * @param extensions Extensions to apply\r\n */\r\n// eslint-disable-next-line @typescript-eslint/ban-types\r\nexport var extendObj = function (target, extensions) {\r\n _enableExtensions = true;\r\n if (!Reflect.has(target, ObjExtensionsSym)) {\r\n Reflect.set(target, ObjExtensionsSym, []);\r\n }\r\n extendCol(Reflect.get(target, ObjExtensionsSym), extensions);\r\n return target;\r\n};\r\n/**\r\n * Allows applying extensions to all instances created from the supplied factory\r\n *\r\n * @param factory The Invokable Factory method to extend\r\n * @param extensions Extensions to apply\r\n */\r\nexport var extendFactory = function (factory, extensions) {\r\n _enableExtensions = true;\r\n // factoryExtensions\r\n var proto = Reflect.getPrototypeOf(factory);\r\n if (!Reflect.has(proto, ObjExtensionsSym)) {\r\n Reflect.defineProperty(proto, ObjExtensionsSym, {\r\n value: getGUID(),\r\n });\r\n }\r\n var key = proto[ObjExtensionsSym];\r\n if (!factoryExtensions.has(key)) {\r\n factoryExtensions.set(key, []);\r\n }\r\n extendCol(factoryExtensions.get(key), extensions);\r\n};\r\nfunction extendCol(a, e) {\r\n if (Array.isArray(e)) {\r\n a.push.apply(a, __spreadArray([], __read(e)));\r\n }\r\n else {\r\n a.push(e);\r\n }\r\n}\r\n/**\r\n * Clears all global extensions\r\n */\r\nexport var clearGlobalExtensions = function () {\r\n globalExtensions.length = 0;\r\n};\r\n/**\r\n * Disables all extensions\r\n */\r\nexport var disableExtensions = function () {\r\n _enableExtensions = false;\r\n};\r\n/**\r\n * Enables all extensions\r\n */\r\nexport var enableExtensions = function () {\r\n _enableExtensions = true;\r\n};\r\n/**\r\n * Applies a set of extension previously applied to a factory using extendFactory to an object created from that factory\r\n *\r\n * @param factory\r\n * @param args\r\n */\r\n// eslint-disable-next-line @typescript-eslint/ban-types\r\nexport var applyFactoryExtensions = function (factory, args) {\r\n var o = factory(args);\r\n var proto = Reflect.getPrototypeOf(factory);\r\n if (Reflect.has(proto, ObjExtensionsSym)) {\r\n var extensions = factoryExtensions.get(Reflect.get(proto, ObjExtensionsSym));\r\n o = extendObj(o, extensions);\r\n }\r\n return o;\r\n};\r\nexport function extensionOrDefault(op, or, target) {\r\n var rest = [];\r\n for (var _i = 3; _i < arguments.length; _i++) {\r\n rest[_i - 3] = arguments[_i];\r\n }\r\n if (_enableExtensions) {\r\n var extensions = [];\r\n // we need to first invoke extensions tied to only this object\r\n if (Reflect.has(target, ObjExtensionsSym)) {\r\n extensions.push.apply(extensions, __spreadArray([], __read(Reflect.get(target, ObjExtensionsSym))));\r\n }\r\n // second we need to process any global extensions\r\n extensions.push.apply(extensions, __spreadArray([], __read(globalExtensions)));\r\n for (var i = 0; i < extensions.length; i++) {\r\n var extension = extensions[i];\r\n var result = undefined;\r\n if (isFunc(extension)) {\r\n // this extension is a function which we call\r\n result = extension.apply(void 0, __spreadArray([op, target], __read(rest)));\r\n }\r\n else if (op === \"get\" && Reflect.has(extension, rest[0])) {\r\n // this extension is a named extension meaning we are overriding a specific method/property\r\n result = Reflect.get(extension, rest[0], target);\r\n }\r\n else if (Reflect.has(extension, op)) {\r\n // this extension is a ProxyHandler that has a handler defined for {op} so we pass control and see if we get a result\r\n result = Reflect.get(extension, op).apply(void 0, __spreadArray([target], __read(rest)));\r\n }\r\n if (typeof result !== \"undefined\") {\r\n // if a extension returned a result, we return that\r\n // this means that this extension overrides any other extensions and no more are executed\r\n // first extension in the list to return \"wins\"\r\n return result;\r\n }\r\n }\r\n }\r\n return or.apply(void 0, __spreadArray([target], __read(rest)));\r\n}\r\n//# sourceMappingURL=invokable-extensions.js.map","import { __read, __spreadArray } from \"tslib\";\r\nimport { DefaultRuntime } from \"@pnp/common\";\r\nimport { extensionOrDefault, applyFactoryExtensions } from \"./invokable-extensions.js\";\r\nvar invokableBinder = function (invoker) { return function (constructor) {\r\n return function () {\r\n var args = [];\r\n for (var _i = 0; _i < arguments.length; _i++) {\r\n args[_i] = arguments[_i];\r\n }\r\n var factory = function (as) {\r\n var r = Object.assign(function () {\r\n var ags = [];\r\n for (var _i = 0; _i < arguments.length; _i++) {\r\n ags[_i] = arguments[_i];\r\n }\r\n return invoker.call.apply(invoker, __spreadArray([r], __read(ags)));\r\n }, new (constructor.bind.apply(constructor, __spreadArray([void 0], __read(as))))());\r\n Reflect.setPrototypeOf(r, constructor.prototype);\r\n return r;\r\n };\r\n // ie11 setting is always global\r\n if (DefaultRuntime.get(\"ie11\") || false) {\r\n return factory(args);\r\n }\r\n else {\r\n return new Proxy(applyFactoryExtensions(factory, args), {\r\n apply: function (target, _thisArg, argArray) {\r\n return extensionOrDefault(\"apply\", function () {\r\n var a = [];\r\n for (var _i = 0; _i < arguments.length; _i++) {\r\n a[_i] = arguments[_i];\r\n }\r\n return Reflect.apply(a[0], a[1], a[2]);\r\n }, target, _thisArg, argArray);\r\n },\r\n get: function (target, p, receiver) {\r\n return extensionOrDefault(\"get\", function () {\r\n var a = [];\r\n for (var _i = 0; _i < arguments.length; _i++) {\r\n a[_i] = arguments[_i];\r\n }\r\n return Reflect.get(a[0], a[1], a[2]);\r\n }, target, p, receiver);\r\n },\r\n has: function (target, p) {\r\n return extensionOrDefault(\"has\", function () {\r\n var a = [];\r\n for (var _i = 0; _i < arguments.length; _i++) {\r\n a[_i] = arguments[_i];\r\n }\r\n return Reflect.has(a[0], a[1]);\r\n }, target, p);\r\n },\r\n set: function (target, p, value, receiver) {\r\n return extensionOrDefault(\"set\", function () {\r\n var a = [];\r\n for (var _i = 0; _i < arguments.length; _i++) {\r\n a[_i] = arguments[_i];\r\n }\r\n return Reflect.set(a[0], a[1], a[2], a[3]);\r\n }, target, p, value, receiver);\r\n },\r\n });\r\n }\r\n };\r\n}; };\r\nexport var invokableFactory = invokableBinder(function (options) {\r\n return this.defaultAction(options);\r\n});\r\n//# sourceMappingURL=invokable-binder.js.map","import { __awaiter, __extends, __generator } from \"tslib\";\r\nimport { isFunc, hOP } from \"@pnp/common\";\r\nvar ODataParser = /** @class */ (function () {\r\n function ODataParser() {\r\n }\r\n ODataParser.prototype.parse = function (r) {\r\n var _this = this;\r\n return new Promise(function (resolve, reject) {\r\n if (_this.handleError(r, reject)) {\r\n _this.parseImpl(r, resolve, reject);\r\n }\r\n });\r\n };\r\n ODataParser.prototype.parseImpl = function (r, resolve, reject) {\r\n var _this = this;\r\n if ((r.headers.has(\"Content-Length\") && parseFloat(r.headers.get(\"Content-Length\")) === 0) || r.status === 204) {\r\n resolve({});\r\n }\r\n else {\r\n // patch to handle cases of 200 response with no or whitespace only bodies (#487 & #545)\r\n r.text()\r\n .then(function (txt) { return txt.replace(/\\s/ig, \"\").length > 0 ? JSON.parse(txt) : {}; })\r\n .then(function (json) { return resolve(_this.parseODataJSON(json)); })\r\n .catch(function (e) { return reject(e); });\r\n }\r\n };\r\n /**\r\n * Handles a response with ok === false by parsing the body and creating a ProcessHttpClientResponseException\r\n * which is passed to the reject delegate. This method returns true if there is no error, otherwise false\r\n *\r\n * @param r Current response object\r\n * @param reject reject delegate for the surrounding promise\r\n */\r\n ODataParser.prototype.handleError = function (r, reject) {\r\n if (!r.ok) {\r\n HttpRequestError.init(r).then(reject);\r\n }\r\n return r.ok;\r\n };\r\n /**\r\n * Normalizes the json response by removing the various nested levels\r\n *\r\n * @param json json object to parse\r\n */\r\n ODataParser.prototype.parseODataJSON = function (json) {\r\n var result = json;\r\n if (hOP(json, \"d\")) {\r\n if (hOP(json.d, \"results\")) {\r\n result = json.d.results;\r\n }\r\n else {\r\n result = json.d;\r\n }\r\n }\r\n else if (hOP(json, \"value\")) {\r\n result = json.value;\r\n }\r\n return result;\r\n };\r\n return ODataParser;\r\n}());\r\nexport { ODataParser };\r\nvar TextParser = /** @class */ (function (_super) {\r\n __extends(TextParser, _super);\r\n function TextParser() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n TextParser.prototype.parseImpl = function (r, resolve) {\r\n r.text().then(resolve);\r\n };\r\n return TextParser;\r\n}(ODataParser));\r\nexport { TextParser };\r\nvar BlobParser = /** @class */ (function (_super) {\r\n __extends(BlobParser, _super);\r\n function BlobParser() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n BlobParser.prototype.parseImpl = function (r, resolve) {\r\n r.blob().then(resolve);\r\n };\r\n return BlobParser;\r\n}(ODataParser));\r\nexport { BlobParser };\r\nvar JSONParser = /** @class */ (function (_super) {\r\n __extends(JSONParser, _super);\r\n function JSONParser() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n JSONParser.prototype.parseImpl = function (r, resolve) {\r\n r.json().then(resolve);\r\n };\r\n return JSONParser;\r\n}(ODataParser));\r\nexport { JSONParser };\r\nvar BufferParser = /** @class */ (function (_super) {\r\n __extends(BufferParser, _super);\r\n function BufferParser() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n BufferParser.prototype.parseImpl = function (r, resolve) {\r\n if (isFunc(r.arrayBuffer)) {\r\n r.arrayBuffer().then(resolve);\r\n }\r\n else {\r\n r.buffer().then(resolve);\r\n }\r\n };\r\n return BufferParser;\r\n}(ODataParser));\r\nexport { BufferParser };\r\nvar LambdaParser = /** @class */ (function (_super) {\r\n __extends(LambdaParser, _super);\r\n function LambdaParser(parser) {\r\n var _this = _super.call(this) || this;\r\n _this.parser = parser;\r\n return _this;\r\n }\r\n LambdaParser.prototype.parseImpl = function (r, resolve) {\r\n this.parser(r).then(resolve);\r\n };\r\n return LambdaParser;\r\n}(ODataParser));\r\nexport { LambdaParser };\r\nvar HttpRequestError = /** @class */ (function (_super) {\r\n __extends(HttpRequestError, _super);\r\n function HttpRequestError(message, response, status, statusText) {\r\n if (status === void 0) { status = response.status; }\r\n if (statusText === void 0) { statusText = response.statusText; }\r\n var _this = _super.call(this, message) || this;\r\n _this.response = response;\r\n _this.status = status;\r\n _this.statusText = statusText;\r\n _this.isHttpRequestError = true;\r\n return _this;\r\n }\r\n HttpRequestError.init = function (r) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var t;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0: return [4 /*yield*/, r.clone().text()];\r\n case 1:\r\n t = _a.sent();\r\n return [2 /*return*/, new HttpRequestError(\"Error making HttpClient request in queryable [\" + r.status + \"] \" + r.statusText + \" ::> \" + t, r.clone())];\r\n }\r\n });\r\n });\r\n };\r\n return HttpRequestError;\r\n}(Error));\r\nexport { HttpRequestError };\r\n//# sourceMappingURL=parsers.js.map","import { __read, __spreadArray } from \"tslib\";\r\nimport { combine, mergeOptions, objectDefinedNotNull, assign, Runtime, DefaultRuntime, dateAdd, stringIsNullOrEmpty, } from \"@pnp/common\";\r\nimport { ODataParser } from \"./parsers.js\";\r\nexport function cloneQueryableData(source) {\r\n var body;\r\n // this handles bodies that cannot be JSON encoded (Blob, etc)\r\n // Note however, even bodies that can be serialized will not be cloned.\r\n if (source.options && source.options.body) {\r\n body = source.options.body;\r\n source.options.body = \"-\";\r\n }\r\n var s = JSON.stringify(source, function (key, value) {\r\n switch (key) {\r\n case \"query\":\r\n return JSON.stringify(__spreadArray([], __read(value)));\r\n case \"batch\":\r\n case \"batchDependency\":\r\n case \"cachingOptions\":\r\n case \"clientFactory\":\r\n case \"parser\":\r\n return \"-\";\r\n default:\r\n return value;\r\n }\r\n }, 0);\r\n var parsed = JSON.parse(s, function (key, value) {\r\n switch (key) {\r\n case \"query\":\r\n return new Map(JSON.parse(value));\r\n case \"batch\":\r\n case \"batchDependency\":\r\n case \"cachingOptions\":\r\n case \"clientFactory\":\r\n case \"parser\":\r\n return source[key];\r\n default:\r\n return value;\r\n }\r\n });\r\n if (body) {\r\n parsed.options.body = body;\r\n source.options.body = body;\r\n }\r\n return parsed;\r\n}\r\nvar Queryable = /** @class */ (function () {\r\n function Queryable(dataSeed) {\r\n if (dataSeed === void 0) { dataSeed = {}; }\r\n this._data = Object.assign({}, {\r\n cloneParentWasCaching: false,\r\n options: {},\r\n parentUrl: \"\",\r\n parser: new ODataParser(),\r\n query: new Map(),\r\n url: \"\",\r\n useCaching: false,\r\n }, cloneQueryableData(dataSeed));\r\n this._runtime = null;\r\n }\r\n Object.defineProperty(Queryable.prototype, \"data\", {\r\n get: function () {\r\n return this._data;\r\n },\r\n set: function (value) {\r\n this._data = Object.assign({}, this.data, cloneQueryableData(value));\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n Queryable.prototype.getRuntime = function () {\r\n if (this._runtime === null) {\r\n return DefaultRuntime;\r\n }\r\n return this._runtime;\r\n };\r\n Queryable.prototype.setRuntime = function () {\r\n // need to wait for ts update in spfx: [runtime: Runtime] | [cloneGlobal: boolean, additionalConfig?: ITypedHash]\r\n var args = [];\r\n for (var _i = 0; _i < arguments.length; _i++) {\r\n args[_i] = arguments[_i];\r\n }\r\n if (args[0] instanceof Runtime) {\r\n this._runtime = args[0];\r\n }\r\n else {\r\n this._runtime = args[0] ? new Runtime(DefaultRuntime.export()) : new Runtime();\r\n if (args.length > 1 && objectDefinedNotNull(args[1])) {\r\n this._runtime.assign(args[1]);\r\n }\r\n }\r\n return this;\r\n };\r\n /**\r\n * Gets the current url\r\n *\r\n */\r\n Queryable.prototype.toUrl = function () {\r\n return this.data.url;\r\n };\r\n /**\r\n * Directly concatenates the supplied string to the current url, not normalizing \"/\" chars\r\n *\r\n * @param pathPart The string to concatenate to the url\r\n */\r\n Queryable.prototype.concat = function (pathPart) {\r\n this.data.url += pathPart;\r\n return this;\r\n };\r\n Object.defineProperty(Queryable.prototype, \"query\", {\r\n /**\r\n * Provides access to the query builder for this url\r\n *\r\n */\r\n get: function () {\r\n return this.data.query;\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n /**\r\n * Sets custom options for current object and all derived objects accessible via chaining\r\n *\r\n * @param options custom options\r\n */\r\n Queryable.prototype.configure = function (options) {\r\n mergeOptions(this.data.options, options);\r\n return this;\r\n };\r\n /**\r\n * Configures this instance from the configure options of the supplied instance\r\n *\r\n * @param o Instance from which options should be taken\r\n */\r\n Queryable.prototype.configureFrom = function (o) {\r\n mergeOptions(this.data.options, o.data.options);\r\n var sourceRuntime = o.getRuntime();\r\n if (!sourceRuntime.get(\"__isDefault__\")) {\r\n this.setRuntime(sourceRuntime);\r\n }\r\n return this;\r\n };\r\n /**\r\n * Enables caching for this request\r\n *\r\n * @param options Defines the options used when caching this request\r\n */\r\n Queryable.prototype.usingCaching = function (options) {\r\n var runtime = this.getRuntime();\r\n if (!runtime.get(\"globalCacheDisable\")) {\r\n this.data.useCaching = true;\r\n // handle getting just the key\r\n if (typeof options === \"string\") {\r\n if (stringIsNullOrEmpty(options)) {\r\n throw Error(\"Cache key cannot be empty.\");\r\n }\r\n options = { key: options };\r\n }\r\n // this uses our local options if they are defined as defaults\r\n var defaultOpts = {\r\n expiration: dateAdd(new Date(), \"second\", runtime.get(\"defaultCachingTimeoutSeconds\")),\r\n storeName: runtime.get(\"defaultCachingStore\"),\r\n };\r\n this.data.cachingOptions = assign(defaultOpts, options);\r\n }\r\n return this;\r\n };\r\n Queryable.prototype.usingParser = function (parser) {\r\n this.data.parser = parser;\r\n return this;\r\n };\r\n /**\r\n * Allows you to set a request specific processing pipeline\r\n *\r\n * @param pipeline The set of methods, in order, to execute a given request\r\n */\r\n Queryable.prototype.withPipeline = function (pipeline) {\r\n this.data.pipes = pipeline.slice(0);\r\n return this;\r\n };\r\n /**\r\n * Appends the given string and normalizes \"/\" chars\r\n *\r\n * @param pathPart The string to append\r\n */\r\n Queryable.prototype.append = function (pathPart) {\r\n this.data.url = combine(this.data.url, pathPart);\r\n };\r\n /**\r\n * Adds this query to the supplied batch\r\n *\r\n * @example\r\n * ```\r\n *\r\n * let b = pnp.sp.createBatch();\r\n * pnp.sp.web.inBatch(b).get().then(...);\r\n * b.execute().then(...)\r\n * ```\r\n */\r\n Queryable.prototype.inBatch = function (batch) {\r\n if (this.hasBatch) {\r\n throw Error(\"This query is already part of a batch.\");\r\n }\r\n if (objectDefinedNotNull(batch)) {\r\n batch.track(this);\r\n }\r\n return this;\r\n };\r\n /**\r\n * Blocks a batch call from occuring, MUST be cleared by calling the returned function\r\n */\r\n Queryable.prototype.addBatchDependency = function () {\r\n if (objectDefinedNotNull(this.data.batch)) {\r\n return this.data.batch.addDependency();\r\n }\r\n return function () { return null; };\r\n };\r\n Object.defineProperty(Queryable.prototype, \"hasBatch\", {\r\n /**\r\n * Indicates if the current query has a batch associated\r\n *\r\n */\r\n get: function () {\r\n return objectDefinedNotNull(this.data.batch);\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n Object.defineProperty(Queryable.prototype, \"batch\", {\r\n /**\r\n * The batch currently associated with this query or null\r\n *\r\n */\r\n get: function () {\r\n return this.hasBatch ? this.data.batch : null;\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n Object.defineProperty(Queryable.prototype, \"parentUrl\", {\r\n /**\r\n * Gets the parent url used when creating this instance\r\n *\r\n */\r\n get: function () {\r\n return this.data.parentUrl;\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n /**\r\n * Clones this instance's data to target\r\n *\r\n * @param target Instance to which data is written\r\n * @param settings [Optional] Settings controlling how clone is applied\r\n */\r\n Queryable.prototype.cloneTo = function (target, settings) {\r\n if (settings === void 0) { settings = {}; }\r\n // default values for settings\r\n settings = assign({\r\n includeBatch: true,\r\n includeQuery: false,\r\n }, settings);\r\n target.data = Object.assign({}, cloneQueryableData(this.data), {\r\n batch: null,\r\n cloneParentCacheOptions: null,\r\n cloneParentWasCaching: false,\r\n }, cloneQueryableData(target.data));\r\n target.configureFrom(this);\r\n if (settings.includeBatch) {\r\n target.inBatch(this.batch);\r\n }\r\n if (settings.includeQuery && this.query.size > 0) {\r\n this.query.forEach(function (v, k) { return target.query.set(k, v); });\r\n }\r\n if (this.data.useCaching) {\r\n target.data.cloneParentWasCaching = true;\r\n target.data.cloneParentCacheOptions = this.data.cachingOptions;\r\n }\r\n return target;\r\n };\r\n return Queryable;\r\n}());\r\nexport { Queryable };\r\n//# sourceMappingURL=queryable.js.map","import { __decorate } from \"tslib\";\r\nimport { assign, isFunc, hOP } from \"@pnp/common\";\r\nimport { Logger } from \"@pnp/logging\";\r\nimport { CachingOptions, CachingParserWrapper } from \"./caching.js\";\r\n/**\r\n * Resolves the context's result value\r\n *\r\n * @param context The current context\r\n */\r\nfunction returnResult(context) {\r\n Logger.log({\r\n data: Logger.activeLogLevel === 0 /* Verbose */ ? context.result : {},\r\n level: 1 /* Info */,\r\n message: \"[\" + context.requestId + \"] (\" + (new Date()).getTime() + \") Returning result from pipeline. Set logging to verbose to see data.\",\r\n });\r\n return Promise.resolve(context.result);\r\n}\r\n/**\r\n * Sets the result on the context\r\n */\r\nexport function setResult(context, value) {\r\n return new Promise(function (resolve) {\r\n context.result = value;\r\n context.hasResult = true;\r\n resolve(context);\r\n });\r\n}\r\n/**\r\n * Invokes the next method in the provided context's pipeline\r\n *\r\n * @param c The current request context\r\n */\r\nfunction next(c) {\r\n return c.pipes.length > 0 ? c.pipes.shift()(c) : Promise.resolve(c);\r\n}\r\n/**\r\n * Executes the current request context's pipeline\r\n *\r\n * @param context Current context\r\n */\r\nexport function pipe(context) {\r\n if (context.pipes.length < 1) {\r\n Logger.write(\"[\" + context.requestId + \"] (\" + (new Date()).getTime() + \") Request pipeline contains no methods!\", 3 /* Error */);\r\n throw Error(\"Request pipeline contains no methods!\");\r\n }\r\n var promise = next(context).then(function (ctx) { return returnResult(ctx); }).catch(function (e) {\r\n Logger.error(e);\r\n throw e;\r\n });\r\n if (context.isBatched) {\r\n // this will block the batch's execute method from returning until the child requests have been resolved\r\n context.batch.addResolveBatchDependency(promise);\r\n }\r\n return promise;\r\n}\r\n/**\r\n * decorator factory applied to methods in the pipeline to control behavior\r\n */\r\nexport function requestPipelineMethod(alwaysRun) {\r\n if (alwaysRun === void 0) { alwaysRun = false; }\r\n return function (target, propertyKey, descriptor) {\r\n var method = descriptor.value;\r\n descriptor.value = function () {\r\n var args = [];\r\n for (var _i = 0; _i < arguments.length; _i++) {\r\n args[_i] = arguments[_i];\r\n }\r\n // if we have a result already in the pipeline, pass it along and don't call the tagged method\r\n if (!alwaysRun && args.length > 0 && hOP(args[0], \"hasResult\") && args[0].hasResult) {\r\n Logger.write(\"[\" + args[0].requestId + \"] (\" + (new Date()).getTime() + \") Skipping request pipeline method \" + propertyKey + \", existing result in pipeline.\", 0 /* Verbose */);\r\n return Promise.resolve(args[0]);\r\n }\r\n // apply the tagged method\r\n Logger.write(\"[\" + args[0].requestId + \"] (\" + (new Date()).getTime() + \") Calling request pipeline method \" + propertyKey + \".\", 0 /* Verbose */);\r\n // then chain the next method in the context's pipeline - allows for dynamic pipeline\r\n return method.apply(target, args).then(function (ctx) { return next(ctx); });\r\n };\r\n };\r\n}\r\n/**\r\n * Contains the methods used within the request pipeline\r\n */\r\nvar PipelineMethods = /** @class */ (function () {\r\n function PipelineMethods() {\r\n }\r\n /**\r\n * Logs the start of the request\r\n */\r\n PipelineMethods.logStart = function (context) {\r\n return new Promise(function (resolve) {\r\n Logger.log({\r\n data: Logger.activeLogLevel === 1 /* Info */ ? {} : context,\r\n level: 1 /* Info */,\r\n message: \"[\" + context.requestId + \"] (\" + (new Date()).getTime() + \") Beginning \" + context.method + \" request (\" + context.url + \")\",\r\n });\r\n resolve(context);\r\n });\r\n };\r\n /**\r\n * Handles caching of the request\r\n */\r\n PipelineMethods.caching = function (context) {\r\n return new Promise(function (resolve) {\r\n // handle caching, if applicable\r\n if (context.useCaching) {\r\n Logger.write(\"[\" + context.requestId + \"] (\" + (new Date()).getTime() + \") Caching is enabled for request, checking cache...\", 1 /* Info */);\r\n var cacheOptions = new CachingOptions(context.url.toLowerCase());\r\n if (context.cachingOptions !== undefined) {\r\n cacheOptions = assign(cacheOptions, context.cachingOptions);\r\n }\r\n // we may not have a valid store\r\n if (cacheOptions.store !== null) {\r\n // check if we have the data in cache and if so resolve the promise and return\r\n var data = cacheOptions.store.get(cacheOptions.key);\r\n if (data !== null) {\r\n Logger.log({\r\n data: Logger.activeLogLevel === 1 /* Info */ ? {} : data,\r\n level: 1 /* Info */,\r\n message: \"[\" + context.requestId + \"] (\" + (new Date()).getTime() + \") Value returned from cache.\",\r\n });\r\n // ensure we clear any held batch dependency we are resolving from the cache\r\n if (isFunc(context.batchDependency)) {\r\n context.batchDependency();\r\n }\r\n // handle the case where a parser needs to take special actions with a cached result\r\n if (hOP(context.parser, \"hydrate\")) {\r\n data = context.parser.hydrate(data);\r\n }\r\n return setResult(context, data).then(function (ctx) { return resolve(ctx); });\r\n }\r\n }\r\n Logger.write(\"[\" + context.requestId + \"] (\" + (new Date()).getTime() + \") Value not found in cache.\", 1 /* Info */);\r\n // if we don't then wrap the supplied parser in the caching parser wrapper\r\n // and send things on their way\r\n context.parser = new CachingParserWrapper(context.parser, cacheOptions);\r\n }\r\n return resolve(context);\r\n });\r\n };\r\n /**\r\n * Sends the request\r\n */\r\n PipelineMethods.send = function (context) {\r\n return new Promise(function (resolve, reject) {\r\n // send or batch the request\r\n if (context.isBatched) {\r\n var p = context.batch.add(context);\r\n // we release the dependency here to ensure the batch does not execute until the request is added to the batch\r\n if (isFunc(context.batchDependency)) {\r\n context.batchDependency();\r\n }\r\n Logger.write(\"[\" + context.requestId + \"] (\" + (new Date()).getTime() + \") Batching request in batch \" + context.batch.batchId + \".\", 1 /* Info */);\r\n // we set the result as the promise which will be resolved by the batch's execution\r\n resolve(setResult(context, p));\r\n }\r\n else {\r\n Logger.write(\"[\" + context.requestId + \"] (\" + (new Date()).getTime() + \") Sending request.\", 1 /* Info */);\r\n // we are not part of a batch, so proceed as normal\r\n var client = context.clientFactory();\r\n var opts = assign(context.options || {}, { method: context.method });\r\n client.fetch(context.url, opts)\r\n .then(function (response) { return context.parser.parse(response); })\r\n .then(function (result) { return setResult(context, result); })\r\n .then(function (ctx) { return resolve(ctx); })\r\n .catch(function (e) { return reject(e); });\r\n }\r\n });\r\n };\r\n /**\r\n * Logs the end of the request\r\n */\r\n PipelineMethods.logEnd = function (context) {\r\n return new Promise(function (resolve) {\r\n if (context.isBatched) {\r\n Logger.log({\r\n data: Logger.activeLogLevel === 1 /* Info */ ? {} : context,\r\n level: 1 /* Info */,\r\n message: \"[\" + context.requestId + \"] (\" + (new Date()).getTime() + \") \" + context.method + \" request will complete in batch \" + context.batch.batchId + \".\",\r\n });\r\n }\r\n else {\r\n Logger.log({\r\n data: Logger.activeLogLevel === 1 /* Info */ ? {} : context,\r\n level: 1 /* Info */,\r\n message: \"[\" + context.requestId + \"] (\" + (new Date()).getTime() + \") Completing \" + context.method + \" request.\",\r\n });\r\n }\r\n resolve(context);\r\n });\r\n };\r\n __decorate([\r\n requestPipelineMethod(true)\r\n ], PipelineMethods, \"logStart\", null);\r\n __decorate([\r\n requestPipelineMethod()\r\n ], PipelineMethods, \"caching\", null);\r\n __decorate([\r\n requestPipelineMethod()\r\n ], PipelineMethods, \"send\", null);\r\n __decorate([\r\n requestPipelineMethod(true)\r\n ], PipelineMethods, \"logEnd\", null);\r\n return PipelineMethods;\r\n}());\r\nexport { PipelineMethods };\r\nexport function getDefaultPipeline() {\r\n return [\r\n PipelineMethods.logStart,\r\n PipelineMethods.caching,\r\n PipelineMethods.send,\r\n PipelineMethods.logEnd,\r\n ].slice(0);\r\n}\r\n//# sourceMappingURL=pipeline.js.map","import { ODataParser } from \"./parsers.js\";\r\nimport { getGUID, objectDefinedNotNull } from \"@pnp/common\";\r\nimport { cloneQueryableData } from \"./queryable.js\";\r\nimport { pipe, getDefaultPipeline } from \"./pipeline.js\";\r\n// first we bind the pipeline we will use for all requests within this closure\r\nexport function pipelineBinder(pipes) {\r\n // then we bind the client factory we'll use (typically done in an implementing library such as sp)\r\n return function (clientFactory) {\r\n // then we create a binder we can apply for each type of method (GET, POST, etc.)\r\n return function (method) {\r\n // finally we get a function back to which we can pass an IQueryableData instance and execute the request it defines\r\n return function (o) {\r\n // send the IQueryableData down the pipeline\r\n return pipe(Object.assign({}, {\r\n batch: null,\r\n batchDependency: null,\r\n batchIndex: -1,\r\n cachingOptions: null,\r\n clientFactory: clientFactory,\r\n cloneParentCacheOptions: null,\r\n cloneParentWasCaching: false,\r\n hasResult: false,\r\n isBatched: objectDefinedNotNull(o.batch),\r\n method: method,\r\n options: null,\r\n parentUrl: \"\",\r\n parser: new ODataParser(),\r\n pipes: pipes.slice(0),\r\n query: new Map(),\r\n requestId: getGUID(),\r\n url: \"\",\r\n useCaching: /^get$/i.test(o.method) && o.useCaching,\r\n }, cloneQueryableData(o)));\r\n };\r\n };\r\n };\r\n}\r\nexport var defaultPipelineBinder = pipelineBinder(getDefaultPipeline());\r\n//# sourceMappingURL=pipeline-binder.js.map","import { jsS } from \"@pnp/common\";\r\nexport function body(o, previous) {\r\n return Object.assign({ body: jsS(o) }, previous);\r\n}\r\n// eslint-disable-next-line @typescript-eslint/ban-types\r\nexport function headers(o, previous) {\r\n return Object.assign({ headers: o }, previous);\r\n}\r\n//# sourceMappingURL=request-builders.js.map","export function metadata(type) {\r\n return {\r\n \"__metadata\": { \"type\": type },\r\n };\r\n}\r\n//# sourceMappingURL=metadata.js.map","import { stringIsNullOrEmpty } from \"@pnp/common\";\r\nexport function extractWebUrl(candidateUrl) {\r\n if (stringIsNullOrEmpty(candidateUrl)) {\r\n return \"\";\r\n }\r\n var index = candidateUrl.indexOf(\"_api/\");\r\n if (index < 0) {\r\n index = candidateUrl.indexOf(\"_vti_bin/\");\r\n }\r\n if (index > -1) {\r\n return candidateUrl.substr(0, index);\r\n }\r\n // if all else fails just give them what they gave us back\r\n return candidateUrl;\r\n}\r\n//# sourceMappingURL=extractweburl.js.map","import { __awaiter, __generator } from \"tslib\";\r\nimport { stringIsNullOrEmpty } from \"@pnp/common\";\r\nimport { headers } from \"@pnp/odata\";\r\n/**\r\n * Includes this method name in the X-ClientService-ClientTag used to record pnpjs usage\r\n *\r\n * @param name Method name, displayed in the\r\n */\r\nexport function tag(name) {\r\n return function (target, key, descriptor) {\r\n if (descriptor === undefined) {\r\n descriptor = Object.getOwnPropertyDescriptor(target, key);\r\n }\r\n var originalMethod = descriptor.value;\r\n descriptor.value = function () {\r\n var args = [];\r\n for (var _i = 0; _i < arguments.length; _i++) {\r\n args[_i] = arguments[_i];\r\n }\r\n return __awaiter(this, void 0, void 0, function () {\r\n return __generator(this, function (_a) {\r\n this.configure(headers({ \"X-PnPjs-Tracking\": name }));\r\n return [2 /*return*/, originalMethod.apply(this, args)];\r\n });\r\n });\r\n };\r\n return descriptor;\r\n };\r\n}\r\ntag.getClientTag = function (h, deleteFromCollection) {\r\n if (deleteFromCollection === void 0) { deleteFromCollection = true; }\r\n if (h.has(\"X-PnPjs-Tracking\")) {\r\n var methodName = h.get(\"X-PnPjs-Tracking\");\r\n if (deleteFromCollection) {\r\n h.delete(\"X-PnPjs-Tracking\");\r\n }\r\n if (!stringIsNullOrEmpty(methodName)) {\r\n return methodName;\r\n }\r\n }\r\n return \"\";\r\n};\r\ntag.configure = function (o, name) {\r\n return o.configure(headers({ \"X-PnPjs-Tracking\": name }));\r\n};\r\ntag.isTagged = function (o) {\r\n return o.data.options.headers && o.data.options.headers[\"X-PnPjs-Tracking\"];\r\n};\r\n//# sourceMappingURL=telemetry.js.map","import { __awaiter, __generator } from \"tslib\";\r\nimport { assign, mergeHeaders, getCtxCallback, combine, dateAdd, DefaultRuntime, Runtime, objectDefinedNotNull, } from \"@pnp/common\";\r\nimport { extractWebUrl } from \"./utils/extractweburl.js\";\r\nimport { tag } from \"./telemetry.js\";\r\nimport { ODataParser } from \"@pnp/odata\";\r\nvar SPHttpClient = /** @class */ (function () {\r\n function SPHttpClient() {\r\n // constructor(...args: [runtime: Runtime] | [impl: IHttpClientImpl, runtime?: Runtime]) {\r\n var args = [];\r\n for (var _i = 0; _i < arguments.length; _i++) {\r\n args[_i] = arguments[_i];\r\n }\r\n var _a;\r\n this._runtime = args.length > 0 && args[0] instanceof Runtime ? args[0] : DefaultRuntime;\r\n this._impl = args.length > 1 && objectDefinedNotNull(args[1]) ?\r\n args[1] : ((_a = this._runtime.get(\"sp\")) === null || _a === void 0 ? void 0 : _a.fetchClientFactory()) || null;\r\n if (this._impl === null) {\r\n throw Error(\"Could not generate fetchClientFactory in SPHttpClient.\");\r\n }\r\n this._digestCache = getDigestFactory(this);\r\n }\r\n SPHttpClient.prototype.fetch = function (url, options) {\r\n var _a;\r\n if (options === void 0) { options = {}; }\r\n return __awaiter(this, void 0, void 0, function () {\r\n var opts, headers, methodName, clientTag, digest;\r\n return __generator(this, function (_b) {\r\n switch (_b.label) {\r\n case 0:\r\n opts = assign(options, { cache: \"no-cache\", credentials: \"same-origin\" }, true);\r\n headers = new Headers();\r\n // first we add the global headers so they can be overwritten by any passed in locally to this call\r\n mergeHeaders(headers, (_a = this._runtime.get(\"sp\")) === null || _a === void 0 ? void 0 : _a.headers);\r\n // second we add the local options so we can overwrite the globals\r\n mergeHeaders(headers, options.headers);\r\n // lastly we apply any default headers we need that may not exist\r\n if (!headers.has(\"Accept\")) {\r\n headers.append(\"Accept\", \"application/json\");\r\n }\r\n if (!headers.has(\"Content-Type\")) {\r\n headers.append(\"Content-Type\", \"application/json;odata=verbose;charset=utf-8\");\r\n }\r\n if (!headers.has(\"X-ClientService-ClientTag\")) {\r\n methodName = tag.getClientTag(headers);\r\n clientTag = \"PnPCoreJS:2.5.0-beta1:\" + methodName;\r\n if (clientTag.length > 32) {\r\n clientTag = clientTag.substr(0, 32);\r\n }\r\n headers.append(\"X-ClientService-ClientTag\", clientTag);\r\n }\r\n opts = assign(opts, { headers: headers });\r\n if (!(opts.method && opts.method.toUpperCase() !== \"GET\" && !headers.has(\"X-RequestDigest\") && !headers.has(\"Authorization\"))) return [3 /*break*/, 2];\r\n return [4 /*yield*/, this._digestCache(extractWebUrl(url))];\r\n case 1:\r\n digest = _b.sent();\r\n headers.append(\"X-RequestDigest\", digest);\r\n _b.label = 2;\r\n case 2: return [2 /*return*/, this.fetchRaw(url, opts)];\r\n }\r\n });\r\n });\r\n };\r\n SPHttpClient.prototype.fetchRaw = function (url, options) {\r\n var _this = this;\r\n if (options === void 0) { options = {}; }\r\n // here we need to normalize the headers\r\n var rawHeaders = new Headers();\r\n mergeHeaders(rawHeaders, options.headers);\r\n options = assign(options, { headers: rawHeaders });\r\n var retry = function (ctx) {\r\n // handles setting the proper timeout for a retry\r\n var setRetry = function (response) {\r\n var delay;\r\n if (response.headers.has(\"Retry-After\")) {\r\n // if we have gotten a header, use that value as the delay value in seconds\r\n delay = parseInt(response.headers.get(\"Retry-After\"), 10) * 1000;\r\n }\r\n else {\r\n // grab our current delay\r\n delay = ctx.delay;\r\n // Increment our counters.\r\n ctx.delay *= 2;\r\n }\r\n ctx.attempts++;\r\n // If we have exceeded the retry count, reject.\r\n if (ctx.retryCount <= ctx.attempts) {\r\n ctx.reject(Error(\"Retry count exceeded (\" + ctx.retryCount + \") for request. Response status: [\" + response.status + \"] \" + response.statusText));\r\n }\r\n else {\r\n // Set our retry timeout for {delay} milliseconds.\r\n setTimeout(getCtxCallback(_this, retry, ctx), delay);\r\n }\r\n };\r\n // send the actual request\r\n _this._impl.fetch(url, options).then(function (response) {\r\n if (response.status === 429) {\r\n // we have been throttled\r\n setRetry(response);\r\n }\r\n else {\r\n ctx.resolve(response);\r\n }\r\n }).catch(function (response) {\r\n if (response.status === 503 || response.status === 504) {\r\n // http status code 503 or 504, we can retry this\r\n setRetry(response);\r\n }\r\n else {\r\n ctx.reject(response);\r\n }\r\n });\r\n };\r\n return new Promise(function (resolve, reject) {\r\n retry.call(_this, {\r\n attempts: 0,\r\n delay: 100,\r\n reject: reject,\r\n resolve: resolve,\r\n retryCount: 7,\r\n });\r\n });\r\n };\r\n SPHttpClient.prototype.get = function (url, options) {\r\n if (options === void 0) { options = {}; }\r\n var opts = assign(options, { method: \"GET\" });\r\n return this.fetch(url, opts);\r\n };\r\n SPHttpClient.prototype.post = function (url, options) {\r\n if (options === void 0) { options = {}; }\r\n var opts = assign(options, { method: \"POST\" });\r\n return this.fetch(url, opts);\r\n };\r\n SPHttpClient.prototype.patch = function (url, options) {\r\n if (options === void 0) { options = {}; }\r\n var opts = assign(options, { method: \"PATCH\" });\r\n return this.fetch(url, opts);\r\n };\r\n SPHttpClient.prototype.delete = function (url, options) {\r\n if (options === void 0) { options = {}; }\r\n var opts = assign(options, { method: \"DELETE\" });\r\n return this.fetch(url, opts);\r\n };\r\n return SPHttpClient;\r\n}());\r\nexport { SPHttpClient };\r\n// allows for the caching of digests across all HttpClient's which each have their own DigestCache wrapper.\r\nvar digests = new Map();\r\nfunction getDigestFactory(client) {\r\n var _this = this;\r\n return function (webUrl) { return __awaiter(_this, void 0, void 0, function () {\r\n var cachedDigest, now, url, headers, resp, parsed, newCachedDigest;\r\n var _a, _b;\r\n return __generator(this, function (_c) {\r\n switch (_c.label) {\r\n case 0:\r\n cachedDigest = digests.get(webUrl);\r\n if (cachedDigest !== undefined) {\r\n now = new Date();\r\n if (now < cachedDigest.expiration) {\r\n return [2 /*return*/, cachedDigest.value];\r\n }\r\n }\r\n url = combine(webUrl, \"/_api/contextinfo\");\r\n headers = {\r\n \"Accept\": \"application/json;odata=verbose\",\r\n \"Content-Type\": \"application/json;odata=verbose;charset=utf-8\",\r\n };\r\n return [4 /*yield*/, client.fetchRaw(url, {\r\n cache: \"no-cache\",\r\n credentials: \"same-origin\",\r\n headers: assign(headers, (_b = (_a = client._runtime.get(\"sp\")) === null || _a === void 0 ? void 0 : _a.sp) === null || _b === void 0 ? void 0 : _b.headers, true),\r\n method: \"POST\",\r\n })];\r\n case 1:\r\n resp = _c.sent();\r\n return [4 /*yield*/, (new ODataParser()).parse(resp).then(function (r) { return r.GetContextWebInformation; })];\r\n case 2:\r\n parsed = _c.sent();\r\n newCachedDigest = {\r\n expiration: dateAdd(new Date(), \"second\", parsed.FormDigestTimeoutSeconds),\r\n value: parsed.FormDigestValue,\r\n };\r\n digests.set(webUrl, newCachedDigest);\r\n return [2 /*return*/, newCachedDigest.value];\r\n }\r\n });\r\n }); };\r\n}\r\n//# sourceMappingURL=sphttpclient.js.map","import { __awaiter, __generator } from \"tslib\";\r\nimport { combine, isUrlAbsolute, DefaultRuntime, stringIsNullOrEmpty, hOP, safeGlobal } from \"@pnp/common\";\r\n/**\r\n * Ensures that a given url is absolute for the current web based on context\r\n *\r\n * @param candidateUrl The url to make absolute\r\n *\r\n */\r\nexport function toAbsoluteUrl(candidateUrl, runtime) {\r\n var _a, _b;\r\n if (runtime === void 0) { runtime = DefaultRuntime; }\r\n return __awaiter(this, void 0, void 0, function () {\r\n var baseUrl, fetchClientFactory, context, tempClient, location_1;\r\n return __generator(this, function (_c) {\r\n if (isUrlAbsolute(candidateUrl)) {\r\n // if we are already absolute, then just return the url\r\n return [2 /*return*/, candidateUrl];\r\n }\r\n baseUrl = (_a = runtime.get(\"sp\")) === null || _a === void 0 ? void 0 : _a.baseUrl;\r\n fetchClientFactory = (_b = runtime.get(\"sp\")) === null || _b === void 0 ? void 0 : _b.fetchClientFactory;\r\n if (!stringIsNullOrEmpty(baseUrl)) {\r\n // base url specified either with baseUrl of spfxContext config property\r\n return [2 /*return*/, combine(baseUrl, candidateUrl)];\r\n }\r\n context = runtime.get(\"spfxContext\");\r\n if (context) {\r\n return [2 /*return*/, combine(context.pageContext.web.absoluteUrl, candidateUrl)];\r\n }\r\n // to make the existing node client work in a backwards compatible way we do the following (hacky thing)\r\n // get the client\r\n // see if it has a siteUrl property\r\n // use that to absolute the url\r\n if (fetchClientFactory) {\r\n tempClient = fetchClientFactory();\r\n if (hOP(tempClient, \"siteUrl\")) {\r\n return [2 /*return*/, combine(tempClient.siteUrl, candidateUrl)];\r\n }\r\n }\r\n if (safeGlobal._spPageContextInfo !== undefined) {\r\n // operating in classic pages\r\n if (hOP(safeGlobal._spPageContextInfo, \"webAbsoluteUrl\")) {\r\n return [2 /*return*/, combine(safeGlobal._spPageContextInfo.webAbsoluteUrl, candidateUrl)];\r\n }\r\n else if (hOP(safeGlobal._spPageContextInfo, \"webServerRelativeUrl\")) {\r\n return [2 /*return*/, combine(safeGlobal._spPageContextInfo.webServerRelativeUrl, candidateUrl)];\r\n }\r\n }\r\n // does window.location exist and have a certain path part in it?\r\n if (safeGlobal.location !== undefined) {\r\n location_1 = safeGlobal.location.toString().toLowerCase();\r\n [\"/_layouts/\", \"/siteassets/\", \"/sitepages/\"].forEach(function (s) {\r\n var index = location_1.indexOf(s);\r\n if (index > 0) {\r\n return combine(location_1.substr(0, index), candidateUrl);\r\n }\r\n });\r\n }\r\n return [2 /*return*/, candidateUrl];\r\n });\r\n });\r\n}\r\n//# sourceMappingURL=toabsoluteurl.js.map","import { __awaiter, __generator } from \"tslib\";\r\nimport { defaultPipelineBinder, cloneQueryableData, headers } from \"@pnp/odata\";\r\nimport { SPHttpClient } from \"./sphttpclient.js\";\r\nimport { mergeOptions, objectDefinedNotNull, isFunc } from \"@pnp/common\";\r\nimport { toAbsoluteUrl } from \"./utils/toabsoluteurl.js\";\r\nexport function registerCustomRequestClientFactory(requestClientFactory) {\r\n httpClientFactory = isFunc(requestClientFactory) ? function () { return requestClientFactory; } : defaultFactory;\r\n}\r\nvar defaultFactory = function (runtime) { return function () { return new SPHttpClient(runtime); }; };\r\nvar httpClientFactory = defaultFactory;\r\nvar send = function (method) {\r\n return function (o, options) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var runtime, operation, data, batchDependency, url;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n runtime = o.getRuntime();\r\n operation = defaultPipelineBinder(httpClientFactory(runtime))(method);\r\n data = cloneQueryableData(o.data);\r\n batchDependency = objectDefinedNotNull(data.batch) ? data.batch.addDependency() : function () {\r\n return;\r\n };\r\n return [4 /*yield*/, toAbsoluteUrl(o.toUrlAndQuery(), runtime)];\r\n case 1:\r\n url = _a.sent();\r\n mergeOptions(data.options, options);\r\n return [2 /*return*/, operation(Object.assign({}, data, {\r\n batchDependency: batchDependency,\r\n url: url,\r\n }))];\r\n }\r\n });\r\n });\r\n };\r\n};\r\nexport var spGet = function (o, options) {\r\n // Fix for #304 - when we clone objects we in some cases then execute a get request\r\n // in these cases the caching settings were getting dropped from the request\r\n // this tracks if the object from which this was cloned was caching and applies that to an immediate get request\r\n // does not affect objects cloned from this as we are using different fields to track the settings so it won't\r\n // be triggered\r\n if (o.data.cloneParentWasCaching) {\r\n o.usingCaching(o.data.cloneParentCacheOptions);\r\n }\r\n // if we are forcing caching set that in the data here\r\n if (o._forceCaching) {\r\n o.data.useCaching = true;\r\n }\r\n return send(\"GET\")(o, options);\r\n};\r\nexport var spPost = function (o, options) { return send(\"POST\")(o, options); };\r\nexport var spDelete = function (o, options) { return send(\"DELETE\")(o, options); };\r\nexport var spPatch = function (o, options) { return send(\"PATCH\")(o, options); };\r\nexport var spPostDelete = function (o, options) {\r\n var opts = Object.assign(headers({ \"X-HTTP-Method\": \"DELETE\" }), options);\r\n return spPost(o, opts);\r\n};\r\nexport var spPostDeleteETag = function (o, options, eTag) {\r\n if (eTag === void 0) { eTag = \"*\"; }\r\n var opts = Object.assign(headers({ \"X-HTTP-Method\": \"DELETE\", \"IF-Match\": eTag }), options);\r\n return spPost(o, opts);\r\n};\r\n//# sourceMappingURL=operations.js.map","import { __extends } from \"tslib\";\r\nimport { combine, isUrlAbsolute, assign, jsS } from \"@pnp/common\";\r\nimport { Queryable, invokableFactory } from \"@pnp/odata\";\r\nimport { Logger } from \"@pnp/logging\";\r\nimport { metadata } from \"./utils/metadata.js\";\r\nimport { spGet, spPost, spPostDelete, spPostDeleteETag } from \"./operations.js\";\r\nimport { tag } from \"./telemetry.js\";\r\nexport var spInvokableFactory = function (f) {\r\n return invokableFactory(f);\r\n};\r\n/**\r\n * SharePointQueryable Base Class\r\n *\r\n */\r\nvar _SharePointQueryable = /** @class */ (function (_super) {\r\n __extends(_SharePointQueryable, _super);\r\n /**\r\n * Creates a new instance of the SharePointQueryable class\r\n *\r\n * @constructor\r\n * @param baseUrl A string or SharePointQueryable that should form the base part of the url\r\n *\r\n */\r\n function _SharePointQueryable(baseUrl, path) {\r\n var _this = this;\r\n var url = \"\";\r\n var parentUrl = \"\";\r\n var query = new Map();\r\n if (typeof baseUrl === \"string\") {\r\n // we need to do some extra parsing to get the parent url correct if we are\r\n // being created from just a string.\r\n if (isUrlAbsolute(baseUrl) || baseUrl.lastIndexOf(\"/\") < 0) {\r\n parentUrl = baseUrl;\r\n url = combine(baseUrl, path);\r\n }\r\n else if (baseUrl.lastIndexOf(\"/\") > baseUrl.lastIndexOf(\"(\")) {\r\n // .../items(19)/fields\r\n var index = baseUrl.lastIndexOf(\"/\");\r\n parentUrl = baseUrl.slice(0, index);\r\n path = combine(baseUrl.slice(index), path);\r\n url = combine(parentUrl, path);\r\n }\r\n else {\r\n // .../items(19)\r\n var index = baseUrl.lastIndexOf(\"(\");\r\n parentUrl = baseUrl.slice(0, index);\r\n url = combine(baseUrl, path);\r\n }\r\n }\r\n else {\r\n parentUrl = baseUrl.toUrl();\r\n url = combine(parentUrl, path || \"\");\r\n var target = baseUrl.query.get(\"@target\");\r\n if (target !== undefined) {\r\n query.set(\"@target\", target);\r\n }\r\n }\r\n // init base with correct values for data seed\r\n _this = _super.call(this, {\r\n parentUrl: parentUrl,\r\n query: query,\r\n url: url,\r\n }) || this;\r\n // post init actions\r\n if (typeof baseUrl !== \"string\") {\r\n _this.configureFrom(baseUrl);\r\n }\r\n _this._forceCaching = false;\r\n return _this;\r\n }\r\n /**\r\n * Gets the full url with query information\r\n */\r\n _SharePointQueryable.prototype.toUrlAndQuery = function () {\r\n var aliasedParams = new Map(this.query);\r\n var url = this.toUrl().replace(/'!(@.*?)::(.*?)'/ig, function (match, labelName, value) {\r\n Logger.write(\"Rewriting aliased parameter from match \" + match + \" to label: \" + labelName + \" value: \" + value, 0 /* Verbose */);\r\n aliasedParams.set(labelName, \"'\" + value + \"'\");\r\n return labelName;\r\n });\r\n if (aliasedParams.size > 0) {\r\n var char = url.indexOf(\"?\") > -1 ? \"&\" : \"?\";\r\n url += \"\" + char + Array.from(aliasedParams).map(function (v) { return v[0] + \"=\" + v[1]; }).join(\"&\");\r\n }\r\n return url;\r\n };\r\n /**\r\n * Choose which fields to return\r\n *\r\n * @param selects One or more fields to return\r\n */\r\n _SharePointQueryable.prototype.select = function () {\r\n var selects = [];\r\n for (var _i = 0; _i < arguments.length; _i++) {\r\n selects[_i] = arguments[_i];\r\n }\r\n if (selects.length > 0) {\r\n this.query.set(\"$select\", selects.map(encodeURIComponent).join(\",\"));\r\n }\r\n return this;\r\n };\r\n _SharePointQueryable.prototype.get = function (options) {\r\n return spGet(this, options);\r\n };\r\n /**\r\n * Expands fields such as lookups to get additional data\r\n *\r\n * @param expands The Fields for which to expand the values\r\n */\r\n _SharePointQueryable.prototype.expand = function () {\r\n var expands = [];\r\n for (var _i = 0; _i < arguments.length; _i++) {\r\n expands[_i] = arguments[_i];\r\n }\r\n if (expands.length > 0) {\r\n this.query.set(\"$expand\", expands.map(encodeURIComponent).join(\",\"));\r\n }\r\n return this;\r\n };\r\n /**\r\n * Clones this SharePointQueryable into a new SharePointQueryable instance of T\r\n * @param factory Constructor used to create the new instance\r\n * @param additionalPath Any additional path to include in the clone\r\n * @param includeBatch If true this instance's batch will be added to the cloned instance\r\n * @param includeQuery If true all of the query values will be copied to the cloned instance\r\n */\r\n _SharePointQueryable.prototype.clone = function (factory, additionalPath, includeBatch, includeQuery) {\r\n if (includeBatch === void 0) { includeBatch = true; }\r\n if (includeQuery === void 0) { includeQuery = false; }\r\n var clone = _super.prototype.cloneTo.call(this, factory(this, additionalPath), { includeBatch: includeBatch, includeQuery: includeQuery });\r\n // handle sp specific clone actions\r\n if (!includeQuery) {\r\n // we would have already copied this over if we got the entire query\r\n var t = \"@target\";\r\n if (this.query.has(t)) {\r\n clone.query.set(t, this.query.get(t));\r\n }\r\n }\r\n return clone;\r\n };\r\n /**\r\n * The default action for this object (unless overridden spGet)\r\n *\r\n * @param options optional request options\r\n */\r\n _SharePointQueryable.prototype.defaultAction = function (options) {\r\n return spGet(this, options);\r\n };\r\n /**\r\n * Gets a parent for this instance as specified\r\n *\r\n * @param factory The contructor for the class to create\r\n */\r\n _SharePointQueryable.prototype.getParent = function (factory, baseUrl, path, batch) {\r\n if (baseUrl === void 0) { baseUrl = this.parentUrl; }\r\n var parent = factory(baseUrl, path).configureFrom(this);\r\n var t = \"@target\";\r\n if (this.query.has(t)) {\r\n parent.query.set(t, this.query.get(t));\r\n }\r\n if (batch !== undefined) {\r\n parent = parent.inBatch(batch);\r\n }\r\n return parent;\r\n };\r\n return _SharePointQueryable;\r\n}(Queryable));\r\nexport { _SharePointQueryable };\r\nexport var SharePointQueryable = spInvokableFactory(_SharePointQueryable);\r\n/**\r\n * Represents a REST collection which can be filtered, paged, and selected\r\n *\r\n */\r\nvar _SharePointQueryableCollection = /** @class */ (function (_super) {\r\n __extends(_SharePointQueryableCollection, _super);\r\n function _SharePointQueryableCollection() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n /**\r\n * Filters the returned collection (https://msdn.microsoft.com/en-us/library/office/fp142385.aspx#bk_supported)\r\n *\r\n * @param filter The string representing the filter query\r\n */\r\n _SharePointQueryableCollection.prototype.filter = function (filter) {\r\n this.query.set(\"$filter\", encodeURIComponent(filter));\r\n return this;\r\n };\r\n /**\r\n * Orders based on the supplied fields\r\n *\r\n * @param orderby The name of the field on which to sort\r\n * @param ascending If false DESC is appended, otherwise ASC (default)\r\n */\r\n _SharePointQueryableCollection.prototype.orderBy = function (orderBy, ascending) {\r\n if (ascending === void 0) { ascending = true; }\r\n var o = \"$orderby\";\r\n var query = this.query.has(o) ? this.query.get(o).split(\",\") : [];\r\n query.push(encodeURIComponent(orderBy) + \" \" + (ascending ? \"asc\" : \"desc\"));\r\n this.query.set(o, query.join(\",\"));\r\n return this;\r\n };\r\n /**\r\n * Skips the specified number of items\r\n *\r\n * @param skip The number of items to skip\r\n */\r\n _SharePointQueryableCollection.prototype.skip = function (skip) {\r\n this.query.set(\"$skip\", skip.toString());\r\n return this;\r\n };\r\n /**\r\n * Limits the query to only return the specified number of items\r\n *\r\n * @param top The query row limit\r\n */\r\n _SharePointQueryableCollection.prototype.top = function (top) {\r\n this.query.set(\"$top\", top.toString());\r\n return this;\r\n };\r\n return _SharePointQueryableCollection;\r\n}(_SharePointQueryable));\r\nexport { _SharePointQueryableCollection };\r\nexport var SharePointQueryableCollection = spInvokableFactory(_SharePointQueryableCollection);\r\n/**\r\n * Represents an instance that can be selected\r\n *\r\n */\r\nvar _SharePointQueryableInstance = /** @class */ (function (_super) {\r\n __extends(_SharePointQueryableInstance, _super);\r\n function _SharePointQueryableInstance() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n /**\r\n * Curries the update function into the common pieces\r\n *\r\n * @param type\r\n * @param mapper\r\n */\r\n _SharePointQueryableInstance.prototype._update = function (type, mapper) {\r\n var _this = this;\r\n return function (props) { return spPost(tag.configure(_this, type + \".Update\"), {\r\n body: jsS(assign(metadata(type), props)),\r\n headers: {\r\n \"X-HTTP-Method\": \"MERGE\",\r\n },\r\n }).then(function (d) { return mapper(d, props); }); };\r\n };\r\n return _SharePointQueryableInstance;\r\n}(_SharePointQueryable));\r\nexport { _SharePointQueryableInstance };\r\nexport var SharePointQueryableInstance = spInvokableFactory(_SharePointQueryableInstance);\r\n/**\r\n * Adds the a delete method to the tagged class taking no parameters and calling spPostDelete\r\n */\r\nexport function deleteable(t) {\r\n return function () {\r\n return spPostDelete(tag.configure(this, t + \".delete\"));\r\n };\r\n}\r\nexport function deleteableWithETag(t) {\r\n return function (eTag) {\r\n if (eTag === void 0) { eTag = \"*\"; }\r\n return spPostDeleteETag(tag.configure(this, t + \".delete\"), {}, eTag);\r\n };\r\n}\r\n//# sourceMappingURL=sharepointqueryable.js.map","/**\r\n * Class Decorators\r\n */\r\nimport { __extends } from \"tslib\";\r\n/**\r\n * Decorator used to specify the default path for SharePointQueryable objects\r\n *\r\n * @param path\r\n */\r\nexport function defaultPath(path) {\r\n // eslint-disable-next-line @typescript-eslint/ban-types\r\n return function (target) {\r\n return /** @class */ (function (_super) {\r\n __extends(class_1, _super);\r\n function class_1() {\r\n var args = [];\r\n for (var _i = 0; _i < arguments.length; _i++) {\r\n args[_i] = arguments[_i];\r\n }\r\n return _super.call(this, args[0], args.length > 1 && args[1] !== undefined ? args[1] : path) || this;\r\n }\r\n return class_1;\r\n }(target));\r\n };\r\n}\r\n// TODO::?\r\n// performance tracking method decorator\r\n// redirect to graph api\r\n//# sourceMappingURL=decorators.js.map","import { __extends, __read, __spreadArray } from \"tslib\";\r\nimport { assign, combine, hOP, isUrlAbsolute } from \"@pnp/common\";\r\nimport { Logger } from \"@pnp/logging\";\r\nimport { ODataParser } from \"@pnp/odata\";\r\nimport { extractWebUrl } from \"./utils/extractweburl.js\";\r\nexport function odataUrlFrom(candidate) {\r\n var parts = [];\r\n var s = [\"odata.type\", \"odata.editLink\", \"__metadata\", \"odata.metadata\", \"odata.id\"];\r\n if (hOP(candidate, s[0]) && candidate[s[0]] === \"SP.Web\") {\r\n // webs return an absolute url in the id\r\n if (hOP(candidate, s[4])) {\r\n parts.push(candidate[s[4]]);\r\n }\r\n else if (hOP(candidate, s[2])) {\r\n // we are dealing with verbose, which has an absolute uri\r\n parts.push(candidate.__metadata.uri);\r\n }\r\n }\r\n else {\r\n if (hOP(candidate, s[3]) && hOP(candidate, s[1])) {\r\n // we are dealign with minimal metadata (default)\r\n // some entities return an abosolute url in the editlink while for others it is relative\r\n // without the _api. This code is meant to handle both situations\r\n var editLink = isUrlAbsolute(candidate[s[1]]) ? candidate[s[1]].split(\"_api\")[1] : candidate[s[1]];\r\n parts.push(extractWebUrl(candidate[s[3]]), \"_api\", editLink);\r\n }\r\n else if (hOP(candidate, s[1])) {\r\n parts.push(\"_api\", candidate[s[1]]);\r\n }\r\n else if (hOP(candidate, s[2])) {\r\n // we are dealing with verbose, which has an absolute uri\r\n parts.push(candidate.__metadata.uri);\r\n }\r\n }\r\n if (parts.length < 1) {\r\n Logger.write(\"No uri information found in ODataEntity parsing, chaining will fail for this object.\", 2 /* Warning */);\r\n return \"\";\r\n }\r\n return combine.apply(void 0, __spreadArray([], __read(parts)));\r\n}\r\nvar SPODataEntityParserImpl = /** @class */ (function (_super) {\r\n __extends(SPODataEntityParserImpl, _super);\r\n function SPODataEntityParserImpl(factory) {\r\n var _this = _super.call(this) || this;\r\n _this.factory = factory;\r\n _this.hydrate = function (d) {\r\n var o = _this.factory(odataUrlFrom(d), null);\r\n return assign(o, d);\r\n };\r\n return _this;\r\n }\r\n SPODataEntityParserImpl.prototype.parse = function (r) {\r\n var _this = this;\r\n return _super.prototype.parse.call(this, r).then(function (d) {\r\n var o = _this.factory(odataUrlFrom(d), null);\r\n return assign(o, d);\r\n });\r\n };\r\n return SPODataEntityParserImpl;\r\n}(ODataParser));\r\nvar SPODataEntityArrayParserImpl = /** @class */ (function (_super) {\r\n __extends(SPODataEntityArrayParserImpl, _super);\r\n function SPODataEntityArrayParserImpl(factory) {\r\n var _this = _super.call(this) || this;\r\n _this.factory = factory;\r\n _this.hydrate = function (d) {\r\n return d.map(function (v) {\r\n var o = _this.factory(odataUrlFrom(v), null);\r\n return assign(o, v);\r\n });\r\n };\r\n return _this;\r\n }\r\n SPODataEntityArrayParserImpl.prototype.parse = function (r) {\r\n var _this = this;\r\n return _super.prototype.parse.call(this, r).then(function (d) {\r\n return d.map(function (v) {\r\n var o = _this.factory(odataUrlFrom(v), null);\r\n return assign(o, v);\r\n });\r\n });\r\n };\r\n return SPODataEntityArrayParserImpl;\r\n}(ODataParser));\r\nexport function spODataEntity(factory) {\r\n return new SPODataEntityParserImpl(factory);\r\n}\r\nexport function spODataEntityArray(factory) {\r\n return new SPODataEntityArrayParserImpl(factory);\r\n}\r\n//# sourceMappingURL=odata.js.map","import { __awaiter, __extends, __generator } from \"tslib\";\r\nimport { Batch, HttpRequestError } from \"@pnp/odata\";\r\nimport { getGUID, isUrlAbsolute, combine, mergeHeaders, hOP, DefaultRuntime } from \"@pnp/common\";\r\nimport { Logger } from \"@pnp/logging\";\r\nimport { SPHttpClient } from \"./sphttpclient.js\";\r\nimport { toAbsoluteUrl } from \"./utils/toabsoluteurl.js\";\r\n/**\r\n * Manages a batch of OData operations\r\n */\r\nvar SPBatch = /** @class */ (function (_super) {\r\n __extends(SPBatch, _super);\r\n function SPBatch(url, runtime) {\r\n if (runtime === void 0) { runtime = DefaultRuntime; }\r\n var _this = _super.call(this) || this;\r\n _this.url = url;\r\n _this.runtime = runtime;\r\n return _this;\r\n }\r\n /**\r\n * Parses the response from a batch request into an array of Response instances\r\n *\r\n * @param body Text body of the response from the batch request\r\n */\r\n SPBatch.ParseResponse = function (body) {\r\n var responses = [];\r\n var header = \"--batchresponse_\";\r\n // Ex. \"HTTP/1.1 500 Internal Server Error\"\r\n var statusRegExp = new RegExp(\"^HTTP/[0-9.]+ +([0-9]+) +(.*)\", \"i\");\r\n var lines = body.split(\"\\n\");\r\n var state = \"batch\";\r\n var status;\r\n var statusText;\r\n for (var i = 0; i < lines.length; ++i) {\r\n var line = lines[i];\r\n switch (state) {\r\n case \"batch\":\r\n if (line.substr(0, header.length) === header) {\r\n state = \"batchHeaders\";\r\n }\r\n else {\r\n if (line.trim() !== \"\") {\r\n throw Error(\"Invalid response, line \" + i);\r\n }\r\n }\r\n break;\r\n case \"batchHeaders\":\r\n if (line.trim() === \"\") {\r\n state = \"status\";\r\n }\r\n break;\r\n case \"status\": {\r\n var parts = statusRegExp.exec(line);\r\n if (parts.length !== 3) {\r\n throw Error(\"Invalid status, line \" + i);\r\n }\r\n status = parseInt(parts[1], 10);\r\n statusText = parts[2];\r\n state = \"statusHeaders\";\r\n break;\r\n }\r\n case \"statusHeaders\":\r\n if (line.trim() === \"\") {\r\n state = \"body\";\r\n }\r\n break;\r\n case \"body\":\r\n responses.push((status === 204) ? new Response() : new Response(line, { status: status, statusText: statusText }));\r\n state = \"batch\";\r\n break;\r\n }\r\n }\r\n if (state !== \"status\") {\r\n throw Error(\"Unexpected end of input\");\r\n }\r\n return responses;\r\n };\r\n SPBatch.prototype.executeImpl = function () {\r\n var _a;\r\n return __awaiter(this, void 0, void 0, function () {\r\n var client, absoluteRequestUrl, batchBody, currentChangeSetId, i, reqInfo, headers, url, method, castHeaders, batchOptions, fetchResponse, text, responses;\r\n var _this = this;\r\n return __generator(this, function (_b) {\r\n switch (_b.label) {\r\n case 0:\r\n Logger.write(\"[\" + this.batchId + \"] (\" + (new Date()).getTime() + \") Executing batch with \" + this.requests.length + \" requests.\", 1 /* Info */);\r\n // if we don't have any requests, don't bother sending anything\r\n // this could be due to caching further upstream, or just an empty batch\r\n if (this.requests.length < 1) {\r\n Logger.write(\"Resolving empty batch.\", 1 /* Info */);\r\n return [2 /*return*/];\r\n }\r\n client = new SPHttpClient(this.runtime);\r\n return [4 /*yield*/, toAbsoluteUrl(this.url, this.runtime)];\r\n case 1:\r\n absoluteRequestUrl = _b.sent();\r\n batchBody = [];\r\n currentChangeSetId = \"\";\r\n for (i = 0; i < this.requests.length; i++) {\r\n reqInfo = this.requests[i];\r\n if (reqInfo.method === \"GET\") {\r\n if (currentChangeSetId.length > 0) {\r\n // end an existing change set\r\n batchBody.push(\"--changeset_\" + currentChangeSetId + \"--\\n\\n\");\r\n currentChangeSetId = \"\";\r\n }\r\n batchBody.push(\"--batch_\" + this.batchId + \"\\n\");\r\n }\r\n else {\r\n if (currentChangeSetId.length < 1) {\r\n // start new change set\r\n currentChangeSetId = getGUID();\r\n batchBody.push(\"--batch_\" + this.batchId + \"\\n\");\r\n batchBody.push(\"Content-Type: multipart/mixed; boundary=\\\"changeset_\" + currentChangeSetId + \"\\\"\\n\\n\");\r\n }\r\n batchBody.push(\"--changeset_\" + currentChangeSetId + \"\\n\");\r\n }\r\n // common batch part prefix\r\n batchBody.push(\"Content-Type: application/http\\n\");\r\n batchBody.push(\"Content-Transfer-Encoding: binary\\n\\n\");\r\n headers = new Headers();\r\n url = isUrlAbsolute(reqInfo.url) ? reqInfo.url : combine(absoluteRequestUrl, reqInfo.url);\r\n Logger.write(\"[\" + this.batchId + \"] (\" + (new Date()).getTime() + \") Adding request \" + reqInfo.method + \" \" + url + \" to batch.\", 0 /* Verbose */);\r\n if (reqInfo.method !== \"GET\") {\r\n method = reqInfo.method;\r\n castHeaders = reqInfo.options.headers;\r\n if (hOP(reqInfo, \"options\") && hOP(reqInfo.options, \"headers\") && castHeaders[\"X-HTTP-Method\"] !== undefined) {\r\n method = castHeaders[\"X-HTTP-Method\"];\r\n delete castHeaders[\"X-HTTP-Method\"];\r\n }\r\n batchBody.push(method + \" \" + url + \" HTTP/1.1\\n\");\r\n headers.set(\"Content-Type\", \"application/json;odata=verbose;charset=utf-8\");\r\n }\r\n else {\r\n batchBody.push(reqInfo.method + \" \" + url + \" HTTP/1.1\\n\");\r\n }\r\n // merge global config headers\r\n mergeHeaders(headers, (_a = this.runtime.get(\"sp\")) === null || _a === void 0 ? void 0 : _a.headers);\r\n // merge per-request headers\r\n if (reqInfo.options) {\r\n mergeHeaders(headers, reqInfo.options.headers);\r\n }\r\n // lastly we apply any default headers we need that may not exist\r\n if (!headers.has(\"Accept\")) {\r\n headers.append(\"Accept\", \"application/json\");\r\n }\r\n if (!headers.has(\"Content-Type\")) {\r\n headers.append(\"Content-Type\", \"application/json;odata=verbose;charset=utf-8\");\r\n }\r\n if (!headers.has(\"X-ClientService-ClientTag\")) {\r\n headers.append(\"X-ClientService-ClientTag\", \"PnPCoreJS:@pnp-2.5.0-beta1:batch\");\r\n }\r\n // write headers into batch body\r\n headers.forEach(function (value, name) {\r\n batchBody.push(name + \": \" + value + \"\\n\");\r\n });\r\n batchBody.push(\"\\n\");\r\n if (reqInfo.options.body) {\r\n batchBody.push(reqInfo.options.body + \"\\n\\n\");\r\n }\r\n }\r\n if (currentChangeSetId.length > 0) {\r\n // Close the changeset\r\n batchBody.push(\"--changeset_\" + currentChangeSetId + \"--\\n\\n\");\r\n currentChangeSetId = \"\";\r\n }\r\n batchBody.push(\"--batch_\" + this.batchId + \"--\\n\");\r\n batchOptions = {\r\n \"body\": batchBody.join(\"\"),\r\n \"headers\": {\r\n \"Content-Type\": \"multipart/mixed; boundary=batch_\" + this.batchId,\r\n },\r\n \"method\": \"POST\",\r\n };\r\n Logger.write(\"[\" + this.batchId + \"] (\" + (new Date()).getTime() + \") Sending batch request.\", 1 /* Info */);\r\n return [4 /*yield*/, client.fetch(combine(absoluteRequestUrl, \"/_api/$batch\"), batchOptions)];\r\n case 2:\r\n fetchResponse = _b.sent();\r\n if (!!fetchResponse.ok) return [3 /*break*/, 4];\r\n return [4 /*yield*/, HttpRequestError.init(fetchResponse)];\r\n case 3: \r\n // the entire batch resulted in an error and we need to handle that better #1356\r\n // things consistently with the rest of the http errors\r\n throw (_b.sent());\r\n case 4: return [4 /*yield*/, fetchResponse.clone().text()];\r\n case 5:\r\n text = _b.sent();\r\n responses = SPBatch.ParseResponse(text);\r\n if (responses.length !== this.requests.length) {\r\n throw Error(\"Could not properly parse responses to match requests in batch.\");\r\n }\r\n Logger.write(\"[\" + this.batchId + \"] (\" + (new Date()).getTime() + \") Resolving batched requests.\", 1 /* Info */);\r\n // this structure ensures that we resolve the batched requests in the order we expect\r\n // using async this is not guaranteed depending on the requests\r\n return [2 /*return*/, responses.reduce(function (p, response, index) { return p.then(function () { return __awaiter(_this, void 0, void 0, function () {\r\n var request, _a, _b, e_1;\r\n return __generator(this, function (_c) {\r\n switch (_c.label) {\r\n case 0:\r\n request = this.requests[index];\r\n Logger.write(\"[\" + request.id + \"] (\" + (new Date()).getTime() + \") Resolving request in batch \" + this.batchId + \".\", 1 /* Info */);\r\n _c.label = 1;\r\n case 1:\r\n _c.trys.push([1, 3, , 4]);\r\n _b = (_a = request).resolve;\r\n return [4 /*yield*/, request.parser.parse(response)];\r\n case 2:\r\n _b.apply(_a, [_c.sent()]);\r\n return [3 /*break*/, 4];\r\n case 3:\r\n e_1 = _c.sent();\r\n request.reject(e_1);\r\n return [3 /*break*/, 4];\r\n case 4: return [2 /*return*/];\r\n }\r\n });\r\n }); }); }, Promise.resolve(void (0)))];\r\n }\r\n });\r\n });\r\n };\r\n return SPBatch;\r\n}(Batch));\r\nexport { SPBatch };\r\n//# sourceMappingURL=batch.js.map","import { FetchClient, DefaultRuntime, onRuntimeCreate, } from \"@pnp/common\";\r\nexport var emptyGuid = \"00000000-0000-0000-0000-000000000000\";\r\nonRuntimeCreate(function (runtime) {\r\n var existing = runtime.get(\"sp\");\r\n var spPart = Object.assign({}, {\r\n fetchClientFactory: function () { return new FetchClient(); },\r\n }, existing);\r\n runtime.assign({ sp: spPart });\r\n});\r\nexport function setup(config, runtime) {\r\n if (runtime === void 0) { runtime = DefaultRuntime; }\r\n runtime.assign(config);\r\n}\r\n//# sourceMappingURL=splibconfig.js.map","import { __awaiter, __generator } from \"tslib\";\r\nimport { DefaultRuntime, Runtime } from \"@pnp/common\";\r\nimport { setup as _setup, } from \"./splibconfig.js\";\r\n/**\r\n * Root of the SharePoint REST module\r\n */\r\nvar SPRest = /** @class */ (function () {\r\n /**\r\n * Creates a new instance of the SPRest class\r\n *\r\n * @param options Additional options\r\n * @param baseUrl A string that should form the base part of the url\r\n */\r\n function SPRest(_options, _baseUrl, _runtime) {\r\n if (_options === void 0) { _options = {}; }\r\n if (_baseUrl === void 0) { _baseUrl = \"\"; }\r\n if (_runtime === void 0) { _runtime = DefaultRuntime; }\r\n this._options = _options;\r\n this._baseUrl = _baseUrl;\r\n this._runtime = _runtime;\r\n }\r\n /**\r\n * Configures instance with additional options and baseUrl.\r\n * Provided configuration used by other objects in a chain\r\n *\r\n * @param options Additional options\r\n * @param baseUrl A string that should form the base part of the url\r\n */\r\n SPRest.prototype.configure = function (options, baseUrl) {\r\n if (baseUrl === void 0) { baseUrl = \"\"; }\r\n return new SPRest(options, baseUrl);\r\n };\r\n /**\r\n * Global SharePoint configuration options\r\n *\r\n * @param config The SharePoint configuration to apply\r\n */\r\n SPRest.prototype.setup = function (config) {\r\n if (config.pageContext) {\r\n _setup({\r\n spfxContext: config,\r\n }, this._runtime);\r\n }\r\n else {\r\n _setup(config, this._runtime);\r\n }\r\n };\r\n SPRest.prototype.createIsolated = function (init) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var baseUrl, cloneGlobal, options, config, runtime;\r\n return __generator(this, function (_a) {\r\n // merge our defaults\r\n init = Object.assign({\r\n baseUrl: \"\",\r\n cloneGlobal: true,\r\n config: {},\r\n options: {},\r\n }, init || {});\r\n baseUrl = init.baseUrl, cloneGlobal = init.cloneGlobal, options = init.options, config = init.config;\r\n runtime = cloneGlobal ? new Runtime(DefaultRuntime.export()) : new Runtime();\r\n runtime.assign(config);\r\n return [2 /*return*/, new SPRest(options, baseUrl, runtime)];\r\n });\r\n });\r\n };\r\n SPRest.prototype.childConfigHook = function (callback) {\r\n return callback({ options: this._options, baseUrl: this._baseUrl, runtime: this._runtime });\r\n };\r\n return SPRest;\r\n}());\r\nexport { SPRest };\r\nexport var sp = new SPRest();\r\n//# sourceMappingURL=rest.js.map","import { stringIsNullOrEmpty } from \"@pnp/common\";\r\nimport { Logger } from \"@pnp/logging\";\r\nexport function escapeQueryStrValue(value) {\r\n if (stringIsNullOrEmpty(value)) {\r\n return \"\";\r\n }\r\n // replace all instance of ' with ''\r\n if (/!(@.*?)::(.*?)/ig.test(value)) {\r\n // to ensure our param aliasing still works we need to treat these special or we'll hear about it\r\n // so we encode JUST the part that will end up in the url\r\n return value.replace(/!(@.*?)::(.*)$/ig, function (match, labelName, v) {\r\n Logger.write(\"Rewriting aliased parameter from match \" + match + \" to label: \" + labelName + \" value: \" + v, 0 /* Verbose */);\r\n return \"!\" + labelName + \"::\" + encodeURIComponent(v.replace(/'/ig, \"''\"));\r\n });\r\n }\r\n else {\r\n return encodeURIComponent(value.replace(/'/ig, \"''\"));\r\n }\r\n}\r\n//# sourceMappingURL=escapeQueryStrValue.js.map","import { __awaiter, __decorate, __extends, __generator } from \"tslib\";\r\nimport { SharePointQueryable, _SharePointQueryableInstance, spInvokableFactory } from \"../sharepointqueryable.js\";\r\nimport { defaultPath } from \"../decorators.js\";\r\nimport { Web } from \"../webs/types.js\";\r\nimport { hOP, assign } from \"@pnp/common\";\r\nimport { body } from \"@pnp/odata\";\r\nimport { odataUrlFrom } from \"../odata.js\";\r\nimport { spPost } from \"../operations.js\";\r\nimport { SPBatch } from \"../batch.js\";\r\nimport { escapeQueryStrValue } from \"../utils/escapeQueryStrValue.js\";\r\nimport { tag } from \"../telemetry.js\";\r\nimport { metadata } from \"../utils/metadata.js\";\r\nimport { extractWebUrl } from \"../utils/extractweburl.js\";\r\nimport { emptyGuid } from \"../splibconfig.js\";\r\nvar _Site = /** @class */ (function (_super) {\r\n __extends(_Site, _super);\r\n function _Site() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n Object.defineProperty(_Site.prototype, \"rootWeb\", {\r\n /**\r\n * Gets the root web of the site collection\r\n *\r\n */\r\n get: function () {\r\n return tag.configure(Web(this, \"rootweb\").configureFrom(this), \"si.rootWeb\");\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n /**\r\n * Returns the collection of changes from the change log that have occurred within the list, based on the specified query\r\n *\r\n * @param query The change query\r\n */\r\n _Site.prototype.getChanges = function (query) {\r\n var postBody = body({ \"query\": assign(metadata(\"SP.ChangeQuery\"), query) });\r\n return spPost(this.clone(Web, \"getchanges\"), postBody);\r\n };\r\n /**\r\n * Opens a web by id (using POST)\r\n *\r\n * @param webId The GUID id of the web to open\r\n */\r\n _Site.prototype.openWebById = function (webId) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var data;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0: return [4 /*yield*/, spPost(this.clone(Site, \"openWebById('\" + webId + \"')\"))];\r\n case 1:\r\n data = _a.sent();\r\n return [2 /*return*/, {\r\n data: data,\r\n web: Web(extractWebUrl(odataUrlFrom(data))).configureFrom(this),\r\n }];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Gets a Web instance representing the root web of the site collection\r\n * correctly setup for chaining within the library\r\n */\r\n _Site.prototype.getRootWeb = function () {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var web;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0: return [4 /*yield*/, this.rootWeb.select(\"Url\")()];\r\n case 1:\r\n web = _a.sent();\r\n return [2 /*return*/, tag.configure(Web(web.Url).configureFrom(this), \"si.getRootWeb\")];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Gets the context information for this site collection\r\n */\r\n _Site.prototype.getContextInfo = function () {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var site, q, data, info;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n site = Site(this.parentUrl, \"_api/contextinfo\").configureFrom(this);\r\n q = tag.configure(site, \"si.getContextInfo\");\r\n return [4 /*yield*/, spPost(q)];\r\n case 1:\r\n data = _a.sent();\r\n if (hOP(data, \"GetContextWebInformation\")) {\r\n info = data.GetContextWebInformation;\r\n info.SupportedSchemaVersions = info.SupportedSchemaVersions.results;\r\n return [2 /*return*/, info];\r\n }\r\n else {\r\n return [2 /*return*/, data];\r\n }\r\n return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n _Site.prototype.createBatch = function () {\r\n return new SPBatch(this.parentUrl, this.getRuntime());\r\n };\r\n /**\r\n * Deletes the current site\r\n *\r\n */\r\n _Site.prototype.delete = function () {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var site, q;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0: return [4 /*yield*/, this.clone(Site, \"\").select(\"Id\")()];\r\n case 1:\r\n site = _a.sent();\r\n q = tag.configure(Site(this.parentUrl, \"_api/SPSiteManager/Delete\"), \"si.delete\");\r\n return [4 /*yield*/, spPost(q, body({ siteId: site.Id }))];\r\n case 2:\r\n _a.sent();\r\n return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Gets the document libraries on a site. Static method. (SharePoint Online only)\r\n *\r\n * @param absoluteWebUrl The absolute url of the web whose document libraries should be returned\r\n */\r\n _Site.prototype.getDocumentLibraries = function (absoluteWebUrl) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var q, data;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n q = tag.configure(SharePointQueryable(\"\", \"_api/sp.web.getdocumentlibraries(@v)\"), \"si.getDocumentLibraries\");\r\n q.query.set(\"@v\", \"'\" + escapeQueryStrValue(absoluteWebUrl) + \"'\");\r\n return [4 /*yield*/, q()];\r\n case 1:\r\n data = _a.sent();\r\n return [2 /*return*/, hOP(data, \"GetDocumentLibraries\") ? data.GetDocumentLibraries : data];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Gets the site url from a page url\r\n *\r\n * @param absolutePageUrl The absolute url of the page\r\n */\r\n _Site.prototype.getWebUrlFromPageUrl = function (absolutePageUrl) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var q, data;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n q = tag.configure(SharePointQueryable(\"\", \"_api/sp.web.getweburlfrompageurl(@v)\"), \"si.getWebUrlFromPageUrl\");\r\n q.query.set(\"@v\", \"'\" + escapeQueryStrValue(absolutePageUrl) + \"'\");\r\n return [4 /*yield*/, q()];\r\n case 1:\r\n data = _a.sent();\r\n return [2 /*return*/, hOP(data, \"GetWebUrlFromPageUrl\") ? data.GetWebUrlFromPageUrl : data];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Creates a Modern communication site.\r\n *\r\n * @param title The title of the site to create\r\n * @param lcid The language to use for the site. If not specified will default to 1033 (English).\r\n * @param shareByEmailEnabled If set to true, it will enable sharing files via Email. By default it is set to false\r\n * @param url The fully qualified URL (e.g. https://yourtenant.sharepoint.com/sites/mysitecollection) of the site.\r\n * @param description The description of the communication site.\r\n * @param classification The Site classification to use. For instance 'Contoso Classified'. See https://www.youtube.com/watch?v=E-8Z2ggHcS0 for more information\r\n * @param siteDesignId The Guid of the site design to be used.\r\n * You can use the below default OOTB GUIDs:\r\n * Topic: 00000000-0000-0000-0000-000000000000\r\n * Showcase: 6142d2a0-63a5-4ba0-aede-d9fefca2c767\r\n * Blank: f6cc5403-0d63-442e-96c0-285923709ffc\r\n * @param hubSiteId The id of the hub site to which the new site should be associated\r\n * @param owner Optional owner value, required if executing the method in app only mode\r\n */\r\n _Site.prototype.createCommunicationSite = function (title, lcid, shareByEmailEnabled, url, description, classification, siteDesignId, hubSiteId, owner) {\r\n if (lcid === void 0) { lcid = 1033; }\r\n if (shareByEmailEnabled === void 0) { shareByEmailEnabled = false; }\r\n return __awaiter(this, void 0, void 0, function () {\r\n return __generator(this, function (_a) {\r\n return [2 /*return*/, this.createCommunicationSiteFromProps({\r\n Classification: classification,\r\n Description: description,\r\n HubSiteId: hubSiteId,\r\n Lcid: lcid,\r\n Owner: owner,\r\n ShareByEmailEnabled: shareByEmailEnabled,\r\n SiteDesignId: siteDesignId,\r\n Title: title,\r\n Url: url,\r\n })];\r\n });\r\n });\r\n };\r\n _Site.prototype.createCommunicationSiteFromProps = function (props) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var p, postBody;\r\n return __generator(this, function (_a) {\r\n p = Object.assign({}, {\r\n Classification: \"\",\r\n Description: \"\",\r\n HubSiteId: emptyGuid,\r\n Lcid: 1033,\r\n ShareByEmailEnabled: false,\r\n SiteDesignId: emptyGuid,\r\n WebTemplate: \"SITEPAGEPUBLISHING#0\",\r\n WebTemplateExtensionId: emptyGuid,\r\n }, props);\r\n postBody = body({\r\n \"request\": assign(metadata(\"Microsoft.SharePoint.Portal.SPSiteCreationRequest\"), p),\r\n });\r\n return [2 /*return*/, spPost(Site(extractWebUrl(this.toUrl()), \"/_api/SPSiteManager/Create\"), postBody)];\r\n });\r\n });\r\n };\r\n /**\r\n *\r\n * @param url Site Url that you want to check if exists\r\n */\r\n _Site.prototype.exists = function (url) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var postBody, value;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n postBody = body({ url: url });\r\n return [4 /*yield*/, spPost(Site(extractWebUrl(this.toUrl()), \"/_api/SP.Site.Exists\"), postBody)];\r\n case 1:\r\n value = _a.sent();\r\n return [2 /*return*/, value];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Creates a Modern team site backed by Office 365 group. For use in SP Online only. This will not work with App-only tokens\r\n *\r\n * @param displayName The title or display name of the Modern team site to be created\r\n * @param alias Alias of the underlying Office 365 Group\r\n * @param isPublic Defines whether the Office 365 Group will be public (default), or private.\r\n * @param lcid The language to use for the site. If not specified will default to English (1033).\r\n * @param description The description of the site to be created.\r\n * @param classification The Site classification to use. For instance 'Contoso Classified'. See https://www.youtube.com/watch?v=E-8Z2ggHcS0 for more information\r\n * @param owners The Owners of the site to be created\r\n */\r\n _Site.prototype.createModernTeamSite = function (displayName, alias, isPublic, lcid, description, classification, owners, hubSiteId, siteDesignId) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n return __generator(this, function (_a) {\r\n return [2 /*return*/, this.createModernTeamSiteFromProps({\r\n alias: alias,\r\n classification: classification,\r\n description: description,\r\n displayName: displayName,\r\n hubSiteId: hubSiteId,\r\n isPublic: isPublic,\r\n lcid: lcid,\r\n owners: owners,\r\n siteDesignId: siteDesignId,\r\n })];\r\n });\r\n });\r\n };\r\n _Site.prototype.createModernTeamSiteFromProps = function (props) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var p, postBody;\r\n return __generator(this, function (_a) {\r\n p = Object.assign({}, {\r\n classification: \"\",\r\n description: \"\",\r\n hubSiteId: emptyGuid,\r\n isPublic: true,\r\n lcid: 1033,\r\n owners: [],\r\n }, props);\r\n postBody = {\r\n alias: p.alias,\r\n displayName: p.displayName,\r\n isPublic: p.isPublic,\r\n optionalParams: {\r\n Classification: p.classification,\r\n CreationOptions: {\r\n \"results\": [\"SPSiteLanguage:\" + p.lcid, \"HubSiteId:\" + p.hubSiteId],\r\n },\r\n Description: p.description,\r\n Owners: {\r\n \"results\": p.owners,\r\n },\r\n },\r\n };\r\n if (p.siteDesignId) {\r\n postBody.optionalParams.CreationOptions.results.push(\"implicit_formula_292aa8a00786498a87a5ca52d9f4214a_\" + p.siteDesignId);\r\n }\r\n return [2 /*return*/, spPost(Site(extractWebUrl(this.toUrl()), \"/_api/GroupSiteManager/CreateGroupEx\"), body(postBody))];\r\n });\r\n });\r\n };\r\n __decorate([\r\n tag(\"si.getChanges\")\r\n ], _Site.prototype, \"getChanges\", null);\r\n __decorate([\r\n tag(\"si.openWebById\")\r\n ], _Site.prototype, \"openWebById\", null);\r\n _Site = __decorate([\r\n defaultPath(\"_api/site\")\r\n ], _Site);\r\n return _Site;\r\n}(_SharePointQueryableInstance));\r\nexport { _Site };\r\nexport var Site = spInvokableFactory(_Site);\r\n//# sourceMappingURL=types.js.map","import { SPRest } from \"../rest.js\";\r\nimport { Site } from \"./types.js\";\r\nexport { Site, } from \"./types.js\";\r\nReflect.defineProperty(SPRest.prototype, \"site\", {\r\n configurable: true,\r\n enumerable: true,\r\n get: function () {\r\n return this.childConfigHook(function (_a) {\r\n var options = _a.options, baseUrl = _a.baseUrl, runtime = _a.runtime;\r\n return Site(baseUrl).configure(options).setRuntime(runtime);\r\n });\r\n },\r\n});\r\n//# sourceMappingURL=index.js.map","import { __awaiter, __decorate, __extends, __generator } from \"tslib\";\r\nimport { assign } from \"@pnp/common\";\r\nimport { body, headers } from \"@pnp/odata\";\r\nimport { _SharePointQueryableInstance, SharePointQueryableCollection, _SharePointQueryableCollection, spInvokableFactory, SharePointQueryableInstance, deleteable, } from \"../sharepointqueryable.js\";\r\nimport { defaultPath } from \"../decorators.js\";\r\nimport { odataUrlFrom } from \"../odata.js\";\r\nimport { SPBatch } from \"../batch.js\";\r\nimport { metadata } from \"../utils/metadata.js\";\r\nimport { Site } from \"../sites/index.js\";\r\nimport { spPost, spGet } from \"../operations.js\";\r\nimport { escapeQueryStrValue } from \"../utils/escapeQueryStrValue.js\";\r\nimport { tag } from \"../telemetry.js\";\r\nvar _Webs = /** @class */ (function (_super) {\r\n __extends(_Webs, _super);\r\n function _Webs() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n /**\r\n * Adds a new web to the collection\r\n *\r\n * @param title The new web's title\r\n * @param url The new web's relative url\r\n * @param description The new web's description\r\n * @param template The new web's template internal name (default = STS)\r\n * @param language The locale id that specifies the new web's language (default = 1033 [English, US])\r\n * @param inheritPermissions When true, permissions will be inherited from the new web's parent (default = true)\r\n */\r\n _Webs.prototype.add = function (title, url, description, template, language, inheritPermissions) {\r\n if (description === void 0) { description = \"\"; }\r\n if (template === void 0) { template = \"STS\"; }\r\n if (language === void 0) { language = 1033; }\r\n if (inheritPermissions === void 0) { inheritPermissions = true; }\r\n return __awaiter(this, void 0, void 0, function () {\r\n var postBody, data;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n postBody = body({\r\n \"parameters\": assign(metadata(\"SP.WebCreationInformation\"), {\r\n Description: description,\r\n Language: language,\r\n Title: title,\r\n Url: url,\r\n UseSamePermissionsAsParentSite: inheritPermissions,\r\n WebTemplate: template,\r\n }),\r\n });\r\n return [4 /*yield*/, spPost(this.clone(Webs, \"add\"), postBody)];\r\n case 1:\r\n data = _a.sent();\r\n return [2 /*return*/, {\r\n data: data,\r\n web: Web(odataUrlFrom(data).replace(/_api\\/web\\/?/i, \"\")).configureFrom(this),\r\n }];\r\n }\r\n });\r\n });\r\n };\r\n __decorate([\r\n tag(\"ws.add\")\r\n ], _Webs.prototype, \"add\", null);\r\n _Webs = __decorate([\r\n defaultPath(\"webs\")\r\n ], _Webs);\r\n return _Webs;\r\n}(_SharePointQueryableCollection));\r\nexport { _Webs };\r\nexport var Webs = spInvokableFactory(_Webs);\r\n/**\r\n * Describes a web\r\n *\r\n */\r\nvar _Web = /** @class */ (function (_super) {\r\n __extends(_Web, _super);\r\n function _Web() {\r\n var _this = _super !== null && _super.apply(this, arguments) || this;\r\n _this.delete = deleteable(\"w\");\r\n return _this;\r\n }\r\n Object.defineProperty(_Web.prototype, \"webs\", {\r\n /**\r\n * Gets this web's subwebs\r\n *\r\n */\r\n get: function () {\r\n return Webs(this);\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n Object.defineProperty(_Web.prototype, \"allProperties\", {\r\n /**\r\n * Allows access to the web's all properties collection\r\n */\r\n get: function () {\r\n return tag.configure(this.clone(SharePointQueryableInstance, \"allproperties\"), \"w.allprops\");\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n Object.defineProperty(_Web.prototype, \"webinfos\", {\r\n /**\r\n * Gets a collection of WebInfos for this web's subwebs\r\n *\r\n */\r\n get: function () {\r\n return tag.configure(SharePointQueryableCollection(this, \"webinfos\"), \"w.webinfos\");\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n /**\r\n * Gets this web's parent web and data\r\n *\r\n */\r\n _Web.prototype.getParentWeb = function () {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var ParentWeb;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0: return [4 /*yield*/, spGet(this.select(\"ParentWeb/Id\").expand(\"ParentWeb\"))];\r\n case 1:\r\n ParentWeb = (_a.sent()).ParentWeb;\r\n return [2 /*return*/, (ParentWeb === null || ParentWeb === void 0 ? void 0 : ParentWeb.Id) ? Site(this.parentUrl).openWebById(ParentWeb.Id) : null];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Updates this web instance with the supplied properties\r\n *\r\n * @param properties A plain object hash of values to update for the web\r\n */\r\n _Web.prototype.update = function (properties) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var postBody, data;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n postBody = body(assign(metadata(\"SP.Web\"), properties), headers({ \"X-HTTP-Method\": \"MERGE\" }));\r\n return [4 /*yield*/, spPost(this, postBody)];\r\n case 1:\r\n data = _a.sent();\r\n return [2 /*return*/, { data: data, web: this }];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Applies the theme specified by the contents of each of the files specified in the arguments to the site\r\n *\r\n * @param colorPaletteUrl The server-relative URL of the color palette file\r\n * @param fontSchemeUrl The server-relative URL of the font scheme\r\n * @param backgroundImageUrl The server-relative URL of the background image\r\n * @param shareGenerated When true, the generated theme files are stored in the root site. When false, they are stored in this web\r\n */\r\n _Web.prototype.applyTheme = function (colorPaletteUrl, fontSchemeUrl, backgroundImageUrl, shareGenerated) {\r\n var postBody = body({\r\n backgroundImageUrl: backgroundImageUrl,\r\n colorPaletteUrl: colorPaletteUrl,\r\n fontSchemeUrl: fontSchemeUrl,\r\n shareGenerated: shareGenerated,\r\n });\r\n return spPost(this.clone(Web, \"applytheme\"), postBody);\r\n };\r\n /**\r\n * Applies the specified site definition or site template to the Web site that has no template applied to it\r\n *\r\n * @param template Name of the site definition or the name of the site template\r\n */\r\n _Web.prototype.applyWebTemplate = function (template) {\r\n var q = this.clone(Web, \"applywebtemplate\");\r\n q.concat(\"(webTemplate='\" + escapeQueryStrValue(template) + \"')\");\r\n return spPost(q);\r\n };\r\n /**\r\n * Returns the collection of changes from the change log that have occurred within the list, based on the specified query\r\n *\r\n * @param query The change query\r\n */\r\n _Web.prototype.getChanges = function (query) {\r\n var postBody = body({ \"query\": assign(metadata(\"SP.ChangeQuery\"), query) });\r\n return spPost(this.clone(Web, \"getchanges\"), postBody);\r\n };\r\n /**\r\n * Returns the name of the image file for the icon that is used to represent the specified file\r\n *\r\n * @param filename The file name. If this parameter is empty, the server returns an empty string\r\n * @param size The size of the icon: 16x16 pixels = 0, 32x32 pixels = 1 (default = 0)\r\n * @param progId The ProgID of the application that was used to create the file, in the form OLEServerName.ObjectName\r\n */\r\n _Web.prototype.mapToIcon = function (filename, size, progId) {\r\n if (size === void 0) { size = 0; }\r\n if (progId === void 0) { progId = \"\"; }\r\n return spGet(this.clone(Web, \"maptoicon(filename='\" + escapeQueryStrValue(filename) + \"', progid='\" + escapeQueryStrValue(progId) + \"', size=\" + size + \")\"));\r\n };\r\n /**\r\n * Returns the tenant property corresponding to the specified key in the app catalog site\r\n *\r\n * @param key Id of storage entity to be set\r\n */\r\n _Web.prototype.getStorageEntity = function (key) {\r\n return spGet(this.clone(Web, \"getStorageEntity('\" + escapeQueryStrValue(key) + \"')\"));\r\n };\r\n /**\r\n * This will set the storage entity identified by the given key (MUST be called in the context of the app catalog)\r\n *\r\n * @param key Id of storage entity to be set\r\n * @param value Value of storage entity to be set\r\n * @param description Description of storage entity to be set\r\n * @param comments Comments of storage entity to be set\r\n */\r\n _Web.prototype.setStorageEntity = function (key, value, description, comments) {\r\n if (description === void 0) { description = \"\"; }\r\n if (comments === void 0) { comments = \"\"; }\r\n return spPost(this.clone(Web, \"setStorageEntity\"), body({\r\n comments: comments,\r\n description: description,\r\n key: key,\r\n value: value,\r\n }));\r\n };\r\n /**\r\n * This will remove the storage entity identified by the given key\r\n *\r\n * @param key Id of storage entity to be removed\r\n */\r\n _Web.prototype.removeStorageEntity = function (key) {\r\n return spPost(this.clone(Web, \"removeStorageEntity('\" + escapeQueryStrValue(key) + \"')\"));\r\n };\r\n /**\r\n * Returns a collection of objects that contain metadata about subsites of the current site in which the current user is a member.\r\n *\r\n * @param nWebTemplateFilter Specifies the site definition (default = -1)\r\n * @param nConfigurationFilter A 16-bit integer that specifies the identifier of a configuration (default = -1)\r\n */\r\n _Web.prototype.getSubwebsFilteredForCurrentUser = function (nWebTemplateFilter, nConfigurationFilter) {\r\n if (nWebTemplateFilter === void 0) { nWebTemplateFilter = -1; }\r\n if (nConfigurationFilter === void 0) { nConfigurationFilter = -1; }\r\n var o = this.clone(SharePointQueryableCollection, \"getSubwebsFilteredForCurrentUser(nWebTemplateFilter=\" + nWebTemplateFilter + \",nConfigurationFilter=\" + nConfigurationFilter + \")\");\r\n return tag.configure(o, \"w.getSubwebsFilteredForCurrentUser\");\r\n };\r\n /**\r\n * Creates a new batch for requests within the context of this web\r\n *\r\n */\r\n _Web.prototype.createBatch = function () {\r\n return new SPBatch(this.parentUrl, this.getRuntime());\r\n };\r\n /**\r\n * Returns a collection of site templates available for the site\r\n *\r\n * @param language The locale id of the site templates to retrieve (default = 1033 [English, US])\r\n * @param includeCrossLanguage When true, includes language-neutral site templates; otherwise false (default = true)\r\n */\r\n _Web.prototype.availableWebTemplates = function (language, includeCrossLanugage) {\r\n if (language === void 0) { language = 1033; }\r\n if (includeCrossLanugage === void 0) { includeCrossLanugage = true; }\r\n var path = \"getavailablewebtemplates(lcid=\" + language + \", doincludecrosslanguage=\" + includeCrossLanugage + \")\";\r\n return tag.configure(SharePointQueryableCollection(this, path), \"w.availableWebTemplates\");\r\n };\r\n __decorate([\r\n tag(\"w.getParentWeb\")\r\n ], _Web.prototype, \"getParentWeb\", null);\r\n __decorate([\r\n tag(\"w.update\")\r\n ], _Web.prototype, \"update\", null);\r\n __decorate([\r\n tag(\"w.applyTheme\")\r\n ], _Web.prototype, \"applyTheme\", null);\r\n __decorate([\r\n tag(\"w.applyWebTemplate\")\r\n ], _Web.prototype, \"applyWebTemplate\", null);\r\n __decorate([\r\n tag(\"w.getChanges\")\r\n ], _Web.prototype, \"getChanges\", null);\r\n __decorate([\r\n tag(\"w.mapToIcon\")\r\n ], _Web.prototype, \"mapToIcon\", null);\r\n __decorate([\r\n tag(\"w.getStorageEntity\")\r\n ], _Web.prototype, \"getStorageEntity\", null);\r\n __decorate([\r\n tag(\"w.setStorageEntity\")\r\n ], _Web.prototype, \"setStorageEntity\", null);\r\n __decorate([\r\n tag(\"w.removeStorageEntity\")\r\n ], _Web.prototype, \"removeStorageEntity\", null);\r\n _Web = __decorate([\r\n defaultPath(\"_api/web\")\r\n ], _Web);\r\n return _Web;\r\n}(_SharePointQueryableInstance));\r\nexport { _Web };\r\nexport var Web = spInvokableFactory(_Web);\r\n//# sourceMappingURL=types.js.map","export function toResourcePath(url) {\r\n return {\r\n DecodedUrl: url,\r\n __metadata: { type: \"SP.ResourcePath\" },\r\n };\r\n}\r\n//# sourceMappingURL=toResourcePath.js.map","import { __awaiter, __decorate, __extends, __generator, __read, __spreadArray } from \"tslib\";\r\nimport { assign, dateAdd, hOP, isArray, objectDefinedNotNull } from \"@pnp/common\";\r\nimport { body, headers } from \"@pnp/odata\";\r\nimport { SharePointQueryable, SharePointQueryableCollection, _SharePointQueryableInstance, _SharePointQueryableCollection, spInvokableFactory, deleteableWithETag, } from \"../sharepointqueryable.js\";\r\nimport { odataUrlFrom } from \"../odata.js\";\r\nimport { metadata } from \"../utils/metadata.js\";\r\nimport { defaultPath } from \"../decorators.js\";\r\nimport { spPost } from \"../operations.js\";\r\nimport { escapeQueryStrValue } from \"../utils/escapeQueryStrValue.js\";\r\nimport { tag } from \"../telemetry.js\";\r\nimport { toResourcePath } from \"../utils/toResourcePath.js\";\r\nvar _Lists = /** @class */ (function (_super) {\r\n __extends(_Lists, _super);\r\n function _Lists() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n /**\r\n * Gets a list from the collection by guid id\r\n *\r\n * @param id The Id of the list (GUID)\r\n */\r\n _Lists.prototype.getById = function (id) {\r\n return tag.configure(List(this).concat(\"('\" + id + \"')\"), \"ls.getById\");\r\n };\r\n /**\r\n * Gets a list from the collection by title\r\n *\r\n * @param title The title of the list\r\n */\r\n _Lists.prototype.getByTitle = function (title) {\r\n return tag.configure(List(this, \"getByTitle('\" + escapeQueryStrValue(title) + \"')\"), \"ls.getByTitle\");\r\n };\r\n /**\r\n * Adds a new list to the collection\r\n *\r\n * @param title The new list's title\r\n * @param description The new list's description\r\n * @param template The list template value\r\n * @param enableContentTypes If true content types will be allowed and enabled, otherwise they will be disallowed and not enabled\r\n * @param additionalSettings Will be passed as part of the list creation body\r\n */\r\n _Lists.prototype.add = function (title, desc, template, enableContentTypes, additionalSettings) {\r\n if (desc === void 0) { desc = \"\"; }\r\n if (template === void 0) { template = 100; }\r\n if (enableContentTypes === void 0) { enableContentTypes = false; }\r\n if (additionalSettings === void 0) { additionalSettings = {}; }\r\n return __awaiter(this, void 0, void 0, function () {\r\n var addSettings, data;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n addSettings = Object.assign({\r\n \"AllowContentTypes\": enableContentTypes,\r\n \"BaseTemplate\": template,\r\n \"ContentTypesEnabled\": enableContentTypes,\r\n \"Description\": desc,\r\n \"Title\": title,\r\n }, metadata(\"SP.List\"), additionalSettings);\r\n return [4 /*yield*/, spPost(this, body(addSettings))];\r\n case 1:\r\n data = _a.sent();\r\n return [2 /*return*/, { data: data, list: this.getByTitle(addSettings.Title) }];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Ensures that the specified list exists in the collection (note: this method not supported for batching)\r\n *\r\n * @param title The new list's title\r\n * @param desc The new list's description\r\n * @param template The list template value\r\n * @param enableContentTypes If true content types will be allowed and enabled, otherwise they will be disallowed and not enabled\r\n * @param additionalSettings Will be passed as part of the list creation body or used to update an existing list\r\n */\r\n _Lists.prototype.ensure = function (title, desc, template, enableContentTypes, additionalSettings) {\r\n if (desc === void 0) { desc = \"\"; }\r\n if (template === void 0) { template = 100; }\r\n if (enableContentTypes === void 0) { enableContentTypes = false; }\r\n if (additionalSettings === void 0) { additionalSettings = {}; }\r\n return __awaiter(this, void 0, void 0, function () {\r\n var addOrUpdateSettings, list, data, e_1, data;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n if (this.hasBatch) {\r\n throw Error(\"The ensure list method is not supported for use in a batch.\");\r\n }\r\n addOrUpdateSettings = assign(additionalSettings, { Title: title, Description: desc, ContentTypesEnabled: enableContentTypes }, true);\r\n list = this.getByTitle(addOrUpdateSettings.Title);\r\n _a.label = 1;\r\n case 1:\r\n _a.trys.push([1, 4, , 6]);\r\n // this will throw if the list doesn't exist\r\n return [4 /*yield*/, list.select(\"Title\")()];\r\n case 2:\r\n // this will throw if the list doesn't exist\r\n _a.sent();\r\n return [4 /*yield*/, list.update(addOrUpdateSettings).then(function (r) { return r.data; })];\r\n case 3:\r\n data = _a.sent();\r\n return [2 /*return*/, { created: false, data: data, list: this.getByTitle(addOrUpdateSettings.Title) }];\r\n case 4:\r\n e_1 = _a.sent();\r\n return [4 /*yield*/, this.add(title, desc, template, enableContentTypes, addOrUpdateSettings).then(function (r) { return r.data; })];\r\n case 5:\r\n data = _a.sent();\r\n return [2 /*return*/, { created: true, data: data, list: this.getByTitle(addOrUpdateSettings.Title) }];\r\n case 6: return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Gets a list that is the default asset location for images or other files, which the users upload to their wiki pages.\r\n */\r\n _Lists.prototype.ensureSiteAssetsLibrary = function () {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var json;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0: return [4 /*yield*/, spPost(this.clone(Lists, \"ensuresiteassetslibrary\"))];\r\n case 1:\r\n json = _a.sent();\r\n return [2 /*return*/, List(odataUrlFrom(json))];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Gets a list that is the default location for wiki pages.\r\n */\r\n _Lists.prototype.ensureSitePagesLibrary = function () {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var json;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0: return [4 /*yield*/, spPost(this.clone(Lists, \"ensuresitepageslibrary\"))];\r\n case 1:\r\n json = _a.sent();\r\n return [2 /*return*/, List(odataUrlFrom(json))];\r\n }\r\n });\r\n });\r\n };\r\n __decorate([\r\n tag(\"ls.add\")\r\n ], _Lists.prototype, \"add\", null);\r\n __decorate([\r\n tag(\"ls.ensure\")\r\n ], _Lists.prototype, \"ensure\", null);\r\n __decorate([\r\n tag(\"ls.ensureSiteAssetsLibrary\")\r\n ], _Lists.prototype, \"ensureSiteAssetsLibrary\", null);\r\n __decorate([\r\n tag(\"ls.ensureSitePagesLibrary\")\r\n ], _Lists.prototype, \"ensureSitePagesLibrary\", null);\r\n _Lists = __decorate([\r\n defaultPath(\"lists\")\r\n ], _Lists);\r\n return _Lists;\r\n}(_SharePointQueryableCollection));\r\nexport { _Lists };\r\nexport var Lists = spInvokableFactory(_Lists);\r\nvar _List = /** @class */ (function (_super) {\r\n __extends(_List, _super);\r\n function _List() {\r\n var _this = _super !== null && _super.apply(this, arguments) || this;\r\n _this.delete = deleteableWithETag(\"l\");\r\n return _this;\r\n }\r\n Object.defineProperty(_List.prototype, \"effectiveBasePermissions\", {\r\n /**\r\n * Gets the effective base permissions of this list\r\n *\r\n */\r\n get: function () {\r\n return tag.configure(SharePointQueryable(this, \"EffectiveBasePermissions\"), \"l.effectiveBasePermissions\");\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n Object.defineProperty(_List.prototype, \"eventReceivers\", {\r\n /**\r\n * Gets the event receivers attached to this list\r\n *\r\n */\r\n get: function () {\r\n return tag.configure(SharePointQueryableCollection(this, \"EventReceivers\"), \"l.eventReceivers\");\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n Object.defineProperty(_List.prototype, \"relatedFields\", {\r\n /**\r\n * Gets the related fields of this list\r\n *\r\n */\r\n get: function () {\r\n return tag.configure(SharePointQueryable(this, \"getRelatedFields\"), \"l.relatedFields\");\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n Object.defineProperty(_List.prototype, \"informationRightsManagementSettings\", {\r\n /**\r\n * Gets the IRM settings for this list\r\n *\r\n */\r\n get: function () {\r\n return tag.configure(SharePointQueryable(this, \"InformationRightsManagementSettings\"), \"l.informationRightsManagementSettings\");\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n /**\r\n * Updates this list intance with the supplied properties\r\n *\r\n * @param properties A plain object hash of values to update for the list\r\n * @param eTag Value used in the IF-Match header, by default \"*\"\r\n */\r\n _List.prototype.update = function (properties, eTag) {\r\n if (eTag === void 0) { eTag = \"*\"; }\r\n return __awaiter(this, void 0, void 0, function () {\r\n var postBody, data, list;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n postBody = body(assign(metadata(\"SP.List\"), properties), headers({\r\n \"IF-Match\": eTag,\r\n \"X-HTTP-Method\": \"MERGE\",\r\n }));\r\n return [4 /*yield*/, spPost(this, postBody)];\r\n case 1:\r\n data = _a.sent();\r\n list = hOP(properties, \"Title\") ? this.getParent(List, this.parentUrl, \"getByTitle('\" + properties.Title + \"')\") : List(this);\r\n return [2 /*return*/, {\r\n data: data,\r\n list: list,\r\n }];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Returns the collection of changes from the change log that have occurred within the list, based on the specified query.\r\n * @param query A query that is performed against the change log.\r\n */\r\n _List.prototype.getChanges = function (query) {\r\n return spPost(this.clone(List, \"getchanges\"), body({ query: assign(metadata(\"SP.ChangeQuery\"), query) }));\r\n };\r\n /**\r\n * Returns the collection of items in the list based on the provided CamlQuery\r\n * @param query A query that is performed against the list\r\n * @param expands An expanded array of n items that contains fields to expand in the CamlQuery\r\n */\r\n _List.prototype.getItemsByCAMLQuery = function (query) {\r\n var expands = [];\r\n for (var _i = 1; _i < arguments.length; _i++) {\r\n expands[_i - 1] = arguments[_i];\r\n }\r\n var q = this.clone(List, \"getitems\");\r\n return spPost(q.expand.apply(q, __spreadArray([], __read(expands))), body({ query: assign(metadata(\"SP.CamlQuery\"), query) }));\r\n };\r\n /**\r\n * See: https://msdn.microsoft.com/en-us/library/office/dn292554.aspx\r\n * @param query An object that defines the change log item query\r\n */\r\n _List.prototype.getListItemChangesSinceToken = function (query) {\r\n var o = this.clone(List, \"getlistitemchangessincetoken\").usingParser({\r\n parse: function (r) {\r\n return r.text();\r\n },\r\n });\r\n return spPost(o, body({ \"query\": assign(metadata(\"SP.ChangeLogItemQuery\"), query) }));\r\n };\r\n /**\r\n * Moves the list to the Recycle Bin and returns the identifier of the new Recycle Bin item.\r\n */\r\n _List.prototype.recycle = function () {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var data;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0: return [4 /*yield*/, spPost(this.clone(List, \"recycle\"))];\r\n case 1:\r\n data = _a.sent();\r\n return [2 /*return*/, hOP(data, \"Recycle\") ? data.Recycle : data];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Renders list data based on the view xml provided\r\n * @param viewXml A string object representing a view xml\r\n */\r\n _List.prototype.renderListData = function (viewXml) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var q, data;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n q = this.clone(List, \"renderlistdata(@viewXml)\");\r\n q.query.set(\"@viewXml\", \"'\" + viewXml + \"'\");\r\n return [4 /*yield*/, spPost(q)];\r\n case 1:\r\n data = _a.sent();\r\n // data will be a string, so we parse it again\r\n return [2 /*return*/, JSON.parse(hOP(data, \"RenderListData\") ? data.RenderListData : data)];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Returns the data for the specified query view\r\n *\r\n * @param parameters The parameters to be used to render list data as JSON string.\r\n * @param overrideParams The parameters that are used to override and extend the regular SPRenderListDataParameters.\r\n * @param query Allows setting of query parameters\r\n */\r\n _List.prototype.renderListDataAsStream = function (parameters, overrideParams, query) {\r\n if (overrideParams === void 0) { overrideParams = null; }\r\n if (query === void 0) { query = new Map(); }\r\n if (hOP(parameters, \"RenderOptions\") && isArray(parameters.RenderOptions)) {\r\n parameters.RenderOptions = parameters.RenderOptions.reduce(function (v, c) { return v + c; });\r\n }\r\n var bodyOptions = { parameters: assign(metadata(\"SP.RenderListDataParameters\"), parameters) };\r\n if (objectDefinedNotNull(overrideParams)) {\r\n bodyOptions = assign(bodyOptions, { overrideParameters: assign(metadata(\"SP.RenderListDataOverrideParameters\"), overrideParams) });\r\n }\r\n var clone = this.clone(List, \"RenderListDataAsStream\", true, true);\r\n if (query && query.size > 0) {\r\n query.forEach(function (v, k) { return clone.query.set(k, v); });\r\n }\r\n return spPost(clone, body(bodyOptions));\r\n };\r\n /**\r\n * Gets the field values and field schema attributes for a list item.\r\n * @param itemId Item id of the item to render form data for\r\n * @param formId The id of the form\r\n * @param mode Enum representing the control mode of the form (Display, Edit, New)\r\n */\r\n _List.prototype.renderListFormData = function (itemId, formId, mode) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var data;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0: return [4 /*yield*/, spPost(this.clone(List, \"renderlistformdata(itemid=\" + itemId + \", formid='\" + formId + \"', mode='\" + mode + \"')\"))];\r\n case 1:\r\n data = _a.sent();\r\n // data will be a string, so we parse it again\r\n return [2 /*return*/, JSON.parse(hOP(data, \"RenderListFormData\") ? data.RenderListFormData : data)];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Reserves a list item ID for idempotent list item creation.\r\n */\r\n _List.prototype.reserveListItemId = function () {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var data;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0: return [4 /*yield*/, spPost(this.clone(List, \"reservelistitemid\"))];\r\n case 1:\r\n data = _a.sent();\r\n return [2 /*return*/, hOP(data, \"ReserveListItemId\") ? data.ReserveListItemId : data];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Returns the ListItemEntityTypeFullName for this list, used when adding/updating list items. Does not support batching.\r\n */\r\n _List.prototype.getListItemEntityTypeFullName = function () {\r\n // we cache these requests as the entity name doesn't change and we can save traffic\r\n // this is justified as this method generates our second highest number of monthly executions ahead of item add and update\r\n return this.clone(List, null, false).select(\"ListItemEntityTypeFullName\").usingCaching({\r\n expiration: dateAdd(new Date(), \"day\", 5),\r\n key: \"PnPjs-ListEntityName:\" + this.toUrl(),\r\n storeName: \"local\",\r\n })().then(function (o) { return o.ListItemEntityTypeFullName; });\r\n };\r\n /**\r\n * Creates an item using path (in a folder), validates and sets its field values.\r\n *\r\n * @param formValues The fields to change and their new values.\r\n * @param decodedUrl Path decoded url; folder's server relative path.\r\n * @param bNewDocumentUpdate true if the list item is a document being updated after upload; otherwise false.\r\n * @param checkInComment Optional check in comment.\r\n * @param additionalProps Optional set of additional properties LeafName new document file name,\r\n */\r\n _List.prototype.addValidateUpdateItemUsingPath = function (formValues, decodedUrl, bNewDocumentUpdate, checkInComment, additionalProps) {\r\n if (bNewDocumentUpdate === void 0) { bNewDocumentUpdate = false; }\r\n return __awaiter(this, void 0, void 0, function () {\r\n var addProps, res;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n addProps = {\r\n FolderPath: toResourcePath(decodedUrl),\r\n };\r\n if (objectDefinedNotNull(additionalProps)) {\r\n if (additionalProps.leafName) {\r\n addProps.LeafName = toResourcePath(additionalProps.leafName);\r\n }\r\n if (additionalProps.objectType) {\r\n addProps.UnderlyingObjectType = additionalProps.objectType;\r\n }\r\n }\r\n return [4 /*yield*/, spPost(this.clone(List, \"AddValidateUpdateItemUsingPath()\"), body({\r\n bNewDocumentUpdate: bNewDocumentUpdate,\r\n checkInComment: checkInComment,\r\n formValues: formValues,\r\n listItemCreateInfo: assign(metadata(\"SP.ListItemCreationInformationUsingPath\"), addProps),\r\n }))];\r\n case 1:\r\n res = _a.sent();\r\n return [2 /*return*/, hOP(res, \"AddValidateUpdateItemUsingPath\") ? res.AddValidateUpdateItemUsingPath : res];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Gets the parent information for this item's list and web\r\n */\r\n _List.prototype.getParentInfos = function () {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var urlInfo;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0: return [4 /*yield*/, this.select(\"Id\", \"RootFolder/UniqueId\", \"RootFolder/ServerRelativeUrl\", \"RootFolder/ServerRelativePath\", \"ParentWeb/Id\", \"ParentWeb/Url\", \"ParentWeb/ServerRelativeUrl\", \"ParentWeb/ServerRelativePath\").expand(\"RootFolder\", \"ParentWeb\")()];\r\n case 1:\r\n urlInfo = _a.sent();\r\n return [2 /*return*/, {\r\n List: {\r\n Id: urlInfo.Id,\r\n RootFolderServerRelativePath: urlInfo.RootFolder.ServerRelativePath,\r\n RootFolderServerRelativeUrl: urlInfo.RootFolder.ServerRelativeUrl,\r\n RootFolderUniqueId: urlInfo.RootFolder.UniqueId,\r\n },\r\n ParentWeb: {\r\n Id: urlInfo.ParentWeb.Id,\r\n ServerRelativePath: urlInfo.ParentWeb.ServerRelativePath,\r\n ServerRelativeUrl: urlInfo.ParentWeb.ServerRelativeUrl,\r\n Url: urlInfo.ParentWeb.Url,\r\n },\r\n }];\r\n }\r\n });\r\n });\r\n };\r\n __decorate([\r\n tag(\"l.update\")\r\n ], _List.prototype, \"update\", null);\r\n __decorate([\r\n tag(\"l.getChanges\")\r\n ], _List.prototype, \"getChanges\", null);\r\n __decorate([\r\n tag(\"l.CAMLQuery\")\r\n ], _List.prototype, \"getItemsByCAMLQuery\", null);\r\n __decorate([\r\n tag(\"l.ChangesSinceToken\")\r\n ], _List.prototype, \"getListItemChangesSinceToken\", null);\r\n __decorate([\r\n tag(\"l.recycle\")\r\n ], _List.prototype, \"recycle\", null);\r\n __decorate([\r\n tag(\"l.renderListData\")\r\n ], _List.prototype, \"renderListData\", null);\r\n __decorate([\r\n tag(\"l.AsStream\")\r\n ], _List.prototype, \"renderListDataAsStream\", null);\r\n __decorate([\r\n tag(\"l.renderListFormData\")\r\n ], _List.prototype, \"renderListFormData\", null);\r\n __decorate([\r\n tag(\"l.reserveListItemId\")\r\n ], _List.prototype, \"reserveListItemId\", null);\r\n __decorate([\r\n tag(\"l.getListItemEntityTypeFullName\")\r\n ], _List.prototype, \"getListItemEntityTypeFullName\", null);\r\n __decorate([\r\n tag(\"l.addValidateUpdateItemUsingPath\")\r\n ], _List.prototype, \"addValidateUpdateItemUsingPath\", null);\r\n return _List;\r\n}(_SharePointQueryableInstance));\r\nexport { _List };\r\nexport var List = spInvokableFactory(_List);\r\n/**\r\n * Enum representing the options of the RenderOptions property on IRenderListDataParameters interface\r\n */\r\nexport var RenderListDataOptions;\r\n(function (RenderListDataOptions) {\r\n RenderListDataOptions[RenderListDataOptions[\"None\"] = 0] = \"None\";\r\n RenderListDataOptions[RenderListDataOptions[\"ContextInfo\"] = 1] = \"ContextInfo\";\r\n RenderListDataOptions[RenderListDataOptions[\"ListData\"] = 2] = \"ListData\";\r\n RenderListDataOptions[RenderListDataOptions[\"ListSchema\"] = 4] = \"ListSchema\";\r\n RenderListDataOptions[RenderListDataOptions[\"MenuView\"] = 8] = \"MenuView\";\r\n RenderListDataOptions[RenderListDataOptions[\"ListContentType\"] = 16] = \"ListContentType\";\r\n RenderListDataOptions[RenderListDataOptions[\"FileSystemItemId\"] = 32] = \"FileSystemItemId\";\r\n RenderListDataOptions[RenderListDataOptions[\"ClientFormSchema\"] = 64] = \"ClientFormSchema\";\r\n RenderListDataOptions[RenderListDataOptions[\"QuickLaunch\"] = 128] = \"QuickLaunch\";\r\n RenderListDataOptions[RenderListDataOptions[\"Spotlight\"] = 256] = \"Spotlight\";\r\n RenderListDataOptions[RenderListDataOptions[\"Visualization\"] = 512] = \"Visualization\";\r\n RenderListDataOptions[RenderListDataOptions[\"ViewMetadata\"] = 1024] = \"ViewMetadata\";\r\n RenderListDataOptions[RenderListDataOptions[\"DisableAutoHyperlink\"] = 2048] = \"DisableAutoHyperlink\";\r\n RenderListDataOptions[RenderListDataOptions[\"EnableMediaTAUrls\"] = 4096] = \"EnableMediaTAUrls\";\r\n RenderListDataOptions[RenderListDataOptions[\"ParentInfo\"] = 8192] = \"ParentInfo\";\r\n RenderListDataOptions[RenderListDataOptions[\"PageContextInfo\"] = 16384] = \"PageContextInfo\";\r\n RenderListDataOptions[RenderListDataOptions[\"ClientSideComponentManifest\"] = 32768] = \"ClientSideComponentManifest\";\r\n})(RenderListDataOptions || (RenderListDataOptions = {}));\r\n/**\r\n * Determines the display mode of the given control or view\r\n */\r\nexport var ControlMode;\r\n(function (ControlMode) {\r\n ControlMode[ControlMode[\"Display\"] = 1] = \"Display\";\r\n ControlMode[ControlMode[\"Edit\"] = 2] = \"Edit\";\r\n ControlMode[ControlMode[\"New\"] = 3] = \"New\";\r\n})(ControlMode || (ControlMode = {}));\r\n//# sourceMappingURL=types.js.map","import { __awaiter, __generator } from \"tslib\";\r\nimport { addProp } from \"@pnp/odata\";\r\nimport { _Web, Web } from \"../webs/types.js\";\r\nimport { Lists, List } from \"./types.js\";\r\nimport { odataUrlFrom } from \"../odata.js\";\r\nimport { SharePointQueryableCollection } from \"../sharepointqueryable.js\";\r\nimport { escapeQueryStrValue } from \"../utils/escapeQueryStrValue.js\";\r\naddProp(_Web, \"lists\", Lists);\r\naddProp(_Web, \"siteUserInfoList\", List, \"siteuserinfolist\");\r\naddProp(_Web, \"defaultDocumentLibrary\", List, \"DefaultDocumentLibrary\");\r\naddProp(_Web, \"customListTemplates\", SharePointQueryableCollection, \"getcustomlisttemplates\");\r\n_Web.prototype.getList = function (listRelativeUrl) {\r\n return List(this, \"getList('\" + escapeQueryStrValue(listRelativeUrl) + \"')\");\r\n};\r\n_Web.prototype.getCatalog = function (type) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var data;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0: return [4 /*yield*/, this.clone(Web, \"getcatalog(\" + type + \")\").select(\"Id\").get()];\r\n case 1:\r\n data = _a.sent();\r\n return [2 /*return*/, List(odataUrlFrom(data))];\r\n }\r\n });\r\n });\r\n};\r\n//# sourceMappingURL=web.js.map","import { __awaiter, __decorate, __extends, __generator } from \"tslib\";\r\nimport { SharePointQueryable, _SharePointQueryableInstance, _SharePointQueryableCollection, SharePointQueryableInstance, spInvokableFactory, deleteableWithETag, } from \"../sharepointqueryable.js\";\r\nimport { assign, hOP } from \"@pnp/common\";\r\nimport { List } from \"../lists/types.js\";\r\nimport { ODataParser, body, headers } from \"@pnp/odata\";\r\nimport { Logger } from \"@pnp/logging\";\r\nimport { metadata } from \"../utils/metadata.js\";\r\nimport { defaultPath } from \"../decorators.js\";\r\nimport { spPost } from \"../operations.js\";\r\nimport { tag } from \"../telemetry.js\";\r\n/**\r\n * Describes a collection of Item objects\r\n *\r\n */\r\nvar _Items = /** @class */ (function (_super) {\r\n __extends(_Items, _super);\r\n function _Items() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n /**\r\n * Gets an Item by id\r\n *\r\n * @param id The integer id of the item to retrieve\r\n */\r\n _Items.prototype.getById = function (id) {\r\n return tag.configure(Item(this).concat(\"(\" + id + \")\"), \"is.getById\");\r\n };\r\n /**\r\n * Gets BCS Item by string id\r\n *\r\n * @param stringId The string id of the BCS item to retrieve\r\n */\r\n _Items.prototype.getItemByStringId = function (stringId) {\r\n // creates an item with the parent list path and append out method call\r\n return tag.configure(Item(this.parentUrl, \"getItemByStringId('\" + stringId + \"')\"), \"is.getItemByStringId\");\r\n };\r\n /**\r\n * Skips the specified number of items (https://msdn.microsoft.com/en-us/library/office/fp142385.aspx#sectionSection6)\r\n *\r\n * @param skip The starting id where the page should start, use with top to specify pages\r\n * @param reverse It true the PagedPrev=true parameter is added allowing backwards navigation in the collection\r\n */\r\n _Items.prototype.skip = function (skip, reverse) {\r\n if (reverse === void 0) { reverse = false; }\r\n if (reverse) {\r\n this.query.set(\"$skiptoken\", encodeURIComponent(\"Paged=TRUE&PagedPrev=TRUE&p_ID=\" + skip));\r\n }\r\n else {\r\n this.query.set(\"$skiptoken\", encodeURIComponent(\"Paged=TRUE&p_ID=\" + skip));\r\n }\r\n return this;\r\n };\r\n /**\r\n * Gets a collection designed to aid in paging through data\r\n *\r\n */\r\n _Items.prototype.getPaged = function () {\r\n return this.usingParser(new PagedItemCollectionParser(this))();\r\n };\r\n /**\r\n * Gets all the items in a list, regardless of count. Does not support batching or caching\r\n *\r\n * @param requestSize Number of items to return in each request (Default: 2000)\r\n * @param acceptHeader Allows for setting the value of the Accept header for SP 2013 support\r\n */\r\n _Items.prototype.getAll = function (requestSize, acceptHeader) {\r\n if (requestSize === void 0) { requestSize = 2000; }\r\n if (acceptHeader === void 0) { acceptHeader = \"application/json;odata=nometadata\"; }\r\n Logger.write(\"Calling items.getAll should be done sparingly. Ensure this is the correct choice. If you are unsure, it is not.\", 2 /* Warning */);\r\n // this will be used for the actual query\r\n // and we set no metadata here to try and reduce traffic\r\n var items = Items(this, \"\").top(requestSize).configure({\r\n headers: {\r\n \"Accept\": acceptHeader,\r\n },\r\n });\r\n // let's copy over the odata query params that can be applied\r\n // $top - allow setting the page size this way (override what we did above)\r\n // $select - allow picking the return fields (good behavior)\r\n // $filter - allow setting a filter, though this may fail due for large lists\r\n this.query.forEach(function (v, k) {\r\n if (/^\\$select|filter|top|expand$/i.test(k)) {\r\n items.query.set(k, v);\r\n }\r\n });\r\n // give back the promise\r\n return new Promise(function (resolve, reject) {\r\n // this will eventually hold the items we return\r\n var itemsCollector = [];\r\n // action that will gather up our results recursively\r\n var gatherer = function (last) {\r\n // collect that set of results\r\n [].push.apply(itemsCollector, last.results);\r\n // if we have more, repeat - otherwise resolve with the collected items\r\n if (last.hasNext) {\r\n last.getNext().then(gatherer).catch(reject);\r\n }\r\n else {\r\n resolve(itemsCollector);\r\n }\r\n };\r\n // start the cycle\r\n items.getPaged().then(gatherer).catch(reject);\r\n });\r\n };\r\n /**\r\n * Adds a new item to the collection\r\n *\r\n * @param properties The new items's properties\r\n * @param listItemEntityTypeFullName The type name of the list's entities\r\n */\r\n _Items.prototype.add = function (properties, listItemEntityTypeFullName) {\r\n if (properties === void 0) { properties = {}; }\r\n if (listItemEntityTypeFullName === void 0) { listItemEntityTypeFullName = null; }\r\n return __awaiter(this, void 0, void 0, function () {\r\n var removeDependency, listItemEntityType, postBody, promise;\r\n var _this = this;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n removeDependency = this.addBatchDependency();\r\n return [4 /*yield*/, this.ensureListItemEntityTypeName(listItemEntityTypeFullName)];\r\n case 1:\r\n listItemEntityType = _a.sent();\r\n postBody = body(assign(metadata(listItemEntityType), properties));\r\n promise = spPost(this.clone(Items, \"\"), postBody).then(function (data) {\r\n return {\r\n data: data,\r\n item: _this.getById(data.Id),\r\n };\r\n });\r\n removeDependency();\r\n return [2 /*return*/, promise];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Ensures we have the proper list item entity type name, either from the value provided or from the list\r\n *\r\n * @param candidatelistItemEntityTypeFullName The potential type name\r\n */\r\n _Items.prototype.ensureListItemEntityTypeName = function (candidatelistItemEntityTypeFullName) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n return __generator(this, function (_a) {\r\n return [2 /*return*/, candidatelistItemEntityTypeFullName ?\r\n candidatelistItemEntityTypeFullName :\r\n this.getParent(List).getListItemEntityTypeFullName()];\r\n });\r\n });\r\n };\r\n __decorate([\r\n tag(\"is.getPaged\")\r\n ], _Items.prototype, \"getPaged\", null);\r\n __decorate([\r\n tag(\"is.getAll\")\r\n ], _Items.prototype, \"getAll\", null);\r\n __decorate([\r\n tag(\"is.add\")\r\n ], _Items.prototype, \"add\", null);\r\n _Items = __decorate([\r\n defaultPath(\"items\")\r\n ], _Items);\r\n return _Items;\r\n}(_SharePointQueryableCollection));\r\nexport { _Items };\r\nexport var Items = spInvokableFactory(_Items);\r\n/**\r\n * Descrines a single Item instance\r\n *\r\n */\r\nvar _Item = /** @class */ (function (_super) {\r\n __extends(_Item, _super);\r\n function _Item() {\r\n var _this = _super !== null && _super.apply(this, arguments) || this;\r\n _this.delete = deleteableWithETag(\"i\");\r\n return _this;\r\n }\r\n Object.defineProperty(_Item.prototype, \"effectiveBasePermissions\", {\r\n /**\r\n * Gets the effective base permissions for the item\r\n *\r\n */\r\n get: function () {\r\n return tag.configure(SharePointQueryable(this, \"EffectiveBasePermissions\"), \"i.effectiveBasePermissions\");\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n Object.defineProperty(_Item.prototype, \"effectiveBasePermissionsForUI\", {\r\n /**\r\n * Gets the effective base permissions for the item in a UI context\r\n *\r\n */\r\n get: function () {\r\n return tag.configure(SharePointQueryable(this, \"EffectiveBasePermissionsForUI\"), \"i.effectiveBasePermissionsForUI\");\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n Object.defineProperty(_Item.prototype, \"fieldValuesAsHTML\", {\r\n /**\r\n * Gets the field values for this list item in their HTML representation\r\n *\r\n */\r\n get: function () {\r\n return tag.configure(SharePointQueryableInstance(this, \"FieldValuesAsHTML\"), \"i.fvHTML\");\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n Object.defineProperty(_Item.prototype, \"fieldValuesAsText\", {\r\n /**\r\n * Gets the field values for this list item in their text representation\r\n *\r\n */\r\n get: function () {\r\n return tag.configure(SharePointQueryableInstance(this, \"FieldValuesAsText\"), \"i.fvText\");\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n Object.defineProperty(_Item.prototype, \"fieldValuesForEdit\", {\r\n /**\r\n * Gets the field values for this list item for use in editing controls\r\n *\r\n */\r\n get: function () {\r\n return tag.configure(SharePointQueryableInstance(this, \"FieldValuesForEdit\"), \"i.fvEdit\");\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n Object.defineProperty(_Item.prototype, \"versions\", {\r\n /**\r\n * Gets the collection of versions associated with this item\r\n */\r\n get: function () {\r\n return tag.configure(ItemVersions(this), \"i.versions\");\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n Object.defineProperty(_Item.prototype, \"list\", {\r\n get: function () {\r\n return this.getParent(List, this.parentUrl.substr(0, this.parentUrl.lastIndexOf(\"/\")));\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n /**\r\n * Updates this list instance with the supplied properties\r\n *\r\n * @param properties A plain object hash of values to update for the list\r\n * @param eTag Value used in the IF-Match header, by default \"*\"\r\n * @param listItemEntityTypeFullName The type name of the list's entities\r\n */\r\n _Item.prototype.update = function (properties, eTag, listItemEntityTypeFullName) {\r\n if (eTag === void 0) { eTag = \"*\"; }\r\n if (listItemEntityTypeFullName === void 0) { listItemEntityTypeFullName = null; }\r\n return __awaiter(this, void 0, void 0, function () {\r\n var removeDependency, listItemEntityType, postBody, poster, data;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n removeDependency = this.addBatchDependency();\r\n return [4 /*yield*/, this.ensureListItemEntityTypeName(listItemEntityTypeFullName)];\r\n case 1:\r\n listItemEntityType = _a.sent();\r\n postBody = body(assign(metadata(listItemEntityType), properties), headers({\r\n \"IF-Match\": eTag,\r\n \"X-HTTP-Method\": \"MERGE\",\r\n }));\r\n removeDependency();\r\n poster = tag.configure(this.clone(Item).usingParser(new ItemUpdatedParser()), \"i.update\");\r\n return [4 /*yield*/, spPost(poster, postBody)];\r\n case 2:\r\n data = _a.sent();\r\n return [2 /*return*/, {\r\n data: data,\r\n item: this,\r\n }];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Moves the list item to the Recycle Bin and returns the identifier of the new Recycle Bin item.\r\n */\r\n _Item.prototype.recycle = function () {\r\n return spPost(this.clone(Item, \"recycle\"));\r\n };\r\n /**\r\n * Deletes the item object with options.\r\n *\r\n * @param parameters Specifies the options to use when deleting a item.\r\n */\r\n _Item.prototype.deleteWithParams = function (parameters) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n return __generator(this, function (_a) {\r\n return [2 /*return*/, spPost(this.clone(Item, \"DeleteWithParameters\"), body({ parameters: parameters }))];\r\n });\r\n });\r\n };\r\n /**\r\n * Gets a string representation of the full URL to the WOPI frame.\r\n * If there is no associated WOPI application, or no associated action, an empty string is returned.\r\n *\r\n * @param action Display mode: 0: view, 1: edit, 2: mobileView, 3: interactivePreview\r\n */\r\n _Item.prototype.getWopiFrameUrl = function (action) {\r\n if (action === void 0) { action = 0; }\r\n return __awaiter(this, void 0, void 0, function () {\r\n var i, data;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n i = this.clone(Item, \"getWOPIFrameUrl(@action)\");\r\n i.query.set(\"@action\", action);\r\n return [4 /*yield*/, spPost(i)];\r\n case 1:\r\n data = _a.sent();\r\n // handle verbose mode\r\n if (hOP(data, \"GetWOPIFrameUrl\")) {\r\n return [2 /*return*/, data.GetWOPIFrameUrl];\r\n }\r\n return [2 /*return*/, data];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Validates and sets the values of the specified collection of fields for the list item.\r\n *\r\n * @param formValues The fields to change and their new values.\r\n * @param bNewDocumentUpdate true if the list item is a document being updated after upload; otherwise false.\r\n */\r\n _Item.prototype.validateUpdateListItem = function (formValues, bNewDocumentUpdate) {\r\n if (bNewDocumentUpdate === void 0) { bNewDocumentUpdate = false; }\r\n return spPost(this.clone(Item, \"validateupdatelistitem\"), body({ formValues: formValues, bNewDocumentUpdate: bNewDocumentUpdate }));\r\n };\r\n /**\r\n * Gets the parent information for this item's list and web\r\n */\r\n _Item.prototype.getParentInfos = function () {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var urlInfo;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0: return [4 /*yield*/, this.select(\"Id\", \"ParentList/Id\", \"ParentList/RootFolder/UniqueId\", \"ParentList/RootFolder/ServerRelativeUrl\", \"ParentList/RootFolder/ServerRelativePath\", \"ParentList/ParentWeb/Id\", \"ParentList/ParentWeb/Url\", \"ParentList/ParentWeb/ServerRelativeUrl\", \"ParentList/ParentWeb/ServerRelativePath\").expand(\"ParentList\", \"ParentList/RootFolder\", \"ParentList/ParentWeb\")()];\r\n case 1:\r\n urlInfo = _a.sent();\r\n return [2 /*return*/, {\r\n Item: {\r\n Id: urlInfo.Id,\r\n },\r\n ParentList: {\r\n Id: urlInfo.ParentList.Id,\r\n RootFolderServerRelativePath: urlInfo.ParentList.RootFolder.ServerRelativePath,\r\n RootFolderServerRelativeUrl: urlInfo.ParentList.RootFolder.ServerRelativeUrl,\r\n RootFolderUniqueId: urlInfo.ParentList.RootFolder.UniqueId,\r\n },\r\n ParentWeb: {\r\n Id: urlInfo.ParentList.ParentWeb.Id,\r\n ServerRelativePath: urlInfo.ParentList.ParentWeb.ServerRelativePath,\r\n ServerRelativeUrl: urlInfo.ParentList.ParentWeb.ServerRelativeUrl,\r\n Url: urlInfo.ParentList.ParentWeb.Url,\r\n },\r\n }];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Ensures we have the proper list item entity type name, either from the value provided or from the list\r\n *\r\n * @param candidatelistItemEntityTypeFullName The potential type name\r\n */\r\n _Item.prototype.ensureListItemEntityTypeName = function (candidatelistItemEntityTypeFullName) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n return __generator(this, function (_a) {\r\n return [2 /*return*/, candidatelistItemEntityTypeFullName ?\r\n candidatelistItemEntityTypeFullName :\r\n this.list.getListItemEntityTypeFullName()];\r\n });\r\n });\r\n };\r\n __decorate([\r\n tag(\"i.recycle\")\r\n ], _Item.prototype, \"recycle\", null);\r\n __decorate([\r\n tag(\"i.del-params\")\r\n ], _Item.prototype, \"deleteWithParams\", null);\r\n __decorate([\r\n tag(\"i.getWopiFrameUrl\")\r\n ], _Item.prototype, \"getWopiFrameUrl\", null);\r\n __decorate([\r\n tag(\"i.validateUpdateListItem\")\r\n ], _Item.prototype, \"validateUpdateListItem\", null);\r\n return _Item;\r\n}(_SharePointQueryableInstance));\r\nexport { _Item };\r\nexport var Item = spInvokableFactory(_Item);\r\n/**\r\n * Describes a collection of Version objects\r\n *\r\n */\r\nvar _ItemVersions = /** @class */ (function (_super) {\r\n __extends(_ItemVersions, _super);\r\n function _ItemVersions() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n /**\r\n * Gets a version by id\r\n *\r\n * @param versionId The id of the version to retrieve\r\n */\r\n _ItemVersions.prototype.getById = function (versionId) {\r\n return tag.configure(ItemVersion(this).concat(\"(\" + versionId + \")\"), \"iv.getById\");\r\n };\r\n _ItemVersions = __decorate([\r\n defaultPath(\"versions\")\r\n ], _ItemVersions);\r\n return _ItemVersions;\r\n}(_SharePointQueryableCollection));\r\nexport { _ItemVersions };\r\nexport var ItemVersions = spInvokableFactory(_ItemVersions);\r\n/**\r\n * Describes a single Version instance\r\n *\r\n */\r\nvar _ItemVersion = /** @class */ (function (_super) {\r\n __extends(_ItemVersion, _super);\r\n function _ItemVersion() {\r\n var _this = _super !== null && _super.apply(this, arguments) || this;\r\n _this.delete = deleteableWithETag(\"iv\");\r\n return _this;\r\n }\r\n return _ItemVersion;\r\n}(_SharePointQueryableInstance));\r\nexport { _ItemVersion };\r\nexport var ItemVersion = spInvokableFactory(_ItemVersion);\r\n/**\r\n * Provides paging functionality for list items\r\n */\r\nvar PagedItemCollection = /** @class */ (function () {\r\n function PagedItemCollection(parent, nextUrl, results) {\r\n this.parent = parent;\r\n this.nextUrl = nextUrl;\r\n this.results = results;\r\n }\r\n Object.defineProperty(PagedItemCollection.prototype, \"hasNext\", {\r\n /**\r\n * If true there are more results available in the set, otherwise there are not\r\n */\r\n get: function () {\r\n return typeof this.nextUrl === \"string\" && this.nextUrl.length > 0;\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n /**\r\n * Gets the next set of results, or resolves to null if no results are available\r\n */\r\n PagedItemCollection.prototype.getNext = function () {\r\n if (this.hasNext) {\r\n var items = tag.configure(Items(this.nextUrl, null).configureFrom(this.parent), \"ip.getNext\");\r\n return items.getPaged();\r\n }\r\n return new Promise(function (r) { return r(null); });\r\n };\r\n return PagedItemCollection;\r\n}());\r\nexport { PagedItemCollection };\r\nvar PagedItemCollectionParser = /** @class */ (function (_super) {\r\n __extends(PagedItemCollectionParser, _super);\r\n function PagedItemCollectionParser(_parent) {\r\n var _this = _super.call(this) || this;\r\n _this._parent = _parent;\r\n return _this;\r\n }\r\n PagedItemCollectionParser.prototype.parse = function (r) {\r\n var _this = this;\r\n return new Promise(function (resolve, reject) {\r\n if (_this.handleError(r, reject)) {\r\n r.json().then(function (json) {\r\n var nextUrl = hOP(json, \"d\") && hOP(json.d, \"__next\") ? json.d.__next : json[\"odata.nextLink\"];\r\n resolve(new PagedItemCollection(_this._parent, nextUrl, _this.parseODataJSON(json)));\r\n });\r\n }\r\n });\r\n };\r\n return PagedItemCollectionParser;\r\n}(ODataParser));\r\nvar ItemUpdatedParser = /** @class */ (function (_super) {\r\n __extends(ItemUpdatedParser, _super);\r\n function ItemUpdatedParser() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n ItemUpdatedParser.prototype.parse = function (r) {\r\n var _this = this;\r\n return new Promise(function (resolve, reject) {\r\n if (_this.handleError(r, reject)) {\r\n resolve({\r\n \"odata.etag\": r.headers.get(\"etag\"),\r\n });\r\n }\r\n });\r\n };\r\n return ItemUpdatedParser;\r\n}(ODataParser));\r\n//# sourceMappingURL=types.js.map","import { addProp } from \"@pnp/odata\";\r\nimport { _List } from \"../lists/types.js\";\r\nimport { Items } from \"./types.js\";\r\naddProp(_List, \"items\", Items);\r\n//# sourceMappingURL=list.js.map","import { default as CachingConfigurationProvider } from \"./cachingConfigurationProvider.js\";\r\nimport \"@pnp/sp/lists/web\";\r\nimport \"@pnp/sp/items/list\";\r\n/**\r\n * A configuration provider which loads configuration values from a SharePoint list\r\n *\r\n */\r\nvar SPListConfigurationProvider = /** @class */ (function () {\r\n /**\r\n * Creates a new SharePoint list based configuration provider\r\n * @constructor\r\n * @param {string} webUrl Url of the SharePoint site, where the configuration list is located\r\n * @param {string} listTitle Title of the SharePoint list, which contains the configuration settings (optional, default: \"config\")\r\n * @param {string} keyFieldName The name of the field in the list to use as the setting key (optional, default: \"Title\")\r\n * @param {string} valueFieldName The name of the field in the list to use as the setting value (optional, default: \"Value\")\r\n */\r\n function SPListConfigurationProvider(web, listTitle, keyFieldName, valueFieldName) {\r\n if (listTitle === void 0) { listTitle = \"config\"; }\r\n if (keyFieldName === void 0) { keyFieldName = \"Title\"; }\r\n if (valueFieldName === void 0) { valueFieldName = \"Value\"; }\r\n this.web = web;\r\n this.listTitle = listTitle;\r\n this.keyFieldName = keyFieldName;\r\n this.valueFieldName = valueFieldName;\r\n }\r\n /**\r\n * Loads the configuration values from the SharePoint list\r\n *\r\n * @return {Promise>} Promise of loaded configuration values\r\n */\r\n SPListConfigurationProvider.prototype.getConfiguration = function () {\r\n var _this = this;\r\n return this.web.lists.getByTitle(this.listTitle).items.select(this.keyFieldName, this.valueFieldName)()\r\n .then(function (data) { return data.reduce(function (c, item) {\r\n c[item[_this.keyFieldName]] = item[_this.valueFieldName];\r\n return c;\r\n }, {}); });\r\n };\r\n /**\r\n * Wraps the current provider in a cache enabled provider\r\n *\r\n * @return {CachingConfigurationProvider} Caching providers which wraps the current provider\r\n */\r\n SPListConfigurationProvider.prototype.asCaching = function (cacheKey) {\r\n if (cacheKey === void 0) { cacheKey = \"pnp_configcache_splist_\" + this.web.toUrl() + \"+\" + this.listTitle; }\r\n return new CachingConfigurationProvider(this, cacheKey);\r\n };\r\n return SPListConfigurationProvider;\r\n}());\r\nexport default SPListConfigurationProvider;\r\n//# sourceMappingURL=spListConfigurationProvider.js.map","import { assign } from \"@pnp/common\";\r\n/**\r\n * Makes requests using the SP.RequestExecutor library.\r\n */\r\nvar SPRequestExecutorClient = /** @class */ (function () {\r\n function SPRequestExecutorClient() {\r\n /**\r\n * Converts a SharePoint REST API response to a fetch API response.\r\n */\r\n this.convertToResponse = function (spResponse) {\r\n var responseHeaders = new Headers();\r\n if (spResponse.headers !== undefined) {\r\n for (var h in spResponse.headers) {\r\n if (spResponse.headers[h]) {\r\n responseHeaders.append(h, spResponse.headers[h]);\r\n }\r\n }\r\n }\r\n // Cannot have an empty string body when creating a Response with status 204\r\n var body = spResponse.statusCode === 204 ? null : spResponse.body;\r\n return new Response(body, {\r\n headers: responseHeaders,\r\n status: spResponse.statusCode,\r\n statusText: spResponse.statusText,\r\n });\r\n };\r\n }\r\n /**\r\n * Fetches a URL using the SP.RequestExecutor library.\r\n */\r\n SPRequestExecutorClient.prototype.fetch = function (url, options) {\r\n var _this = this;\r\n if (SP === undefined || SP.RequestExecutor === undefined) {\r\n throw Error(\"SP.RequestExecutor is undefined. Load the SP.RequestExecutor.js library (/_layouts/15/SP.RequestExecutor.js) before loading the PnP JS Core library.\");\r\n }\r\n var addinWebUrl = url.substring(0, url.indexOf(\"/_api\")), executor = new SP.RequestExecutor(addinWebUrl);\r\n var headers = {}, iterator, temp;\r\n if (options.headers && options.headers instanceof Headers) {\r\n iterator = options.headers.entries();\r\n temp = iterator.next();\r\n while (!temp.done) {\r\n headers[temp.value[0]] = temp.value[1];\r\n temp = iterator.next();\r\n }\r\n }\r\n else {\r\n headers = options.headers;\r\n }\r\n return new Promise(function (resolve, reject) {\r\n var requestOptions = {\r\n error: function (error) {\r\n reject(_this.convertToResponse(error));\r\n },\r\n headers: headers,\r\n method: options.method,\r\n success: function (response) {\r\n resolve(_this.convertToResponse(response));\r\n },\r\n url: url,\r\n };\r\n if (options.body) {\r\n requestOptions = assign(requestOptions, { body: options.body });\r\n }\r\n else {\r\n requestOptions = assign(requestOptions, { binaryStringRequestBody: true });\r\n }\r\n executor.executeAsync(requestOptions);\r\n });\r\n };\r\n return SPRequestExecutorClient;\r\n}());\r\nexport { SPRequestExecutorClient };\r\n//# sourceMappingURL=sprequestexecutorclient.js.map","// reference: https://msdn.microsoft.com/en-us/library/office/dn600183.aspx\r\n/**\r\n * Specifies the type of a principal.\r\n */\r\nexport var PrincipalType;\r\n(function (PrincipalType) {\r\n /**\r\n * Enumeration whose value specifies no principal type.\r\n */\r\n PrincipalType[PrincipalType[\"None\"] = 0] = \"None\";\r\n /**\r\n * Enumeration whose value specifies a user as the principal type.\r\n */\r\n PrincipalType[PrincipalType[\"User\"] = 1] = \"User\";\r\n /**\r\n * Enumeration whose value specifies a distribution list as the principal type.\r\n */\r\n PrincipalType[PrincipalType[\"DistributionList\"] = 2] = \"DistributionList\";\r\n /**\r\n * Enumeration whose value specifies a security group as the principal type.\r\n */\r\n PrincipalType[PrincipalType[\"SecurityGroup\"] = 4] = \"SecurityGroup\";\r\n /**\r\n * Enumeration whose value specifies a group as the principal type.\r\n */\r\n PrincipalType[PrincipalType[\"SharePointGroup\"] = 8] = \"SharePointGroup\";\r\n /**\r\n * Enumeration whose value specifies all principal types.\r\n */\r\n // eslint-disable-next-line no-bitwise\r\n PrincipalType[PrincipalType[\"All\"] = 15] = \"All\";\r\n})(PrincipalType || (PrincipalType = {}));\r\n/**\r\n * Specifies the source of a principal.\r\n */\r\nexport var PrincipalSource;\r\n(function (PrincipalSource) {\r\n /**\r\n * Enumeration whose value specifies no principal source.\r\n */\r\n PrincipalSource[PrincipalSource[\"None\"] = 0] = \"None\";\r\n /**\r\n * Enumeration whose value specifies user information list as the principal source.\r\n */\r\n PrincipalSource[PrincipalSource[\"UserInfoList\"] = 1] = \"UserInfoList\";\r\n /**\r\n * Enumeration whose value specifies Active Directory as the principal source.\r\n */\r\n PrincipalSource[PrincipalSource[\"Windows\"] = 2] = \"Windows\";\r\n /**\r\n * Enumeration whose value specifies the current membership provider as the principal source.\r\n */\r\n PrincipalSource[PrincipalSource[\"MembershipProvider\"] = 4] = \"MembershipProvider\";\r\n /**\r\n * Enumeration whose value specifies the current role provider as the principal source.\r\n */\r\n PrincipalSource[PrincipalSource[\"RoleProvider\"] = 8] = \"RoleProvider\";\r\n /**\r\n * Enumeration whose value specifies all principal sources.\r\n */\r\n // eslint-disable-next-line no-bitwise\r\n PrincipalSource[PrincipalSource[\"All\"] = 15] = \"All\";\r\n})(PrincipalSource || (PrincipalSource = {}));\r\nexport var PageType;\r\n(function (PageType) {\r\n PageType[PageType[\"Invalid\"] = -1] = \"Invalid\";\r\n PageType[PageType[\"DefaultView\"] = 0] = \"DefaultView\";\r\n PageType[PageType[\"NormalView\"] = 1] = \"NormalView\";\r\n PageType[PageType[\"DialogView\"] = 2] = \"DialogView\";\r\n PageType[PageType[\"View\"] = 3] = \"View\";\r\n PageType[PageType[\"DisplayForm\"] = 4] = \"DisplayForm\";\r\n PageType[PageType[\"DisplayFormDialog\"] = 5] = \"DisplayFormDialog\";\r\n PageType[PageType[\"EditForm\"] = 6] = \"EditForm\";\r\n PageType[PageType[\"EditFormDialog\"] = 7] = \"EditFormDialog\";\r\n PageType[PageType[\"NewForm\"] = 8] = \"NewForm\";\r\n PageType[PageType[\"NewFormDialog\"] = 9] = \"NewFormDialog\";\r\n PageType[PageType[\"SolutionForm\"] = 10] = \"SolutionForm\";\r\n PageType[PageType[\"PAGE_MAXITEMS\"] = 11] = \"PAGE_MAXITEMS\";\r\n})(PageType || (PageType = {}));\r\n//# sourceMappingURL=types.js.map","import { metadata } from \"./metadata.js\";\r\nimport { assign } from \"@pnp/common\";\r\n/**\r\n * Creates an object representing a SharePoint Collection(SP.KeyValue)\r\n *\r\n * @param obj The plain object defining the properties\r\n */\r\nexport function objectToSPKeyValueCollection(obj) {\r\n return assign(metadata(\"Collection(SP.KeyValue)\"), {\r\n results: Object.keys(obj).map(function (key) { return assign(metadata(\"SP.KeyValue\"), {\r\n Key: key,\r\n Value: Reflect.get(obj, key),\r\n ValueType: \"Edm.String\",\r\n }); }),\r\n });\r\n}\r\n//# sourceMappingURL=objectToSPKeyValueCollection.js.map","// eslint-disable-next-line no-control-regex\r\nvar InvalidFileFolderNameCharsOnlineRegex = /[\"*:<>?/\\\\|\\x00-\\x1f\\x7f-\\x9f]/g;\r\n// eslint-disable-next-line no-control-regex\r\nvar InvalidFileFolderNameCharsOnPremiseRegex = /[\"#%*:<>?/\\\\|\\x00-\\x1f\\x7f-\\x9f]/g;\r\n/**\r\n * Checks if file or folder name contains invalid characters\r\n *\r\n * @param input File or folder name to check\r\n * @param onPremise Set to true for SharePoint On-Premise\r\n * @returns True if contains invalid chars, false otherwise\r\n */\r\nexport function containsInvalidFileFolderChars(input, onPremise) {\r\n if (onPremise === void 0) { onPremise = false; }\r\n if (onPremise) {\r\n return InvalidFileFolderNameCharsOnPremiseRegex.test(input);\r\n }\r\n else {\r\n return InvalidFileFolderNameCharsOnlineRegex.test(input);\r\n }\r\n}\r\n/**\r\n * Removes invalid characters from file or folder name\r\n *\r\n * @param input File or folder name\r\n * @param replacer Value that will replace invalid characters\r\n * @param onPremise Set to true for SharePoint On-Premise\r\n * @returns File or folder name with replaced invalid characters\r\n */\r\nexport function stripInvalidFileFolderChars(input, replacer, onPremise) {\r\n if (replacer === void 0) { replacer = \"\"; }\r\n if (onPremise === void 0) { onPremise = false; }\r\n if (onPremise) {\r\n return input.replace(InvalidFileFolderNameCharsOnPremiseRegex, replacer);\r\n }\r\n else {\r\n return input.replace(InvalidFileFolderNameCharsOnlineRegex, replacer);\r\n }\r\n}\r\n//# sourceMappingURL=file-names.js.map","import { Web } from \"./types.js\";\r\nimport { SPRest } from \"../rest.js\";\r\nexport { Web, Webs, } from \"./types.js\";\r\nReflect.defineProperty(SPRest.prototype, \"web\", {\r\n configurable: true,\r\n enumerable: true,\r\n get: function () {\r\n return this.childConfigHook(function (_a) {\r\n var options = _a.options, baseUrl = _a.baseUrl, runtime = _a.runtime;\r\n return Web(baseUrl).configure(options).setRuntime(runtime);\r\n });\r\n },\r\n});\r\nSPRest.prototype.createBatch = function () {\r\n return this.web.createBatch();\r\n};\r\n//# sourceMappingURL=index.js.map","import { __extends } from \"tslib\";\r\nimport { SPRest, } from \"@pnp/sp\";\r\nimport { Web } from \"@pnp/sp/webs\";\r\nimport { Site } from \"@pnp/sp/sites\";\r\nimport { isUrlAbsolute, combine, } from \"@pnp/common\";\r\nvar SPRestAddIn = /** @class */ (function (_super) {\r\n __extends(SPRestAddIn, _super);\r\n function SPRestAddIn() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n /**\r\n * Begins a cross-domain, host site scoped REST request, for use in add-in webs\r\n *\r\n * @param addInWebUrl The absolute url of the add-in web\r\n * @param hostWebUrl The absolute url of the host web\r\n */\r\n SPRestAddIn.prototype.crossDomainSite = function (addInWebUrl, hostWebUrl) {\r\n return this._cdImpl(Site, addInWebUrl, hostWebUrl, \"site\");\r\n };\r\n /**\r\n * Begins a cross-domain, host web scoped REST request, for use in add-in webs\r\n *\r\n * @param addInWebUrl The absolute url of the add-in web\r\n * @param hostWebUrl The absolute url of the host web\r\n */\r\n SPRestAddIn.prototype.crossDomainWeb = function (addInWebUrl, hostWebUrl) {\r\n return this._cdImpl(Web, addInWebUrl, hostWebUrl, \"web\");\r\n };\r\n /**\r\n * Implements the creation of cross domain REST urls\r\n *\r\n * @param factory The constructor of the object to create Site | Web\r\n * @param addInWebUrl The absolute url of the add-in web\r\n * @param hostWebUrl The absolute url of the host web\r\n * @param urlPart String part to append to the url \"site\" | \"web\"\r\n */\r\n SPRestAddIn.prototype._cdImpl = function (factory, addInWebUrl, hostWebUrl, urlPart) {\r\n if (!isUrlAbsolute(addInWebUrl)) {\r\n throw Error(\"The addInWebUrl parameter must be an absolute url.\");\r\n }\r\n if (!isUrlAbsolute(hostWebUrl)) {\r\n throw Error(\"The hostWebUrl parameter must be an absolute url.\");\r\n }\r\n var url = combine(addInWebUrl, \"_api/SP.AppContextSite(@target)\");\r\n var instance = factory(url, urlPart);\r\n instance.query.set(\"@target\", \"'\" + encodeURIComponent(hostWebUrl) + \"'\");\r\n return this.childConfigHook(function (_a) {\r\n var options = _a.options, runtime = _a.runtime;\r\n return instance.configure(options).setRuntime(runtime);\r\n });\r\n };\r\n return SPRestAddIn;\r\n}(SPRest));\r\nexport { SPRestAddIn };\r\nexport var sp = new SPRestAddIn();\r\n//# sourceMappingURL=sprestaddin.js.map","import { SPFxAdalClient, DefaultRuntime, onRuntimeCreate, objectDefinedNotNull } from \"@pnp/common\";\r\nonRuntimeCreate(function (runtime) {\r\n var existing = runtime.get(\"graph\");\r\n var graphPart = Object.assign({}, {\r\n fetchClientFactory: function () {\r\n // we keep a ref to the runtime within which we are assigned\r\n var context = runtime.get(\"spfxContext\");\r\n if (objectDefinedNotNull(context)) {\r\n return new SPFxAdalClient(context);\r\n }\r\n throw Error(\"There is no Graph Client available, either set one using configuration or provide a valid SPFx Context.\");\r\n },\r\n }, existing);\r\n runtime.assign({ graph: graphPart });\r\n});\r\nexport function setup(config, runtime) {\r\n if (runtime === void 0) { runtime = DefaultRuntime; }\r\n runtime.assign(config);\r\n}\r\n//# sourceMappingURL=graphlibconfig.js.map","import { assign, mergeHeaders, getCtxCallback, DefaultRuntime, Runtime, objectDefinedNotNull, } from \"@pnp/common\";\r\nvar GraphHttpClient = /** @class */ (function () {\r\n function GraphHttpClient() {\r\n // constructor(...args: [runtime: Runtime] | [impl: IHttpClientImpl, runtime?: Runtime]) {\r\n var args = [];\r\n for (var _i = 0; _i < arguments.length; _i++) {\r\n args[_i] = arguments[_i];\r\n }\r\n this._runtime = args.length > 0 && args[0] instanceof Runtime ? args[0] : DefaultRuntime;\r\n this._impl = args.length > 1 && objectDefinedNotNull(args[1]) ?\r\n args[1] : this._runtime.get(\"graph\").fetchClientFactory() || null;\r\n if (this._impl === null) {\r\n throw Error(\"Could not generate fetchClientFactory in SPHttpClient.\");\r\n }\r\n }\r\n GraphHttpClient.prototype.fetch = function (url, options) {\r\n var _a;\r\n if (options === void 0) { options = {}; }\r\n var headers = new Headers();\r\n // first we add the global headers so they can be overwritten by any passed in locally to this call\r\n mergeHeaders(headers, (_a = this._runtime.get(\"graph\")) === null || _a === void 0 ? void 0 : _a.headers);\r\n // second we add the local options so we can overwrite the globals\r\n mergeHeaders(headers, options.headers);\r\n if (!headers.has(\"Content-Type\")) {\r\n headers.append(\"Content-Type\", \"application/json\");\r\n }\r\n if (!headers.has(\"SdkVersion\")) {\r\n // this marks the requests for understanding by the service\r\n headers.append(\"SdkVersion\", \"PnPCoreJS/2.5.0-beta1\");\r\n }\r\n var opts = assign(options, { headers: headers });\r\n return this.fetchRaw(url, opts);\r\n };\r\n GraphHttpClient.prototype.fetchRaw = function (url, options) {\r\n var _this = this;\r\n if (options === void 0) { options = {}; }\r\n // here we need to normalize the headers\r\n var rawHeaders = new Headers();\r\n mergeHeaders(rawHeaders, options.headers);\r\n options = assign(options, { headers: rawHeaders });\r\n var retry = function (ctx) {\r\n _this._impl.fetch(url, options).then(function (response) { return ctx.resolve(response); }).catch(function (response) {\r\n // Check if request was throttled - http status code 429\r\n // Check if request failed due to server unavailable - http status code 503\r\n // Check if request failed due to gateway timeout - http status code 504\r\n if (response.status !== 429 && response.status !== 503 && response.status !== 504) {\r\n ctx.reject(response);\r\n }\r\n // grab our current delay\r\n var delay = ctx.delay;\r\n // Increment our counters.\r\n ctx.delay *= 2;\r\n ctx.attempts++;\r\n // If we have exceeded the retry count, reject.\r\n if (ctx.retryCount <= ctx.attempts) {\r\n ctx.reject(response);\r\n }\r\n // Set our retry timeout for {delay} milliseconds.\r\n setTimeout(getCtxCallback(_this, retry, ctx), delay);\r\n });\r\n };\r\n return new Promise(function (resolve, reject) {\r\n var retryContext = {\r\n attempts: 0,\r\n delay: 100,\r\n reject: reject,\r\n resolve: resolve,\r\n retryCount: 7,\r\n };\r\n retry.call(_this, retryContext);\r\n });\r\n };\r\n GraphHttpClient.prototype.get = function (url, options) {\r\n if (options === void 0) { options = {}; }\r\n var opts = assign(options, { method: \"GET\" });\r\n return this.fetch(url, opts);\r\n };\r\n GraphHttpClient.prototype.post = function (url, options) {\r\n if (options === void 0) { options = {}; }\r\n var opts = assign(options, { method: \"POST\" });\r\n return this.fetch(url, opts);\r\n };\r\n GraphHttpClient.prototype.patch = function (url, options) {\r\n if (options === void 0) { options = {}; }\r\n var opts = assign(options, { method: \"PATCH\" });\r\n return this.fetch(url, opts);\r\n };\r\n GraphHttpClient.prototype.delete = function (url, options) {\r\n if (options === void 0) { options = {}; }\r\n var opts = assign(options, { method: \"DELETE\" });\r\n return this.fetch(url, opts);\r\n };\r\n return GraphHttpClient;\r\n}());\r\nexport { GraphHttpClient };\r\n//# sourceMappingURL=graphhttpclient.js.map","import { __awaiter, __generator } from \"tslib\";\r\nimport { combine, isUrlAbsolute, objectDefinedNotNull, DefaultRuntime, stringIsNullOrEmpty } from \"@pnp/common\";\r\n/**\r\n * Ensures that a given url is absolute for the current web based on context\r\n *\r\n * @param candidateUrl The url to make absolute\r\n *\r\n */\r\nexport function toAbsoluteUrl(candidateUrl, runtime) {\r\n var _a, _b, _c;\r\n if (runtime === void 0) { runtime = DefaultRuntime; }\r\n return __awaiter(this, void 0, void 0, function () {\r\n var baseUrl, spFxContext, client, e_1;\r\n return __generator(this, function (_d) {\r\n switch (_d.label) {\r\n case 0:\r\n if (isUrlAbsolute(candidateUrl)) {\r\n // if we are already absolute, then just return the url\r\n return [2 /*return*/, candidateUrl];\r\n }\r\n baseUrl = (_a = runtime.get(\"graph\")) === null || _a === void 0 ? void 0 : _a.baseUrl;\r\n if (!stringIsNullOrEmpty(baseUrl)) {\r\n // base url specified either with baseUrl of spfxContext config property\r\n return [2 /*return*/, combine(baseUrl, candidateUrl)];\r\n }\r\n spFxContext = runtime.get(\"spfxContext\");\r\n if (!objectDefinedNotNull(spFxContext)) return [3 /*break*/, 4];\r\n _d.label = 1;\r\n case 1:\r\n _d.trys.push([1, 3, , 4]);\r\n return [4 /*yield*/, spFxContext.msGraphClientFactory.getClient()];\r\n case 2:\r\n client = _d.sent();\r\n baseUrl = (_c = (_b = client) === null || _b === void 0 ? void 0 : _b.constructor) === null || _c === void 0 ? void 0 : _c._graphBaseUrl;\r\n if (!stringIsNullOrEmpty(baseUrl)) {\r\n return [2 /*return*/, combine(baseUrl, candidateUrl)];\r\n }\r\n return [3 /*break*/, 4];\r\n case 3:\r\n e_1 = _d.sent();\r\n return [3 /*break*/, 4];\r\n case 4: \r\n // try one last time with the default\r\n return [2 /*return*/, combine(\"https://graph.microsoft.com\", candidateUrl)];\r\n }\r\n });\r\n });\r\n}\r\n//# sourceMappingURL=toabsoluteurl.js.map","import { __awaiter, __extends, __generator } from \"tslib\";\r\nimport { Batch } from \"@pnp/odata\";\r\nimport { Logger } from \"@pnp/logging\";\r\nimport { assign, jsS, isUrlAbsolute, hOP, DefaultRuntime } from \"@pnp/common\";\r\nimport { GraphHttpClient } from \"./graphhttpclient.js\";\r\nimport { toAbsoluteUrl } from \"./utils/toabsoluteurl.js\";\r\nvar GraphBatch = /** @class */ (function (_super) {\r\n __extends(GraphBatch, _super);\r\n function GraphBatch(batchUrl, maxRequests, runtime) {\r\n if (batchUrl === void 0) { batchUrl = \"v1.0/$batch\"; }\r\n if (maxRequests === void 0) { maxRequests = 20; }\r\n if (runtime === void 0) { runtime = DefaultRuntime; }\r\n var _this = _super.call(this) || this;\r\n _this.batchUrl = batchUrl;\r\n _this.maxRequests = maxRequests;\r\n _this.runtime = runtime;\r\n return _this;\r\n }\r\n GraphBatch.prototype.setRuntime = function (runtime) {\r\n this.runtime = runtime;\r\n return this;\r\n };\r\n GraphBatch.prototype.executeImpl = function () {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var client, requests, _loop_1, this_1;\r\n var _this = this;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n Logger.write(\"[\" + this.batchId + \"] (\" + (new Date()).getTime() + \") Executing batch with \" + this.requests.length + \" requests.\", 1 /* Info */);\r\n if (this.requests.length < 1) {\r\n Logger.write(\"Resolving empty batch.\", 1 /* Info */);\r\n return [2 /*return*/, Promise.resolve()];\r\n }\r\n client = new GraphHttpClient(this.runtime);\r\n requests = this.requests.slice();\r\n _loop_1 = function () {\r\n var requestsChunk, batchRequest, batchOptions, queryUrl;\r\n return __generator(this, function (_b) {\r\n switch (_b.label) {\r\n case 0:\r\n requestsChunk = requests.splice(0, this_1.maxRequests);\r\n batchRequest = {\r\n requests: this_1.formatRequests(requestsChunk),\r\n };\r\n batchOptions = {\r\n body: jsS(batchRequest),\r\n headers: {\r\n \"Accept\": \"application/json\",\r\n \"Content-Type\": \"application/json\",\r\n },\r\n method: \"POST\",\r\n };\r\n Logger.write(\"[\" + this_1.batchId + \"] (\" + (new Date()).getTime() + \") Sending batch request.\", 1 /* Info */);\r\n return [4 /*yield*/, toAbsoluteUrl(this_1.batchUrl, this_1.runtime)];\r\n case 1:\r\n queryUrl = _b.sent();\r\n return [4 /*yield*/, client.fetch(queryUrl, batchOptions)\r\n .then(function (r) { return r.json(); })\r\n .then(function (j) { return _this.parseResponse(requestsChunk, j); })\r\n .then(function (parsedResponse) {\r\n Logger.write(\"[\" + _this.batchId + \"] (\" + (new Date()).getTime() + \") Resolving batched requests.\", 1 /* Info */);\r\n parsedResponse.responses.reduce(function (chain, response, index) {\r\n var request = requestsChunk[index];\r\n Logger.write(\"[\" + _this.batchId + \"] (\" + (new Date()).getTime() + \") Resolving batched request \" + request.method + \" \" + request.url + \".\", 0 /* Verbose */);\r\n return chain.then(function () { return request.parser.parse(response).then(request.resolve).catch(request.reject); });\r\n }, Promise.resolve());\r\n }).catch(function (e) {\r\n throw e;\r\n })];\r\n case 2:\r\n _b.sent();\r\n return [2 /*return*/];\r\n }\r\n });\r\n };\r\n this_1 = this;\r\n _a.label = 1;\r\n case 1:\r\n if (!(requests.length > 0)) return [3 /*break*/, 3];\r\n return [5 /*yield**/, _loop_1()];\r\n case 2:\r\n _a.sent();\r\n return [3 /*break*/, 1];\r\n case 3: return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Urls come to the batch absolute, but the processor expects relative\r\n * @param url Url to ensure is relative\r\n */\r\n GraphBatch.prototype.makeUrlRelative = function (url) {\r\n if (!isUrlAbsolute(url)) {\r\n // already not absolute, just give it back\r\n return url;\r\n }\r\n var index = url.indexOf(\"/v1.0/\");\r\n if (index < 0) {\r\n index = url.indexOf(\"/beta/\");\r\n if (index > -1) {\r\n // beta url\r\n return url.substr(index + 6);\r\n }\r\n }\r\n else {\r\n // v1.0 url\r\n return url.substr(index + 5);\r\n }\r\n // no idea\r\n return url;\r\n };\r\n GraphBatch.prototype.formatRequests = function (requests) {\r\n var _this = this;\r\n return requests.map(function (reqInfo, index) {\r\n var _a;\r\n var requestFragment = {\r\n id: \"\" + ++index,\r\n method: reqInfo.method,\r\n url: _this.makeUrlRelative(reqInfo.url),\r\n };\r\n var headers = {};\r\n // merge runtime headers\r\n headers = assign(headers, (_a = _this.runtime.get(\"graph\")) === null || _a === void 0 ? void 0 : _a.headers);\r\n if (reqInfo.options !== undefined) {\r\n // merge per request headers\r\n if (reqInfo.options.headers !== undefined && reqInfo.options.headers !== null) {\r\n headers = assign(headers, reqInfo.options.headers);\r\n }\r\n // all non-get requests need their own content-type header\r\n if (reqInfo.method !== \"GET\") {\r\n headers[\"Content-Type\"] = \"application/json\";\r\n }\r\n // add a request body\r\n if (reqInfo.options.body !== undefined && reqInfo.options.body !== null) {\r\n // we need to parse the body which was previously turned into a string\r\n requestFragment = assign(requestFragment, {\r\n body: JSON.parse(reqInfo.options.body),\r\n });\r\n }\r\n }\r\n requestFragment = assign(requestFragment, {\r\n headers: headers,\r\n });\r\n return requestFragment;\r\n });\r\n };\r\n GraphBatch.prototype.parseResponse = function (requests, graphResponse) {\r\n return new Promise(function (resolve, reject) {\r\n // we need to see if we have an error and report that\r\n if (hOP(graphResponse, \"error\")) {\r\n return reject(Error(\"Error Porcessing Batch: (\" + graphResponse.error.code + \") \" + graphResponse.error.message));\r\n }\r\n var parsedResponses = new Array(requests.length).fill(null);\r\n for (var i = 0; i < graphResponse.responses.length; ++i) {\r\n var response = graphResponse.responses[i];\r\n // we create the request id by adding 1 to the index, so we place the response by subtracting one to match\r\n // the array of requests and make it easier to map them by index\r\n var responseId = parseInt(response.id, 10) - 1;\r\n if (response.status === 204) {\r\n parsedResponses[responseId] = new Response();\r\n }\r\n else {\r\n parsedResponses[responseId] = new Response(JSON.stringify(response.body), response);\r\n }\r\n }\r\n resolve({\r\n nextLink: graphResponse.nextLink,\r\n responses: parsedResponses,\r\n });\r\n });\r\n };\r\n return GraphBatch;\r\n}(Batch));\r\nexport { GraphBatch };\r\n//# sourceMappingURL=batch.js.map","import { __awaiter, __generator } from \"tslib\";\r\nimport { setup as _setup, } from \"./graphlibconfig.js\";\r\nimport { GraphBatch } from \"./batch.js\";\r\nimport { Runtime, DefaultRuntime } from \"@pnp/common\";\r\nvar GraphRest = /** @class */ (function () {\r\n /**\r\n * Creates a new instance of the SPRest class\r\n *\r\n * @param options Additional options\r\n * @param baseUrl A string that should form the base part of the url\r\n */\r\n function GraphRest(_options, _baseUrl, _runtime) {\r\n if (_options === void 0) { _options = {}; }\r\n if (_baseUrl === void 0) { _baseUrl = \"v1.0\"; }\r\n if (_runtime === void 0) { _runtime = DefaultRuntime; }\r\n this._options = _options;\r\n this._baseUrl = _baseUrl;\r\n this._runtime = _runtime;\r\n }\r\n GraphRest.prototype.createBatch = function () {\r\n return new GraphBatch().setRuntime(this._runtime);\r\n };\r\n GraphRest.prototype.setup = function (config) {\r\n if (config.pageContext) {\r\n _setup({\r\n spfxContext: config,\r\n }, this._runtime);\r\n }\r\n else {\r\n _setup(config, this._runtime);\r\n }\r\n };\r\n GraphRest.prototype.createIsolated = function (init) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var baseUrl, cloneGlobal, options, config, runtime;\r\n return __generator(this, function (_a) {\r\n // merge our defaults\r\n init = Object.assign({\r\n baseUrl: \"v1.0\",\r\n cloneGlobal: true,\r\n config: {},\r\n options: {},\r\n }, init || {});\r\n baseUrl = init.baseUrl, cloneGlobal = init.cloneGlobal, options = init.options, config = init.config;\r\n runtime = cloneGlobal ? new Runtime(DefaultRuntime.export()) : new Runtime();\r\n runtime.assign(config);\r\n return [2 /*return*/, new GraphRest(options, baseUrl, runtime)];\r\n });\r\n });\r\n };\r\n GraphRest.prototype.childConfigHook = function (callback) {\r\n return callback({ options: this._options, baseUrl: this._baseUrl, runtime: this._runtime });\r\n };\r\n return GraphRest;\r\n}());\r\nexport { GraphRest };\r\nexport var graph = new GraphRest();\r\n//# sourceMappingURL=rest.js.map","var GraphEndpoints = /** @class */ (function () {\r\n function GraphEndpoints() {\r\n }\r\n /**\r\n *\r\n * @param url The url to set the endpoint\r\n */\r\n GraphEndpoints.ensure = function (url, endpoint) {\r\n var all = [GraphEndpoints.Beta, GraphEndpoints.V1];\r\n var regex = new RegExp(endpoint, \"i\");\r\n var replaces = all.filter(function (s) { return !regex.test(s); }).map(function (s) { return s.replace(\".\", \"\\\\.\"); });\r\n regex = new RegExp(\"/?(\" + replaces.join(\"|\") + \")/?\", \"ig\");\r\n return url.replace(regex, \"/\" + endpoint + \"/\");\r\n };\r\n GraphEndpoints.Beta = \"beta\";\r\n GraphEndpoints.V1 = \"v1.0\";\r\n return GraphEndpoints;\r\n}());\r\nexport { GraphEndpoints };\r\n//# sourceMappingURL=types.js.map","import { __awaiter, __generator } from \"tslib\";\r\nimport { isFunc, mergeOptions, objectDefinedNotNull } from \"@pnp/common\";\r\nimport { defaultPipelineBinder, cloneQueryableData } from \"@pnp/odata\";\r\nimport { GraphHttpClient } from \"./graphhttpclient.js\";\r\nimport { toAbsoluteUrl } from \"./utils/toabsoluteurl.js\";\r\nexport function registerCustomRequestClientFactory(requestClientFactory) {\r\n httpClientFactory = isFunc(requestClientFactory) ? function () { return requestClientFactory; } : defaultFactory;\r\n}\r\nvar defaultFactory = function (runtime) { return function () { return new GraphHttpClient(runtime); }; };\r\nvar httpClientFactory = defaultFactory;\r\nvar send = function (method) {\r\n return function (o, options) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var runtime, operation, data, batchDependency, url;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n runtime = o.getRuntime();\r\n operation = defaultPipelineBinder(httpClientFactory(runtime))(method);\r\n data = cloneQueryableData(o.data);\r\n batchDependency = objectDefinedNotNull(data.batch) ? data.batch.addDependency() : function () {\r\n return;\r\n };\r\n return [4 /*yield*/, toAbsoluteUrl(o.toUrlAndQuery(), runtime)];\r\n case 1:\r\n url = _a.sent();\r\n mergeOptions(data.options, options);\r\n return [2 /*return*/, operation(Object.assign({}, data, {\r\n batchDependency: batchDependency,\r\n url: url,\r\n }))];\r\n }\r\n });\r\n });\r\n };\r\n};\r\nexport var graphGet = function (o, options) { return send(\"GET\")(o, options); };\r\nexport var graphPost = function (o, options) { return send(\"POST\")(o, options); };\r\nexport var graphDelete = function (o, options) { return send(\"DELETE\")(o, options); };\r\nexport var graphPatch = function (o, options) { return send(\"PATCH\")(o, options); };\r\nexport var graphPut = function (o, options) { return send(\"PUT\")(o, options); };\r\n//# sourceMappingURL=operations.js.map","import { __awaiter, __decorate, __extends, __generator, __read, __spreadArray } from \"tslib\";\r\nimport { _SharePointQueryableInstance, _SharePointQueryableCollection, spInvokableFactory, SharePointQueryableInstance, deleteableWithETag, } from \"../sharepointqueryable.js\";\r\nimport { TextParser, BlobParser, JSONParser, BufferParser, headers, body } from \"@pnp/odata\";\r\nimport { assign, getGUID, isFunc, stringIsNullOrEmpty, isUrlAbsolute } from \"@pnp/common\";\r\nimport { Item } from \"../items/index.js\";\r\nimport { odataUrlFrom } from \"../odata.js\";\r\nimport { defaultPath } from \"../decorators.js\";\r\nimport { spPost } from \"../operations.js\";\r\nimport { escapeQueryStrValue } from \"../utils/escapeQueryStrValue.js\";\r\nimport { extractWebUrl } from \"../utils/extractweburl.js\";\r\nimport { tag } from \"../telemetry.js\";\r\nimport { toResourcePath } from \"../utils/toResourcePath.js\";\r\n/**\r\n * Describes a collection of File objects\r\n *\r\n */\r\nvar _Files = /** @class */ (function (_super) {\r\n __extends(_Files, _super);\r\n function _Files() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n /**\r\n * Gets a File by filename\r\n *\r\n * @param name The name of the file, including extension.\r\n */\r\n _Files.prototype.getByName = function (name) {\r\n if (/%#/.test(name)) {\r\n throw Error(\"For file names containing % or # please use web.getFileByServerRelativePath\");\r\n }\r\n return tag.configure(File(this).concat(\"('\" + escapeQueryStrValue(name) + \"')\"), \"fis.getByName\");\r\n };\r\n /**\r\n * Uploads a file. Not supported for batching\r\n *\r\n * @param url The folder-relative url of the file.\r\n * @param content The file contents\r\n * @param shouldOverWrite Should a file with the same name in the same location be overwritten? (default: true)\r\n * @returns The new File and the raw response.\r\n */\r\n _Files.prototype.add = function (url, content, shouldOverWrite) {\r\n if (shouldOverWrite === void 0) { shouldOverWrite = true; }\r\n return __awaiter(this, void 0, void 0, function () {\r\n var response;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0: return [4 /*yield*/, spPost(Files(this, \"add(overwrite=\" + shouldOverWrite + \",url='\" + escapeQueryStrValue(url) + \"')\"), {\r\n body: content,\r\n })];\r\n case 1:\r\n response = _a.sent();\r\n return [2 /*return*/, {\r\n data: response,\r\n file: this.getByName(url),\r\n }];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Adds a file using the pound percent safe methods\r\n *\r\n * @param url Excoded url of the file\r\n * @param content The file content\r\n * @param parameters Additional parameters to control method behavior\r\n */\r\n _Files.prototype.addUsingPath = function (url, content, parameters) {\r\n if (parameters === void 0) { parameters = { Overwrite: false }; }\r\n return __awaiter(this, void 0, void 0, function () {\r\n var path, resp;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n path = [\"AddUsingPath(decodedurl='\" + escapeQueryStrValue(url) + \"'\"];\r\n if (parameters) {\r\n if (parameters.Overwrite) {\r\n path.push(\",Overwrite=true\");\r\n }\r\n if (parameters.AutoCheckoutOnInvalidData) {\r\n path.push(\",AutoCheckoutOnInvalidData=true\");\r\n }\r\n if (!stringIsNullOrEmpty(parameters.XorHash)) {\r\n path.push(\",XorHash=\" + escapeQueryStrValue(parameters.XorHash));\r\n }\r\n }\r\n path.push(\")\");\r\n return [4 /*yield*/, spPost(Files(this, path.join(\"\")), { body: content })];\r\n case 1:\r\n resp = _a.sent();\r\n return [2 /*return*/, {\r\n data: resp,\r\n file: File(odataUrlFrom(resp)),\r\n }];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Uploads a file. Not supported for batching\r\n *\r\n * @param url The folder-relative url of the file.\r\n * @param content The Blob file content to add\r\n * @param progress A callback function which can be used to track the progress of the upload\r\n * @param shouldOverWrite Should a file with the same name in the same location be overwritten? (default: true)\r\n * @param chunkSize The size of each file slice, in bytes (default: 10485760)\r\n * @returns The new File and the raw response.\r\n */\r\n _Files.prototype.addChunked = function (url, content, progress, shouldOverWrite, chunkSize) {\r\n if (shouldOverWrite === void 0) { shouldOverWrite = true; }\r\n if (chunkSize === void 0) { chunkSize = 10485760; }\r\n return __awaiter(this, void 0, void 0, function () {\r\n var response, odataUrl, file;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0: return [4 /*yield*/, spPost(this.clone(Files, \"add(overwrite=\" + shouldOverWrite + \",url='\" + escapeQueryStrValue(url) + \"')\", false))];\r\n case 1:\r\n response = _a.sent();\r\n odataUrl = odataUrlFrom(response);\r\n if (!stringIsNullOrEmpty(odataUrl) && /%27/i.test(odataUrl)) {\r\n odataUrl = odataUrl.replace(/%27/ig, \"''\");\r\n }\r\n file = File(odataUrl);\r\n return [4 /*yield*/, file.setContentChunked(content, progress, chunkSize)];\r\n case 2: return [2 /*return*/, _a.sent()];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Adds a ghosted file to an existing list or document library. Not supported for batching.\r\n *\r\n * @param fileUrl The server-relative url where you want to save the file.\r\n * @param templateFileType The type of use to create the file.\r\n * @returns The template file that was added and the raw response.\r\n */\r\n _Files.prototype.addTemplateFile = function (fileUrl, templateFileType) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var response;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0: return [4 /*yield*/, spPost(this.clone(Files, \"addTemplateFile(urloffile='\" + escapeQueryStrValue(fileUrl) + \"',templatefiletype=\" + templateFileType + \")\", false))];\r\n case 1:\r\n response = _a.sent();\r\n return [2 /*return*/, {\r\n data: response,\r\n file: File(odataUrlFrom(response)),\r\n }];\r\n }\r\n });\r\n });\r\n };\r\n __decorate([\r\n tag(\"fis.add\")\r\n ], _Files.prototype, \"add\", null);\r\n __decorate([\r\n tag(\"fis.addUsingPath\")\r\n ], _Files.prototype, \"addUsingPath\", null);\r\n __decorate([\r\n tag(\"fis.addChunked\")\r\n ], _Files.prototype, \"addChunked\", null);\r\n __decorate([\r\n tag(\"fis.addTemplateFile\")\r\n ], _Files.prototype, \"addTemplateFile\", null);\r\n _Files = __decorate([\r\n defaultPath(\"files\")\r\n ], _Files);\r\n return _Files;\r\n}(_SharePointQueryableCollection));\r\nexport { _Files };\r\nexport var Files = spInvokableFactory(_Files);\r\n/**\r\n * Describes a single File instance\r\n *\r\n */\r\nvar _File = /** @class */ (function (_super) {\r\n __extends(_File, _super);\r\n function _File() {\r\n var _this = _super !== null && _super.apply(this, arguments) || this;\r\n _this.delete = deleteableWithETag(\"fi\");\r\n return _this;\r\n }\r\n Object.defineProperty(_File.prototype, \"listItemAllFields\", {\r\n /**\r\n * Gets a value that specifies the list item field values for the list item corresponding to the file.\r\n *\r\n */\r\n get: function () {\r\n return tag.configure(SharePointQueryableInstance(this, \"listItemAllFields\"), \"fi.listItemAllFields\");\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n Object.defineProperty(_File.prototype, \"versions\", {\r\n /**\r\n * Gets a collection of versions\r\n *\r\n */\r\n get: function () {\r\n return tag.configure(Versions(this), \"fi.versions\");\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n /**\r\n * Approves the file submitted for content approval with the specified comment.\r\n * Only documents in lists that are enabled for content approval can be approved.\r\n *\r\n * @param comment The comment for the approval.\r\n */\r\n _File.prototype.approve = function (comment) {\r\n if (comment === void 0) { comment = \"\"; }\r\n return spPost(this.clone(File, \"approve(comment='\" + escapeQueryStrValue(comment) + \"')\"));\r\n };\r\n /**\r\n * Stops the chunk upload session without saving the uploaded data. Does not support batching.\r\n * If the file doesn’t already exist in the library, the partially uploaded file will be deleted.\r\n * Use this in response to user action (as in a request to cancel an upload) or an error or exception.\r\n * Use the uploadId value that was passed to the StartUpload method that started the upload session.\r\n * This method is currently available only on Office 365.\r\n *\r\n * @param uploadId The unique identifier of the upload session.\r\n */\r\n _File.prototype.cancelUpload = function (uploadId) {\r\n return spPost(this.clone(File, \"cancelUpload(uploadId=guid'\" + uploadId + \"')\", false));\r\n };\r\n /**\r\n * Checks the file in to a document library based on the check-in type.\r\n *\r\n * @param comment A comment for the check-in. Its length must be <= 1023.\r\n * @param checkinType The check-in type for the file.\r\n */\r\n _File.prototype.checkin = function (comment, checkinType) {\r\n if (comment === void 0) { comment = \"\"; }\r\n if (checkinType === void 0) { checkinType = CheckinType.Major; }\r\n if (comment.length > 1023) {\r\n throw Error(\"The maximum comment length is 1023 characters.\");\r\n }\r\n return spPost(this.clone(File, \"checkin(comment='\" + escapeQueryStrValue(comment) + \"',checkintype=\" + checkinType + \")\"));\r\n };\r\n /**\r\n * Checks out the file from a document library.\r\n */\r\n _File.prototype.checkout = function () {\r\n return spPost(this.clone(File, \"checkout\"));\r\n };\r\n /**\r\n * Copies the file to the destination url.\r\n *\r\n * @param url The absolute url or server relative url of the destination file path to copy to.\r\n * @param shouldOverWrite Should a file with the same name in the same location be overwritten?\r\n */\r\n _File.prototype.copyTo = function (url, shouldOverWrite) {\r\n if (shouldOverWrite === void 0) { shouldOverWrite = true; }\r\n return spPost(this.clone(File, \"copyTo(strnewurl='\" + escapeQueryStrValue(url) + \"',boverwrite=\" + shouldOverWrite + \")\"));\r\n };\r\n /**\r\n * Copies the file by path to destination path.\r\n * Also works with different site collections.\r\n *\r\n * @param destUrl The absolute url or server relative url of the destination file path to copy to.\r\n * @param shouldOverWrite Should a file with the same name in the same location be overwritten?\r\n * @param keepBoth Keep both if file with the same name in the same location already exists? Only relevant when shouldOverWrite is set to false.\r\n */\r\n _File.prototype.copyByPath = function (destUrl, shouldOverWrite, KeepBoth) {\r\n if (KeepBoth === void 0) { KeepBoth = false; }\r\n return __awaiter(this, void 0, void 0, function () {\r\n var _a, srcUrl, absoluteUrl, webBaseUrl, hostUrl;\r\n return __generator(this, function (_b) {\r\n switch (_b.label) {\r\n case 0: return [4 /*yield*/, this.select(\"ServerRelativeUrl\")()];\r\n case 1:\r\n _a = _b.sent(), srcUrl = _a.ServerRelativeUrl, absoluteUrl = _a[\"odata.id\"];\r\n webBaseUrl = extractWebUrl(absoluteUrl);\r\n hostUrl = webBaseUrl.replace(\"://\", \"___\").split(\"/\")[0].replace(\"___\", \"://\");\r\n return [4 /*yield*/, spPost(File(webBaseUrl, \"/_api/SP.MoveCopyUtil.CopyFileByPath(overwrite=@a1)?@a1=\" + shouldOverWrite), body({\r\n destPath: toResourcePath(isUrlAbsolute(destUrl) ? destUrl : \"\" + hostUrl + destUrl),\r\n options: {\r\n KeepBoth: KeepBoth,\r\n ResetAuthorAndCreatedOnCopy: true,\r\n ShouldBypassSharedLocks: true,\r\n __metadata: {\r\n type: \"SP.MoveCopyOptions\",\r\n },\r\n },\r\n srcPath: toResourcePath(isUrlAbsolute(srcUrl) ? srcUrl : \"\" + hostUrl + srcUrl),\r\n }))];\r\n case 2:\r\n _b.sent();\r\n return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Denies approval for a file that was submitted for content approval.\r\n * Only documents in lists that are enabled for content approval can be denied.\r\n *\r\n * @param comment The comment for the denial.\r\n */\r\n _File.prototype.deny = function (comment) {\r\n if (comment === void 0) { comment = \"\"; }\r\n if (comment.length > 1023) {\r\n throw Error(\"The maximum comment length is 1023 characters.\");\r\n }\r\n return spPost(this.clone(File, \"deny(comment='\" + escapeQueryStrValue(comment) + \"')\"));\r\n };\r\n /**\r\n * Moves the file to the specified destination url.\r\n *\r\n * @param url The absolute url or server relative url of the destination file path to move to.\r\n * @param moveOperations The bitwise MoveOperations value for how to move the file.\r\n */\r\n _File.prototype.moveTo = function (url, moveOperations) {\r\n if (moveOperations === void 0) { moveOperations = MoveOperations.Overwrite; }\r\n return spPost(this.clone(File, \"moveTo(newurl='\" + escapeQueryStrValue(url) + \"',flags=\" + moveOperations + \")\"));\r\n };\r\n /**\r\n * Moves the file by path to the specified destination url.\r\n * Also works with different site collections.\r\n *\r\n * @param destUrl The absolute url or server relative url of the destination file path to move to.\r\n * @param shouldOverWrite Should a file with the same name in the same location be overwritten?\r\n * @param keepBoth Keep both if file with the same name in the same location already exists? Only relevant when shouldOverWrite is set to false.\r\n */\r\n _File.prototype.moveByPath = function (destUrl, shouldOverWrite, KeepBoth) {\r\n if (KeepBoth === void 0) { KeepBoth = false; }\r\n return __awaiter(this, void 0, void 0, function () {\r\n var _a, srcUrl, absoluteUrl, webBaseUrl, hostUrl;\r\n return __generator(this, function (_b) {\r\n switch (_b.label) {\r\n case 0: return [4 /*yield*/, this.select(\"ServerRelativeUrl\")()];\r\n case 1:\r\n _a = _b.sent(), srcUrl = _a.ServerRelativeUrl, absoluteUrl = _a[\"odata.id\"];\r\n webBaseUrl = extractWebUrl(absoluteUrl);\r\n hostUrl = webBaseUrl.replace(\"://\", \"___\").split(\"/\")[0].replace(\"___\", \"://\");\r\n return [4 /*yield*/, spPost(File(webBaseUrl, \"/_api/SP.MoveCopyUtil.MoveFileByPath(overwrite=@a1)?@a1=\" + shouldOverWrite), body({\r\n destPath: toResourcePath(isUrlAbsolute(destUrl) ? destUrl : \"\" + hostUrl + destUrl),\r\n options: {\r\n KeepBoth: KeepBoth,\r\n ResetAuthorAndCreatedOnCopy: false,\r\n ShouldBypassSharedLocks: true,\r\n __metadata: {\r\n type: \"SP.MoveCopyOptions\",\r\n },\r\n },\r\n srcPath: toResourcePath(isUrlAbsolute(srcUrl) ? srcUrl : \"\" + hostUrl + srcUrl),\r\n }))];\r\n case 2:\r\n _b.sent();\r\n return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Submits the file for content approval with the specified comment.\r\n *\r\n * @param comment The comment for the published file. Its length must be <= 1023.\r\n */\r\n _File.prototype.publish = function (comment) {\r\n if (comment === void 0) { comment = \"\"; }\r\n if (comment.length > 1023) {\r\n throw Error(\"The maximum comment length is 1023 characters.\");\r\n }\r\n return spPost(this.clone(File, \"publish(comment='\" + escapeQueryStrValue(comment) + \"')\"));\r\n };\r\n /**\r\n * Moves the file to the Recycle Bin and returns the identifier of the new Recycle Bin item.\r\n *\r\n * @returns The GUID of the recycled file.\r\n */\r\n _File.prototype.recycle = function () {\r\n return spPost(this.clone(File, \"recycle\"));\r\n };\r\n /**\r\n * Deletes the file object with options.\r\n *\r\n * @param parameters Specifies the options to use when deleting a file.\r\n */\r\n _File.prototype.deleteWithParams = function (parameters) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n return __generator(this, function (_a) {\r\n return [2 /*return*/, spPost(this.clone(File, \"DeleteWithParameters\"), body({ parameters: parameters }))];\r\n });\r\n });\r\n };\r\n /**\r\n * Reverts an existing checkout for the file.\r\n *\r\n */\r\n _File.prototype.undoCheckout = function () {\r\n return spPost(this.clone(File, \"undoCheckout\"));\r\n };\r\n /**\r\n * Removes the file from content approval or unpublish a major version.\r\n *\r\n * @param comment The comment for the unpublish operation. Its length must be <= 1023.\r\n */\r\n _File.prototype.unpublish = function (comment) {\r\n if (comment === void 0) { comment = \"\"; }\r\n if (comment.length > 1023) {\r\n throw Error(\"The maximum comment length is 1023 characters.\");\r\n }\r\n return spPost(this.clone(File, \"unpublish(comment='\" + escapeQueryStrValue(comment) + \"')\"));\r\n };\r\n /**\r\n * Checks to see if the file represented by this object exists\r\n *\r\n */\r\n _File.prototype.exists = function () {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var r, e_1;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n _a.trys.push([0, 2, , 3]);\r\n return [4 /*yield*/, this.clone(File).select(\"Exists\")()];\r\n case 1:\r\n r = _a.sent();\r\n return [2 /*return*/, r.Exists];\r\n case 2:\r\n e_1 = _a.sent();\r\n // this treats any error here as the file not existing, which\r\n // might not be true, but is good enough.\r\n return [2 /*return*/, false];\r\n case 3: return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Gets the contents of the file as text. Not supported in batching.\r\n *\r\n */\r\n _File.prototype.getText = function () {\r\n return this.clone(File, \"$value\", false).usingParser(new TextParser())(headers({ \"binaryStringResponseBody\": \"true\" }));\r\n };\r\n /**\r\n * Gets the contents of the file as a blob, does not work in Node.js. Not supported in batching.\r\n *\r\n */\r\n _File.prototype.getBlob = function () {\r\n return this.clone(File, \"$value\", false).usingParser(new BlobParser())(headers({ \"binaryStringResponseBody\": \"true\" }));\r\n };\r\n /**\r\n * Gets the contents of a file as an ArrayBuffer, works in Node.js. Not supported in batching.\r\n */\r\n _File.prototype.getBuffer = function () {\r\n return this.clone(File, \"$value\", false).usingParser(new BufferParser())(headers({ \"binaryStringResponseBody\": \"true\" }));\r\n };\r\n /**\r\n * Gets the contents of a file as an ArrayBuffer, works in Node.js. Not supported in batching.\r\n */\r\n _File.prototype.getJSON = function () {\r\n return this.clone(File, \"$value\", false).usingParser(new JSONParser())(headers({ \"binaryStringResponseBody\": \"true\" }));\r\n };\r\n /**\r\n * Sets the content of a file, for large files use setContentChunked. Not supported in batching.\r\n *\r\n * @param content The file content\r\n *\r\n */\r\n _File.prototype.setContent = function (content) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0: return [4 /*yield*/, spPost(this.clone(File, \"$value\", false), {\r\n body: content,\r\n headers: {\r\n \"X-HTTP-Method\": \"PUT\",\r\n },\r\n })];\r\n case 1:\r\n _a.sent();\r\n return [2 /*return*/, File(this)];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Gets the associated list item for this file, loading the default properties\r\n */\r\n _File.prototype.getItem = function () {\r\n var selects = [];\r\n for (var _i = 0; _i < arguments.length; _i++) {\r\n selects[_i] = arguments[_i];\r\n }\r\n return __awaiter(this, void 0, void 0, function () {\r\n var q, d;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n q = this.listItemAllFields;\r\n return [4 /*yield*/, q.select.apply(q, __spreadArray([], __read(selects)))()];\r\n case 1:\r\n d = _a.sent();\r\n return [2 /*return*/, assign(Item(odataUrlFrom(d)), d)];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Sets the contents of a file using a chunked upload approach. Not supported in batching.\r\n *\r\n * @param file The file to upload\r\n * @param progress A callback function which can be used to track the progress of the upload\r\n * @param chunkSize The size of each file slice, in bytes (default: 10485760)\r\n */\r\n _File.prototype.setContentChunked = function (file, progress, chunkSize) {\r\n if (chunkSize === void 0) { chunkSize = 10485760; }\r\n return __awaiter(this, void 0, void 0, function () {\r\n var fileSize, totalBlocks, uploadId, currentPointer, i;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n if (!isFunc(progress)) {\r\n progress = function () { return null; };\r\n }\r\n fileSize = file.size;\r\n totalBlocks = parseInt((fileSize / chunkSize).toString(), 10) + ((fileSize % chunkSize === 0) ? 1 : 0);\r\n uploadId = getGUID();\r\n // report that we are starting\r\n progress({ uploadId: uploadId, blockNumber: 1, chunkSize: chunkSize, currentPointer: 0, fileSize: fileSize, stage: \"starting\", totalBlocks: totalBlocks });\r\n return [4 /*yield*/, this.startUpload(uploadId, file.slice(0, chunkSize))];\r\n case 1:\r\n currentPointer = _a.sent();\r\n i = 2;\r\n _a.label = 2;\r\n case 2:\r\n if (!(i < totalBlocks)) return [3 /*break*/, 5];\r\n progress({ uploadId: uploadId, blockNumber: i, chunkSize: chunkSize, currentPointer: currentPointer, fileSize: fileSize, stage: \"continue\", totalBlocks: totalBlocks });\r\n return [4 /*yield*/, this.continueUpload(uploadId, currentPointer, file.slice(currentPointer, currentPointer + chunkSize))];\r\n case 3:\r\n currentPointer = _a.sent();\r\n _a.label = 4;\r\n case 4:\r\n i++;\r\n return [3 /*break*/, 2];\r\n case 5:\r\n progress({ uploadId: uploadId, blockNumber: totalBlocks, chunkSize: chunkSize, currentPointer: currentPointer, fileSize: fileSize, stage: \"finishing\", totalBlocks: totalBlocks });\r\n return [2 /*return*/, this.finishUpload(uploadId, currentPointer, file.slice(currentPointer))];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Starts a new chunk upload session and uploads the first fragment.\r\n * The current file content is not changed when this method completes.\r\n * The method is idempotent (and therefore does not change the result) as long as you use the same values for uploadId and stream.\r\n * The upload session ends either when you use the CancelUpload method or when you successfully\r\n * complete the upload session by passing the rest of the file contents through the ContinueUpload and FinishUpload methods.\r\n * The StartUpload and ContinueUpload methods return the size of the running total of uploaded data in bytes,\r\n * so you can pass those return values to subsequent uses of ContinueUpload and FinishUpload.\r\n * This method is currently available only on Office 365.\r\n *\r\n * @param uploadId The unique identifier of the upload session.\r\n * @param fragment The file contents.\r\n * @returns The size of the total uploaded data in bytes.\r\n */\r\n _File.prototype.startUpload = function (uploadId, fragment) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var n;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0: return [4 /*yield*/, spPost(this.clone(File, \"startUpload(uploadId=guid'\" + uploadId + \"')\", false), { body: fragment })];\r\n case 1:\r\n n = _a.sent();\r\n if (typeof n === \"object\") {\r\n // When OData=verbose the payload has the following shape:\r\n // { StartUpload: \"10485760\" }\r\n n = n.StartUpload;\r\n }\r\n return [2 /*return*/, parseFloat(n)];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Continues the chunk upload session with an additional fragment.\r\n * The current file content is not changed.\r\n * Use the uploadId value that was passed to the StartUpload method that started the upload session.\r\n * This method is currently available only on Office 365.\r\n *\r\n * @param uploadId The unique identifier of the upload session.\r\n * @param fileOffset The size of the offset into the file where the fragment starts.\r\n * @param fragment The file contents.\r\n * @returns The size of the total uploaded data in bytes.\r\n */\r\n _File.prototype.continueUpload = function (uploadId, fileOffset, fragment) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var n;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0: return [4 /*yield*/, spPost(this.clone(File, \"continueUpload(uploadId=guid'\" + uploadId + \"',fileOffset=\" + fileOffset + \")\", false), { body: fragment })];\r\n case 1:\r\n n = _a.sent();\r\n if (typeof n === \"object\") {\r\n // When OData=verbose the payload has the following shape:\r\n // { ContinueUpload: \"20971520\" }\r\n n = n.ContinueUpload;\r\n }\r\n return [2 /*return*/, parseFloat(n)];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Uploads the last file fragment and commits the file. The current file content is changed when this method completes.\r\n * Use the uploadId value that was passed to the StartUpload method that started the upload session.\r\n * This method is currently available only on Office 365.\r\n *\r\n * @param uploadId The unique identifier of the upload session.\r\n * @param fileOffset The size of the offset into the file where the fragment starts.\r\n * @param fragment The file contents.\r\n * @returns The newly uploaded file.\r\n */\r\n _File.prototype.finishUpload = function (uploadId, fileOffset, fragment) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var response;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0: return [4 /*yield*/, spPost(this.clone(File, \"finishUpload(uploadId=guid'\" + uploadId + \"',fileOffset=\" + fileOffset + \")\", false), { body: fragment })];\r\n case 1:\r\n response = _a.sent();\r\n return [2 /*return*/, {\r\n data: response,\r\n file: File(odataUrlFrom(response)),\r\n }];\r\n }\r\n });\r\n });\r\n };\r\n __decorate([\r\n tag(\"fi.approve\")\r\n ], _File.prototype, \"approve\", null);\r\n __decorate([\r\n tag(\"fi.cancelUpload\")\r\n ], _File.prototype, \"cancelUpload\", null);\r\n __decorate([\r\n tag(\"fi.checkin\")\r\n ], _File.prototype, \"checkin\", null);\r\n __decorate([\r\n tag(\"fi.checkout\")\r\n ], _File.prototype, \"checkout\", null);\r\n __decorate([\r\n tag(\"fi.copyTo\")\r\n ], _File.prototype, \"copyTo\", null);\r\n __decorate([\r\n tag(\"fi.copyByPath\")\r\n ], _File.prototype, \"copyByPath\", null);\r\n __decorate([\r\n tag(\"fi.deny\")\r\n ], _File.prototype, \"deny\", null);\r\n __decorate([\r\n tag(\"fi.moveTo\")\r\n ], _File.prototype, \"moveTo\", null);\r\n __decorate([\r\n tag(\"fi.moveByPath\")\r\n ], _File.prototype, \"moveByPath\", null);\r\n __decorate([\r\n tag(\"fi.publish\")\r\n ], _File.prototype, \"publish\", null);\r\n __decorate([\r\n tag(\"fi.recycle\")\r\n ], _File.prototype, \"recycle\", null);\r\n __decorate([\r\n tag(\"fi.del-params\")\r\n ], _File.prototype, \"deleteWithParams\", null);\r\n __decorate([\r\n tag(\"fi.undoCheckout\")\r\n ], _File.prototype, \"undoCheckout\", null);\r\n __decorate([\r\n tag(\"fi.unpublish\")\r\n ], _File.prototype, \"unpublish\", null);\r\n __decorate([\r\n tag(\"fi.exists\")\r\n ], _File.prototype, \"exists\", null);\r\n __decorate([\r\n tag(\"fi.getText\")\r\n ], _File.prototype, \"getText\", null);\r\n __decorate([\r\n tag(\"fi.getBlob\")\r\n ], _File.prototype, \"getBlob\", null);\r\n __decorate([\r\n tag(\"fi.getBuffer\")\r\n ], _File.prototype, \"getBuffer\", null);\r\n __decorate([\r\n tag(\"fi.getJSON\")\r\n ], _File.prototype, \"getJSON\", null);\r\n __decorate([\r\n tag(\"fi.setContent\")\r\n ], _File.prototype, \"setContent\", null);\r\n __decorate([\r\n tag(\"fi.getItem\")\r\n ], _File.prototype, \"getItem\", null);\r\n __decorate([\r\n tag(\"fi.startUpload\")\r\n ], _File.prototype, \"startUpload\", null);\r\n __decorate([\r\n tag(\"fi.continueUpload\")\r\n ], _File.prototype, \"continueUpload\", null);\r\n __decorate([\r\n tag(\"fi.finishUpload\")\r\n ], _File.prototype, \"finishUpload\", null);\r\n return _File;\r\n}(_SharePointQueryableInstance));\r\nexport { _File };\r\nexport var File = spInvokableFactory(_File);\r\n/**\r\n * Describes a collection of Version objects\r\n *\r\n */\r\nvar _Versions = /** @class */ (function (_super) {\r\n __extends(_Versions, _super);\r\n function _Versions() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n /**\r\n * Gets a version by id\r\n *\r\n * @param versionId The id of the version to retrieve\r\n */\r\n _Versions.prototype.getById = function (versionId) {\r\n return tag.configure(Version(this).concat(\"(\" + versionId + \")\"), \"vers.getById\");\r\n };\r\n /**\r\n * Deletes all the file version objects in the collection.\r\n *\r\n */\r\n _Versions.prototype.deleteAll = function () {\r\n return spPost(Versions(this, \"deleteAll\"));\r\n };\r\n /**\r\n * Deletes the specified version of the file.\r\n *\r\n * @param versionId The ID of the file version to delete.\r\n */\r\n _Versions.prototype.deleteById = function (versionId) {\r\n return spPost(this.clone(Versions, \"deleteById(vid=\" + versionId + \")\"));\r\n };\r\n /**\r\n * Recycles the specified version of the file.\r\n *\r\n * @param versionId The ID of the file version to delete.\r\n */\r\n _Versions.prototype.recycleByID = function (versionId) {\r\n return spPost(this.clone(Versions, \"recycleByID(vid=\" + versionId + \")\"));\r\n };\r\n /**\r\n * Deletes the file version object with the specified version label.\r\n *\r\n * @param label The version label of the file version to delete, for example: 1.2\r\n */\r\n _Versions.prototype.deleteByLabel = function (label) {\r\n return spPost(this.clone(Versions, \"deleteByLabel(versionlabel='\" + escapeQueryStrValue(label) + \"')\"));\r\n };\r\n /**\r\n * Recycles the file version object with the specified version label.\r\n *\r\n * @param label The version label of the file version to delete, for example: 1.2\r\n */\r\n _Versions.prototype.recycleByLabel = function (label) {\r\n return spPost(this.clone(Versions, \"recycleByLabel(versionlabel='\" + escapeQueryStrValue(label) + \"')\"));\r\n };\r\n /**\r\n * Creates a new file version from the file specified by the version label.\r\n *\r\n * @param label The version label of the file version to restore, for example: 1.2\r\n */\r\n _Versions.prototype.restoreByLabel = function (label) {\r\n return spPost(this.clone(Versions, \"restoreByLabel(versionlabel='\" + escapeQueryStrValue(label) + \"')\"));\r\n };\r\n __decorate([\r\n tag(\"vers.deleteAll\")\r\n ], _Versions.prototype, \"deleteAll\", null);\r\n __decorate([\r\n tag(\"vers.deleteById\")\r\n ], _Versions.prototype, \"deleteById\", null);\r\n __decorate([\r\n tag(\"vers.recycleByID\")\r\n ], _Versions.prototype, \"recycleByID\", null);\r\n __decorate([\r\n tag(\"vers.deleteByLabel\")\r\n ], _Versions.prototype, \"deleteByLabel\", null);\r\n __decorate([\r\n tag(\"vers.recycleByLabel\")\r\n ], _Versions.prototype, \"recycleByLabel\", null);\r\n __decorate([\r\n tag(\"vers.restoreByLabel\")\r\n ], _Versions.prototype, \"restoreByLabel\", null);\r\n _Versions = __decorate([\r\n defaultPath(\"versions\")\r\n ], _Versions);\r\n return _Versions;\r\n}(_SharePointQueryableCollection));\r\nexport { _Versions };\r\nexport var Versions = spInvokableFactory(_Versions);\r\n/**\r\n * Describes a single Version instance\r\n *\r\n */\r\nvar _Version = /** @class */ (function (_super) {\r\n __extends(_Version, _super);\r\n function _Version() {\r\n var _this = _super !== null && _super.apply(this, arguments) || this;\r\n _this.delete = deleteableWithETag(\"ver\");\r\n return _this;\r\n }\r\n return _Version;\r\n}(_SharePointQueryableInstance));\r\nexport { _Version };\r\nexport var Version = spInvokableFactory(_Version);\r\n/**\r\n * Types for document check in.\r\n * Minor = 0\r\n * Major = 1\r\n * Overwrite = 2\r\n */\r\nexport var CheckinType;\r\n(function (CheckinType) {\r\n CheckinType[CheckinType[\"Minor\"] = 0] = \"Minor\";\r\n CheckinType[CheckinType[\"Major\"] = 1] = \"Major\";\r\n CheckinType[CheckinType[\"Overwrite\"] = 2] = \"Overwrite\";\r\n})(CheckinType || (CheckinType = {}));\r\n/**\r\n * File move opertions\r\n */\r\nexport var MoveOperations;\r\n(function (MoveOperations) {\r\n /**\r\n * Produce an error if a file with the same name exists in the destination\r\n */\r\n MoveOperations[MoveOperations[\"None\"] = 0] = \"None\";\r\n /**\r\n * Overwrite a file with the same name if it exists. Value is 1.\r\n */\r\n MoveOperations[MoveOperations[\"Overwrite\"] = 1] = \"Overwrite\";\r\n /**\r\n * Complete the move operation even if supporting files are separated from the file. Value is 8.\r\n */\r\n MoveOperations[MoveOperations[\"AllowBrokenThickets\"] = 8] = \"AllowBrokenThickets\";\r\n /**\r\n * Boolean specifying whether to retain the source of the move's editor and modified by datetime.\r\n */\r\n MoveOperations[MoveOperations[\"RetainEditorAndModifiedOnMove\"] = 2048] = \"RetainEditorAndModifiedOnMove\";\r\n})(MoveOperations || (MoveOperations = {}));\r\nexport var TemplateFileType;\r\n(function (TemplateFileType) {\r\n TemplateFileType[TemplateFileType[\"StandardPage\"] = 0] = \"StandardPage\";\r\n TemplateFileType[TemplateFileType[\"WikiPage\"] = 1] = \"WikiPage\";\r\n TemplateFileType[TemplateFileType[\"FormPage\"] = 2] = \"FormPage\";\r\n TemplateFileType[TemplateFileType[\"ClientSidePage\"] = 3] = \"ClientSidePage\";\r\n})(TemplateFileType || (TemplateFileType = {}));\r\n//# sourceMappingURL=types.js.map","import { __extends } from \"tslib\";\r\nimport { combine } from \"@pnp/common\";\r\nimport { Queryable, invokableFactory } from \"@pnp/odata\";\r\nimport { GraphEndpoints } from \"./types.js\";\r\nimport { graphGet } from \"./operations.js\";\r\nexport var graphInvokableFactory = function (f) {\r\n return invokableFactory(f);\r\n};\r\n/**\r\n * Queryable Base Class\r\n *\r\n */\r\nvar _GraphQueryable = /** @class */ (function (_super) {\r\n __extends(_GraphQueryable, _super);\r\n /**\r\n * Creates a new instance of the Queryable class\r\n *\r\n * @constructor\r\n * @param baseUrl A string or Queryable that should form the base part of the url\r\n *\r\n */\r\n function _GraphQueryable(baseUrl, path) {\r\n var _this = this;\r\n var url = \"\";\r\n var parentUrl = \"\";\r\n var query = new Map();\r\n if (typeof baseUrl === \"string\") {\r\n parentUrl = baseUrl;\r\n url = combine(parentUrl, path);\r\n }\r\n else {\r\n parentUrl = baseUrl.toUrl();\r\n url = combine(parentUrl, path);\r\n }\r\n _this = _super.call(this, {\r\n parentUrl: parentUrl,\r\n query: query,\r\n url: url,\r\n }) || this;\r\n // post init actions\r\n if (typeof baseUrl !== \"string\") {\r\n _this.configureFrom(baseUrl);\r\n }\r\n return _this;\r\n }\r\n /**\r\n * Choose which fields to return\r\n *\r\n * @param selects One or more fields to return\r\n */\r\n _GraphQueryable.prototype.select = function () {\r\n var selects = [];\r\n for (var _i = 0; _i < arguments.length; _i++) {\r\n selects[_i] = arguments[_i];\r\n }\r\n if (selects.length > 0) {\r\n this.query.set(\"$select\", selects.map(encodeURIComponent).join(\",\"));\r\n }\r\n return this;\r\n };\r\n /**\r\n * Expands fields such as lookups to get additional data\r\n *\r\n * @param expands The Fields for which to expand the values\r\n */\r\n _GraphQueryable.prototype.expand = function () {\r\n var expands = [];\r\n for (var _i = 0; _i < arguments.length; _i++) {\r\n expands[_i] = arguments[_i];\r\n }\r\n if (expands.length > 0) {\r\n this.query.set(\"$expand\", expands.map(encodeURIComponent).join(\",\"));\r\n }\r\n return this;\r\n };\r\n _GraphQueryable.prototype.defaultAction = function (options) {\r\n return graphGet(this, options);\r\n };\r\n _GraphQueryable.prototype.get = function (options) {\r\n return graphGet(this, options);\r\n };\r\n /**\r\n * Gets the full url with query information\r\n *\r\n */\r\n _GraphQueryable.prototype.toUrlAndQuery = function () {\r\n var url = this.toUrl();\r\n if (this.query.size > 0) {\r\n var char = url.indexOf(\"?\") > -1 ? \"&\" : \"?\";\r\n url += \"\" + char + Array.from(this.query).map(function (v) { return v[0] + \"=\" + v[1]; }).join(\"&\");\r\n }\r\n return url;\r\n };\r\n _GraphQueryable.prototype.setEndpoint = function (endpoint) {\r\n this.data.url = GraphEndpoints.ensure(this.data.url, endpoint);\r\n return this;\r\n };\r\n /**\r\n * Clones this queryable into a new queryable instance of T\r\n * @param factory Constructor used to create the new instance\r\n * @param additionalPath Any additional path to include in the clone\r\n * @param includeBatch If true this instance's batch will be added to the cloned instance\r\n * @param includeQuery If true all of the query values will be copied to the cloned instance\r\n */\r\n _GraphQueryable.prototype.clone = function (factory, additionalPath, includeBatch, includeQuery) {\r\n if (includeBatch === void 0) { includeBatch = true; }\r\n if (includeQuery === void 0) { includeQuery = false; }\r\n return _super.prototype.cloneTo.call(this, factory(this, additionalPath), { includeBatch: includeBatch, includeQuery: includeQuery });\r\n };\r\n /**\r\n * Gets a parent for this instance as specified\r\n *\r\n * @param factory The contructor for the class to create\r\n */\r\n _GraphQueryable.prototype.getParent = function (factory, baseUrl, path) {\r\n if (baseUrl === void 0) { baseUrl = this.parentUrl; }\r\n return new factory(baseUrl, path);\r\n };\r\n /**\r\n * Gets the current base url of this object (https://graph.microsoft.com/v1.0 or https://graph.microsoft.com/beta)\r\n */\r\n _GraphQueryable.prototype.getUrlBase = function () {\r\n var url = this.toUrl();\r\n var index = url.indexOf(\"v1.0/\");\r\n if (index > -1) {\r\n return url.substring(0, index + 5);\r\n }\r\n index = url.indexOf(\"beta/\");\r\n if (index > -1) {\r\n return url.substring(0, index + 5);\r\n }\r\n return url;\r\n };\r\n return _GraphQueryable;\r\n}(Queryable));\r\nexport { _GraphQueryable };\r\nexport var GraphQueryable = graphInvokableFactory(_GraphQueryable);\r\n/**\r\n * Represents a REST collection which can be filtered, paged, and selected\r\n *\r\n */\r\nvar _GraphQueryableCollection = /** @class */ (function (_super) {\r\n __extends(_GraphQueryableCollection, _super);\r\n function _GraphQueryableCollection() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n /**\r\n *\r\n * @param filter The string representing the filter query\r\n */\r\n _GraphQueryableCollection.prototype.filter = function (filter) {\r\n this.query.set(\"$filter\", filter);\r\n return this;\r\n };\r\n /**\r\n * Orders based on the supplied fields\r\n *\r\n * @param orderby The name of the field on which to sort\r\n * @param ascending If false DESC is appended, otherwise ASC (default)\r\n */\r\n _GraphQueryableCollection.prototype.orderBy = function (orderBy, ascending) {\r\n if (ascending === void 0) { ascending = true; }\r\n var o = \"$orderby\";\r\n var query = this.query.has(o) ? this.query.get(o).split(\",\") : [];\r\n query.push(encodeURIComponent(orderBy) + \" \" + (ascending ? \"asc\" : \"desc\"));\r\n this.query.set(o, query.join(\",\"));\r\n return this;\r\n };\r\n /**\r\n * Limits the query to only return the specified number of items\r\n *\r\n * @param top The query row limit\r\n */\r\n _GraphQueryableCollection.prototype.top = function (top) {\r\n this.query.set(\"$top\", top.toString());\r\n return this;\r\n };\r\n /**\r\n * Skips a set number of items in the return set\r\n *\r\n * @param num Number of items to skip\r\n */\r\n _GraphQueryableCollection.prototype.skip = function (num) {\r\n this.query.set(\"$skip\", num.toString());\r\n return this;\r\n };\r\n /**\r\n * \tTo request second and subsequent pages of Graph data\r\n */\r\n _GraphQueryableCollection.prototype.skipToken = function (token) {\r\n this.query.set(\"$skiptoken\", token);\r\n return this;\r\n };\r\n Object.defineProperty(_GraphQueryableCollection.prototype, \"count\", {\r\n /**\r\n * \tRetrieves the total count of matching resources\r\n */\r\n get: function () {\r\n this.query.set(\"$count\", \"true\");\r\n return this;\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n return _GraphQueryableCollection;\r\n}(_GraphQueryable));\r\nexport { _GraphQueryableCollection };\r\nexport var GraphQueryableCollection = graphInvokableFactory(_GraphQueryableCollection);\r\nvar _GraphQueryableSearchableCollection = /** @class */ (function (_super) {\r\n __extends(_GraphQueryableSearchableCollection, _super);\r\n function _GraphQueryableSearchableCollection() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n /**\r\n * \tTo request second and subsequent pages of Graph data\r\n */\r\n _GraphQueryableSearchableCollection.prototype.search = function (query) {\r\n this.query.set(\"$search\", query);\r\n return this;\r\n };\r\n return _GraphQueryableSearchableCollection;\r\n}(_GraphQueryableCollection));\r\nexport { _GraphQueryableSearchableCollection };\r\nexport var GraphQueryableSearchableCollection = graphInvokableFactory(_GraphQueryableSearchableCollection);\r\n/**\r\n * Represents an instance that can be selected\r\n *\r\n */\r\nvar _GraphQueryableInstance = /** @class */ (function (_super) {\r\n __extends(_GraphQueryableInstance, _super);\r\n function _GraphQueryableInstance() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n return _GraphQueryableInstance;\r\n}(_GraphQueryable));\r\nexport { _GraphQueryableInstance };\r\nexport var GraphQueryableInstance = graphInvokableFactory(_GraphQueryableInstance);\r\n//# sourceMappingURL=graphqueryable.js.map","import { __awaiter, __decorate, __extends, __generator } from \"tslib\";\r\nimport { _SharePointQueryableInstance, _SharePointQueryableCollection, spInvokableFactory, } from \"../sharepointqueryable\";\r\nimport { spPost } from \"../operations.js\";\r\nimport { odataUrlFrom } from \"../odata.js\";\r\nimport { extractWebUrl } from \"../utils/extractweburl.js\";\r\nimport { File } from \"../files/types.js\";\r\nimport { tag } from \"../telemetry.js\";\r\nimport { Web } from \"../webs/index.js\";\r\nimport \"../items/index.js\";\r\nvar _AppCatalog = /** @class */ (function (_super) {\r\n __extends(_AppCatalog, _super);\r\n function _AppCatalog(baseUrl, path) {\r\n if (path === void 0) { path = \"_api/web/tenantappcatalog/AvailableApps\"; }\r\n return _super.call(this, extractWebUrl(typeof baseUrl === \"string\" ? baseUrl : baseUrl.toUrl()), path) || this;\r\n }\r\n /**\r\n * Get details of specific app from the app catalog\r\n * @param id - Specify the guid of the app\r\n */\r\n _AppCatalog.prototype.getAppById = function (id) {\r\n return tag.configure(App(this, \"getById('\" + id + \"')\").configureFrom(this), \"ac.getAppById\");\r\n };\r\n /**\r\n * Synchronize a solution to the Microsoft Teams App Catalog\r\n * @param id - Specify the guid of the app\r\n * @param useSharePointItemId (optional) - By default this REST call requires the SP Item id of the app, not the app id.\r\n * PnPjs will try to fetch the item id by default, you can still use this parameter to pass your own item id in the first parameter\r\n */\r\n _AppCatalog.prototype.syncSolutionToTeams = function (id, useSharePointItemId) {\r\n if (useSharePointItemId === void 0) { useSharePointItemId = false; }\r\n return __awaiter(this, void 0, void 0, function () {\r\n var appId, webUrl, web, listId, listItems, poster;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n appId = null;\r\n webUrl = extractWebUrl(this.toUrl());\r\n if (!useSharePointItemId) return [3 /*break*/, 1];\r\n appId = id;\r\n return [3 /*break*/, 4];\r\n case 1:\r\n web = Web(webUrl).configureFrom(this);\r\n return [4 /*yield*/, web.lists.select(\"Id\").filter(\"EntityTypeName eq 'AppCatalog'\")()];\r\n case 2:\r\n listId = (_a.sent())[0].Id;\r\n return [4 /*yield*/, web.lists.getById(listId).items.filter(\"AppProductID eq '\" + id + \"'\").top(1)()];\r\n case 3:\r\n listItems = _a.sent();\r\n if (listItems && listItems.length > 0) {\r\n appId = listItems[0].Id;\r\n }\r\n else {\r\n throw Error(\"Did not find the app with id \" + id + \" in the appcatalog.\");\r\n }\r\n _a.label = 4;\r\n case 4:\r\n poster = tag.configure(AppCatalog(webUrl, \"_api/web/tenantappcatalog/SyncSolutionToTeams(id=\" + appId + \")\"), \"ac.syncSolutionToTeams\");\r\n poster.configureFrom(this);\r\n return [4 /*yield*/, spPost(poster, {})];\r\n case 5: return [2 /*return*/, _a.sent()];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Uploads an app package. Not supported for batching\r\n *\r\n * @param filename Filename to create.\r\n * @param content app package data (eg: the .app or .sppkg file).\r\n * @param shouldOverWrite Should an app with the same name in the same location be overwritten? (default: true)\r\n * @returns Promise\r\n */\r\n _AppCatalog.prototype.add = function (filename, content, shouldOverWrite) {\r\n if (shouldOverWrite === void 0) { shouldOverWrite = true; }\r\n return __awaiter(this, void 0, void 0, function () {\r\n var adder, r;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n adder = tag.configure(AppCatalog(extractWebUrl(this.toUrl()), \"_api/web/tenantappcatalog/add(overwrite=\" + shouldOverWrite + \",url='\" + filename + \"')\"), \"ac.add\");\r\n adder.configureFrom(this);\r\n return [4 /*yield*/, spPost(adder, {\r\n body: content, headers: {\r\n \"binaryStringRequestBody\": \"true\",\r\n },\r\n })];\r\n case 1:\r\n r = _a.sent();\r\n return [2 /*return*/, {\r\n data: r,\r\n file: File(odataUrlFrom(r)),\r\n }];\r\n }\r\n });\r\n });\r\n };\r\n return _AppCatalog;\r\n}(_SharePointQueryableCollection));\r\nexport { _AppCatalog };\r\nexport var AppCatalog = spInvokableFactory(_AppCatalog);\r\nvar _App = /** @class */ (function (_super) {\r\n __extends(_App, _super);\r\n function _App() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n /**\r\n * This method deploys an app on the app catalog. It must be called in the context\r\n * of the tenant app catalog web or it will fail.\r\n *\r\n * @param skipFeatureDeployment Deploy the app to the entire tenant\r\n */\r\n _App.prototype.deploy = function (skipFeatureDeployment) {\r\n if (skipFeatureDeployment === void 0) { skipFeatureDeployment = false; }\r\n return this.do(\"Deploy(\" + skipFeatureDeployment + \")\");\r\n };\r\n /**\r\n * This method retracts a deployed app on the app catalog. It must be called in the context\r\n * of the tenant app catalog web or it will fail.\r\n */\r\n _App.prototype.retract = function () {\r\n return this.do(\"Retract\");\r\n };\r\n /**\r\n * This method allows an app which is already deployed to be installed on a web\r\n */\r\n _App.prototype.install = function () {\r\n return this.do(\"Install\");\r\n };\r\n /**\r\n * This method allows an app which is already installed to be uninstalled on a web\r\n * Note: when you use the REST API to uninstall a solution package from the site, it is not relocated to the recycle bin\r\n */\r\n _App.prototype.uninstall = function () {\r\n return this.do(\"Uninstall\");\r\n };\r\n /**\r\n * This method allows an app which is already installed to be upgraded on a web\r\n */\r\n _App.prototype.upgrade = function () {\r\n return this.do(\"Upgrade\");\r\n };\r\n /**\r\n * This method removes an app from the app catalog. It must be called in the context\r\n * of the tenant app catalog web or it will fail.\r\n */\r\n _App.prototype.remove = function () {\r\n return this.do(\"Remove\");\r\n };\r\n _App.prototype.do = function (path) {\r\n return spPost(this.clone(App, path));\r\n };\r\n __decorate([\r\n tag(\"app.deploy\")\r\n ], _App.prototype, \"deploy\", null);\r\n __decorate([\r\n tag(\"app.retract\")\r\n ], _App.prototype, \"retract\", null);\r\n __decorate([\r\n tag(\"app.install\")\r\n ], _App.prototype, \"install\", null);\r\n __decorate([\r\n tag(\"app.uninstall\")\r\n ], _App.prototype, \"uninstall\", null);\r\n __decorate([\r\n tag(\"app.upgrade\")\r\n ], _App.prototype, \"upgrade\", null);\r\n __decorate([\r\n tag(\"app.remove\")\r\n ], _App.prototype, \"remove\", null);\r\n return _App;\r\n}(_SharePointQueryableInstance));\r\nexport { _App };\r\nexport var App = spInvokableFactory(_App);\r\n//# sourceMappingURL=types.js.map","import { _Web } from \"../webs/types.js\";\r\nimport { AppCatalog } from \"./types.js\";\r\n_Web.prototype.getAppCatalog = function (url) {\r\n return AppCatalog(url || this).configureFrom(this);\r\n};\r\n//# sourceMappingURL=web.js.map","import { __awaiter, __generator } from \"tslib\";\r\nimport { SPRest } from \"../rest.js\";\r\nimport { Web } from \"../webs/types.js\";\r\nimport \"./web.js\";\r\nimport { SharePointQueryable } from \"../sharepointqueryable.js\";\r\nexport { App, AppCatalog, } from \"./types.js\";\r\nSPRest.prototype.getTenantAppCatalogWeb = function () {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var _this = this;\r\n return __generator(this, function (_a) {\r\n return [2 /*return*/, this.childConfigHook(function (_a) {\r\n var options = _a.options, runtime = _a.runtime;\r\n return __awaiter(_this, void 0, void 0, function () {\r\n var data;\r\n return __generator(this, function (_b) {\r\n switch (_b.label) {\r\n case 0: return [4 /*yield*/, SharePointQueryable(\"/\", \"_api/SP_TenantSettings_Current\").configure(options).setRuntime(runtime)()];\r\n case 1:\r\n data = _b.sent();\r\n return [2 /*return*/, Web(data.CorporateCatalogUrl).configure(options).setRuntime(runtime)];\r\n }\r\n });\r\n });\r\n })];\r\n });\r\n });\r\n};\r\n//# sourceMappingURL=index.js.map","import { __awaiter, __decorate, __extends, __generator } from \"tslib\";\r\nimport { defaultPath } from \"../decorators.js\";\r\nimport { spPost } from \"../operations.js\";\r\nimport { _SharePointQueryableInstance, _SharePointQueryableCollection, spInvokableFactory, deleteableWithETag, } from \"../sharepointqueryable.js\";\r\nimport { TextParser, BlobParser, JSONParser, BufferParser, headers } from \"@pnp/odata\";\r\nimport { tag } from \"../telemetry.js\";\r\nvar _Attachments = /** @class */ (function (_super) {\r\n __extends(_Attachments, _super);\r\n function _Attachments() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n /**\r\n * Gets a Attachment File by filename\r\n *\r\n * @param name The name of the file, including extension.\r\n */\r\n _Attachments.prototype.getByName = function (name) {\r\n var f = tag.configure(Attachment(this), \"ats.getByName\");\r\n f.concat(\"('\" + name + \"')\");\r\n return f;\r\n };\r\n /**\r\n * Adds a new attachment to the collection. Not supported for batching.\r\n *\r\n * @param name The name of the file, including extension.\r\n * @param content The Base64 file content.\r\n */\r\n _Attachments.prototype.add = function (name, content) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var response;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0: return [4 /*yield*/, spPost(this.clone(Attachments, \"add(FileName='\" + name + \"')\", false), { body: content })];\r\n case 1:\r\n response = _a.sent();\r\n return [2 /*return*/, {\r\n data: response,\r\n file: this.getByName(name),\r\n }];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Adds multiple new attachment to the collection. Not supported for batching.\r\n *\r\n * @param files The collection of files to add\r\n */\r\n _Attachments.prototype.addMultiple = function (files) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var i;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n i = 0;\r\n _a.label = 1;\r\n case 1:\r\n if (!(i < files.length)) return [3 /*break*/, 4];\r\n return [4 /*yield*/, this.add(files[i].name, files[i].content)];\r\n case 2:\r\n _a.sent();\r\n _a.label = 3;\r\n case 3:\r\n i++;\r\n return [3 /*break*/, 1];\r\n case 4: return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Delete multiple attachments from the collection. Not supported for batching.\r\n *\r\n * @param files The collection of files to delete\r\n */\r\n _Attachments.prototype.deleteMultiple = function () {\r\n var files = [];\r\n for (var _i = 0; _i < arguments.length; _i++) {\r\n files[_i] = arguments[_i];\r\n }\r\n return __awaiter(this, void 0, void 0, function () {\r\n var i;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n i = 0;\r\n _a.label = 1;\r\n case 1:\r\n if (!(i < files.length)) return [3 /*break*/, 4];\r\n return [4 /*yield*/, this.getByName(files[i]).delete()];\r\n case 2:\r\n _a.sent();\r\n _a.label = 3;\r\n case 3:\r\n i++;\r\n return [3 /*break*/, 1];\r\n case 4: return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Delete multiple attachments from the collection and send to recycle bin. Not supported for batching.\r\n *\r\n * @param files The collection of files to be deleted and sent to recycle bin\r\n */\r\n _Attachments.prototype.recycleMultiple = function () {\r\n var files = [];\r\n for (var _i = 0; _i < arguments.length; _i++) {\r\n files[_i] = arguments[_i];\r\n }\r\n return __awaiter(this, void 0, void 0, function () {\r\n var i;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n i = 0;\r\n _a.label = 1;\r\n case 1:\r\n if (!(i < files.length)) return [3 /*break*/, 4];\r\n return [4 /*yield*/, this.getByName(files[i]).recycle()];\r\n case 2:\r\n _a.sent();\r\n _a.label = 3;\r\n case 3:\r\n i++;\r\n return [3 /*break*/, 1];\r\n case 4: return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n __decorate([\r\n tag(\"ats.add\")\r\n ], _Attachments.prototype, \"add\", null);\r\n __decorate([\r\n tag(\"ats.addMultiple\")\r\n ], _Attachments.prototype, \"addMultiple\", null);\r\n __decorate([\r\n tag(\"ats.deleteMultiple\")\r\n ], _Attachments.prototype, \"deleteMultiple\", null);\r\n __decorate([\r\n tag(\"ats.recycleMultiple\")\r\n ], _Attachments.prototype, \"recycleMultiple\", null);\r\n _Attachments = __decorate([\r\n defaultPath(\"AttachmentFiles\")\r\n ], _Attachments);\r\n return _Attachments;\r\n}(_SharePointQueryableCollection));\r\nexport { _Attachments };\r\nexport var Attachments = spInvokableFactory(_Attachments);\r\nvar _Attachment = /** @class */ (function (_super) {\r\n __extends(_Attachment, _super);\r\n function _Attachment() {\r\n var _this = _super !== null && _super.apply(this, arguments) || this;\r\n _this.delete = deleteableWithETag(\"at\");\r\n return _this;\r\n }\r\n /**\r\n * Gets the contents of the file as text\r\n *\r\n */\r\n _Attachment.prototype.getText = function () {\r\n return this.getParsed(new TextParser());\r\n };\r\n /**\r\n * Gets the contents of the file as a blob, does not work in Node.js\r\n *\r\n */\r\n _Attachment.prototype.getBlob = function () {\r\n return this.getParsed(new BlobParser());\r\n };\r\n /**\r\n * Gets the contents of a file as an ArrayBuffer, works in Node.js\r\n */\r\n _Attachment.prototype.getBuffer = function () {\r\n return this.getParsed(new BufferParser());\r\n };\r\n /**\r\n * Gets the contents of a file as an ArrayBuffer, works in Node.js\r\n */\r\n _Attachment.prototype.getJSON = function () {\r\n return this.getParsed(new JSONParser());\r\n };\r\n /**\r\n * Sets the content of a file. Not supported for batching\r\n *\r\n * @param content The value to set for the file contents\r\n */\r\n _Attachment.prototype.setContent = function (content) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0: return [4 /*yield*/, spPost(this.clone(Attachment, \"$value\", false), headers({ \"X-HTTP-Method\": \"PUT\" }, {\r\n body: content,\r\n }))];\r\n case 1:\r\n _a.sent();\r\n return [2 /*return*/, Attachment(this)];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Delete this attachment file and send it to recycle bin\r\n *\r\n * @param eTag Value used in the IF-Match header, by default \"*\"\r\n */\r\n _Attachment.prototype.recycle = function (eTag) {\r\n if (eTag === void 0) { eTag = \"*\"; }\r\n return spPost(this.clone(Attachment, \"recycleObject\"), headers({\r\n \"IF-Match\": eTag,\r\n \"X-HTTP-Method\": \"DELETE\",\r\n }));\r\n };\r\n _Attachment.prototype.getParsed = function (parser) {\r\n return this.clone(Attachment, \"$value\", false).usingParser(parser)();\r\n };\r\n __decorate([\r\n tag(\"at.getText\")\r\n ], _Attachment.prototype, \"getText\", null);\r\n __decorate([\r\n tag(\"at.getBlob\")\r\n ], _Attachment.prototype, \"getBlob\", null);\r\n __decorate([\r\n tag(\"at.getBuffer\")\r\n ], _Attachment.prototype, \"getBuffer\", null);\r\n __decorate([\r\n tag(\"at.getJSON\")\r\n ], _Attachment.prototype, \"getJSON\", null);\r\n __decorate([\r\n tag(\"at.setContent\")\r\n ], _Attachment.prototype, \"setContent\", null);\r\n __decorate([\r\n tag(\"at.recycle\")\r\n ], _Attachment.prototype, \"recycle\", null);\r\n return _Attachment;\r\n}(_SharePointQueryableInstance));\r\nexport { _Attachment };\r\nexport var Attachment = spInvokableFactory(_Attachment);\r\n//# sourceMappingURL=types.js.map","import { hOP } from \"@pnp/common\";\r\n/**\r\n * Gets the next order value 1 based for the provided collection\r\n *\r\n * @param collection Collection of orderable things\r\n */\r\nexport function getNextOrder(collection) {\r\n return collection.length < 1 ? 1 : (Math.max.apply(null, collection.map(function (i) { return i.order; })) + 1);\r\n}\r\n/**\r\n * Normalizes the order value for all the sections, columns, and controls to be 1 based and stepped (1, 2, 3...)\r\n *\r\n * @param collection The collection to normalize\r\n */\r\nexport function reindex(collection) {\r\n for (var i = 0; i < collection.length; i++) {\r\n collection[i].order = i + 1;\r\n if (hOP(collection[i], \"columns\")) {\r\n reindex(collection[i].columns);\r\n }\r\n else if (hOP(collection[i], \"controls\")) {\r\n reindex(collection[i].controls);\r\n }\r\n }\r\n}\r\n//# sourceMappingURL=funcs.js.map","import { addProp } from \"@pnp/odata\";\r\nimport { _Item } from \"../items/types.js\";\r\nimport { Attachments } from \"./types.js\";\r\naddProp(_Item, \"attachmentFiles\", Attachments);\r\n//# sourceMappingURL=item.js.map","import { _Web } from \"../webs/types.js\";\r\nimport { File } from \"./types.js\";\r\nimport { escapeQueryStrValue } from \"../utils/escapeQueryStrValue.js\";\r\n_Web.prototype.getFileByServerRelativeUrl = function (fileRelativeUrl) {\r\n return File(this, \"getFileByServerRelativeUrl('\" + escapeQueryStrValue(fileRelativeUrl) + \"')\");\r\n};\r\n_Web.prototype.getFileByServerRelativePath = function (fileRelativeUrl) {\r\n return File(this, \"getFileByServerRelativePath(decodedUrl='\" + escapeQueryStrValue(fileRelativeUrl) + \"')\");\r\n};\r\n_Web.prototype.getFileById = function (uniqueId) {\r\n return File(this, \"getFileById('\" + uniqueId + \"')\");\r\n};\r\n_Web.prototype.getFileByUrl = function (fileUrl) {\r\n return File(this, \"getFileByUrl('!@p1::\" + escapeQueryStrValue(fileUrl) + \"')\");\r\n};\r\n//# sourceMappingURL=web.js.map","import { __awaiter, __decorate, __extends, __generator } from \"tslib\";\r\nimport { defaultPath } from \"../decorators.js\";\r\nimport { _SharePointQueryableInstance, _SharePointQueryableCollection, spInvokableFactory, } from \"../sharepointqueryable.js\";\r\nimport { assign } from \"@pnp/common\";\r\nimport { odataUrlFrom } from \"../odata.js\";\r\nimport { metadata } from \"../utils/metadata.js\";\r\nimport { body } from \"@pnp/odata\";\r\nimport { spPost } from \"../operations.js\";\r\nimport { tag } from \"../telemetry.js\";\r\nvar _Comments = /** @class */ (function (_super) {\r\n __extends(_Comments, _super);\r\n function _Comments() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n /**\r\n * Adds a new comment to this collection\r\n *\r\n * @param info Comment information to add\r\n */\r\n _Comments.prototype.add = function (info) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var postBody, d;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n if (typeof info === \"string\") {\r\n info = { text: info };\r\n }\r\n postBody = body(assign(metadata(\"Microsoft.SharePoint.Comments.comment\"), info));\r\n return [4 /*yield*/, spPost(this.clone(Comments, null), postBody)];\r\n case 1:\r\n d = _a.sent();\r\n return [2 /*return*/, assign(this.getById(d.id), d)];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Gets a comment by id\r\n *\r\n * @param id Id of the comment to load\r\n */\r\n _Comments.prototype.getById = function (id) {\r\n return tag.configure(Comment(this).concat(\"(\" + id + \")\"), \"coms.getById\");\r\n };\r\n /**\r\n * Deletes all the comments in this collection\r\n */\r\n _Comments.prototype.clear = function () {\r\n return spPost(tag.configure(this.clone(Comments, \"DeleteAll\"), \"coms.clear\"));\r\n };\r\n __decorate([\r\n tag(\"coms.add\")\r\n ], _Comments.prototype, \"add\", null);\r\n _Comments = __decorate([\r\n defaultPath(\"comments\")\r\n ], _Comments);\r\n return _Comments;\r\n}(_SharePointQueryableCollection));\r\nexport { _Comments };\r\nexport var Comments = spInvokableFactory(_Comments);\r\nvar _Comment = /** @class */ (function (_super) {\r\n __extends(_Comment, _super);\r\n function _Comment() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n Object.defineProperty(_Comment.prototype, \"replies\", {\r\n /**\r\n * A comment's replies\r\n */\r\n get: function () {\r\n return tag.configure(Replies(this), \"com.replies\");\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n /**\r\n * Likes the comment as the current user\r\n */\r\n _Comment.prototype.like = function () {\r\n return spPost(this.clone(Comment, \"Like\"));\r\n };\r\n /**\r\n * Unlikes the comment as the current user\r\n */\r\n _Comment.prototype.unlike = function () {\r\n return spPost(this.clone(Comment, \"Unlike\"));\r\n };\r\n /**\r\n * Deletes this comment\r\n */\r\n _Comment.prototype.delete = function () {\r\n return spPost(this.clone(Comment, \"DeleteComment\"));\r\n };\r\n __decorate([\r\n tag(\"com.like\")\r\n ], _Comment.prototype, \"like\", null);\r\n __decorate([\r\n tag(\"com.unlike\")\r\n ], _Comment.prototype, \"unlike\", null);\r\n __decorate([\r\n tag(\"com.delete\")\r\n ], _Comment.prototype, \"delete\", null);\r\n return _Comment;\r\n}(_SharePointQueryableInstance));\r\nexport { _Comment };\r\nexport var Comment = spInvokableFactory(_Comment);\r\nvar _Replies = /** @class */ (function (_super) {\r\n __extends(_Replies, _super);\r\n function _Replies() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n /**\r\n * Adds a new reply to this collection\r\n *\r\n * @param info Comment information to add\r\n */\r\n _Replies.prototype.add = function (info) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var postBody, d;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n if (typeof info === \"string\") {\r\n info = { text: info };\r\n }\r\n postBody = body(assign(metadata(\"Microsoft.SharePoint.Comments.comment\"), info));\r\n return [4 /*yield*/, spPost(this.clone(Replies, null), postBody)];\r\n case 1:\r\n d = _a.sent();\r\n return [2 /*return*/, assign(Comment(odataUrlFrom(d)), d)];\r\n }\r\n });\r\n });\r\n };\r\n __decorate([\r\n tag(\"reps.add\")\r\n ], _Replies.prototype, \"add\", null);\r\n _Replies = __decorate([\r\n defaultPath(\"replies\")\r\n ], _Replies);\r\n return _Replies;\r\n}(_SharePointQueryableCollection));\r\nexport { _Replies };\r\nexport var Replies = spInvokableFactory(_Replies);\r\n//# sourceMappingURL=types.js.map","import { __awaiter, __decorate, __extends, __generator, __read, __spreadArray } from \"tslib\";\r\nimport { invokableFactory, body, headers } from \"@pnp/odata\";\r\nimport { assign, getGUID, hOP, stringIsNullOrEmpty, objectDefinedNotNull, combine, isUrlAbsolute, isArray } from \"@pnp/common\";\r\nimport { Item } from \"../items/types.js\";\r\nimport { SharePointQueryable, _SharePointQueryable, SharePointQueryableCollection } from \"../sharepointqueryable.js\";\r\nimport { metadata } from \"../utils/metadata.js\";\r\nimport { List } from \"../lists/types.js\";\r\nimport { odataUrlFrom } from \"../odata.js\";\r\nimport { Web } from \"../webs/types.js\";\r\nimport { extractWebUrl } from \"../utils/extractweburl.js\";\r\nimport { Site } from \"../sites/types.js\";\r\nimport { spPost } from \"../operations.js\";\r\nimport { getNextOrder, reindex } from \"./funcs.js\";\r\nimport \"../files/web.js\";\r\nimport \"../comments/item.js\";\r\nimport { tag } from \"../telemetry.js\";\r\n/**\r\n * Page promotion state\r\n */\r\nexport var PromotedState;\r\n(function (PromotedState) {\r\n /**\r\n * Regular client side page\r\n */\r\n PromotedState[PromotedState[\"NotPromoted\"] = 0] = \"NotPromoted\";\r\n /**\r\n * Page that will be promoted as news article after publishing\r\n */\r\n PromotedState[PromotedState[\"PromoteOnPublish\"] = 1] = \"PromoteOnPublish\";\r\n /**\r\n * Page that is promoted as news article\r\n */\r\n PromotedState[PromotedState[\"Promoted\"] = 2] = \"Promoted\";\r\n})(PromotedState || (PromotedState = {}));\r\nfunction initFrom(o, url) {\r\n return ClientsidePage(extractWebUrl(o.toUrl()), url).configureFrom(o);\r\n}\r\n/**\r\n * Represents the data and methods associated with client side \"modern\" pages\r\n */\r\nvar _ClientsidePage = /** @class */ (function (_super) {\r\n __extends(_ClientsidePage, _super);\r\n /**\r\n * PLEASE DON'T USE THIS CONSTRUCTOR DIRECTLY, thank you 🐇\r\n */\r\n function _ClientsidePage(baseUrl, path, json, noInit, sections, commentsDisabled) {\r\n if (noInit === void 0) { noInit = false; }\r\n if (sections === void 0) { sections = []; }\r\n if (commentsDisabled === void 0) { commentsDisabled = false; }\r\n var _this = _super.call(this, baseUrl, path) || this;\r\n _this.json = json;\r\n _this.sections = sections;\r\n _this.commentsDisabled = commentsDisabled;\r\n _this._bannerImageDirty = false;\r\n _this._bannerImageThumbnailUrlDirty = false;\r\n // ensure we have a good url to build on for the pages api\r\n if (typeof baseUrl === \"string\") {\r\n _this.data.parentUrl = \"\";\r\n _this.data.url = combine(extractWebUrl(baseUrl), path);\r\n }\r\n else {\r\n _this.assign(initFrom(baseUrl, null), path);\r\n }\r\n // set a default page settings slice\r\n _this._pageSettings = { controlType: 0, pageSettingsSlice: { isDefaultDescription: true, isDefaultThumbnail: true } };\r\n // set a default layout part\r\n _this._layoutPart = _ClientsidePage.getDefaultLayoutPart();\r\n if (typeof json !== \"undefined\" && !noInit) {\r\n _this.fromJSON(json);\r\n }\r\n return _this;\r\n }\r\n _ClientsidePage.getDefaultLayoutPart = function () {\r\n return {\r\n dataVersion: \"1.4\",\r\n description: \"Title Region Description\",\r\n id: \"cbe7b0a9-3504-44dd-a3a3-0e5cacd07788\",\r\n instanceId: \"cbe7b0a9-3504-44dd-a3a3-0e5cacd07788\",\r\n properties: {\r\n authorByline: [],\r\n authors: [],\r\n layoutType: \"FullWidthImage\",\r\n showPublishDate: false,\r\n showTopicHeader: false,\r\n textAlignment: \"Left\",\r\n title: \"\",\r\n topicHeader: \"\",\r\n },\r\n reservedHeight: 280,\r\n serverProcessedContent: { htmlStrings: {}, searchablePlainTexts: {}, imageSources: {}, links: {} },\r\n title: \"Title area\",\r\n };\r\n };\r\n Object.defineProperty(_ClientsidePage.prototype, \"pageLayout\", {\r\n get: function () {\r\n return this.json.PageLayoutType;\r\n },\r\n set: function (value) {\r\n this.json.PageLayoutType = value;\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n Object.defineProperty(_ClientsidePage.prototype, \"bannerImageUrl\", {\r\n get: function () {\r\n return this.json.BannerImageUrl;\r\n },\r\n set: function (value) {\r\n this.setBannerImage(value);\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n Object.defineProperty(_ClientsidePage.prototype, \"thumbnailUrl\", {\r\n get: function () {\r\n return this._pageSettings.pageSettingsSlice.isDefaultThumbnail ? this.json.BannerImageUrl : this.json.BannerThumbnailUrl;\r\n },\r\n set: function (value) {\r\n this.json.BannerThumbnailUrl = value;\r\n this._bannerImageThumbnailUrlDirty = true;\r\n this._pageSettings.pageSettingsSlice.isDefaultThumbnail = false;\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n Object.defineProperty(_ClientsidePage.prototype, \"topicHeader\", {\r\n get: function () {\r\n return objectDefinedNotNull(this.json.TopicHeader) ? this.json.TopicHeader : \"\";\r\n },\r\n set: function (value) {\r\n this.json.TopicHeader = value;\r\n this._layoutPart.properties.topicHeader = value;\r\n if (stringIsNullOrEmpty(value)) {\r\n this.showTopicHeader = false;\r\n }\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n Object.defineProperty(_ClientsidePage.prototype, \"title\", {\r\n get: function () {\r\n return this._layoutPart.properties.title;\r\n },\r\n set: function (value) {\r\n this.json.Title = value;\r\n this._layoutPart.properties.title = value;\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n Object.defineProperty(_ClientsidePage.prototype, \"reservedHeight\", {\r\n get: function () {\r\n return this._layoutPart.reservedHeight;\r\n },\r\n set: function (value) {\r\n this._layoutPart.reservedHeight = value;\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n Object.defineProperty(_ClientsidePage.prototype, \"description\", {\r\n get: function () {\r\n return this.json.Description;\r\n },\r\n set: function (value) {\r\n if (!stringIsNullOrEmpty(value) && value.length > 255) {\r\n throw Error(\"Modern Page description is limited to 255 chars.\");\r\n }\r\n this.json.Description = value;\r\n if (!hOP(this._pageSettings, \"htmlAttributes\")) {\r\n this._pageSettings.htmlAttributes = [];\r\n }\r\n if (this._pageSettings.htmlAttributes.indexOf(\"modifiedDescription\") < 0) {\r\n this._pageSettings.htmlAttributes.push(\"modifiedDescription\");\r\n }\r\n this._pageSettings.pageSettingsSlice.isDefaultDescription = false;\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n Object.defineProperty(_ClientsidePage.prototype, \"layoutType\", {\r\n get: function () {\r\n return this._layoutPart.properties.layoutType;\r\n },\r\n set: function (value) {\r\n this._layoutPart.properties.layoutType = value;\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n Object.defineProperty(_ClientsidePage.prototype, \"headerTextAlignment\", {\r\n get: function () {\r\n return this._layoutPart.properties.textAlignment;\r\n },\r\n set: function (value) {\r\n this._layoutPart.properties.textAlignment = value;\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n Object.defineProperty(_ClientsidePage.prototype, \"showTopicHeader\", {\r\n get: function () {\r\n return this._layoutPart.properties.showTopicHeader;\r\n },\r\n set: function (value) {\r\n this._layoutPart.properties.showTopicHeader = value;\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n Object.defineProperty(_ClientsidePage.prototype, \"showPublishDate\", {\r\n get: function () {\r\n return this._layoutPart.properties.showPublishDate;\r\n },\r\n set: function (value) {\r\n this._layoutPart.properties.showPublishDate = value;\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n Object.defineProperty(_ClientsidePage.prototype, \"hasVerticalSection\", {\r\n get: function () {\r\n return this.sections.findIndex(function (s) { return s.layoutIndex === 2; }) > -1;\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n Object.defineProperty(_ClientsidePage.prototype, \"authorByLine\", {\r\n get: function () {\r\n if (isArray(this._layoutPart.properties.authorByline) && this._layoutPart.properties.authorByline.length > 0) {\r\n return this._layoutPart.properties.authorByline[0];\r\n }\r\n return null;\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n Object.defineProperty(_ClientsidePage.prototype, \"verticalSection\", {\r\n get: function () {\r\n if (this.hasVerticalSection) {\r\n return this.addVerticalSection();\r\n }\r\n return null;\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n /**\r\n * Add a section to this page\r\n */\r\n _ClientsidePage.prototype.addSection = function () {\r\n var section = new CanvasSection(this, getNextOrder(this.sections), 1);\r\n this.sections.push(section);\r\n return section;\r\n };\r\n /**\r\n * Add a section to this page\r\n */\r\n _ClientsidePage.prototype.addVerticalSection = function () {\r\n // we can only have one vertical section so we find it if it exists\r\n var sectionIndex = this.sections.findIndex(function (s) { return s.layoutIndex === 2; });\r\n if (sectionIndex > -1) {\r\n return this.sections[sectionIndex];\r\n }\r\n var section = new CanvasSection(this, getNextOrder(this.sections), 2);\r\n this.sections.push(section);\r\n return section;\r\n };\r\n /**\r\n * Loads this instance from the appropriate JSON data\r\n *\r\n * @param pageData JSON data to load (replaces any existing data)\r\n */\r\n _ClientsidePage.prototype.fromJSON = function (pageData) {\r\n this.json = pageData;\r\n var canvasControls = JSON.parse(pageData.CanvasContent1);\r\n var layouts = JSON.parse(pageData.LayoutWebpartsContent);\r\n if (layouts && layouts.length > 0) {\r\n this._layoutPart = layouts[0];\r\n }\r\n this.setControls(canvasControls);\r\n return this;\r\n };\r\n /**\r\n * Loads this page's content from the server\r\n */\r\n _ClientsidePage.prototype.load = function () {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var item, pageData;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0: return [4 /*yield*/, this.getItem(\"Id\", \"CommentsDisabled\")];\r\n case 1:\r\n item = _a.sent();\r\n return [4 /*yield*/, SharePointQueryable(this, \"_api/sitepages/pages(\" + item.Id + \")\")()];\r\n case 2:\r\n pageData = _a.sent();\r\n this.commentsDisabled = item.CommentsDisabled;\r\n return [2 /*return*/, this.fromJSON(pageData)];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Persists the content changes (sections, columns, and controls) [does not work with batching]\r\n *\r\n * @param publish If true the page is published, if false the changes are persisted to SharePoint but not published [Default: true]\r\n */\r\n _ClientsidePage.prototype.save = function (publish) {\r\n if (publish === void 0) { publish = true; }\r\n return __awaiter(this, void 0, void 0, function () {\r\n var serverRelativePath, imgInfo_1, webUrl_1, web, batch, f, saveBody, bannerImageUrlValue, updater, r;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n if (this.json.Id === null) {\r\n throw Error(\"The id for this page is null. If you want to create a new page, please use ClientSidePage.Create\");\r\n }\r\n if (!this._bannerImageDirty) return [3 /*break*/, 2];\r\n serverRelativePath = this.bannerImageUrl;\r\n web = Web(extractWebUrl(this.toUrl())).configureFrom(this);\r\n batch = web.createBatch();\r\n web.getFileByServerRelativePath(serverRelativePath.replace(/%20/ig, \" \"))\r\n .select(\"ListId\", \"WebId\", \"UniqueId\", \"Name\", \"SiteId\").inBatch(batch)().then(function (r1) { return imgInfo_1 = r1; });\r\n web.select(\"Url\").inBatch(batch)().then(function (r2) { return webUrl_1 = r2.Url; });\r\n // we know the .then calls above will run before execute resolves, ensuring the vars are set\r\n return [4 /*yield*/, batch.execute()];\r\n case 1:\r\n // we know the .then calls above will run before execute resolves, ensuring the vars are set\r\n _a.sent();\r\n f = SharePointQueryable(webUrl_1, \"_layouts/15/getpreview.ashx\");\r\n f.query.set(\"guidSite\", \"\" + imgInfo_1.SiteId);\r\n f.query.set(\"guidWeb\", \"\" + imgInfo_1.WebId);\r\n f.query.set(\"guidFile\", \"\" + imgInfo_1.UniqueId);\r\n this.bannerImageUrl = f.toUrlAndQuery();\r\n if (!objectDefinedNotNull(this._layoutPart.serverProcessedContent)) {\r\n this._layoutPart.serverProcessedContent = {};\r\n }\r\n this._layoutPart.serverProcessedContent.imageSources = { imageSource: serverRelativePath };\r\n if (!objectDefinedNotNull(this._layoutPart.serverProcessedContent.customMetadata)) {\r\n this._layoutPart.serverProcessedContent.customMetadata = {};\r\n }\r\n this._layoutPart.serverProcessedContent.customMetadata.imageSource = {\r\n listId: imgInfo_1.ListId,\r\n siteId: imgInfo_1.SiteId,\r\n uniqueId: imgInfo_1.UniqueId,\r\n webId: imgInfo_1.WebId,\r\n };\r\n this._layoutPart.properties.webId = imgInfo_1.WebId;\r\n this._layoutPart.properties.siteId = imgInfo_1.SiteId;\r\n this._layoutPart.properties.listId = imgInfo_1.ListId;\r\n this._layoutPart.properties.uniqueId = imgInfo_1.UniqueId;\r\n _a.label = 2;\r\n case 2:\r\n if (!!this.json.IsPageCheckedOutToCurrentUser) return [3 /*break*/, 4];\r\n return [4 /*yield*/, spPost(initFrom(this, \"_api/sitepages/pages(\" + this.json.Id + \")/checkoutpage\"))];\r\n case 3:\r\n _a.sent();\r\n _a.label = 4;\r\n case 4:\r\n saveBody = Object.assign(metadata(\"SP.Publishing.SitePage\"), {\r\n AuthorByline: this.json.AuthorByline || [],\r\n CanvasContent1: this.getCanvasContent1(),\r\n Description: this.description,\r\n LayoutWebpartsContent: this.getLayoutWebpartsContent(),\r\n Title: this.title,\r\n TopicHeader: this.topicHeader,\r\n });\r\n if (this._bannerImageDirty || this._bannerImageThumbnailUrlDirty) {\r\n bannerImageUrlValue = this._bannerImageThumbnailUrlDirty ? this.thumbnailUrl : this.bannerImageUrl;\r\n saveBody = assign(saveBody, {\r\n BannerImageUrl: bannerImageUrlValue,\r\n });\r\n }\r\n updater = initFrom(this, \"_api/sitepages/pages(\" + this.json.Id + \")/savepage\");\r\n return [4 /*yield*/, spPost(updater, headers({ \"if-match\": \"*\" }, body(saveBody)))];\r\n case 5:\r\n _a.sent();\r\n r = true;\r\n if (!publish) return [3 /*break*/, 7];\r\n return [4 /*yield*/, spPost(initFrom(this, \"_api/sitepages/pages(\" + this.json.Id + \")/publish\"))];\r\n case 6:\r\n r = _a.sent();\r\n if (r) {\r\n this.json.IsPageCheckedOutToCurrentUser = false;\r\n }\r\n _a.label = 7;\r\n case 7:\r\n this._bannerImageDirty = false;\r\n this._bannerImageThumbnailUrlDirty = false;\r\n return [2 /*return*/, r];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Discards the checkout of this page\r\n */\r\n _ClientsidePage.prototype.discardPageCheckout = function () {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var d;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n if (this.json.Id === null) {\r\n throw Error(\"The id for this page is null. If you want to create a new page, please use ClientSidePage.Create\");\r\n }\r\n return [4 /*yield*/, spPost(initFrom(this, \"_api/sitepages/pages(\" + this.json.Id + \")/discardPage\"), body(metadata(\"SP.Publishing.SitePage\")))];\r\n case 1:\r\n d = _a.sent();\r\n this.fromJSON(d);\r\n return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Promotes this page as a news item\r\n */\r\n _ClientsidePage.prototype.promoteToNews = function () {\r\n return __awaiter(this, void 0, void 0, function () {\r\n return __generator(this, function (_a) {\r\n return [2 /*return*/, this.promoteNewsImpl(\"promoteToNews\")];\r\n });\r\n });\r\n };\r\n // API is currently broken on server side\r\n // public async demoteFromNews(): Promise {\r\n // return this.promoteNewsImpl(\"demoteFromNews\");\r\n // }\r\n /**\r\n * Finds a control by the specified instance id\r\n *\r\n * @param id Instance id of the control to find\r\n */\r\n _ClientsidePage.prototype.findControlById = function (id) {\r\n return this.findControl(function (c) { return c.id === id; });\r\n };\r\n /**\r\n * Finds a control within this page's control tree using the supplied predicate\r\n *\r\n * @param predicate Takes a control and returns true or false, if true that control is returned by findControl\r\n */\r\n _ClientsidePage.prototype.findControl = function (predicate) {\r\n // check all sections\r\n for (var i = 0; i < this.sections.length; i++) {\r\n // check all columns\r\n for (var j = 0; j < this.sections[i].columns.length; j++) {\r\n // check all controls\r\n for (var k = 0; k < this.sections[i].columns[j].controls.length; k++) {\r\n // check to see if the predicate likes this control\r\n if (predicate(this.sections[i].columns[j].controls[k])) {\r\n return this.sections[i].columns[j].controls[k];\r\n }\r\n }\r\n }\r\n }\r\n // we found nothing so give nothing back\r\n return null;\r\n };\r\n /**\r\n * Creates a new page with all of the content copied from this page\r\n *\r\n * @param web The web where we will create the copy\r\n * @param pageName The file name of the new page\r\n * @param title The title of the new page\r\n * @param publish If true the page will be published (Default: true)\r\n */\r\n _ClientsidePage.prototype.copy = function (web, pageName, title, publish, promotedState) {\r\n if (publish === void 0) { publish = true; }\r\n return __awaiter(this, void 0, void 0, function () {\r\n var page;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0: return [4 /*yield*/, CreateClientsidePage(web, pageName, title, this.pageLayout, promotedState)];\r\n case 1:\r\n page = _a.sent();\r\n return [2 /*return*/, this.copyTo(page, publish)];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Copies the content from this page to the supplied page instance NOTE: fully overwriting any previous content!!\r\n *\r\n * @param page Page whose content we replace with this page's content\r\n * @param publish If true the page will be published after the copy, if false it will be saved but left unpublished (Default: true)\r\n */\r\n _ClientsidePage.prototype.copyTo = function (page, publish) {\r\n if (publish === void 0) { publish = true; }\r\n return __awaiter(this, void 0, void 0, function () {\r\n var url, makeGuid, guidSite, guidWeb, guidFile, site, id, openWeb, file, props;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n // we know the method is on the class - but it is protected so not part of the interface\r\n page.setControls(this.getControls());\r\n if (!!stringIsNullOrEmpty(this.json.BannerImageUrl)) return [3 /*break*/, 4];\r\n url = new URL(this.json.BannerImageUrl);\r\n makeGuid = function (s) { return s.replace(/(.{8})(.{4})(.{4})(.{4})(.{12})/g, \"$1-$2-$3-$4-$5\"); };\r\n if (!(url.searchParams.has(\"guidSite\") && url.searchParams.has(\"guidWeb\") && url.searchParams.has(\"guidFile\"))) return [3 /*break*/, 4];\r\n guidSite = makeGuid(url.searchParams.get(\"guidSite\"));\r\n guidWeb = makeGuid(url.searchParams.get(\"guidWeb\"));\r\n guidFile = makeGuid(url.searchParams.get(\"guidFile\"));\r\n site = Site(extractWebUrl(this.toUrl()));\r\n return [4 /*yield*/, site.select(\"Id\")()];\r\n case 1:\r\n id = _a.sent();\r\n if (!(id.Id === guidSite)) return [3 /*break*/, 4];\r\n return [4 /*yield*/, site.openWebById(guidWeb)];\r\n case 2:\r\n openWeb = _a.sent();\r\n return [4 /*yield*/, openWeb.web.getFileById(guidFile).select(\"ServerRelativeUrl\")()];\r\n case 3:\r\n file = _a.sent();\r\n props = {};\r\n if (this._layoutPart.properties) {\r\n if (hOP(this._layoutPart.properties, \"translateX\")) {\r\n props.translateX = this._layoutPart.properties.translateX;\r\n }\r\n if (hOP(this._layoutPart.properties, \"translateY\")) {\r\n props.translateY = this._layoutPart.properties.translateY;\r\n }\r\n if (hOP(this._layoutPart.properties, \"imageSourceType\")) {\r\n props.imageSourceType = this._layoutPart.properties.imageSourceType;\r\n }\r\n if (hOP(this._layoutPart.properties, \"altText\")) {\r\n props.altText = this._layoutPart.properties.altText;\r\n }\r\n }\r\n page.setBannerImage(file.ServerRelativeUrl, props);\r\n _a.label = 4;\r\n case 4: return [4 /*yield*/, page.save(publish)];\r\n case 5:\r\n _a.sent();\r\n return [2 /*return*/, page];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Sets the modern page banner image\r\n *\r\n * @param url Url of the image to display\r\n * @param altText Alt text to describe the image\r\n * @param bannerProps Additional properties to control display of the banner\r\n */\r\n _ClientsidePage.prototype.setBannerImage = function (url, props) {\r\n if (isUrlAbsolute(url)) {\r\n // do our best to make this a server relative url by removing the x.sharepoint.com part\r\n url = url.replace(/^https?:\\/\\/[a-z0-9.]*?\\.[a-z]{2,3}\\//i, \"/\");\r\n }\r\n this.json.BannerImageUrl = url;\r\n this._bannerImageDirty = true;\r\n /*\r\n setting the banner image resets the thumbnail image (matching UI functionality)\r\n but if the thumbnail is dirty they are likely trying to set them both to\r\n different values, so we allow that here.\r\n Also allows the banner image to be updated safely with the calculated one in save()\r\n */\r\n if (!this._bannerImageThumbnailUrlDirty) {\r\n this.thumbnailUrl = url;\r\n this._pageSettings.pageSettingsSlice.isDefaultThumbnail = true;\r\n }\r\n // this seems to always be true, so default\r\n this._layoutPart.properties.imageSourceType = 2;\r\n if (objectDefinedNotNull(props)) {\r\n if (hOP(props, \"translateX\")) {\r\n this._layoutPart.properties.translateX = props.translateX;\r\n }\r\n if (hOP(props, \"translateY\")) {\r\n this._layoutPart.properties.translateY = props.translateY;\r\n }\r\n if (hOP(props, \"imageSourceType\")) {\r\n this._layoutPart.properties.imageSourceType = props.imageSourceType;\r\n }\r\n if (hOP(props, \"altText\")) {\r\n this._layoutPart.properties.altText = props.altText;\r\n }\r\n }\r\n };\r\n /**\r\n * Sets the banner image url from an external source. You must call save to persist the changes\r\n *\r\n * @param url absolute url of the external file\r\n * @param props optional set of properties to control display of the banner image\r\n */\r\n _ClientsidePage.prototype.setBannerImageFromExternalUrl = function (url, props) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var fileUrl, pageName, filename, request, result;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n fileUrl = new URL(url);\r\n pageName = this.json.FileName.replace(/\\.[^/.]+$/, \"\");\r\n filename = fileUrl.pathname.split(/[\\\\/]/i).pop();\r\n request = initFrom(this, \"_api/sitepages/AddImageFromExternalUrl\");\r\n request.query.set(\"imageFileName\", \"'\" + encodeURIComponent(filename) + \"'\");\r\n request.query.set(\"pageName\", \"'\" + encodeURIComponent(pageName) + \"'\");\r\n request.query.set(\"externalUrl\", \"'\" + encodeURIComponent(url) + \"'\");\r\n request.select(\"ServerRelativeUrl\");\r\n return [4 /*yield*/, spPost(request)];\r\n case 1:\r\n result = _a.sent();\r\n // set with the newly created relative url\r\n this.setBannerImage(result.ServerRelativeUrl, props);\r\n return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Sets the authors for this page from the supplied list of user integer ids\r\n *\r\n * @param authorId The integer id of the user to set as the author\r\n */\r\n _ClientsidePage.prototype.setAuthorById = function (authorId) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var userLoginData;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0: return [4 /*yield*/, SharePointQueryableCollection(extractWebUrl(this.toUrl()), \"/_api/web/siteusers\")\r\n .configureFrom(this)\r\n .filter(\"Id eq \" + authorId)\r\n .select(\"LoginName\")()];\r\n case 1:\r\n userLoginData = _a.sent();\r\n if (userLoginData.length < 1) {\r\n throw Error(\"Could not find user with id \" + authorId + \".\");\r\n }\r\n return [2 /*return*/, this.setAuthorByLoginName(userLoginData[0].LoginName)];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Sets the authors for this page from the supplied list of user integer ids\r\n *\r\n * @param authorLoginName The login name of the user (ex: i:0#.f|membership|name@tenant.com)\r\n */\r\n _ClientsidePage.prototype.setAuthorByLoginName = function (authorLoginName) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var userLoginData;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0: return [4 /*yield*/, SharePointQueryableCollection(extractWebUrl(this.toUrl()), \"/_api/web/siteusers\")\r\n .configureFrom(this)\r\n .filter(\"LoginName eq '\" + authorLoginName + \"'\")\r\n .select(\"UserPrincipalName\", \"Title\")()];\r\n case 1:\r\n userLoginData = _a.sent();\r\n if (userLoginData.length < 1) {\r\n throw Error(\"Could not find user with login name '\" + authorLoginName + \"'.\");\r\n }\r\n this.json.AuthorByline = [userLoginData[0].UserPrincipalName];\r\n this._layoutPart.properties.authorByline = [userLoginData[0].UserPrincipalName];\r\n this._layoutPart.properties.authors = [{\r\n id: authorLoginName,\r\n name: userLoginData[0].Title,\r\n role: \"\",\r\n upn: userLoginData[0].UserPrincipalName,\r\n }];\r\n return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Gets the list item associated with this clientside page\r\n *\r\n * @param selects Specific set of fields to include when getting the item\r\n */\r\n _ClientsidePage.prototype.getItem = function () {\r\n var selects = [];\r\n for (var _i = 0; _i < arguments.length; _i++) {\r\n selects[_i] = arguments[_i];\r\n }\r\n return __awaiter(this, void 0, void 0, function () {\r\n var initer, listData, item, itemData;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n initer = initFrom(this, \"/_api/lists/EnsureClientRenderedSitePagesLibrary\").select(\"EnableModeration\", \"EnableMinorVersions\", \"Id\");\r\n return [4 /*yield*/, spPost(initer)];\r\n case 1:\r\n listData = _a.sent();\r\n item = (List(listData[\"odata.id\"])).configureFrom(this).items.getById(this.json.Id);\r\n return [4 /*yield*/, item.select.apply(item, __spreadArray([], __read(selects)))()];\r\n case 2:\r\n itemData = _a.sent();\r\n return [2 /*return*/, assign((Item(odataUrlFrom(itemData))).configureFrom(this), itemData)];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Extends this queryable from the provided parent\r\n *\r\n * @param parent Parent queryable from which we will derive a base url\r\n * @param path Additional path\r\n */\r\n _ClientsidePage.prototype.assign = function (parent, path) {\r\n this.data.parentUrl = parent.data.url;\r\n this.data.url = combine(this.data.parentUrl, path || \"\");\r\n this.configureFrom(parent);\r\n };\r\n _ClientsidePage.prototype.getCanvasContent1 = function () {\r\n return JSON.stringify(this.getControls());\r\n };\r\n _ClientsidePage.prototype.getLayoutWebpartsContent = function () {\r\n if (this._layoutPart) {\r\n return JSON.stringify([this._layoutPart]);\r\n }\r\n else {\r\n return JSON.stringify(null);\r\n }\r\n };\r\n _ClientsidePage.prototype.setControls = function (controls) {\r\n // reset the sections\r\n this.sections = [];\r\n if (controls && controls.length) {\r\n for (var i = 0; i < controls.length; i++) {\r\n // if no control type is present this is a column which we give type 0 to let us process it\r\n var controlType = hOP(controls[i], \"controlType\") ? controls[i].controlType : 0;\r\n switch (controlType) {\r\n case 0:\r\n // empty canvas column or page settings\r\n if (hOP(controls[i], \"pageSettingsSlice\")) {\r\n this._pageSettings = controls[i];\r\n }\r\n else {\r\n // we have an empty column\r\n this.mergeColumnToTree(new CanvasColumn(controls[i]));\r\n }\r\n break;\r\n case 3: {\r\n var part = new ClientsideWebpart(controls[i]);\r\n this.mergePartToTree(part, part.data.position);\r\n break;\r\n }\r\n case 4: {\r\n var textData = controls[i];\r\n var text = new ClientsideText(textData.innerHTML, textData);\r\n this.mergePartToTree(text, text.data.position);\r\n break;\r\n }\r\n }\r\n }\r\n reindex(this.sections);\r\n }\r\n };\r\n _ClientsidePage.prototype.getControls = function () {\r\n var _this = this;\r\n // reindex things\r\n reindex(this.sections);\r\n // rollup the control changes\r\n var canvasData = [];\r\n this.sections.forEach(function (section) {\r\n section.columns.forEach(function (column) {\r\n if (column.controls.length < 1) {\r\n // empty column\r\n canvasData.push({\r\n displayMode: column.data.displayMode,\r\n emphasis: _this.getEmphasisObj(section.emphasis),\r\n position: column.data.position,\r\n });\r\n }\r\n else {\r\n column.controls.forEach(function (control) {\r\n control.data.emphasis = _this.getEmphasisObj(section.emphasis);\r\n canvasData.push(_this.specialSaveHandling(control).data);\r\n });\r\n }\r\n });\r\n });\r\n canvasData.push(this._pageSettings);\r\n return canvasData;\r\n };\r\n _ClientsidePage.prototype.getEmphasisObj = function (value) {\r\n if (value < 1 || value > 3) {\r\n return {};\r\n }\r\n return { zoneEmphasis: value };\r\n };\r\n _ClientsidePage.prototype.promoteNewsImpl = function (method) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var lastPubData;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n if (this.json.Id === null) {\r\n throw Error(\"The id for this page is null.\");\r\n }\r\n if (!stringIsNullOrEmpty(this.json.VersionInfo.LastVersionCreatedBy)) return [3 /*break*/, 2];\r\n lastPubData = new Date(this.json.VersionInfo.LastVersionCreated);\r\n if (!(lastPubData.getFullYear() < 2000)) return [3 /*break*/, 2];\r\n return [4 /*yield*/, this.save(true)];\r\n case 1:\r\n _a.sent();\r\n _a.label = 2;\r\n case 2: return [4 /*yield*/, spPost(initFrom(this, \"_api/sitepages/pages(\" + this.json.Id + \")/\" + method), body(metadata(\"SP.Publishing.SitePage\")))];\r\n case 3: return [2 /*return*/, _a.sent()];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Merges the control into the tree of sections and columns for this page\r\n *\r\n * @param control The control to merge\r\n */\r\n _ClientsidePage.prototype.mergePartToTree = function (control, positionData) {\r\n var _a, _b, _c;\r\n var column = null;\r\n var sectionFactor = 12;\r\n var sectionIndex = 0;\r\n var zoneIndex = 0;\r\n var layoutIndex = 1;\r\n // handle case where we don't have position data (shouldn't happen?)\r\n if (positionData) {\r\n if (hOP(positionData, \"zoneIndex\")) {\r\n zoneIndex = positionData.zoneIndex;\r\n }\r\n if (hOP(positionData, \"sectionIndex\")) {\r\n sectionIndex = positionData.sectionIndex;\r\n }\r\n if (hOP(positionData, \"sectionFactor\")) {\r\n sectionFactor = positionData.sectionFactor;\r\n }\r\n if (hOP(positionData, \"layoutIndex\")) {\r\n layoutIndex = positionData.layoutIndex;\r\n }\r\n }\r\n var zoneEmphasis = (_c = (_b = (_a = control.data) === null || _a === void 0 ? void 0 : _a.emphasis) === null || _b === void 0 ? void 0 : _b.zoneEmphasis) !== null && _c !== void 0 ? _c : 0;\r\n var section = this.getOrCreateSection(zoneIndex, layoutIndex, zoneEmphasis);\r\n var columns = section.columns.filter(function (c) { return c.order === sectionIndex; });\r\n if (columns.length < 1) {\r\n column = section.addColumn(sectionFactor, layoutIndex);\r\n }\r\n else {\r\n column = columns[0];\r\n }\r\n control.column = column;\r\n column.addControl(control);\r\n };\r\n /**\r\n * Merges the supplied column into the tree\r\n *\r\n * @param column Column to merge\r\n * @param position The position data for the column\r\n */\r\n _ClientsidePage.prototype.mergeColumnToTree = function (column) {\r\n var _a, _b;\r\n var order = hOP(column.data, \"position\") && hOP(column.data.position, \"zoneIndex\") ? column.data.position.zoneIndex : 0;\r\n var layoutIndex = hOP(column.data, \"position\") && hOP(column.data.position, \"layoutIndex\") ? column.data.position.layoutIndex : 1;\r\n var section = this.getOrCreateSection(order, layoutIndex, ((_b = (_a = column.data) === null || _a === void 0 ? void 0 : _a.emphasis) === null || _b === void 0 ? void 0 : _b.zoneEmphasis) || 0);\r\n column.section = section;\r\n section.columns.push(column);\r\n };\r\n /**\r\n * Handle the logic to get or create a section based on the supplied order and layoutIndex\r\n *\r\n * @param order Section order\r\n * @param layoutIndex Layout Index (1 === normal, 2 === vertical section)\r\n * @param emphasis The section emphasis\r\n */\r\n _ClientsidePage.prototype.getOrCreateSection = function (order, layoutIndex, emphasis) {\r\n var section = null;\r\n var sections = this.sections.filter(function (s) { return s.order === order && s.layoutIndex === layoutIndex; });\r\n if (sections.length < 1) {\r\n section = layoutIndex === 2 ? this.addVerticalSection() : this.addSection();\r\n section.order = order;\r\n section.emphasis = emphasis;\r\n }\r\n else {\r\n section = sections[0];\r\n }\r\n return section;\r\n };\r\n /**\r\n * Based on issue #1690 we need to take special case actions to ensure some things\r\n * can be saved properly without breaking existing pages.\r\n *\r\n * @param control The control we are ensuring is \"ready\" to be saved\r\n */\r\n _ClientsidePage.prototype.specialSaveHandling = function (control) {\r\n var _a, _b, _c;\r\n // this is to handle the special case in issue #1690\r\n // must ensure that searchablePlainTexts values have < replaced with < in links web part\r\n if (control.data.controlType === 3 && control.data.webPartId === \"c70391ea-0b10-4ee9-b2b4-006d3fcad0cd\") {\r\n var texts = ((_c = (_b = (_a = control.data) === null || _a === void 0 ? void 0 : _a.webPartData) === null || _b === void 0 ? void 0 : _b.serverProcessedContent) === null || _c === void 0 ? void 0 : _c.searchablePlainTexts) || null;\r\n if (objectDefinedNotNull(texts)) {\r\n var keys = Object.getOwnPropertyNames(texts);\r\n for (var i = 0; i < keys.length; i++) {\r\n texts[keys[i]] = texts[keys[i]].replace(//ig);\r\n tags = matches === null ? [] : matches.map(function (t) { return t.trim(); });\r\n // now we need to turn these tags of form into objects\r\n // Test\r\n return [2 /*return*/, tags.reduce(function (defVals, t) {\r\n var m = //ig.exec(t);\r\n // if things worked out captures are:\r\n // 0: whole string\r\n // 1: ENCODED server relative path\r\n if (m.length < 1) {\r\n // this indicates an error somewhere, but we have no way to meaningfully recover\r\n // perhaps the way the tags are stored has changed on the server? Check that first.\r\n Logger.write(\"Could not parse default column value from '\" + t + \"'\", 2 /* Warning */);\r\n return null;\r\n }\r\n // return the parsed out values\r\n var subMatches = t.match(//ig);\r\n var subTags = subMatches === null ? [] : subMatches.map(function (st) { return st.trim(); });\r\n subTags.map(function (st) {\r\n var sm = /(.*?)<\\/DefaultValue>/ig.exec(st);\r\n // if things worked out captures are:\r\n // 0: whole string\r\n // 1: Field internal name\r\n // 2: Default value as string\r\n if (sm.length < 1) {\r\n Logger.write(\"Could not parse default column value from '\" + st + \"'\", 2 /* Warning */);\r\n }\r\n else {\r\n defVals.push({\r\n name: sm[1],\r\n path: decodeURIComponent(m[1]),\r\n value: sm[2],\r\n });\r\n }\r\n });\r\n return defVals;\r\n }, []).filter(function (v) { return v !== null; })];\r\n }\r\n });\r\n });\r\n};\r\n_List.prototype.setDefaultColumnValues = function (defaults) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var fieldDefs, defaultsByPath, i, paths, pathDefaults, j, pathFields, tags, href, pathDefault, xml, pathPart, webUrl, path, baseFilePath, existingReceivers;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0: return [4 /*yield*/, SharePointQueryableCollection(this, \"fields\").select(\"InternalName\", \"TypeAsString\").filter(\"Hidden ne true\")()];\r\n case 1:\r\n fieldDefs = _a.sent();\r\n defaultsByPath = {};\r\n for (i = 0; i < defaults.length; i++) {\r\n if (defaultsByPath[defaults[i].path] == null) {\r\n defaultsByPath[defaults[i].path] = [defaults[i]];\r\n }\r\n else {\r\n defaultsByPath[defaults[i].path].push(defaults[i]);\r\n }\r\n }\r\n paths = Object.getOwnPropertyNames(defaultsByPath);\r\n pathDefaults = [];\r\n // For each path, group field defaults\r\n for (j = 0; j < paths.length; j++) {\r\n pathFields = defaultsByPath[paths[j]];\r\n tags = pathFields.map(function (fieldDefault) {\r\n var index = fieldDefs.findIndex(function (fd) { return fd.InternalName === fieldDefault.name; });\r\n if (index < 0) {\r\n throw Error(\"Field '\" + fieldDefault.name + \"' does not exist in the list. Please check the internal field name. Failed to set defaults.\");\r\n }\r\n var fieldDef = fieldDefs[index];\r\n var value = \"\";\r\n switch (fieldDef.TypeAsString) {\r\n case \"Boolean\":\r\n case \"Currency\":\r\n case \"Text\":\r\n case \"DateTime\":\r\n case \"Number\":\r\n case \"Choice\":\r\n case \"User\":\r\n if (isArray(fieldDefault.value)) {\r\n throw Error(\"The type '\" + fieldDef.TypeAsString + \"' does not support multiple values.\");\r\n }\r\n value = \"\" + fieldDefault.value;\r\n break;\r\n case \"MultiChoice\":\r\n if (isArray(fieldDefault.value)) {\r\n value = fieldDefault.value.map(function (v) { return \"\" + v; }).join(\";\");\r\n }\r\n else {\r\n value = \"\" + fieldDefault.value;\r\n }\r\n break;\r\n case \"UserMulti\":\r\n if (isArray(fieldDefault.value)) {\r\n value = fieldDefault.value.map(function (v) { return \"\" + v; }).join(\";#\");\r\n }\r\n else {\r\n value = \"\" + fieldDefault.value;\r\n }\r\n break;\r\n case \"Taxonomy\":\r\n case \"TaxonomyFieldType\":\r\n if (isArray(fieldDefault.value)) {\r\n throw Error(\"The type '\" + fieldDef.TypeAsString + \"' does not support multiple values.\");\r\n }\r\n else {\r\n value = fieldDefault.value.wssId + \";#\" + fieldDefault.value.termName + \"|\" + fieldDefault.value.termId;\r\n }\r\n break;\r\n case \"TaxonomyMulti\":\r\n case \"TaxonomyFieldTypeMulti\":\r\n if (isArray(fieldDefault.value)) {\r\n value = fieldDefault.value.map(function (v) { return v.wssId + \";#\" + v.termName + \"|\" + v.termId; }).join(\";#\");\r\n }\r\n else {\r\n value = [fieldDefault.value].map(function (v) { return v.wssId + \";#\" + v.termName + \"|\" + v.termId; }).join(\";#\");\r\n }\r\n break;\r\n }\r\n return \"\" + value + \"\";\r\n });\r\n href = pathFields[0].path.replace(/ /gi, \"%20\");\r\n pathDefault = \"\" + tags.join(\"\") + \"\";\r\n pathDefaults.push(pathDefault);\r\n }\r\n xml = \"\" + pathDefaults.join(\"\") + \"\";\r\n return [4 /*yield*/, this.rootFolder.select(\"ServerRelativePath\")()];\r\n case 2:\r\n pathPart = _a.sent();\r\n return [4 /*yield*/, this.select(\"ParentWeb/Url\").expand(\"ParentWeb\")()];\r\n case 3:\r\n webUrl = _a.sent();\r\n path = combine(\"/\", pathPart.ServerRelativePath.DecodedUrl, \"Forms\");\r\n baseFilePath = combine(webUrl.ParentWeb.Url, \"_api/web\", \"getFolderByServerRelativePath(decodedUrl='\" + escapeQueryStrValue(path) + \"')\", \"files\");\r\n return [4 /*yield*/, spPost(Folder(baseFilePath, \"add(overwrite=true,url='client_LocationBasedDefaults.html')\"), { body: xml })];\r\n case 4:\r\n _a.sent();\r\n return [4 /*yield*/, this.eventReceivers.filter(\"ReceiverName eq 'LocationBasedMetadataDefaultsReceiver ItemAdded'\").select(\"ReceiverId\")()];\r\n case 5:\r\n existingReceivers = _a.sent();\r\n if (!(existingReceivers.length < 1)) return [3 /*break*/, 7];\r\n return [4 /*yield*/, spPost(List(this.eventReceivers, \"add\"), body({\r\n eventReceiverCreationInformation: {\r\n EventType: 10001,\r\n ReceiverAssembly: \"Microsoft.Office.DocumentManagement, Version=16.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c\",\r\n ReceiverClass: \"Microsoft.Office.DocumentManagement.LocationBasedMetadataDefaultsReceiver\",\r\n ReceiverName: \"LocationBasedMetadataDefaultsReceiver ItemAdded\",\r\n SequenceNumber: 1000,\r\n Synchronization: 1,\r\n },\r\n }))];\r\n case 6:\r\n _a.sent();\r\n _a.label = 7;\r\n case 7: return [2 /*return*/];\r\n }\r\n });\r\n });\r\n};\r\n//# sourceMappingURL=list.js.map","import { __awaiter, __generator } from \"tslib\";\r\nimport { odataUrlFrom } from \"../odata.js\";\r\nimport { extractWebUrl } from \"../utils/extractweburl.js\";\r\nimport { Web } from \"../webs/types.js\";\r\nimport \"../lists/web.js\";\r\nimport { _Folder, Folder } from \"../folders/types.js\";\r\n_Folder.prototype.getDefaultColumnValues = function () {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var folderProps, serRelPath, web, docLib;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0: return [4 /*yield*/, Folder(this, \"Properties\").select(\"vti_x005f_listname\")()];\r\n case 1:\r\n folderProps = _a.sent();\r\n return [4 /*yield*/, this.select(\"ServerRelativePath\")()];\r\n case 2:\r\n serRelPath = (_a.sent()).ServerRelativePath;\r\n web = Web(extractWebUrl(odataUrlFrom(folderProps))).configureFrom(this);\r\n docLib = web.lists.getById(folderProps.vti_x005f_listname);\r\n return [4 /*yield*/, docLib.getDefaultColumnValues()];\r\n case 3: \r\n // and we return the defaults associated with this folder's server relative path only\r\n // if you want all the defaults use list.getDefaultColumnValues()\r\n return [2 /*return*/, (_a.sent()).filter(function (v) { return v.path.toLowerCase() === serRelPath.DecodedUrl.toLowerCase(); })];\r\n }\r\n });\r\n });\r\n};\r\n_Folder.prototype.setDefaultColumnValues = function (fieldDefaults, merge) {\r\n if (merge === void 0) { merge = true; }\r\n return __awaiter(this, void 0, void 0, function () {\r\n var folderProps, web, docLib, folderPath, existingDefaults, filteredExistingDefaults;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0: return [4 /*yield*/, Folder(this, \"Properties\").select(\"vti_x005f_listname\")()];\r\n case 1:\r\n folderProps = _a.sent();\r\n web = Web(extractWebUrl(odataUrlFrom(folderProps))).configureFrom(this);\r\n docLib = web.lists.getById(folderProps.vti_x005f_listname);\r\n return [4 /*yield*/, this.select(\"ServerRelativePath\")()];\r\n case 2:\r\n folderPath = (_a.sent()).ServerRelativePath.DecodedUrl;\r\n return [4 /*yield*/, docLib.getDefaultColumnValues()];\r\n case 3:\r\n existingDefaults = _a.sent();\r\n filteredExistingDefaults = merge ? existingDefaults : existingDefaults.filter(function (f) { return f.path !== folderPath; });\r\n // we update / add any new defaults from those passed to this method\r\n fieldDefaults.forEach(function (d) {\r\n var existing = filteredExistingDefaults.find(function (ed) { return ed.name === d.name && ed.path === folderPath; });\r\n if (existing) {\r\n existing.value = d.value;\r\n }\r\n else {\r\n filteredExistingDefaults.push({\r\n name: d.name,\r\n path: folderPath,\r\n value: d.value,\r\n });\r\n }\r\n });\r\n // after this operation filteredExistingDefaults should contain all the value we want to write to the file\r\n return [4 /*yield*/, docLib.setDefaultColumnValues(filteredExistingDefaults)];\r\n case 4:\r\n // after this operation filteredExistingDefaults should contain all the value we want to write to the file\r\n _a.sent();\r\n return [2 /*return*/];\r\n }\r\n });\r\n });\r\n};\r\n_Folder.prototype.clearDefaultColumnValues = function () {\r\n return __awaiter(this, void 0, void 0, function () {\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0: return [4 /*yield*/, this.setDefaultColumnValues([], false)];\r\n case 1:\r\n _a.sent();\r\n return [2 /*return*/];\r\n }\r\n });\r\n });\r\n};\r\n//# sourceMappingURL=folder.js.map","import { __awaiter, __decorate, __extends, __generator } from \"tslib\";\r\nimport { body } from \"@pnp/odata\";\r\nimport { SharePointQueryableCollection, _SharePointQueryableInstance, _SharePointQueryableCollection, spInvokableFactory, deleteable, } from \"../sharepointqueryable.js\";\r\nimport { defaultPath } from \"../decorators.js\";\r\nimport { metadata } from \"../utils/metadata.js\";\r\nimport { spPost } from \"../operations.js\";\r\nimport { tag } from \"../telemetry.js\";\r\nvar _ContentTypes = /** @class */ (function (_super) {\r\n __extends(_ContentTypes, _super);\r\n function _ContentTypes() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n /**\r\n * Adds an existing contenttype to a content type collection\r\n *\r\n * @param contentTypeId in the following format, for example: 0x010102\r\n */\r\n _ContentTypes.prototype.addAvailableContentType = function (contentTypeId) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var data;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0: return [4 /*yield*/, spPost(this.clone(ContentTypes, \"addAvailableContentType\"), body({ \"contentTypeId\": contentTypeId }))];\r\n case 1:\r\n data = _a.sent();\r\n return [2 /*return*/, {\r\n contentType: this.getById(data.id),\r\n data: data,\r\n }];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Gets a ContentType by content type id\r\n * @param id The id of the content type to get, in the following format, for example: 0x010102\r\n */\r\n _ContentTypes.prototype.getById = function (id) {\r\n return tag.configure(ContentType(this).concat(\"('\" + id + \"')\"), \"cts.getById\");\r\n };\r\n /**\r\n * Adds a new content type to the collection\r\n *\r\n * @param id The desired content type id for the new content type (also determines the parent content type)\r\n * @param name The name of the content type\r\n * @param description The description of the content type\r\n * @param group The group in which to add the content type\r\n * @param additionalSettings Any additional settings to provide when creating the content type\r\n *\r\n */\r\n _ContentTypes.prototype.add = function (id, name, description, group, additionalSettings) {\r\n if (description === void 0) { description = \"\"; }\r\n if (group === void 0) { group = \"Custom Content Types\"; }\r\n if (additionalSettings === void 0) { additionalSettings = {}; }\r\n return __awaiter(this, void 0, void 0, function () {\r\n var postBody, data;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n postBody = body(Object.assign(metadata(\"SP.ContentType\"), {\r\n \"Description\": description,\r\n \"Group\": group,\r\n \"Id\": { \"StringValue\": id },\r\n \"Name\": name,\r\n }, additionalSettings));\r\n return [4 /*yield*/, spPost(this, postBody)];\r\n case 1:\r\n data = _a.sent();\r\n return [2 /*return*/, { contentType: this.getById(data.id), data: data }];\r\n }\r\n });\r\n });\r\n };\r\n __decorate([\r\n tag(\"cts.addAvailableContentType\")\r\n ], _ContentTypes.prototype, \"addAvailableContentType\", null);\r\n __decorate([\r\n tag(\"cts.add\")\r\n ], _ContentTypes.prototype, \"add\", null);\r\n _ContentTypes = __decorate([\r\n defaultPath(\"contenttypes\")\r\n ], _ContentTypes);\r\n return _ContentTypes;\r\n}(_SharePointQueryableCollection));\r\nexport { _ContentTypes };\r\nexport var ContentTypes = spInvokableFactory(_ContentTypes);\r\nvar _ContentType = /** @class */ (function (_super) {\r\n __extends(_ContentType, _super);\r\n function _ContentType() {\r\n var _this = _super !== null && _super.apply(this, arguments) || this;\r\n _this.delete = deleteable(\"ct\");\r\n return _this;\r\n }\r\n Object.defineProperty(_ContentType.prototype, \"fieldLinks\", {\r\n /**\r\n * Gets the column (also known as field) references in the content type.\r\n */\r\n get: function () {\r\n return tag.configure(FieldLinks(this), \"ct.fieldLinks\");\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n Object.defineProperty(_ContentType.prototype, \"fields\", {\r\n /**\r\n * Gets a value that specifies the collection of fields for the content type.\r\n */\r\n get: function () {\r\n return tag.configure(SharePointQueryableCollection(this, \"fields\"), \"ct.fields\");\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n Object.defineProperty(_ContentType.prototype, \"parent\", {\r\n /**\r\n * Gets the parent content type of the content type.\r\n */\r\n get: function () {\r\n return tag.configure(ContentType(this, \"parent\"), \"ct.parent\");\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n Object.defineProperty(_ContentType.prototype, \"workflowAssociations\", {\r\n /**\r\n * Gets a value that specifies the collection of workflow associations for the content type.\r\n */\r\n get: function () {\r\n return tag.configure(SharePointQueryableCollection(this, \"workflowAssociations\"), \"ct.workflowAssociations\");\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n return _ContentType;\r\n}(_SharePointQueryableInstance));\r\nexport { _ContentType };\r\nexport var ContentType = spInvokableFactory(_ContentType);\r\nvar _FieldLinks = /** @class */ (function (_super) {\r\n __extends(_FieldLinks, _super);\r\n function _FieldLinks() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n /**\r\n * Gets a FieldLink by GUID id\r\n *\r\n * @param id The GUID id of the field link\r\n */\r\n _FieldLinks.prototype.getById = function (id) {\r\n return tag.configure(FieldLink(this).concat(\"(guid'\" + id + \"')\"), \"fls.getById\");\r\n };\r\n _FieldLinks = __decorate([\r\n defaultPath(\"fieldlinks\")\r\n ], _FieldLinks);\r\n return _FieldLinks;\r\n}(_SharePointQueryableCollection));\r\nexport { _FieldLinks };\r\nexport var FieldLinks = spInvokableFactory(_FieldLinks);\r\nvar _FieldLink = /** @class */ (function (_super) {\r\n __extends(_FieldLink, _super);\r\n function _FieldLink() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n return _FieldLink;\r\n}(_SharePointQueryableInstance));\r\nexport { _FieldLink };\r\nexport var FieldLink = spInvokableFactory(_FieldLink);\r\n//# sourceMappingURL=types.js.map","import { addProp } from \"@pnp/odata\";\r\nimport { _Web } from \"../webs/types.js\";\r\nimport { ContentTypes } from \"./types.js\";\r\naddProp(_Web, \"contentTypes\", ContentTypes);\r\n//# sourceMappingURL=web.js.map","import { addProp } from \"@pnp/odata\";\r\nimport { _Item } from \"../items/types.js\";\r\nimport { ContentType } from \"./types.js\";\r\naddProp(_Item, \"contentType\", ContentType, \"ContentType\");\r\n//# sourceMappingURL=item.js.map","import { addProp } from \"@pnp/odata\";\r\nimport { _List } from \"../lists/types.js\";\r\nimport { ContentTypes } from \"./types.js\";\r\naddProp(_List, \"contentTypes\", ContentTypes);\r\n//# sourceMappingURL=list.js.map","import { __awaiter, __decorate, __extends, __generator } from \"tslib\";\r\nimport { body } from \"@pnp/odata\";\r\nimport { _SharePointQueryableInstance, _SharePointQueryableCollection, spInvokableFactory, } from \"../sharepointqueryable.js\";\r\nimport { defaultPath } from \"../decorators.js\";\r\nimport { spPost } from \"../operations.js\";\r\nimport { tag } from \"../telemetry.js\";\r\nvar _Features = /** @class */ (function (_super) {\r\n __extends(_Features, _super);\r\n function _Features() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n /**\r\n * Adds (activates) the specified feature\r\n *\r\n * @param id The Id of the feature (GUID)\r\n * @param force If true the feature activation will be forced\r\n */\r\n _Features.prototype.add = function (id, force) {\r\n if (force === void 0) { force = false; }\r\n return __awaiter(this, void 0, void 0, function () {\r\n var data;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0: return [4 /*yield*/, spPost(this.clone(Features, \"add\"), body({\r\n featdefScope: 0,\r\n featureId: id,\r\n force: force,\r\n }))];\r\n case 1:\r\n data = _a.sent();\r\n return [2 /*return*/, {\r\n data: data,\r\n feature: this.getById(id),\r\n }];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Gets a feature from the collection with the specified guid\r\n *\r\n * @param id The Id of the feature (GUID)\r\n */\r\n _Features.prototype.getById = function (id) {\r\n var feature = Feature(this);\r\n feature.concat(\"('\" + id + \"')\");\r\n return tag.configure(feature, \"fes.getById\");\r\n };\r\n /**\r\n * Removes (deactivates) a feature from the collection\r\n *\r\n * @param id The Id of the feature (GUID)\r\n * @param force If true the feature deactivation will be forced\r\n */\r\n _Features.prototype.remove = function (id, force) {\r\n if (force === void 0) { force = false; }\r\n return spPost(this.clone(Features, \"remove\"), body({\r\n featureId: id,\r\n force: force,\r\n }));\r\n };\r\n __decorate([\r\n tag(\"fes.add\")\r\n ], _Features.prototype, \"add\", null);\r\n __decorate([\r\n tag(\"fes.remove\")\r\n ], _Features.prototype, \"remove\", null);\r\n _Features = __decorate([\r\n defaultPath(\"features\")\r\n ], _Features);\r\n return _Features;\r\n}(_SharePointQueryableCollection));\r\nexport { _Features };\r\nexport var Features = spInvokableFactory(_Features);\r\nvar _Feature = /** @class */ (function (_super) {\r\n __extends(_Feature, _super);\r\n function _Feature() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n /**\r\n * Removes (deactivates) the feature\r\n *\r\n * @param force If true the feature deactivation will be forced\r\n */\r\n _Feature.prototype.deactivate = function (force) {\r\n if (force === void 0) { force = false; }\r\n return __awaiter(this, void 0, void 0, function () {\r\n var removeDependency, feature, promise;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n removeDependency = this.addBatchDependency();\r\n return [4 /*yield*/, Feature(this).select(\"DefinitionId\")()];\r\n case 1:\r\n feature = _a.sent();\r\n promise = this.getParent(Features, this.parentUrl, \"\", this.batch).remove(feature.DefinitionId, force);\r\n removeDependency();\r\n return [2 /*return*/, promise];\r\n }\r\n });\r\n });\r\n };\r\n __decorate([\r\n tag(\"fe.deactivate\")\r\n ], _Feature.prototype, \"deactivate\", null);\r\n return _Feature;\r\n}(_SharePointQueryableInstance));\r\nexport { _Feature };\r\nexport var Feature = spInvokableFactory(_Feature);\r\n//# sourceMappingURL=types.js.map","import { addProp } from \"@pnp/odata\";\r\nimport { _Site } from \"../sites/types.js\";\r\nimport { Features } from \"./types.js\";\r\naddProp(_Site, \"features\", Features);\r\n//# sourceMappingURL=site.js.map","import { addProp } from \"@pnp/odata\";\r\nimport { _Web } from \"../webs/types.js\";\r\nimport { Features } from \"./types.js\";\r\naddProp(_Web, \"features\", Features);\r\n//# sourceMappingURL=web.js.map","import { __awaiter, __decorate, __extends, __generator } from \"tslib\";\r\nimport { _SharePointQueryableInstance, _SharePointQueryableCollection, spInvokableFactory, deleteable, } from \"../sharepointqueryable.js\";\r\nimport { assign } from \"@pnp/common\";\r\nimport { metadata } from \"../utils/metadata.js\";\r\nimport { body, headers } from \"@pnp/odata\";\r\nimport { defaultPath } from \"../decorators.js\";\r\nimport { spPost } from \"../operations.js\";\r\nimport { tag } from \"../telemetry.js\";\r\nvar _Fields = /** @class */ (function (_super) {\r\n __extends(_Fields, _super);\r\n function _Fields() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n /**\r\n * Creates a field based on the specified schema\r\n *\r\n * @param xml A string or XmlSchemaFieldCreationInformation instance descrbing the field to create\r\n */\r\n _Fields.prototype.createFieldAsXml = function (xml) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var postBody, data;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n if (typeof xml === \"string\") {\r\n xml = { SchemaXml: xml };\r\n }\r\n postBody = body({\r\n \"parameters\": assign(metadata(\"SP.XmlSchemaFieldCreationInformation\"), xml),\r\n });\r\n return [4 /*yield*/, spPost(this.clone(Fields, \"createfieldasxml\"), postBody)];\r\n case 1:\r\n data = _a.sent();\r\n return [2 /*return*/, {\r\n data: data,\r\n field: this.getById(data.Id),\r\n }];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Gets a field from the collection by id\r\n *\r\n * @param id The Id of the list\r\n */\r\n _Fields.prototype.getById = function (id) {\r\n return tag.configure(Field(this).concat(\"('\" + id + \"')\"), \"fs.getById\");\r\n };\r\n /**\r\n * Gets a field from the collection by title\r\n *\r\n * @param title The case-sensitive title of the field\r\n */\r\n _Fields.prototype.getByTitle = function (title) {\r\n return tag.configure(Field(this, \"getByTitle('\" + title + \"')\"), \"fs.getByTitle\");\r\n };\r\n /**\r\n * Gets a field from the collection by using internal name or title\r\n *\r\n * @param name The case-sensitive internal name or title of the field\r\n */\r\n _Fields.prototype.getByInternalNameOrTitle = function (name) {\r\n return tag.configure(Field(this, \"getByInternalNameOrTitle('\" + name + \"')\"), \"fs.getByInternalNameOrTitle\");\r\n };\r\n /**\r\n * Adds a new field to the collection\r\n *\r\n * @param title The new field's title\r\n * @param fieldType The new field's type (ex: SP.FieldText)\r\n * @param properties Differ by type of field being created (see: https://msdn.microsoft.com/en-us/library/office/dn600182.aspx)\r\n */\r\n _Fields.prototype.add = function (title, fieldType, properties) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var postBody, data;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n postBody = body(Object.assign(metadata(fieldType), {\r\n \"Title\": title,\r\n }, properties));\r\n if (!tag.isTagged(this)) {\r\n tag.configure(this, \"fs.add\");\r\n }\r\n return [4 /*yield*/, spPost(this.clone(Fields, null), postBody)];\r\n case 1:\r\n data = _a.sent();\r\n return [2 /*return*/, {\r\n data: data,\r\n field: this.getById(data.Id),\r\n }];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Adds a new SP.FieldText to the collection\r\n *\r\n * @param title The field title\r\n * @param maxLength The maximum number of characters allowed in the value of the field.\r\n * @param properties Differ by type of field being created (see: https://msdn.microsoft.com/en-us/library/office/dn600182.aspx)\r\n */\r\n _Fields.prototype.addText = function (title, maxLength, properties) {\r\n if (maxLength === void 0) { maxLength = 255; }\r\n var props = {\r\n FieldTypeKind: 2,\r\n MaxLength: maxLength,\r\n };\r\n return this.add(title, \"SP.FieldText\", assign(props, properties));\r\n };\r\n /**\r\n * Adds a new SP.FieldCalculated to the collection\r\n *\r\n * @param title The field title.\r\n * @param formula The formula for the field.\r\n * @param dateFormat The date and time format that is displayed in the field.\r\n * @param outputType Specifies the output format for the field. Represents a FieldType value.\r\n * @param properties Differ by type of field being created (see: https://msdn.microsoft.com/en-us/library/office/dn600182.aspx)\r\n */\r\n _Fields.prototype.addCalculated = function (title, formula, dateFormat, outputType, properties) {\r\n if (outputType === void 0) { outputType = FieldTypes.Text; }\r\n var props = {\r\n DateFormat: dateFormat,\r\n FieldTypeKind: 17,\r\n Formula: formula,\r\n OutputType: outputType,\r\n };\r\n return this.add(title, \"SP.FieldCalculated\", assign(props, properties));\r\n };\r\n /**\r\n * Adds a new SP.FieldDateTime to the collection\r\n *\r\n * @param title The field title\r\n * @param displayFormat The format of the date and time that is displayed in the field.\r\n * @param calendarType Specifies the calendar type of the field.\r\n * @param friendlyDisplayFormat The type of friendly display format that is used in the field.\r\n * @param properties Differ by type of field being created (see: https://msdn.microsoft.com/en-us/library/office/dn600182.aspx)\r\n */\r\n _Fields.prototype.addDateTime = function (title, displayFormat, calendarType, friendlyDisplayFormat, properties) {\r\n if (displayFormat === void 0) { displayFormat = DateTimeFieldFormatType.DateOnly; }\r\n if (calendarType === void 0) { calendarType = CalendarType.Gregorian; }\r\n if (friendlyDisplayFormat === void 0) { friendlyDisplayFormat = DateTimeFieldFriendlyFormatType.Unspecified; }\r\n var props = {\r\n DateTimeCalendarType: calendarType,\r\n DisplayFormat: displayFormat,\r\n FieldTypeKind: 4,\r\n FriendlyDisplayFormat: friendlyDisplayFormat,\r\n };\r\n return this.add(title, \"SP.FieldDateTime\", assign(props, properties));\r\n };\r\n /**\r\n * Adds a new SP.FieldNumber to the collection\r\n *\r\n * @param title The field title\r\n * @param minValue The field's minimum value\r\n * @param maxValue The field's maximum value\r\n * @param properties Differ by type of field being created (see: https://msdn.microsoft.com/en-us/library/office/dn600182.aspx)\r\n */\r\n _Fields.prototype.addNumber = function (title, minValue, maxValue, properties) {\r\n var props = { FieldTypeKind: 9 };\r\n if (minValue !== undefined) {\r\n props = assign({ MinimumValue: minValue }, props);\r\n }\r\n if (maxValue !== undefined) {\r\n props = assign({ MaximumValue: maxValue }, props);\r\n }\r\n return this.add(title, \"SP.FieldNumber\", assign(props, properties));\r\n };\r\n /**\r\n * Adds a new SP.FieldCurrency to the collection\r\n *\r\n * @param title The field title\r\n * @param minValue The field's minimum value\r\n * @param maxValue The field's maximum value\r\n * @param currencyLocalId Specifies the language code identifier (LCID) used to format the value of the field\r\n * @param properties Differ by type of field being created (see: https://msdn.microsoft.com/en-us/library/office/dn600182.aspx)\r\n */\r\n _Fields.prototype.addCurrency = function (title, minValue, maxValue, currencyLocalId, properties) {\r\n if (currencyLocalId === void 0) { currencyLocalId = 1033; }\r\n var props = {\r\n CurrencyLocaleId: currencyLocalId,\r\n FieldTypeKind: 10,\r\n };\r\n if (minValue !== undefined) {\r\n props = assign({ MinimumValue: minValue }, props);\r\n }\r\n if (maxValue !== undefined) {\r\n props = assign({ MaximumValue: maxValue }, props);\r\n }\r\n return this.add(title, \"SP.FieldCurrency\", assign(props, properties));\r\n };\r\n /**\r\n * Adds a new SP.FieldMultiLineText to the collection\r\n *\r\n * @param title The field title\r\n * @param numberOfLines Specifies the number of lines of text to display for the field.\r\n * @param richText Specifies whether the field supports rich formatting.\r\n * @param restrictedMode Specifies whether the field supports a subset of rich formatting.\r\n * @param appendOnly Specifies whether all changes to the value of the field are displayed in list forms.\r\n * @param allowHyperlink Specifies whether a hyperlink is allowed as a value of the field.\r\n * @param properties Differ by type of field being created (see: https://msdn.microsoft.com/en-us/library/office/dn600182.aspx)\r\n *\r\n */\r\n _Fields.prototype.addMultilineText = function (title, numberOfLines, richText, restrictedMode, appendOnly, allowHyperlink, properties) {\r\n if (numberOfLines === void 0) { numberOfLines = 6; }\r\n if (richText === void 0) { richText = true; }\r\n if (restrictedMode === void 0) { restrictedMode = false; }\r\n if (appendOnly === void 0) { appendOnly = false; }\r\n if (allowHyperlink === void 0) { allowHyperlink = true; }\r\n var props = {\r\n AllowHyperlink: allowHyperlink,\r\n AppendOnly: appendOnly,\r\n FieldTypeKind: 3,\r\n NumberOfLines: numberOfLines,\r\n RestrictedMode: restrictedMode,\r\n RichText: richText,\r\n };\r\n return this.add(title, \"SP.FieldMultiLineText\", assign(props, properties));\r\n };\r\n /**\r\n * Adds a new SP.FieldUrl to the collection\r\n *\r\n * @param title The field title\r\n */\r\n _Fields.prototype.addUrl = function (title, displayFormat, properties) {\r\n if (displayFormat === void 0) { displayFormat = UrlFieldFormatType.Hyperlink; }\r\n var props = {\r\n DisplayFormat: displayFormat,\r\n FieldTypeKind: 11,\r\n };\r\n return this.add(title, \"SP.FieldUrl\", assign(props, properties));\r\n };\r\n /** Adds a user field to the colleciton\r\n *\r\n * @param title The new field's title\r\n * @param selectionMode The selection mode of the field\r\n * @param selectionGroup Value that specifies the identifier of the SharePoint group whose members can be selected as values of the field\r\n * @param properties\r\n */\r\n _Fields.prototype.addUser = function (title, selectionMode, properties) {\r\n var props = {\r\n FieldTypeKind: 20,\r\n SelectionMode: selectionMode,\r\n };\r\n return this.add(title, \"SP.FieldUser\", assign(props, properties));\r\n };\r\n /**\r\n * Adds a SP.FieldLookup to the collection\r\n *\r\n * @param title The new field's title\r\n * @param lookupListId The guid id of the list where the source of the lookup is found\r\n * @param lookupFieldName The internal name of the field in the source list\r\n * @param properties Set of additional properties to set on the new field\r\n */\r\n _Fields.prototype.addLookup = function (title, lookupListId, lookupFieldName, properties) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var props, postBody, data;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n props = assign({\r\n FieldTypeKind: 7,\r\n LookupFieldName: lookupFieldName,\r\n LookupListId: lookupListId,\r\n Title: title,\r\n }, properties);\r\n postBody = body({\r\n \"parameters\": assign(metadata(\"SP.FieldCreationInformation\"), props),\r\n });\r\n return [4 /*yield*/, spPost(this.clone(Fields, \"addfield\"), postBody)];\r\n case 1:\r\n data = _a.sent();\r\n return [2 /*return*/, {\r\n data: data,\r\n field: this.getById(data.Id),\r\n }];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Adds a new SP.FieldChoice to the collection\r\n *\r\n * @param title The field title.\r\n * @param choices The choices for the field.\r\n * @param format The display format of the available options for the field.\r\n * @param fillIn Specifies whether the field allows fill-in values.\r\n * @param properties Differ by type of field being created (see: https://msdn.microsoft.com/en-us/library/office/dn600182.aspx)\r\n */\r\n _Fields.prototype.addChoice = function (title, choices, format, fillIn, properties) {\r\n if (format === void 0) { format = ChoiceFieldFormatType.Dropdown; }\r\n var props = {\r\n Choices: {\r\n results: choices,\r\n },\r\n EditFormat: format,\r\n FieldTypeKind: 6,\r\n FillInChoice: fillIn,\r\n };\r\n return this.add(title, \"SP.FieldChoice\", assign(props, properties));\r\n };\r\n /**\r\n * Adds a new SP.FieldMultiChoice to the collection\r\n *\r\n * @param title The field title.\r\n * @param choices The choices for the field.\r\n * @param fillIn Specifies whether the field allows fill-in values.\r\n * @param properties Differ by type of field being created (see: https://msdn.microsoft.com/en-us/library/office/dn600182.aspx)\r\n */\r\n _Fields.prototype.addMultiChoice = function (title, choices, fillIn, properties) {\r\n var props = {\r\n Choices: {\r\n results: choices,\r\n },\r\n FieldTypeKind: 15,\r\n FillInChoice: fillIn,\r\n };\r\n return this.add(title, \"SP.FieldMultiChoice\", assign(props, properties));\r\n };\r\n /**\r\n * Adds a new SP.FieldBoolean to the collection\r\n *\r\n * @param title The field title.\r\n * @param properties Differ by type of field being created (see: https://msdn.microsoft.com/en-us/library/office/dn600182.aspx)\r\n */\r\n _Fields.prototype.addBoolean = function (title, properties) {\r\n var props = {\r\n FieldTypeKind: 8,\r\n };\r\n return this.add(title, \"SP.Field\", assign(props, properties));\r\n };\r\n /**\r\n * Creates a secondary (dependent) lookup field, based on the Id of the primary lookup field.\r\n *\r\n * @param displayName The display name of the new field.\r\n * @param primaryLookupFieldId The guid of the primary Lookup Field.\r\n * @param showField Which field to show from the lookup list.\r\n */\r\n _Fields.prototype.addDependentLookupField = function (displayName, primaryLookupFieldId, showField) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var path, data;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n path = \"adddependentlookupfield(displayName='\" + displayName + \"', primarylookupfieldid='\" + primaryLookupFieldId + \"', showfield='\" + showField + \"')\";\r\n return [4 /*yield*/, spPost(this.clone(Fields, path))];\r\n case 1:\r\n data = _a.sent();\r\n return [2 /*return*/, {\r\n data: data,\r\n field: this.getById(data.Id),\r\n }];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Adds a new SP.FieldLocation to the collection\r\n *\r\n * @param title The field title.\r\n * @param properties Differ by type of field being created (see: https://msdn.microsoft.com/en-us/library/office/dn600182.aspx)\r\n */\r\n _Fields.prototype.addLocation = function (title, properties) {\r\n var props = { FieldTypeKind: 33 };\r\n return this.add(title, \"SP.FieldLocation\", assign(props, properties));\r\n };\r\n __decorate([\r\n tag(\"fs.createFieldAsXml\")\r\n ], _Fields.prototype, \"createFieldAsXml\", null);\r\n __decorate([\r\n tag(\"fs.addText\")\r\n ], _Fields.prototype, \"addText\", null);\r\n __decorate([\r\n tag(\"fs.addCalculated\")\r\n ], _Fields.prototype, \"addCalculated\", null);\r\n __decorate([\r\n tag(\"fs.addDateTime\")\r\n ], _Fields.prototype, \"addDateTime\", null);\r\n __decorate([\r\n tag(\"fs.addNumber\")\r\n ], _Fields.prototype, \"addNumber\", null);\r\n __decorate([\r\n tag(\"fs.addCurrency\")\r\n ], _Fields.prototype, \"addCurrency\", null);\r\n __decorate([\r\n tag(\"fs.addMultilineText\")\r\n ], _Fields.prototype, \"addMultilineText\", null);\r\n __decorate([\r\n tag(\"fs.addUrl\")\r\n ], _Fields.prototype, \"addUrl\", null);\r\n __decorate([\r\n tag(\"fs.addUser\")\r\n ], _Fields.prototype, \"addUser\", null);\r\n __decorate([\r\n tag(\"fs.addLookup\")\r\n ], _Fields.prototype, \"addLookup\", null);\r\n __decorate([\r\n tag(\"fs.addChoice\")\r\n ], _Fields.prototype, \"addChoice\", null);\r\n __decorate([\r\n tag(\"fs.addMultiChoice\")\r\n ], _Fields.prototype, \"addMultiChoice\", null);\r\n __decorate([\r\n tag(\"fs.addBoolean\")\r\n ], _Fields.prototype, \"addBoolean\", null);\r\n __decorate([\r\n tag(\"fs.addDependentLookupField\")\r\n ], _Fields.prototype, \"addDependentLookupField\", null);\r\n __decorate([\r\n tag(\"fs.addLocation\")\r\n ], _Fields.prototype, \"addLocation\", null);\r\n _Fields = __decorate([\r\n defaultPath(\"fields\")\r\n ], _Fields);\r\n return _Fields;\r\n}(_SharePointQueryableCollection));\r\nexport { _Fields };\r\nexport var Fields = spInvokableFactory(_Fields);\r\nvar _Field = /** @class */ (function (_super) {\r\n __extends(_Field, _super);\r\n function _Field() {\r\n var _this = _super !== null && _super.apply(this, arguments) || this;\r\n _this.delete = deleteable(\"f\");\r\n return _this;\r\n }\r\n /**\r\n * Updates this field instance with the supplied properties\r\n *\r\n * @param properties A plain object hash of values to update for the list\r\n * @param fieldType The type value such as SP.FieldLookup. Optional, looked up from the field if not provided\r\n */\r\n _Field.prototype.update = function (properties, fieldType) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var info, req, data;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n if (!(typeof fieldType === \"undefined\" || fieldType === null)) return [3 /*break*/, 2];\r\n return [4 /*yield*/, Field(this).select(\"FieldTypeKind\").configure({\r\n headers: {\r\n \"Accept\": \"application/json\",\r\n },\r\n })()];\r\n case 1:\r\n info = _a.sent();\r\n fieldType = info[\"odata.type\"];\r\n _a.label = 2;\r\n case 2:\r\n req = body(assign(metadata(fieldType), properties), headers({ \"X-HTTP-Method\": \"MERGE\" }));\r\n return [4 /*yield*/, spPost(this, req)];\r\n case 3:\r\n data = _a.sent();\r\n return [2 /*return*/, {\r\n data: data,\r\n field: this,\r\n }];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Sets the value of the ShowInDisplayForm property for this field.\r\n */\r\n _Field.prototype.setShowInDisplayForm = function (show) {\r\n return spPost(this.clone(Field, \"setshowindisplayform(\" + show + \")\"));\r\n };\r\n /**\r\n * Sets the value of the ShowInEditForm property for this field.\r\n */\r\n _Field.prototype.setShowInEditForm = function (show) {\r\n return spPost(this.clone(Field, \"setshowineditform(\" + show + \")\"));\r\n };\r\n /**\r\n * Sets the value of the ShowInNewForm property for this field.\r\n */\r\n _Field.prototype.setShowInNewForm = function (show) {\r\n return spPost(this.clone(Field, \"setshowinnewform(\" + show + \")\"));\r\n };\r\n __decorate([\r\n tag(\"f.update\")\r\n ], _Field.prototype, \"update\", null);\r\n __decorate([\r\n tag(\"f.setShowInDisplayForm\")\r\n ], _Field.prototype, \"setShowInDisplayForm\", null);\r\n __decorate([\r\n tag(\"f.setShowInEditForm\")\r\n ], _Field.prototype, \"setShowInEditForm\", null);\r\n __decorate([\r\n tag(\"f.setShowInNewForm\")\r\n ], _Field.prototype, \"setShowInNewForm\", null);\r\n return _Field;\r\n}(_SharePointQueryableInstance));\r\nexport { _Field };\r\nexport var Field = spInvokableFactory(_Field);\r\n/**\r\n * Specifies the type of the field.\r\n */\r\nexport var FieldTypes;\r\n(function (FieldTypes) {\r\n FieldTypes[FieldTypes[\"Invalid\"] = 0] = \"Invalid\";\r\n FieldTypes[FieldTypes[\"Integer\"] = 1] = \"Integer\";\r\n FieldTypes[FieldTypes[\"Text\"] = 2] = \"Text\";\r\n FieldTypes[FieldTypes[\"Note\"] = 3] = \"Note\";\r\n FieldTypes[FieldTypes[\"DateTime\"] = 4] = \"DateTime\";\r\n FieldTypes[FieldTypes[\"Counter\"] = 5] = \"Counter\";\r\n FieldTypes[FieldTypes[\"Choice\"] = 6] = \"Choice\";\r\n FieldTypes[FieldTypes[\"Lookup\"] = 7] = \"Lookup\";\r\n FieldTypes[FieldTypes[\"Boolean\"] = 8] = \"Boolean\";\r\n FieldTypes[FieldTypes[\"Number\"] = 9] = \"Number\";\r\n FieldTypes[FieldTypes[\"Currency\"] = 10] = \"Currency\";\r\n FieldTypes[FieldTypes[\"URL\"] = 11] = \"URL\";\r\n FieldTypes[FieldTypes[\"Computed\"] = 12] = \"Computed\";\r\n FieldTypes[FieldTypes[\"Threading\"] = 13] = \"Threading\";\r\n FieldTypes[FieldTypes[\"Guid\"] = 14] = \"Guid\";\r\n FieldTypes[FieldTypes[\"MultiChoice\"] = 15] = \"MultiChoice\";\r\n FieldTypes[FieldTypes[\"GridChoice\"] = 16] = \"GridChoice\";\r\n FieldTypes[FieldTypes[\"Calculated\"] = 17] = \"Calculated\";\r\n FieldTypes[FieldTypes[\"File\"] = 18] = \"File\";\r\n FieldTypes[FieldTypes[\"Attachments\"] = 19] = \"Attachments\";\r\n FieldTypes[FieldTypes[\"User\"] = 20] = \"User\";\r\n FieldTypes[FieldTypes[\"Recurrence\"] = 21] = \"Recurrence\";\r\n FieldTypes[FieldTypes[\"CrossProjectLink\"] = 22] = \"CrossProjectLink\";\r\n FieldTypes[FieldTypes[\"ModStat\"] = 23] = \"ModStat\";\r\n FieldTypes[FieldTypes[\"Error\"] = 24] = \"Error\";\r\n FieldTypes[FieldTypes[\"ContentTypeId\"] = 25] = \"ContentTypeId\";\r\n FieldTypes[FieldTypes[\"PageSeparator\"] = 26] = \"PageSeparator\";\r\n FieldTypes[FieldTypes[\"ThreadIndex\"] = 27] = \"ThreadIndex\";\r\n FieldTypes[FieldTypes[\"WorkflowStatus\"] = 28] = \"WorkflowStatus\";\r\n FieldTypes[FieldTypes[\"AllDayEvent\"] = 29] = \"AllDayEvent\";\r\n FieldTypes[FieldTypes[\"WorkflowEventType\"] = 30] = \"WorkflowEventType\";\r\n})(FieldTypes || (FieldTypes = {}));\r\nexport var DateTimeFieldFormatType;\r\n(function (DateTimeFieldFormatType) {\r\n DateTimeFieldFormatType[DateTimeFieldFormatType[\"DateOnly\"] = 0] = \"DateOnly\";\r\n DateTimeFieldFormatType[DateTimeFieldFormatType[\"DateTime\"] = 1] = \"DateTime\";\r\n})(DateTimeFieldFormatType || (DateTimeFieldFormatType = {}));\r\nexport var DateTimeFieldFriendlyFormatType;\r\n(function (DateTimeFieldFriendlyFormatType) {\r\n DateTimeFieldFriendlyFormatType[DateTimeFieldFriendlyFormatType[\"Unspecified\"] = 0] = \"Unspecified\";\r\n DateTimeFieldFriendlyFormatType[DateTimeFieldFriendlyFormatType[\"Disabled\"] = 1] = \"Disabled\";\r\n DateTimeFieldFriendlyFormatType[DateTimeFieldFriendlyFormatType[\"Relative\"] = 2] = \"Relative\";\r\n})(DateTimeFieldFriendlyFormatType || (DateTimeFieldFriendlyFormatType = {}));\r\n/**\r\n * Specifies the control settings while adding a field.\r\n */\r\nexport var AddFieldOptions;\r\n(function (AddFieldOptions) {\r\n /**\r\n * Specify that a new field added to the list must also be added to the default content type in the site collection\r\n */\r\n AddFieldOptions[AddFieldOptions[\"DefaultValue\"] = 0] = \"DefaultValue\";\r\n /**\r\n * Specify that a new field added to the list must also be added to the default content type in the site collection.\r\n */\r\n AddFieldOptions[AddFieldOptions[\"AddToDefaultContentType\"] = 1] = \"AddToDefaultContentType\";\r\n /**\r\n * Specify that a new field must not be added to any other content type\r\n */\r\n AddFieldOptions[AddFieldOptions[\"AddToNoContentType\"] = 2] = \"AddToNoContentType\";\r\n /**\r\n * Specify that a new field that is added to the specified list must also be added to all content types in the site collection\r\n */\r\n AddFieldOptions[AddFieldOptions[\"AddToAllContentTypes\"] = 4] = \"AddToAllContentTypes\";\r\n /**\r\n * Specify adding an internal field name hint for the purpose of avoiding possible database locking or field renaming operations\r\n */\r\n AddFieldOptions[AddFieldOptions[\"AddFieldInternalNameHint\"] = 8] = \"AddFieldInternalNameHint\";\r\n /**\r\n * Specify that a new field that is added to the specified list must also be added to the default list view\r\n */\r\n AddFieldOptions[AddFieldOptions[\"AddFieldToDefaultView\"] = 16] = \"AddFieldToDefaultView\";\r\n /**\r\n * Specify to confirm that no other field has the same display name\r\n */\r\n AddFieldOptions[AddFieldOptions[\"AddFieldCheckDisplayName\"] = 32] = \"AddFieldCheckDisplayName\";\r\n})(AddFieldOptions || (AddFieldOptions = {}));\r\nexport var CalendarType;\r\n(function (CalendarType) {\r\n CalendarType[CalendarType[\"Gregorian\"] = 1] = \"Gregorian\";\r\n CalendarType[CalendarType[\"Japan\"] = 3] = \"Japan\";\r\n CalendarType[CalendarType[\"Taiwan\"] = 4] = \"Taiwan\";\r\n CalendarType[CalendarType[\"Korea\"] = 5] = \"Korea\";\r\n CalendarType[CalendarType[\"Hijri\"] = 6] = \"Hijri\";\r\n CalendarType[CalendarType[\"Thai\"] = 7] = \"Thai\";\r\n CalendarType[CalendarType[\"Hebrew\"] = 8] = \"Hebrew\";\r\n CalendarType[CalendarType[\"GregorianMEFrench\"] = 9] = \"GregorianMEFrench\";\r\n CalendarType[CalendarType[\"GregorianArabic\"] = 10] = \"GregorianArabic\";\r\n CalendarType[CalendarType[\"GregorianXLITEnglish\"] = 11] = \"GregorianXLITEnglish\";\r\n CalendarType[CalendarType[\"GregorianXLITFrench\"] = 12] = \"GregorianXLITFrench\";\r\n CalendarType[CalendarType[\"KoreaJapanLunar\"] = 14] = \"KoreaJapanLunar\";\r\n CalendarType[CalendarType[\"ChineseLunar\"] = 15] = \"ChineseLunar\";\r\n CalendarType[CalendarType[\"SakaEra\"] = 16] = \"SakaEra\";\r\n CalendarType[CalendarType[\"UmAlQura\"] = 23] = \"UmAlQura\";\r\n})(CalendarType || (CalendarType = {}));\r\nexport var UrlFieldFormatType;\r\n(function (UrlFieldFormatType) {\r\n UrlFieldFormatType[UrlFieldFormatType[\"Hyperlink\"] = 0] = \"Hyperlink\";\r\n UrlFieldFormatType[UrlFieldFormatType[\"Image\"] = 1] = \"Image\";\r\n})(UrlFieldFormatType || (UrlFieldFormatType = {}));\r\nexport var FieldUserSelectionMode;\r\n(function (FieldUserSelectionMode) {\r\n FieldUserSelectionMode[FieldUserSelectionMode[\"PeopleAndGroups\"] = 1] = \"PeopleAndGroups\";\r\n FieldUserSelectionMode[FieldUserSelectionMode[\"PeopleOnly\"] = 0] = \"PeopleOnly\";\r\n})(FieldUserSelectionMode || (FieldUserSelectionMode = {}));\r\nexport var ChoiceFieldFormatType;\r\n(function (ChoiceFieldFormatType) {\r\n ChoiceFieldFormatType[ChoiceFieldFormatType[\"Dropdown\"] = 0] = \"Dropdown\";\r\n ChoiceFieldFormatType[ChoiceFieldFormatType[\"RadioButtons\"] = 1] = \"RadioButtons\";\r\n})(ChoiceFieldFormatType || (ChoiceFieldFormatType = {}));\r\n//# sourceMappingURL=types.js.map","import { addProp } from \"@pnp/odata\";\r\nimport { _Web } from \"../webs/types.js\";\r\nimport { Fields } from \"./types.js\";\r\naddProp(_Web, \"fields\", Fields);\r\naddProp(_Web, \"availablefields\", Fields, \"availablefields\");\r\n//# sourceMappingURL=web.js.map","import { addProp } from \"@pnp/odata\";\r\nimport { _List } from \"../lists/types.js\";\r\nimport { Fields } from \"./types.js\";\r\naddProp(_List, \"fields\", Fields);\r\n//# sourceMappingURL=list.js.map","import { addProp } from \"@pnp/odata\";\r\nimport { _Folder } from \"../folders/types.js\";\r\nimport { Files } from \"./types.js\";\r\naddProp(_Folder, \"files\", Files);\r\n//# sourceMappingURL=folder.js.map","import { addProp } from \"@pnp/odata\";\r\nimport { _Item } from \"../items/types.js\";\r\nimport { File } from \"./types.js\";\r\naddProp(_Item, \"file\", File, \"file\");\r\n//# sourceMappingURL=item.js.map","import { addProp } from \"@pnp/odata\";\r\nimport { _Item } from \"../items/types.js\";\r\nimport { Folder } from \"./types.js\";\r\naddProp(_Item, \"folder\", Folder, \"folder\");\r\n//# sourceMappingURL=item.js.map","import { addProp } from \"@pnp/odata\";\r\nimport { _List } from \"../lists/types.js\";\r\nimport { Folder } from \"./types.js\";\r\naddProp(_List, \"rootFolder\", Folder, \"rootFolder\");\r\n//# sourceMappingURL=list.js.map","import { addProp } from \"@pnp/odata\";\r\nimport { _Web } from \"../webs/types.js\";\r\nimport { Folders, Folder } from \"./types.js\";\r\nimport { escapeQueryStrValue } from \"../utils/escapeQueryStrValue.js\";\r\naddProp(_Web, \"folders\", Folders);\r\naddProp(_Web, \"rootFolder\", Folder, \"rootFolder\");\r\n_Web.prototype.getFolderByServerRelativeUrl = function (folderRelativeUrl) {\r\n return Folder(this, \"getFolderByServerRelativeUrl('\" + escapeQueryStrValue(folderRelativeUrl) + \"')\");\r\n};\r\n_Web.prototype.getFolderByServerRelativePath = function (folderRelativeUrl) {\r\n return Folder(this, \"getFolderByServerRelativePath(decodedUrl='\" + escapeQueryStrValue(folderRelativeUrl) + \"')\");\r\n};\r\n_Web.prototype.getFolderById = function (uniqueId) {\r\n return Folder(this, \"getFolderById('\" + uniqueId + \"')\");\r\n};\r\n//# sourceMappingURL=web.js.map","import { __decorate, __extends } from \"tslib\";\r\nimport { _SharePointQueryableInstance, _SharePointQueryableCollection, spInvokableFactory, } from \"../sharepointqueryable.js\";\r\nimport { defaultPath } from \"../decorators.js\";\r\nimport { tag } from \"../telemetry.js\";\r\n/**\r\n * Describes a collection of Form objects\r\n *\r\n */\r\nvar _Forms = /** @class */ (function (_super) {\r\n __extends(_Forms, _super);\r\n function _Forms() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n /**\r\n * Gets a form by id\r\n *\r\n * @param id The guid id of the item to retrieve\r\n */\r\n _Forms.prototype.getById = function (id) {\r\n return tag.configure(Form(this).concat(\"('\" + id + \"')\"), \"fos.getById\");\r\n };\r\n _Forms = __decorate([\r\n defaultPath(\"forms\")\r\n ], _Forms);\r\n return _Forms;\r\n}(_SharePointQueryableCollection));\r\nexport { _Forms };\r\nexport var Forms = spInvokableFactory(_Forms);\r\n/**\r\n * Describes a single of Form instance\r\n *\r\n */\r\nvar _Form = /** @class */ (function (_super) {\r\n __extends(_Form, _super);\r\n function _Form() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n return _Form;\r\n}(_SharePointQueryableInstance));\r\nexport { _Form };\r\nexport var Form = spInvokableFactory(_Form);\r\n//# sourceMappingURL=types.js.map","import { addProp } from \"@pnp/odata\";\r\nimport { _List } from \"../lists/types.js\";\r\nimport { Forms } from \"./types.js\";\r\naddProp(_List, \"forms\", Forms, \"forms\");\r\n//# sourceMappingURL=list.js.map","import { __awaiter, __decorate, __extends, __generator } from \"tslib\";\r\nimport { _SharePointQueryableInstance, _SharePointQueryableCollection, spInvokableFactory, } from \"../sharepointqueryable.js\";\r\nimport { defaultPath } from \"../decorators.js\";\r\nimport { Site } from \"../sites/types.js\";\r\nimport { tag } from \"../telemetry.js\";\r\nvar _HubSites = /** @class */ (function (_super) {\r\n __extends(_HubSites, _super);\r\n function _HubSites() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n /**\r\n * Gets a Hub Site from the collection by id\r\n *\r\n * @param id The Id of the Hub Site\r\n */\r\n _HubSites.prototype.getById = function (id) {\r\n return tag.configure(HubSite(this, \"GetById?hubSiteId='\" + id + \"'\"), \"hss.getById\");\r\n };\r\n _HubSites = __decorate([\r\n defaultPath(\"_api/hubsites\")\r\n ], _HubSites);\r\n return _HubSites;\r\n}(_SharePointQueryableCollection));\r\nexport { _HubSites };\r\nexport var HubSites = spInvokableFactory(_HubSites);\r\nvar _HubSite = /** @class */ (function (_super) {\r\n __extends(_HubSite, _super);\r\n function _HubSite() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n /**\r\n * Gets the ISite instance associated with this hubsite\r\n */\r\n _HubSite.prototype.getSite = function () {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var d;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0: return [4 /*yield*/, this.select(\"SiteUrl\")()];\r\n case 1:\r\n d = _a.sent();\r\n return [2 /*return*/, Site(d.SiteUrl)];\r\n }\r\n });\r\n });\r\n };\r\n __decorate([\r\n tag(\"hs.getSite\")\r\n ], _HubSite.prototype, \"getSite\", null);\r\n return _HubSite;\r\n}(_SharePointQueryableInstance));\r\nexport { _HubSite };\r\nexport var HubSite = spInvokableFactory(_HubSite);\r\n//# sourceMappingURL=types.js.map","import { __awaiter, __generator } from \"tslib\";\r\nimport { _Site, Site } from \"../sites/types.js\";\r\nimport { spPost } from \"../operations.js\";\r\n_Site.prototype.joinHubSite = function (siteId) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0: return [4 /*yield*/, spPost(this.clone(Site, \"joinHubSite('\" + siteId + \"')\"))];\r\n case 1:\r\n _a.sent();\r\n return [2 /*return*/];\r\n }\r\n });\r\n });\r\n};\r\n_Site.prototype.registerHubSite = function () {\r\n return __awaiter(this, void 0, void 0, function () {\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0: return [4 /*yield*/, spPost(this.clone(Site, \"registerHubSite\"))];\r\n case 1:\r\n _a.sent();\r\n return [2 /*return*/];\r\n }\r\n });\r\n });\r\n};\r\n_Site.prototype.unRegisterHubSite = function () {\r\n return __awaiter(this, void 0, void 0, function () {\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0: return [4 /*yield*/, spPost(this.clone(Site, \"unRegisterHubSite\"))];\r\n case 1:\r\n _a.sent();\r\n return [2 /*return*/];\r\n }\r\n });\r\n });\r\n};\r\n//# sourceMappingURL=site.js.map","import { __awaiter, __generator } from \"tslib\";\r\nimport { _Web, Web } from \"../webs/types.js\";\r\nimport { spPost } from \"../operations.js\";\r\n_Web.prototype.hubSiteData = function (forceRefresh) {\r\n if (forceRefresh === void 0) { forceRefresh = false; }\r\n return __awaiter(this, void 0, void 0, function () {\r\n var data;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0: return [4 /*yield*/, this.clone(Web, \"hubSiteData(\" + forceRefresh + \")\")()];\r\n case 1:\r\n data = _a.sent();\r\n if (typeof data === \"string\") {\r\n return [2 /*return*/, JSON.parse(data)];\r\n }\r\n return [2 /*return*/, data];\r\n }\r\n });\r\n });\r\n};\r\n_Web.prototype.syncHubSiteTheme = function () {\r\n return spPost(this.clone(Web, \"syncHubSiteTheme\"));\r\n};\r\n//# sourceMappingURL=web.js.map","import { SPRest } from \"../rest.js\";\r\nimport { HubSites } from \"./types.js\";\r\nimport \"./site.js\";\r\nimport \"./web.js\";\r\nexport { HubSite, HubSites, } from \"./types.js\";\r\nReflect.defineProperty(SPRest.prototype, \"hubSites\", {\r\n configurable: true,\r\n enumerable: true,\r\n get: function () {\r\n return this.childConfigHook(function (_a) {\r\n var options = _a.options, baseUrl = _a.baseUrl, runtime = _a.runtime;\r\n return HubSites(baseUrl).configure(options).setRuntime(runtime);\r\n });\r\n },\r\n});\r\n//# sourceMappingURL=index.js.map","import { __awaiter, __decorate, __extends, __generator } from \"tslib\";\r\nimport { _SharePointQueryableInstance, _SharePointQueryableCollection, _SharePointQueryable, spInvokableFactory, deleteable, } from \"../sharepointqueryable.js\";\r\nimport { assign } from \"@pnp/common\";\r\nimport { metadata } from \"../utils/metadata.js\";\r\nimport { body, headers } from \"@pnp/odata\";\r\nimport { defaultPath } from \"../decorators.js\";\r\nimport { spPost } from \"../operations.js\";\r\nimport { tag } from \"../telemetry.js\";\r\n/**\r\n * Represents a collection of navigation nodes\r\n *\r\n */\r\nvar _NavigationNodes = /** @class */ (function (_super) {\r\n __extends(_NavigationNodes, _super);\r\n function _NavigationNodes() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n /**\r\n * Gets a navigation node by id\r\n *\r\n * @param id The id of the node\r\n */\r\n _NavigationNodes.prototype.getById = function (id) {\r\n return tag.configure(NavigationNode(this).concat(\"(\" + id + \")\"), \"nns.getById\");\r\n };\r\n /**\r\n * Adds a new node to the collection\r\n *\r\n * @param title Display name of the node\r\n * @param url The url of the node\r\n * @param visible If true the node is visible, otherwise it is hidden (default: true)\r\n */\r\n _NavigationNodes.prototype.add = function (title, url, visible) {\r\n if (visible === void 0) { visible = true; }\r\n return __awaiter(this, void 0, void 0, function () {\r\n var postBody, data;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n postBody = body(assign(metadata(\"SP.NavigationNode\"), {\r\n IsVisible: visible,\r\n Title: title,\r\n Url: url,\r\n }));\r\n return [4 /*yield*/, spPost(this.clone(NavigationNodes, null), postBody)];\r\n case 1:\r\n data = _a.sent();\r\n return [2 /*return*/, {\r\n data: data,\r\n node: this.getById(data.Id),\r\n }];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Moves a node to be after another node in the navigation\r\n *\r\n * @param nodeId Id of the node to move\r\n * @param previousNodeId Id of the node after which we move the node specified by nodeId\r\n */\r\n _NavigationNodes.prototype.moveAfter = function (nodeId, previousNodeId) {\r\n var postBody = body({\r\n nodeId: nodeId,\r\n previousNodeId: previousNodeId,\r\n });\r\n return spPost(this.clone(NavigationNodes, \"MoveAfter\"), postBody);\r\n };\r\n __decorate([\r\n tag(\"nns.add\")\r\n ], _NavigationNodes.prototype, \"add\", null);\r\n __decorate([\r\n tag(\"nns.moveAfter\")\r\n ], _NavigationNodes.prototype, \"moveAfter\", null);\r\n return _NavigationNodes;\r\n}(_SharePointQueryableCollection));\r\nexport { _NavigationNodes };\r\nexport var NavigationNodes = spInvokableFactory(_NavigationNodes);\r\n/**\r\n * Represents an instance of a navigation node\r\n *\r\n */\r\nvar _NavigationNode = /** @class */ (function (_super) {\r\n __extends(_NavigationNode, _super);\r\n function _NavigationNode() {\r\n var _this = _super !== null && _super.apply(this, arguments) || this;\r\n _this.delete = deleteable(\"nn\");\r\n return _this;\r\n }\r\n Object.defineProperty(_NavigationNode.prototype, \"children\", {\r\n /**\r\n * Represents the child nodes of this node\r\n */\r\n get: function () {\r\n return tag.configure(NavigationNodes(this, \"children\"), \"nn.children\");\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n /**\r\n * Updates this node\r\n *\r\n * @param properties Properties used to update this node\r\n */\r\n _NavigationNode.prototype.update = function (properties) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var postBody, data;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n postBody = body(assign(metadata(\"SP.NavigationNode\"), properties), headers({ \"X-HTTP-Method\": \"MERGE\" }));\r\n return [4 /*yield*/, spPost(this, postBody)];\r\n case 1:\r\n data = _a.sent();\r\n return [2 /*return*/, {\r\n data: data,\r\n node: this,\r\n }];\r\n }\r\n });\r\n });\r\n };\r\n __decorate([\r\n tag(\"nn.update\")\r\n ], _NavigationNode.prototype, \"update\", null);\r\n return _NavigationNode;\r\n}(_SharePointQueryableInstance));\r\nexport { _NavigationNode };\r\nexport var NavigationNode = spInvokableFactory(_NavigationNode);\r\n/**\r\n * Exposes the navigation components\r\n *\r\n */\r\nvar _Navigation = /** @class */ (function (_super) {\r\n __extends(_Navigation, _super);\r\n function _Navigation() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n Object.defineProperty(_Navigation.prototype, \"quicklaunch\", {\r\n /**\r\n * Gets the quicklaunch navigation nodes for the current context\r\n *\r\n */\r\n get: function () {\r\n return tag.configure(NavigationNodes(this, \"quicklaunch\"), \"n.quicklaunch\");\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n Object.defineProperty(_Navigation.prototype, \"topNavigationBar\", {\r\n /**\r\n * Gets the top bar navigation nodes for the current context\r\n *\r\n */\r\n get: function () {\r\n return tag.configure(NavigationNodes(this, \"topnavigationbar\"), \"n.topnavigationbar\");\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n _Navigation = __decorate([\r\n defaultPath(\"navigation\")\r\n ], _Navigation);\r\n return _Navigation;\r\n}(_SharePointQueryable));\r\nexport { _Navigation };\r\nexport var Navigation = spInvokableFactory(_Navigation);\r\n/**\r\n * Represents the top level navigation service\r\n */\r\nvar _NavigationService = /** @class */ (function (_super) {\r\n __extends(_NavigationService, _super);\r\n function _NavigationService(path) {\r\n if (path === void 0) { path = null; }\r\n return _super.call(this, \"_api/navigation\", path) || this;\r\n }\r\n /**\r\n * The MenuState service operation returns a Menu-State (dump) of a SiteMapProvider on a site.\r\n *\r\n * @param menuNodeKey MenuNode.Key of the start node within the SiteMapProvider If no key is provided the SiteMapProvider.RootNode will be the root of the menu state.\r\n * @param depth Depth of the dump. If no value is provided a dump with the depth of 10 is returned\r\n * @param mapProviderName The name identifying the SiteMapProvider to be used\r\n * @param customProperties comma seperated list of custom properties to be returned.\r\n */\r\n _NavigationService.prototype.getMenuState = function (menuNodeKey, depth, mapProviderName, customProperties) {\r\n if (menuNodeKey === void 0) { menuNodeKey = null; }\r\n if (depth === void 0) { depth = 10; }\r\n if (mapProviderName === void 0) { mapProviderName = null; }\r\n if (customProperties === void 0) { customProperties = null; }\r\n return spPost(NavigationService(\"MenuState\"), body({\r\n customProperties: customProperties,\r\n depth: depth,\r\n mapProviderName: mapProviderName,\r\n menuNodeKey: menuNodeKey,\r\n }));\r\n };\r\n /**\r\n * Tries to get a SiteMapNode.Key for a given URL within a site collection.\r\n *\r\n * @param currentUrl A url representing the SiteMapNode\r\n * @param mapProviderName The name identifying the SiteMapProvider to be used\r\n */\r\n _NavigationService.prototype.getMenuNodeKey = function (currentUrl, mapProviderName) {\r\n if (mapProviderName === void 0) { mapProviderName = null; }\r\n return spPost(NavigationService(\"MenuNodeKey\"), body({\r\n currentUrl: currentUrl,\r\n mapProviderName: mapProviderName,\r\n }));\r\n };\r\n __decorate([\r\n tag(\"ns.getMenuState\")\r\n ], _NavigationService.prototype, \"getMenuState\", null);\r\n __decorate([\r\n tag(\"ns.getMenuNodeKey\")\r\n ], _NavigationService.prototype, \"getMenuNodeKey\", null);\r\n return _NavigationService;\r\n}(_SharePointQueryable));\r\nexport { _NavigationService };\r\nexport var NavigationService = function (path) { return new _NavigationService(path); };\r\n//# sourceMappingURL=types.js.map","import { addProp } from \"@pnp/odata\";\r\nimport { _Web } from \"../webs/types.js\";\r\nimport { Navigation } from \"./types.js\";\r\naddProp(_Web, \"navigation\", Navigation);\r\n//# sourceMappingURL=web.js.map","import { SPRest } from \"../rest.js\";\r\nimport { NavigationService } from \"./types.js\";\r\nimport \"./web.js\";\r\nexport { Navigation, NavigationNode, NavigationNodes, NavigationService, } from \"./types.js\";\r\nReflect.defineProperty(SPRest.prototype, \"navigation\", {\r\n configurable: true,\r\n enumerable: true,\r\n get: function () {\r\n return this.childConfigHook(function (_a) {\r\n var options = _a.options, baseUrl = _a.baseUrl, runtime = _a.runtime;\r\n return NavigationService(baseUrl).configure(options).setRuntime(runtime);\r\n });\r\n },\r\n});\r\n//# sourceMappingURL=index.js.map","import { __awaiter, __decorate, __extends, __generator } from \"tslib\";\r\nimport { _SharePointQueryableInstance, SharePointQueryableCollection, _SharePointQueryable, spInvokableFactory, } from \"../sharepointqueryable.js\";\r\nimport { assign } from \"@pnp/common\";\r\nimport { metadata } from \"../utils/metadata.js\";\r\nimport { body } from \"@pnp/odata\";\r\nimport { defaultPath } from \"../decorators.js\";\r\nimport { spPost } from \"../operations.js\";\r\nvar _Profiles = /** @class */ (function (_super) {\r\n __extends(_Profiles, _super);\r\n /**\r\n * Creates a new instance of the UserProfileQuery class\r\n *\r\n * @param baseUrl The url or SharePointQueryable which forms the parent of this user profile query\r\n */\r\n function _Profiles(baseUrl, path) {\r\n if (path === void 0) { path = \"_api/sp.userprofiles.peoplemanager\"; }\r\n var _this = _super.call(this, baseUrl, path) || this;\r\n _this.clientPeoplePickerQuery = (new ClientPeoplePickerQuery(baseUrl)).configureFrom(_this);\r\n _this.profileLoader = (new ProfileLoader(baseUrl)).configureFrom(_this);\r\n return _this;\r\n }\r\n Object.defineProperty(_Profiles.prototype, \"editProfileLink\", {\r\n /**\r\n * The url of the edit profile page for the current user\r\n */\r\n get: function () {\r\n return this.clone(Profiles, \"EditProfileLink\").get();\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n Object.defineProperty(_Profiles.prototype, \"isMyPeopleListPublic\", {\r\n /**\r\n * A boolean value that indicates whether the current user's \"People I'm Following\" list is public\r\n */\r\n get: function () {\r\n return this.clone(Profiles, \"IsMyPeopleListPublic\").get();\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n /**\r\n * A boolean value that indicates whether the current user is being followed by the specified user\r\n *\r\n * @param loginName The account name of the user\r\n */\r\n _Profiles.prototype.amIFollowedBy = function (loginName) {\r\n var q = this.clone(Profiles, \"amifollowedby(@v)\");\r\n q.query.set(\"@v\", \"'\" + encodeURIComponent(loginName) + \"'\");\r\n return q.get();\r\n };\r\n /**\r\n * A boolean value that indicates whether the current user is following the specified user\r\n *\r\n * @param loginName The account name of the user\r\n */\r\n _Profiles.prototype.amIFollowing = function (loginName) {\r\n var q = this.clone(Profiles, \"amifollowing(@v)\");\r\n q.query.set(\"@v\", \"'\" + encodeURIComponent(loginName) + \"'\");\r\n return q.get();\r\n };\r\n /**\r\n * Gets tags that the current user is following\r\n *\r\n * @param maxCount The maximum number of tags to retrieve (default is 20)\r\n */\r\n _Profiles.prototype.getFollowedTags = function (maxCount) {\r\n if (maxCount === void 0) { maxCount = 20; }\r\n return this.clone(Profiles, \"getfollowedtags(\" + maxCount + \")\").get();\r\n };\r\n /**\r\n * Gets the people who are following the specified user\r\n *\r\n * @param loginName The account name of the user\r\n */\r\n _Profiles.prototype.getFollowersFor = function (loginName) {\r\n var q = this.clone(Profiles, \"getfollowersfor(@v)\");\r\n q.query.set(\"@v\", \"'\" + encodeURIComponent(loginName) + \"'\");\r\n return q.get();\r\n };\r\n Object.defineProperty(_Profiles.prototype, \"myFollowers\", {\r\n /**\r\n * Gets the people who are following the current user\r\n *\r\n */\r\n get: function () {\r\n return SharePointQueryableCollection(this, \"getmyfollowers\");\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n Object.defineProperty(_Profiles.prototype, \"myProperties\", {\r\n /**\r\n * Gets user properties for the current user\r\n *\r\n */\r\n get: function () {\r\n return new _Profiles(this, \"getmyproperties\");\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n /**\r\n * Gets the people who the specified user is following\r\n *\r\n * @param loginName The account name of the user.\r\n */\r\n _Profiles.prototype.getPeopleFollowedBy = function (loginName) {\r\n var q = this.clone(Profiles, \"getpeoplefollowedby(@v)\");\r\n q.query.set(\"@v\", \"'\" + encodeURIComponent(loginName) + \"'\");\r\n return q.get();\r\n };\r\n /**\r\n * Gets user properties for the specified user.\r\n *\r\n * @param loginName The account name of the user.\r\n */\r\n _Profiles.prototype.getPropertiesFor = function (loginName) {\r\n var q = this.clone(Profiles, \"getpropertiesfor(@v)\");\r\n q.query.set(\"@v\", \"'\" + encodeURIComponent(loginName) + \"'\");\r\n return q.get();\r\n };\r\n Object.defineProperty(_Profiles.prototype, \"trendingTags\", {\r\n /**\r\n * Gets the 20 most popular hash tags over the past week, sorted so that the most popular tag appears first\r\n *\r\n */\r\n get: function () {\r\n var q = this.clone(Profiles, null);\r\n q.concat(\".gettrendingtags\");\r\n return q.get();\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n /**\r\n * Gets the specified user profile property for the specified user\r\n *\r\n * @param loginName The account name of the user\r\n * @param propertyName The case-sensitive name of the property to get\r\n */\r\n _Profiles.prototype.getUserProfilePropertyFor = function (loginName, propertyName) {\r\n var q = this.clone(Profiles, \"getuserprofilepropertyfor(accountname=@v, propertyname='\" + propertyName + \"')\");\r\n q.query.set(\"@v\", \"'\" + encodeURIComponent(loginName) + \"'\");\r\n return q.get();\r\n };\r\n /**\r\n * Removes the specified user from the user's list of suggested people to follow\r\n *\r\n * @param loginName The account name of the user\r\n */\r\n _Profiles.prototype.hideSuggestion = function (loginName) {\r\n var q = this.clone(Profiles, \"hidesuggestion(@v)\");\r\n q.query.set(\"@v\", \"'\" + encodeURIComponent(loginName) + \"'\");\r\n return spPost(q);\r\n };\r\n /**\r\n * A boolean values that indicates whether the first user is following the second user\r\n *\r\n * @param follower The account name of the user who might be following the followee\r\n * @param followee The account name of the user who might be followed by the follower\r\n */\r\n _Profiles.prototype.isFollowing = function (follower, followee) {\r\n var q = this.clone(Profiles, null);\r\n q.concat(\".isfollowing(possiblefolloweraccountname=@v, possiblefolloweeaccountname=@y)\");\r\n q.query.set(\"@v\", \"'\" + encodeURIComponent(follower) + \"'\");\r\n q.query.set(\"@y\", \"'\" + encodeURIComponent(followee) + \"'\");\r\n return q.get();\r\n };\r\n /**\r\n * Uploads and sets the user profile picture (Users can upload a picture to their own profile only). Not supported for batching.\r\n *\r\n * @param profilePicSource Blob data representing the user's picture in BMP, JPEG, or PNG format of up to 4.76MB\r\n */\r\n _Profiles.prototype.setMyProfilePic = function (profilePicSource) {\r\n var _this = this;\r\n return new Promise(function (resolve, reject) {\r\n var reader = new FileReader();\r\n reader.onload = function (e) { return __awaiter(_this, void 0, void 0, function () {\r\n var buffer, e_1;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n buffer = e.target.result;\r\n _a.label = 1;\r\n case 1:\r\n _a.trys.push([1, 3, , 4]);\r\n return [4 /*yield*/, spPost(Profiles(this, \"setmyprofilepicture\"), { body: buffer })];\r\n case 2:\r\n _a.sent();\r\n resolve();\r\n return [3 /*break*/, 4];\r\n case 3:\r\n e_1 = _a.sent();\r\n reject(e_1);\r\n return [3 /*break*/, 4];\r\n case 4: return [2 /*return*/];\r\n }\r\n });\r\n }); };\r\n reader.readAsArrayBuffer(profilePicSource);\r\n });\r\n };\r\n /**\r\n * Sets single value User Profile property\r\n *\r\n * @param accountName The account name of the user\r\n * @param propertyName Property name\r\n * @param propertyValue Property value\r\n */\r\n _Profiles.prototype.setSingleValueProfileProperty = function (accountName, propertyName, propertyValue) {\r\n return spPost(this.clone(Profiles, \"SetSingleValueProfileProperty\"), body({\r\n accountName: accountName,\r\n propertyName: propertyName,\r\n propertyValue: propertyValue,\r\n }));\r\n };\r\n /**\r\n * Sets multi valued User Profile property\r\n *\r\n * @param accountName The account name of the user\r\n * @param propertyName Property name\r\n * @param propertyValues Property values\r\n */\r\n _Profiles.prototype.setMultiValuedProfileProperty = function (accountName, propertyName, propertyValues) {\r\n return spPost(this.clone(Profiles, \"SetMultiValuedProfileProperty\"), body({\r\n accountName: accountName,\r\n propertyName: propertyName,\r\n propertyValues: propertyValues,\r\n }));\r\n };\r\n /**\r\n * Provisions one or more users' personal sites. (My Site administrator on SharePoint Online only)\r\n *\r\n * @param emails The email addresses of the users to provision sites for\r\n */\r\n _Profiles.prototype.createPersonalSiteEnqueueBulk = function () {\r\n var emails = [];\r\n for (var _i = 0; _i < arguments.length; _i++) {\r\n emails[_i] = arguments[_i];\r\n }\r\n return this.profileLoader.createPersonalSiteEnqueueBulk(emails);\r\n };\r\n Object.defineProperty(_Profiles.prototype, \"ownerUserProfile\", {\r\n /**\r\n * Gets the user profile of the site owner\r\n *\r\n */\r\n get: function () {\r\n return this.profileLoader.ownerUserProfile;\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n Object.defineProperty(_Profiles.prototype, \"userProfile\", {\r\n /**\r\n * Gets the user profile for the current user\r\n */\r\n get: function () {\r\n return this.profileLoader.userProfile;\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n /**\r\n * Enqueues creating a personal site for this user, which can be used to share documents, web pages, and other files\r\n *\r\n * @param interactiveRequest true if interactively (web) initiated request, or false (default) if non-interactively (client) initiated request\r\n */\r\n _Profiles.prototype.createPersonalSite = function (interactiveRequest) {\r\n if (interactiveRequest === void 0) { interactiveRequest = false; }\r\n return this.profileLoader.createPersonalSite(interactiveRequest);\r\n };\r\n /**\r\n * Sets the privacy settings for this profile\r\n *\r\n * @param share true to make all social data public; false to make all social data private\r\n */\r\n _Profiles.prototype.shareAllSocialData = function (share) {\r\n return this.profileLoader.shareAllSocialData(share);\r\n };\r\n /**\r\n * Resolves user or group using specified query parameters\r\n *\r\n * @param queryParams The query parameters used to perform resolve\r\n */\r\n _Profiles.prototype.clientPeoplePickerResolveUser = function (queryParams) {\r\n return this.clientPeoplePickerQuery.clientPeoplePickerResolveUser(queryParams);\r\n };\r\n /**\r\n * Searches for users or groups using specified query parameters\r\n *\r\n * @param queryParams The query parameters used to perform search\r\n */\r\n _Profiles.prototype.clientPeoplePickerSearchUser = function (queryParams) {\r\n return this.clientPeoplePickerQuery.clientPeoplePickerSearchUser(queryParams);\r\n };\r\n return _Profiles;\r\n}(_SharePointQueryableInstance));\r\nexport { _Profiles };\r\nexport var Profiles = spInvokableFactory(_Profiles);\r\nvar ProfileLoader = /** @class */ (function (_super) {\r\n __extends(ProfileLoader, _super);\r\n function ProfileLoader() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n /**\r\n * Provisions one or more users' personal sites. (My Site administrator on SharePoint Online only) Doesn't support batching\r\n *\r\n * @param emails The email addresses of the users to provision sites for\r\n */\r\n ProfileLoader.prototype.createPersonalSiteEnqueueBulk = function (emails) {\r\n return spPost(this.clone(ProfileLoaderFactory, \"createpersonalsiteenqueuebulk\", false), body({ \"emailIDs\": emails }));\r\n };\r\n Object.defineProperty(ProfileLoader.prototype, \"ownerUserProfile\", {\r\n /**\r\n * Gets the user profile of the site owner.\r\n *\r\n */\r\n get: function () {\r\n var q = this.getParent(ProfileLoaderFactory, this.parentUrl, \"_api/sp.userprofiles.profileloader.getowneruserprofile\");\r\n if (this.hasBatch) {\r\n q = q.inBatch(this.batch);\r\n }\r\n return spPost(q);\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n Object.defineProperty(ProfileLoader.prototype, \"userProfile\", {\r\n /**\r\n * Gets the user profile of the current user.\r\n *\r\n */\r\n get: function () {\r\n return spPost(this.clone(ProfileLoaderFactory, \"getuserprofile\"));\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n /**\r\n * Enqueues creating a personal site for this user, which can be used to share documents, web pages, and other files.\r\n *\r\n * @param interactiveRequest true if interactively (web) initiated request, or false (default) if non-interactively (client) initiated request\r\n */\r\n ProfileLoader.prototype.createPersonalSite = function (interactiveRequest) {\r\n if (interactiveRequest === void 0) { interactiveRequest = false; }\r\n return spPost(this.clone(ProfileLoaderFactory, \"getuserprofile/createpersonalsiteenque(\" + interactiveRequest + \")\"));\r\n };\r\n /**\r\n * Sets the privacy settings for this profile\r\n *\r\n * @param share true to make all social data public; false to make all social data private.\r\n */\r\n ProfileLoader.prototype.shareAllSocialData = function (share) {\r\n return spPost(this.clone(ProfileLoaderFactory, \"getuserprofile/shareallsocialdata(\" + share + \")\"));\r\n };\r\n ProfileLoader = __decorate([\r\n defaultPath(\"_api/sp.userprofiles.profileloader.getprofileloader\")\r\n ], ProfileLoader);\r\n return ProfileLoader;\r\n}(_SharePointQueryable));\r\nvar ProfileLoaderFactory = function (baseUrl, path) {\r\n return new ProfileLoader(baseUrl, path);\r\n};\r\nvar ClientPeoplePickerQuery = /** @class */ (function (_super) {\r\n __extends(ClientPeoplePickerQuery, _super);\r\n function ClientPeoplePickerQuery() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n /**\r\n * Resolves user or group using specified query parameters\r\n *\r\n * @param queryParams The query parameters used to perform resolve\r\n */\r\n ClientPeoplePickerQuery.prototype.clientPeoplePickerResolveUser = function (queryParams) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var q, res;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n q = this.clone(ClientPeoplePickerFactory, null);\r\n q.concat(\".clientpeoplepickerresolveuser\");\r\n return [4 /*yield*/, spPost(q, this.getBodyFrom(queryParams))];\r\n case 1:\r\n res = _a.sent();\r\n return [2 /*return*/, JSON.parse(typeof res === \"object\" ? res.ClientPeoplePickerResolveUser : res)];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Searches for users or groups using specified query parameters\r\n *\r\n * @param queryParams The query parameters used to perform search\r\n */\r\n ClientPeoplePickerQuery.prototype.clientPeoplePickerSearchUser = function (queryParams) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var q, res;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n q = this.clone(ClientPeoplePickerFactory, null);\r\n q.concat(\".clientpeoplepickersearchuser\");\r\n return [4 /*yield*/, spPost(q, this.getBodyFrom(queryParams))];\r\n case 1:\r\n res = _a.sent();\r\n return [2 /*return*/, JSON.parse(typeof res === \"object\" ? res.ClientPeoplePickerSearchUser : res)];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Creates ClientPeoplePickerQueryParameters request body\r\n *\r\n * @param queryParams The query parameters to create request body\r\n */\r\n ClientPeoplePickerQuery.prototype.getBodyFrom = function (queryParams) {\r\n return body({ \"queryParams\": assign(metadata(\"SP.UI.ApplicationPages.ClientPeoplePickerQueryParameters\"), queryParams) });\r\n };\r\n ClientPeoplePickerQuery = __decorate([\r\n defaultPath(\"_api/sp.ui.applicationpages.clientpeoplepickerwebserviceinterface\")\r\n ], ClientPeoplePickerQuery);\r\n return ClientPeoplePickerQuery;\r\n}(_SharePointQueryable));\r\nvar ClientPeoplePickerFactory = function (baseUrl, path) {\r\n return new ClientPeoplePickerQuery(baseUrl, path);\r\n};\r\n/**\r\n * Specifies the originating zone of a request received.\r\n */\r\nexport var UrlZone;\r\n(function (UrlZone) {\r\n /**\r\n * Specifies the default zone used for requests unless another zone is specified.\r\n */\r\n UrlZone[UrlZone[\"DefaultZone\"] = 0] = \"DefaultZone\";\r\n /**\r\n * Specifies an intranet zone.\r\n */\r\n UrlZone[UrlZone[\"Intranet\"] = 1] = \"Intranet\";\r\n /**\r\n * Specifies an Internet zone.\r\n */\r\n UrlZone[UrlZone[\"Internet\"] = 2] = \"Internet\";\r\n /**\r\n * Specifies a custom zone.\r\n */\r\n UrlZone[UrlZone[\"Custom\"] = 3] = \"Custom\";\r\n /**\r\n * Specifies an extranet zone.\r\n */\r\n UrlZone[UrlZone[\"Extranet\"] = 4] = \"Extranet\";\r\n})(UrlZone || (UrlZone = {}));\r\n//# sourceMappingURL=types.js.map","import { SPRest } from \"../rest.js\";\r\nimport { Profiles } from \"./types.js\";\r\nexport { Profiles, UrlZone, } from \"./types.js\";\r\nReflect.defineProperty(SPRest.prototype, \"profiles\", {\r\n configurable: true,\r\n enumerable: true,\r\n get: function () {\r\n return this.childConfigHook(function (_a) {\r\n var options = _a.options, baseUrl = _a.baseUrl, runtime = _a.runtime;\r\n return Profiles(baseUrl).configure(options).setRuntime(runtime);\r\n });\r\n },\r\n});\r\n//# sourceMappingURL=index.js.map","import { __awaiter, __decorate, __extends, __generator } from \"tslib\";\r\nimport { dateAdd, hOP } from \"@pnp/common\";\r\nimport { _SharePointQueryableInstance, SharePointQueryableCollection, _SharePointQueryableCollection, spInvokableFactory, } from \"../sharepointqueryable.js\";\r\nimport { defaultPath } from \"../decorators.js\";\r\nimport { spODataEntity } from \"../odata.js\";\r\nimport { spPost } from \"../operations.js\";\r\nimport { tag } from \"../telemetry.js\";\r\nvar _RegionalSettings = /** @class */ (function (_super) {\r\n __extends(_RegionalSettings, _super);\r\n function _RegionalSettings() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n Object.defineProperty(_RegionalSettings.prototype, \"installedLanguages\", {\r\n /**\r\n * Gets the collection of languages used in a server farm.\r\n * ** Please use getInstalledLanguages instead of this method **\r\n */\r\n get: function () {\r\n console.warn(\"Deprecated: RegionalSettings.installedLanguages is deprecated, please use RegionalSettings.getInstalledLanguages\");\r\n return tag.configure(SharePointQueryableCollection(this, \"installedlanguages\"), \"rs.installedLanguages\");\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n Object.defineProperty(_RegionalSettings.prototype, \"timeZone\", {\r\n /**\r\n * Gets time zone\r\n */\r\n get: function () {\r\n return tag.configure(TimeZone(this), \"rs.tz\");\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n Object.defineProperty(_RegionalSettings.prototype, \"timeZones\", {\r\n /**\r\n * Gets time zones\r\n */\r\n get: function () {\r\n return tag.configure(TimeZones(this), \"rs.tzs\");\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n /**\r\n * Gets the collection of languages used in a server farm.\r\n */\r\n _RegionalSettings.prototype.getInstalledLanguages = function () {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var results;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0: return [4 /*yield*/, tag.configure(SharePointQueryableCollection(this, \"installedlanguages\"), \"rs.getInstalledLanguages\")()];\r\n case 1:\r\n results = _a.sent();\r\n return [2 /*return*/, results.Items];\r\n }\r\n });\r\n });\r\n };\r\n _RegionalSettings = __decorate([\r\n defaultPath(\"regionalsettings\")\r\n ], _RegionalSettings);\r\n return _RegionalSettings;\r\n}(_SharePointQueryableInstance));\r\nexport { _RegionalSettings };\r\nexport var RegionalSettings = spInvokableFactory(_RegionalSettings);\r\nvar _TimeZone = /** @class */ (function (_super) {\r\n __extends(_TimeZone, _super);\r\n function _TimeZone() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n /**\r\n * Gets an Local Time by UTC Time\r\n *\r\n * @param utcTime UTC Time as Date or ISO String\r\n */\r\n _TimeZone.prototype.utcToLocalTime = function (utcTime) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var dateIsoString, res;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n if (typeof utcTime === \"string\") {\r\n dateIsoString = utcTime;\r\n }\r\n else {\r\n dateIsoString = utcTime.toISOString();\r\n }\r\n return [4 /*yield*/, spPost(this.clone(TimeZone, \"utctolocaltime('\" + dateIsoString + \"')\"))];\r\n case 1:\r\n res = _a.sent();\r\n return [2 /*return*/, hOP(res, \"UTCToLocalTime\") ? res.UTCToLocalTime : res];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Gets an UTC Time by Local Time\r\n *\r\n * @param localTime Local Time as Date or ISO String\r\n */\r\n _TimeZone.prototype.localTimeToUTC = function (localTime) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var dateIsoString, res;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n if (typeof localTime === \"string\") {\r\n dateIsoString = localTime;\r\n }\r\n else {\r\n dateIsoString = dateAdd(localTime, \"minute\", localTime.getTimezoneOffset() * -1).toISOString();\r\n }\r\n return [4 /*yield*/, spPost(this.clone(TimeZone, \"localtimetoutc('\" + dateIsoString + \"')\"))];\r\n case 1:\r\n res = _a.sent();\r\n return [2 /*return*/, hOP(res, \"LocalTimeToUTC\") ? res.LocalTimeToUTC : res];\r\n }\r\n });\r\n });\r\n };\r\n __decorate([\r\n tag(\"tz.utcToLocalTime\")\r\n ], _TimeZone.prototype, \"utcToLocalTime\", null);\r\n __decorate([\r\n tag(\"tz.localTimeToUTC\")\r\n ], _TimeZone.prototype, \"localTimeToUTC\", null);\r\n _TimeZone = __decorate([\r\n defaultPath(\"timezone\")\r\n ], _TimeZone);\r\n return _TimeZone;\r\n}(_SharePointQueryableInstance));\r\nexport { _TimeZone };\r\nexport var TimeZone = spInvokableFactory(_TimeZone);\r\nvar _TimeZones = /** @class */ (function (_super) {\r\n __extends(_TimeZones, _super);\r\n function _TimeZones() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n /**\r\n * Gets an TimeZone by id (see: https://msdn.microsoft.com/en-us/library/office/jj247008.aspx)\r\n *\r\n * @param id The integer id of the timezone to retrieve\r\n */\r\n _TimeZones.prototype.getById = function (id) {\r\n // do the post and merge the result into a TimeZone instance so the data and methods are available\r\n return spPost(this.clone(TimeZones, \"GetById(\" + id + \")\").usingParser(spODataEntity(TimeZone)));\r\n };\r\n __decorate([\r\n tag(\"tzs.getById\")\r\n ], _TimeZones.prototype, \"getById\", null);\r\n _TimeZones = __decorate([\r\n defaultPath(\"timezones\")\r\n ], _TimeZones);\r\n return _TimeZones;\r\n}(_SharePointQueryableCollection));\r\nexport { _TimeZones };\r\nexport var TimeZones = spInvokableFactory(_TimeZones);\r\n//# sourceMappingURL=types.js.map","import { SharePointQueryable } from \"../sharepointqueryable.js\";\r\nimport { spPost } from \"../operations.js\";\r\nimport { body } from \"@pnp/odata\";\r\nexport function getValueForUICultureBinder(propName) {\r\n return function (cultureName) {\r\n return spPost(this.clone(SharePointQueryable, propName + \"/getValueForUICulture\"), body({ cultureName: cultureName }));\r\n };\r\n}\r\n//# sourceMappingURL=funcs.js.map","import { addProp } from \"@pnp/odata\";\r\nimport { _Web } from \"../webs/types.js\";\r\nimport { RegionalSettings } from \"./types.js\";\r\nimport { getValueForUICultureBinder } from \"./funcs.js\";\r\naddProp(_Web, \"regionalSettings\", RegionalSettings);\r\n_Web.prototype.titleResource = getValueForUICultureBinder(\"titleResource\");\r\n_Web.prototype.descriptionResource = getValueForUICultureBinder(\"descriptionResource\");\r\n//# sourceMappingURL=web.js.map","import { __awaiter, __decorate, __extends, __generator } from \"tslib\";\r\nimport { _SharePointQueryableInstance, _SharePointQueryableCollection, spInvokableFactory, deleteable, } from \"../sharepointqueryable.js\";\r\nimport { assign } from \"@pnp/common\";\r\nimport { body } from \"@pnp/odata\";\r\nimport { defaultPath } from \"../decorators.js\";\r\nimport { spPost } from \"../operations.js\";\r\nimport { tag } from \"../telemetry.js\";\r\nimport { metadata } from \"../utils/metadata.js\";\r\nvar _UserCustomActions = /** @class */ (function (_super) {\r\n __extends(_UserCustomActions, _super);\r\n function _UserCustomActions() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n /**\r\n * Returns the user custom action with the specified id\r\n *\r\n * @param id The GUID id of the user custom action to retrieve\r\n */\r\n _UserCustomActions.prototype.getById = function (id) {\r\n return tag.configure(UserCustomAction(this).concat(\"('\" + id + \"')\"), \"ucas.getById\");\r\n };\r\n /**\r\n * Creates a user custom action\r\n *\r\n * @param properties The information object of property names and values which define the new user custom action\r\n */\r\n _UserCustomActions.prototype.add = function (properties) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var data;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0: return [4 /*yield*/, spPost(this, body(assign(metadata(\"SP.UserCustomAction\"), properties)))];\r\n case 1:\r\n data = _a.sent();\r\n return [2 /*return*/, {\r\n action: this.getById(data.Id),\r\n data: data,\r\n }];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Deletes all user custom actions in the collection\r\n */\r\n _UserCustomActions.prototype.clear = function () {\r\n return spPost(this.clone(UserCustomActions, \"clear\"));\r\n };\r\n __decorate([\r\n tag(\"ucas.add\")\r\n ], _UserCustomActions.prototype, \"add\", null);\r\n __decorate([\r\n tag(\"ucas.clear\")\r\n ], _UserCustomActions.prototype, \"clear\", null);\r\n _UserCustomActions = __decorate([\r\n defaultPath(\"usercustomactions\")\r\n ], _UserCustomActions);\r\n return _UserCustomActions;\r\n}(_SharePointQueryableCollection));\r\nexport { _UserCustomActions };\r\nexport var UserCustomActions = spInvokableFactory(_UserCustomActions);\r\nvar _UserCustomAction = /** @class */ (function (_super) {\r\n __extends(_UserCustomAction, _super);\r\n function _UserCustomAction() {\r\n var _this = _super !== null && _super.apply(this, arguments) || this;\r\n _this.delete = deleteable(\"uca\");\r\n /**\r\n * Updates this user custom action with the supplied properties\r\n *\r\n * @param properties An information object of property names and values to update for this user custom action\r\n */\r\n _this.update = _this._update(\"SP.UserCustomAction\", function (data) { return ({ data: data, action: _this }); });\r\n return _this;\r\n }\r\n return _UserCustomAction;\r\n}(_SharePointQueryableInstance));\r\nexport { _UserCustomAction };\r\nexport var UserCustomAction = spInvokableFactory(_UserCustomAction);\r\nexport var UserCustomActionRegistrationType;\r\n(function (UserCustomActionRegistrationType) {\r\n UserCustomActionRegistrationType[UserCustomActionRegistrationType[\"None\"] = 0] = \"None\";\r\n UserCustomActionRegistrationType[UserCustomActionRegistrationType[\"List\"] = 1] = \"List\";\r\n UserCustomActionRegistrationType[UserCustomActionRegistrationType[\"ContentType\"] = 2] = \"ContentType\";\r\n UserCustomActionRegistrationType[UserCustomActionRegistrationType[\"ProgId\"] = 3] = \"ProgId\";\r\n UserCustomActionRegistrationType[UserCustomActionRegistrationType[\"FileType\"] = 4] = \"FileType\";\r\n})(UserCustomActionRegistrationType || (UserCustomActionRegistrationType = {}));\r\nexport var UserCustomActionScope;\r\n(function (UserCustomActionScope) {\r\n UserCustomActionScope[UserCustomActionScope[\"Unknown\"] = 0] = \"Unknown\";\r\n UserCustomActionScope[UserCustomActionScope[\"Site\"] = 2] = \"Site\";\r\n UserCustomActionScope[UserCustomActionScope[\"Web\"] = 3] = \"Web\";\r\n UserCustomActionScope[UserCustomActionScope[\"List\"] = 4] = \"List\";\r\n})(UserCustomActionScope || (UserCustomActionScope = {}));\r\n//# sourceMappingURL=types.js.map","import { _UserCustomAction } from \"../user-custom-actions/types.js\";\r\nimport { getValueForUICultureBinder } from \"./funcs.js\";\r\n_UserCustomAction.prototype.titleResource = getValueForUICultureBinder(\"titleResource\");\r\n_UserCustomAction.prototype.descriptionResource = getValueForUICultureBinder(\"descriptionResource\");\r\n//# sourceMappingURL=user-custom-actions.js.map","import { _List } from \"../lists/types.js\";\r\nimport { getValueForUICultureBinder } from \"./funcs.js\";\r\n_List.prototype.titleResource = getValueForUICultureBinder(\"titleResource\");\r\n_List.prototype.descriptionResource = getValueForUICultureBinder(\"descriptionResource\");\r\n//# sourceMappingURL=list.js.map","import { _Field } from \"../fields/types.js\";\r\nimport { getValueForUICultureBinder } from \"./funcs.js\";\r\n_Field.prototype.titleResource = getValueForUICultureBinder(\"titleResource\");\r\n_Field.prototype.descriptionResource = getValueForUICultureBinder(\"descriptionResource\");\r\n//# sourceMappingURL=field.js.map","import { _ContentType } from \"../content-types/types.js\";\r\nimport { getValueForUICultureBinder } from \"./funcs.js\";\r\n_ContentType.prototype.titleResource = getValueForUICultureBinder(\"titleResource\");\r\n_ContentType.prototype.descriptionResource = getValueForUICultureBinder(\"descriptionResource\");\r\n//# sourceMappingURL=content-type.js.map","import { __decorate, __extends } from \"tslib\";\r\nimport { _SharePointQueryable } from \"../sharepointqueryable.js\";\r\nimport { extractWebUrl } from \"../utils/extractweburl.js\";\r\nimport { defaultPath } from \"../decorators.js\";\r\nimport { spPost } from \"../operations.js\";\r\nimport { body } from \"@pnp/odata\";\r\nimport { tag } from \"../telemetry.js\";\r\nvar _RelatedItemManager = /** @class */ (function (_super) {\r\n __extends(_RelatedItemManager, _super);\r\n function _RelatedItemManager() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n _RelatedItemManager.prototype.getRelatedItems = function (sourceListName, sourceItemId) {\r\n var query = this.clone(RelatedItemManager, null);\r\n query.concat(\".GetRelatedItems\");\r\n return spPost(query, body({\r\n SourceItemID: sourceItemId,\r\n SourceListName: sourceListName,\r\n }));\r\n };\r\n _RelatedItemManager.prototype.getPageOneRelatedItems = function (sourceListName, sourceItemId) {\r\n var query = this.clone(RelatedItemManager, null);\r\n query.concat(\".GetPageOneRelatedItems\");\r\n return spPost(query, body({\r\n SourceItemID: sourceItemId,\r\n SourceListName: sourceListName,\r\n }));\r\n };\r\n _RelatedItemManager.prototype.addSingleLink = function (sourceListName, sourceItemId, sourceWebUrl, targetListName, targetItemID, targetWebUrl, tryAddReverseLink) {\r\n if (tryAddReverseLink === void 0) { tryAddReverseLink = false; }\r\n var query = this.clone(RelatedItemManager, null);\r\n query.concat(\".AddSingleLink\");\r\n return spPost(query, body({\r\n SourceItemID: sourceItemId,\r\n SourceListName: sourceListName,\r\n SourceWebUrl: sourceWebUrl,\r\n TargetItemID: targetItemID,\r\n TargetListName: targetListName,\r\n TargetWebUrl: targetWebUrl,\r\n TryAddReverseLink: tryAddReverseLink,\r\n }));\r\n };\r\n _RelatedItemManager.prototype.addSingleLinkToUrl = function (sourceListName, sourceItemId, targetItemUrl, tryAddReverseLink) {\r\n if (tryAddReverseLink === void 0) { tryAddReverseLink = false; }\r\n var query = this.clone(RelatedItemManager, null);\r\n query.concat(\".AddSingleLinkToUrl\");\r\n return spPost(query, body({\r\n SourceItemID: sourceItemId,\r\n SourceListName: sourceListName,\r\n TargetItemUrl: targetItemUrl,\r\n TryAddReverseLink: tryAddReverseLink,\r\n }));\r\n };\r\n _RelatedItemManager.prototype.addSingleLinkFromUrl = function (sourceItemUrl, targetListName, targetItemId, tryAddReverseLink) {\r\n if (tryAddReverseLink === void 0) { tryAddReverseLink = false; }\r\n var query = this.clone(RelatedItemManager, null);\r\n query.concat(\".AddSingleLinkFromUrl\");\r\n return spPost(query, body({\r\n SourceItemUrl: sourceItemUrl,\r\n TargetItemID: targetItemId,\r\n TargetListName: targetListName,\r\n TryAddReverseLink: tryAddReverseLink,\r\n }));\r\n };\r\n _RelatedItemManager.prototype.deleteSingleLink = function (sourceListName, sourceItemId, sourceWebUrl, targetListName, targetItemId, targetWebUrl, tryDeleteReverseLink) {\r\n if (tryDeleteReverseLink === void 0) { tryDeleteReverseLink = false; }\r\n var query = this.clone(RelatedItemManager, null);\r\n query.concat(\".DeleteSingleLink\");\r\n return spPost(query, body({\r\n SourceItemID: sourceItemId,\r\n SourceListName: sourceListName,\r\n SourceWebUrl: sourceWebUrl,\r\n TargetItemID: targetItemId,\r\n TargetListName: targetListName,\r\n TargetWebUrl: targetWebUrl,\r\n TryDeleteReverseLink: tryDeleteReverseLink,\r\n }));\r\n };\r\n __decorate([\r\n tag(\"rim.getRelatedItems\")\r\n ], _RelatedItemManager.prototype, \"getRelatedItems\", null);\r\n __decorate([\r\n tag(\"rim.getPageOneRelatedItems\")\r\n ], _RelatedItemManager.prototype, \"getPageOneRelatedItems\", null);\r\n __decorate([\r\n tag(\"rim.addSingleLink\")\r\n ], _RelatedItemManager.prototype, \"addSingleLink\", null);\r\n __decorate([\r\n tag(\"rim.ToUrl\")\r\n ], _RelatedItemManager.prototype, \"addSingleLinkToUrl\", null);\r\n __decorate([\r\n tag(\"rim.FromUrl\")\r\n ], _RelatedItemManager.prototype, \"addSingleLinkFromUrl\", null);\r\n __decorate([\r\n tag(\"rim.deleteSingleLink\")\r\n ], _RelatedItemManager.prototype, \"deleteSingleLink\", null);\r\n _RelatedItemManager = __decorate([\r\n defaultPath(\"_api/SP.RelatedItemManager\")\r\n ], _RelatedItemManager);\r\n return _RelatedItemManager;\r\n}(_SharePointQueryable));\r\nexport { _RelatedItemManager };\r\nexport var RelatedItemManager = function (url) { return new _RelatedItemManager(extractWebUrl(typeof url === \"string\" ? url : url.toUrl())); };\r\n//# sourceMappingURL=types.js.map","import { __awaiter, __decorate, __extends, __generator, __values } from \"tslib\";\r\nimport { _SharePointQueryableInstance } from \"../sharepointqueryable.js\";\r\nimport { assign, hOP, getHashCode, objectDefinedNotNull, isArray, DefaultRuntime, stringIsNullOrEmpty } from \"@pnp/common\";\r\nimport { metadata } from \"../utils/metadata.js\";\r\nimport { CachingOptions, body } from \"@pnp/odata\";\r\nimport { spPost } from \"../operations.js\";\r\nimport { defaultPath } from \"../decorators.js\";\r\nimport { tag } from \"../telemetry.js\";\r\nvar funcs = new Map([\r\n [\"text\", \"Querytext\"],\r\n [\"template\", \"QueryTemplate\"],\r\n [\"sourceId\", \"SourceId\"],\r\n [\"trimDuplicatesIncludeId\", \"\"],\r\n [\"startRow\", \"\"],\r\n [\"rowLimit\", \"\"],\r\n [\"rankingModelId\", \"\"],\r\n [\"rowsPerPage\", \"\"],\r\n [\"selectProperties\", \"\"],\r\n [\"culture\", \"\"],\r\n [\"timeZoneId\", \"\"],\r\n [\"refinementFilters\", \"\"],\r\n [\"refiners\", \"\"],\r\n [\"hiddenConstraints\", \"\"],\r\n [\"sortList\", \"\"],\r\n [\"timeout\", \"\"],\r\n [\"hitHighlightedProperties\", \"\"],\r\n [\"clientType\", \"\"],\r\n [\"personalizationData\", \"\"],\r\n [\"resultsURL\", \"\"],\r\n [\"queryTag\", \"\"],\r\n [\"properties\", \"\"],\r\n [\"queryTemplatePropertiesUrl\", \"\"],\r\n [\"reorderingRules\", \"\"],\r\n [\"hitHighlightedMultivaluePropertyLimit\", \"\"],\r\n [\"collapseSpecification\", \"\"],\r\n [\"uiLanguage\", \"\"],\r\n [\"desiredSnippetLength\", \"\"],\r\n [\"maxSnippetLength\", \"\"],\r\n [\"summaryLength\", \"\"],\r\n]);\r\nvar props = new Map([]);\r\nfunction toPropCase(str) {\r\n return str.replace(/^(.)/, function ($1) { return $1.toUpperCase(); });\r\n}\r\n/**\r\n * Creates a new instance of the SearchQueryBuilder\r\n *\r\n * @param queryText Initial query text\r\n * @param _query Any initial query configuration\r\n */\r\nexport function SearchQueryBuilder(queryText, _query) {\r\n if (queryText === void 0) { queryText = \"\"; }\r\n if (_query === void 0) { _query = {}; }\r\n return new Proxy({\r\n query: Object.assign({\r\n Querytext: queryText,\r\n }, _query),\r\n }, {\r\n get: function (self, propertyKey, proxy) {\r\n var pk = propertyKey.toString();\r\n if (pk === \"toSearchQuery\") {\r\n return function () { return self.query; };\r\n }\r\n if (funcs.has(pk)) {\r\n return function () {\r\n var value = [];\r\n for (var _i = 0; _i < arguments.length; _i++) {\r\n value[_i] = arguments[_i];\r\n }\r\n var mappedPk = funcs.get(pk);\r\n self.query[mappedPk.length > 0 ? mappedPk : toPropCase(pk)] = value.length > 1 ? value : value[0];\r\n return proxy;\r\n };\r\n }\r\n var propKey = props.has(pk) ? props.get(pk) : toPropCase(pk);\r\n self.query[propKey] = true;\r\n return proxy;\r\n },\r\n });\r\n}\r\nvar queryRegex = /_api\\/search\\/postquery$/i;\r\n/**\r\n * Describes the search API\r\n *\r\n */\r\nvar _Search = /** @class */ (function (_super) {\r\n __extends(_Search, _super);\r\n function _Search() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n /**\r\n * @returns Promise\r\n */\r\n _Search.prototype.execute = function (queryInit) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var query, postBody, cacheKey, data;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n query = this.parseQuery(queryInit);\r\n postBody = body({\r\n request: assign(metadata(\"Microsoft.Office.Server.Search.REST.SearchRequest\"), Object.assign({}, query, {\r\n HitHighlightedProperties: this.fixArrProp(query.HitHighlightedProperties),\r\n Properties: this.fixArrProp(query.Properties),\r\n RefinementFilters: this.fixArrProp(query.RefinementFilters),\r\n ReorderingRules: this.fixArrProp(query.ReorderingRules),\r\n SelectProperties: this.fixArrProp(query.SelectProperties),\r\n SortList: this.fixArrProp(query.SortList),\r\n })),\r\n });\r\n // if we are using caching with this search request, then we need to handle some work upfront to enable that\r\n if (this.data.useCaching) {\r\n // force use of the cache for this request if .usingCaching was called\r\n this._forceCaching = true;\r\n cacheKey = \"PnPjs.SearchWithCaching(\" + getHashCode(postBody.body) + \")\";\r\n if (objectDefinedNotNull(this.data.cachingOptions)) {\r\n // if our key ends in the postquery url we overwrite it\r\n if (stringIsNullOrEmpty(this.data.cachingOptions.key) || queryRegex.test(this.data.cachingOptions.key)) {\r\n this.data.cachingOptions.key = cacheKey;\r\n }\r\n }\r\n else {\r\n this.data.cachingOptions = new CachingOptions(cacheKey);\r\n }\r\n }\r\n return [4 /*yield*/, spPost(this, postBody)];\r\n case 1:\r\n data = _a.sent();\r\n return [2 /*return*/, new SearchResults(data, this.toUrl(), query)];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Fix array property\r\n *\r\n * @param prop property to fix for container struct\r\n */\r\n _Search.prototype.fixArrProp = function (prop) {\r\n if (typeof prop === \"undefined\") {\r\n return ({ results: [] });\r\n }\r\n return { results: isArray(prop) ? prop : [prop] };\r\n };\r\n /**\r\n * Translates one of the query initializers into a SearchQuery instance\r\n *\r\n * @param query\r\n */\r\n _Search.prototype.parseQuery = function (query) {\r\n var finalQuery;\r\n if (typeof query === \"string\") {\r\n finalQuery = { Querytext: query };\r\n }\r\n else if (query.toSearchQuery) {\r\n finalQuery = query.toSearchQuery();\r\n }\r\n else {\r\n finalQuery = query;\r\n }\r\n return finalQuery;\r\n };\r\n __decorate([\r\n tag(\"se.execute\")\r\n ], _Search.prototype, \"execute\", null);\r\n _Search = __decorate([\r\n defaultPath(\"_api/search/postquery\")\r\n ], _Search);\r\n return _Search;\r\n}(_SharePointQueryableInstance));\r\nexport { _Search };\r\nexport var Search = function (baseUrl, options, runtime) {\r\n if (options === void 0) { options = {}; }\r\n if (runtime === void 0) { runtime = DefaultRuntime; }\r\n return function (queryInit) {\r\n return (new _Search(baseUrl)).configure(options).setRuntime(runtime).execute(queryInit);\r\n };\r\n};\r\nvar SearchResults = /** @class */ (function () {\r\n function SearchResults(rawResponse, _url, _query, _raw, _primary) {\r\n if (_raw === void 0) { _raw = null; }\r\n if (_primary === void 0) { _primary = null; }\r\n this._url = _url;\r\n this._query = _query;\r\n this._raw = _raw;\r\n this._primary = _primary;\r\n this._url = this._url.replace(queryRegex, \"\");\r\n this._raw = rawResponse.postquery ? rawResponse.postquery : rawResponse;\r\n }\r\n Object.defineProperty(SearchResults.prototype, \"ElapsedTime\", {\r\n get: function () {\r\n var _a;\r\n return ((_a = this === null || this === void 0 ? void 0 : this.RawSearchResults) === null || _a === void 0 ? void 0 : _a.ElapsedTime) || 0;\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n Object.defineProperty(SearchResults.prototype, \"RowCount\", {\r\n get: function () {\r\n var _a, _b, _c;\r\n return ((_c = (_b = (_a = this === null || this === void 0 ? void 0 : this.RawSearchResults) === null || _a === void 0 ? void 0 : _a.PrimaryQueryResult) === null || _b === void 0 ? void 0 : _b.RelevantResults) === null || _c === void 0 ? void 0 : _c.RowCount) || 0;\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n Object.defineProperty(SearchResults.prototype, \"TotalRows\", {\r\n get: function () {\r\n var _a, _b, _c;\r\n return ((_c = (_b = (_a = this === null || this === void 0 ? void 0 : this.RawSearchResults) === null || _a === void 0 ? void 0 : _a.PrimaryQueryResult) === null || _b === void 0 ? void 0 : _b.RelevantResults) === null || _c === void 0 ? void 0 : _c.TotalRows) || 0;\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n Object.defineProperty(SearchResults.prototype, \"TotalRowsIncludingDuplicates\", {\r\n get: function () {\r\n var _a, _b, _c;\r\n return ((_c = (_b = (_a = this === null || this === void 0 ? void 0 : this.RawSearchResults) === null || _a === void 0 ? void 0 : _a.PrimaryQueryResult) === null || _b === void 0 ? void 0 : _b.RelevantResults) === null || _c === void 0 ? void 0 : _c.TotalRowsIncludingDuplicates) || 0;\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n Object.defineProperty(SearchResults.prototype, \"RawSearchResults\", {\r\n get: function () {\r\n return this._raw;\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n Object.defineProperty(SearchResults.prototype, \"PrimarySearchResults\", {\r\n get: function () {\r\n var _a, _b, _c, _d;\r\n if (this._primary === null) {\r\n this._primary = this.formatSearchResults(((_d = (_c = (_b = (_a = this._raw) === null || _a === void 0 ? void 0 : _a.PrimaryQueryResult) === null || _b === void 0 ? void 0 : _b.RelevantResults) === null || _c === void 0 ? void 0 : _c.Table) === null || _d === void 0 ? void 0 : _d.Rows) || null);\r\n }\r\n return this._primary;\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n /**\r\n * Gets a page of results\r\n *\r\n * @param pageNumber Index of the page to return. Used to determine StartRow\r\n * @param pageSize Optional, items per page (default = 10)\r\n */\r\n SearchResults.prototype.getPage = function (pageNumber, pageSize) {\r\n // if we got all the available rows we don't have another page\r\n if (this.TotalRows < this.RowCount) {\r\n return Promise.resolve(null);\r\n }\r\n // if pageSize is supplied, then we use that regardless of any previous values\r\n // otherwise get the previous RowLimit or default to 10\r\n var rows = pageSize !== undefined ? pageSize : hOP(this._query, \"RowLimit\") ? this._query.RowLimit : 10;\r\n var query = assign(this._query, {\r\n RowLimit: rows,\r\n StartRow: rows * (pageNumber - 1),\r\n });\r\n // we have reached the end\r\n if (query.StartRow > this.TotalRows) {\r\n return Promise.resolve(null);\r\n }\r\n return Search(this._url)(query);\r\n };\r\n /**\r\n * Formats a search results array\r\n *\r\n * @param rawResults The array to process\r\n */\r\n SearchResults.prototype.formatSearchResults = function (rawResults) {\r\n var e_1, _a;\r\n var results = new Array();\r\n if (typeof (rawResults) === \"undefined\" || rawResults == null) {\r\n return [];\r\n }\r\n var tempResults = rawResults.results ? rawResults.results : rawResults;\r\n try {\r\n for (var tempResults_1 = __values(tempResults), tempResults_1_1 = tempResults_1.next(); !tempResults_1_1.done; tempResults_1_1 = tempResults_1.next()) {\r\n var tempResult = tempResults_1_1.value;\r\n var cells = tempResult.Cells.results ? tempResult.Cells.results : tempResult.Cells;\r\n results.push(cells.reduce(function (res, cell) {\r\n Reflect.defineProperty(res, cell.Key, {\r\n configurable: false,\r\n enumerable: true,\r\n value: cell.Value,\r\n writable: false,\r\n });\r\n return res;\r\n }, {}));\r\n }\r\n }\r\n catch (e_1_1) { e_1 = { error: e_1_1 }; }\r\n finally {\r\n try {\r\n if (tempResults_1_1 && !tempResults_1_1.done && (_a = tempResults_1.return)) _a.call(tempResults_1);\r\n }\r\n finally { if (e_1) throw e_1.error; }\r\n }\r\n return results;\r\n };\r\n return SearchResults;\r\n}());\r\nexport { SearchResults };\r\n//# sourceMappingURL=query.js.map","/**\r\n * defines the SortDirection enum\r\n */\r\nexport var SortDirection;\r\n(function (SortDirection) {\r\n SortDirection[SortDirection[\"Ascending\"] = 0] = \"Ascending\";\r\n SortDirection[SortDirection[\"Descending\"] = 1] = \"Descending\";\r\n SortDirection[SortDirection[\"FQLFormula\"] = 2] = \"FQLFormula\";\r\n})(SortDirection || (SortDirection = {}));\r\n/**\r\n * defines the ReorderingRuleMatchType enum\r\n */\r\nexport var ReorderingRuleMatchType;\r\n(function (ReorderingRuleMatchType) {\r\n ReorderingRuleMatchType[ReorderingRuleMatchType[\"ResultContainsKeyword\"] = 0] = \"ResultContainsKeyword\";\r\n ReorderingRuleMatchType[ReorderingRuleMatchType[\"TitleContainsKeyword\"] = 1] = \"TitleContainsKeyword\";\r\n ReorderingRuleMatchType[ReorderingRuleMatchType[\"TitleMatchesKeyword\"] = 2] = \"TitleMatchesKeyword\";\r\n ReorderingRuleMatchType[ReorderingRuleMatchType[\"UrlStartsWith\"] = 3] = \"UrlStartsWith\";\r\n ReorderingRuleMatchType[ReorderingRuleMatchType[\"UrlExactlyMatches\"] = 4] = \"UrlExactlyMatches\";\r\n ReorderingRuleMatchType[ReorderingRuleMatchType[\"ContentTypeIs\"] = 5] = \"ContentTypeIs\";\r\n ReorderingRuleMatchType[ReorderingRuleMatchType[\"FileExtensionMatches\"] = 6] = \"FileExtensionMatches\";\r\n ReorderingRuleMatchType[ReorderingRuleMatchType[\"ResultHasTag\"] = 7] = \"ResultHasTag\";\r\n ReorderingRuleMatchType[ReorderingRuleMatchType[\"ManualCondition\"] = 8] = \"ManualCondition\";\r\n})(ReorderingRuleMatchType || (ReorderingRuleMatchType = {}));\r\n/**\r\n * Specifies the type value for the property\r\n */\r\nexport var QueryPropertyValueType;\r\n(function (QueryPropertyValueType) {\r\n QueryPropertyValueType[QueryPropertyValueType[\"None\"] = 0] = \"None\";\r\n QueryPropertyValueType[QueryPropertyValueType[\"StringType\"] = 1] = \"StringType\";\r\n QueryPropertyValueType[QueryPropertyValueType[\"Int32Type\"] = 2] = \"Int32Type\";\r\n QueryPropertyValueType[QueryPropertyValueType[\"BooleanType\"] = 3] = \"BooleanType\";\r\n QueryPropertyValueType[QueryPropertyValueType[\"StringArrayType\"] = 4] = \"StringArrayType\";\r\n QueryPropertyValueType[QueryPropertyValueType[\"UnSupportedType\"] = 5] = \"UnSupportedType\";\r\n})(QueryPropertyValueType || (QueryPropertyValueType = {}));\r\nvar SearchBuiltInSourceId = /** @class */ (function () {\r\n function SearchBuiltInSourceId() {\r\n }\r\n SearchBuiltInSourceId.Documents = \"e7ec8cee-ded8-43c9-beb5-436b54b31e84\";\r\n SearchBuiltInSourceId.ItemsMatchingContentType = \"5dc9f503-801e-4ced-8a2c-5d1237132419\";\r\n SearchBuiltInSourceId.ItemsMatchingTag = \"e1327b9c-2b8c-4b23-99c9-3730cb29c3f7\";\r\n SearchBuiltInSourceId.ItemsRelatedToCurrentUser = \"48fec42e-4a92-48ce-8363-c2703a40e67d\";\r\n SearchBuiltInSourceId.ItemsWithSameKeywordAsThisItem = \"5c069288-1d17-454a-8ac6-9c642a065f48\";\r\n SearchBuiltInSourceId.LocalPeopleResults = \"b09a7990-05ea-4af9-81ef-edfab16c4e31\";\r\n SearchBuiltInSourceId.LocalReportsAndDataResults = \"203fba36-2763-4060-9931-911ac8c0583b\";\r\n SearchBuiltInSourceId.LocalSharePointResults = \"8413cd39-2156-4e00-b54d-11efd9abdb89\";\r\n SearchBuiltInSourceId.LocalVideoResults = \"78b793ce-7956-4669-aa3b-451fc5defebf\";\r\n SearchBuiltInSourceId.Pages = \"5e34578e-4d08-4edc-8bf3-002acf3cdbcc\";\r\n SearchBuiltInSourceId.Pictures = \"38403c8c-3975-41a8-826e-717f2d41568a\";\r\n SearchBuiltInSourceId.Popular = \"97c71db1-58ce-4891-8b64-585bc2326c12\";\r\n SearchBuiltInSourceId.RecentlyChangedItems = \"ba63bbae-fa9c-42c0-b027-9a878f16557c\";\r\n SearchBuiltInSourceId.RecommendedItems = \"ec675252-14fa-4fbe-84dd-8d098ed74181\";\r\n SearchBuiltInSourceId.Wiki = \"9479bf85-e257-4318-b5a8-81a180f5faa1\";\r\n return SearchBuiltInSourceId;\r\n}());\r\nexport { SearchBuiltInSourceId };\r\n//# sourceMappingURL=types.js.map","import { __awaiter, __decorate, __extends, __generator } from \"tslib\";\r\nimport { _SharePointQueryableInstance } from \"../sharepointqueryable.js\";\r\nimport { hOP, DefaultRuntime } from \"@pnp/common\";\r\nimport { defaultPath } from \"../decorators.js\";\r\nimport { tag } from \"../telemetry.js\";\r\nvar _Suggest = /** @class */ (function (_super) {\r\n __extends(_Suggest, _super);\r\n function _Suggest() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n _Suggest.prototype.execute = function (query) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var response, mapper;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n this.mapQueryToQueryString(query);\r\n return [4 /*yield*/, this.get()];\r\n case 1:\r\n response = _a.sent();\r\n mapper = hOP(response, \"suggest\") ? function (s_1) { return response.suggest[s_1].results; } : function (s_2) { return response[s_2]; };\r\n return [2 /*return*/, {\r\n PeopleNames: mapper(\"PeopleNames\"),\r\n PersonalResults: mapper(\"PersonalResults\"),\r\n Queries: mapper(\"Queries\"),\r\n }];\r\n }\r\n });\r\n });\r\n };\r\n _Suggest.prototype.mapQueryToQueryString = function (query) {\r\n var _this = this;\r\n var setProp = function (q) { return function (checkProp) { return function (sp) {\r\n if (hOP(q, checkProp)) {\r\n _this.query.set(sp, q[checkProp].toString());\r\n }\r\n }; }; };\r\n this.query.set(\"querytext\", \"'\" + query.querytext + \"'\");\r\n var querySetter = setProp(query);\r\n querySetter(\"count\")(\"inumberofquerysuggestions\");\r\n querySetter(\"personalCount\")(\"inumberofresultsuggestions\");\r\n querySetter(\"preQuery\")(\"fprequerysuggestions\");\r\n querySetter(\"hitHighlighting\")(\"fhithighlighting\");\r\n querySetter(\"capitalize\")(\"fcapitalizefirstletters\");\r\n querySetter(\"culture\")(\"culture\");\r\n querySetter(\"stemming\")(\"enablestemming\");\r\n querySetter(\"includePeople\")(\"showpeoplenamesuggestions\");\r\n querySetter(\"queryRules\")(\"enablequeryrules\");\r\n querySetter(\"prefixMatch\")(\"fprefixmatchallterms\");\r\n };\r\n __decorate([\r\n tag(\"su.execute\")\r\n ], _Suggest.prototype, \"execute\", null);\r\n _Suggest = __decorate([\r\n defaultPath(\"_api/search/suggest\")\r\n ], _Suggest);\r\n return _Suggest;\r\n}(_SharePointQueryableInstance));\r\nexport { _Suggest };\r\nexport var Suggest = function (baseUrl, options, runtime) {\r\n if (options === void 0) { options = {}; }\r\n if (runtime === void 0) { runtime = DefaultRuntime; }\r\n return function (query) {\r\n return (new _Suggest(baseUrl)).configure(options).setRuntime(runtime).execute(query);\r\n };\r\n};\r\n//# sourceMappingURL=suggest.js.map","import { SPRest } from \"../rest.js\";\r\nimport { _Search } from \"./query.js\";\r\nimport { Search } from \"./query.js\";\r\nimport { Suggest } from \"./suggest.js\";\r\nexport * from \"./types.js\";\r\nexport { SearchQueryBuilder, SearchResults, Search, } from \"./query.js\";\r\nexport { Suggest, } from \"./suggest.js\";\r\nSPRest.prototype.search = function (query) {\r\n return this.childConfigHook(function (_a) {\r\n var options = _a.options, baseUrl = _a.baseUrl, runtime = _a.runtime;\r\n return Search(baseUrl, options, runtime)(query);\r\n });\r\n};\r\nSPRest.prototype.searchWithCaching = function (query, cacheOptions) {\r\n return this.childConfigHook(function (_a) {\r\n var options = _a.options, baseUrl = _a.baseUrl, runtime = _a.runtime;\r\n return (new _Search(baseUrl)).configure(options).setRuntime(runtime).usingCaching(cacheOptions).execute(query);\r\n });\r\n};\r\nSPRest.prototype.searchSuggest = function (query) {\r\n return this.childConfigHook(function (_a) {\r\n var options = _a.options, baseUrl = _a.baseUrl, runtime = _a.runtime;\r\n return Suggest(baseUrl, options, runtime)(typeof query === \"string\" ? { querytext: query } : query);\r\n });\r\n};\r\n//# sourceMappingURL=index.js.map","import { __awaiter, __decorate, __extends, __generator } from \"tslib\";\r\nimport { _SharePointQueryableInstance, _SharePointQueryableCollection, spInvokableFactory, deleteable, } from \"../sharepointqueryable.js\";\r\nimport { SiteGroups } from \"../site-groups/types.js\";\r\nimport { assign } from \"@pnp/common\";\r\nimport { metadata } from \"../utils/metadata.js\";\r\nimport { body } from \"@pnp/odata\";\r\nimport { defaultPath } from \"../decorators.js\";\r\nimport { spPost } from \"../operations.js\";\r\nimport { tag } from \"../telemetry.js\";\r\nvar _SiteUsers = /** @class */ (function (_super) {\r\n __extends(_SiteUsers, _super);\r\n function _SiteUsers() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n /**\r\n * Gets a user from the collection by id\r\n *\r\n * @param id The id of the user to retrieve\r\n */\r\n _SiteUsers.prototype.getById = function (id) {\r\n return tag.configure(SiteUser(this, \"getById(\" + id + \")\"), \"sus.getById\");\r\n };\r\n /**\r\n * Gets a user from the collection by email\r\n *\r\n * @param email The email address of the user to retrieve\r\n */\r\n _SiteUsers.prototype.getByEmail = function (email) {\r\n return tag.configure(SiteUser(this, \"getByEmail('\" + email + \"')\"), \"sus.getByEmail\");\r\n };\r\n /**\r\n * Gets a user from the collection by login name\r\n *\r\n * @param loginName The login name of the user to retrieve\r\n */\r\n _SiteUsers.prototype.getByLoginName = function (loginName) {\r\n return tag.configure(SiteUser(this).concat(\"('!@v::\" + encodeURIComponent(loginName) + \"')\"), \"sus.getByLoginName\");\r\n };\r\n /**\r\n * Removes a user from the collection by id\r\n *\r\n * @param id The id of the user to remove\r\n */\r\n _SiteUsers.prototype.removeById = function (id) {\r\n return spPost(this.clone(SiteUsers, \"removeById(\" + id + \")\"));\r\n };\r\n /**\r\n * Removes a user from the collection by login name\r\n *\r\n * @param loginName The login name of the user to remove\r\n */\r\n _SiteUsers.prototype.removeByLoginName = function (loginName) {\r\n var o = this.clone(SiteUsers, \"removeByLoginName(@v)\");\r\n o.query.set(\"@v\", \"'\" + encodeURIComponent(loginName) + \"'\");\r\n return spPost(o);\r\n };\r\n /**\r\n * Adds a user to a site collection\r\n *\r\n * @param loginName The login name of the user to add to a site collection\r\n *\r\n */\r\n _SiteUsers.prototype.add = function (loginName) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0: return [4 /*yield*/, spPost(this, body(assign(metadata(\"SP.User\"), { LoginName: loginName })))];\r\n case 1:\r\n _a.sent();\r\n return [2 /*return*/, this.getByLoginName(loginName)];\r\n }\r\n });\r\n });\r\n };\r\n __decorate([\r\n tag(\"sus.remId\")\r\n ], _SiteUsers.prototype, \"removeById\", null);\r\n __decorate([\r\n tag(\"sus.remLoginName\")\r\n ], _SiteUsers.prototype, \"removeByLoginName\", null);\r\n __decorate([\r\n tag(\"sus.add\")\r\n ], _SiteUsers.prototype, \"add\", null);\r\n _SiteUsers = __decorate([\r\n defaultPath(\"siteusers\")\r\n ], _SiteUsers);\r\n return _SiteUsers;\r\n}(_SharePointQueryableCollection));\r\nexport { _SiteUsers };\r\nexport var SiteUsers = spInvokableFactory(_SiteUsers);\r\n/**\r\n * Describes a single user\r\n *\r\n */\r\nvar _SiteUser = /** @class */ (function (_super) {\r\n __extends(_SiteUser, _super);\r\n function _SiteUser() {\r\n var _this = _super !== null && _super.apply(this, arguments) || this;\r\n _this.delete = deleteable(\"su\");\r\n /**\r\n * Updates this user instance with the supplied properties\r\n *\r\n * @param properties A plain object of property names and values to update for the user\r\n */\r\n _this.update = _this._update(\"SP.User\", function (data) { return ({ data: data, user: _this }); });\r\n return _this;\r\n }\r\n Object.defineProperty(_SiteUser.prototype, \"groups\", {\r\n /**\r\n * Gets the groups for this user\r\n *\r\n */\r\n get: function () {\r\n return tag.configure(SiteGroups(this, \"groups\"), \"su.groups\");\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n return _SiteUser;\r\n}(_SharePointQueryableInstance));\r\nexport { _SiteUser };\r\nexport var SiteUser = spInvokableFactory(_SiteUser);\r\n//# sourceMappingURL=types.js.map","import { __awaiter, __decorate, __extends, __generator } from \"tslib\";\r\nimport { assign, hOP } from \"@pnp/common\";\r\nimport { body, headers } from \"@pnp/odata\";\r\nimport { _SharePointQueryableInstance, SharePointQueryableCollection, _SharePointQueryableCollection, spInvokableFactory, deleteable, } from \"../sharepointqueryable.js\";\r\nimport { SiteGroups } from \"../site-groups/types.js\";\r\nimport { metadata } from \"../utils/metadata.js\";\r\nimport { defaultPath } from \"../decorators.js\";\r\nimport { spPost } from \"../operations.js\";\r\nimport { tag } from \"../telemetry.js\";\r\n/**\r\n * Describes a set of role assignments for the current scope\r\n *\r\n */\r\nvar _RoleAssignments = /** @class */ (function (_super) {\r\n __extends(_RoleAssignments, _super);\r\n function _RoleAssignments() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n /**\r\n * Gets the role assignment associated with the specified principal id from the collection.\r\n *\r\n * @param id The id of the role assignment\r\n */\r\n _RoleAssignments.prototype.getById = function (id) {\r\n return RoleAssignment(this).concat(\"(\" + id + \")\");\r\n };\r\n /**\r\n * Adds a new role assignment with the specified principal and role definitions to the collection\r\n *\r\n * @param principalId The id of the user or group to assign permissions to\r\n * @param roleDefId The id of the role definition that defines the permissions to assign\r\n *\r\n */\r\n _RoleAssignments.prototype.add = function (principalId, roleDefId) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0: return [4 /*yield*/, spPost(this.clone(RoleAssignments, \"addroleassignment(principalid=\" + principalId + \", roledefid=\" + roleDefId + \")\"))];\r\n case 1:\r\n _a.sent();\r\n return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Removes the role assignment with the specified principal and role definition from the collection\r\n *\r\n * @param principalId The id of the user or group in the role assignment\r\n * @param roleDefId The id of the role definition in the role assignment\r\n *\r\n */\r\n _RoleAssignments.prototype.remove = function (principalId, roleDefId) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0: return [4 /*yield*/, spPost(this.clone(RoleAssignments, \"removeroleassignment(principalid=\" + principalId + \", roledefid=\" + roleDefId + \")\"))];\r\n case 1:\r\n _a.sent();\r\n return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n _RoleAssignments = __decorate([\r\n defaultPath(\"roleassignments\")\r\n ], _RoleAssignments);\r\n return _RoleAssignments;\r\n}(_SharePointQueryableCollection));\r\nexport { _RoleAssignments };\r\nexport var RoleAssignments = spInvokableFactory(_RoleAssignments);\r\n/**\r\n * Describes a role assignment\r\n *\r\n */\r\nvar _RoleAssignment = /** @class */ (function (_super) {\r\n __extends(_RoleAssignment, _super);\r\n function _RoleAssignment() {\r\n var _this = _super !== null && _super.apply(this, arguments) || this;\r\n _this.delete = deleteable(\"ra\");\r\n return _this;\r\n }\r\n Object.defineProperty(_RoleAssignment.prototype, \"groups\", {\r\n /**\r\n * Gets the groups that directly belong to the access control list (ACL) for this securable object\r\n *\r\n */\r\n get: function () {\r\n return tag.configure(SiteGroups(this, \"groups\"), \"ra.groups\");\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n Object.defineProperty(_RoleAssignment.prototype, \"bindings\", {\r\n /**\r\n * Gets the role definition bindings for this role assignment\r\n *\r\n */\r\n get: function () {\r\n return SharePointQueryableCollection(this, \"roledefinitionbindings\");\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n return _RoleAssignment;\r\n}(_SharePointQueryableInstance));\r\nexport { _RoleAssignment };\r\nexport var RoleAssignment = spInvokableFactory(_RoleAssignment);\r\n/**\r\n * Describes a collection of role definitions\r\n *\r\n */\r\nvar _RoleDefinitions = /** @class */ (function (_super) {\r\n __extends(_RoleDefinitions, _super);\r\n function _RoleDefinitions() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n /**\r\n * Gets the role definition with the specified id from the collection\r\n *\r\n * @param id The id of the role definition\r\n *\r\n */\r\n _RoleDefinitions.prototype.getById = function (id) {\r\n return RoleDefinition(this, \"getById(\" + id + \")\");\r\n };\r\n /**\r\n * Gets the role definition with the specified name\r\n *\r\n * @param name The name of the role definition\r\n *\r\n */\r\n _RoleDefinitions.prototype.getByName = function (name) {\r\n return RoleDefinition(this, \"getbyname('\" + name + \"')\");\r\n };\r\n /**\r\n * Gets the role definition with the specified role type\r\n *\r\n * @param roleTypeKind The roletypekind of the role definition (None=0, Guest=1, Reader=2, Contributor=3, WebDesigner=4, Administrator=5, Editor=6, System=7)\r\n *\r\n */\r\n _RoleDefinitions.prototype.getByType = function (roleTypeKind) {\r\n return RoleDefinition(this, \"getbytype(\" + roleTypeKind + \")\");\r\n };\r\n /**\r\n * Creates a role definition\r\n *\r\n * @param name The new role definition's name\r\n * @param description The new role definition's description\r\n * @param order The order in which the role definition appears\r\n * @param basePermissions The permissions mask for this role definition, high and low values need to be converted to string\r\n *\r\n */\r\n _RoleDefinitions.prototype.add = function (name, description, order, basePermissions) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var postBody, data;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n postBody = body({\r\n BasePermissions: { \"High\": basePermissions.High.toString(), \"Low\": basePermissions.Low.toString() },\r\n Description: description,\r\n Name: name,\r\n Order: order,\r\n __metadata: { \"type\": \"SP.RoleDefinition\" },\r\n });\r\n return [4 /*yield*/, spPost(this, postBody)];\r\n case 1:\r\n data = _a.sent();\r\n return [2 /*return*/, {\r\n data: data,\r\n definition: this.getById(data.Id),\r\n }];\r\n }\r\n });\r\n });\r\n };\r\n _RoleDefinitions = __decorate([\r\n defaultPath(\"roledefinitions\")\r\n ], _RoleDefinitions);\r\n return _RoleDefinitions;\r\n}(_SharePointQueryableCollection));\r\nexport { _RoleDefinitions };\r\nexport var RoleDefinitions = spInvokableFactory(_RoleDefinitions);\r\n/**\r\n * Describes a role definition\r\n *\r\n */\r\nvar _RoleDefinition = /** @class */ (function (_super) {\r\n __extends(_RoleDefinition, _super);\r\n function _RoleDefinition() {\r\n var _this = _super !== null && _super.apply(this, arguments) || this;\r\n _this.delete = deleteable(\"rd\");\r\n return _this;\r\n }\r\n /**\r\n * Updates this role definition with the supplied properties\r\n *\r\n * @param properties A plain object hash of values to update for the role definition\r\n */\r\n _RoleDefinition.prototype.update = function (properties) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var s, bpObj, postBody, data, definition, parent_1;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n s = [\"BasePermissions\"];\r\n if (hOP(properties, s[0]) !== undefined) {\r\n properties[s[0]] = assign(metadata(\"SP.\" + s[0]), properties[s[0]]);\r\n bpObj = properties[s[0]];\r\n bpObj.High = bpObj.High.toString();\r\n bpObj.Low = bpObj.Low.toString();\r\n }\r\n postBody = body(assign(metadata(\"SP.RoleDefinition\"), properties), headers({ \"X-HTTP-Method\": \"MERGE\" }));\r\n return [4 /*yield*/, spPost(this, postBody)];\r\n case 1:\r\n data = _a.sent();\r\n definition = this;\r\n if (hOP(properties, \"Name\")) {\r\n parent_1 = this.getParent(RoleDefinitions, this.parentUrl, \"\");\r\n definition = parent_1.getByName(properties.Name);\r\n }\r\n return [2 /*return*/, {\r\n data: data,\r\n definition: definition,\r\n }];\r\n }\r\n });\r\n });\r\n };\r\n return _RoleDefinition;\r\n}(_SharePointQueryableInstance));\r\nexport { _RoleDefinition };\r\nexport var RoleDefinition = spInvokableFactory(_RoleDefinition);\r\nexport var PermissionKind;\r\n(function (PermissionKind) {\r\n /**\r\n * Has no permissions on the Site. Not available through the user interface.\r\n */\r\n PermissionKind[PermissionKind[\"EmptyMask\"] = 0] = \"EmptyMask\";\r\n /**\r\n * View items in lists, documents in document libraries, and Web discussion comments.\r\n */\r\n PermissionKind[PermissionKind[\"ViewListItems\"] = 1] = \"ViewListItems\";\r\n /**\r\n * Add items to lists, documents to document libraries, and Web discussion comments.\r\n */\r\n PermissionKind[PermissionKind[\"AddListItems\"] = 2] = \"AddListItems\";\r\n /**\r\n * Edit items in lists, edit documents in document libraries, edit Web discussion comments\r\n * in documents, and customize Web Part Pages in document libraries.\r\n */\r\n PermissionKind[PermissionKind[\"EditListItems\"] = 3] = \"EditListItems\";\r\n /**\r\n * Delete items from a list, documents from a document library, and Web discussion\r\n * comments in documents.\r\n */\r\n PermissionKind[PermissionKind[\"DeleteListItems\"] = 4] = \"DeleteListItems\";\r\n /**\r\n * Approve a minor version of a list item or document.\r\n */\r\n PermissionKind[PermissionKind[\"ApproveItems\"] = 5] = \"ApproveItems\";\r\n /**\r\n * View the source of documents with server-side file handlers.\r\n */\r\n PermissionKind[PermissionKind[\"OpenItems\"] = 6] = \"OpenItems\";\r\n /**\r\n * View past versions of a list item or document.\r\n */\r\n PermissionKind[PermissionKind[\"ViewVersions\"] = 7] = \"ViewVersions\";\r\n /**\r\n * Delete past versions of a list item or document.\r\n */\r\n PermissionKind[PermissionKind[\"DeleteVersions\"] = 8] = \"DeleteVersions\";\r\n /**\r\n * Discard or check in a document which is checked out to another user.\r\n */\r\n PermissionKind[PermissionKind[\"CancelCheckout\"] = 9] = \"CancelCheckout\";\r\n /**\r\n * Create, change, and delete personal views of lists.\r\n */\r\n PermissionKind[PermissionKind[\"ManagePersonalViews\"] = 10] = \"ManagePersonalViews\";\r\n /**\r\n * Create and delete lists, add or remove columns in a list, and add or remove public views of a list.\r\n */\r\n PermissionKind[PermissionKind[\"ManageLists\"] = 12] = \"ManageLists\";\r\n /**\r\n * View forms, views, and application pages, and enumerate lists.\r\n */\r\n PermissionKind[PermissionKind[\"ViewFormPages\"] = 13] = \"ViewFormPages\";\r\n /**\r\n * Make content of a list or document library retrieveable for anonymous users through SharePoint search.\r\n * The list permissions in the site do not change.\r\n */\r\n PermissionKind[PermissionKind[\"AnonymousSearchAccessList\"] = 14] = \"AnonymousSearchAccessList\";\r\n /**\r\n * Allow users to open a Site, list, or folder to access items inside that container.\r\n */\r\n PermissionKind[PermissionKind[\"Open\"] = 17] = \"Open\";\r\n /**\r\n * View pages in a Site.\r\n */\r\n PermissionKind[PermissionKind[\"ViewPages\"] = 18] = \"ViewPages\";\r\n /**\r\n * Add, change, or delete HTML pages or Web Part Pages, and edit the Site using\r\n * a Windows SharePoint Services compatible editor.\r\n */\r\n PermissionKind[PermissionKind[\"AddAndCustomizePages\"] = 19] = \"AddAndCustomizePages\";\r\n /**\r\n * Apply a theme or borders to the entire Site.\r\n */\r\n PermissionKind[PermissionKind[\"ApplyThemeAndBorder\"] = 20] = \"ApplyThemeAndBorder\";\r\n /**\r\n * Apply a style sheet (.css file) to the Site.\r\n */\r\n PermissionKind[PermissionKind[\"ApplyStyleSheets\"] = 21] = \"ApplyStyleSheets\";\r\n /**\r\n * View reports on Site usage.\r\n */\r\n PermissionKind[PermissionKind[\"ViewUsageData\"] = 22] = \"ViewUsageData\";\r\n /**\r\n * Create a Site using Self-Service Site Creation.\r\n */\r\n PermissionKind[PermissionKind[\"CreateSSCSite\"] = 23] = \"CreateSSCSite\";\r\n /**\r\n * Create subsites such as team sites, Meeting Workspace sites, and Document Workspace sites.\r\n */\r\n PermissionKind[PermissionKind[\"ManageSubwebs\"] = 24] = \"ManageSubwebs\";\r\n /**\r\n * Create a group of users that can be used anywhere within the site collection.\r\n */\r\n PermissionKind[PermissionKind[\"CreateGroups\"] = 25] = \"CreateGroups\";\r\n /**\r\n * Create and change permission levels on the Site and assign permissions to users\r\n * and groups.\r\n */\r\n PermissionKind[PermissionKind[\"ManagePermissions\"] = 26] = \"ManagePermissions\";\r\n /**\r\n * Enumerate files and folders in a Site using Microsoft Office SharePoint Designer\r\n * and WebDAV interfaces.\r\n */\r\n PermissionKind[PermissionKind[\"BrowseDirectories\"] = 27] = \"BrowseDirectories\";\r\n /**\r\n * View information about users of the Site.\r\n */\r\n PermissionKind[PermissionKind[\"BrowseUserInfo\"] = 28] = \"BrowseUserInfo\";\r\n /**\r\n * Add or remove personal Web Parts on a Web Part Page.\r\n */\r\n PermissionKind[PermissionKind[\"AddDelPrivateWebParts\"] = 29] = \"AddDelPrivateWebParts\";\r\n /**\r\n * Update Web Parts to display personalized information.\r\n */\r\n PermissionKind[PermissionKind[\"UpdatePersonalWebParts\"] = 30] = \"UpdatePersonalWebParts\";\r\n /**\r\n * Grant the ability to perform all administration tasks for the Site as well as\r\n * manage content, activate, deactivate, or edit properties of Site scoped Features\r\n * through the object model or through the user interface (UI). When granted on the\r\n * root Site of a Site Collection, activate, deactivate, or edit properties of\r\n * site collection scoped Features through the object model. To browse to the Site\r\n * Collection Features page and activate or deactivate Site Collection scoped Features\r\n * through the UI, you must be a Site Collection administrator.\r\n */\r\n PermissionKind[PermissionKind[\"ManageWeb\"] = 31] = \"ManageWeb\";\r\n /**\r\n * Content of lists and document libraries in the Web site will be retrieveable for anonymous users through\r\n * SharePoint search if the list or document library has AnonymousSearchAccessList set.\r\n */\r\n PermissionKind[PermissionKind[\"AnonymousSearchAccessWebLists\"] = 32] = \"AnonymousSearchAccessWebLists\";\r\n /**\r\n * Use features that launch client applications. Otherwise, users must work on documents\r\n * locally and upload changes.\r\n */\r\n PermissionKind[PermissionKind[\"UseClientIntegration\"] = 37] = \"UseClientIntegration\";\r\n /**\r\n * Use SOAP, WebDAV, or Microsoft Office SharePoint Designer interfaces to access the Site.\r\n */\r\n PermissionKind[PermissionKind[\"UseRemoteAPIs\"] = 38] = \"UseRemoteAPIs\";\r\n /**\r\n * Manage alerts for all users of the Site.\r\n */\r\n PermissionKind[PermissionKind[\"ManageAlerts\"] = 39] = \"ManageAlerts\";\r\n /**\r\n * Create e-mail alerts.\r\n */\r\n PermissionKind[PermissionKind[\"CreateAlerts\"] = 40] = \"CreateAlerts\";\r\n /**\r\n * Allows a user to change his or her user information, such as adding a picture.\r\n */\r\n PermissionKind[PermissionKind[\"EditMyUserInfo\"] = 41] = \"EditMyUserInfo\";\r\n /**\r\n * Enumerate permissions on Site, list, folder, document, or list item.\r\n */\r\n PermissionKind[PermissionKind[\"EnumeratePermissions\"] = 63] = \"EnumeratePermissions\";\r\n /**\r\n * Has all permissions on the Site. Not available through the user interface.\r\n */\r\n PermissionKind[PermissionKind[\"FullMask\"] = 65] = \"FullMask\";\r\n})(PermissionKind || (PermissionKind = {}));\r\n//# sourceMappingURL=types.js.map","/**\r\n * Indicates the role of the sharing link\r\n */\r\nexport var SharingRole;\r\n(function (SharingRole) {\r\n SharingRole[SharingRole[\"None\"] = 0] = \"None\";\r\n SharingRole[SharingRole[\"View\"] = 1] = \"View\";\r\n SharingRole[SharingRole[\"Edit\"] = 2] = \"Edit\";\r\n SharingRole[SharingRole[\"Owner\"] = 3] = \"Owner\";\r\n})(SharingRole || (SharingRole = {}));\r\nexport var SPSharedObjectType;\r\n(function (SPSharedObjectType) {\r\n SPSharedObjectType[SPSharedObjectType[\"Unknown\"] = 0] = \"Unknown\";\r\n SPSharedObjectType[SPSharedObjectType[\"File\"] = 1] = \"File\";\r\n SPSharedObjectType[SPSharedObjectType[\"Folder\"] = 2] = \"Folder\";\r\n SPSharedObjectType[SPSharedObjectType[\"Item\"] = 3] = \"Item\";\r\n SPSharedObjectType[SPSharedObjectType[\"List\"] = 4] = \"List\";\r\n SPSharedObjectType[SPSharedObjectType[\"Web\"] = 5] = \"Web\";\r\n SPSharedObjectType[SPSharedObjectType[\"Max\"] = 6] = \"Max\";\r\n})(SPSharedObjectType || (SPSharedObjectType = {}));\r\nexport var SharingDomainRestrictionMode;\r\n(function (SharingDomainRestrictionMode) {\r\n SharingDomainRestrictionMode[SharingDomainRestrictionMode[\"None\"] = 0] = \"None\";\r\n SharingDomainRestrictionMode[SharingDomainRestrictionMode[\"AllowList\"] = 1] = \"AllowList\";\r\n SharingDomainRestrictionMode[SharingDomainRestrictionMode[\"BlockList\"] = 2] = \"BlockList\";\r\n})(SharingDomainRestrictionMode || (SharingDomainRestrictionMode = {}));\r\nexport var SharingOperationStatusCode;\r\n(function (SharingOperationStatusCode) {\r\n /**\r\n * The share operation completed without errors.\r\n */\r\n SharingOperationStatusCode[SharingOperationStatusCode[\"CompletedSuccessfully\"] = 0] = \"CompletedSuccessfully\";\r\n /**\r\n * The share operation completed and generated requests for access.\r\n */\r\n SharingOperationStatusCode[SharingOperationStatusCode[\"AccessRequestsQueued\"] = 1] = \"AccessRequestsQueued\";\r\n /**\r\n * The share operation failed as there were no resolved users.\r\n */\r\n SharingOperationStatusCode[SharingOperationStatusCode[\"NoResolvedUsers\"] = -1] = \"NoResolvedUsers\";\r\n /**\r\n * The share operation failed due to insufficient permissions.\r\n */\r\n SharingOperationStatusCode[SharingOperationStatusCode[\"AccessDenied\"] = -2] = \"AccessDenied\";\r\n /**\r\n * The share operation failed when attempting a cross site share, which is not supported.\r\n */\r\n SharingOperationStatusCode[SharingOperationStatusCode[\"CrossSiteRequestNotSupported\"] = -3] = \"CrossSiteRequestNotSupported\";\r\n /**\r\n * The sharing operation failed due to an unknown error.\r\n */\r\n SharingOperationStatusCode[SharingOperationStatusCode[\"UnknowError\"] = -4] = \"UnknowError\";\r\n /**\r\n * The text you typed is too long. Please shorten it.\r\n */\r\n SharingOperationStatusCode[SharingOperationStatusCode[\"EmailBodyTooLong\"] = -5] = \"EmailBodyTooLong\";\r\n /**\r\n * The maximum number of unique scopes in the list has been exceeded.\r\n */\r\n SharingOperationStatusCode[SharingOperationStatusCode[\"ListUniqueScopesExceeded\"] = -6] = \"ListUniqueScopesExceeded\";\r\n /**\r\n * The share operation failed because a sharing capability is disabled in the site.\r\n */\r\n SharingOperationStatusCode[SharingOperationStatusCode[\"CapabilityDisabled\"] = -7] = \"CapabilityDisabled\";\r\n /**\r\n * The specified object for the share operation is not supported.\r\n */\r\n SharingOperationStatusCode[SharingOperationStatusCode[\"ObjectNotSupported\"] = -8] = \"ObjectNotSupported\";\r\n /**\r\n * A SharePoint group cannot contain another SharePoint group.\r\n */\r\n SharingOperationStatusCode[SharingOperationStatusCode[\"NestedGroupsNotSupported\"] = -9] = \"NestedGroupsNotSupported\";\r\n})(SharingOperationStatusCode || (SharingOperationStatusCode = {}));\r\nexport var SharingLinkKind;\r\n(function (SharingLinkKind) {\r\n /**\r\n * Uninitialized link\r\n */\r\n SharingLinkKind[SharingLinkKind[\"Uninitialized\"] = 0] = \"Uninitialized\";\r\n /**\r\n * Direct link to the object being shared\r\n */\r\n SharingLinkKind[SharingLinkKind[\"Direct\"] = 1] = \"Direct\";\r\n /**\r\n * Organization-shareable link to the object being shared with view permissions\r\n */\r\n SharingLinkKind[SharingLinkKind[\"OrganizationView\"] = 2] = \"OrganizationView\";\r\n /**\r\n * Organization-shareable link to the object being shared with edit permissions\r\n */\r\n SharingLinkKind[SharingLinkKind[\"OrganizationEdit\"] = 3] = \"OrganizationEdit\";\r\n /**\r\n * View only anonymous link\r\n */\r\n SharingLinkKind[SharingLinkKind[\"AnonymousView\"] = 4] = \"AnonymousView\";\r\n /**\r\n * Read/Write anonymous link\r\n */\r\n SharingLinkKind[SharingLinkKind[\"AnonymousEdit\"] = 5] = \"AnonymousEdit\";\r\n /**\r\n * Flexible sharing Link where properties can change without affecting link URL\r\n */\r\n SharingLinkKind[SharingLinkKind[\"Flexible\"] = 6] = \"Flexible\";\r\n})(SharingLinkKind || (SharingLinkKind = {}));\r\nexport var RoleType;\r\n(function (RoleType) {\r\n RoleType[RoleType[\"None\"] = 0] = \"None\";\r\n RoleType[RoleType[\"Guest\"] = 1] = \"Guest\";\r\n RoleType[RoleType[\"Reader\"] = 2] = \"Reader\";\r\n RoleType[RoleType[\"Contributor\"] = 3] = \"Contributor\";\r\n RoleType[RoleType[\"WebDesigner\"] = 4] = \"WebDesigner\";\r\n RoleType[RoleType[\"Administrator\"] = 5] = \"Administrator\";\r\n})(RoleType || (RoleType = {}));\r\n//# sourceMappingURL=types.js.map","import { __awaiter, __decorate, __extends, __generator } from \"tslib\";\r\nimport { _SharePointQueryableInstance, _SharePointQueryableCollection, spInvokableFactory, } from \"../sharepointqueryable.js\";\r\nimport { SiteUsers } from \"../site-users/types.js\";\r\nimport { assign, hOP } from \"@pnp/common\";\r\nimport { metadata } from \"../utils/metadata.js\";\r\nimport { body } from \"@pnp/odata\";\r\nimport { defaultPath } from \"../decorators.js\";\r\nimport { spPost } from \"../operations.js\";\r\nimport { tag } from \"../telemetry.js\";\r\nvar _SiteGroups = /** @class */ (function (_super) {\r\n __extends(_SiteGroups, _super);\r\n function _SiteGroups() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n /**\r\n * Gets a group from the collection by id\r\n *\r\n * @param id The id of the group to retrieve\r\n */\r\n _SiteGroups.prototype.getById = function (id) {\r\n return tag.configure(SiteGroup(this).concat(\"(\" + id + \")\"), \"sgs.getById\");\r\n };\r\n /**\r\n * Adds a new group to the site collection\r\n *\r\n * @param properties The group properties object of property names and values to be set for the group\r\n */\r\n _SiteGroups.prototype.add = function (properties) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var postBody, data;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n postBody = body(assign(metadata(\"SP.Group\"), properties));\r\n return [4 /*yield*/, spPost(tag.configure(this, \"sgs.add\"), postBody)];\r\n case 1:\r\n data = _a.sent();\r\n return [2 /*return*/, {\r\n data: data,\r\n group: this.getById(data.Id),\r\n }];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Gets a group from the collection by name\r\n *\r\n * @param groupName The name of the group to retrieve\r\n */\r\n _SiteGroups.prototype.getByName = function (groupName) {\r\n return tag.configure(SiteGroup(this, \"getByName('\" + groupName + \"')\"), \"sgs.getByName\");\r\n };\r\n /**\r\n * Removes the group with the specified member id from the collection\r\n *\r\n * @param id The id of the group to remove\r\n */\r\n _SiteGroups.prototype.removeById = function (id) {\r\n return spPost(this.clone(SiteGroups, \"removeById('\" + id + \"')\"));\r\n };\r\n /**\r\n * Removes the cross-site group with the specified name from the collection\r\n *\r\n * @param loginName The name of the group to remove\r\n */\r\n _SiteGroups.prototype.removeByLoginName = function (loginName) {\r\n return spPost(this.clone(SiteGroups, \"removeByLoginName('\" + loginName + \"')\"));\r\n };\r\n __decorate([\r\n tag(\"sgs.removeById\")\r\n ], _SiteGroups.prototype, \"removeById\", null);\r\n __decorate([\r\n tag(\"sgs.removeByLoginName\")\r\n ], _SiteGroups.prototype, \"removeByLoginName\", null);\r\n _SiteGroups = __decorate([\r\n defaultPath(\"sitegroups\")\r\n ], _SiteGroups);\r\n return _SiteGroups;\r\n}(_SharePointQueryableCollection));\r\nexport { _SiteGroups };\r\nexport var SiteGroups = spInvokableFactory(_SiteGroups);\r\nvar _SiteGroup = /** @class */ (function (_super) {\r\n __extends(_SiteGroup, _super);\r\n function _SiteGroup() {\r\n var _this = _super !== null && _super.apply(this, arguments) || this;\r\n /**\r\n * Updates the group with the given property values\r\n *\r\n * @param props The group properties object of property names and values to be set for the group\r\n */\r\n _this.update = _this._update(\"SP.Group\", function (d, p) {\r\n var retGroup = hOP(p, \"Title\") ? _this.getParent(SiteGroup, _this.parentUrl, \"getByName('\" + p.Title + \"')\") : SiteGroup(_this);\r\n return {\r\n data: d,\r\n group: retGroup,\r\n };\r\n });\r\n return _this;\r\n }\r\n Object.defineProperty(_SiteGroup.prototype, \"users\", {\r\n /**\r\n * Gets the users for this group\r\n *\r\n */\r\n get: function () {\r\n return tag.configure(SiteUsers(this, \"users\"), \"sg.users\");\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n /**\r\n * Set the owner of a group using a user id\r\n * @param userId the id of the user that will be set as the owner of the current group\r\n */\r\n _SiteGroup.prototype.setUserAsOwner = function (userId) {\r\n return spPost(this.clone(SiteGroup, \"SetUserAsOwner(\" + userId + \")\"));\r\n };\r\n __decorate([\r\n tag(\"sg.setUserAsOwner\")\r\n ], _SiteGroup.prototype, \"setUserAsOwner\", null);\r\n return _SiteGroup;\r\n}(_SharePointQueryableInstance));\r\nexport { _SiteGroup };\r\nexport var SiteGroup = spInvokableFactory(_SiteGroup);\r\n//# sourceMappingURL=types.js.map","import { __awaiter, __generator } from \"tslib\";\r\nimport { PermissionKind } from \"./types.js\";\r\nimport { SharePointQueryableInstance, SharePointQueryable } from \"../sharepointqueryable.js\";\r\nimport { hOP } from \"@pnp/common\";\r\nimport { spPost } from \"../operations.js\";\r\n/**\r\n* Gets the effective permissions for the user supplied\r\n*\r\n* @param loginName The claims username for the user (ex: i:0#.f|membership|user@domain.com)\r\n*/\r\nexport function getUserEffectivePermissions(loginName) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var q, r;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n q = this.clone(SharePointQueryableInstance, \"getUserEffectivePermissions(@user)\");\r\n q.query.set(\"@user\", \"'\" + encodeURIComponent(loginName) + \"'\");\r\n return [4 /*yield*/, q.get()];\r\n case 1:\r\n r = _a.sent();\r\n // handle verbose mode\r\n return [2 /*return*/, hOP(r, \"GetUserEffectivePermissions\") ? r.GetUserEffectivePermissions : r];\r\n }\r\n });\r\n });\r\n}\r\n/**\r\n * Gets the effective permissions for the current user\r\n */\r\nexport function getCurrentUserEffectivePermissions() {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var q;\r\n return __generator(this, function (_a) {\r\n q = this.clone(SharePointQueryable, \"EffectiveBasePermissions\");\r\n return [2 /*return*/, q.get().then(function (r) {\r\n // handle verbose mode\r\n return hOP(r, \"EffectiveBasePermissions\") ? r.EffectiveBasePermissions : r;\r\n })];\r\n });\r\n });\r\n}\r\n/**\r\n * Breaks the security inheritance at this level optinally copying permissions and clearing subscopes\r\n *\r\n * @param copyRoleAssignments If true the permissions are copied from the current parent scope\r\n * @param clearSubscopes Optional. true to make all child securable objects inherit role assignments from the current object\r\n */\r\nexport function breakRoleInheritance(copyRoleAssignments, clearSubscopes) {\r\n if (copyRoleAssignments === void 0) { copyRoleAssignments = false; }\r\n if (clearSubscopes === void 0) { clearSubscopes = false; }\r\n return __awaiter(this, void 0, void 0, function () {\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0: return [4 /*yield*/, spPost(this.clone(SharePointQueryable, \"breakroleinheritance(copyroleassignments=\" + copyRoleAssignments + \", clearsubscopes=\" + clearSubscopes + \")\"))];\r\n case 1:\r\n _a.sent();\r\n return [2 /*return*/];\r\n }\r\n });\r\n });\r\n}\r\n/**\r\n * Removes the local role assignments so that it re-inherit role assignments from the parent object.\r\n *\r\n */\r\nexport function resetRoleInheritance() {\r\n return __awaiter(this, void 0, void 0, function () {\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0: return [4 /*yield*/, spPost(this.clone(SharePointQueryable, \"resetroleinheritance\"))];\r\n case 1:\r\n _a.sent();\r\n return [2 /*return*/];\r\n }\r\n });\r\n });\r\n}\r\n/**\r\n * Determines if a given user has the appropriate permissions\r\n *\r\n * @param loginName The user to check\r\n * @param permission The permission being checked\r\n */\r\nexport function userHasPermissions(loginName, permission) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var perms;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0: return [4 /*yield*/, getUserEffectivePermissions.call(this, loginName)];\r\n case 1:\r\n perms = _a.sent();\r\n return [2 /*return*/, this.hasPermissions(perms, permission)];\r\n }\r\n });\r\n });\r\n}\r\n/**\r\n * Determines if the current user has the requested permissions\r\n *\r\n * @param permission The permission we wish to check\r\n */\r\nexport function currentUserHasPermissions(permission) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var perms;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0: return [4 /*yield*/, getCurrentUserEffectivePermissions.call(this)];\r\n case 1:\r\n perms = _a.sent();\r\n return [2 /*return*/, this.hasPermissions(perms, permission)];\r\n }\r\n });\r\n });\r\n}\r\n/**\r\n * Taken from sp.js, checks the supplied permissions against the mask\r\n *\r\n * @param value The security principal's permissions on the given object\r\n * @param perm The permission checked against the value\r\n */\r\n/* eslint-disable no-bitwise */\r\nexport function hasPermissions(value, perm) {\r\n if (!perm) {\r\n return true;\r\n }\r\n if (perm === PermissionKind.FullMask) {\r\n return (value.High & 32767) === 32767 && value.Low === 65535;\r\n }\r\n perm = perm - 1;\r\n var num = 1;\r\n if (perm >= 0 && perm < 32) {\r\n num = num << perm;\r\n return 0 !== (value.Low & num);\r\n }\r\n else if (perm >= 32 && perm < 64) {\r\n num = num << perm - 32;\r\n return 0 !== (value.High & num);\r\n }\r\n return false;\r\n}\r\n/* eslint-enable no-bitwise */\r\n//# sourceMappingURL=funcs.js.map","import { __awaiter, __generator, __read, __spreadArray } from \"tslib\";\r\nimport { body } from \"@pnp/odata\";\r\nimport { jsS, assign } from \"@pnp/common\";\r\nimport { SharePointQueryableCollection, SharePointQueryableInstance } from \"../sharepointqueryable.js\";\r\nimport { extractWebUrl } from \"../utils/extractweburl.js\";\r\nimport { Web } from \"../webs/types.js\";\r\nimport { SharingRole, RoleType, } from \"./types.js\";\r\nimport { spPost } from \"../operations.js\";\r\nimport { tag } from \"../telemetry.js\";\r\nimport { RoleDefinitions } from \"../security/types.js\";\r\nimport { emptyGuid } from \"../splibconfig.js\";\r\n/**\r\n * Shares an object based on the supplied options\r\n *\r\n * @param options The set of options to send to the ShareObject method\r\n * @param bypass If true any processing is skipped and the options are sent directly to the ShareObject method\r\n */\r\nexport function shareObject(o, options, bypass) {\r\n if (bypass === void 0) { bypass = false; }\r\n return __awaiter(this, void 0, void 0, function () {\r\n var roleValue, userStr, postBody;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n if (bypass) {\r\n // if the bypass flag is set send the supplied parameters directly to the service\r\n return [2 /*return*/, sendShareObjectRequest(o, options)];\r\n }\r\n // extend our options with some defaults\r\n options = assign(options, {\r\n group: null,\r\n includeAnonymousLinkInEmail: false,\r\n propagateAcl: false,\r\n useSimplifiedRoles: true,\r\n }, true);\r\n return [4 /*yield*/, getRoleValue(options.role, options.group)];\r\n case 1:\r\n roleValue = _a.sent();\r\n // handle the multiple input types\r\n if (!Array.isArray(options.loginNames)) {\r\n options.loginNames = [options.loginNames];\r\n }\r\n userStr = jsS(options.loginNames.map(function (Key) { return ({ Key: Key }); }));\r\n postBody = {\r\n peoplePickerInput: userStr,\r\n roleValue: roleValue,\r\n url: options.url,\r\n };\r\n if (options.emailData !== undefined && options.emailData !== null) {\r\n postBody = assign(postBody, {\r\n emailBody: options.emailData.body,\r\n emailSubject: options.emailData.subject !== undefined ? options.emailData.subject : \"Shared with you.\",\r\n sendEmail: true,\r\n });\r\n }\r\n return [2 /*return*/, sendShareObjectRequest(o, postBody)];\r\n }\r\n });\r\n });\r\n}\r\n/**\r\n * Gets a sharing link for the supplied\r\n *\r\n * @param kind The kind of link to share\r\n * @param expiration The optional expiration for this link\r\n */\r\nexport function getShareLink(kind, expiration) {\r\n if (expiration === void 0) { expiration = null; }\r\n // date needs to be an ISO string or null\r\n var expString = expiration !== null ? expiration.toISOString() : null;\r\n // clone using the factory and send the request\r\n var o = tag.configure(this.clone(SharePointQueryableInstance, \"shareLink\"), \"sh.getShareLink\");\r\n return spPost(o, body({\r\n request: {\r\n createLink: true,\r\n emailData: null,\r\n settings: {\r\n expiration: expString,\r\n linkKind: kind,\r\n },\r\n },\r\n }));\r\n}\r\n/**\r\n * Checks Permissions on the list of Users and returns back role the users have on the Item.\r\n *\r\n * @param recipients The array of Entities for which Permissions need to be checked.\r\n */\r\nexport function checkPermissions(recipients) {\r\n var o = tag.configure(this.clone(SharePointQueryableInstance, \"checkPermissions\"), \"sh.checkPermissions\");\r\n return spPost(o, body({ recipients: recipients }));\r\n}\r\n/**\r\n * Get Sharing Information.\r\n *\r\n * @param request The SharingInformationRequest Object.\r\n * @param expands Expand more fields.\r\n *\r\n */\r\nexport function getSharingInformation(request, expands) {\r\n if (request === void 0) { request = null; }\r\n if (expands === void 0) { expands = []; }\r\n var o = tag.configure(this.clone(SharePointQueryableInstance, \"getSharingInformation\"), \"sh.getSharingInformation\");\r\n return spPost(o.expand.apply(o, __spreadArray([], __read(expands))), body({ request: request }));\r\n}\r\n/**\r\n * Gets the sharing settings of an item.\r\n *\r\n * @param useSimplifiedRoles Determines whether to use simplified roles.\r\n */\r\nexport function getObjectSharingSettings(useSimplifiedRoles) {\r\n if (useSimplifiedRoles === void 0) { useSimplifiedRoles = true; }\r\n var o = tag.configure(this.clone(SharePointQueryableInstance, \"getObjectSharingSettings\"), \"sh.getObjectSharingSettings\");\r\n return spPost(o, body({ useSimplifiedRoles: useSimplifiedRoles }));\r\n}\r\n/**\r\n * Unshares this object\r\n */\r\nexport function unshareObject() {\r\n return spPost(tag.configure(this.clone(SharePointQueryableInstance, \"unshareObject\"), \"sh.unshareObject\"));\r\n}\r\n/**\r\n * Deletes a link by type\r\n *\r\n * @param kind Deletes a sharing link by the kind of link\r\n */\r\nexport function deleteLinkByKind(linkKind) {\r\n return spPost(tag.configure(this.clone(SharePointQueryableInstance, \"deleteLinkByKind\"), \"sh.deleteLinkByKind\"), body({ linkKind: linkKind }));\r\n}\r\n/**\r\n * Removes the specified link to the item.\r\n *\r\n * @param kind The kind of link to be deleted.\r\n * @param shareId\r\n */\r\nexport function unshareLink(linkKind, shareId) {\r\n if (shareId === void 0) { shareId = emptyGuid; }\r\n return spPost(tag.configure(this.clone(SharePointQueryableInstance, \"unshareLink\"), \"sh.unshareLink\"), body({ linkKind: linkKind, shareId: shareId }));\r\n}\r\n/**\r\n * Shares this instance with the supplied users\r\n *\r\n * @param loginNames Resolved login names to share\r\n * @param role The role\r\n * @param requireSignin True to require the user is authenticated, otherwise false\r\n * @param propagateAcl True to apply this share to all children\r\n * @param emailData If supplied an email will be sent with the indicated properties\r\n */\r\nexport function shareWith(o, loginNames, role, requireSignin, propagateAcl, emailData) {\r\n if (requireSignin === void 0) { requireSignin = false; }\r\n if (propagateAcl === void 0) { propagateAcl = false; }\r\n return __awaiter(this, void 0, void 0, function () {\r\n var userStr, roleFilter, w, def, postBody;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n // handle the multiple input types\r\n if (!Array.isArray(loginNames)) {\r\n loginNames = [loginNames];\r\n }\r\n userStr = jsS(loginNames.map(function (login) {\r\n return { Key: login };\r\n }));\r\n roleFilter = role === SharingRole.Edit ? RoleType.Contributor : RoleType.Reader;\r\n w = SharePointQueryableCollection(\"_api/web\", \"roledefinitions\");\r\n return [4 /*yield*/, w.select(\"Id\").filter(\"RoleTypeKind eq \" + roleFilter).get()];\r\n case 1:\r\n def = _a.sent();\r\n if (!Array.isArray(def) || def.length < 1) {\r\n throw Error(\"Could not locate a role defintion with RoleTypeKind \" + roleFilter);\r\n }\r\n postBody = {\r\n includeAnonymousLinkInEmail: requireSignin,\r\n peoplePickerInput: userStr,\r\n propagateAcl: propagateAcl,\r\n roleValue: \"role:\" + def[0].Id,\r\n useSimplifiedRoles: true,\r\n };\r\n if (emailData !== undefined) {\r\n postBody = assign(postBody, {\r\n emailBody: emailData.body,\r\n emailSubject: emailData.subject !== undefined ? emailData.subject : \"\",\r\n sendEmail: true,\r\n });\r\n }\r\n return [2 /*return*/, spPost(tag.configure(o.clone(SharePointQueryableInstance, \"shareObject\"), \"sh.shareWith\"), body(postBody))];\r\n }\r\n });\r\n });\r\n}\r\nfunction sendShareObjectRequest(o, options) {\r\n var w = tag.configure(Web(extractWebUrl(o.toUrl()), \"/_api/SP.Web.ShareObject\"), \"sh.sendShareObjectRequest\");\r\n w.configureFrom(this);\r\n return spPost(w.expand(\"UsersWithAccessRequests\", \"GroupsSharedWith\"), body(options));\r\n}\r\n/**\r\n * Calculates the roleValue string used in the sharing query\r\n *\r\n * @param role The Sharing Role\r\n * @param group The Group type\r\n */\r\nfunction getRoleValue(role, group) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var _a, g1, g2, roleFilter, def;\r\n return __generator(this, function (_b) {\r\n switch (_b.label) {\r\n case 0:\r\n if (!(group !== undefined && group !== null)) return [3 /*break*/, 7];\r\n _a = group;\r\n switch (_a) {\r\n case RoleType.Contributor: return [3 /*break*/, 1];\r\n case RoleType.Reader: return [3 /*break*/, 3];\r\n case RoleType.Guest: return [3 /*break*/, 3];\r\n }\r\n return [3 /*break*/, 5];\r\n case 1: return [4 /*yield*/, Web(\"_api/web\", \"associatedmembergroup\").configureFrom(this).select(\"Id\")()];\r\n case 2:\r\n g1 = _b.sent();\r\n return [2 /*return*/, \"group: \" + g1.Id];\r\n case 3: return [4 /*yield*/, Web(\"_api/web\", \"associatedvisitorgroup\").configureFrom(this).select(\"Id\")()];\r\n case 4:\r\n g2 = _b.sent();\r\n return [2 /*return*/, \"group: \" + g2.Id];\r\n case 5: throw Error(\"Could not determine role value for supplied value. Contributor, Reader, and Guest are supported\");\r\n case 6: return [3 /*break*/, 9];\r\n case 7:\r\n roleFilter = role === SharingRole.Edit ? RoleType.Contributor : RoleType.Reader;\r\n return [4 /*yield*/, RoleDefinitions(\"_api/web\").select(\"Id\").top(1).filter(\"RoleTypeKind eq \" + roleFilter)()];\r\n case 8:\r\n def = _b.sent();\r\n if (def.length < 1) {\r\n throw Error(\"Could not locate associated role definition for supplied role. Edit and View are supported\");\r\n }\r\n return [2 /*return*/, \"role: \" + def[0].Id];\r\n case 9: return [2 /*return*/];\r\n }\r\n });\r\n });\r\n}\r\n//# sourceMappingURL=funcs.js.map","import { addProp } from \"@pnp/odata\";\r\nimport { _Item } from \"../items/types.js\";\r\nimport { RoleAssignments } from \"./types.js\";\r\nimport { SharePointQueryableInstance } from \"../sharepointqueryable.js\";\r\nimport { getUserEffectivePermissions, getCurrentUserEffectivePermissions, breakRoleInheritance, resetRoleInheritance, userHasPermissions, currentUserHasPermissions, hasPermissions, } from \"./funcs.js\";\r\naddProp(_Item, \"roleAssignments\", RoleAssignments);\r\naddProp(_Item, \"firstUniqueAncestorSecurableObject\", SharePointQueryableInstance);\r\n_Item.prototype.getUserEffectivePermissions = getUserEffectivePermissions;\r\n_Item.prototype.getCurrentUserEffectivePermissions = getCurrentUserEffectivePermissions;\r\n_Item.prototype.breakRoleInheritance = breakRoleInheritance;\r\n_Item.prototype.resetRoleInheritance = resetRoleInheritance;\r\n_Item.prototype.userHasPermissions = userHasPermissions;\r\n_Item.prototype.currentUserHasPermissions = currentUserHasPermissions;\r\n_Item.prototype.hasPermissions = hasPermissions;\r\n//# sourceMappingURL=item.js.map","import { addProp } from \"@pnp/odata\";\r\nimport { _List } from \"../lists/types.js\";\r\nimport { RoleAssignments } from \"./types.js\";\r\nimport { SharePointQueryableInstance } from \"../sharepointqueryable.js\";\r\nimport { getUserEffectivePermissions, getCurrentUserEffectivePermissions, breakRoleInheritance, resetRoleInheritance, userHasPermissions, currentUserHasPermissions, hasPermissions, } from \"./funcs.js\";\r\naddProp(_List, \"roleAssignments\", RoleAssignments);\r\naddProp(_List, \"firstUniqueAncestorSecurableObject\", SharePointQueryableInstance);\r\n_List.prototype.getUserEffectivePermissions = getUserEffectivePermissions;\r\n_List.prototype.getCurrentUserEffectivePermissions = getCurrentUserEffectivePermissions;\r\n_List.prototype.breakRoleInheritance = breakRoleInheritance;\r\n_List.prototype.resetRoleInheritance = resetRoleInheritance;\r\n_List.prototype.userHasPermissions = userHasPermissions;\r\n_List.prototype.currentUserHasPermissions = currentUserHasPermissions;\r\n_List.prototype.hasPermissions = hasPermissions;\r\n//# sourceMappingURL=list.js.map","import { addProp } from \"@pnp/odata\";\r\nimport { _Web } from \"../webs/types.js\";\r\nimport { RoleDefinitions, RoleAssignments } from \"./types.js\";\r\nimport { SharePointQueryableInstance } from \"../sharepointqueryable.js\";\r\nimport { getUserEffectivePermissions, getCurrentUserEffectivePermissions, breakRoleInheritance, resetRoleInheritance, userHasPermissions, currentUserHasPermissions, hasPermissions, } from \"./funcs.js\";\r\naddProp(_Web, \"roleDefinitions\", RoleDefinitions);\r\naddProp(_Web, \"roleAssignments\", RoleAssignments);\r\naddProp(_Web, \"firstUniqueAncestorSecurableObject\", SharePointQueryableInstance);\r\n_Web.prototype.getUserEffectivePermissions = getUserEffectivePermissions;\r\n_Web.prototype.getCurrentUserEffectivePermissions = getCurrentUserEffectivePermissions;\r\n_Web.prototype.breakRoleInheritance = breakRoleInheritance;\r\n_Web.prototype.resetRoleInheritance = resetRoleInheritance;\r\n_Web.prototype.userHasPermissions = userHasPermissions;\r\n_Web.prototype.currentUserHasPermissions = currentUserHasPermissions;\r\n_Web.prototype.hasPermissions = hasPermissions;\r\n//# sourceMappingURL=web.js.map","import { _File } from \"../files/types.js\";\r\nimport { SharingRole, } from \"./types.js\";\r\nimport { shareWith, getShareLink, checkPermissions, getSharingInformation, getObjectSharingSettings, unshareObject, deleteLinkByKind, unshareLink, } from \"./funcs.js\";\r\n_File.prototype.shareWith = function (loginNames, role, requireSignin, emailData) {\r\n if (role === void 0) { role = SharingRole.View; }\r\n if (requireSignin === void 0) { requireSignin = false; }\r\n return shareWith(this, loginNames, role, requireSignin, false, emailData);\r\n};\r\n_File.prototype.getShareLink = getShareLink;\r\n_File.prototype.checkSharingPermissions = checkPermissions;\r\n_File.prototype.getSharingInformation = getSharingInformation;\r\n_File.prototype.getObjectSharingSettings = getObjectSharingSettings;\r\n_File.prototype.unshare = unshareObject;\r\n_File.prototype.deleteSharingLinkByKind = deleteLinkByKind;\r\n_File.prototype.unshareLink = unshareLink;\r\n//# sourceMappingURL=file.js.map","import { __awaiter, __generator } from \"tslib\";\r\nimport { _Folder, } from \"../folders/types.js\";\r\nimport { SharingRole, } from \"./types.js\";\r\n_Folder.prototype.shareWith = function (loginNames, role, requireSignin, shareEverything, emailData) {\r\n if (role === void 0) { role = SharingRole.View; }\r\n if (requireSignin === void 0) { requireSignin = false; }\r\n if (shareEverything === void 0) { shareEverything = false; }\r\n return __awaiter(this, void 0, void 0, function () {\r\n var dependency, shareable;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n dependency = this.addBatchDependency();\r\n return [4 /*yield*/, this.getShareable()];\r\n case 1:\r\n shareable = _a.sent();\r\n dependency();\r\n return [2 /*return*/, shareable.shareWith(loginNames, role, requireSignin, shareEverything, emailData)];\r\n }\r\n });\r\n });\r\n};\r\n_Folder.prototype.getShareLink = function (kind, expiration) {\r\n if (expiration === void 0) { expiration = null; }\r\n return __awaiter(this, void 0, void 0, function () {\r\n var dependency, shareable;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n dependency = this.addBatchDependency();\r\n return [4 /*yield*/, this.getShareable()];\r\n case 1:\r\n shareable = _a.sent();\r\n dependency();\r\n return [2 /*return*/, shareable.getShareLink(kind, expiration)];\r\n }\r\n });\r\n });\r\n};\r\n_Folder.prototype.checkSharingPermissions = function (recipients) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var dependency, shareable;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n dependency = this.addBatchDependency();\r\n return [4 /*yield*/, this.getShareable()];\r\n case 1:\r\n shareable = _a.sent();\r\n dependency();\r\n return [2 /*return*/, shareable.checkSharingPermissions(recipients)];\r\n }\r\n });\r\n });\r\n};\r\n_Folder.prototype.getSharingInformation = function (request, expands) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var dependency, shareable;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n dependency = this.addBatchDependency();\r\n return [4 /*yield*/, this.getShareable()];\r\n case 1:\r\n shareable = _a.sent();\r\n dependency();\r\n return [2 /*return*/, shareable.getSharingInformation(request, expands)];\r\n }\r\n });\r\n });\r\n};\r\n_Folder.prototype.getObjectSharingSettings = function (useSimplifiedRoles) {\r\n if (useSimplifiedRoles === void 0) { useSimplifiedRoles = true; }\r\n return __awaiter(this, void 0, void 0, function () {\r\n var dependency, shareable;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n dependency = this.addBatchDependency();\r\n return [4 /*yield*/, this.getShareable()];\r\n case 1:\r\n shareable = _a.sent();\r\n dependency();\r\n return [2 /*return*/, shareable.getObjectSharingSettings(useSimplifiedRoles)];\r\n }\r\n });\r\n });\r\n};\r\n_Folder.prototype.unshare = function () {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var dependency, shareable;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n dependency = this.addBatchDependency();\r\n return [4 /*yield*/, this.getShareable()];\r\n case 1:\r\n shareable = _a.sent();\r\n dependency();\r\n return [2 /*return*/, shareable.unshare()];\r\n }\r\n });\r\n });\r\n};\r\n_Folder.prototype.deleteSharingLinkByKind = function (kind) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var dependency, shareable;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n dependency = this.addBatchDependency();\r\n return [4 /*yield*/, this.getShareable()];\r\n case 1:\r\n shareable = _a.sent();\r\n dependency();\r\n return [2 /*return*/, shareable.deleteSharingLinkByKind(kind)];\r\n }\r\n });\r\n });\r\n};\r\n_Folder.prototype.unshareLink = function (kind, shareId) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var dependency, shareable;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n dependency = this.addBatchDependency();\r\n return [4 /*yield*/, this.getShareable()];\r\n case 1:\r\n shareable = _a.sent();\r\n dependency();\r\n return [2 /*return*/, shareable.unshareLink(kind, shareId)];\r\n }\r\n });\r\n });\r\n};\r\n//# sourceMappingURL=folder.js.map","import { _Item } from \"../items/types.js\";\r\nimport { SharingRole, } from \"./types.js\";\r\nimport { shareWith, getShareLink, checkPermissions, getSharingInformation, getObjectSharingSettings, unshareObject, deleteLinkByKind, unshareLink, } from \"./funcs.js\";\r\n_Item.prototype.shareWith = function (loginNames, role, requireSignin, emailData) {\r\n if (role === void 0) { role = SharingRole.View; }\r\n if (requireSignin === void 0) { requireSignin = false; }\r\n return shareWith(this, loginNames, role, requireSignin, false, emailData);\r\n};\r\n_Item.prototype.getShareLink = getShareLink;\r\n_Item.prototype.checkSharingPermissions = checkPermissions;\r\n_Item.prototype.getSharingInformation = getSharingInformation;\r\n_Item.prototype.getObjectSharingSettings = getObjectSharingSettings;\r\n_Item.prototype.unshare = unshareObject;\r\n_Item.prototype.deleteSharingLinkByKind = deleteLinkByKind;\r\n_Item.prototype.unshareLink = unshareLink;\r\n//# sourceMappingURL=item.js.map","import { __awaiter, __generator } from \"tslib\";\r\nimport { _Web, Web } from \"../webs/types.js\";\r\nimport { SharingRole } from \"./types.js\";\r\nimport { _SharePointQueryableInstance } from \"../sharepointqueryable.js\";\r\nimport { extractWebUrl } from \"../utils/extractweburl.js\";\r\nimport { shareObject } from \"./funcs.js\";\r\nimport { combine } from \"@pnp/common\";\r\nimport { body } from \"@pnp/odata\";\r\nimport { spPost } from \"../operations.js\";\r\n/**\r\n * Shares this web with the supplied users\r\n * @param loginNames The resolved login names to share\r\n * @param role The role to share this web\r\n * @param emailData Optional email data\r\n */\r\n_Web.prototype.shareWith = function (loginNames, role, emailData) {\r\n if (role === void 0) { role = SharingRole.View; }\r\n return __awaiter(this, void 0, void 0, function () {\r\n var dependency, web, url;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n dependency = this.addBatchDependency();\r\n web = new _SharePointQueryableInstance(extractWebUrl(this.toUrl()), \"/_api/web/url\");\r\n return [4 /*yield*/, web.get()];\r\n case 1:\r\n url = _a.sent();\r\n dependency();\r\n return [2 /*return*/, this.shareObject(combine(url, \"/_layouts/15/aclinv.aspx?forSharing=1&mbypass=1\"), loginNames, role, emailData)];\r\n }\r\n });\r\n });\r\n};\r\n/**\r\n * Provides direct access to the static web.ShareObject method\r\n *\r\n * @param url The url to share\r\n * @param loginNames Resolved loginnames string[] of a single login name string\r\n * @param roleValue Role value\r\n * @param emailData Optional email data\r\n * @param groupId Optional group id\r\n * @param propagateAcl\r\n * @param includeAnonymousLinkInEmail\r\n * @param useSimplifiedRoles\r\n */\r\n_Web.prototype.shareObject = function (url, loginNames, role, emailData, group, propagateAcl, includeAnonymousLinkInEmail, useSimplifiedRoles) {\r\n if (propagateAcl === void 0) { propagateAcl = false; }\r\n if (includeAnonymousLinkInEmail === void 0) { includeAnonymousLinkInEmail = false; }\r\n if (useSimplifiedRoles === void 0) { useSimplifiedRoles = true; }\r\n return shareObject(this, {\r\n emailData: emailData,\r\n group: group,\r\n includeAnonymousLinkInEmail: includeAnonymousLinkInEmail,\r\n loginNames: loginNames,\r\n propagateAcl: propagateAcl,\r\n role: role,\r\n url: url,\r\n useSimplifiedRoles: useSimplifiedRoles,\r\n });\r\n};\r\n/**\r\n * Supplies a method to pass any set of arguments to ShareObject\r\n *\r\n * @param options The set of options to send to ShareObject\r\n */\r\n_Web.prototype.shareObjectRaw = function (options) {\r\n return shareObject(this, options, true);\r\n};\r\n/**\r\n * Supplies a method to pass any set of arguments to ShareObject\r\n *\r\n * @param options The set of options to send to ShareObject\r\n */\r\n_Web.prototype.unshareObject = function (url) {\r\n return spPost(Web(this, \"unshareObject\").configureFrom(this), body({ url: url }));\r\n};\r\n//# sourceMappingURL=web.js.map","import { __awaiter, __decorate, __extends, __generator } from \"tslib\";\r\nimport { _SharePointQueryable } from \"../sharepointqueryable.js\";\r\nimport { extractWebUrl } from \"../utils/extractweburl.js\";\r\nimport { headers, body } from \"@pnp/odata\";\r\nimport { spPost } from \"../operations.js\";\r\nimport { hOP } from \"@pnp/common\";\r\nimport { tag } from \"../telemetry.js\";\r\nvar _SiteDesigns = /** @class */ (function (_super) {\r\n __extends(_SiteDesigns, _super);\r\n function _SiteDesigns(baseUrl, methodName) {\r\n if (methodName === void 0) { methodName = \"\"; }\r\n var _this = this;\r\n var url = typeof baseUrl === \"string\" ? baseUrl : baseUrl.toUrl();\r\n _this = _super.call(this, extractWebUrl(url), \"_api/Microsoft.Sharepoint.Utilities.WebTemplateExtensions.SiteScriptUtility.\" + methodName) || this;\r\n return _this;\r\n }\r\n _SiteDesigns.prototype.execute = function (props) {\r\n return spPost(this, body(props, headers({ \"Content-Type\": \"application/json;charset=utf-8\" })));\r\n };\r\n /**\r\n * Creates a new site design available to users when they create a new site from the SharePoint home page.\r\n *\r\n * @param creationInfo A sitedesign creation information object\r\n */\r\n _SiteDesigns.prototype.createSiteDesign = function (creationInfo) {\r\n return this.clone(SiteDesignsCloneFactory, \"CreateSiteDesign\").execute({ info: creationInfo });\r\n };\r\n /**\r\n * Applies a site design to an existing site collection.\r\n *\r\n * @param siteDesignId The ID of the site design to apply.\r\n * @param webUrl The URL of the site collection where you want to apply the site design.\r\n */\r\n _SiteDesigns.prototype.applySiteDesign = function (siteDesignId, webUrl) {\r\n return this.clone(SiteDesignsCloneFactory, \"ApplySiteDesign\").execute({ siteDesignId: siteDesignId, \"webUrl\": webUrl });\r\n };\r\n /**\r\n * Gets the list of available site designs\r\n */\r\n _SiteDesigns.prototype.getSiteDesigns = function () {\r\n return this.clone(SiteDesignsCloneFactory, \"GetSiteDesigns\").execute({});\r\n };\r\n /**\r\n * Gets information about a specific site design.\r\n * @param id The ID of the site design to get information about.\r\n */\r\n _SiteDesigns.prototype.getSiteDesignMetadata = function (id) {\r\n return this.clone(SiteDesignsCloneFactory, \"GetSiteDesignMetadata\").execute({ id: id });\r\n };\r\n /**\r\n * Updates a site design with new values. In the REST call, all parameters are optional except the site script Id.\r\n * If you had previously set the IsDefault parameter to TRUE and wish it to remain true, you must pass in this parameter again (otherwise it will be reset to FALSE).\r\n * @param updateInfo A sitedesign update information object\r\n */\r\n _SiteDesigns.prototype.updateSiteDesign = function (updateInfo) {\r\n return this.clone(SiteDesignsCloneFactory, \"UpdateSiteDesign\").execute({ updateInfo: updateInfo });\r\n };\r\n /**\r\n * Deletes a site design.\r\n * @param id The ID of the site design to delete.\r\n */\r\n _SiteDesigns.prototype.deleteSiteDesign = function (id) {\r\n return this.clone(SiteDesignsCloneFactory, \"DeleteSiteDesign\").execute({ id: id });\r\n };\r\n /**\r\n * Gets a list of principals that have access to a site design.\r\n * @param id The ID of the site design to get rights information from.\r\n */\r\n _SiteDesigns.prototype.getSiteDesignRights = function (id) {\r\n return this.clone(SiteDesignsCloneFactory, \"GetSiteDesignRights\").execute({ id: id });\r\n };\r\n /**\r\n * Grants access to a site design for one or more principals.\r\n * @param id The ID of the site design to grant rights on.\r\n * @param principalNames An array of one or more principals to grant view rights.\r\n * Principals can be users or mail-enabled security groups in the form of \"alias\" or \"alias@.com\"\r\n * @param grantedRights Always set to 1. This represents the View right.\r\n */\r\n _SiteDesigns.prototype.grantSiteDesignRights = function (id, principalNames, grantedRights) {\r\n if (grantedRights === void 0) { grantedRights = 1; }\r\n return this.clone(SiteDesignsCloneFactory, \"GrantSiteDesignRights\")\r\n .execute({\r\n \"grantedRights\": grantedRights.toString(),\r\n \"id\": id,\r\n \"principalNames\": principalNames,\r\n });\r\n };\r\n /**\r\n * Revokes access from a site design for one or more principals.\r\n * @param id The ID of the site design to revoke rights from.\r\n * @param principalNames An array of one or more principals to revoke view rights from.\r\n * If all principals have rights revoked on the site design, the site design becomes viewable to everyone.\r\n */\r\n _SiteDesigns.prototype.revokeSiteDesignRights = function (id, principalNames) {\r\n return this.clone(SiteDesignsCloneFactory, \"RevokeSiteDesignRights\")\r\n .execute({\r\n \"id\": id,\r\n \"principalNames\": principalNames,\r\n });\r\n };\r\n /**\r\n * Adds a site design task on the specified web url to be invoked asynchronously.\r\n * @param webUrl The absolute url of the web on where to create the task\r\n * @param siteDesignId The ID of the site design to create a task for\r\n */\r\n _SiteDesigns.prototype.addSiteDesignTask = function (webUrl, siteDesignId) {\r\n return this.clone(SiteDesignsCloneFactory, \"AddSiteDesignTask\")\r\n .execute({ \"webUrl\": webUrl, \"siteDesignId\": siteDesignId });\r\n };\r\n /**\r\n * Adds a site design task on the current web to be invoked asynchronously.\r\n * @param siteDesignId The ID of the site design to create a task for\r\n */\r\n _SiteDesigns.prototype.addSiteDesignTaskToCurrentWeb = function (siteDesignId) {\r\n return this.clone(SiteDesignsCloneFactory, \"AddSiteDesignTaskToCurrentWeb\")\r\n .execute({ \"siteDesignId\": siteDesignId });\r\n };\r\n /**\r\n * Retrieves the site design task, if the task has finished running null will be returned\r\n * @param id The ID of the site design task\r\n */\r\n _SiteDesigns.prototype.getSiteDesignTask = function (id) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var task;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0: return [4 /*yield*/, this.clone(SiteDesignsCloneFactory, \"GetSiteDesignTask\")\r\n .execute({ \"taskId\": id })];\r\n case 1:\r\n task = _a.sent();\r\n return [2 /*return*/, hOP(task, \"ID\") ? task : null];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Retrieves a list of site design that have run on a specific web\r\n * @param webUrl The url of the web where the site design was applied\r\n * @param siteDesignId (Optional) the site design ID, if not provided will return all site design runs\r\n */\r\n _SiteDesigns.prototype.getSiteDesignRun = function (webUrl, siteDesignId) {\r\n return this.clone(SiteDesignsCloneFactory, \"GetSiteDesignRun\")\r\n .execute({ \"webUrl\": webUrl, siteDesignId: siteDesignId });\r\n };\r\n /**\r\n * Retrieves the status of a site design that has been run or is still running\r\n * @param webUrl The url of the web where the site design was applied\r\n * @param runId the run ID\r\n */\r\n _SiteDesigns.prototype.getSiteDesignRunStatus = function (webUrl, runId) {\r\n return this.clone(SiteDesignsCloneFactory, \"GetSiteDesignRunStatus\")\r\n .execute({ \"webUrl\": webUrl, runId: runId });\r\n };\r\n __decorate([\r\n tag(\"sd.createSiteDesign\")\r\n ], _SiteDesigns.prototype, \"createSiteDesign\", null);\r\n __decorate([\r\n tag(\"sd.applySiteDesign\")\r\n ], _SiteDesigns.prototype, \"applySiteDesign\", null);\r\n __decorate([\r\n tag(\"sd.getSiteDesigns\")\r\n ], _SiteDesigns.prototype, \"getSiteDesigns\", null);\r\n __decorate([\r\n tag(\"sd.getSiteDesignMetadata\")\r\n ], _SiteDesigns.prototype, \"getSiteDesignMetadata\", null);\r\n __decorate([\r\n tag(\"sd.updateSiteDesign\")\r\n ], _SiteDesigns.prototype, \"updateSiteDesign\", null);\r\n __decorate([\r\n tag(\"sd.deleteSiteDesign\")\r\n ], _SiteDesigns.prototype, \"deleteSiteDesign\", null);\r\n __decorate([\r\n tag(\"sd.getSiteDesignRights\")\r\n ], _SiteDesigns.prototype, \"getSiteDesignRights\", null);\r\n __decorate([\r\n tag(\"sd.grantSiteDesignRights\")\r\n ], _SiteDesigns.prototype, \"grantSiteDesignRights\", null);\r\n __decorate([\r\n tag(\"sd.revokeSiteDesignRights\")\r\n ], _SiteDesigns.prototype, \"revokeSiteDesignRights\", null);\r\n __decorate([\r\n tag(\"sd.addSiteDesignTask\")\r\n ], _SiteDesigns.prototype, \"addSiteDesignTask\", null);\r\n __decorate([\r\n tag(\"sd.addSiteDesignTaskToCurrentWeb\")\r\n ], _SiteDesigns.prototype, \"addSiteDesignTaskToCurrentWeb\", null);\r\n __decorate([\r\n tag(\"sd.getSiteDesignTask\")\r\n ], _SiteDesigns.prototype, \"getSiteDesignTask\", null);\r\n __decorate([\r\n tag(\"sd.getSiteDesignRun\")\r\n ], _SiteDesigns.prototype, \"getSiteDesignRun\", null);\r\n __decorate([\r\n tag(\"sd.getSiteDesignRunStatus\")\r\n ], _SiteDesigns.prototype, \"getSiteDesignRunStatus\", null);\r\n return _SiteDesigns;\r\n}(_SharePointQueryable));\r\nexport { _SiteDesigns };\r\nexport var SiteDesigns = function (baseUrl, methodName) { return new _SiteDesigns(baseUrl, methodName); };\r\nvar SiteDesignsCloneFactory = function (baseUrl, methodName) {\r\n if (methodName === void 0) { methodName = \"\"; }\r\n return SiteDesigns(baseUrl, methodName);\r\n};\r\n//# sourceMappingURL=types.js.map","import { _Web } from \"../webs/types.js\";\r\nimport { SiteDesigns } from \"./types.js\";\r\n_Web.prototype.getSiteDesignRuns = function (siteDesignId) {\r\n return SiteDesigns(this, \"\").getSiteDesignRun(undefined, siteDesignId);\r\n};\r\n_Web.prototype.addSiteDesignTask = function (siteDesignId) {\r\n return SiteDesigns(this, \"\").addSiteDesignTaskToCurrentWeb(siteDesignId);\r\n};\r\n_Web.prototype.getSiteDesignRunStatus = function (runId) {\r\n return SiteDesigns(this, \"\").getSiteDesignRunStatus(undefined, runId);\r\n};\r\n//# sourceMappingURL=web.js.map","import \"./web.js\";\r\nimport { SPRest } from \"../rest.js\";\r\nimport { SiteDesigns } from \"./types.js\";\r\nexport { SiteDesigns, } from \"./types.js\";\r\nReflect.defineProperty(SPRest.prototype, \"siteDesigns\", {\r\n configurable: true,\r\n enumerable: true,\r\n get: function () {\r\n return this.childConfigHook(function (_a) {\r\n var options = _a.options, baseUrl = _a.baseUrl, runtime = _a.runtime;\r\n return SiteDesigns(baseUrl).configure(options).setRuntime(runtime);\r\n });\r\n },\r\n});\r\n//# sourceMappingURL=index.js.map","import { __awaiter, __generator } from \"tslib\";\r\nimport { addProp } from \"@pnp/odata\";\r\nimport { _Web, Web } from \"../webs/types.js\";\r\nimport { SiteGroups, SiteGroup } from \"./types.js\";\r\nimport { spPost } from \"../operations.js\";\r\nimport { escapeQueryStrValue } from \"../utils/escapeQueryStrValue.js\";\r\nimport \"../security/web.js\";\r\naddProp(_Web, \"siteGroups\", SiteGroups);\r\naddProp(_Web, \"associatedOwnerGroup\", SiteGroup, \"associatedownergroup\");\r\naddProp(_Web, \"associatedMemberGroup\", SiteGroup, \"associatedmembergroup\");\r\naddProp(_Web, \"associatedVisitorGroup\", SiteGroup, \"associatedvisitorgroup\");\r\n_Web.prototype.createDefaultAssociatedGroups = function (groupNameSeed, siteOwner, copyRoleAssignments, clearSubscopes, siteOwner2) {\r\n if (copyRoleAssignments === void 0) { copyRoleAssignments = false; }\r\n if (clearSubscopes === void 0) { clearSubscopes = true; }\r\n return __awaiter(this, void 0, void 0, function () {\r\n var q;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0: return [4 /*yield*/, this.breakRoleInheritance(copyRoleAssignments, clearSubscopes)];\r\n case 1:\r\n _a.sent();\r\n q = this.clone(Web, \"createDefaultAssociatedGroups(userLogin=@u,userLogin2=@v,groupNameSeed=@s)\");\r\n q.query.set(\"@u\", \"'\" + escapeQueryStrValue(siteOwner || \"\") + \"'\");\r\n q.query.set(\"@v\", \"'\" + escapeQueryStrValue(siteOwner2 || \"\") + \"'\");\r\n q.query.set(\"@s\", \"'\" + escapeQueryStrValue(groupNameSeed || \"\") + \"'\");\r\n return [2 /*return*/, spPost(q)];\r\n }\r\n });\r\n });\r\n};\r\n//# sourceMappingURL=web.js.map","import { __decorate, __extends } from \"tslib\";\r\nimport { body } from \"@pnp/odata\";\r\nimport { spPost } from \"../operations.js\";\r\nimport { _SharePointQueryable } from \"../sharepointqueryable.js\";\r\nimport { extractWebUrl } from \"../utils/extractweburl.js\";\r\nimport { tag } from \"../telemetry.js\";\r\nimport { escapeQueryStrValue } from \"../utils/escapeQueryStrValue.js\";\r\nvar _SiteScripts = /** @class */ (function (_super) {\r\n __extends(_SiteScripts, _super);\r\n function _SiteScripts(baseUrl, methodName) {\r\n if (methodName === void 0) { methodName = \"\"; }\r\n var _this = this;\r\n var url = typeof baseUrl === \"string\" ? baseUrl : baseUrl.toUrl();\r\n _this = _super.call(this, extractWebUrl(url), \"_api/Microsoft.Sharepoint.Utilities.WebTemplateExtensions.SiteScriptUtility.\" + methodName) || this;\r\n return _this;\r\n }\r\n _SiteScripts.prototype.execute = function (props) {\r\n return spPost(this, body(props));\r\n };\r\n /**\r\n * Gets a list of information on all existing site scripts.\r\n */\r\n _SiteScripts.prototype.getSiteScripts = function () {\r\n return this.clone(SiteScriptsCloneFactory, \"GetSiteScripts\", true).execute({});\r\n };\r\n /**\r\n * Creates a new site script.\r\n *\r\n * @param title The display name of the site script.\r\n * @param content JSON value that describes the script. For more information, see JSON reference.\r\n */\r\n _SiteScripts.prototype.createSiteScript = function (title, description, content) {\r\n return this.clone(SiteScriptsCloneFactory, \"CreateSiteScript(Title=@title,Description=@desc)?@title='\" + escapeQueryStrValue(title) + \"'&@desc='\" + escapeQueryStrValue(description) + \"'\")\r\n .execute(content);\r\n };\r\n /**\r\n * Gets information about a specific site script. It also returns the JSON of the script.\r\n *\r\n * @param id The ID of the site script to get information about.\r\n */\r\n _SiteScripts.prototype.getSiteScriptMetadata = function (id) {\r\n return this.clone(SiteScriptsCloneFactory, \"GetSiteScriptMetadata\").execute({ id: id });\r\n };\r\n /**\r\n * Deletes a site script.\r\n *\r\n * @param id The ID of the site script to delete.\r\n */\r\n _SiteScripts.prototype.deleteSiteScript = function (id) {\r\n return this.clone(SiteScriptsCloneFactory, \"DeleteSiteScript\").execute({ id: id });\r\n };\r\n /**\r\n * Updates a site script with new values. In the REST call, all parameters are optional except the site script Id.\r\n *\r\n * @param siteScriptUpdateInfo Object that contains the information to update a site script.\r\n * Make sure you stringify the content object or pass it in the second 'content' parameter\r\n * @param content (Optional) A new JSON script defining the script actions. For more information, see Site design JSON schema.\r\n */\r\n _SiteScripts.prototype.updateSiteScript = function (updateInfo, content) {\r\n if (content) {\r\n updateInfo.Content = JSON.stringify(content);\r\n }\r\n return this.clone(SiteScriptsCloneFactory, \"UpdateSiteScript\").execute({ updateInfo: updateInfo });\r\n };\r\n /**\r\n * Gets the site script syntax (JSON) for a specific list\r\n * @param listUrl The absolute url of the list to retrieve site script\r\n */\r\n _SiteScripts.prototype.getSiteScriptFromList = function (listUrl) {\r\n return this.clone(SiteScriptsCloneFactory, \"GetSiteScriptFromList\").execute({ listUrl: listUrl });\r\n };\r\n /**\r\n * Gets the site script syntax (JSON) for a specific web\r\n * @param webUrl The absolute url of the web to retrieve site script\r\n * @param extractInfo configuration object to specify what to extract\r\n */\r\n _SiteScripts.prototype.getSiteScriptFromWeb = function (webUrl, info) {\r\n return this.clone(SiteScriptsCloneFactory, \"getSiteScriptFromWeb\").execute({ webUrl: webUrl, info: info });\r\n };\r\n /**\r\n * Executes the indicated site design action on the indicated web.\r\n *\r\n * @param webUrl The absolute url of the web to retrieve site script\r\n * @param extractInfo configuration object to specify what to extract\r\n */\r\n _SiteScripts.prototype.executeSiteScriptAction = function (actionDefinition) {\r\n return this.clone(SiteScriptsCloneFactory, \"executeSiteScriptAction\").execute({ actionDefinition: actionDefinition });\r\n };\r\n __decorate([\r\n tag(\"ss.getSiteScripts\")\r\n ], _SiteScripts.prototype, \"getSiteScripts\", null);\r\n __decorate([\r\n tag(\"ss.createSiteScript\")\r\n ], _SiteScripts.prototype, \"createSiteScript\", null);\r\n __decorate([\r\n tag(\"ss.getSiteScriptMetadata\")\r\n ], _SiteScripts.prototype, \"getSiteScriptMetadata\", null);\r\n __decorate([\r\n tag(\"ss.deleteSiteScript\")\r\n ], _SiteScripts.prototype, \"deleteSiteScript\", null);\r\n __decorate([\r\n tag(\"ss.updateSiteScript\")\r\n ], _SiteScripts.prototype, \"updateSiteScript\", null);\r\n __decorate([\r\n tag(\"ss.getSiteScriptFromList\")\r\n ], _SiteScripts.prototype, \"getSiteScriptFromList\", null);\r\n __decorate([\r\n tag(\"ss.getSiteScriptFromWeb\")\r\n ], _SiteScripts.prototype, \"getSiteScriptFromWeb\", null);\r\n __decorate([\r\n tag(\"ss.executeSiteScriptAction\")\r\n ], _SiteScripts.prototype, \"executeSiteScriptAction\", null);\r\n return _SiteScripts;\r\n}(_SharePointQueryable));\r\nexport { _SiteScripts };\r\nexport var SiteScripts = function (baseUrl, methodName) { return new _SiteScripts(baseUrl, methodName); };\r\nvar SiteScriptsCloneFactory = function (baseUrl, methodName) {\r\n if (methodName === void 0) { methodName = \"\"; }\r\n return SiteScripts(baseUrl, methodName);\r\n};\r\nexport var SiteScriptActionOutcome;\r\n(function (SiteScriptActionOutcome) {\r\n /**\r\n * The stage was deemed to have completed successfully.\r\n */\r\n SiteScriptActionOutcome[SiteScriptActionOutcome[\"Success\"] = 0] = \"Success\";\r\n /**\r\n * The stage was deemed to have failed to complete successfully (non-blocking, rest of recipe\r\n * execution should still be able to proceed).\r\n */\r\n SiteScriptActionOutcome[SiteScriptActionOutcome[\"Failure\"] = 1] = \"Failure\";\r\n /**\r\n * No action was taken for this stage / this stage was skipped.\r\n */\r\n SiteScriptActionOutcome[SiteScriptActionOutcome[\"NoOp\"] = 2] = \"NoOp\";\r\n /**\r\n * There was an exception but the operation succeeded. This is analagous to the operation completing\r\n * in a \"yellow\" state.\r\n */\r\n SiteScriptActionOutcome[SiteScriptActionOutcome[\"SucceededWithException\"] = 3] = \"SucceededWithException\";\r\n})(SiteScriptActionOutcome || (SiteScriptActionOutcome = {}));\r\n//# sourceMappingURL=types.js.map","import { _Web } from \"../webs/types.js\";\r\nimport { SiteScripts } from \"./types.js\";\r\n_Web.prototype.getSiteScript = function (extractInfo) {\r\n return SiteScripts(this.toUrl(), \"\").getSiteScriptFromWeb(undefined, extractInfo);\r\n};\r\n//# sourceMappingURL=web.js.map","import { __awaiter, __generator } from \"tslib\";\r\nimport { combine } from \"@pnp/common\";\r\nimport { _List, List } from \"../lists/types.js\";\r\nimport { SiteScripts } from \"./types.js\";\r\nimport \"../folders/list.js\";\r\nimport { Web } from \"../webs/types.js\";\r\nimport { extractWebUrl } from \"../utils/extractweburl.js\";\r\n_List.prototype.getSiteScript = function () {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var rootFolder, web, absoluteListUrl;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0: return [4 /*yield*/, this.clone(List).rootFolder.get()];\r\n case 1:\r\n rootFolder = _a.sent();\r\n return [4 /*yield*/, Web(extractWebUrl(this.toUrl())).configureFrom(this).select(\"Url\").get()];\r\n case 2:\r\n web = _a.sent();\r\n absoluteListUrl = combine(web.Url, \"Lists\", rootFolder.Name);\r\n return [2 /*return*/, SiteScripts(this, \"\").getSiteScriptFromList(absoluteListUrl)];\r\n }\r\n });\r\n });\r\n};\r\n//# sourceMappingURL=list.js.map","import \"./web.js\";\r\nimport \"./list.js\";\r\nimport { SPRest } from \"../rest.js\";\r\nimport { SiteScripts } from \"./types.js\";\r\nexport { SiteScripts, } from \"./types.js\";\r\nReflect.defineProperty(SPRest.prototype, \"siteScripts\", {\r\n configurable: true,\r\n enumerable: true,\r\n get: function () {\r\n return this.childConfigHook(function (_a) {\r\n var options = _a.options, baseUrl = _a.baseUrl, runtime = _a.runtime;\r\n return SiteScripts(baseUrl).configure(options).setRuntime(runtime);\r\n });\r\n },\r\n});\r\n//# sourceMappingURL=index.js.map","import { __awaiter, __generator } from \"tslib\";\r\nimport { addProp, body } from \"@pnp/odata\";\r\nimport { _Web, Web } from \"../webs/types.js\";\r\nimport { SiteUsers, SiteUser } from \"./types.js\";\r\nimport { odataUrlFrom } from \"../odata.js\";\r\nimport { spPost } from \"../operations.js\";\r\naddProp(_Web, \"siteUsers\", SiteUsers);\r\naddProp(_Web, \"currentUser\", SiteUser, \"currentuser\");\r\n_Web.prototype.ensureUser = function (logonName) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var data;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0: return [4 /*yield*/, spPost(this.clone(Web, \"ensureuser\"), body({ logonName: logonName }))];\r\n case 1:\r\n data = _a.sent();\r\n return [2 /*return*/, {\r\n data: data,\r\n user: SiteUser(odataUrlFrom(data)),\r\n }];\r\n }\r\n });\r\n });\r\n};\r\n_Web.prototype.getUserById = function (id) {\r\n return SiteUser(this, \"getUserById(\" + id + \")\");\r\n};\r\n//# sourceMappingURL=web.js.map","import { __awaiter, __decorate, __extends, __generator } from \"tslib\";\r\nimport { _SharePointQueryableInstance, spInvokableFactory, } from \"../sharepointqueryable.js\";\r\nimport { defaultPath } from \"../decorators.js\";\r\nimport { hOP } from \"@pnp/common\";\r\nimport { metadata } from \"../utils/metadata.js\";\r\nimport { body } from \"@pnp/odata\";\r\nimport { spPost } from \"../operations.js\";\r\nimport { tag } from \"../telemetry.js\";\r\nvar _Social = /** @class */ (function (_super) {\r\n __extends(_Social, _super);\r\n function _Social() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n Object.defineProperty(_Social.prototype, \"my\", {\r\n get: function () {\r\n return MySocial(this);\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n _Social.prototype.getFollowedSitesUri = function () {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var r;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0: return [4 /*yield*/, this.clone(SocialCloneFactory, \"FollowedSitesUri\").get()];\r\n case 1:\r\n r = _a.sent();\r\n return [2 /*return*/, r.FollowedSitesUri || r];\r\n }\r\n });\r\n });\r\n };\r\n _Social.prototype.getFollowedDocumentsUri = function () {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var r;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0: return [4 /*yield*/, this.clone(SocialCloneFactory, \"FollowedDocumentsUri\").get()];\r\n case 1:\r\n r = _a.sent();\r\n return [2 /*return*/, r.FollowedDocumentsUri || r];\r\n }\r\n });\r\n });\r\n };\r\n _Social.prototype.follow = function (actorInfo) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0: return [4 /*yield*/, spPost(this.clone(SocialCloneFactory, \"follow\"), this.createSocialActorInfoRequestBody(actorInfo))];\r\n case 1: return [2 /*return*/, _a.sent()];\r\n }\r\n });\r\n });\r\n };\r\n _Social.prototype.isFollowed = function (actorInfo) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0: return [4 /*yield*/, spPost(this.clone(SocialCloneFactory, \"isfollowed\"), this.createSocialActorInfoRequestBody(actorInfo))];\r\n case 1: return [2 /*return*/, _a.sent()];\r\n }\r\n });\r\n });\r\n };\r\n _Social.prototype.stopFollowing = function (actorInfo) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0: return [4 /*yield*/, spPost(this.clone(SocialCloneFactory, \"stopfollowing\"), this.createSocialActorInfoRequestBody(actorInfo))];\r\n case 1: return [2 /*return*/, _a.sent()];\r\n }\r\n });\r\n });\r\n };\r\n _Social.prototype.createSocialActorInfoRequestBody = function (actorInfo) {\r\n return body({\r\n \"actor\": Object.assign(metadata(\"SP.Social.SocialActorInfo\"), {\r\n Id: null,\r\n }, actorInfo),\r\n });\r\n };\r\n __decorate([\r\n tag(\"soc.getFollowedSitesUri\")\r\n ], _Social.prototype, \"getFollowedSitesUri\", null);\r\n __decorate([\r\n tag(\"soc.getFollowedDocumentsUri\")\r\n ], _Social.prototype, \"getFollowedDocumentsUri\", null);\r\n __decorate([\r\n tag(\"soc.follow\")\r\n ], _Social.prototype, \"follow\", null);\r\n __decorate([\r\n tag(\"soc.isFollowed\")\r\n ], _Social.prototype, \"isFollowed\", null);\r\n __decorate([\r\n tag(\"soc.stopFollowing\")\r\n ], _Social.prototype, \"stopFollowing\", null);\r\n _Social = __decorate([\r\n defaultPath(\"_api/social.following\")\r\n ], _Social);\r\n return _Social;\r\n}(_SharePointQueryableInstance));\r\nexport { _Social };\r\n/**\r\n * Get a new Social instance for the particular Url\r\n */\r\nexport var Social = function (baseUrl) { return new _Social(baseUrl); };\r\nvar SocialCloneFactory = function (baseUrl, paths) { return new _Social(baseUrl, paths); };\r\n/**\r\n * Current user's Social instance\r\n */\r\nvar _MySocial = /** @class */ (function (_super) {\r\n __extends(_MySocial, _super);\r\n function _MySocial() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n _MySocial.prototype.followed = function (types) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var r;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0: return [4 /*yield*/, this.clone(MySocialCloneFactory, \"followed(types=\" + types + \")\")()];\r\n case 1:\r\n r = _a.sent();\r\n return [2 /*return*/, hOP(r, \"Followed\") ? r.Followed.results : r];\r\n }\r\n });\r\n });\r\n };\r\n _MySocial.prototype.followedCount = function (types) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var r;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0: return [4 /*yield*/, this.clone(MySocialCloneFactory, \"followedcount(types=\" + types + \")\")()];\r\n case 1:\r\n r = _a.sent();\r\n return [2 /*return*/, r.FollowedCount || r];\r\n }\r\n });\r\n });\r\n };\r\n _MySocial.prototype.followers = function () {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var r;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0: return [4 /*yield*/, this.clone(MySocialCloneFactory, \"followers\")()];\r\n case 1:\r\n r = _a.sent();\r\n return [2 /*return*/, hOP(r, \"Followers\") ? r.Followers.results : r];\r\n }\r\n });\r\n });\r\n };\r\n _MySocial.prototype.suggestions = function () {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var r;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0: return [4 /*yield*/, this.clone(MySocialCloneFactory, \"suggestions\")()];\r\n case 1:\r\n r = _a.sent();\r\n return [2 /*return*/, hOP(r, \"Suggestions\") ? r.Suggestions.results : r];\r\n }\r\n });\r\n });\r\n };\r\n __decorate([\r\n tag(\"msoc.followed\")\r\n ], _MySocial.prototype, \"followed\", null);\r\n __decorate([\r\n tag(\"msoc.followedCount\")\r\n ], _MySocial.prototype, \"followedCount\", null);\r\n __decorate([\r\n tag(\"msoc.followers\")\r\n ], _MySocial.prototype, \"followers\", null);\r\n __decorate([\r\n tag(\"msoc.suggestions\")\r\n ], _MySocial.prototype, \"suggestions\", null);\r\n _MySocial = __decorate([\r\n defaultPath(\"my\")\r\n ], _MySocial);\r\n return _MySocial;\r\n}(_SharePointQueryableInstance));\r\nexport { _MySocial };\r\n/**\r\n * Invokable factory for IMySocial instances\r\n */\r\nexport var MySocial = spInvokableFactory(_MySocial);\r\nvar MySocialCloneFactory = function (baseUrl, path) { return MySocial(baseUrl, path); };\r\n/**\r\n * Social actor type\r\n *\r\n */\r\nexport var SocialActorType;\r\n(function (SocialActorType) {\r\n SocialActorType[SocialActorType[\"User\"] = 0] = \"User\";\r\n SocialActorType[SocialActorType[\"Document\"] = 1] = \"Document\";\r\n SocialActorType[SocialActorType[\"Site\"] = 2] = \"Site\";\r\n SocialActorType[SocialActorType[\"Tag\"] = 3] = \"Tag\";\r\n})(SocialActorType || (SocialActorType = {}));\r\n/**\r\n * Social actor type\r\n *\r\n */\r\n/* eslint-disable no-bitwise */\r\nexport var SocialActorTypes;\r\n(function (SocialActorTypes) {\r\n SocialActorTypes[SocialActorTypes[\"None\"] = 0] = \"None\";\r\n SocialActorTypes[SocialActorTypes[\"User\"] = 1] = \"User\";\r\n SocialActorTypes[SocialActorTypes[\"Document\"] = 2] = \"Document\";\r\n SocialActorTypes[SocialActorTypes[\"Site\"] = 4] = \"Site\";\r\n SocialActorTypes[SocialActorTypes[\"Tag\"] = 8] = \"Tag\";\r\n /**\r\n * The set excludes documents and sites that do not have feeds.\r\n */\r\n SocialActorTypes[SocialActorTypes[\"ExcludeContentWithoutFeeds\"] = 268435456] = \"ExcludeContentWithoutFeeds\";\r\n /**\r\n * The set includes group sites\r\n */\r\n SocialActorTypes[SocialActorTypes[\"IncludeGroupsSites\"] = 536870912] = \"IncludeGroupsSites\";\r\n /**\r\n * The set includes only items created within the last 24 hours\r\n */\r\n SocialActorTypes[SocialActorTypes[\"WithinLast24Hours\"] = 1073741824] = \"WithinLast24Hours\";\r\n})(SocialActorTypes || (SocialActorTypes = {}));\r\n/* eslint-enable no-bitwise */\r\n/**\r\n * Result from following\r\n *\r\n */\r\nexport var SocialFollowResult;\r\n(function (SocialFollowResult) {\r\n SocialFollowResult[SocialFollowResult[\"Ok\"] = 0] = \"Ok\";\r\n SocialFollowResult[SocialFollowResult[\"AlreadyFollowing\"] = 1] = \"AlreadyFollowing\";\r\n SocialFollowResult[SocialFollowResult[\"LimitReached\"] = 2] = \"LimitReached\";\r\n SocialFollowResult[SocialFollowResult[\"InternalError\"] = 3] = \"InternalError\";\r\n})(SocialFollowResult || (SocialFollowResult = {}));\r\n/**\r\n * Specifies an exception or status code.\r\n */\r\nexport var SocialStatusCode;\r\n(function (SocialStatusCode) {\r\n /**\r\n * The operation completed successfully\r\n */\r\n SocialStatusCode[SocialStatusCode[\"OK\"] = 0] = \"OK\";\r\n /**\r\n * The request is invalid.\r\n */\r\n SocialStatusCode[SocialStatusCode[\"InvalidRequest\"] = 1] = \"InvalidRequest\";\r\n /**\r\n * The current user is not authorized to perform the operation.\r\n */\r\n SocialStatusCode[SocialStatusCode[\"AccessDenied\"] = 2] = \"AccessDenied\";\r\n /**\r\n * The target of the operation was not found.\r\n */\r\n SocialStatusCode[SocialStatusCode[\"ItemNotFound\"] = 3] = \"ItemNotFound\";\r\n /**\r\n * The operation is invalid for the target's current state.\r\n */\r\n SocialStatusCode[SocialStatusCode[\"InvalidOperation\"] = 4] = \"InvalidOperation\";\r\n /**\r\n * The operation completed without modifying the target.\r\n */\r\n SocialStatusCode[SocialStatusCode[\"ItemNotModified\"] = 5] = \"ItemNotModified\";\r\n /**\r\n * The operation failed because an internal error occurred.\r\n */\r\n SocialStatusCode[SocialStatusCode[\"InternalError\"] = 6] = \"InternalError\";\r\n /**\r\n * The operation failed because the server could not access the distributed cache.\r\n */\r\n SocialStatusCode[SocialStatusCode[\"CacheReadError\"] = 7] = \"CacheReadError\";\r\n /**\r\n * The operation succeeded but the server could not update the distributed cache.\r\n */\r\n SocialStatusCode[SocialStatusCode[\"CacheUpdateError\"] = 8] = \"CacheUpdateError\";\r\n /**\r\n * No personal site exists for the current user, and no further information is available.\r\n */\r\n SocialStatusCode[SocialStatusCode[\"PersonalSiteNotFound\"] = 9] = \"PersonalSiteNotFound\";\r\n /**\r\n * No personal site exists for the current user, and a previous attempt to create one failed.\r\n */\r\n SocialStatusCode[SocialStatusCode[\"FailedToCreatePersonalSite\"] = 10] = \"FailedToCreatePersonalSite\";\r\n /**\r\n * No personal site exists for the current user, and a previous attempt to create one was not authorized.\r\n */\r\n SocialStatusCode[SocialStatusCode[\"NotAuthorizedToCreatePersonalSite\"] = 11] = \"NotAuthorizedToCreatePersonalSite\";\r\n /**\r\n * No personal site exists for the current user, and no attempt should be made to create one.\r\n */\r\n SocialStatusCode[SocialStatusCode[\"CannotCreatePersonalSite\"] = 12] = \"CannotCreatePersonalSite\";\r\n /**\r\n * The operation was rejected because an internal limit had been reached.\r\n */\r\n SocialStatusCode[SocialStatusCode[\"LimitReached\"] = 13] = \"LimitReached\";\r\n /**\r\n * The operation failed because an error occurred during the processing of the specified attachment.\r\n */\r\n SocialStatusCode[SocialStatusCode[\"AttachmentError\"] = 14] = \"AttachmentError\";\r\n /**\r\n * The operation succeeded with recoverable errors; the returned data is incomplete.\r\n */\r\n SocialStatusCode[SocialStatusCode[\"PartialData\"] = 15] = \"PartialData\";\r\n /**\r\n * A required SharePoint feature is not enabled.\r\n */\r\n SocialStatusCode[SocialStatusCode[\"FeatureDisabled\"] = 16] = \"FeatureDisabled\";\r\n /**\r\n * The site's storage quota has been exceeded.\r\n */\r\n SocialStatusCode[SocialStatusCode[\"StorageQuotaExceeded\"] = 17] = \"StorageQuotaExceeded\";\r\n /**\r\n * The operation failed because the server could not access the database.\r\n */\r\n SocialStatusCode[SocialStatusCode[\"DatabaseError\"] = 18] = \"DatabaseError\";\r\n})(SocialStatusCode || (SocialStatusCode = {}));\r\n//# sourceMappingURL=types.js.map","import { Social } from \"./types.js\";\r\nimport { SPRest } from \"../rest.js\";\r\nexport { MySocial, Social, SocialActorType, SocialActorTypes, SocialFollowResult, SocialStatusCode, } from \"./types.js\";\r\nReflect.defineProperty(SPRest.prototype, \"social\", {\r\n configurable: true,\r\n enumerable: true,\r\n get: function () {\r\n return this.childConfigHook(function (_a) {\r\n var options = _a.options, baseUrl = _a.baseUrl, runtime = _a.runtime;\r\n return Social(baseUrl).configure(options).setRuntime(runtime);\r\n });\r\n },\r\n});\r\n//# sourceMappingURL=index.js.map","import { __awaiter, __extends, __generator } from \"tslib\";\r\nimport { _SharePointQueryable, spInvokableFactory } from \"../sharepointqueryable.js\";\r\nimport { assign } from \"@pnp/common\";\r\nimport { body } from \"@pnp/odata\";\r\nimport { odataUrlFrom } from \"../odata.js\";\r\nimport { metadata } from \"../utils/metadata.js\";\r\nimport { File } from \"../files/types.js\";\r\nimport { extractWebUrl } from \"../utils/extractweburl.js\";\r\nimport { spPost } from \"../operations.js\";\r\nimport { tag } from \"../telemetry.js\";\r\nimport { objectToSPKeyValueCollection } from \"../utils/objectToSPKeyValueCollection.js\";\r\nvar _Utilities = /** @class */ (function (_super) {\r\n __extends(_Utilities, _super);\r\n function _Utilities(baseUrl, methodName) {\r\n var _this = this;\r\n var url = typeof baseUrl === \"string\" ? baseUrl : baseUrl.toUrl();\r\n _this = _super.call(this, extractWebUrl(url), \"_api/SP.Utilities.Utility.\" + methodName) || this;\r\n return _this;\r\n }\r\n _Utilities.prototype.excute = function (props) {\r\n return spPost(this, body(props));\r\n };\r\n _Utilities.prototype.sendEmail = function (props) {\r\n var params = {\r\n properties: assign(metadata(\"SP.Utilities.EmailProperties\"), {\r\n Body: props.Body,\r\n From: props.From,\r\n Subject: props.Subject,\r\n }),\r\n };\r\n if (props.To && props.To.length > 0) {\r\n params.properties = assign(params.properties, {\r\n To: { results: props.To },\r\n });\r\n }\r\n if (props.CC && props.CC.length > 0) {\r\n params.properties = assign(params.properties, {\r\n CC: { results: props.CC },\r\n });\r\n }\r\n if (props.BCC && props.BCC.length > 0) {\r\n params.properties = assign(params.properties, {\r\n BCC: { results: props.BCC },\r\n });\r\n }\r\n if (props.AdditionalHeaders) {\r\n params.properties = assign(params.properties, {\r\n AdditionalHeaders: objectToSPKeyValueCollection(props.AdditionalHeaders),\r\n });\r\n }\r\n return tag.configure(this.clone(UtilitiesCloneFactory, \"SendEmail\", true), \"u.sendEmail\").excute(params);\r\n };\r\n _Utilities.prototype.getCurrentUserEmailAddresses = function () {\r\n return tag.configure(this.clone(UtilitiesCloneFactory, \"GetCurrentUserEmailAddresses\", true), \"u.getCurrentUserEmailAddresses\").excute({});\r\n };\r\n _Utilities.prototype.resolvePrincipal = function (input, scopes, sources, inputIsEmailOnly, addToUserInfoList, matchUserInfoList) {\r\n if (matchUserInfoList === void 0) { matchUserInfoList = false; }\r\n var params = {\r\n addToUserInfoList: addToUserInfoList,\r\n input: input,\r\n inputIsEmailOnly: inputIsEmailOnly,\r\n matchUserInfoList: matchUserInfoList,\r\n scopes: scopes,\r\n sources: sources,\r\n };\r\n var clone = this.clone(UtilitiesCloneFactory, \"ResolvePrincipalInCurrentContext\", true);\r\n return tag.configure(clone, \"u.ResolvePrincipalInCurrentContext\").excute(params);\r\n };\r\n _Utilities.prototype.searchPrincipals = function (input, scopes, sources, groupName, maxCount) {\r\n var params = {\r\n groupName: groupName,\r\n input: input,\r\n maxCount: maxCount,\r\n scopes: scopes,\r\n sources: sources,\r\n };\r\n var clone = this.clone(UtilitiesCloneFactory, \"SearchPrincipalsUsingContextWeb\", true);\r\n return tag.configure(clone, \"u.SearchPrincipalsUsingContextWeb\").excute(params);\r\n };\r\n _Utilities.prototype.createEmailBodyForInvitation = function (pageAddress) {\r\n var params = {\r\n pageAddress: pageAddress,\r\n };\r\n var clone = this.clone(UtilitiesCloneFactory, \"CreateEmailBodyForInvitation\", true);\r\n return tag.configure(clone, \"u.CreateEmailBodyForInvitation\").excute(params);\r\n };\r\n _Utilities.prototype.expandGroupsToPrincipals = function (inputs, maxCount) {\r\n if (maxCount === void 0) { maxCount = 30; }\r\n var params = {\r\n inputs: inputs,\r\n maxCount: maxCount,\r\n };\r\n var clone = this.clone(UtilitiesCloneFactory, \"ExpandGroupsToPrincipals\", true);\r\n return tag.configure(clone, \"u.ExpandGroupsToPrincipals\").excute(params);\r\n };\r\n _Utilities.prototype.createWikiPage = function (info) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var clone, newPage;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n clone = this.clone(UtilitiesCloneFactory, \"CreateWikiPageInContextWeb\", true);\r\n return [4 /*yield*/, tag.configure(clone, \"u.CreateWikiPageInContextWeb\").excute({ parameters: info })];\r\n case 1:\r\n newPage = _a.sent();\r\n return [2 /*return*/, {\r\n data: newPage,\r\n file: File(odataUrlFrom(newPage)),\r\n }];\r\n }\r\n });\r\n });\r\n };\r\n return _Utilities;\r\n}(_SharePointQueryable));\r\nexport { _Utilities };\r\nexport var Utilities = spInvokableFactory(_Utilities);\r\nvar UtilitiesCloneFactory = function (baseUrl, path) { return Utilities(baseUrl, path); };\r\n//# sourceMappingURL=types.js.map","import { SPRest } from \"../rest.js\";\r\nimport { Utilities } from \"./types.js\";\r\nexport { Utilities, } from \"./types.js\";\r\nReflect.defineProperty(SPRest.prototype, \"utility\", {\r\n configurable: true,\r\n enumerable: true,\r\n get: function () {\r\n return this.childConfigHook(function (_a) {\r\n var options = _a.options, baseUrl = _a.baseUrl, runtime = _a.runtime;\r\n return Utilities(baseUrl, \"\").configure(options).setRuntime(runtime);\r\n });\r\n },\r\n});\r\n//# sourceMappingURL=index.js.map","import { __awaiter, __decorate, __extends, __generator } from \"tslib\";\r\nimport { _SharePointQueryableInstance, _SharePointQueryableCollection, spInvokableFactory, } from \"../sharepointqueryable.js\";\r\nimport { body, headers } from \"@pnp/odata\";\r\nimport { defaultPath } from \"../decorators.js\";\r\nimport { spPost, spDelete, spPatch } from \"../operations.js\";\r\nimport { tag } from \"../telemetry.js\";\r\nvar _Subscriptions = /** @class */ (function (_super) {\r\n __extends(_Subscriptions, _super);\r\n function _Subscriptions() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n /**\r\n * Returns all the webhook subscriptions or the specified webhook subscription\r\n *\r\n * @param subscriptionId The id of a specific webhook subscription to retrieve, omit to retrieve all the webhook subscriptions\r\n */\r\n _Subscriptions.prototype.getById = function (subscriptionId) {\r\n return tag.configure(Subscription(this).concat(\"('\" + subscriptionId + \"')\"), \"subs.getById\");\r\n };\r\n /**\r\n * Creates a new webhook subscription\r\n *\r\n * @param notificationUrl The url to receive the notifications\r\n * @param expirationDate The date and time to expire the subscription in the form YYYY-MM-ddTHH:mm:ss+00:00 (maximum of 6 months)\r\n * @param clientState A client specific string (optional)\r\n */\r\n _Subscriptions.prototype.add = function (notificationUrl, expirationDate, clientState) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var postBody, data;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n postBody = {\r\n \"expirationDateTime\": expirationDate,\r\n \"notificationUrl\": notificationUrl,\r\n \"resource\": this.toUrl(),\r\n };\r\n if (clientState) {\r\n postBody.clientState = clientState;\r\n }\r\n return [4 /*yield*/, spPost(this, body(postBody, headers({ \"Content-Type\": \"application/json\" })))];\r\n case 1:\r\n data = _a.sent();\r\n return [2 /*return*/, { data: data, subscription: this.getById(data.id) }];\r\n }\r\n });\r\n });\r\n };\r\n __decorate([\r\n tag(\"subs.add\")\r\n ], _Subscriptions.prototype, \"add\", null);\r\n _Subscriptions = __decorate([\r\n defaultPath(\"subscriptions\")\r\n ], _Subscriptions);\r\n return _Subscriptions;\r\n}(_SharePointQueryableCollection));\r\nexport { _Subscriptions };\r\nexport var Subscriptions = spInvokableFactory(_Subscriptions);\r\nvar _Subscription = /** @class */ (function (_super) {\r\n __extends(_Subscription, _super);\r\n function _Subscription() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n /**\r\n * Renews this webhook subscription\r\n *\r\n * @param expirationDate The date and time to expire the subscription in the form YYYY-MM-ddTHH:mm:ss+00:00 (maximum of 6 months, optional)\r\n * @param notificationUrl The url to receive the notifications (optional)\r\n * @param clientState A client specific string (optional)\r\n */\r\n _Subscription.prototype.update = function (expirationDate, notificationUrl, clientState) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var postBody, data;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n postBody = {};\r\n if (expirationDate) {\r\n postBody.expirationDateTime = expirationDate;\r\n }\r\n if (notificationUrl) {\r\n postBody.notificationUrl = notificationUrl;\r\n }\r\n if (clientState) {\r\n postBody.clientState = clientState;\r\n }\r\n return [4 /*yield*/, spPatch(this, body(postBody, headers({ \"Content-Type\": \"application/json\" })))];\r\n case 1:\r\n data = _a.sent();\r\n return [2 /*return*/, { data: data, subscription: this }];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Removes this webhook subscription\r\n *\r\n */\r\n _Subscription.prototype.delete = function () {\r\n return spDelete(this);\r\n };\r\n __decorate([\r\n tag(\"sub.update\")\r\n ], _Subscription.prototype, \"update\", null);\r\n __decorate([\r\n tag(\"sub.delete\")\r\n ], _Subscription.prototype, \"delete\", null);\r\n return _Subscription;\r\n}(_SharePointQueryableInstance));\r\nexport { _Subscription };\r\nexport var Subscription = spInvokableFactory(_Subscription);\r\n//# sourceMappingURL=types.js.map","import { addProp } from \"@pnp/odata\";\r\nimport { _List } from \"../lists/types.js\";\r\nimport { Subscriptions } from \"./types.js\";\r\naddProp(_List, \"subscriptions\", Subscriptions);\r\n//# sourceMappingURL=list.js.map","import { __assign, __awaiter, __decorate, __extends, __generator, __read, __spreadArray } from \"tslib\";\r\nimport { isArray } from \"@pnp/common\";\r\nimport { defaultPath } from \"../decorators.js\";\r\nimport { _SharePointQueryableCollection, spInvokableFactory, _SharePointQueryableInstance } from \"../sharepointqueryable.js\";\r\nimport { tag } from \"../telemetry.js\";\r\n/**\r\n * Describes a collection of Form objects\r\n *\r\n */\r\nvar _TermStore = /** @class */ (function (_super) {\r\n __extends(_TermStore, _super);\r\n function _TermStore() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n Object.defineProperty(_TermStore.prototype, \"groups\", {\r\n /**\r\n * Gets the term groups associated with this tenant\r\n */\r\n get: function () {\r\n return tag.configure(TermGroups(this), \"txts.groups\");\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n Object.defineProperty(_TermStore.prototype, \"sets\", {\r\n /**\r\n * Gets the term groups associated with this tenant\r\n */\r\n get: function () {\r\n return tag.configure(TermSets(this), \"txts.sets\");\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n _TermStore = __decorate([\r\n defaultPath(\"_api/v2.1/termstore\")\r\n ], _TermStore);\r\n return _TermStore;\r\n}(_SharePointQueryableInstance));\r\nexport { _TermStore };\r\nexport var TermStore = spInvokableFactory(_TermStore);\r\nvar _TermGroups = /** @class */ (function (_super) {\r\n __extends(_TermGroups, _super);\r\n function _TermGroups() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n /**\r\n * Gets a term group by id\r\n *\r\n * @param id Id of the term group to access\r\n */\r\n _TermGroups.prototype.getById = function (id) {\r\n return tag.configure(TermGroup(this, id), \"txtgs.getById\");\r\n };\r\n _TermGroups = __decorate([\r\n defaultPath(\"groups\")\r\n ], _TermGroups);\r\n return _TermGroups;\r\n}(_SharePointQueryableCollection));\r\nexport { _TermGroups };\r\nexport var TermGroups = spInvokableFactory(_TermGroups);\r\nvar _TermGroup = /** @class */ (function (_super) {\r\n __extends(_TermGroup, _super);\r\n function _TermGroup() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n Object.defineProperty(_TermGroup.prototype, \"sets\", {\r\n /**\r\n * Gets the term sets associated with this tenant\r\n */\r\n get: function () {\r\n return tag.configure(TermSets(this, \"sets\"), \"txtg.sets\");\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n return _TermGroup;\r\n}(_SharePointQueryableInstance));\r\nexport { _TermGroup };\r\nexport var TermGroup = spInvokableFactory(_TermGroup);\r\nvar _TermSets = /** @class */ (function (_super) {\r\n __extends(_TermSets, _super);\r\n function _TermSets() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n /**\r\n * Gets a term group by id\r\n *\r\n * @param id Id of the term group to access\r\n */\r\n _TermSets.prototype.getById = function (id) {\r\n return tag.configure(TermSet(this, id), \"txts.getById\");\r\n };\r\n _TermSets = __decorate([\r\n defaultPath(\"sets\")\r\n ], _TermSets);\r\n return _TermSets;\r\n}(_SharePointQueryableCollection));\r\nexport { _TermSets };\r\nexport var TermSets = spInvokableFactory(_TermSets);\r\nvar _TermSet = /** @class */ (function (_super) {\r\n __extends(_TermSet, _super);\r\n function _TermSet() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n Object.defineProperty(_TermSet.prototype, \"terms\", {\r\n /**\r\n * Gets all the terms in this set\r\n */\r\n get: function () {\r\n return Terms(this);\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n Object.defineProperty(_TermSet.prototype, \"parentGroup\", {\r\n get: function () {\r\n return tag.configure(TermGroup(this, \"parentGroup\"), \"txts.parentGroup\");\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n Object.defineProperty(_TermSet.prototype, \"children\", {\r\n get: function () {\r\n return tag.configure(Children(this), \"txts.children\");\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n Object.defineProperty(_TermSet.prototype, \"relations\", {\r\n get: function () {\r\n return tag.configure(Relations(this), \"txts.relations\");\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n _TermSet.prototype.getTermById = function (id) {\r\n return tag.configure(this.clone(Term, \"terms/\" + id), \"txts.getTermById\");\r\n };\r\n /**\r\n * Gets all the terms in this termset in an ordered tree using the appropriate sort ordering\r\n * ** This is an expensive operation and you should strongly consider caching the results **\r\n */\r\n _TermSet.prototype.getAllChildrenAsOrderedTree = function () {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var setInfo, tree, ensureOrder, visitor;\r\n var _this = this;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0: return [4 /*yield*/, this.select(\"*\", \"customSortOrder\")()];\r\n case 1:\r\n setInfo = _a.sent();\r\n tree = [];\r\n ensureOrder = function (terms, sorts, setSorts) {\r\n // handle no custom sort information present\r\n if (!isArray(sorts) && !isArray(setSorts)) {\r\n return terms;\r\n }\r\n var ordering = null;\r\n if (sorts === null && setSorts.length > 0) {\r\n ordering = __spreadArray([], __read(setSorts));\r\n }\r\n else {\r\n var index = sorts.findIndex(function (v) { return v.setId === setInfo.id; });\r\n if (index >= 0) {\r\n ordering = __spreadArray([], __read(sorts[index].order));\r\n }\r\n }\r\n if (ordering !== null) {\r\n var orderedChildren_1 = [];\r\n ordering.forEach(function (o) {\r\n var found = terms.find(function (ch) { return o === ch.id; });\r\n if (found) {\r\n orderedChildren_1.push(found);\r\n }\r\n });\r\n // we have a case where if a set is ordered and a term is added to that set\r\n // AND the ordering information hasn't been updated the new term will not have\r\n // any associated ordering information. See #1547 which reported this. So here we\r\n // append any terms remaining in \"terms\" not in \"orderedChildren\" to the end of \"orderedChildren\"\r\n orderedChildren_1.push.apply(orderedChildren_1, __spreadArray([], __read(terms.filter(function (info) { return ordering.indexOf(info.id) < 0; }))));\r\n return orderedChildren_1;\r\n }\r\n return terms;\r\n };\r\n visitor = function (source, parent) { return __awaiter(_this, void 0, void 0, function () {\r\n var children, i, child, orderedTerm;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0: return [4 /*yield*/, source.children.select(\"*\", \"customSortOrder\")()];\r\n case 1:\r\n children = _a.sent();\r\n i = 0;\r\n _a.label = 2;\r\n case 2:\r\n if (!(i < children.length)) return [3 /*break*/, 6];\r\n child = children[i];\r\n orderedTerm = __assign({ children: [], defaultLabel: child.labels.find(function (l) { return l.isDefault; }).name }, child);\r\n if (!(child.childrenCount > 0)) return [3 /*break*/, 4];\r\n return [4 /*yield*/, visitor(this.getTermById(children[i].id), orderedTerm.children)];\r\n case 3:\r\n _a.sent();\r\n orderedTerm.children = ensureOrder(orderedTerm.children, child.customSortOrder);\r\n _a.label = 4;\r\n case 4:\r\n parent.push(orderedTerm);\r\n _a.label = 5;\r\n case 5:\r\n i++;\r\n return [3 /*break*/, 2];\r\n case 6: return [2 /*return*/];\r\n }\r\n });\r\n }); };\r\n return [4 /*yield*/, visitor(this, tree)];\r\n case 2:\r\n _a.sent();\r\n return [2 /*return*/, ensureOrder(tree, null, setInfo.customSortOrder)];\r\n }\r\n });\r\n });\r\n };\r\n return _TermSet;\r\n}(_SharePointQueryableInstance));\r\nexport { _TermSet };\r\nexport var TermSet = spInvokableFactory(_TermSet);\r\nvar _Children = /** @class */ (function (_super) {\r\n __extends(_Children, _super);\r\n function _Children() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n _Children = __decorate([\r\n defaultPath(\"children\")\r\n ], _Children);\r\n return _Children;\r\n}(_SharePointQueryableCollection));\r\nexport { _Children };\r\nexport var Children = spInvokableFactory(_Children);\r\nvar _Terms = /** @class */ (function (_super) {\r\n __extends(_Terms, _super);\r\n function _Terms() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n /**\r\n * Gets a term group by id\r\n *\r\n * @param id Id of the term group to access\r\n */\r\n _Terms.prototype.getById = function (id) {\r\n return Term(this, id);\r\n };\r\n _Terms = __decorate([\r\n defaultPath(\"terms\")\r\n ], _Terms);\r\n return _Terms;\r\n}(_SharePointQueryableCollection));\r\nexport { _Terms };\r\nexport var Terms = spInvokableFactory(_Terms);\r\nvar _Term = /** @class */ (function (_super) {\r\n __extends(_Term, _super);\r\n function _Term() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n Object.defineProperty(_Term.prototype, \"children\", {\r\n get: function () {\r\n return tag.configure(Children(this), \"txt.children\");\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n Object.defineProperty(_Term.prototype, \"relations\", {\r\n get: function () {\r\n return tag.configure(Relations(this), \"txt.relations\");\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n Object.defineProperty(_Term.prototype, \"set\", {\r\n get: function () {\r\n return tag.configure(TermSet(this, \"set\"), \"txt.set\");\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n return _Term;\r\n}(_SharePointQueryableInstance));\r\nexport { _Term };\r\nexport var Term = spInvokableFactory(_Term);\r\nvar _Relations = /** @class */ (function (_super) {\r\n __extends(_Relations, _super);\r\n function _Relations() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n /**\r\n * Gets a term group by id\r\n *\r\n * @param id Id of the term group to access\r\n */\r\n _Relations.prototype.getById = function (id) {\r\n return tag.configure(Relation(this, id), \"txrs.getById\");\r\n };\r\n _Relations = __decorate([\r\n defaultPath(\"relations\")\r\n ], _Relations);\r\n return _Relations;\r\n}(_SharePointQueryableCollection));\r\nexport { _Relations };\r\nexport var Relations = spInvokableFactory(_Relations);\r\nvar _Relation = /** @class */ (function (_super) {\r\n __extends(_Relation, _super);\r\n function _Relation() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n Object.defineProperty(_Relation.prototype, \"fromTerm\", {\r\n get: function () {\r\n return tag.configure(Term(this, \"fromTerm\"), \"txr.fromTerm\");\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n Object.defineProperty(_Relation.prototype, \"toTerm\", {\r\n get: function () {\r\n return tag.configure(Term(this, \"toTerm\"), \"txr.toTerm\");\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n Object.defineProperty(_Relation.prototype, \"set\", {\r\n get: function () {\r\n return tag.configure(TermSet(this, \"set\"), \"txr.set\");\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n return _Relation;\r\n}(_SharePointQueryableInstance));\r\nexport { _Relation };\r\nexport var Relation = spInvokableFactory(_Relation);\r\n//# sourceMappingURL=types.js.map","import { SPRest } from \"../rest.js\";\r\nimport { TermStore } from \"./types.js\";\r\nexport { TermStore, TermGroup, TermGroups, TermSets, TermSet, Relation, Relations, Term, Children, Terms, } from \"./types.js\";\r\nReflect.defineProperty(SPRest.prototype, \"termStore\", {\r\n configurable: true,\r\n enumerable: true,\r\n get: function () {\r\n return this.childConfigHook(function (_a) {\r\n var options = _a.options, baseUrl = _a.baseUrl, runtime = _a.runtime;\r\n return TermStore(baseUrl).configure(options).setRuntime(runtime);\r\n });\r\n },\r\n});\r\n//# sourceMappingURL=index.js.map","import { addProp } from \"@pnp/odata\";\r\nimport { _List } from \"../lists/types.js\";\r\nimport { UserCustomActions } from \"./types.js\";\r\naddProp(_List, \"userCustomActions\", UserCustomActions);\r\n//# sourceMappingURL=list.js.map","import { addProp } from \"@pnp/odata\";\r\nimport { _Web } from \"../webs/types.js\";\r\nimport { UserCustomActions } from \"./types.js\";\r\naddProp(_Web, \"userCustomActions\", UserCustomActions);\r\n//# sourceMappingURL=web.js.map","import { addProp } from \"@pnp/odata\";\r\nimport { _Site } from \"../sites/types.js\";\r\nimport { UserCustomActions } from \"./types.js\";\r\naddProp(_Site, \"userCustomActions\", UserCustomActions);\r\n//# sourceMappingURL=site.js.map","import { __awaiter, __decorate, __extends, __generator } from \"tslib\";\r\nimport { body } from \"@pnp/odata\";\r\nimport { _SharePointQueryableInstance, _SharePointQueryableCollection, spInvokableFactory, deleteable, } from \"../sharepointqueryable.js\";\r\nimport { metadata } from \"../utils/metadata.js\";\r\nimport { defaultPath } from \"../decorators.js\";\r\nimport { spPost } from \"../operations.js\";\r\nimport { tag } from \"../telemetry.js\";\r\nvar _Views = /** @class */ (function (_super) {\r\n __extends(_Views, _super);\r\n function _Views() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n /**\r\n * Adds a new view to the collection\r\n *\r\n * @param title The new views's title\r\n * @param personalView True if this is a personal view, otherwise false, default = false\r\n * @param additionalSettings Will be passed as part of the view creation body\r\n */\r\n _Views.prototype.add = function (title, personalView, additionalSettings) {\r\n if (personalView === void 0) { personalView = false; }\r\n if (additionalSettings === void 0) { additionalSettings = {}; }\r\n return __awaiter(this, void 0, void 0, function () {\r\n var postBody, data;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n postBody = body(Object.assign(metadata(\"SP.View\"), {\r\n \"PersonalView\": personalView,\r\n \"Title\": title,\r\n }, additionalSettings));\r\n return [4 /*yield*/, spPost(this.clone(Views, null), postBody)];\r\n case 1:\r\n data = _a.sent();\r\n return [2 /*return*/, {\r\n data: data,\r\n view: this.getById(data.Id),\r\n }];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Gets a view by guid id\r\n *\r\n * @param id The GUID id of the view\r\n */\r\n _Views.prototype.getById = function (id) {\r\n return View(this).concat(\"('\" + id + \"')\");\r\n };\r\n /**\r\n * Gets a view by title (case-sensitive)\r\n *\r\n * @param title The case-sensitive title of the view\r\n */\r\n _Views.prototype.getByTitle = function (title) {\r\n return View(this, \"getByTitle('\" + title + \"')\");\r\n };\r\n __decorate([\r\n tag(\"vs.add\")\r\n ], _Views.prototype, \"add\", null);\r\n _Views = __decorate([\r\n defaultPath(\"views\")\r\n ], _Views);\r\n return _Views;\r\n}(_SharePointQueryableCollection));\r\nexport { _Views };\r\nexport var Views = spInvokableFactory(_Views);\r\nvar _View = /** @class */ (function (_super) {\r\n __extends(_View, _super);\r\n function _View() {\r\n var _this = _super !== null && _super.apply(this, arguments) || this;\r\n _this.delete = deleteable(\"vw\");\r\n /**\r\n * Updates this view intance with the supplied properties\r\n *\r\n * @param properties A plain object hash of values to update for the view\r\n */\r\n _this.update = _this._update(\"SP.View\", function (data) { return ({ data: data, view: _this }); });\r\n return _this;\r\n }\r\n Object.defineProperty(_View.prototype, \"fields\", {\r\n get: function () {\r\n return ViewFields(this);\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n /**\r\n * Returns the list view as HTML.\r\n *\r\n */\r\n _View.prototype.renderAsHtml = function () {\r\n return this.clone(View, \"renderashtml\")();\r\n };\r\n /**\r\n * Sets the view schema\r\n *\r\n * @param viewXml The view XML to set\r\n */\r\n _View.prototype.setViewXml = function (viewXml) {\r\n return spPost(this.clone(View, \"SetViewXml\"), body({ viewXml: viewXml }));\r\n };\r\n __decorate([\r\n tag(\"v.renderAsHtml\")\r\n ], _View.prototype, \"renderAsHtml\", null);\r\n __decorate([\r\n tag(\"v.setViewXml\")\r\n ], _View.prototype, \"setViewXml\", null);\r\n return _View;\r\n}(_SharePointQueryableInstance));\r\nexport { _View };\r\nexport var View = spInvokableFactory(_View);\r\nvar _ViewFields = /** @class */ (function (_super) {\r\n __extends(_ViewFields, _super);\r\n function _ViewFields() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n /**\r\n * Gets a value that specifies the XML schema that represents the collection.\r\n */\r\n _ViewFields.prototype.getSchemaXml = function () {\r\n return this.clone(ViewFields, \"schemaxml\")();\r\n };\r\n /**\r\n * Adds the field with the specified field internal name or display name to the collection.\r\n *\r\n * @param fieldTitleOrInternalName The case-sensitive internal name or display name of the field to add.\r\n */\r\n _ViewFields.prototype.add = function (fieldTitleOrInternalName) {\r\n return spPost(this.clone(ViewFields, \"addviewfield('\" + fieldTitleOrInternalName + \"')\"));\r\n };\r\n /**\r\n * Moves the field with the specified field internal name to the specified position in the collection.\r\n *\r\n * @param field The case-sensitive internal name of the field to move.\r\n * @param index The zero-based index of the new position for the field.\r\n */\r\n _ViewFields.prototype.move = function (field, index) {\r\n return spPost(this.clone(ViewFields, \"moveviewfieldto\"), body({ field: field, index: index }));\r\n };\r\n /**\r\n * Removes all the fields from the collection.\r\n */\r\n _ViewFields.prototype.removeAll = function () {\r\n return spPost(this.clone(ViewFields, \"removeallviewfields\"));\r\n };\r\n /**\r\n * Removes the field with the specified field internal name from the collection.\r\n *\r\n * @param fieldInternalName The case-sensitive internal name of the field to remove from the view.\r\n */\r\n _ViewFields.prototype.remove = function (fieldInternalName) {\r\n return spPost(this.clone(ViewFields, \"removeviewfield('\" + fieldInternalName + \"')\"));\r\n };\r\n __decorate([\r\n tag(\"vfs.getSchemaXml\")\r\n ], _ViewFields.prototype, \"getSchemaXml\", null);\r\n __decorate([\r\n tag(\"vfs.add\")\r\n ], _ViewFields.prototype, \"add\", null);\r\n __decorate([\r\n tag(\"vfs.move\")\r\n ], _ViewFields.prototype, \"move\", null);\r\n __decorate([\r\n tag(\"vfs.removeAll\")\r\n ], _ViewFields.prototype, \"removeAll\", null);\r\n __decorate([\r\n tag(\"vfs.remove\")\r\n ], _ViewFields.prototype, \"remove\", null);\r\n _ViewFields = __decorate([\r\n defaultPath(\"viewfields\")\r\n ], _ViewFields);\r\n return _ViewFields;\r\n}(_SharePointQueryableCollection));\r\nexport { _ViewFields };\r\nexport var ViewFields = spInvokableFactory(_ViewFields);\r\nexport var ViewScope;\r\n(function (ViewScope) {\r\n ViewScope[ViewScope[\"DefaultValue\"] = 0] = \"DefaultValue\";\r\n ViewScope[ViewScope[\"Recursive\"] = 1] = \"Recursive\";\r\n ViewScope[ViewScope[\"RecursiveAll\"] = 2] = \"RecursiveAll\";\r\n ViewScope[ViewScope[\"FilesOnly\"] = 3] = \"FilesOnly\";\r\n})(ViewScope || (ViewScope = {}));\r\n//# sourceMappingURL=types.js.map","import { addProp } from \"@pnp/odata\";\r\nimport { _List } from \"../lists/types.js\";\r\nimport { Views, View } from \"./types.js\";\r\naddProp(_List, \"views\", Views);\r\naddProp(_List, \"defaultView\", View, \"DefaultView\");\r\n_List.prototype.getView = function (viewId) {\r\n return View(this, \"getView('\" + viewId + \"')\");\r\n};\r\n//# sourceMappingURL=list.js.map","import { __extends } from \"tslib\";\r\nimport { _SharePointQueryableInstance, _SharePointQueryableCollection, _SharePointQueryable, spInvokableFactory, SharePointQueryable, SharePointQueryableInstance, } from \"../sharepointqueryable.js\";\r\nimport { body } from \"@pnp/odata\";\r\nimport { spPost } from \"../operations.js\";\r\nimport { tag } from \"../telemetry.js\";\r\nvar _LimitedWebPartManager = /** @class */ (function (_super) {\r\n __extends(_LimitedWebPartManager, _super);\r\n function _LimitedWebPartManager() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n Object.defineProperty(_LimitedWebPartManager.prototype, \"scope\", {\r\n get: function () {\r\n return tag.configure(SharePointQueryable(this, \"Scope\"), \"f.scope\");\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n Object.defineProperty(_LimitedWebPartManager.prototype, \"webparts\", {\r\n get: function () {\r\n return WebPartDefinitions(this, \"webparts\");\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n _LimitedWebPartManager.prototype.export = function (id) {\r\n return spPost(this.clone(LimitedWebPartManagerCloneFactory, \"ExportWebPart\"), body({ webPartId: id }));\r\n };\r\n _LimitedWebPartManager.prototype.import = function (xml) {\r\n return spPost(this.clone(LimitedWebPartManagerCloneFactory, \"ImportWebPart\"), body({ webPartXml: xml }));\r\n };\r\n return _LimitedWebPartManager;\r\n}(_SharePointQueryable));\r\nexport { _LimitedWebPartManager };\r\nexport var LimitedWebPartManager = function (baseUrl, path) { return new _LimitedWebPartManager(baseUrl, path); };\r\nvar LimitedWebPartManagerCloneFactory = function (baseUrl, path) { return LimitedWebPartManager(baseUrl, path); };\r\nvar _WebPartDefinitions = /** @class */ (function (_super) {\r\n __extends(_WebPartDefinitions, _super);\r\n function _WebPartDefinitions() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n /**\r\n * Gets a web part definition from the collection by id\r\n *\r\n * @param id The storage ID of the SPWebPartDefinition to retrieve\r\n */\r\n _WebPartDefinitions.prototype.getById = function (id) {\r\n return WebPartDefinition(this, \"getbyid('\" + id + \"')\");\r\n };\r\n /**\r\n * Gets a web part definition from the collection by storage id\r\n *\r\n * @param id The WebPart.ID of the SPWebPartDefinition to retrieve\r\n */\r\n _WebPartDefinitions.prototype.getByControlId = function (id) {\r\n return WebPartDefinition(this, \"getByControlId('\" + id + \"')\");\r\n };\r\n return _WebPartDefinitions;\r\n}(_SharePointQueryableCollection));\r\nexport { _WebPartDefinitions };\r\nexport var WebPartDefinitions = spInvokableFactory(_WebPartDefinitions);\r\nvar _WebPartDefinition = /** @class */ (function (_super) {\r\n __extends(_WebPartDefinition, _super);\r\n function _WebPartDefinition() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n Object.defineProperty(_WebPartDefinition.prototype, \"webpart\", {\r\n /**\r\n * Gets the webpart information associated with this definition\r\n */\r\n get: function () {\r\n return SharePointQueryableInstance(this, \"webpart\");\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n /**\r\n * Saves changes to the Web Part made using other properties and methods on the SPWebPartDefinition object\r\n */\r\n _WebPartDefinition.prototype.saveChanges = function () {\r\n return spPost(this.clone(WebPartDefinition, \"SaveWebPartChanges\"));\r\n };\r\n /**\r\n * Moves the Web Part to a different location on a Web Part Page\r\n *\r\n * @param zoneId The ID of the Web Part Zone to which to move the Web Part\r\n * @param zoneIndex A Web Part zone index that specifies the position at which the Web Part is to be moved within the destination Web Part zone\r\n */\r\n _WebPartDefinition.prototype.moveTo = function (zoneId, zoneIndex) {\r\n return spPost(this.clone(WebPartDefinition, \"MoveWebPartTo(zoneID='\" + zoneId + \"', zoneIndex=\" + zoneIndex + \")\"));\r\n };\r\n /**\r\n * Closes the Web Part. If the Web Part is already closed, this method does nothing\r\n */\r\n _WebPartDefinition.prototype.close = function () {\r\n return spPost(this.clone(WebPartDefinition, \"CloseWebPart\"));\r\n };\r\n /**\r\n * Opens the Web Part. If the Web Part is already closed, this method does nothing\r\n */\r\n _WebPartDefinition.prototype.open = function () {\r\n return spPost(this.clone(WebPartDefinition, \"OpenWebPart\"));\r\n };\r\n /**\r\n * Removes a webpart from a page, all settings will be lost\r\n */\r\n _WebPartDefinition.prototype.delete = function () {\r\n return spPost(this.clone(WebPartDefinition, \"DeleteWebPart\"));\r\n };\r\n return _WebPartDefinition;\r\n}(_SharePointQueryableInstance));\r\nexport { _WebPartDefinition };\r\nexport var WebPartDefinition = spInvokableFactory(_WebPartDefinition);\r\nexport var WebPartsPersonalizationScope;\r\n(function (WebPartsPersonalizationScope) {\r\n WebPartsPersonalizationScope[WebPartsPersonalizationScope[\"User\"] = 0] = \"User\";\r\n WebPartsPersonalizationScope[WebPartsPersonalizationScope[\"Shared\"] = 1] = \"Shared\";\r\n})(WebPartsPersonalizationScope || (WebPartsPersonalizationScope = {}));\r\n//# sourceMappingURL=types.js.map","import { _File } from \"../files/types.js\";\r\nimport { WebPartsPersonalizationScope, LimitedWebPartManager } from \"./types.js\";\r\n_File.prototype.getLimitedWebPartManager = function (scope) {\r\n if (scope === void 0) { scope = WebPartsPersonalizationScope.Shared; }\r\n return LimitedWebPartManager(this, \"getLimitedWebPartManager(scope=\" + scope + \")\");\r\n};\r\n//# sourceMappingURL=file.js.map","import { SPRest } from \"../rest.js\";\r\nimport \"../appcatalog/index.js\";\r\nimport \"../attachments/index.js\";\r\nimport \"../clientside-pages/index.js\";\r\nimport \"../column-defaults/index.js\";\r\nimport \"../comments/index.js\";\r\nimport \"../content-types/index.js\";\r\nimport \"../features/index.js\";\r\nimport \"../fields/index.js\";\r\nimport \"../files/index.js\";\r\nimport \"../folders/index.js\";\r\nimport \"../forms/index.js\";\r\nimport \"../hubsites/index.js\";\r\nimport \"../items/index.js\";\r\nimport \"../lists/index.js\";\r\nimport \"../navigation/index.js\";\r\nimport \"../profiles/index.js\";\r\nimport \"../regional-settings/index.js\";\r\nimport \"../related-items/index.js\";\r\nimport \"../search/index.js\";\r\nimport \"../security/index.js\";\r\nimport \"../sharing/index.js\";\r\nimport \"../site-designs/index.js\";\r\nimport \"../site-groups/index.js\";\r\nimport \"../site-scripts/index.js\";\r\nimport \"../site-users/index.js\";\r\nimport \"../sites/index.js\";\r\nimport \"../social/index.js\";\r\nimport \"../sputilities/index.js\";\r\nimport \"../subscriptions/index.js\";\r\nimport \"../taxonomy/index.js\";\r\nimport \"../user-custom-actions/index.js\";\r\nimport \"../views/index.js\";\r\nimport \"../webparts/index.js\";\r\nimport \"../webs/index.js\";\r\nexport * from \"../appcatalog/index.js\";\r\nexport * from \"../attachments/index.js\";\r\nexport * from \"../clientside-pages/index.js\";\r\nexport * from \"../column-defaults/index.js\";\r\nexport * from \"../comments/index.js\";\r\nexport * from \"../content-types/index.js\";\r\nexport * from \"../features/index.js\";\r\nexport * from \"../fields/index.js\";\r\nexport * from \"../files/index.js\";\r\nexport * from \"../folders/index.js\";\r\nexport * from \"../forms/index.js\";\r\nexport * from \"../hubsites/index.js\";\r\nexport * from \"../items/index.js\";\r\nexport * from \"../lists/index.js\";\r\nexport * from \"../navigation/index.js\";\r\nexport { spODataEntity, spODataEntityArray } from \"../odata.js\";\r\nexport * from \"../profiles/index.js\";\r\nexport * from \"../regional-settings/index.js\";\r\nexport * from \"../related-items/index.js\";\r\nexport * from \"../search/index.js\";\r\nexport * from \"../security/index.js\";\r\nexport * from \"../sharing/index.js\";\r\nexport * from \"../site-designs/index.js\";\r\nexport * from \"../site-groups/index.js\";\r\nexport * from \"../site-scripts/index.js\";\r\nexport * from \"../site-users/index.js\";\r\nexport * from \"../sites/index.js\";\r\nexport * from \"../social/index.js\";\r\nexport * from \"../sputilities/index.js\";\r\nexport * from \"../subscriptions/index.js\";\r\nexport * from \"../taxonomy/index.js\";\r\nexport * from \"../user-custom-actions/index.js\";\r\nexport * from \"../views/index.js\";\r\nexport * from \"../webparts/index.js\";\r\nexport * from \"../webs/index.js\";\r\nexport * from \"../index.js\";\r\nexport var sp = new SPRest();\r\n//# sourceMappingURL=all.js.map","import { __extends } from \"tslib\";\r\nimport { graphDelete, graphPatch, graphPost } from \"./operations.js\";\r\nimport { body, headers } from \"@pnp/odata\";\r\n/**\r\n * Decorator used to specify the default path for Queryable objects\r\n *\r\n * @param path\r\n */\r\nexport function defaultPath(path) {\r\n // eslint-disable-next-line @typescript-eslint/ban-types\r\n return function (target) {\r\n return /** @class */ (function (_super) {\r\n __extends(class_1, _super);\r\n function class_1() {\r\n var args = [];\r\n for (var _i = 0; _i < arguments.length; _i++) {\r\n args[_i] = arguments[_i];\r\n }\r\n return _super.call(this, args[0], args.length > 1 && args[1] !== undefined ? args[1] : path) || this;\r\n }\r\n return class_1;\r\n }(target));\r\n };\r\n}\r\n/**\r\n * Adds the delete method to the tagged class\r\n */\r\nexport function deleteable() {\r\n // eslint-disable-next-line @typescript-eslint/ban-types\r\n return function (target) {\r\n return /** @class */ (function (_super) {\r\n __extends(class_2, _super);\r\n function class_2() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n class_2.prototype.delete = function () {\r\n return graphDelete(this);\r\n };\r\n return class_2;\r\n }(target));\r\n };\r\n}\r\n/**\r\n * Adds the delete method to the tagged class\r\n */\r\nexport function deleteableWithETag() {\r\n // eslint-disable-next-line @typescript-eslint/ban-types\r\n return function (target) {\r\n return /** @class */ (function (_super) {\r\n __extends(class_3, _super);\r\n function class_3() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n class_3.prototype.delete = function (eTag) {\r\n if (eTag === void 0) { eTag = \"*\"; }\r\n return graphDelete(this, headers({\r\n \"If-Match\": eTag,\r\n }));\r\n };\r\n return class_3;\r\n }(target));\r\n };\r\n}\r\n/**\r\n * Adds the update method to the tagged class\r\n */\r\nexport function updateable() {\r\n // eslint-disable-next-line @typescript-eslint/ban-types\r\n return function (target) {\r\n return /** @class */ (function (_super) {\r\n __extends(class_4, _super);\r\n function class_4() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n class_4.prototype.update = function (props) {\r\n return graphPatch(this, body(props));\r\n };\r\n return class_4;\r\n }(target));\r\n };\r\n}\r\n/**\r\n * Adds the update method to the tagged class\r\n */\r\nexport function updateableWithETag() {\r\n // eslint-disable-next-line @typescript-eslint/ban-types\r\n return function (target) {\r\n return /** @class */ (function (_super) {\r\n __extends(class_5, _super);\r\n function class_5() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n class_5.prototype.update = function (props, eTag) {\r\n if (eTag === void 0) { eTag = \"*\"; }\r\n return graphPatch(this, body(props, headers({\r\n \"If-Match\": eTag,\r\n })));\r\n };\r\n return class_5;\r\n }(target));\r\n };\r\n}\r\n/**\r\n * Adds the add method to the tagged class\r\n */\r\nexport function addable() {\r\n // eslint-disable-next-line @typescript-eslint/ban-types\r\n return function (target) {\r\n return /** @class */ (function (_super) {\r\n __extends(class_6, _super);\r\n function class_6() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n class_6.prototype.add = function (props) {\r\n return graphPost(this, body(props));\r\n };\r\n return class_6;\r\n }(target));\r\n };\r\n}\r\n/**\r\n * Adds the getById method to a collection\r\n */\r\nexport function getById(factory) {\r\n // eslint-disable-next-line @typescript-eslint/ban-types\r\n return function (target) {\r\n return /** @class */ (function (_super) {\r\n __extends(class_7, _super);\r\n function class_7() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n class_7.prototype.getById = function (id) {\r\n return factory(this, id);\r\n };\r\n return class_7;\r\n }(target));\r\n };\r\n}\r\n//# sourceMappingURL=decorators.js.map","import { __decorate, __extends } from \"tslib\";\r\nimport { body } from \"@pnp/odata\";\r\nimport { _GraphQueryableCollection, _GraphQueryableInstance, graphInvokableFactory, } from \"../graphqueryable.js\";\r\nimport { defaultPath, updateable, deleteable, addable, getById } from \"../decorators.js\";\r\nimport { graphPost, graphDelete } from \"../operations.js\";\r\n/**\r\n * Conversation\r\n */\r\nvar _Conversation = /** @class */ (function (_super) {\r\n __extends(_Conversation, _super);\r\n function _Conversation() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n Object.defineProperty(_Conversation.prototype, \"threads\", {\r\n /**\r\n * Get all the threads in a group conversation.\r\n */\r\n get: function () {\r\n return Threads(this);\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n _Conversation = __decorate([\r\n updateable(),\r\n deleteable()\r\n ], _Conversation);\r\n return _Conversation;\r\n}(_GraphQueryableInstance));\r\nexport { _Conversation };\r\nexport var Conversation = graphInvokableFactory(_Conversation);\r\n/**\r\n * Conversations\r\n */\r\nvar _Conversations = /** @class */ (function (_super) {\r\n __extends(_Conversations, _super);\r\n function _Conversations() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n _Conversations = __decorate([\r\n defaultPath(\"conversations\"),\r\n addable(),\r\n getById(Conversation)\r\n ], _Conversations);\r\n return _Conversations;\r\n}(_GraphQueryableCollection));\r\nexport { _Conversations };\r\nexport var Conversations = graphInvokableFactory(_Conversations);\r\n/**\r\n * Thread\r\n */\r\nvar _Thread = /** @class */ (function (_super) {\r\n __extends(_Thread, _super);\r\n function _Thread() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n Object.defineProperty(_Thread.prototype, \"posts\", {\r\n /**\r\n * Get all the threads in a group conversation.\r\n */\r\n get: function () {\r\n return Posts(this);\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n /**\r\n * Reply to a thread in a group conversation and add a new post to it\r\n *\r\n * @param post Contents of the post\r\n */\r\n _Thread.prototype.reply = function (post) {\r\n return graphPost(this.clone(Thread, \"reply\"), body(post));\r\n };\r\n _Thread = __decorate([\r\n deleteable()\r\n ], _Thread);\r\n return _Thread;\r\n}(_GraphQueryableInstance));\r\nexport { _Thread };\r\nexport var Thread = graphInvokableFactory(_Thread);\r\n/**\r\n * Threads\r\n */\r\nvar _Threads = /** @class */ (function (_super) {\r\n __extends(_Threads, _super);\r\n function _Threads() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n _Threads = __decorate([\r\n defaultPath(\"threads\"),\r\n addable(),\r\n getById(Thread)\r\n ], _Threads);\r\n return _Threads;\r\n}(_GraphQueryableCollection));\r\nexport { _Threads };\r\nexport var Threads = graphInvokableFactory(_Threads);\r\n/**\r\n * Post\r\n */\r\nvar _Post = /** @class */ (function (_super) {\r\n __extends(_Post, _super);\r\n function _Post() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n /**\r\n * Forward a post to a recipient\r\n */\r\n _Post.prototype.forward = function (info) {\r\n return graphPost(this.clone(Post, \"forward\"), body(info));\r\n };\r\n /**\r\n * Reply to a thread in a group conversation and add a new post to it\r\n *\r\n * @param post Contents of the post\r\n */\r\n _Post.prototype.reply = function (post) {\r\n return graphPost(this.clone(Post, \"reply\"), body(post));\r\n };\r\n _Post = __decorate([\r\n deleteable()\r\n ], _Post);\r\n return _Post;\r\n}(_GraphQueryableInstance));\r\nexport { _Post };\r\nexport var Post = graphInvokableFactory(_Post);\r\n/**\r\n * Posts\r\n */\r\nvar _Posts = /** @class */ (function (_super) {\r\n __extends(_Posts, _super);\r\n function _Posts() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n _Posts = __decorate([\r\n defaultPath(\"posts\"),\r\n addable(),\r\n getById(Post)\r\n ], _Posts);\r\n return _Posts;\r\n}(_GraphQueryableCollection));\r\nexport { _Posts };\r\nexport var Posts = graphInvokableFactory(_Posts);\r\n/**\r\n * Senders\r\n */\r\nvar _Senders = /** @class */ (function (_super) {\r\n __extends(_Senders, _super);\r\n function _Senders() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n /**\r\n * Add a new user or group to this senders collection\r\n * @param id The full @odata.id value to add (ex: https://graph.microsoft.com/v1.0/users/user@contoso.com)\r\n */\r\n _Senders.prototype.add = function (id) {\r\n return graphPost(this.clone(Senders, \"$ref\"), body({ \"@odata.id\": id }));\r\n };\r\n /**\r\n * Removes the entity from the collection\r\n *\r\n * @param id The full @odata.id value to remove (ex: https://graph.microsoft.com/v1.0/users/user@contoso.com)\r\n */\r\n _Senders.prototype.remove = function (id) {\r\n var remover = this.clone(Senders, \"$ref\");\r\n remover.query.set(\"$id\", id);\r\n return graphDelete(remover);\r\n };\r\n return _Senders;\r\n}(_GraphQueryableCollection));\r\nexport { _Senders };\r\nexport var Senders = graphInvokableFactory(_Senders);\r\n//# sourceMappingURL=types.js.map","import { __decorate, __extends } from \"tslib\";\r\nimport { body } from \"@pnp/odata\";\r\nimport { _GraphQueryableCollection, _GraphQueryableInstance, graphInvokableFactory } from \"../graphqueryable.js\";\r\nimport { graphPost } from \"../operations.js\";\r\nimport { defaultPath, getById } from \"../decorators.js\";\r\nimport { type } from \"../utils/type.js\";\r\n/**\r\n * Attachment\r\n */\r\nvar _Attachment = /** @class */ (function (_super) {\r\n __extends(_Attachment, _super);\r\n function _Attachment() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n return _Attachment;\r\n}(_GraphQueryableInstance));\r\nexport { _Attachment };\r\nexport var Attachment = graphInvokableFactory(_Attachment);\r\n/**\r\n * Attachments\r\n */\r\nvar _Attachments = /** @class */ (function (_super) {\r\n __extends(_Attachments, _super);\r\n function _Attachments() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n /**\r\n * Add attachment to this collection\r\n *\r\n * @param name Name given to the attachment file\r\n * @param bytes File content\r\n */\r\n _Attachments.prototype.addFile = function (name, bytes) {\r\n return graphPost(this, body(type(\"#microsoft.graph.fileAttachment\", {\r\n contentBytes: bytes,\r\n name: name,\r\n })));\r\n };\r\n _Attachments = __decorate([\r\n defaultPath(\"attachments\"),\r\n getById(Attachment)\r\n ], _Attachments);\r\n return _Attachments;\r\n}(_GraphQueryableCollection));\r\nexport { _Attachments };\r\nexport var Attachments = graphInvokableFactory(_Attachments);\r\n//# sourceMappingURL=types.js.map","export function type(n, a) {\r\n return Object.assign({ \"@odata.type\": n }, a);\r\n}\r\n//# sourceMappingURL=type.js.map","import { _Post } from \"../conversations/types.js\";\r\nimport { addProp } from \"@pnp/odata\";\r\nimport { Attachments } from \"./types.js\";\r\naddProp(_Post, \"attachments\", Attachments);\r\n//# sourceMappingURL=conversations.js.map","import { __decorate, __extends } from \"tslib\";\r\nimport { _GraphQueryableCollection, _GraphQueryableInstance, graphInvokableFactory } from \"../graphqueryable.js\";\r\nimport { defaultPath, getById, deleteable } from \"../decorators.js\";\r\nimport { body } from \"@pnp/odata\";\r\nimport { graphPost } from \"../operations.js\";\r\n/**\r\n * Represents a Directory Object entity\r\n */\r\nvar _DirectoryObject = /** @class */ (function (_super) {\r\n __extends(_DirectoryObject, _super);\r\n function _DirectoryObject() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n /**\r\n * Returns all the groups and directory roles that the specified Directory Object is a member of. The check is transitive\r\n *\r\n * @param securityEnabledOnly\r\n */\r\n _DirectoryObject.prototype.getMemberObjects = function (securityEnabledOnly) {\r\n if (securityEnabledOnly === void 0) { securityEnabledOnly = false; }\r\n return graphPost(this.clone(DirectoryObject, \"getMemberObjects\"), body({ securityEnabledOnly: securityEnabledOnly }));\r\n };\r\n /**\r\n * Returns all the groups that the specified Directory Object is a member of. The check is transitive\r\n *\r\n * @param securityEnabledOnly\r\n */\r\n _DirectoryObject.prototype.getMemberGroups = function (securityEnabledOnly) {\r\n if (securityEnabledOnly === void 0) { securityEnabledOnly = false; }\r\n return graphPost(this.clone(DirectoryObject, \"getMemberGroups\"), body({ securityEnabledOnly: securityEnabledOnly }));\r\n };\r\n /**\r\n * Check for membership in a specified list of groups, and returns from that list those groups of which the specified user, group, or directory object is a member.\r\n * This function is transitive.\r\n * @param groupIds A collection that contains the object IDs of the groups in which to check membership. Up to 20 groups may be specified.\r\n */\r\n _DirectoryObject.prototype.checkMemberGroups = function (groupIds) {\r\n return graphPost(this.clone(DirectoryObject, \"checkMemberGroups\"), body({ groupIds: groupIds }));\r\n };\r\n _DirectoryObject = __decorate([\r\n deleteable()\r\n ], _DirectoryObject);\r\n return _DirectoryObject;\r\n}(_GraphQueryableInstance));\r\nexport { _DirectoryObject };\r\nexport var DirectoryObject = graphInvokableFactory(_DirectoryObject);\r\n/**\r\n * Describes a collection of Directory Objects\r\n *\r\n */\r\nvar _DirectoryObjects = /** @class */ (function (_super) {\r\n __extends(_DirectoryObjects, _super);\r\n function _DirectoryObjects() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n /**\r\n * Returns the directory objects specified in a list of ids. NOTE: The directory objects returned are the full objects containing all their properties.\r\n * The $select query option is not available for this operation.\r\n *\r\n * @param ids A collection of ids for which to return objects. You can specify up to 1000 ids.\r\n * @param type A collection of resource types that specifies the set of resource collections to search. Default is directoryObject.\r\n */\r\n _DirectoryObjects.prototype.getByIds = function (ids, type) {\r\n if (type === void 0) { type = DirectoryObjectTypes.directoryObject; }\r\n return graphPost(this.clone(DirectoryObjects, \"getByIds\"), body({ ids: ids, type: type }));\r\n };\r\n _DirectoryObjects = __decorate([\r\n defaultPath(\"directoryObjects\"),\r\n getById(DirectoryObject)\r\n ], _DirectoryObjects);\r\n return _DirectoryObjects;\r\n}(_GraphQueryableCollection));\r\nexport { _DirectoryObjects };\r\nexport var DirectoryObjects = graphInvokableFactory(_DirectoryObjects);\r\n/**\r\n * DirectoryObjectTypes\r\n */\r\nexport var DirectoryObjectTypes;\r\n(function (DirectoryObjectTypes) {\r\n /**\r\n * Directory Objects\r\n */\r\n DirectoryObjectTypes[DirectoryObjectTypes[\"directoryObject\"] = 0] = \"directoryObject\";\r\n /**\r\n * User\r\n */\r\n DirectoryObjectTypes[DirectoryObjectTypes[\"user\"] = 1] = \"user\";\r\n /**\r\n * Group\r\n */\r\n DirectoryObjectTypes[DirectoryObjectTypes[\"group\"] = 2] = \"group\";\r\n /**\r\n * Device\r\n */\r\n DirectoryObjectTypes[DirectoryObjectTypes[\"device\"] = 3] = \"device\";\r\n})(DirectoryObjectTypes || (DirectoryObjectTypes = {}));\r\n//# sourceMappingURL=types.js.map","import { __awaiter, __decorate, __extends, __generator } from \"tslib\";\r\nimport { assign } from \"@pnp/common\";\r\nimport { body } from \"@pnp/odata\";\r\nimport { _GraphQueryableCollection, graphInvokableFactory } from \"../graphqueryable.js\";\r\nimport { defaultPath, deleteable, updateable, getById } from \"../decorators.js\";\r\nimport { graphPost } from \"../operations.js\";\r\nimport { _DirectoryObject } from \"../directory-objects/types.js\";\r\nexport var GroupType;\r\n(function (GroupType) {\r\n /**\r\n * Office 365 (aka unified group)\r\n */\r\n GroupType[GroupType[\"Office365\"] = 0] = \"Office365\";\r\n /**\r\n * Dynamic membership\r\n */\r\n GroupType[GroupType[\"Dynamic\"] = 1] = \"Dynamic\";\r\n /**\r\n * Security\r\n */\r\n GroupType[GroupType[\"Security\"] = 2] = \"Security\";\r\n})(GroupType || (GroupType = {}));\r\n/**\r\n * Represents a group entity\r\n */\r\nvar _Group = /** @class */ (function (_super) {\r\n __extends(_Group, _super);\r\n function _Group() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n /**\r\n * Add the group to the list of the current user's favorite groups. Supported for only Office 365 groups\r\n */\r\n _Group.prototype.addFavorite = function () {\r\n return graphPost(this.clone(Group, \"addFavorite\"));\r\n };\r\n /**\r\n * Remove the group from the list of the current user's favorite groups. Supported for only Office 365 groups\r\n */\r\n _Group.prototype.removeFavorite = function () {\r\n return graphPost(this.clone(Group, \"removeFavorite\"));\r\n };\r\n /**\r\n * Reset the unseenCount of all the posts that the current user has not seen since their last visit\r\n */\r\n _Group.prototype.resetUnseenCount = function () {\r\n return graphPost(this.clone(Group, \"resetUnseenCount\"));\r\n };\r\n /**\r\n * Calling this method will enable the current user to receive email notifications for this group,\r\n * about new posts, events, and files in that group. Supported for only Office 365 groups\r\n */\r\n _Group.prototype.subscribeByMail = function () {\r\n return graphPost(this.clone(Group, \"subscribeByMail\"));\r\n };\r\n /**\r\n * Calling this method will prevent the current user from receiving email notifications for this group\r\n * about new posts, events, and files in that group. Supported for only Office 365 groups\r\n */\r\n _Group.prototype.unsubscribeByMail = function () {\r\n return graphPost(this.clone(Group, \"unsubscribeByMail\"));\r\n };\r\n /**\r\n * Get the occurrences, exceptions, and single instances of events in a calendar view defined by a time range, from the default calendar of a group\r\n *\r\n * @param start Start date and time of the time range\r\n * @param end End date and time of the time range\r\n */\r\n _Group.prototype.getCalendarView = function (start, end) {\r\n var view = this.clone(Group, \"calendarView\");\r\n view.query.set(\"startDateTime\", start.toISOString());\r\n view.query.set(\"endDateTime\", end.toISOString());\r\n return view();\r\n };\r\n _Group = __decorate([\r\n deleteable(),\r\n updateable()\r\n ], _Group);\r\n return _Group;\r\n}(_DirectoryObject));\r\nexport { _Group };\r\nexport var Group = graphInvokableFactory(_Group);\r\n/**\r\n * Describes a collection of Field objects\r\n *\r\n */\r\nvar _Groups = /** @class */ (function (_super) {\r\n __extends(_Groups, _super);\r\n function _Groups() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n /**\r\n * Create a new group as specified in the request body.\r\n *\r\n * @param name Name to display in the address book for the group\r\n * @param mailNickname Mail alias for the group\r\n * @param groupType Type of group being created\r\n * @param additionalProperties A plain object collection of additional properties you want to set on the new group\r\n */\r\n _Groups.prototype.add = function (name, mailNickname, groupType, additionalProperties) {\r\n if (additionalProperties === void 0) { additionalProperties = {}; }\r\n return __awaiter(this, void 0, void 0, function () {\r\n var postBody, data;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n postBody = assign({\r\n displayName: name,\r\n mailEnabled: groupType === GroupType.Office365,\r\n mailNickname: mailNickname,\r\n securityEnabled: groupType !== GroupType.Office365,\r\n }, additionalProperties);\r\n // include a group type if required\r\n if (groupType !== GroupType.Security) {\r\n postBody = assign(postBody, {\r\n groupTypes: groupType === GroupType.Office365 ? [\"Unified\"] : [\"DynamicMembership\"],\r\n });\r\n }\r\n return [4 /*yield*/, graphPost(this, body(postBody))];\r\n case 1:\r\n data = _a.sent();\r\n return [2 /*return*/, {\r\n data: data,\r\n group: this.getById(data.id),\r\n }];\r\n }\r\n });\r\n });\r\n };\r\n _Groups = __decorate([\r\n defaultPath(\"groups\"),\r\n getById(Group)\r\n ], _Groups);\r\n return _Groups;\r\n}(_GraphQueryableCollection));\r\nexport { _Groups };\r\nexport var Groups = graphInvokableFactory(_Groups);\r\n//# sourceMappingURL=types.js.map","import { GraphQueryableCollection } from \"../graphqueryable.js\";\r\n/**\r\n * Get the occurrences, exceptions, and single instances of events in a calendar view defined by a time range,\r\n * from the user's default calendar, or from some other calendar of the user's\r\n *\r\n * @param this IGraphQueryable instance\r\n * @param start start time\r\n * @param end end time\r\n */\r\nexport function calendarView(start, end) {\r\n var query = this.clone(GraphQueryableCollection, \"calendarView\");\r\n query.query.set(\"startDateTime\", encodeURIComponent(start));\r\n query.query.set(\"endDateTime\", encodeURIComponent(end));\r\n return query;\r\n}\r\n//# sourceMappingURL=funcs.js.map","import { __awaiter, __decorate, __extends, __generator } from \"tslib\";\r\nimport { body } from \"@pnp/odata\";\r\nimport { _GraphQueryableCollection, _GraphQueryableInstance, graphInvokableFactory } from \"../graphqueryable.js\";\r\nimport { defaultPath, deleteable, updateable, getById } from \"../decorators.js\";\r\nimport { graphPost } from \"../operations.js\";\r\nimport { calendarView } from \"./funcs.js\";\r\n/**\r\n * Calendar\r\n */\r\nvar _Calendar = /** @class */ (function (_super) {\r\n __extends(_Calendar, _super);\r\n function _Calendar() {\r\n var _this = _super !== null && _super.apply(this, arguments) || this;\r\n _this.calendarView = calendarView;\r\n return _this;\r\n }\r\n Object.defineProperty(_Calendar.prototype, \"events\", {\r\n get: function () {\r\n return Events(this);\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n return _Calendar;\r\n}(_GraphQueryableInstance));\r\nexport { _Calendar };\r\nexport var Calendar = graphInvokableFactory(_Calendar);\r\n/**\r\n * Calendars\r\n */\r\nvar _Calendars = /** @class */ (function (_super) {\r\n __extends(_Calendars, _super);\r\n function _Calendars() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n _Calendars = __decorate([\r\n defaultPath(\"calendars\"),\r\n getById(Calendar)\r\n ], _Calendars);\r\n return _Calendars;\r\n}(_GraphQueryableCollection));\r\nexport { _Calendars };\r\nexport var Calendars = graphInvokableFactory(_Calendars);\r\n/**\r\n * Event\r\n */\r\nvar _Event = /** @class */ (function (_super) {\r\n __extends(_Event, _super);\r\n function _Event() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n _Event = __decorate([\r\n deleteable(),\r\n updateable()\r\n ], _Event);\r\n return _Event;\r\n}(_GraphQueryableInstance));\r\nexport { _Event };\r\nexport var Event = graphInvokableFactory(_Event);\r\n/**\r\n * Events\r\n */\r\nvar _Events = /** @class */ (function (_super) {\r\n __extends(_Events, _super);\r\n function _Events() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n /**\r\n * Adds a new event to the collection\r\n *\r\n * @param properties The set of properties used to create the event\r\n */\r\n _Events.prototype.add = function (properties) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var data;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0: return [4 /*yield*/, graphPost(this, body(properties))];\r\n case 1:\r\n data = _a.sent();\r\n return [2 /*return*/, {\r\n data: data,\r\n event: this.getById(data.id),\r\n }];\r\n }\r\n });\r\n });\r\n };\r\n _Events = __decorate([\r\n defaultPath(\"events\"),\r\n getById(Event)\r\n ], _Events);\r\n return _Events;\r\n}(_GraphQueryableCollection));\r\nexport { _Events };\r\nexport var Events = graphInvokableFactory(_Events);\r\n//# sourceMappingURL=types.js.map","import { addProp } from \"@pnp/odata\";\r\nimport { _Group } from \"../groups/types.js\";\r\nimport { Calendar, Events } from \"./types.js\";\r\naddProp(_Group, \"calendar\", Calendar, \"calendar\");\r\naddProp(_Group, \"events\", Events);\r\n//# sourceMappingURL=groups.js.map","import { __decorate, __extends } from \"tslib\";\r\nimport { _GraphQueryableCollection, graphInvokableFactory } from \"../graphqueryable.js\";\r\nimport { _DirectoryObject, DirectoryObjects } from \"../directory-objects/types.js\";\r\nimport { defaultPath, updateable, deleteable, getById } from \"../decorators.js\";\r\nvar _User = /** @class */ (function (_super) {\r\n __extends(_User, _super);\r\n function _User() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n Object.defineProperty(_User.prototype, \"memberOf\", {\r\n /**\r\n * The groups and directory roles associated with the user\r\n */\r\n get: function () {\r\n return DirectoryObjects(this, \"memberOf\");\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n Object.defineProperty(_User.prototype, \"people\", {\r\n /**\r\n * Retrieve a collection of person objects ordered by their relevance to the user\r\n */\r\n get: function () {\r\n return People(this);\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n Object.defineProperty(_User.prototype, \"directReports\", {\r\n /**\r\n * People that have direct reports to the user\r\n */\r\n get: function () {\r\n return People(this, \"directReports\");\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n Object.defineProperty(_User.prototype, \"manager\", {\r\n /**\r\n * The manager associated with this user\r\n */\r\n get: function () {\r\n return User(this, \"manager\");\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n _User = __decorate([\r\n updateable(),\r\n deleteable()\r\n ], _User);\r\n return _User;\r\n}(_DirectoryObject));\r\nexport { _User };\r\nexport var User = graphInvokableFactory(_User);\r\nvar _Users = /** @class */ (function (_super) {\r\n __extends(_Users, _super);\r\n function _Users() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n _Users = __decorate([\r\n defaultPath(\"users\"),\r\n getById(User)\r\n ], _Users);\r\n return _Users;\r\n}(_GraphQueryableCollection));\r\nexport { _Users };\r\nexport var Users = graphInvokableFactory(_Users);\r\nvar _People = /** @class */ (function (_super) {\r\n __extends(_People, _super);\r\n function _People() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n _People = __decorate([\r\n defaultPath(\"people\")\r\n ], _People);\r\n return _People;\r\n}(_GraphQueryableCollection));\r\nexport { _People };\r\nexport var People = graphInvokableFactory(_People);\r\n//# sourceMappingURL=types.js.map","import { addProp } from \"@pnp/odata\";\r\nimport { _User } from \"../users/types.js\";\r\nimport { Calendar, Events, Calendars } from \"./types.js\";\r\nimport { calendarView } from \"./funcs.js\";\r\naddProp(_User, \"calendar\", Calendar, \"calendar\");\r\naddProp(_User, \"calendars\", Calendars, \"calendars\");\r\naddProp(_User, \"events\", Events);\r\n_User.prototype.calendarView = calendarView;\r\n//# sourceMappingURL=users.js.map","import { __awaiter, __decorate, __extends, __generator } from \"tslib\";\r\nimport { _GraphQueryableCollection, _GraphQueryableInstance, graphInvokableFactory } from \"../graphqueryable.js\";\r\nimport { assign } from \"@pnp/common\";\r\nimport { defaultPath, updateable, deleteable, getById } from \"../decorators.js\";\r\nimport { graphPost } from \"../operations.js\";\r\nimport { body } from \"@pnp/odata\";\r\n/**\r\n * Contact\r\n */\r\nvar _Contact = /** @class */ (function (_super) {\r\n __extends(_Contact, _super);\r\n function _Contact() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n _Contact = __decorate([\r\n updateable(),\r\n deleteable()\r\n ], _Contact);\r\n return _Contact;\r\n}(_GraphQueryableInstance));\r\nexport { _Contact };\r\nexport var Contact = graphInvokableFactory(_Contact);\r\n/**\r\n * Contacts\r\n */\r\nvar _Contacts = /** @class */ (function (_super) {\r\n __extends(_Contacts, _super);\r\n function _Contacts() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n /**\r\n * Create a new Contact for the user.\r\n *\r\n * @param givenName The contact's given name.\r\n * @param surName The contact's surname.\r\n * @param emailAddresses The contact's email addresses.\r\n * @param businessPhones The contact's business phone numbers.\r\n * @param additionalProperties A plain object collection of additional properties you want to set on the new contact\r\n */\r\n _Contacts.prototype.add = function (givenName, surName, emailAddresses, businessPhones, additionalProperties) {\r\n if (additionalProperties === void 0) { additionalProperties = {}; }\r\n return __awaiter(this, void 0, void 0, function () {\r\n var postBody, data;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n postBody = assign({ businessPhones: businessPhones, emailAddresses: emailAddresses, givenName: givenName, surName: surName }, additionalProperties);\r\n return [4 /*yield*/, graphPost(this, body(postBody))];\r\n case 1:\r\n data = _a.sent();\r\n return [2 /*return*/, {\r\n contact: this.getById(data.id),\r\n data: data,\r\n }];\r\n }\r\n });\r\n });\r\n };\r\n _Contacts = __decorate([\r\n defaultPath(\"contacts\"),\r\n getById(Contact)\r\n ], _Contacts);\r\n return _Contacts;\r\n}(_GraphQueryableCollection));\r\nexport { _Contacts };\r\nexport var Contacts = graphInvokableFactory(_Contacts);\r\n/**\r\n * Contact Folder\r\n */\r\nvar _ContactFolder = /** @class */ (function (_super) {\r\n __extends(_ContactFolder, _super);\r\n function _ContactFolder() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n Object.defineProperty(_ContactFolder.prototype, \"contacts\", {\r\n /**\r\n * Gets the contacts in this contact folder\r\n */\r\n get: function () {\r\n return Contacts(this);\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n Object.defineProperty(_ContactFolder.prototype, \"childFolders\", {\r\n /**\r\n * Gets the contacts in this contact folder\r\n */\r\n get: function () {\r\n return ContactFolders(this, \"childFolders\");\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n _ContactFolder = __decorate([\r\n deleteable(),\r\n updateable()\r\n ], _ContactFolder);\r\n return _ContactFolder;\r\n}(_GraphQueryableInstance));\r\nexport { _ContactFolder };\r\nexport var ContactFolder = graphInvokableFactory(_ContactFolder);\r\n/**\r\n * Contact Folders\r\n */\r\nvar _ContactFolders = /** @class */ (function (_super) {\r\n __extends(_ContactFolders, _super);\r\n function _ContactFolders() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n /**\r\n * Create a new Contact Folder for the user.\r\n *\r\n * @param displayName The folder's display name.\r\n * @param parentFolderId The ID of the folder's parent folder.\r\n */\r\n _ContactFolders.prototype.add = function (displayName, parentFolderId) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var postBody, data;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n postBody = {\r\n displayName: displayName,\r\n parentFolderId: parentFolderId,\r\n };\r\n return [4 /*yield*/, graphPost(this, body(postBody))];\r\n case 1:\r\n data = _a.sent();\r\n return [2 /*return*/, {\r\n contactFolder: this.getById(data.id),\r\n data: data,\r\n }];\r\n }\r\n });\r\n });\r\n };\r\n _ContactFolders = __decorate([\r\n defaultPath(\"contactFolders\"),\r\n getById(ContactFolder)\r\n ], _ContactFolders);\r\n return _ContactFolders;\r\n}(_GraphQueryableCollection));\r\nexport { _ContactFolders };\r\nexport var ContactFolders = graphInvokableFactory(_ContactFolders);\r\n//# sourceMappingURL=types.js.map","import { addProp } from \"@pnp/odata\";\r\nimport { _User } from \"../users/types.js\";\r\nimport { Contacts, ContactFolders } from \"./types.js\";\r\naddProp(_User, \"contacts\", Contacts);\r\naddProp(_User, \"contactFolders\", ContactFolders);\r\n//# sourceMappingURL=users.js.map","import { addProp } from \"@pnp/odata\";\r\nimport { _Group } from \"../groups/types.js\";\r\nimport { Conversations, Senders } from \"./types.js\";\r\naddProp(_Group, \"conversations\", Conversations);\r\naddProp(_Group, \"acceptedSenders\", Senders, \"acceptedsenders\");\r\naddProp(_Group, \"rejectedSenders\", Senders, \"rejectedsenders\");\r\n//# sourceMappingURL=groups.js.map","import { GraphRest } from \"../rest.js\";\r\nimport { DirectoryObjects } from \"./types.js\";\r\nexport { DirectoryObjectTypes, DirectoryObject, DirectoryObjects, } from \"./types.js\";\r\nReflect.defineProperty(GraphRest.prototype, \"directoryObjects\", {\r\n configurable: true,\r\n enumerable: true,\r\n get: function () {\r\n return this.childConfigHook(function (_a) {\r\n var options = _a.options, baseUrl = _a.baseUrl, runtime = _a.runtime;\r\n return DirectoryObjects(baseUrl).configure(options).setRuntime(runtime);\r\n });\r\n },\r\n});\r\n//# sourceMappingURL=index.js.map","import { GraphRest } from \"../rest.js\";\r\nimport { Groups } from \"./types.js\";\r\nexport { Group, GroupType, Groups, } from \"./types.js\";\r\nReflect.defineProperty(GraphRest.prototype, \"groups\", {\r\n configurable: true,\r\n enumerable: true,\r\n get: function () {\r\n return this.childConfigHook(function (_a) {\r\n var options = _a.options, baseUrl = _a.baseUrl, runtime = _a.runtime;\r\n return Groups(baseUrl).configure(options).setRuntime(runtime);\r\n });\r\n },\r\n});\r\n//# sourceMappingURL=index.js.map","import { __decorate, __extends } from \"tslib\";\r\nimport { _GraphQueryableInstance, _GraphQueryableCollection, graphInvokableFactory, } from \"../graphqueryable.js\";\r\nimport { defaultPath, getById } from \"../decorators.js\";\r\n/**\r\n * Represents a insights entity\r\n */\r\nvar _Insights = /** @class */ (function (_super) {\r\n __extends(_Insights, _super);\r\n function _Insights() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n Object.defineProperty(_Insights.prototype, \"trending\", {\r\n get: function () {\r\n return TrendingInsights(this);\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n Object.defineProperty(_Insights.prototype, \"used\", {\r\n get: function () {\r\n return UsedInsights(this);\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n Object.defineProperty(_Insights.prototype, \"shared\", {\r\n get: function () {\r\n return SharedInsights(this);\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n _Insights = __decorate([\r\n defaultPath(\"insights\")\r\n ], _Insights);\r\n return _Insights;\r\n}(_GraphQueryableInstance));\r\nexport { _Insights };\r\nexport var Insights = graphInvokableFactory(_Insights);\r\n/**\r\n * Describes a Trending Insight instance\r\n */\r\nvar _TrendingInsight = /** @class */ (function (_super) {\r\n __extends(_TrendingInsight, _super);\r\n function _TrendingInsight() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n Object.defineProperty(_TrendingInsight.prototype, \"resource\", {\r\n get: function () {\r\n return Resource(this);\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n return _TrendingInsight;\r\n}(_GraphQueryableInstance));\r\nexport { _TrendingInsight };\r\nexport var TrendingInsight = graphInvokableFactory(_TrendingInsight);\r\n/**\r\n * Describes a collection of Trending Insight objects\r\n *\r\n */\r\nvar _TrendingInsights = /** @class */ (function (_super) {\r\n __extends(_TrendingInsights, _super);\r\n function _TrendingInsights() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n _TrendingInsights = __decorate([\r\n defaultPath(\"trending\"),\r\n getById(TrendingInsight)\r\n ], _TrendingInsights);\r\n return _TrendingInsights;\r\n}(_GraphQueryableCollection));\r\nexport { _TrendingInsights };\r\nexport var TrendingInsights = graphInvokableFactory(_TrendingInsights);\r\n/**\r\n * Describes a Used Insight instance\r\n */\r\nvar _UsedInsight = /** @class */ (function (_super) {\r\n __extends(_UsedInsight, _super);\r\n function _UsedInsight() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n Object.defineProperty(_UsedInsight.prototype, \"resource\", {\r\n get: function () {\r\n return Resource(this);\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n return _UsedInsight;\r\n}(_GraphQueryableInstance));\r\nexport { _UsedInsight };\r\nexport var UsedInsight = graphInvokableFactory(_UsedInsight);\r\n/**\r\n * Describes a collection of Used Insight objects\r\n *\r\n */\r\nvar _UsedInsights = /** @class */ (function (_super) {\r\n __extends(_UsedInsights, _super);\r\n function _UsedInsights() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n _UsedInsights = __decorate([\r\n defaultPath(\"used\"),\r\n getById(UsedInsight)\r\n ], _UsedInsights);\r\n return _UsedInsights;\r\n}(_GraphQueryableCollection));\r\nexport { _UsedInsights };\r\nexport var UsedInsights = graphInvokableFactory(_UsedInsights);\r\n/**\r\n * Describes a Shared Insight instance\r\n */\r\nvar _SharedInsight = /** @class */ (function (_super) {\r\n __extends(_SharedInsight, _super);\r\n function _SharedInsight() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n Object.defineProperty(_SharedInsight.prototype, \"resource\", {\r\n get: function () {\r\n return Resource(this);\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n return _SharedInsight;\r\n}(_GraphQueryableInstance));\r\nexport { _SharedInsight };\r\nexport var SharedInsight = graphInvokableFactory(_SharedInsight);\r\n/**\r\n * Describes a collection of Shared Insight objects\r\n *\r\n */\r\nvar _SharedInsights = /** @class */ (function (_super) {\r\n __extends(_SharedInsights, _super);\r\n function _SharedInsights() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n _SharedInsights = __decorate([\r\n defaultPath(\"shared\"),\r\n getById(SharedInsight)\r\n ], _SharedInsights);\r\n return _SharedInsights;\r\n}(_GraphQueryableCollection));\r\nexport { _SharedInsights };\r\nexport var SharedInsights = graphInvokableFactory(_SharedInsights);\r\n/**\r\n * Describes a Resource Entity instance\r\n */\r\nvar _Resource = /** @class */ (function (_super) {\r\n __extends(_Resource, _super);\r\n function _Resource() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n _Resource = __decorate([\r\n defaultPath(\"resource\")\r\n ], _Resource);\r\n return _Resource;\r\n}(_GraphQueryableInstance));\r\nexport { _Resource };\r\nexport var Resource = graphInvokableFactory(_Resource);\r\n//# sourceMappingURL=types.js.map","import { addProp } from \"@pnp/odata\";\r\nimport { _User } from \"../users/types.js\";\r\nimport { Insights } from \"./types.js\";\r\naddProp(_User, \"insights\", Insights);\r\n//# sourceMappingURL=users.js.map","import { __awaiter, __decorate, __extends, __generator } from \"tslib\";\r\nimport { assign } from \"@pnp/common\";\r\nimport { body } from \"@pnp/odata\";\r\nimport { _GraphQueryableCollection, graphInvokableFactory } from \"../graphqueryable.js\";\r\nimport { defaultPath } from \"../decorators.js\";\r\nimport { graphPost } from \"../operations.js\";\r\n/**\r\n * Invitations\r\n */\r\nvar _Invitations = /** @class */ (function (_super) {\r\n __extends(_Invitations, _super);\r\n function _Invitations() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n /**\r\n * Create a new Invitation via invitation manager.\r\n *\r\n * @param invitedUserEmailAddress The email address of the user being invited.\r\n * @param inviteRedirectUrl The URL user should be redirected to once the invitation is redeemed.\r\n * @param additionalProperties A plain object collection of additional properties you want to set in the invitation\r\n */\r\n _Invitations.prototype.create = function (invitedUserEmailAddress, inviteRedirectUrl, additionalProperties) {\r\n if (additionalProperties === void 0) { additionalProperties = {}; }\r\n return __awaiter(this, void 0, void 0, function () {\r\n var postBody, data;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n postBody = assign({ inviteRedirectUrl: inviteRedirectUrl, invitedUserEmailAddress: invitedUserEmailAddress }, additionalProperties);\r\n return [4 /*yield*/, graphPost(this, body(postBody))];\r\n case 1:\r\n data = _a.sent();\r\n return [2 /*return*/, { data: data }];\r\n }\r\n });\r\n });\r\n };\r\n _Invitations = __decorate([\r\n defaultPath(\"invitations\")\r\n ], _Invitations);\r\n return _Invitations;\r\n}(_GraphQueryableCollection));\r\nexport { _Invitations };\r\nexport var Invitations = graphInvokableFactory(_Invitations);\r\n//# sourceMappingURL=types.js.map","import { GraphRest } from \"../rest.js\";\r\nimport { Invitations } from \"./types.js\";\r\nexport { Invitations, } from \"./types.js\";\r\nReflect.defineProperty(GraphRest.prototype, \"invitations\", {\r\n configurable: true,\r\n enumerable: true,\r\n get: function () {\r\n return this.childConfigHook(function (_a) {\r\n var options = _a.options, baseUrl = _a.baseUrl, runtime = _a.runtime;\r\n return Invitations(baseUrl).configure(options).setRuntime(runtime);\r\n });\r\n },\r\n});\r\n//# sourceMappingURL=index.js.map","import { __decorate, __extends } from \"tslib\";\r\nimport { body } from \"@pnp/odata\";\r\nimport { _GraphQueryableCollection, _GraphQueryableInstance, graphInvokableFactory } from \"../graphqueryable.js\";\r\nimport { defaultPath, getById } from \"../decorators.js\";\r\nimport { graphDelete, graphPost } from \"../operations.js\";\r\n/**\r\n * Member\r\n */\r\nvar _Member = /** @class */ (function (_super) {\r\n __extends(_Member, _super);\r\n function _Member() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n /**\r\n * Removes this Member\r\n */\r\n _Member.prototype.remove = function () {\r\n return graphDelete(this.clone(Member, \"$ref\"));\r\n };\r\n return _Member;\r\n}(_GraphQueryableInstance));\r\nexport { _Member };\r\nexport var Member = graphInvokableFactory(_Member);\r\n/**\r\n * Members\r\n */\r\nvar _Members = /** @class */ (function (_super) {\r\n __extends(_Members, _super);\r\n function _Members() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n /**\r\n * Use this API to add a member to an Office 365 group, a security group or a mail-enabled security group through\r\n * the members navigation property. You can add users or other groups.\r\n * Important: You can add only users to Office 365 groups.\r\n *\r\n * @param id Full @odata.id of the directoryObject, user, or group object you want to add (ex: `https://graph.microsoft.com/v1.0/directoryObjects/${id}`)\r\n */\r\n _Members.prototype.add = function (id) {\r\n return graphPost(this.clone(Members, \"$ref\"), body({ \"@odata.id\": id }));\r\n };\r\n _Members = __decorate([\r\n defaultPath(\"members\"),\r\n getById(Member)\r\n ], _Members);\r\n return _Members;\r\n}(_GraphQueryableCollection));\r\nexport { _Members };\r\nexport var Members = graphInvokableFactory(_Members);\r\n//# sourceMappingURL=types.js.map","import { addProp } from \"@pnp/odata\";\r\nimport { _Group } from \"../groups/types.js\";\r\nimport { Members } from \"./types.js\";\r\naddProp(_Group, \"owners\", Members, \"owners\");\r\naddProp(_Group, \"members\", Members);\r\n//# sourceMappingURL=groups.js.map","import { __decorate, __extends } from \"tslib\";\r\nimport { _GraphQueryableCollection, _GraphQueryableInstance, graphInvokableFactory } from \"../graphqueryable.js\";\r\nimport { defaultPath, getById, addable, updateable } from \"../decorators.js\";\r\n/**\r\n * Message\r\n */\r\nvar _Message = /** @class */ (function (_super) {\r\n __extends(_Message, _super);\r\n function _Message() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n return _Message;\r\n}(_GraphQueryableInstance));\r\nexport { _Message };\r\nexport var Message = graphInvokableFactory(_Message);\r\n/**\r\n * Messages\r\n */\r\nvar _Messages = /** @class */ (function (_super) {\r\n __extends(_Messages, _super);\r\n function _Messages() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n _Messages = __decorate([\r\n defaultPath(\"messages\"),\r\n getById(Message),\r\n addable()\r\n ], _Messages);\r\n return _Messages;\r\n}(_GraphQueryableCollection));\r\nexport { _Messages };\r\nexport var Messages = graphInvokableFactory(_Messages);\r\n/**\r\n * MailFolder\r\n */\r\nvar _MailFolder = /** @class */ (function (_super) {\r\n __extends(_MailFolder, _super);\r\n function _MailFolder() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n return _MailFolder;\r\n}(_GraphQueryableInstance));\r\nexport { _MailFolder };\r\nexport var MailFolder = graphInvokableFactory(_MailFolder);\r\n/**\r\n * MailFolders\r\n */\r\nvar _MailFolders = /** @class */ (function (_super) {\r\n __extends(_MailFolders, _super);\r\n function _MailFolders() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n _MailFolders = __decorate([\r\n defaultPath(\"mailFolders\"),\r\n getById(MailFolder),\r\n addable()\r\n ], _MailFolders);\r\n return _MailFolders;\r\n}(_GraphQueryableCollection));\r\nexport { _MailFolders };\r\nexport var MailFolders = graphInvokableFactory(_MailFolders);\r\n/**\r\n * MailboxSettings\r\n */\r\nvar _MailboxSettings = /** @class */ (function (_super) {\r\n __extends(_MailboxSettings, _super);\r\n function _MailboxSettings() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n _MailboxSettings = __decorate([\r\n defaultPath(\"mailboxSettings\"),\r\n updateable()\r\n ], _MailboxSettings);\r\n return _MailboxSettings;\r\n}(_GraphQueryableInstance));\r\nexport { _MailboxSettings };\r\nexport var MailboxSettings = graphInvokableFactory(_MailboxSettings);\r\n//# sourceMappingURL=types.js.map","import { addProp, body } from \"@pnp/odata\";\r\nimport { _User, User } from \"../users/types.js\";\r\nimport { Messages, MailboxSettings, MailFolders } from \"./types.js\";\r\nimport { graphPost } from \"../operations.js\";\r\naddProp(_User, \"messages\", Messages);\r\naddProp(_User, \"mailboxSettings\", MailboxSettings);\r\naddProp(_User, \"mailFolders\", MailFolders);\r\n_User.prototype.sendMail = function (message) {\r\n return graphPost(this.clone(User, \"sendMail\"), body(message));\r\n};\r\n//# sourceMappingURL=users.js.map","import { __awaiter, __decorate, __extends, __generator } from \"tslib\";\r\nimport { GraphQueryableInstance, GraphQueryableCollection, _GraphQueryableInstance, _GraphQueryableCollection, graphInvokableFactory, } from \"../graphqueryable.js\";\r\nimport { assign, combine, safeGlobal } from \"@pnp/common\";\r\nimport { defaultPath, getById, deleteable, updateable } from \"../decorators.js\";\r\nimport { body, BlobParser } from \"@pnp/odata\";\r\nimport { graphPatch, graphPut } from \"../operations.js\";\r\n/**\r\n * Describes a Drive instance\r\n *\r\n */\r\nvar _Drive = /** @class */ (function (_super) {\r\n __extends(_Drive, _super);\r\n function _Drive() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n Object.defineProperty(_Drive.prototype, \"root\", {\r\n get: function () {\r\n return Root(this);\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n Object.defineProperty(_Drive.prototype, \"list\", {\r\n get: function () {\r\n return this.clone(GraphQueryableInstance, \"list\");\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n Object.defineProperty(_Drive.prototype, \"recent\", {\r\n get: function () {\r\n return DriveItems(this, \"recent\");\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n Object.defineProperty(_Drive.prototype, \"sharedWithMe\", {\r\n get: function () {\r\n return DriveItems(this, \"sharedWithMe\");\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n _Drive.prototype.getItemById = function (id) {\r\n return DriveItem(this, combine(\"items\", id));\r\n };\r\n _Drive = __decorate([\r\n defaultPath(\"drive\")\r\n ], _Drive);\r\n return _Drive;\r\n}(_GraphQueryableInstance));\r\nexport { _Drive };\r\nexport var Drive = graphInvokableFactory(_Drive);\r\n/**\r\n * Describes a collection of Drive objects\r\n *\r\n */\r\nvar _Drives = /** @class */ (function (_super) {\r\n __extends(_Drives, _super);\r\n function _Drives() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n _Drives.prototype.getById = function (id) {\r\n return Drive(this.getUrlBase(), \"drives/\" + id);\r\n };\r\n _Drives = __decorate([\r\n defaultPath(\"drives\")\r\n ], _Drives);\r\n return _Drives;\r\n}(_GraphQueryableCollection));\r\nexport { _Drives };\r\nexport var Drives = graphInvokableFactory(_Drives);\r\n/**\r\n * Describes a Root instance\r\n *\r\n */\r\nvar _Root = /** @class */ (function (_super) {\r\n __extends(_Root, _super);\r\n function _Root() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n Object.defineProperty(_Root.prototype, \"children\", {\r\n get: function () {\r\n return DriveItems(this, \"children\");\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n _Root.prototype.search = function (query) {\r\n var searcher = this.clone(Root);\r\n searcher.query.set(\"search\", \"'\" + query + \"'\");\r\n return searcher();\r\n };\r\n Object.defineProperty(_Root.prototype, \"thumbnails\", {\r\n get: function () {\r\n return this.clone(GraphQueryableCollection, \"thumbnails\");\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n _Root = __decorate([\r\n defaultPath(\"root\")\r\n ], _Root);\r\n return _Root;\r\n}(_GraphQueryableInstance));\r\nexport { _Root };\r\nexport var Root = graphInvokableFactory(_Root);\r\n/**\r\n * Describes a Drive Item instance\r\n *\r\n */\r\nvar _DriveItem = /** @class */ (function (_super) {\r\n __extends(_DriveItem, _super);\r\n function _DriveItem() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n Object.defineProperty(_DriveItem.prototype, \"children\", {\r\n get: function () {\r\n return DriveItems(this, \"children\");\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n Object.defineProperty(_DriveItem.prototype, \"thumbnails\", {\r\n get: function () {\r\n return this.clone(GraphQueryableCollection, \"thumbnails\");\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n Object.defineProperty(_DriveItem.prototype, \"versions\", {\r\n get: function () {\r\n return this.clone(GraphQueryableCollection, \"versions\");\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n _DriveItem.prototype.move = function (parentReference, name) {\r\n return graphPatch(this, body(assign(parentReference, { name: name })));\r\n };\r\n _DriveItem.prototype.getContent = function () {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var info, r, p;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0: return [4 /*yield*/, this.get()];\r\n case 1:\r\n info = _a.sent();\r\n return [4 /*yield*/, safeGlobal.fetch(info[\"@microsoft.graph.downloadUrl\"], {\r\n headers: {\r\n \"accept\": \"application/json\",\r\n },\r\n method: \"GET\",\r\n responseType: \"arraybuffer\",\r\n })];\r\n case 2:\r\n r = _a.sent();\r\n p = new BlobParser();\r\n return [2 /*return*/, p.parse(r)];\r\n }\r\n });\r\n });\r\n };\r\n _DriveItem.prototype.setContent = function (content) {\r\n return graphPut(this.clone(DriveItem, \"content\"), {\r\n body: content,\r\n });\r\n };\r\n _DriveItem = __decorate([\r\n deleteable(),\r\n updateable()\r\n ], _DriveItem);\r\n return _DriveItem;\r\n}(_GraphQueryableInstance));\r\nexport { _DriveItem };\r\nexport var DriveItem = graphInvokableFactory(_DriveItem);\r\n/**\r\n * Describes a collection of Drive Item objects\r\n *\r\n */\r\nvar _DriveItems = /** @class */ (function (_super) {\r\n __extends(_DriveItems, _super);\r\n function _DriveItems() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n _DriveItems = __decorate([\r\n getById(DriveItem)\r\n ], _DriveItems);\r\n return _DriveItems;\r\n}(_GraphQueryableCollection));\r\nexport { _DriveItems };\r\nexport var DriveItems = graphInvokableFactory(_DriveItems);\r\n//# sourceMappingURL=types.js.map","import { addProp } from \"@pnp/odata\";\r\nimport { _User } from \"../users/types.js\";\r\nimport { Drive, Drives } from \"./types.js\";\r\naddProp(_User, \"drive\", Drive);\r\naddProp(_User, \"drives\", Drives);\r\n//# sourceMappingURL=users.js.map","import { __awaiter, __decorate, __extends, __generator } from \"tslib\";\r\nimport { body } from \"@pnp/odata\";\r\nimport { GraphQueryableCollection, _GraphQueryableInstance, _GraphQueryableCollection, graphInvokableFactory, } from \"../graphqueryable.js\";\r\nimport { defaultPath, getById } from \"../decorators.js\";\r\nimport { graphPost } from \"../operations.js\";\r\n/**\r\n * Represents a onenote entity\r\n */\r\nvar _OneNote = /** @class */ (function (_super) {\r\n __extends(_OneNote, _super);\r\n function _OneNote() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n Object.defineProperty(_OneNote.prototype, \"notebooks\", {\r\n get: function () {\r\n return Notebooks(this);\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n Object.defineProperty(_OneNote.prototype, \"sections\", {\r\n get: function () {\r\n return Sections(this);\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n Object.defineProperty(_OneNote.prototype, \"pages\", {\r\n get: function () {\r\n return this.clone(GraphQueryableCollection, \"pages\");\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n _OneNote = __decorate([\r\n defaultPath(\"onenote\")\r\n ], _OneNote);\r\n return _OneNote;\r\n}(_GraphQueryableInstance));\r\nexport { _OneNote };\r\nexport var OneNote = graphInvokableFactory(_OneNote);\r\n/**\r\n * Describes a notebook instance\r\n *\r\n */\r\nvar _Notebook = /** @class */ (function (_super) {\r\n __extends(_Notebook, _super);\r\n function _Notebook() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n Object.defineProperty(_Notebook.prototype, \"sections\", {\r\n get: function () {\r\n return Sections(this);\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n return _Notebook;\r\n}(_GraphQueryableInstance));\r\nexport { _Notebook };\r\nexport var Notebook = graphInvokableFactory(_Notebook);\r\n/**\r\n * Describes a collection of Notebook objects\r\n *\r\n */\r\nvar _Notebooks = /** @class */ (function (_super) {\r\n __extends(_Notebooks, _super);\r\n function _Notebooks() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n /**\r\n * Create a new notebook as specified in the request body.\r\n *\r\n * @param displayName Notebook display name\r\n */\r\n _Notebooks.prototype.add = function (displayName) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var data;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0: return [4 /*yield*/, graphPost(this, body({ displayName: displayName }))];\r\n case 1:\r\n data = _a.sent();\r\n return [2 /*return*/, {\r\n data: data,\r\n notebook: this.getById(data.id),\r\n }];\r\n }\r\n });\r\n });\r\n };\r\n _Notebooks = __decorate([\r\n defaultPath(\"notebooks\"),\r\n getById(Notebook)\r\n ], _Notebooks);\r\n return _Notebooks;\r\n}(_GraphQueryableCollection));\r\nexport { _Notebooks };\r\nexport var Notebooks = graphInvokableFactory(_Notebooks);\r\n/**\r\n * Describes a sections instance\r\n */\r\nvar _Section = /** @class */ (function (_super) {\r\n __extends(_Section, _super);\r\n function _Section() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n return _Section;\r\n}(_GraphQueryableInstance));\r\nexport { _Section };\r\nexport var Section = graphInvokableFactory(_Section);\r\n/**\r\n * Describes a collection of Sections objects\r\n *\r\n */\r\nvar _Sections = /** @class */ (function (_super) {\r\n __extends(_Sections, _super);\r\n function _Sections() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n /**\r\n * Adds a new section\r\n *\r\n * @param displayName New section display name\r\n */\r\n _Sections.prototype.add = function (displayName) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var data;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0: return [4 /*yield*/, graphPost(this, body({ displayName: displayName }))];\r\n case 1:\r\n data = _a.sent();\r\n return [2 /*return*/, {\r\n data: data,\r\n section: this.getById(data.id),\r\n }];\r\n }\r\n });\r\n });\r\n };\r\n _Sections = __decorate([\r\n defaultPath(\"sections\"),\r\n getById(Section)\r\n ], _Sections);\r\n return _Sections;\r\n}(_GraphQueryableCollection));\r\nexport { _Sections };\r\nexport var Sections = graphInvokableFactory(_Sections);\r\n//# sourceMappingURL=types.js.map","import { addProp } from \"@pnp/odata\";\r\nimport { _User } from \"../users/types.js\";\r\nimport { OneNote } from \"./types.js\";\r\naddProp(_User, \"onenote\", OneNote);\r\n//# sourceMappingURL=users.js.map","import { __decorate, __extends } from \"tslib\";\r\nimport { _GraphQueryableInstance, graphInvokableFactory } from \"../graphqueryable.js\";\r\nimport { BlobParser, BufferParser } from \"@pnp/odata\";\r\nimport { defaultPath } from \"../decorators.js\";\r\nimport { graphPatch } from \"../operations.js\";\r\nvar _Photo = /** @class */ (function (_super) {\r\n __extends(_Photo, _super);\r\n function _Photo() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n /**\r\n * Gets the image bytes as a blob (browser)\r\n */\r\n _Photo.prototype.getBlob = function () {\r\n return this.clone(Photo, \"$value\", false).usingParser(new BlobParser())();\r\n };\r\n /**\r\n * Gets the image file bytes as a Buffer (node.js)\r\n */\r\n _Photo.prototype.getBuffer = function () {\r\n return this.clone(Photo, \"$value\", false).usingParser(new BufferParser())();\r\n };\r\n /**\r\n * Sets the file bytes\r\n *\r\n * @param content Image file contents, max 4 MB\r\n */\r\n _Photo.prototype.setContent = function (content) {\r\n return graphPatch(this.clone(Photo, \"$value\", false), { body: content });\r\n };\r\n _Photo = __decorate([\r\n defaultPath(\"photo\")\r\n ], _Photo);\r\n return _Photo;\r\n}(_GraphQueryableInstance));\r\nexport { _Photo };\r\nexport var Photo = graphInvokableFactory(_Photo);\r\n//# sourceMappingURL=types.js.map","import { addProp } from \"@pnp/odata\";\r\nimport { _Group } from \"../groups/types.js\";\r\nimport { Photo } from \"./types.js\";\r\naddProp(_Group, \"photo\", Photo);\r\n//# sourceMappingURL=groups.js.map","import { addProp } from \"@pnp/odata\";\r\nimport { _User } from \"../users/types.js\";\r\nimport { Photo } from \"./types.js\";\r\naddProp(_User, \"photo\", Photo);\r\n//# sourceMappingURL=users.js.map","import { __awaiter, __decorate, __extends, __generator } from \"tslib\";\r\nimport { assign } from \"@pnp/common\";\r\nimport { body } from \"@pnp/odata\";\r\nimport { _GraphQueryableInstance, _GraphQueryableCollection, graphInvokableFactory } from \"../graphqueryable.js\";\r\nimport { getById, deleteableWithETag, updateableWithETag } from \"../decorators.js\";\r\nimport { graphPost } from \"../operations.js\";\r\nimport { defaultPath } from \"../decorators.js\";\r\n/**\r\n * Planner\r\n */\r\nvar _Planner = /** @class */ (function (_super) {\r\n __extends(_Planner, _super);\r\n function _Planner() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n Object.defineProperty(_Planner.prototype, \"plans\", {\r\n // Should Only be able to get by id, or else error occur\r\n get: function () {\r\n return Plans(this);\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n Object.defineProperty(_Planner.prototype, \"tasks\", {\r\n // Should Only be able to get by id, or else error occur\r\n get: function () {\r\n return Tasks(this);\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n Object.defineProperty(_Planner.prototype, \"buckets\", {\r\n // Should Only be able to get by id, or else error occur\r\n get: function () {\r\n return Buckets(this);\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n _Planner = __decorate([\r\n defaultPath(\"planner\")\r\n ], _Planner);\r\n return _Planner;\r\n}(_GraphQueryableInstance));\r\nexport { _Planner };\r\nexport var Planner = graphInvokableFactory(_Planner);\r\n/**\r\n * Details\r\n */\r\nvar _PlanDetails = /** @class */ (function (_super) {\r\n __extends(_PlanDetails, _super);\r\n function _PlanDetails() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n _PlanDetails = __decorate([\r\n defaultPath(\"details\"),\r\n updateableWithETag()\r\n ], _PlanDetails);\r\n return _PlanDetails;\r\n}(_GraphQueryableInstance));\r\nexport { _PlanDetails };\r\nexport var PlanDetails = graphInvokableFactory(_PlanDetails);\r\n/**\r\n * Plan\r\n */\r\nvar _Plan = /** @class */ (function (_super) {\r\n __extends(_Plan, _super);\r\n function _Plan() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n Object.defineProperty(_Plan.prototype, \"tasks\", {\r\n get: function () {\r\n return Tasks(this);\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n Object.defineProperty(_Plan.prototype, \"buckets\", {\r\n get: function () {\r\n return Buckets(this);\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n Object.defineProperty(_Plan.prototype, \"details\", {\r\n get: function () {\r\n return PlanDetails(this);\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n _Plan = __decorate([\r\n updateableWithETag(),\r\n deleteableWithETag()\r\n ], _Plan);\r\n return _Plan;\r\n}(_GraphQueryableInstance));\r\nexport { _Plan };\r\nexport var Plan = graphInvokableFactory(_Plan);\r\nvar _Plans = /** @class */ (function (_super) {\r\n __extends(_Plans, _super);\r\n function _Plans() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n /**\r\n * Create a new Planner Plan.\r\n *\r\n * @param owner Id of Group object.\r\n * @param title The Title of the Plan.\r\n */\r\n _Plans.prototype.add = function (owner, title) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var data;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0: return [4 /*yield*/, graphPost(this, body({ owner: owner, title: title }))];\r\n case 1:\r\n data = _a.sent();\r\n return [2 /*return*/, {\r\n data: data,\r\n plan: this.getById(data.id),\r\n }];\r\n }\r\n });\r\n });\r\n };\r\n _Plans = __decorate([\r\n defaultPath(\"plans\"),\r\n getById(Plan)\r\n ], _Plans);\r\n return _Plans;\r\n}(_GraphQueryableCollection));\r\nexport { _Plans };\r\nexport var Plans = graphInvokableFactory(_Plans);\r\n/**\r\n * Details\r\n */\r\nvar _TaskDetails = /** @class */ (function (_super) {\r\n __extends(_TaskDetails, _super);\r\n function _TaskDetails() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n _TaskDetails = __decorate([\r\n defaultPath(\"details\"),\r\n updateableWithETag()\r\n ], _TaskDetails);\r\n return _TaskDetails;\r\n}(_GraphQueryableInstance));\r\nexport { _TaskDetails };\r\nexport var TaskDetails = graphInvokableFactory(_TaskDetails);\r\n/**\r\n * Task\r\n */\r\nvar _Task = /** @class */ (function (_super) {\r\n __extends(_Task, _super);\r\n function _Task() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n Object.defineProperty(_Task.prototype, \"details\", {\r\n get: function () {\r\n return TaskDetails(this);\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n _Task = __decorate([\r\n updateableWithETag(),\r\n deleteableWithETag()\r\n ], _Task);\r\n return _Task;\r\n}(_GraphQueryableInstance));\r\nexport { _Task };\r\nexport var Task = graphInvokableFactory(_Task);\r\n/**\r\n * Tasks\r\n */\r\nvar _Tasks = /** @class */ (function (_super) {\r\n __extends(_Tasks, _super);\r\n function _Tasks() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n /**\r\n * Create a new Planner Task.\r\n *\r\n * @param planId Id of Plan.\r\n * @param title The Title of the Task.\r\n * @param assignments Assign the task\r\n * @param bucketId Id of Bucket\r\n */\r\n _Tasks.prototype.add = function (planId, title, assignments, bucketId) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var postBody, data;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n postBody = assign({\r\n planId: planId,\r\n title: title,\r\n }, assignments);\r\n if (bucketId) {\r\n postBody = assign(postBody, {\r\n bucketId: bucketId,\r\n });\r\n }\r\n return [4 /*yield*/, graphPost(this, body(postBody))];\r\n case 1:\r\n data = _a.sent();\r\n return [2 /*return*/, {\r\n data: data,\r\n task: this.getById(data.id),\r\n }];\r\n }\r\n });\r\n });\r\n };\r\n _Tasks = __decorate([\r\n defaultPath(\"tasks\"),\r\n getById(Task)\r\n ], _Tasks);\r\n return _Tasks;\r\n}(_GraphQueryableCollection));\r\nexport { _Tasks };\r\nexport var Tasks = graphInvokableFactory(_Tasks);\r\n/**\r\n * Bucket\r\n */\r\nvar _Bucket = /** @class */ (function (_super) {\r\n __extends(_Bucket, _super);\r\n function _Bucket() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n Object.defineProperty(_Bucket.prototype, \"tasks\", {\r\n get: function () {\r\n return Tasks(this);\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n _Bucket = __decorate([\r\n updateableWithETag(),\r\n deleteableWithETag()\r\n ], _Bucket);\r\n return _Bucket;\r\n}(_GraphQueryableInstance));\r\nexport { _Bucket };\r\nexport var Bucket = graphInvokableFactory(_Bucket);\r\n/**\r\n * Buckets\r\n */\r\nvar _Buckets = /** @class */ (function (_super) {\r\n __extends(_Buckets, _super);\r\n function _Buckets() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n /**\r\n * Create a new Bucket.\r\n *\r\n * @param name Name of Bucket object.\r\n * @param planId The Id of the Plan.\r\n * @param oderHint Hint used to order items of this type in a list view.\r\n */\r\n _Buckets.prototype.add = function (name, planId, orderHint) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var postBody, data;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n postBody = {\r\n name: name,\r\n orderHint: orderHint ? orderHint : \"\",\r\n planId: planId,\r\n };\r\n return [4 /*yield*/, graphPost(this, body(postBody))];\r\n case 1:\r\n data = _a.sent();\r\n return [2 /*return*/, {\r\n bucket: this.getById(data.id),\r\n data: data,\r\n }];\r\n }\r\n });\r\n });\r\n };\r\n _Buckets = __decorate([\r\n defaultPath(\"buckets\"),\r\n getById(Bucket)\r\n ], _Buckets);\r\n return _Buckets;\r\n}(_GraphQueryableCollection));\r\nexport { _Buckets };\r\nexport var Buckets = graphInvokableFactory(_Buckets);\r\n//# sourceMappingURL=types.js.map","import { addProp } from \"@pnp/odata\";\r\nimport { _Group } from \"../groups/types.js\";\r\nimport { Plans } from \"./types.js\";\r\naddProp(_Group, \"plans\", Plans, \"planner/plans\");\r\n//# sourceMappingURL=groups.js.map","import { addProp } from \"@pnp/odata\";\r\nimport { _User } from \"../users/types.js\";\r\nimport { Tasks } from \"./types.js\";\r\naddProp(_User, \"tasks\", Tasks, \"planner/tasks\");\r\n//# sourceMappingURL=users.js.map","import { GraphRest } from \"../rest.js\";\r\nimport { Planner } from \"./types.js\";\r\nimport \"./groups.js\";\r\nimport \"./users.js\";\r\nexport { Bucket, Buckets, Plan, Planner, Plans, Task, Tasks, TaskDetails, PlanDetails, } from \"./types.js\";\r\nReflect.defineProperty(GraphRest.prototype, \"planner\", {\r\n configurable: true,\r\n enumerable: true,\r\n get: function () {\r\n return this.childConfigHook(function (_a) {\r\n var options = _a.options, baseUrl = _a.baseUrl, runtime = _a.runtime;\r\n return Planner(baseUrl).configure(options).setRuntime(runtime);\r\n });\r\n },\r\n});\r\n//# sourceMappingURL=index.js.map","import { __decorate, __extends } from \"tslib\";\r\nimport { body } from \"@pnp/odata\";\r\nimport { defaultPath } from \"../decorators.js\";\r\nimport { graphInvokableFactory, _GraphQueryableInstance } from \"../graphqueryable.js\";\r\nimport { graphPost } from \"../operations.js\";\r\n/**\r\n * Search\r\n */\r\nvar _Search = /** @class */ (function (_super) {\r\n __extends(_Search, _super);\r\n function _Search() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n _Search.prototype.executeQuery = function (request) {\r\n return graphPost(Search(this, \"query\"), body(request));\r\n };\r\n _Search = __decorate([\r\n defaultPath(\"search\")\r\n ], _Search);\r\n return _Search;\r\n}(_GraphQueryableInstance));\r\nexport { _Search };\r\nexport var Search = graphInvokableFactory(_Search);\r\n//# sourceMappingURL=types.js.map","import { __awaiter, __generator } from \"tslib\";\r\nimport { Search } from \"./types.js\";\r\nimport { GraphRest } from \"../rest.js\";\r\nexport { Search, } from \"./types.js\";\r\nGraphRest.prototype.query = function () {\r\n var requests = [];\r\n for (var _i = 0; _i < arguments.length; _i++) {\r\n requests[_i] = arguments[_i];\r\n }\r\n return __awaiter(this, void 0, void 0, function () {\r\n return __generator(this, function (_a) {\r\n return [2 /*return*/, this.childConfigHook(function (_a) {\r\n var options = _a.options, baseUrl = _a.baseUrl, runtime = _a.runtime;\r\n return Search(baseUrl).configure(options).setRuntime(runtime).executeQuery({ requests: requests });\r\n })];\r\n });\r\n });\r\n};\r\n//# sourceMappingURL=index.js.map","import { __awaiter, __decorate, __extends, __generator } from \"tslib\";\r\nimport { _GraphQueryableInstance, _GraphQueryableCollection, graphInvokableFactory } from \"../graphqueryable.js\";\r\nimport { assign } from \"@pnp/common\";\r\nimport { body } from \"@pnp/odata\";\r\nimport { defaultPath, deleteable, updateable, getById } from \"../decorators.js\";\r\nimport { graphPost } from \"../operations.js\";\r\n/**\r\n * Subscription\r\n */\r\nvar _Subscription = /** @class */ (function (_super) {\r\n __extends(_Subscription, _super);\r\n function _Subscription() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n _Subscription = __decorate([\r\n deleteable(),\r\n updateable()\r\n ], _Subscription);\r\n return _Subscription;\r\n}(_GraphQueryableInstance));\r\nexport { _Subscription };\r\nexport var Subscription = graphInvokableFactory(_Subscription);\r\n/**\r\n * Subscriptions\r\n */\r\nvar _Subscriptions = /** @class */ (function (_super) {\r\n __extends(_Subscriptions, _super);\r\n function _Subscriptions() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n /**\r\n * Create a new Subscription.\r\n *\r\n * @param changeType Indicates the type of change in the subscribed resource that will raise a notification. The supported values are: created, updated, deleted.\r\n * @param notificationUrl The URL of the endpoint that will receive the notifications. This URL must make use of the HTTPS protocol.\r\n * @param resource Specifies the resource that will be monitored for changes. Do not include the base URL (https://graph.microsoft.com/v1.0/).\r\n * @param expirationDateTime Specifies the date and time when the webhook subscription expires. The time is in UTC.\r\n * @param props A plain object collection of additional properties you want to set on the new subscription\r\n *\r\n */\r\n _Subscriptions.prototype.add = function (changeType, notificationUrl, resource, expirationDateTime, props) {\r\n if (props === void 0) { props = {}; }\r\n return __awaiter(this, void 0, void 0, function () {\r\n var postBody, data;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n postBody = assign({\r\n changeType: changeType,\r\n expirationDateTime: expirationDateTime,\r\n notificationUrl: notificationUrl,\r\n resource: resource,\r\n }, props);\r\n return [4 /*yield*/, graphPost(this, body(postBody))];\r\n case 1:\r\n data = _a.sent();\r\n return [2 /*return*/, {\r\n data: data,\r\n subscription: this.getById(data.id),\r\n }];\r\n }\r\n });\r\n });\r\n };\r\n _Subscriptions = __decorate([\r\n defaultPath(\"subscriptions\"),\r\n getById(Subscription)\r\n ], _Subscriptions);\r\n return _Subscriptions;\r\n}(_GraphQueryableCollection));\r\nexport { _Subscriptions };\r\nexport var Subscriptions = graphInvokableFactory(_Subscriptions);\r\n//# sourceMappingURL=types.js.map","import { GraphRest } from \"../rest.js\";\r\nimport { Subscriptions } from \"./types.js\";\r\nexport { Subscription, Subscriptions, } from \"./types.js\";\r\nReflect.defineProperty(GraphRest.prototype, \"subscriptions\", {\r\n configurable: true,\r\n enumerable: true,\r\n get: function () {\r\n return this.childConfigHook(function (_a) {\r\n var options = _a.options, baseUrl = _a.baseUrl, runtime = _a.runtime;\r\n return Subscriptions(baseUrl).configure(options).setRuntime(runtime);\r\n });\r\n },\r\n});\r\n//# sourceMappingURL=index.js.map","import { __awaiter, __decorate, __extends, __generator } from \"tslib\";\r\nimport { _GraphQueryableInstance, _GraphQueryableCollection, graphInvokableFactory, GraphQueryableInstance } from \"../graphqueryable\";\r\nimport { body, LambdaParser } from \"@pnp/odata\";\r\nimport { assign } from \"@pnp/common\";\r\nimport { updateable, getById, deleteable } from \"../decorators\";\r\nimport { graphPost } from \"../operations\";\r\nimport { defaultPath } from \"../decorators\";\r\n/**\r\n * Represents a Microsoft Team\r\n */\r\nvar _Team = /** @class */ (function (_super) {\r\n __extends(_Team, _super);\r\n function _Team() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n Object.defineProperty(_Team.prototype, \"channels\", {\r\n get: function () {\r\n return Channels(this);\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n /**\r\n * Archives this Team\r\n *\r\n * @param shouldSetSpoSiteReadOnlyForMembers Should members have Read-only in associated Team Site\r\n */\r\n _Team.prototype.archive = function (shouldSetSpoSiteReadOnlyForMembers) {\r\n if (shouldSetSpoSiteReadOnlyForMembers === void 0) { shouldSetSpoSiteReadOnlyForMembers = false; }\r\n return graphPost(this.clone(Team, \"archive\"), body({ shouldSetSpoSiteReadOnlyForMembers: shouldSetSpoSiteReadOnlyForMembers }));\r\n };\r\n /**\r\n * Unarchives this Team\r\n */\r\n _Team.prototype.unarchive = function () {\r\n return graphPost(this.clone(Team, \"unarchive\"));\r\n };\r\n /**\r\n * Clones this Team\r\n * @param name The name of the new Group\r\n * @param description Optional description of the group\r\n * @param partsToClone Parts to clone ex: apps,tabs,settings,channels,members\r\n * @param visibility Set visibility to public or private\r\n */\r\n _Team.prototype.cloneTeam = function (name, description, partsToClone, visibility) {\r\n if (description === void 0) { description = \"\"; }\r\n if (partsToClone === void 0) { partsToClone = \"apps,tabs,settings,channels,members\"; }\r\n if (visibility === void 0) { visibility = \"private\"; }\r\n return __awaiter(this, void 0, void 0, function () {\r\n var postBody, parser, creator, data, result, location_1, locationArray;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n postBody = {\r\n description: description ? description : \"\",\r\n displayName: name,\r\n mailNickname: name,\r\n partsToClone: partsToClone,\r\n visibility: visibility,\r\n };\r\n parser = new LambdaParser(function (r) { return Promise.resolve(r.headers); });\r\n creator = Teams(this, \"clone\").usingParser(parser);\r\n return [4 /*yield*/, graphPost(creator, body(postBody))];\r\n case 1:\r\n data = _a.sent();\r\n result = { teamId: \"\", operationId: \"\" };\r\n if (data.has(\"location\")) {\r\n location_1 = data.get(\"location\");\r\n locationArray = location_1.split(\"/\");\r\n if (locationArray.length === 3) {\r\n result.teamId = locationArray[1].substring(locationArray[1].indexOf(\"'\") + 1, locationArray[1].lastIndexOf(\"'\"));\r\n result.operationId = locationArray[2].substring(locationArray[2].indexOf(\"'\") + 1, locationArray[2].lastIndexOf(\"'\"));\r\n }\r\n }\r\n return [2 /*return*/, result];\r\n }\r\n });\r\n });\r\n };\r\n _Team.prototype.getOperationById = function (id) {\r\n return GraphQueryableInstance(this, \"operations/\" + id)();\r\n };\r\n _Team = __decorate([\r\n defaultPath(\"team\"),\r\n updateable()\r\n ], _Team);\r\n return _Team;\r\n}(_GraphQueryableInstance));\r\nexport { _Team };\r\nexport var Team = graphInvokableFactory(_Team);\r\n/**\r\n * Teams\r\n */\r\nvar _Teams = /** @class */ (function (_super) {\r\n __extends(_Teams, _super);\r\n function _Teams() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n _Teams.prototype.create = function (team) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var parser, creator, data, result, location_2, locationArray;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n parser = new LambdaParser(function (r) { return Promise.resolve(r.headers); });\r\n creator = Teams(this, null).usingParser(parser);\r\n return [4 /*yield*/, graphPost(creator, body(team))];\r\n case 1:\r\n data = _a.sent();\r\n result = { teamId: \"\", operationId: \"\" };\r\n if (data.has(\"location\")) {\r\n location_2 = data.get(\"location\");\r\n locationArray = location_2.split(\"/\");\r\n if (locationArray.length === 3) {\r\n result.teamId = locationArray[1].substring(locationArray[1].indexOf(\"'\") + 1, locationArray[1].lastIndexOf(\"'\"));\r\n result.operationId = locationArray[2].substring(locationArray[2].indexOf(\"'\") + 1, locationArray[2].lastIndexOf(\"'\"));\r\n }\r\n }\r\n return [2 /*return*/, result];\r\n }\r\n });\r\n });\r\n };\r\n _Teams = __decorate([\r\n defaultPath(\"teams\"),\r\n getById(Team)\r\n ], _Teams);\r\n return _Teams;\r\n}(_GraphQueryableCollection));\r\nexport { _Teams };\r\nexport var Teams = graphInvokableFactory(_Teams);\r\n/**\r\n * Channel\r\n */\r\nvar _Channel = /** @class */ (function (_super) {\r\n __extends(_Channel, _super);\r\n function _Channel() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n Object.defineProperty(_Channel.prototype, \"tabs\", {\r\n get: function () {\r\n return Tabs(this);\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n return _Channel;\r\n}(_GraphQueryableInstance));\r\nexport { _Channel };\r\nexport var Channel = graphInvokableFactory(_Channel);\r\n/**\r\n * Channels\r\n */\r\nvar _Channels = /** @class */ (function (_super) {\r\n __extends(_Channels, _super);\r\n function _Channels() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n /**\r\n * Creates a new Channel in the Team\r\n * @param displayName The display name of the new channel\r\n * @param description Optional description of the channel\r\n *\r\n */\r\n _Channels.prototype.add = function (displayName, description) {\r\n if (description === void 0) { description = \"\"; }\r\n return __awaiter(this, void 0, void 0, function () {\r\n var postBody, data;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n postBody = {\r\n description: description,\r\n displayName: displayName,\r\n };\r\n return [4 /*yield*/, graphPost(this, body(postBody))];\r\n case 1:\r\n data = _a.sent();\r\n return [2 /*return*/, {\r\n channel: this.getById(data.id),\r\n data: data,\r\n }];\r\n }\r\n });\r\n });\r\n };\r\n _Channels = __decorate([\r\n defaultPath(\"channels\"),\r\n getById(Channel)\r\n ], _Channels);\r\n return _Channels;\r\n}(_GraphQueryableCollection));\r\nexport { _Channels };\r\nexport var Channels = graphInvokableFactory(_Channels);\r\n/**\r\n * Tab\r\n */\r\nvar _Tab = /** @class */ (function (_super) {\r\n __extends(_Tab, _super);\r\n function _Tab() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n _Tab = __decorate([\r\n defaultPath(\"tab\"),\r\n updateable(),\r\n deleteable()\r\n ], _Tab);\r\n return _Tab;\r\n}(_GraphQueryableInstance));\r\nexport { _Tab };\r\nexport var Tab = graphInvokableFactory(_Tab);\r\n/**\r\n * Tabs\r\n */\r\nvar _Tabs = /** @class */ (function (_super) {\r\n __extends(_Tabs, _super);\r\n function _Tabs() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n /**\r\n * Adds a tab to the channel\r\n * @param name The name of the new Tab\r\n * @param appUrl The url to an app ex: https://graph.microsoft.com/beta/appCatalogs/teamsApps/12345678-9abc-def0-123456789a\r\n * @param tabsConfiguration visit https://developer.microsoft.com/en-us/graph/docs/api-reference/v1.0/api/teamstab_add for reference\r\n */\r\n _Tabs.prototype.add = function (name, appUrl, properties) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var postBody, data;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n postBody = assign({\r\n displayName: name,\r\n \"teamsApp@odata.bind\": appUrl,\r\n }, properties);\r\n return [4 /*yield*/, graphPost(this, body(postBody))];\r\n case 1:\r\n data = _a.sent();\r\n return [2 /*return*/, {\r\n data: data,\r\n tab: this.getById(data.id),\r\n }];\r\n }\r\n });\r\n });\r\n };\r\n _Tabs = __decorate([\r\n defaultPath(\"tabs\"),\r\n getById(Tab)\r\n ], _Tabs);\r\n return _Tabs;\r\n}(_GraphQueryableCollection));\r\nexport { _Tabs };\r\nexport var Tabs = graphInvokableFactory(_Tabs);\r\n//# sourceMappingURL=types.js.map","import { addProp } from \"@pnp/odata\";\r\nimport { _User } from \"../users/types.js\";\r\nimport { Teams } from \"./types.js\";\r\naddProp(_User, \"joinedTeams\", Teams, \"joinedTeams\");\r\n//# sourceMappingURL=users.js.map","import { __awaiter, __generator } from \"tslib\";\r\nimport { addProp, body } from \"@pnp/odata\";\r\nimport { GraphRest } from \"../rest\";\r\nimport { _Group, Group } from \"../groups/types\";\r\nimport { Team, Teams } from \"./types\";\r\nimport { graphPut } from \"../operations\";\r\nimport \"./users\";\r\nexport { Channel, Channels, Tab, Tabs, Team, Teams, } from \"./types.js\";\r\naddProp(_Group, \"team\", Team);\r\n_Group.prototype.createTeam = function (props) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var data;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0: return [4 /*yield*/, graphPut(this.clone(Group, \"team\"), body(props))];\r\n case 1:\r\n data = _a.sent();\r\n return [2 /*return*/, {\r\n data: data,\r\n team: this.team,\r\n }];\r\n }\r\n });\r\n });\r\n};\r\nReflect.defineProperty(GraphRest.prototype, \"teams\", {\r\n configurable: true,\r\n enumerable: true,\r\n get: function () {\r\n return this.childConfigHook(function (_a) {\r\n var options = _a.options, baseUrl = _a.baseUrl, runtime = _a.runtime;\r\n return Teams(baseUrl).configure(options).setRuntime(runtime);\r\n });\r\n },\r\n});\r\n//# sourceMappingURL=index.js.map","import { GraphRest } from \"../rest.js\";\r\nimport { User, Users } from \"./types.js\";\r\nexport { User, Users, People, } from \"./types.js\";\r\nReflect.defineProperty(GraphRest.prototype, \"me\", {\r\n configurable: true,\r\n enumerable: true,\r\n get: function () {\r\n return this.childConfigHook(function (_a) {\r\n var options = _a.options, baseUrl = _a.baseUrl, runtime = _a.runtime;\r\n return User(baseUrl, \"me\").configure(options).setRuntime(runtime);\r\n });\r\n },\r\n});\r\nReflect.defineProperty(GraphRest.prototype, \"users\", {\r\n configurable: true,\r\n enumerable: true,\r\n get: function () {\r\n return this.childConfigHook(function (_a) {\r\n var options = _a.options, baseUrl = _a.baseUrl, runtime = _a.runtime;\r\n return Users(baseUrl).configure(options).setRuntime(runtime);\r\n });\r\n },\r\n});\r\n//# sourceMappingURL=index.js.map","import { Logger } from \"@pnp/logging\";\r\nimport { PnPClientStorage, dateAdd, combine, getCtxCallback, getRandomString, getGUID, isFunc, objectDefinedNotNull, isArray, assign, isUrlAbsolute, stringIsNullOrEmpty, sanitizeGuid, } from \"@pnp/common\";\r\nimport { Settings } from \"@pnp/config-store\";\r\nimport { sp as _sp } from \"@pnp/sp-addinhelpers\";\r\nimport { setup as _setup } from \"./pnplibconfig.js\";\r\nimport { graph as _graph } from \"@pnp/graph\";\r\n// trigger attachment of all functionality to mimic the previous pnpjs impl\r\nimport \"@pnp/sp/presets/all\";\r\nimport \"@pnp/graph/presets/all\";\r\n/**\r\n * Re-export everything from the dependencies to match the previous pattern\r\n */\r\nexport * from \"@pnp/common\";\r\nexport * from \"@pnp/logging\";\r\nexport * from \"@pnp/config-store\";\r\nexport * from \"@pnp/odata\";\r\nexport * from \"./sp-ns.js\";\r\nexport * from \"./graph-ns.js\";\r\n/**\r\n * Utility methods\r\n */\r\nexport var util = {\r\n assign: assign,\r\n combine: combine,\r\n dateAdd: dateAdd,\r\n getCtxCallback: getCtxCallback,\r\n getGUID: getGUID,\r\n getRandomString: getRandomString,\r\n isArray: isArray,\r\n isFunc: isFunc,\r\n isUrlAbsolute: isUrlAbsolute,\r\n objectDefinedNotNull: objectDefinedNotNull,\r\n sanitizeGuid: sanitizeGuid,\r\n stringIsNullOrEmpty: stringIsNullOrEmpty,\r\n};\r\n/**\r\n * Provides access to the SharePoint REST interface\r\n */\r\nexport var sp = _sp;\r\n/**\r\n * Provides access to the SharePoint REST interface\r\n */\r\nexport var graph = _graph;\r\n/**\r\n * Provides access to local and session storage\r\n */\r\nexport var storage = new PnPClientStorage();\r\n/**\r\n * Global configuration instance to which providers can be added\r\n */\r\nexport var config = new Settings();\r\n/**\r\n * Global logging instance to which subscribers can be registered and messages written\r\n */\r\nexport var log = Logger;\r\n/**\r\n * Allows for the configuration of the library\r\n */\r\nexport var setup = _setup;\r\n// creating this class instead of directly assigning to default fixes a previous issue\r\nvar Def = {\r\n /**\r\n * Global configuration instance to which providers can be added\r\n */\r\n config: config,\r\n /**\r\n * Provides access to the Graph REST interface\r\n */\r\n graph: graph,\r\n /**\r\n * Global logging instance to which subscribers can be registered and messages written\r\n */\r\n log: log,\r\n /**\r\n * Provides access global setup method\r\n */\r\n setup: setup,\r\n /**\r\n * Provides access to the SharePoint REST interface\r\n */\r\n sp: sp,\r\n /**\r\n * Provides access to local and session storage\r\n */\r\n storage: storage,\r\n /**\r\n * Utility methods\r\n */\r\n util: util,\r\n};\r\n/**\r\n * Enables use of the import pnp from syntax\r\n */\r\nexport default Def;\r\n//# sourceMappingURL=index.js.map","import { DefaultRuntime } from \"@pnp/common\";\r\nexport function setup(config) {\r\n DefaultRuntime.assign(config);\r\n}\r\n//# sourceMappingURL=pnplibconfig.js.map"],"sourceRoot":""}