{"version":3,"mappings":"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","names":["InfoLegalComponent","constructor","language","translationStore","sanitizer","this","ngAfterContentInit","imprintText","FindTranslationForSelectedLanguage","cleanedHtml","_cleanHtml","sanitizedImprintText","bypassSecurityTrustHtml","url","K","SelectedLanguage","_a","Key","formConfig","ApDynformsConfigFieldset","key","columns","legend","config","html","replace","i0","selectors","ElementRef","_c0","pdfJsViewer","destroy$","globalEventBus","EventBus","attachDOMEventsToEventBus","eventBus","fromEvent","pipe","takeUntil","subscribe","event","document","createEvent","initCustomEvent","window","dispatchEvent","pageNumber","cssTransform","source","div","textLayerDiv","initEvent","container","pagesCount","scale","presetValue","location","type","query","phraseSearch","caseSensitive","highlightAll","findPrevious","attachmentsCount","view","outerContainer","mode","pdfViewer","action","active","switchInProgress","outlineCount","obj","prop","value","isSSR","assign","PDFJS","RenderTextMode","DISABLED","ENABLED","ENHANCED","PdfViewerComponent","element","ngZone","isVisible","_cMapsUrl","_renderText","_renderTextMode","_stickToPage","_originalSize","_page","_zoom","_zoomScale","_rotation","_showAll","_canAutoResize","_fitToPage","_externalLinkTarget","_showBorders","resizeTimeout","pageScrollTimeout","isInitialized","Subject","afterLoadComplete","EventEmitter","pageRendered","pageInitialized","textLayerRendered","onError","onProgress","pageChange","pdfWorkerSrc","hasOwnProperty","cMapsUrl","page","originalPage","parseInt","_pdf","getValidPageNumber","emit","renderText","renderTextMode","originalSize","showAll","stickToPage","zoom","zoomScale","rotation","console","warn","externalLinkTarget","autoresize","Boolean","fitToPage","showBorders","ngAfterViewChecked","offset","pdfViewerContainer","nativeElement","offsetParent","setTimeout","initialize","ngOnChanges","src","ngOnInit","setupResizeListener","ngOnDestroy","clear","next","loadingTask","pdfLinkService","pdfMultiPageLinkService","pdfSinglePageLinkService","getCurrentViewer","pdfFindController","pdfMultiPageFindController","pdfSinglePageFindController","changes","loadPDF","textLayerMode","resetPdfDocument","currentValue","_latestScrolledPage","scrollPageIntoView","update","updateSize","currentViewer","from","getPage","currentPageNumber","rotate","viewportWidth","getViewport","width","CSS_UNITS","clientWidth","viewPort","getScale","height","_setScale","destroyed","destroy","pdfMultiPageViewer","setDocument","pdfSinglePageViewer","getPDFLinkServiceConfig","pdfLinkServiceConfig","linkTarget","getLinkTarget","setupMultiPageViewer","createEventBus","PDFJSViewer","clearTimeout","Object","linkService","pdfOptions","querySelector","removePageBorders","findController","renderer","l10n","undefined","setViewer","setupSinglePageViewer","_currentPageNumber","numPages","getDocumentParams","srcType","params","cMapUrl","cMapPacked","byteLength","data","lastLoaded","progressData","promise","pdf","error","render","pagesRotation","viewportHeight","borderSize","BORDER_WIDTH","pdfContainerWidth","pdfContainerHeight","clientHeight","ratio","Math","min","runOutsideAngular","debounceTime","filter","ɵfac","t","ɵngcc0","ɵcmp","viewQuery","rf","ctx","_t","first","inputs","outputs","features","decls","vars","consts","template","styles","PdfViewerModule","ɵmod","ɵinj","ctx_r5","ctx_r7","ApPdfViewerComponent","languageStore","mapViewStore","domSanitizer","route","of","routeData","snapshot","caption","length","relativePath","Ue","hideMap","hideMapView","showMapView","showZoomButtons","showDownloadButton","BuildPdfPathFromRelative","absolutePath","BuildPdfPathFromAbsolute","startsWith","APP_CONFIGURATION","secureUrl","sanitize","SecurityContext","bypassSecurityTrustResourceUrl","filename","loading$","errorLoading","zoomOut","zoomIn","InfoAgreementComponent","ContactInformationStore","Store","backend","super","loaded","loading","registerObservable","ContactInformationLoadSuccess","d","Mutate","s","Data","SetLoadFinishState","AfterDatabaseUpdate","ReloadSource","loadContactInformation","DispatchBackend","ContactInformationLoad","factory","VersionInfoStore","VersionInfoLoadSuccess","VersionInfoLoad","InfoVersionComponent","versionInfoStore","Listen","getDataFromStore","_subscriptions","push","version","__awaiter","versionInfo","forEach","unsubscribe","InfoImprintComponent","elementRef","translationService","mapStore","contactInformationStore","imprintTextElement","innerHTML","infos","Layers","ContactLayer","replaceSource","ZoomIn","formBuilder","label","ApDynformsComponent","routes","path","component","windowHelper","openSite","RemoveContactLayer","configData","info","ApDynformsConfigLabelIcon","Language_Key","Img_Src_Path","label1","text1","Tel","label2","text2","Email","InfoContactComponent","login","layout","PageMode","ApInfoRoutes","RouterModule","ApPdfViewerModule","CommonModule","ApTranslationModule","ApTooltipModule","ApDynformsModule","ButtonModule","ApInfoModule","imports","ReactiveFormsModule","ApCoreModule","ApIconModule","LayoutModule","ApStatisticsModule","ApLayoutModule","SplitButtonModule","InputsModule","ComboBoxModule","DateInputsModule","DropDownsModule","FormsModule","GridModule","SharedModule","BodyModule","ApUtilsModule","PagerModule","HeaderModule","ApSectionHeaderModule","ApResponsiveTextModule","ApDynComponentModule","__webpack_modules__","__unused_webpack_module","exports","__w_pdfjs_require__","_typeof","Symbol","iterator","prototype","defineProperty","addLinkAttributes","link","_ref4","arguments","target","rel","_ref4$enabled","enabled","_util","assert","urlNullRemoved","removeNullCharacters","href","title","concat","onclick","targetStr","LinkTarget","NONE","SELF","BLANK","PARENT","TOP","DEFAULT_LINK_REL","deprecated","details","log","getFilenameFromUrl","anchor","indexOf","end","substring","lastIndexOf","getPdfFilenameFromUrl","defaultFilename","isDataScheme","reURI","reFilename","splitURI","exec","suggestedFilename","includes","decodeURIComponent","ex","getXfaPageViewport","xfaPage","_ref6","_ref6$scale","_ref6$rotation","_xfaPage$attributes$s","attributes","style","viewBox","PageViewport","isPdfFile","test","isValidFetchUrl","loadScript","removeScriptElement","Promise","resolve","reject","script","createElement","onload","evt","remove","onerror","Error","head","documentElement","appendChild","StatTimer","RenderingCancelledException","PixelsPerInch","PDFDateString","DOMSVGFactory","DOMStandardFontDataFactory","DOMCMapReaderFactory","DOMCanvasFactory","_regenerator","__esModule","default","_interopRequireDefault","_base_factory","o","allowArrayLike","it","Array","isArray","minLen","_arrayLikeToArray","n","toString","call","slice","name","_unsupportedIterableToArray","i","F","done","e","_e","f","TypeError","err","normalCompletion","didErr","step","_e2","return","arr","len","arr2","gen","_next","_throw","arg","then","fn","self","args","apply","asyncGeneratorStep","instance","Constructor","props","descriptor","enumerable","configurable","writable","protoProps","staticProps","_defineProperties","subClass","superClass","create","_setPrototypeOf","p","setPrototypeOf","__proto__","Derived","hasNativeReflectConstruct","Reflect","construct","sham","Proxy","valueOf","_isNativeReflectConstruct","result","Super","_getPrototypeOf","NewTarget","_possibleConstructorReturn","ReferenceError","_assertThisInitialized","getPrototypeOf","CSS","PDF","PDF_TO_CSS_UNITS","shadow","_BaseCanvasFactory","_inherits","_super","_createSuper","_this","_ref","_ref$ownerDocument","ownerDocument","globalThis","_classCallCheck","_document","_createClass","canvas","BaseCanvasFactory","_x","_fetchData","_asyncToGenerator","mark","asTypedArray","response","_args","wrap","_context","prev","baseURI","fetch","sent","ok","statusText","t1","Uint8Array","arrayBuffer","t2","t0","t3","stringToBytes","text","t4","abrupt","request","XMLHttpRequest","open","responseType","onreadystatechange","readyState","DONE","status","responseText","send","stop","_callee","_BaseCMapReaderFactor","_super2","compressionType","fetchData","isCompressed","cMapData","BaseCMapReaderFactory","_BaseStandardFontData","_super3","BaseStandardFontDataFactory","_BaseSVGFactory","_super4","createElementNS","BaseSVGFactory","_ref2","_ref2$offsetX","offsetX","_ref2$offsetY","offsetY","_ref2$dontFlip","dontFlip","rotateA","rotateB","rotateC","rotateD","offsetCanvasX","offsetCanvasY","centerX","centerY","abs","transform","_ref3","_ref3$scale","_ref3$rotation","_ref3$offsetX","_ref3$offsetY","_ref3$dontFlip","x","y","Util","applyTransform","rect","topLeft","bottomRight","applyInverseTransform","_BaseException","_super5","msg","_this2","BaseException","pdfDateStringRegex","ii","trim","toLowerCase","baseUrl","protocol","URL","started","times","Date","now","start","_step","outBuf","longest","_iterator","_createForOfIteratorHelper","_step2","_iterator2","_time","duration","padEnd","join","input","isString","RegExp","matches","year","month","day","hour","minute","second","universalTimeRelation","offsetHour","offsetMinute","Pe","UTC","module","__unused_webpack_exports","runtime","Op","hasOwn","$Symbol","iteratorSymbol","asyncIteratorSymbol","asyncIterator","toStringTagSymbol","toStringTag","define","innerFn","outerFn","tryLocsList","generator","Generator","context","Context","_invoke","state","GenStateSuspendedStart","method","GenStateExecuting","GenStateCompleted","doneResult","delegate","delegateResult","maybeInvokeDelegate","ContinueSentinel","_sent","dispatchException","record","tryCatch","GenStateSuspendedYield","makeInvokeMethod","IteratorPrototype","getProto","NativeIteratorPrototype","values","Gp","GeneratorFunctionPrototype","PromiseImpl","__await","invoke","unwrapped","previousPromise","callInvokeWithMethodAndArg","resultName","nextLoc","locs","entry","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","completion","pushTryEntry","reset","iterable","iteratorMethod","isNaN","GeneratorFunction","displayName","isGeneratorFunction","genFun","ctor","awrap","defineIteratorMethods","AsyncIterator","async","iter","keys","object","reverse","pop","skipTempReset","resetTryEntry","charAt","rootRecord","rval","exception","loc","caught","handle","hasCatch","hasFinally","finallyEntry","complete","c","finish","catch","thrown","delegateYield","nmd","regeneratorRuntime","accidentalStrictMode","Function","_arrayWithHoles","_i","_s","_arr","_n","_d","_iterableToArrayLimit","_nonIterableRest","arrayByteLength","arraysToBytes","resultLength","pos","item","itemLength","set","bytesToString","bytes","String","fromCharCode","strBuf","chunkEnd","chunk","subarray","createObjectURL","contentType","forceDataSchema","Blob","digits","buffer","b1","b2","b3","d1","d2","d3","d4","createPromiseCapability","capability","isSettled","get","reason","createValidAbsoluteUrl","options","addDefaultProtocol","dots","match","tryConvertEncoding","stringToUTF8String","absoluteUrl","_isValidProtocol","escapeString","str","getModificationDate","date","getUTCFullYear","getUTCMonth","padStart","getUTCDate","getUTCHours","getUTCMinutes","getUTCSeconds","getVerbosityLevel","verbosity","VerbosityLevel","INFOS","isArrayBuffer","v","isArrayEqual","arr1","isAscii","isBool","isNum","isSameOrigin","otherUrl","base","origin","other","objectFromMap","map","_e3","_step$value","_slicedToArray","objectSize","NullCharactersRegExp","setVerbosityLevel","level","Number","isInteger","string32","stringToPDFString","charCodeAt","_i2","_i3","code","PDFStringTranslateTable","stringToUTF16BEString","buf","_char","unreachable","utf8StringToString","unescape","encodeURIComponent","UNSUPPORTED_FEATURES","UnknownErrorException","UnexpectedResponseException","TextRenderingMode","StreamType","RenderingIntentFlag","PermissionFlag","PasswordResponses","PasswordException","PageActionEventType","OPS","MissingPDFException","IsLittleEndianCached","IsEvalSupportedCached","InvalidPDFException","ImageKind","IDENTITY_MATRIX","FormatError","FontType","FONT_IDENTITY_MATRIX","DocumentActionEventType","CMapCompressionType","AnnotationType","AnnotationStateModelType","AnnotationReviewState","AnnotationReplyType","AnnotationMode","AnnotationMarkedState","AnnotationFlag","AnnotationFieldFlag","AnnotationBorderStyleType","AnnotationActionEventType","AbortException","ANY","DISPLAY","PRINT","ANNOTATIONS_FORMS","ANNOTATIONS_STORAGE","ANNOTATIONS_DISABLE","OPLIST","DISABLE","ENABLE","ENABLE_FORMS","ENABLE_STORAGE","MODIFY_CONTENTS","COPY","MODIFY_ANNOTATIONS","FILL_INTERACTIVE_FORMS","COPY_FOR_ACCESSIBILITY","ASSEMBLE","PRINT_HIGH_QUALITY","FILL","STROKE","FILL_STROKE","INVISIBLE","FILL_ADD_TO_PATH","STROKE_ADD_TO_PATH","FILL_STROKE_ADD_TO_PATH","ADD_TO_PATH","FILL_STROKE_MASK","ADD_TO_PATH_FLAG","GRAYSCALE_1BPP","RGB_24BPP","RGBA_32BPP","TEXT","LINK","FREETEXT","LINE","SQUARE","CIRCLE","POLYGON","POLYLINE","HIGHLIGHT","UNDERLINE","SQUIGGLY","STRIKEOUT","STAMP","CARET","INK","POPUP","FILEATTACHMENT","SOUND","MOVIE","WIDGET","SCREEN","PRINTERMARK","TRAPNET","WATERMARK","THREED","REDACT","MARKED","REVIEW","UNMARKED","ACCEPTED","REJECTED","CANCELLED","COMPLETED","GROUP","REPLY","HIDDEN","NOZOOM","NOROTATE","NOVIEW","READONLY","LOCKED","TOGGLENOVIEW","LOCKEDCONTENTS","REQUIRED","NOEXPORT","MULTILINE","PASSWORD","NOTOGGLETOOFF","RADIO","PUSHBUTTON","COMBO","EDIT","SORT","FILESELECT","MULTISELECT","DONOTSPELLCHECK","DONOTSCROLL","COMB","RICHTEXT","RADIOSINUNISON","COMMITONSELCHANGE","SOLID","DASHED","BEVELED","INSET","E","X","D","U","Fo","Bl","PO","PC","PV","PI","V","C","WC","WS","DS","WP","DP","O","UNKNOWN","FLATE","LZW","DCT","JPX","JBIG","A85","AHX","CCF","RLX","TYPE1","TYPE1STANDARD","TYPE1C","CIDFONTTYPE0","CIDFONTTYPE0C","TRUETYPE","CIDFONTTYPE2","TYPE3","OPENTYPE","TYPE0","MMTYPE1","ERRORS","WARNINGS","BINARY","STREAM","dependency","setLineWidth","setLineCap","setLineJoin","setMiterLimit","setDash","setRenderingIntent","setFlatness","setGState","save","restore","moveTo","lineTo","curveTo","curveTo2","curveTo3","closePath","rectangle","stroke","closeStroke","fill","eoFill","fillStroke","eoFillStroke","closeFillStroke","closeEOFillStroke","endPath","clip","eoClip","beginText","endText","setCharSpacing","setWordSpacing","setHScale","setLeading","setFont","setTextRenderingMode","setTextRise","moveText","setLeadingMoveText","setTextMatrix","nextLine","showText","showSpacedText","nextLineShowText","nextLineSetSpacingShowText","setCharWidth","setCharWidthAndBounds","setStrokeColorSpace","setFillColorSpace","setStrokeColor","setStrokeColorN","setFillColor","setFillColorN","setStrokeGray","setFillGray","setStrokeRGBColor","setFillRGBColor","setStrokeCMYKColor","setFillCMYKColor","shadingFill","beginInlineImage","beginImageData","endInlineImage","paintXObject","markPoint","markPointProps","beginMarkedContent","beginMarkedContentProps","endMarkedContent","beginCompat","endCompat","paintFormXObjectBegin","paintFormXObjectEnd","beginGroup","endGroup","beginAnnotations","endAnnotations","beginAnnotation","endAnnotation","paintJpegXObject","paintImageMaskXObject","paintImageMaskXObjectGroup","paintImageXObject","paintInlineImageXObject","paintInlineImageXObjectGroup","paintImageXObjectRepeat","paintImageMaskXObjectRepeat","paintSolidColorImageMask","constructPath","unknown","forms","javaScript","signatures","smask","shadingPattern","font","errorTilingPattern","errorExtGState","errorXObject","errorFontLoadType3","errorFontState","errorFontMissing","errorFontTranslate","errorColorSpace","errorOperatorList","errorFontToUnicode","errorFontLoadNative","errorFontBuildPath","errorFontGetPath","errorMarkedContent","errorContentSubStream","NEED_PASSWORD","INCORRECT_PASSWORD","cond","message","_BaseException2","_BaseException3","_BaseException4","_BaseException5","_this3","_BaseException6","_super6","_BaseException7","_super7","buffer8","Uint32Array","isLittleEndian","isEvalSupported","hexNumbers","_arrayWithoutHoles","_iterableToArray","_nonIterableSpread","_toConsumableArray","r","g","b","m1","m2","m","p1","p2","p3","p4","max","transpose","a","sqrt","pow","sy","rect1","rect2","orderedX","sort","compare","orderedY","normalizeRect","escape","_is_node","_pdfjsCompatibilityChecked","btoa","isNodeJS","chars","Buffer","atob","DOMMatrix","fromEntries","allSettled","ReadableStream","process","versions","nw","electron","$","global","getOwnPropertyDescriptor","createNonEnumerableProperty","redefine","setGlobal","copyConstructorProperties","isForced","targetProperty","sourceProperty","TARGET","GLOBAL","STATIC","stat","noTargetGet","forced","check","DESCRIPTORS","propertyIsEnumerableModule","createPropertyDescriptor","toIndexedObject","toPropertyKey","has","IE8_DOM_DEFINE","$getOwnPropertyDescriptor","P","fails","$propertyIsEnumerable","propertyIsEnumerable","NASHORN_BUG","bitmap","IndexedObject","requireObjectCoercible","classof","split","toPrimitive","isSymbol","argument","isObject","ordinaryToPrimitive","TO_PRIMITIVE","wellKnownSymbol","pref","exoticToPrim","getBuiltIn","USE_SYMBOL_AS_UID","aFunction","variable","namespace","NATIVE_SYMBOL","V8_VERSION","getOwnPropertySymbols","symbol","userAgent","Deno","v8","val","shared","uid","WellKnownSymbolsStore","createWellKnownSymbol","withoutSetter","IS_PURE","store","copyright","SHARED","toObject","id","postfix","random","EXISTS","definePropertyModule","anObject","$defineProperty","Attributes","inspectSource","InternalStateModule","getInternalState","enforceInternalState","enforce","TEMPLATE","unsafe","simple","functionToString","NATIVE_WEAK_MAP","objectHas","sharedKey","hiddenKeys","OBJECT_ALREADY_INITIALIZED","WeakMap","wmget","wmhas","wmset","metadata","facade","STATE","getterFor","TYPE","ownKeys","getOwnPropertyDescriptorModule","getOwnPropertyNamesModule","getOwnPropertySymbolsModule","internalObjectKeys","getOwnPropertyNames","names","toLength","toAbsoluteIndex","createMethod","IS_INCLUDES","$this","el","fromIndex","index","toInteger","ceil","floor","integer","replacement","feature","detection","normalize","POLYFILL","NATIVE","string","__WEBPACK_AMD_DEFINE_FACTORY__","__WEBPACK_AMD_DEFINE_RESULT__","CSSMatrix","setIdentity","setMatrixValue","prototypeAccessors","isIdentity","is2D","m11","m12","m13","m14","m21","m22","m23","m24","m31","m32","m33","m34","m41","m42","m43","m44","defineProperties","CSSMatrixProto","z","rx","ry","rz","radX","radY","radZ","cosx","cos","sinx","sin","cosy","siny","cosz","sinz","cycz","cysz","sxsy","cxcz","angle","radA","sinA","cosA","sinA2","Y","Z","x2","y2","z2","tan","array","m11$1","m12$1","m21$1","m22$1","m14$1","m24$1","feedFromArray","toArray","transposed","u","multiply","Multiply","translate","Translate","Scale","RX","RY","RZ","Rotate","rotateAxisAngle","RotateAxisAngle","skewX","SkewX","skewY","SkewY","transformPoint","w","fromMatrix","fromArray","addToUnscopables","Iterators","defineIterator","ARRAY_ITERATOR","setInternalState","iterated","kind","Arguments","UNSCOPABLES","ArrayPrototype","activeXDocument","enumBugKeys","documentCreateElement","PROTOTYPE","SCRIPT","IE_PROTO","EmptyConstructor","scriptTag","content","LT","NullProtoObjectViaActiveX","write","close","temp","parentWindow","NullProtoObject","ActiveXObject","domain","iframeDocument","iframe","display","contentWindow","NullProtoObjectViaIFrame","Properties","objectKeys","createIteratorConstructor","setToStringTag","IteratorsCore","BUGGY_SAFARI_ITERATORS","ITERATOR","KEYS","VALUES","ENTRIES","returnThis","Iterable","NAME","IteratorConstructor","DEFAULT","IS_SET","FORCED","CurrentIteratorPrototype","methods","KEY","getIterationMethod","KIND","defaultIterator","IterablePrototype","TO_STRING_TAG","INCORRECT_VALUES_NAME","nativeIterator","anyNativeIterator","entries","proto","PrototypeOfArrayIteratorPrototype","arrayIterator","CORRECT_PROTOTYPE_GETTER","ObjectPrototype","TAG","aPossiblePrototype","setter","CORRECT_SETTER","iterate","createProperty","k","AS_ENTRIES","isArrayIteratorMethod","bind","getIterator","getIteratorMethod","iteratorClose","Result","stopped","unboundFunction","iterFn","IS_ITERATOR","INTERRUPTED","that","condition","callFn","usingIterator","TO_STRING_TAG_SUPPORT","classofRaw","CORRECT_ARGUMENTS","tag","tryGet","callee","innerResult","innerError","propertyKey","$AggregateError","errors","errorsArray","AggregateError","Internal","OwnPromiseCapability","PromiseWrapper","nativeThen","NativePromise","redefineAll","setSpecies","anInstance","checkCorrectnessOfIteration","speciesConstructor","task","microtask","promiseResolve","hostReportErrors","newPromiseCapabilityModule","perform","IS_BROWSER","IS_NODE","SPECIES","PROMISE","getInternalPromiseState","NativePromisePrototype","PromiseConstructor","PromiseConstructorPrototype","newPromiseCapability","newGenericPromiseCapability","DISPATCH_EVENT","NATIVE_REJECTION_EVENT","PromiseRejectionEvent","UNHANDLED_REJECTION","SUBCLASSING","PROMISE_CONSTRUCTOR_SOURCE","GLOBAL_CORE_JS_PROMISE","finally","FakePromise","INCORRECT_ITERATION","all","isThenable","notify","isReject","notified","chain","reactions","exited","reaction","handler","fail","rejection","onHandleUnhandled","enter","exit","ke","onUnhandled","isUnhandled","parent","unwrap","internalReject","internalResolve","wrapper","executor","onFulfilled","onRejected","$promiseResolve","counter","remaining","alreadyCalled","race","CONSTRUCTOR_NAME","SAFE_CLOSING","called","iteratorWithReturn","SKIP_CLOSING","ITERATION_SUPPORT","defaultConstructor","S","defer","channel","port","IS_IOS","setImmediate","clearImmediate","MessageChannel","Dispatch","queue","ONREADYSTATECHANGE","run","runner","listener","post","postMessage","host","argumentsLength","nextTick","port2","port1","onmessage","addEventListener","importScripts","removeChild","flush","last","toggle","node","macrotask","IS_IOS_PEBBLE","IS_WEBOS_WEBKIT","MutationObserver","WebKitMutationObserver","queueMicrotaskDescriptor","queueMicrotask","createTextNode","observe","characterData","Pebble","promiseCapability","PromiseCapability","$$resolve","$$reject","PROMISE_ANY_ERROR","any","alreadyResolved","alreadyRejected","real","onFinally","isFunction","STRING_ITERATOR","point","CONVERT_TO_STRING","position","size","codeAt","SymbolPolyfill","description","globals","getGlobals","rethrowAssertionErrorRejection","noop","originalPromise","originalPromiseThen","originalPromiseResolve","originalPromiseReject","PerformPromiseThen","uponPromise","fulfillmentHandler","rejectionHandler","globalQueueMicrotask","resolvedPromise","promiseResolvedWith","reflectCall","promiseRejectedWith","SimpleQueue","_cursor","_size","_front","_elements","_back","oldBack","newBack","QUEUE_MAX_ARRAY_SIZE","shift","oldFront","newFront","oldCursor","newCursor","elements","callback","peek","reader","stream","_ownerReadableStream","_reader","_state","defaultReaderClosedPromiseInitialize","defaultReaderClosedPromiseResolve","defaultReaderClosedPromiseInitializeAsResolved","defaultReaderClosedPromiseInitializeAsRejected","_storedError","ReadableStreamCancel","defaultReaderClosedPromiseReject","defaultReaderClosedPromiseResetToRejected","_closedPromise","newPromise","_closedPromise_resolve","_closedPromise_reject","setPromiseIsHandledToTrue","AbortSteps","ErrorSteps","CancelSteps","PullSteps","NumberIsFinite","isFinite","MathTrunc","trunc","isDictionary","field","upperBound","MAX_SAFE_INTEGER","censorNegativeZero","integerPart","IsReadableStream","ReadableStreamDefaultReader","readRequest","_readRequests","_closeSteps","_chunkSteps","IsReadableStreamDefaultReader","AsyncIteratorPrototype","assertRequiredArgument","assertReadableStream","IsReadableStreamLocked","ReadableStreamReaderGenericInitialize","defaultReaderBrandCheckException","cancel","ie","readerLockException","ReadableStreamReaderGenericCancel","read","resolvePromise","rejectPromise","ReadableStreamDefaultReaderRead","_errorSteps","releaseLock","ReadableStreamReaderGenericRelease","typeIsObject","_disturbed","_readableStreamController","closed","ReadableStreamAsyncIteratorImpl","preventCancel","_ongoingPromise","_isFinished","_preventCancel","nextSteps","_nextSteps","transformPromiseWith","returnSteps","_returnSteps","ReadableStreamAsyncIteratorPrototype","IsReadableStreamAsyncIterator","_asyncIteratorImpl","streamAsyncIteratorBrandCheckException","NumberIsNaN","dest","destOffset","srcOffset","begin","ArrayBuffer","CopyDataBlockBytes","ArrayBufferSlice","byteOffset","pair","_queue","_queueTotalSize","IsNonNegativeNumber","Infinity","RangeError","ReadableStreamBYOBRequest","IsReadableStreamBYOBRequest","byobRequestBrandCheckException","_view","respond","bytesWritten","convertUnsignedLongLongWithEnforceRange","_associatedReadableByteStreamController","ReadableByteStreamControllerRespond","respondWithNewView","isView","ReadableByteStreamControllerRespondWithNewView","ReadableByteStreamController","IsReadableByteStreamController","byteStreamControllerBrandCheckException","ReadableByteStreamControllerGetBYOBRequest","ReadableByteStreamControllerGetDesiredSize","_closeRequested","_controlledReadableByteStream","ReadableByteStreamControllerClose","enqueue","ReadableByteStreamControllerEnqueue","ReadableByteStreamControllerError","ReadableByteStreamControllerClearPendingPullIntos","ResetQueue","_cancelAlgorithm","ReadableByteStreamControllerClearAlgorithms","ReadableByteStreamControllerHandleQueueDrain","autoAllocateChunkSize","_autoAllocateChunkSize","bufferE","pullIntoDescriptor","bufferByteLength","bytesFilled","elementSize","viewConstructor","readerType","_pendingPullIntos","ReadableStreamAddReadRequest","ReadableByteStreamControllerCallPullIfNeeded","controller","_started","ReadableStreamHasDefaultReader","ReadableStreamGetNumReadRequests","ReadableStreamHasBYOBReader","ReadableStreamGetNumReadIntoRequests","ReadableByteStreamControllerShouldCallPull","_pulling","_pullAgain","_pullAlgorithm","ReadableByteStreamControllerInvalidateBYOBRequest","filledView","ReadableByteStreamControllerConvertPullIntoDescriptor","ReadableStreamFulfillReadRequest","readIntoRequest","_readIntoRequests","ReadableStreamFulfillReadIntoRequest","currentAlignedBytes","maxBytesToCopy","maxBytesFilled","maxAlignedBytes","totalBytesToCopyRemaining","ready","headOfQueue","bytesToCopy","tt","ReadableByteStreamControllerFillHeadPullIntoDescriptor","ReadableStreamClose","_byobRequest","ReadableByteStreamControllerFillPullIntoDescriptorFromQueue","ReadableByteStreamControllerShiftPendingPullInto","ReadableByteStreamControllerCommitPullIntoDescriptor","firstDescriptor","ReadableByteStreamControllerRespondInClosedState","remainderSize","remainder","ReadableByteStreamControllerEnqueueChunkToQueue","ReadableByteStreamControllerProcessPullIntoDescriptorsUsingQueue","ReadableByteStreamControllerRespondInReadableState","transferredBuffer","firstPendingPullInto","TransferArrayBuffer","ReadableStreamError","byobRequest","SetUpReadableStreamBYOBRequest","_strategyHWM","ReadableByteStreamControllerRespondInternal","startAlgorithm","pullAlgorithm","cancelAlgorithm","highWaterMark","ReadableStreamBYOBReader","IsReadableStreamBYOBReader","desiredSize","byobReaderBrandCheckException","Mt","ReadableStreamBYOBReaderRead","ge","DataView","BYTES_PER_ELEMENT","ReadableStreamAddReadIntoRequest","emptyView","ReadableByteStreamControllerPullInto","strategy","defaultHWM","init","assertDictionary","convertUnrestrictedDouble","convertQueuingStrategySize","assertFunction","original","promiseCall","IsWritableStream","supportsAbortController","AbortController","WritableStream","rawUnderlyingSink","rawStrategy","assertObject","convertQueuingStrategy","underlyingSink","abort","convertUnderlyingSinkAbortCallback","convertUnderlyingSinkCloseCallback","convertUnderlyingSinkStartCallback","convertUnderlyingSinkWriteCallback","convertUnderlyingSink","InitializeWritableStream","sizeAlgorithm","ExtractSizeAlgorithm","WritableStreamDefaultController","writeAlgorithm","closeAlgorithm","abortAlgorithm","SetUpWritableStreamDefaultController","SetUpWritableStreamDefaultControllerFromUnderlyingSink","ExtractHighWaterMark","streamBrandCheckException$2","IsWritableStreamLocked","Vt","WritableStreamAbort","WritableStreamCloseQueuedOrInFlight","WritableStreamClose","getWriter","AcquireWritableStreamDefaultWriter","WritableStreamDefaultWriter","_writer","_writableStreamController","_writeRequests","_inFlightWriteRequest","_closeRequest","_inFlightCloseRequest","_pendingAbortRequest","_backpressure","_abortReason","_abortController","_promise","wasAlreadyErroring","_resolve","_reject","_reason","_wasAlreadyErroring","WritableStreamStartErroring","writer","defaultWriterReadyPromiseResolve","EnqueueValueWithSize","closeSentinel","WritableStreamDefaultControllerAdvanceQueueIfNeeded","WritableStreamDefaultControllerClose","WritableStreamFinishErroring","WritableStreamDefaultWriterEnsureReadyPromiseRejected","WritableStreamHasOperationMarkedInFlight","storedError","writeRequest","abortRequest","WritableStreamRejectCloseAndClosedPromiseIfNeeded","defaultWriterClosedPromiseReject","backpressure","defaultWriterReadyPromiseInitialize","defaultWriterReadyPromiseReset","locked","assertWritableStream","_ownerWritableStream","defaultWriterReadyPromiseInitializeAsResolved","defaultWriterClosedPromiseInitialize","defaultWriterReadyPromiseInitializeAsRejected","defaultWriterClosedPromiseResolve","defaultWriterClosedPromiseInitializeAsResolved","defaultWriterClosedPromiseInitializeAsRejected","IsWritableStreamDefaultWriter","defaultWriterBrandCheckException","defaultWriterLockException","WritableStreamDefaultControllerGetDesiredSize","WritableStreamDefaultWriterGetDesiredSize","_readyPromise","Ft","WritableStreamDefaultWriterAbort","WritableStreamDefaultWriterClose","WritableStreamDefaultWriterRelease","WritableStreamDefaultWriterWrite","_closedPromiseState","defaultWriterClosedPromiseResetToRejected","_readyPromiseState","defaultWriterReadyPromiseReject","defaultWriterReadyPromiseResetToRejected","releasedError","WritableStreamDefaultWriterEnsureClosedPromiseRejected","chunkSize","_strategySizeAlgorithm","chunkSizeE","WritableStreamDefaultControllerErrorIfNeeded","WritableStreamDefaultControllerGetChunkSize","WritableStreamAddWriteRequest","WritableStreamDefaultControllerWrite","enqueueE","_controlledWritableStream","WritableStreamUpdateBackpressure","WritableStreamDefaultControllerGetBackpressure","IsWritableStreamDefaultController","defaultControllerBrandCheckException$2","signal","WritableStreamDefaultControllerError","_abortAlgorithm","WritableStreamDefaultControllerClearAlgorithms","createAbortController","_writeAlgorithm","_closeAlgorithm","WritableStreamDealWithRejection","PeekQueueValue","WritableStreamMarkCloseRequestInFlight","DequeueValue","sinkClosePromise","WritableStreamFinishInFlightClose","WritableStreamFinishInFlightCloseWithError","WritableStreamDefaultControllerProcessClose","WritableStreamMarkFirstWriteRequestInFlight","WritableStreamFinishInFlightWrite","WritableStreamFinishInFlightWriteWithError","WritableStreamDefaultControllerProcessWrite","_readyPromise_resolve","_readyPromise_reject","NativeDOMException","DOMException","DOMException$1","isDOMExceptionConstructor","captureStackTrace","createDOMExceptionPolyfill","preventClose","preventAbort","AcquireReadableStreamDefaultReader","shuttingDown","currentWrite","actions","shutdownWithAction","aborted","isOrBecomesErrored","shutdown","uponFulfillment","isOrBecomesClosed","WritableStreamDefaultWriterCloseWithErrorPropagation","destClosed_1","oldCurrentWrite","waitForWritesToFinish","uponRejection","originalIsError","originalError","finalize","newError","doTheRest","isError","removeEventListener","qe","resolveLoop","rejectLoop","resolveRead","rejectRead","pipeStep","pipeLoop","ReadableStreamDefaultController","IsReadableStreamDefaultController","defaultControllerBrandCheckException$1","ReadableStreamDefaultControllerGetDesiredSize","ReadableStreamDefaultControllerCanCloseOrEnqueue","ReadableStreamDefaultControllerClose","ReadableStreamDefaultControllerEnqueue","ReadableStreamDefaultControllerError","ReadableStreamDefaultControllerClearAlgorithms","_controlledReadableStream","ReadableStreamDefaultControllerCallPullIfNeeded","ReadableStreamDefaultControllerShouldCallPull","cloneForBranch2","reason1","reason2","branch1","branch2","resolveCancelPromise","reading","canceled1","canceled2","cancelPromise","thisReader","forwardReaderError","chunk1","chunk2","CloneAsUint8Array","cloneE","forBranch2","AcquireReadableStreamBYOBReader","byobBranch","otherBranch","byobCanceled","clonedChunk","otherCanceled","pullWithDefaultReader","pullWithBYOBReader","compositeReason","CreateArrayFromList","cancelResult","CreateReadableByteStream","pull1Algorithm","cancel1Algorithm","pull2Algorithm","cancel2Algorithm","ReadableByteStreamTee","CreateReadableStream","ReadableStreamDefaultTee","isAbortSignal","assertAbortSignal","rawUnderlyingSource","underlyingSource","pull","convertUnderlyingSourceCancelCallback","convertUnderlyingSourcePullCallback","convertUnderlyingSourceStartCallback","convertReadableStreamType","convertUnderlyingDefaultOrByteSource","InitializeReadableStream","underlyingByteSource","SetUpReadableByteStreamController","SetUpReadableByteStreamControllerFromUnderlyingSource","SetUpReadableStreamDefaultController","SetUpReadableStreamDefaultControllerFromUnderlyingSource","streamBrandCheckException$1","Ot","getReader","rawOptions","convertReadableStreamReaderMode","convertReaderOptions","pipeThrough","rawTransform","readable","assertRequiredField","convertReadableWritablePair","convertPipeOptions","ReadableStreamPipeTo","pipeTo","destination","tee","ReadableStreamTee","impl","AcquireReadableStreamAsyncIterator","convertIteratorOptions","byteLengthSizeFunction","ByteLengthQueuingStrategy","convertQueuingStrategyInit","_byteLengthQueuingStrategyHighWaterMark","IsByteLengthQueuingStrategy","byteLengthBrandCheckException","countSizeFunction","CountQueuingStrategy","_countQueuingStrategyHighWaterMark","IsCountQueuingStrategy","countBrandCheckException","TransformStream","rawTransformer","rawWritableStrategy","rawReadableStrategy","writableStrategy","readableStrategy","transformer","readableType","writableType","convertTransformerFlushCallback","convertTransformerStartCallback","convertTransformerTransformCallback","convertTransformer","startPromise_resolve","readableHighWaterMark","readableSizeAlgorithm","writableHighWaterMark","writableSizeAlgorithm","startPromise","_transformStreamController","_backpressureChangePromise","_writable","TransformStreamDefaultControllerPerformTransform","TransformStreamDefaultSinkWriteAlgorithm","TransformStreamError","TransformStreamDefaultSinkAbortAlgorithm","_readable","flushPromise","_flushAlgorithm","TransformStreamDefaultControllerClearAlgorithms","TransformStreamDefaultSinkCloseAlgorithm","TransformStreamSetBackpressure","TransformStreamDefaultSourcePullAlgorithm","TransformStreamErrorWritableAndUnblockWrite","CreateWritableStream","_backpressureChangePromise_resolve","InitializeTransformStream","TransformStreamDefaultController","transformAlgorithm","TransformStreamDefaultControllerEnqueue","transformResultE","flushAlgorithm","_controlledTransformStream","_transformAlgorithm","SetUpTransformStreamDefaultController","SetUpTransformStreamDefaultControllerFromTransformer","Ve","IsTransformStream","streamBrandCheckException","IsTransformStreamDefaultController","defaultControllerBrandCheckException","TransformStreamDefaultControllerError","terminate","TransformStreamDefaultControllerTerminate","readableController","ReadableStreamDefaultControllerHasBackpressure","_createCanvas","getContext","canvasAndContext","_ref$baseUrl","_ref$isCompressed","_fetch","_ref3$baseUrl","_fetch2","_context2","_callee2","_x2","svg","_createSVG","setAttribute","getDocument","setPDFNetworkStreamFactory","RenderTask","PDFWorker","PDFPageProxy","PDFDocumentProxy","PDFDocumentLoadingTask","PDFDataRangeTransport","LoopbackPort","DefaultStandardFontDataFactory","DefaultCMapReaderFactory","DefaultCanvasFactory","build","_display_utils","_font_loader","_node_utils","_annotation_storage","_canvas","_worker_options","_message_handler","_metadata","_optional_content_config","_transport_stream","_xfa_text","DEFAULT_RANGE_CHUNK_SIZE","RENDERING_CANCELLED_TIMEOUT","NodeCanvasFactory","NodeCMapReaderFactory","NodeStandardFontDataFactory","createPDFNetworkStream","pdfNetworkStreamFactory","range","rangeTransport","worker","rangeChunkSize","CMapReaderFactory","StandardFontDataFactory","ignoreErrors","stopAtErrors","fontExtraProperties","pdfBug","enableXfa","docBaseUrl","maxImageSize","useWorkerFetch","disableFontFace","useSystemFonts","disableRange","disableStream","disableAutoFetch","workerParams","GlobalWorkerOptions","workerPort","fromPort","_worker","docId","workerIdPromise","_fetchDocument","networkStreamPromise","networkStream","PDFDataTransportStream","initialData","progressiveDone","contentDispositionFilename","httpHeaders","withCredentials","workerId","messageHandler","MessageHandler","postMessageTransfers","transport","WorkerTransport","_transport","_capability","_x3","_x4","_fetchDocument2","pdfDataRangeTransport","_context6","sendWithPromise","apiVersion","password","standardFontDataUrl","_callee6","idCounters","doc","onPassword","onUnsupportedFeature","_destroy","_this$_transport","_rangeListeners","_progressListeners","_progressiveReadListeners","_progressiveDoneListeners","_readyCapability","total","_step3","_iterator3","_step4","_iterator4","pdfInfo","_pdfInfo","fingerprints","annotationStorage","_htmlForXfa","ref","getPageIndex","getDestinations","getDestination","getPageLabels","getPageLayout","getPageMode","getViewerPreferences","getOpenAction","getAttachments","getJavaScript","getDocJSActions","getOutline","getOptionalContentConfig","getPermissions","getMetadata","getMarkInfo","getData","downloadInfoCapability","getStats","keepLoadedFonts","startCleanup","isPureXfa","loadingParams","saveDocument","getFieldObjects","hasJSActions","getCalculationOrderIds","pageIndex","pageInfo","_pageIndex","_pageInfo","_ownerDocument","_stats","_pdfBug","commonObjs","objs","PDFObjects","cleanupAfterRender","pendingCleanup","_intentStates","Map","_annotationPromises","userUnit","_ref4$intent","intent","intentArgs","getRenderingIntent","cacheKey","getAnnotations","renderingIntent","annotations","_step5","_iterator5","_loop","annotation","titleObj","contentsObj","_jsActionsPromise","getPageJSActions","_getXfa","_this$_transport$_htm","children","_ref5","_arguments$","_arguments$2","_intentState","_this4","canvasContext","viewport","_ref5$intent","_ref5$annotationMode","annotationMode","_ref5$transform","_ref5$imageLayer","imageLayer","_ref5$canvasFactory","canvasFactory","_ref5$background","background","_ref5$optionalContent","optionalContentConfigPromise","renderInteractiveForms","includeAnnotationStorage","time","intentState","streamReaderCancelTimeout","canvasFactoryInstance","intentPrint","displayReadyCapability","operatorList","fnArray","argsArray","lastChunk","_pumpOperatorList","renderTasks","delete","internalRenderTask","_tryCleanup","_abortOperatorList","timeEnd","InternalRenderTask","useRequestAnimationFrame","Set","add","renderTask","_ref7","transparency","optionalContentConfig","initializeGraphics","operatorListChanged","_ref8","_ref8$intent","_ref8$annotationMode","opListReadCapability","opListTask","_intentState2","_ref9","_ref9$normalizeWhites","normalizeWhitespace","_ref9$disableCombineT","disableCombineTextItems","_ref9$includeMarkedCo","includeMarkedContent","TEXT_CONTENT_CHUNK_SIZE","sendWithStream","combineTextItems","textContent","items","getXfa","xfa","XfaText","readableStream","streamTextContent","_ref10","_textContent$items","pump","_structTreePromise","getStructTree","pageCache","_step6","waitOn","_iterator6","force","_step7","_iterator7","completed","resetStats","_step8","_iterator8","_step8$value","operatorListChunk","_step9","_iterator9","_ref11","_this5","serializable","streamReader","_ref12","_renderPageChunk","_step10","_iterator10","_ref13","_this6","_ref13$force","_step11","_iterator11","_step11$value","cleanup","_listeners","_deferred","transfers","_this7","cloned","_step12","_iterator12","_step12$value","cloneValue","_step13","_iterator13","_val","_value$hasOwnProperty","desc","_step14","_iterator14","splice","PDFWorkerUtil","isWorkerDisabled","fallbackWorkerSrc","fakeWorkerId","_document$currentScri","pdfjsFilePath","currentScript","createCDNWrapper","_ref14","_ref14$name","_ref14$port","_ref14$verbosity","_workerPorts","_port","_webWorker","_messageHandler","_initializeFromPort","_initialize","on","_this8","Worker","_mainThreadWorkerMessageHandler","workerSrc","terminateEarly","onWorkerError","_setupFakeWorker","supportTransfers","sendTest","testObj","_this9","_setupFakeWorkerGlobal","WorkerMessageHandler","workerHandler","setup","_globalThis$pdfjsWork","pdfjsWorker","_this10","loader","_ref15","mainWorkerMessageHandler","_context3","eval","_callee3","getWorkerSrc","fontLoader","FontLoader","_onUnsupportedFeature","styleElement","_params","destroyCapability","_passwordCapability","_networkStream","_fullReader","_lastProgress","pagePromises","setupMessageHandler","AnnotationStorage","isOpList","lastModified","_this11","_step15","_iterator15","resetModified","terminated","_getFieldObjectsPromise","_hasJSActionsPromise","cancelAllRequests","_this12","sink","getFullReader","onPull","_ref16","onCancel","readyReason","headersCapability","fullReader","headersReady","isStreamingSupported","isRangeSupported","contentLength","rangeReader","getRangeReader","_ref17","_ref18","_numPages","htmlForXfa","_startRenderPage","_globalThis$FontInspe","_data","exportedData","exportedError","fontRegistry","FontInspector","registerFont","fontAdded","FontFaceObject","_imageData$data","_data2","imageData","pageProxy","_ref19","featureId","_this13","_this$_fullReader$fil","_this$_fullReader","_this14","results","OptionalContentConfig","_this15","_this15$_fullReader$f","_this15$_fullReader","_this15$_fullReader$c","_this15$_fullReader2","Metadata","_startCleanup","_args4","_context4","_callee4","_objs","objId","resolved","_ensureObj","_internalRenderTask","onContinue","_ref20","_ref20$useRequestAnim","_ref20$pdfBug","operatorListIdx","running","graphicsReadyCallback","graphicsReady","_useRequestAnimationFrame","cancelled","_cancelBound","_continueBound","_continue","_scheduleNextBound","_scheduleNext","_nextBound","_ref21","_globalThis$StepperMa","_ref21$transparency","canvasInUse","StepperManager","stepper","nextBreakPoint","getNextBreakPoint","_this$params","gfx","CanvasGraphics","beginDrawing","endDrawing","updateOperatorList","_this16","requestAnimationFrame","_next2","_context5","executeOperatorList","_callee5","WeakSet","BaseFontLoader","nativeFontFaces","nativeFontFace","fonts","rule","getElementsByTagName","styleSheet","sheet","insertRule","cssRules","_bind","attached","missingFile","isFontLoadingAPISupported","createNativeFontFace","addNativeFontFace","family","createFontFaceRule","isSyncFontLoadingSupported","_queueLoadingCallback","_prepareFontLoadEvent","_this$_document","hasFonts","rules","fontsToLoad","_BaseFontLoader","GenericFontLoader","loadingContext","requests","nextRequestId","loadTestFontId","supported","navigator","otherRequest","insert","_loadTestFont","XXXX_VALUE","checksum","int32","spliceString","loadedName","visibility","top","left","_names","span","fontFamily","body","fillText","getImageData","isFontReady","translatedData","_ref2$isEvalSupported","_ref2$disableFontFace","_ref2$ignoreErrors","_ref2$fontRegistry","compiledGlyphs","cssFontInfo","css","weight","fontWeight","italicAngle","FontFace","mimetype","character","cmds","jsBuf","current","cmd","_current","require","readFile","createCanvas","_storage","_timeStamp","_modified","onSetModified","onResetModified","defaultValue","modified","_Object$entries","_Object$entries$_i","_setModified","_pattern_helper","MAX_GROUP_SIZE","FULL_CHUNK_HEIGHT","mozCurrentTransform","_originalSave","_originalRestore","_originalRotate","_originalScale","_originalTranslate","_originalTransform","_originalSetTransform","setTransform","_originalResetTransform","resetTransform","_transformMatrix","_transformStack","_setLineWidth","_getLineWidth","_","_this$_transformMatri","ad_bc","bc_ad","old","cosValue","sinValue","CachedCanvases","cache","trackTransform","canvasEntry","addContextCurrentTransform","LRUCache","maxSize","_cache","_maxSize","CanvasExtraState","alphaIsShape","fontSize","fontSizeScale","textMatrix","textMatrixScale","fontMatrix","leading","lineX","lineY","charSpacing","wordSpacing","textHScale","textRenderingMode","textRise","fillColor","strokeColor","patternFill","fillAlpha","strokeAlpha","lineWidth","activeSMask","resumeSMaskCtx","transferMaps","imgData","ImageData","putImageData","destPos","j","thisChunkHeight","elemsInThisChunk","transferMapRed","transferMapGreen","transferMapBlue","transferMapGray","partialChunkHeight","fullChunks","totalChunks","chunkImgData","createImageData","srcPos","srcLength","dest32","dest32DataLength","fullSrcDiff","white","black","srcDiff","kEnd","kEndUnrolled","mask","srcByte","hasTransferMaps","_k","_k2","_hasTransferMaps","_k3","elem","sourceCtx","destCtx","properties","property","setLineDash","getLineDash","lineDashOffset","strokeStyle","fillStyle","fillRule","globalAlpha","lineCap","lineJoin","miterLimit","globalCompositeOperation","r0","g0","b0","alpha","alpha_","maskData","layerData","transferMap","layerCtx","maskCtx","scaleX","scaleY","subtype","backdrop","composeFn","hasBackdrop","composeSMaskLuminosity","composeSMaskAlpha","row","chunkHeight","composeSMaskBackdrop","genericComposeSMask","drawImage","interpolate","singularValueDecompose2dScale","fround","actualScale","devicePixelRatio","LINE_CAP_STYLES","LINE_JOIN_STYLES","NORMAL_CLIP","EO_CLIP","canvasCtx","stateStack","pendingClip","pendingEOFill","res","xobjs","groupStack","processingType3","baseTransform","baseTransformStack","groupLevel","smaskStack","smaskCounter","tempSMask","contentVisible","markedContentStack","cachedCanvases","cachedCanvasPatterns","cachedPatterns","_cachedGetSinglePixelWidth","_ref2$transparency","_ref2$background","fillRect","transparentCanvas","getCanvas","compositeCtx","resetCtxToDefault","_combinedScaleFactor","hypot","beginLayout","executionStartIdx","continueCallback","argsArrayLen","fnId","chunkOperations","endTime","steps","breakIt","depObjId","objsPool","endLayout","img","inverseTransform","tmpCanvas","tmpCtx","widthScale","heightScale","paintWidth","paintHeight","tmpCanvasId","newWidth","newHeight","clearRect","isPatternFill","maskCanvas","putBinaryImageMask","maskToCanvas","cord1","cord2","drawnWidth","drawnHeight","fillCanvas","fillCtx","scaled","_scaleImage","mozCurrentTransformInverse","imageSmoothingEnabled","getImageSmoothingEnabled","inverse","getPattern","round","limit","dashArray","dashPhase","flatness","states","suspendSMaskGroup","endSMaskGroup","beginSMaskGroup","scratchCanvas","currentCtx","currentTransform","groupCtx","startTransformInverse","copyCtxState","composeSMask","deltaTransform","clone","resumeSMaskGroup","ops","xw","yh","bezierCurveTo","setCurrentPoint","consumePath","getSinglePixelWidth","_lineWidth","needRestore","paths","pendingTextPaths","beginPath","addToPath","spacing","fontRefName","fontObj","fontDirection","isType3Font","bold","italic","typeface","fallbackName","browserFontSize","rise","patternTransform","resetLineWidthToOne","fillStrokeMode","isAddToPathSet","getPathGenerator","strokeText","glyphs","showType3Text","glyphsLength","vertical","spacingDir","defaultVMetrics","widthAdvanceScale","simpleFillText","pattern","xe","glyph","restoreNeeded","isSpace","fontChar","accent","scaledX","scaledY","vmetric","vx","remeasure","measuredWidth","measureText","isFontSubpixelAAEnabled","characterScaleX","isInFont","paintChar","spacingLength","charProcOperatorList","operatorListId","transformed","xWidth","yWidth","llx","lly","urx","ury","IR","color","TilingPattern","createCanvasGraphics","_getPattern","getColorN_Pattern","makeHexColor","matrix","getShadingPattern","inv","bl","br","ul","ur","x0","y0","x1","y1","bbox","group","isolated","knockout","bounds","getAxialAlignedBoundingBox","intersect","cacheId","compiled","j0","POINT_TYPES","width1","points","lineSize","data0","count","sum","Int32Array","outlines","coords","p0","pp","kk","l","ll","compileType3Glyph","_createMaskCanvas","positions","trans","_Util$applyTransform","_Util$applyTransform2","images","image","h","imgToPaint","HTMLElement","putBinaryImageData","getCanvasPosition","appendImage","visible","isContentVisible","absDet","sqNorm1","sqNorm2","pixelHeight","EPSILON","op","RadialAxialShadingPattern","MeshShadingPattern","DummyShadingPattern","Path2D","region","BaseShadingPattern","_BaseShadingPattern","_type","_bbox","_colorStops","_p0","_p1","_r0","_r1","grad","createLinearGradient","createRadialGradient","colorStop","addColorStop","owner","applyBoundingBox","_createGradient","createPattern","domMatrix","c1","c2","c3","tmp","colors","rowSize","x3","y3","xa","car","cag","cab","xb","cbr","cbg","cbb","c1r","c1g","c1b","c2r","c2g","c2b","c3r","c3g","c3b","minY","maxY","se","le","x1_","x2_","figure","ps","cs","verticesPerRow","rows","cols","q","drawTriangle","_BaseShadingPattern2","_coords","_colors","_figures","_bounds","_background","combinedScale","backgroundColor","boundsWidth","boundsHeight","BORDER_SIZE","drawFigure","matrixScale","temporaryPatternCanvas","_createMeshCanvas","_BaseShadingPattern3","canvasGraphicsFactory","xstep","ystep","paintType","tilingType","curMatrixScale","dimx","getSizeAndScale","dimy","graphics","setFillAndStrokeStyleToContext","adjustedX0","adjustedY0","adjustedX1","adjustedY1","clipBbox","realOutputSize","MAX_PATTERN_SIZE","cssColor","createPatternCanvas","sourceName","targetName","comObj","callbackId","streamId","streamSinks","streamControllers","callbackCapabilities","actionHandler","_onComObjOnMessage","_processStreamMessage","wrapReason","cbSourceName","cbTargetName","_createStreamSink","actionName","ah","_postMessage","queueingStrategy","startCapability","startCall","pullCall","cancelCall","isClosed","pullCapability","cancelCapability","streamSink","isCancelled","lastDesiredSize","sinkCapability","success","streamController","_deleteStreamController","_deleteStreamController2","parsedData","rawData","_metadataMap","_this$_metadataMap$ge","OptionalContentGroup","creator","_order","_groups","order","groups","_group","baseState","off","operator","_evaluateVisibilityExpression","expression","policy","ids","_id","_id2","_id3","_queuedChunks","_progressiveDone","_contentDispositionFilename","_pdfDataRangeTransport","_isStreamingSupported","_isRangeSupported","_contentLength","_fullRequestReader","_rangeReaders","addRangeListener","_onReceiveData","addProgressListener","_onProgress","addProgressiveReadListener","addProgressiveDoneListener","_onProgressiveDone","transportReady","_enqueue","found","some","_begin","_this$_fullRequestRea","_this$_fullRequestRea2","_loaded","firstReader","queuedChunks","PDFDataTransportStreamReader","_progressiveDataLength","PDFDataTransportStreamRangeReader","requestDataRange","_stream","_done","_filename","_requests","_headersReady","_read","requestCapability","_end","_queuedChunk","_removeRangeReader","_read2","output","walk","_node$attributes","shouldBuildText","child","AnnotationLayer","_scripting_utils","receiver","_get","_superPropBase","DEFAULT_TAB_INDEX","GetElementsByNameSet","AnnotationElementFactory","parameters","annotationType","LinkAnnotationElement","TextAnnotationElement","fieldType","TextWidgetAnnotationElement","radioButton","RadioButtonWidgetAnnotationElement","checkBox","CheckboxWidgetAnnotationElement","PushButtonWidgetAnnotationElement","ChoiceWidgetAnnotationElement","WidgetAnnotationElement","PopupAnnotationElement","FreeTextAnnotationElement","LineAnnotationElement","SquareAnnotationElement","CircleAnnotationElement","PolylineAnnotationElement","CaretAnnotationElement","InkAnnotationElement","PolygonAnnotationElement","HighlightAnnotationElement","UnderlineAnnotationElement","SquigglyAnnotationElement","StrikeOutAnnotationElement","StampAnnotationElement","FileAttachmentAnnotationElement","AnnotationElement","_ref$isRenderable","isRenderable","_ref$ignoreBorder","ignoreBorder","_ref$createQuadrilate","createQuadrilaterals","layer","downloadManager","imageResourcesPath","renderForms","svgFactory","enableScripting","_fieldObjects","fieldObjects","_mouseState","mouseState","_createContainer","quadrilaterals","_createQuadrilaterals","transformOrigin","borderStyle","borderWidth","horizontalRadius","horizontalCornerRadius","verticalRadius","verticalCornerRadius","radius","borderRadius","borderBottomStyle","borderColor","quadPoints","savedRect","quadPoint","trigger","popup","PopupElement","modificationDate","hideWrapper","className","skipId","fields","fieldObj","_step3$value","exportValues","exportValue","domElement","getElementById","getElementsByName","_domElement","_exportValue","platform","isWin","isMac","_AnnotationElement","isTooltipOnly","resetForm","Action","_linkService$addLinkA","newWindow","_bindNamedAction","_bindLink","hasClickAction","_bindJSAction","_bindResetFormAction","_renderQuadrilaterals","quadrilateral","linkElement","cloneNode","getDestinationHash","goToDestination","getAnchorUrl","executeNamedAction","_Object$keys","jsName","_this3$linkService$ev","dispatch","detail","otherClickAction","_this4$linkService$ev","resetFormFields","resetFormRefs","refs","include","allFields","fieldIds","_Object$values","_Object$values2","storage","allIds","_i4","_allFields","_field","setValue","valueAsString","Event","_AnnotationElement2","_parameters$data$titl","_parameters$data$cont","hasPopup","alt","dataset","l10nId","l10nArgs","JSON","stringify","_createPopup","_AnnotationElement3","alternativeText","_AnnotationElement$pl","ctrlKey","metaKey","baseName","eventName","valueGetter","_this5$linkService$ev","shiftKey","modifier","_getKeyModifier","_this5$linkService$ev2","checked","getter","_this$data$actions","_setEventListener","jsEvent","setColor","styleName","ColorConverters","commonActions","hidden","print","focus","preventScroll","userName","readonly","removeAttribute","required","bgColor","fgColor","textColor","_i5","_Object$keys2","_WidgetAnnotationElem","hasAppearance","fieldValue","keyInStorage","_getElementsByName","_defineProperty","storedData","getValue","elementData","userValue","formattedValue","beforeInputSelectionRange","beforeInputValue","multiLine","disabled","readOnly","fieldName","tabIndex","setPropertyOnSiblings","defaultFieldValue","blurListener","scrollLeft","_this$data$actions2","_dispatchEventFromSandbox","activeElement","selRange","_event$detail$selRang","selStart","selEnd","setSelectionRange","_this7$linkService$ev","commitKey","willCommit","selectionStart","selectionEnd","_blurListener","_this7$linkService$ev2","isDown","Keystroke","_this7$linkService$ev3","_elementData$beforeIn","change","_setEventListeners","maxLen","maxLength","comb","combWidth","classList","letterSpacing","verticalAlign","_setTextStyle","_setBackgroundColor","_this$data$defaultApp","defaultAppearanceData","fontColor","textAlignment","textAlign","_WidgetAnnotationElem2","_event$target","checkbox","curChecked","_WidgetAnnotationElem3","buttonValue","_event$target2","pdfButtonValue","radio","_LinkAnnotationElemen","_WidgetAnnotationElem4","_super8","fontSizeStyle","selectElement","combo","multiSelect","multiple","option","selected","optionElement","displayValue","isExport","selectedIndex","getItems","multipleSelection","findIndex","_event$detail$insert","insertBefore","_step16","_iterator16","indices","_step17","_iterator17","editable","_this10$linkService$e","changeEx","keyDown","_AnnotationElement4","_super9","_parameters$data$titl2","_parameters$data$cont2","parentType","selector","parentId","parentElements","querySelectorAll","parentRect","popupLeft","popupTop","pinned","hideElement","dir","dateObject","toDateObject","toLocaleDateString","toLocaleTimeString","contents","_formatContents","_step18","_iterator18","_toggle","_show","_hide","lines","pin","zIndex","unpin","_AnnotationElement5","_super10","_parameters$data$titl3","_parameters$data$cont3","_AnnotationElement6","_super11","_parameters$data$titl4","_parameters$data$cont4","line","lineCoordinates","append","_AnnotationElement7","_super12","_parameters$data$titl5","_parameters$data$cont5","square","_AnnotationElement8","_super13","_parameters$data$titl6","_parameters$data$cont6","circle","_AnnotationElement9","_super14","_parameters$data$titl7","_parameters$data$cont7","containerClassName","svgElementName","_step19","_iterator19","vertices","coordinate","polyline","_PolylineAnnotationEl","_super15","_AnnotationElement10","_super16","_parameters$data$titl8","_parameters$data$cont8","_AnnotationElement11","_super17","_parameters$data$titl9","_parameters$data$cont9","_step20","_iterator20","inkLists","_step21","_iterator21","_AnnotationElement12","_super18","_parameters$data$titl10","_parameters$data$cont10","_AnnotationElement13","_super19","_parameters$data$titl11","_parameters$data$cont11","_AnnotationElement14","_super20","_parameters$data$titl12","_parameters$data$cont12","_AnnotationElement15","_super21","_parameters$data$titl13","_parameters$data$cont13","_AnnotationElement16","_super22","_parameters$data$titl14","_parameters$data$cont14","_AnnotationElement17","_super23","_this14$linkService$e","_this14$data$file","file","_this$data$titleObj","_this$data$contentsOb","_download","_this$downloadManager","openOrDownloadData","_step22","sortedAnnotations","popupAnnotations","_iterator22","_i6","_sortedAnnotations","rendered","_step23","_iterator23","renderedElement","prepend","_step24","_iterator24","_step25","_iterator25","G","makeColorComp","R","B","components","RGB_HTML","CMYK_RGB","renderTextLayer","renderParameters","TextLayerRenderTask","textContentStream","textDivs","textContentItemsStr","enhanceTextSelection","_render","timeout","DEFAULT_FONT_SIZE","ascentCache","AllWhitespaceRegexp","geom","textDiv","textDivProperties","_enhanceTextSelection","canvasWidth","hasText","hasEOL","originalTransform","paddingBottom","paddingLeft","paddingRight","paddingTop","_textDivs","tx","_viewport","atan2","fontName","fontHeight","fontAscent","cachedAscent","metrics","ascent","fontBoundingBoxAscent","descent","fontBoundingBoxDescent","pixels","_ratio","getAscent","_fontInspectorEnabled","shouldScaleText","absScaleX","absScaleY","_textDivProperties","_textContentStream","_layoutText","angleCos","angleSin","divWidth","divHeight","right","bottom","_canceled","textDivsLength","_renderingDone","ts","expanded","boxes","box","x1New","x2New","expandBoundsLTR","_b","expandBounds","divProperties","Float64Array","jj","boxScale","findPositiveMin","horizon","boundary","_horizonPart","_affectedBoundary","maxXNew","xNew","changedHorizon","lastBoundary","useBoundary","unshift","used","_horizon","affectedBoundary","_textContent","_container","_textContentItemsStr","_layoutTextLastFontSize","_layoutTextLastFontFamily","_layoutTextCtx","_renderTimer","styleCache","appendText","parentNode","_textDiv$style","mozOpaque","textItems","textStyles","_processItems","expandDivs","expand","transformBuf","paddingBuf","divProps","padding","SVGGraphics","pf","toFixed","pm","acos","SVG_DEFAULTS","convertImgDataToPng","PNG_HEADER","crcTable","crc","crc32","literals","maxBlockLength","deflateBlocks","idat","pi","adler","adler32","isMask","bitDepth","colorType","offsetLiterals","offsetBytes","_y","ihdr","deflateSyncUncompressed","deflateSync","CHUNK_WRAPPER_SIZE","writePngChunk","encode","SVGExtraState","dependencies","activeClipUrl","clipGroup","maskId","clipCount","maskCount","shadingCount","transformMatrix","transformStack","extraStack","embedFonts","embeddedFonts","cssStyle","_operatorIdMapping","tgrp","executeOpTree","svgElement","loadDependencies","convertOpList","operatorIdMapping","opList","opTree","opListElement","opListToTree","opTreeElement","lineMatrix","xcoords","ycoords","tspan","setAttributeNS","txtElement","txtgrp","charWidth","ue","fontStyle","_setStrokeAttributes","_ensureTransformGroup","defs","addFontStyle","_current$txtElement","hasChildNodes","_makeColorN_Pattern","_makeShadingPattern","_makeTilingPattern","_args$","tilingId","_Util$normalizeRect2","tx0","ty0","tx1","ty1","_Util$singularValueDe2","txstep","tystep","tiling","childNodes","gradient","shadingId","colorStops","point0","point1","focalPoint","circlePoint","focalRadius","circleRadius","getAttributeNS","clipId","clipPath","clipElement","setStrokeAlpha","setFillAlpha","lineWidthScale","imgSrc","cliprect","imgEl","definitions","rootGroup","_ensureClipGroup","XfaLayer","xfaOn","xfaOff","getAttribute","_ref$storage","isHTMLAnchorElement","HTMLAnchorElement","dataId","setupStorage","root","rootHtml","setAttributes","stack","rootDiv","_child$attributes","_stack","childHtml","xmlns","_node","PDFNodeStream","_network_utils","fs","http","https","fileUriRegex","sourceUrl","parsedUrl","parse","parseUrl","isHttp","isFsUrl","_rangeRequestReaders","PDFNodeStreamFsFullReader","PDFNodeStreamFullReader","PDFNodeStreamFsRangeReader","PDFNodeStreamRangeReader","BaseFullReader","_url","_disableRange","_rangeChunkSize","_readableStream","_readCapability","_headersCapability","_error","BaseRangeReader","headers","auth","hostname","_BaseFullReader","handleResponse","statusCode","_setReadableStream","getResponseHeader","_validateRangeRequest","validateRangeRequestCapabilities","suggestedLength","allowRangeRequests","extractFilenameFromHeader","_request","createRequestOptions","_BaseRangeReader","_httpHeaders","Range","ce","_BaseFullReader2","lstat","createReadStream","_BaseRangeReader2","createResponseStatusError","contentDisposition","_content_disposition","getFilenameFromContentDispositionHeader","returnValues","validateResponseStatus","needsEncodingFixup","toParamRegExp","rfc2616unquote","fixupEncoding","rfc2047decode","rfc5987decode","contentDispositionStr","_match2","quot","part","parts","_n2","_matches$_n","_quot","_part","rfc2231getparam","_filename2","attributePattern","flags","encoding","decoder","TextDecoder","fatal","decode","textdecode","quotindex","extvalue","encodingend","charset","hex","PDFNetworkStream","NetworkManager","getXhr","currXhrId","pendingRequests","listeners","xhr","xhrId","pendingRequest","setRequestHeader","expectedStatus","onStateChange","onprogress","onHeadersReceived","onDone","_pendingRequest$onPro","_pendingRequest$onErr","_pendingRequest$onErr2","xhrStatus","getArrayBuffer","rangeHeader","_pendingRequest$onErr3","_source","_manager","PDFNetworkStreamFullRequestReader","PDFNetworkStreamRangeRequestReader","onClosed","_onRangeRequestReaderClosed","manager","_onHeadersReceived","_onDone","_onError","_fullRequestId","requestFull","_headersReceivedCapability","_cachedChunks","fullRequestXhrId","fullRequestXhr","getRequestXhr","_this$onProgress","lengthComputable","isPendingRequest","_requestId","requestRange","_this$onClosed","_close","_this$onProgress2","PDFFetchStream","abortController","credentials","redirect","Headers","PDFFetchStreamReader","PDFFetchStreamRangeReader","_withCredentials","_headers","createHeaders","createFetchOptions","_yield$this$_reader$r","_yield$this$_reader$r2","__webpack_module_cache__","moduleId","cachedModule","__webpack_exports__","_api","_annotation_layer","_text_layer","_svg","_xfa_layer","DefaultAnnotationLayerFactory","AnnotationLayerBuilder","_pdfjsLib","_l10n_utils","_pdf_link_service","pageDiv","pdfPage","_ref$annotationStorag","_ref$imageResourcesPa","_ref$renderForms","_ref$l10n","NullL10n","_ref$enableScripting","_ref$hasJSActionsProm","hasJSActionsPromise","_ref$fieldObjectsProm","fieldObjectsPromise","_ref$mouseState","_fieldObjectsPromise","_cancelled","_yield$Promise$all2","_yield$Promise$all2$","_yield$Promise$all2$2","SimpleLinkService","pdfjsLib","fixupLangCode","langCode","PARTIAL_LANG_CODES","getL10nFallback","DEFAULT_L10N_STRINGS","of_pages","page_of_pages","document_properties_kb","document_properties_mb","document_properties_date_string","document_properties_page_size_unit_inches","document_properties_page_size_unit_millimeters","document_properties_page_size_orientation_portrait","document_properties_page_size_orientation_landscape","document_properties_page_size_name_a3","document_properties_page_size_name_a4","document_properties_page_size_name_letter","document_properties_page_size_name_legal","document_properties_page_size_dimension_string","document_properties_page_size_dimension_name_string","document_properties_linearized_yes","document_properties_linearized_no","print_progress_percent","additional_layers","page_landmark","thumb_page_title","thumb_page_canvas","find_reached_top","find_reached_bottom","find_not_found","error_version_info","error_message","error_stack","error_file","error_line","rendering_error","page_scale_width","page_scale_fit","page_scale_auto","page_scale_actual","page_scale_percent","loading_error","invalid_file_error","missing_file_error","unexpected_response_error","printing_not_supported","printing_not_ready","web_fonts_disabled","en","es","fy","ga","gu","hi","hy","nb","ne","nn","pa","pt","sv","zh","getLanguage","getDirection","_arguments","fallback","formatL10nValue","PDFLinkService","_ui_utils","_ref$externalLinkTarg","_ref$externalLinkRel","externalLinkRel","_ref$ignoreDestinatio","ignoreDestinationZoom","externalLinkEnabled","_ignoreDestinationZoom","pdfDocument","pdfHistory","_pagesRefCache","rawDest","namedDest","explicitDest","destRef","_cachedPageNumber","cachePageRef","_goToDestinationHelper","pushCurrentPosition","destArray","_goToDestination","pageLabelToPageNumber","pushPage","hash","parseQueryString","zoomArgs","zoomArg","zoomArgNumber","parseFloat","allowNegativeOffset","destLength","num","allowNull","param","isValidExplicitDestination","_this$pdfHistory","_this$pdfHistory2","back","forward","nextPage","previousPage","pageNum","pageRef","refStr","_this$_pagesRefCache","isPageVisible","isPageCached","_goToDestination2","apiPageLayoutToSpreadMode","SpreadMode","ODD","EVEN","apiPageModeToSidebarView","SidebarView","THUMBS","OUTLINE","ATTACHMENTS","LAYERS","approximateFraction","xinv","x_","backtrackBeforeAllVisibleElements","binarySearchFirstItem","getActiveOrFocusedElement","curRoot","curActiveOrFocused","_curActiveOrFocused","shadowRoot","getOutputScale","pixelRatio","webkitBackingStorePixelRatio","mozBackingStorePixelRatio","backingStorePixelRatio","sx","getPageSizeInches","changeOrientation","getVisibleElements","scrollEl","views","_ref2$sortByVisibilit","sortByVisibility","_ref2$horizontal","horizontal","_ref2$rtl","rtl","scrollTop","numViews","firstVisibleElementInd","elementLeft","offsetLeft","clientLeft","offsetTop","clientTop","lastEdge","currentWidth","currentHeight","viewWidth","viewHeight","viewRight","viewBottom","hiddenHeight","fractionWidth","percent","widthPercent","pc","isPortraitOrientation","isValidRotation","isValidScrollMode","ScrollMode","isValidSpreadMode","moveToEndOfArray","moved","noContextMenuHandler","preventDefault","normalizeWheelEventDelta","delta","normalizeWheelEventDirection","deltaMode","MOUSE_PIXELS_PER_LINE","roundToDivide","scrollIntoView","spot","scrollMatches","scrollHeight","scrollWidth","contains","getComputedStyle","overflow","waitOnEventOrTimeout","_ref3$delay","delay","_off","eventHandler","WaitOnType","EVENT","_on","timeoutHandler","TIMEOUT","watchScroll","viewAreaElement","debounceScroll","rAF","currentX","lastX","currentY","lastY","down","_eventHandler","VERTICAL_PADDING","UNKNOWN_SCALE","TextLayerMode","SCROLLBAR_PADDING","RendererType","ProgressBar","PresentationModeState","MIN_SCALE","MAX_SCALE","MAX_AUTO_SCALE","DEFAULT_SCALE_VALUE","DEFAULT_SCALE_DELTA","DEFAULT_SCALE","AutoPrintRegExp","AutomationEventBus","animationStarted","NORMAL","CHANGING","FULLSCREEN","CANVAS","SVG","ENABLE_ENHANCE","VERTICAL","HORIZONTAL","WRAPPED","minIndex","maxIndex","currentIndex","elt","pageTop","deltaX","deltaY","external","once","eventListeners","externalListeners","_step2$value","_listener","_this$_listeners","_EventBus","units","bar","_indeterminate","_percent","clamp","_updateBar","viewer","scrollbarWidth","offsetWidth","setProperty","StructTreeLayerBuilder","DefaultStructTreeLayerFactory","PDF_ROLE_TO_HTML_ROLE","Document","DocumentFragment","Part","Sect","Div","Aside","NonStruct","H","Title","FENote","Sub","Lbl","Span","Em","Strong","Link","Annot","Form","Ruby","RB","RT","RP","Warichu","WT","L","LI","LBody","Table","TR","TH","TD","THead","TBody","TFoot","Caption","Figure","Formula","Artifact","HEADING_PATTERN","structTree","_walk","structElement","htmlElement","role","_setAttributes","kid","TextLayerBuilder","DefaultTextLayerFactory","_ref$highlighter","highlighter","_ref$enhanceTextSelec","renderingDone","textLayerRenderTask","_bindMouse","endOfContent","numTextDivs","_this$highlighter","setTextMapping","textLayerFrag","createDocumentFragment","_this$highlighter2","_finishRendering","enable","_this$highlighter3","disable","expandDivsTimer","expandTextDivs","adjustTop","getPropertyValue","divBounds","getBoundingClientRect","pageY","XfaLayerBuilder","DefaultXfaLayerFactory","xfaHtml","DownloadManager","_app_options","blobUrl","click","download","_openBlobUrls","compatibilityParams","disableCreateObjectURL","isPdfData","viewerUrl","revokeObjectURL","downloadData","blob","downloadUrl","OptionKind","AppOptions","maxTouchPoints","isAndroid","isIOS","maxCanvasPixels","VIEWER","API","WORKER","PREFERENCE","defaultOptions","cursorToolOnLoad","defaultUrl","defaultZoomValue","disableHistory","disablePageLabels","enablePermissions","enablePrintAutoRotate","historyUpdateUrl","compatibility","pdfBugEnabled","printResolution","sidebarViewOnLoad","scrollModeOnLoad","spreadModeOnLoad","useOnlyCssZoom","viewerCssTheme","viewOnLoad","disablePreferences","locale","sandboxBundleSrc","userOptions","userOption","_defaultOption$compat","defaultOption","_defaultOption$compat2","valueType","GenericL10n","webL10n","lang","_lang","_ready","setLanguage","_getLanguage","_getDirection","_args3","_translate","gL10nData","gTextData","gTextProp","gLanguage","gMacros","gReadyState","onSuccess","onFailure","overrideMimeType","ontimeout","successCallback","failureCallback","baseURL","xhrLoadText","parsedPropertiesCallback","dictionary","reBlank","reComment","reSection","reImport","reSplit","rawText","extendedSyntax","parsedRawLinesCallback","currentLang","genericLang","skipLang","loadImport","nextEntry","evalString","parseRawLines","parseProperties","langLinks","getL10nResourceLinks","langCount","onResourceLoaded","gResourceCount","L10nResourceLink","load","dict","getL10nDictionary","locales","default_locale","defaultLocale","anyCaseLang","parseResource","rv","substArguments","substIndexes","reMatch","macroName","paramName","macro","matched_text","getL10nAttributes","getL10nData","childElementCount","nodeType","getChildElementCount","nodeValue","textNode","firstChild","plural","_pluralRules","list","pluralRules","isBetween","isIn","af","ak","am","ar","asa","az","be","bem","bez","bg","bh","bm","bn","bo","brx","bs","ca","cgg","chr","cy","da","de","dv","dz","ee","eo","et","eu","fa","ff","fi","fil","fo","fr","fur","gd","gl","gsw","guw","gv","ha","haw","he","hr","hu","ig","is","iu","ja","jmc","jv","ka","kab","kaj","kcg","kde","kea","kl","km","kn","ko","ksb","ksh","ku","kw","lag","lb","lg","ln","lo","lt","lv","mas","mg","mk","ml","mn","mo","mr","ms","mt","my","nah","naq","nd","nl","no","nr","nso","ny","nyn","om","or","pap","pl","rm","ro","rof","ru","rwk","sah","saq","seh","ses","sg","sh","shi","sk","sl","sma","smi","smj","smn","sms","sn","so","sq","sr","ss","ssy","st","sw","syr","ta","te","teo","th","ti","tig","tk","tl","tn","to","tr","tzm","uk","ve","vi","vun","wa","wae","wo","xh","xog","yo","zu","getPluralRules","fallbackString","getText","loadLocale","shortCode","getTranslatableChildren","elementCount","translateElement","getReadyState","PDFFindController","FindState","_pdf_find_utils","FOUND","NOT_FOUND","PENDING","CHARACTERS_TO_NORMALIZE","normalizationRegex","diffs","ch","normalizedCh","diff","matchIndex","totalDiff","_linkService","_eventBus","_reset","_onFindBarClose","_highlightMatches","_pageMatches","_pageMatchesLength","_selected","_pdfDocument","_firstPageCapability","_shouldDirtyMatch","_dirtyMatch","_updateUIState","_extractText","findbarClosed","pendingTimeout","_findTimeout","_nextMatch","_updateAllPages","_ref2$element","_ref2$selectedLeft","selectedLeft","_ref2$pageIndex","_ref2$matchIndex","_scrollMatches","matchIdx","pageIdx","_offset","wrapped","_extractTextPromises","_pageContents","_pageDiffs","_matchesCountTotal","_pagesToSearch","_pendingFindMatches","_resumePageIdx","_rawQuery","_normalize2","_normalizedQuery","matchesWithLength","matchesLength","currentElem","skipped","prevElem","matchLength","isSubTerm","startIdx","getCharacterType","endIdx","_limit","pageContent","pageDiffs","entireWord","queryLen","_isEntireWord","originalMatchIdx","getOriginalIndex","originalQueryLen","queryArray","subquery","subqueryLen","_prepareMatches","_query","_this$_state","_calculatePhraseMatch","_calculateWordMatch","_updatePage","_nextPageMatch","pageMatchesCount","_updateUIResultsCount","extractTextCapability","getTextContent","_normalize4","previous","currentPageIndex","_calculateMatch","_updateMatch","_advanceOffsetPage","numMatches","_matchesReady","_this$_selected","_this$_pageMatches$i","matchesCount","_requestMatchesCount","_this$_state$query","_this$_state2","rawQuery","charCode","isAlphabeticalScript","isAsciiSpace","CharacterType","SPACE","isAsciiAlpha","isAsciiDigit","ALPHA_LETTER","PUNCT","isThai","THAI_LETTER","isHan","HAN_LETTER","isKatakana","KATAKANA_LETTER","isHiragana","HIRAGANA_LETTER","isHalfwidthKatakana","HALFWIDTH_KATAKANA_LETTER","isDestArraysEqual","isDestHashesEqual","PDFHistory","_initialized","_fingerprint","_boundEvents","_isViewerInPresentationMode","_isPagesLoaded","fingerprint","_ref2$resetHistory","resetHistory","_ref2$updateUrl","updateUrl","reInitialized","_updateUrl","_bindEvents","history","_popStateInProgress","_blockHashChange","_currentHash","getCurrentHash","_numPositionUpdates","_uid","_maxUid","_destination","_position","_isValidState","_this$_parseCurrentHa","_parseCurrentHash","_pushOrReplaceState","_updateInternalState","_initialRotation","_initialBookmark","_pageHide","_unbindEvents","_updateViewareaTimeout","_ref3$namedDest","_isValidPage","forceReplace","_this$_destination","_tryPushCurrentPosition","newUrl","shouldReplace","newState","replaceState","pushState","temporary","perfEntry","performance","getEntriesByType","removeTemporary","checkNameddest","nameddest","pdfOpenParams","newHash","hashChanged","setHash","_this$_parseCurrentHa2","updateViewarea","_updateViewarea","popState","_popState","pageHide","destHash","pushHash","firstDest","secondDest","isEntryEqual","PDFPageView","_pdf_rendering_queue","MAX_CANVAS_PIXELS","_options$textLayerMod","_options$annotationMo","_options$textHighligh","_this$renderingQueue","defaultViewport","renderingId","pageLabel","pdfPageRotate","_optionalContentConfigPromise","hasRestrictedScaling","_annotationMode","renderingQueue","textLayerFactory","annotationLayerFactory","xfaLayerFactory","textHighlighter","textHighlighterFactory","createTextHighlighter","structTreeLayerFactory","paintTask","paintedViewportMap","renderingState","RenderingStates","INITIAL","resume","_renderError","_isStandalone","hasViewer","annotationLayer","textLayer","zoomLayer","xfaLayer","structTreeLayer","_renderAnnotationLayer2","_renderXfaLayer2","_buildXfaTextContentItems","_buildXfaTextContentItems2","removeFromDOM","zoomLayerCanvas","_this$annotationLayer","_this$xfaLayer","_ref$keepZoomLayer","keepZoomLayer","_ref$keepAnnotationLa","keepAnnotationLayer","_ref$keepXfaLayer","keepXfaLayer","cancelRendering","zoomLayerNode","annotationLayerNode","xfaLayerNode","hide","_resetZoomLayer","loadingIconDiv","_this$loadingIconDiv","_ref2$scale","_ref2$rotation","_ref2$optionalContent","redrawAnnotationLayer","redrawXfaLayer","timestamp","isScalingRestricted","outputScale","_this$textHighlighter","_ref3$keepAnnotationL","_ref3$keepXfaLayer","_onTextLayerRendered","_ref4$redrawAnnotatio","_ref4$redrawXfaLayer","relativeRotation","absRotation","textLayerViewport","textAbsRotation","transX","transY","_renderAnnotationLayer","_renderXfaLayer","convertToPdfPoint","_this$annotationLayer2","_this$xfaLayer2","FINISHED","RUNNING","canvasWrapper","_this$annotationLayer3","createTextLayerBuilder","renderContinueCallback","cont","isHighestPriority","PAUSED","finishPaintTask","paintOnSvg","paintOnCanvas","onRenderContinue","resultPromise","setTextContentStream","createAnnotationLayerBuilder","createXfaLayerBuilder","tree","treeDom","createStructTreeLayerBuilder","renderCapability","isCanvasHidden","showCanvas","actualSizeViewport","maxScale","sfx","sfy","ensureNotCancelled","getOperatorList","getSVG","PDFRenderingQueue","pdfThumbnailViewer","onIdle","highestPriorityPage","idleTimeout","printing","isThumbnailViewEnabled","currentlyVisiblePages","forceRendering","scrolledDown","preRenderExtra","visibleViews","numVisible","isViewFinished","preRenderIndex","preRenderView","draw","renderHighestPriority","PDFScriptingManager","enumerableOnly","symbols","sym","getOwnPropertyDescriptors","_ref$sandboxBundleSrc","_ref$scriptingFactory","scriptingFactory","_ref$docPropertiesLoo","docPropertiesLookup","_pdfViewer","_closeCapability","_destroyCapability","_scripting","_sandboxBundleSrc","_scriptingFactory","_docPropertiesLookup","_setDocument","_this$_scripting","objects","calculationOrder","docActions","docProperties","_destroyScripting","getJSActions","_createScripting","_internalEvents","_updateFromSandbox","_this2$_scripting","dispatchEventInSandbox","_dispatchPageClose","_dispatchPageOpen","_pageOpenPending","_this2$_scripting2","_this2$_closeCapabili","_domEvents","_getDocProperties","createSandbox","appInfo","docInfo","_objectSpread","_dispatchWillSave","_this$_scripting2","_dispatchDidSave","_this$_scripting3","_dispatchWillPrint","_this$_scripting4","_x5","_dispatchDidPrint","_this$_scripting5","_x6","_this$_destroyCapabil","_updateFromSandbox2","isInPresentationMode","siblings","command","elementId","_this$_pdfDocument","_context7","isChangingPresentationMode","spreadMode","pagesPromise","currentScaleValue","increaseScale","decreaseScale","CustomEvent","_callee7","_x7","_dispatchPageOpen2","visitedPages","pageView","actionsPromise","_args9","_context9","_visitedPages","getPageView","_pageView$pdfPage","_this3$_scripting","_context8","_callee8","_callee9","_x8","_dispatchPageClose2","_this$_scripting6","_context10","_callee10","_x9","_getDocProperties2","_require","_context11","_callee11","createScripting","GenericScripting","_destroyScripting2","_this$_destroyCapabil3","_this$_destroyCapabil2","_step4$value","_step5$value","_context12","destroySandbox","_listener2","_callee12","_yield$pdfDocument$ge","getDownloadInfo","filesize","getRaw","authors","pdfjsSandbox","QuickJSSandbox","_createSandbox","_dispatchEventInSandbox","_destroySandbox","nukeSandbox","PDFSinglePageViewer","_base_viewer","_BaseViewer","_ensurePageViewVisible","_shadowViewer","_previousPageNumber","_updateScrollDown","_pages","previousPageView","viewerNodes","_ref$pageSpot","pageSpot","_ref$pageNumber","_setCurrentPageNumber","scroll","_getCurrentVisiblePage","visiblePages","BaseViewer","_annotation_layer_builder","_pdf_page_view","_struct_tree_layer_builder","_text_highlighter","_text_layer_builder","_xfa_layer_builder","resize","newSize","pagesToKeep","pageIdsToKeep","iMax","oldScale","newScale","_this$container","_this$viewer","viewerVersion","firstElementChild","tagName","toUpperCase","_scriptingManager","scriptingManager","defaultRenderingQueue","_doc","_scrollUpdate","presentationModeState","_onBeforeDraw","_onAfterDraw","_resetView","_pagesCapability","settled","every","_this$_pageLabels","_this$_pageLabels2","resetCurrentPageView","_resetCurrentPageView","_pageLabels","_this$_pageLabels3","_this$_pageLabels4","_currentScale","_currentScaleValue","_pagesRotation","updateArgs","_onePageRenderedCapability","_getVisiblePages","_cancelRendering","firstPagePromise","_buffer","firstPdfPage","currentScale","_viewerElement","firstPageView","setPdfPage","_spreadMode","_updateSpreadMode","_onePageRenderedOrForceFetch","getPagesLeft","_pageNum","labels","_this$_pageLabels$i","_this$_pageLabels5","setPageLabel","PDFPageViewBuffer","_location","_pagesRequests","_scrollMode","_updateScrollMode","newValue","noScroll","preset","isSameScale","_setScaleUpdatePages","currentPage","noPadding","hPadding","vPadding","_isScrollModeHorizontal","pageWidthScale","_pageWidthScaleFactor","pageHeightScale","horizontalScale","_scrollIntoView","_ref3$destArray","_ref3$allowNegativeOf","_ref3$ignoreDestinati","pageWidth","pageHeight","boundingRect","convertToViewportPoint","firstPage","normalizedScaleValue","getPagePoint","intLeft","intTop","numVisiblePages","newCacheSize","_updateHelper","_updateLocation","direction","_isContainerRtl","getHighestPriority","_ensurePdfPageLoaded","renderView","TextHighlighter","_this$pdfDocument","_this$pdfDocument2","_this$pdfDocument3","_this$_scriptingManag","_this$pdfDocument4","scrollMode","pages","parity","spread","_iMax","pageLayout","yArray","_yArray","expectedId","_ii","_expectedId","firstId","lastId","_expectedId2","_step6$value","advance","_getPageAdvance","_onUpdateTextLayerMatches","divs","texts","_updateMatches","iIndex","mm","divIdx","isSelectedPage","selectedMatchIdx","prevEnd","infinity","i1","isSelected","highlightSuffix","appendTextToDiv","n0","n1","scrollMatchIntoView","fromOffset","toOffset","Node","TEXT_NODE","_span","clearedUntilDivIdx","highlightMatches","_convertMatches","pageMatches","pageMatchesLength","_renderMatches","PDFViewer","currentId","stillFullyVisible","_download_manager","_genericl10n","_pdf_find_controller","_pdf_history","_pdf_scripting_manager","_pdf_single_page_viewer","_pdf_viewer"],"sources":["./src/app/info/components/info-legal.component.ts","./node_modules/ng2-pdf-viewer/__ivy_ngcc__/fesm2015/ng2-pdf-viewer.js","./src/app/ap-pdf-viewer/ap-pdf-viewer.component.html","./src/app/ap-pdf-viewer/ap-pdf-viewer.component.ts","./src/app/info/components/info-agreement.component.ts","./src/app/stores/common/contactinformation.store.ts","./src/app/stores/common/versioninfo.store.ts","./src/app/info/components/info-version.component.ts","./src/app/info/components/info-imprint.component.ts","./src/app/info/components/info-contact.component.ts","./src/app/info/ap-info.routes.ts","./src/app/ap-pdf-viewer/ap-pdf-viewer.module.ts","./src/app/info/ap-info.module.ts","./node_modules/pdfjs-dist/legacy/build/pdf.js","./node_modules/pdfjs-dist/legacy/web/pdf_viewer.js"],"sourcesContent":["import {AfterContentInit, Component, ElementRef, ViewChild, ViewEncapsulation} from '@angular/core';\nimport {\n LanguageStore\n} from '../../stores/translation/language.store';\nimport {\n TranslationStore\n} from '../../stores/translation/translation.store';\nimport {\n ApDynformsConfigFieldset\n} from '../../ap-dynforms/config/ap-dynforms-config-fieldset';\nimport {DomSanitizer, SafeHtml} from '@angular/platform-browser';\n\n@Component({\n selector: 'ap-info-legal',\n template: `\n
\n
\n \n
\n
\n
\n

AGRICON® and AGRIPORT® are registered trademarks of Agricon GmbH, Jahnatal.

\n
\n
\n \n
\n
\n
\n `,\n styles: [`\n .impressum-block {\n line-height: 1.4;\n }\n\n .impressum-block p {\n margin: 0;\n padding: 0;\n font-size: 14px;\n }\n\n .impressum-block p:has(strong) {\n margin-top: 2em;\n margin-bottom: 0.7em;\n }\n\n .impressum-block p:first-child:has(strong) {\n margin-top: 0;\n }\n\n .impressum-block p + p:not(:has(strong)) {\n margin-top: 0.2em;\n }\n\n .trademark-notice p {\n margin-top: 2em;\n text-align: left;\n font-size: 0.9em;\n color: #666;\n }\n\n .gdpr-block {\n margin-top: 2em;\n margin-bottom: 0.7em;\n }\n `],\n encapsulation: ViewEncapsulation.None\n})\nexport class InfoLegalComponent implements AfterContentInit {\n @ViewChild('imprint_text', {static: true, read: ElementRef}) imprintTextElement: ElementRef;\n\n public url: string;\n public imprintText: string;\n public formConfig: ApDynformsConfigFieldset[];\n public caption: string;\n public sanitizedImprintText: SafeHtml;\n\n constructor(\n private language: LanguageStore,\n private translationStore: TranslationStore,\n private sanitizer: DomSanitizer\n ) {\n }\n\n public ngAfterContentInit(): void {\n this.imprintText = this.translationStore.FindTranslationForSelectedLanguage('Global_Imprint_Text');\n const cleanedHtml = this._cleanHtml(this.imprintText);\n this.sanitizedImprintText = this.sanitizer.bypassSecurityTrustHtml(cleanedHtml);\n this.url = this.language.SelectedLanguage?.Key === 'de'\n ? '/assets/info/legal/gdpr_de.pdf'\n : '/assets/info/legal/gdpr_en.pdf';\n this.formConfig = [\n new ApDynformsConfigFieldset({\n key: 'contact_fieldset',\n columns: 1,\n legend: 'Impressum',\n config: []\n })\n ];\n }\n\n private _cleanHtml(html: string): string {\n return html\n // Remove empty paragraphs with  \n .replace(/]*> <\\/p>/g, '')\n // Clean up problematic style attributes\n .replace(/style=\"\" line-height:=\"\" 10%;\"\"=\"\">/g, '>')\n // Remove \"Adresse:\" header\n .replace(/

Adresse:<\\/strong><\\/p>/g, '')\n // Remove any leftover empty paragraphs\n .replace(/

\\s*<\\/p>/g, '');\n }\n}\n","import { EventEmitter, Component, ElementRef, NgZone, ViewChild, Output, Input, NgModule } from '@angular/core';\nimport { fromEvent, Subject, from } from 'rxjs';\nimport { takeUntil, debounceTime, filter } from 'rxjs/operators';\nimport * as PDFJS from 'pdfjs-dist/legacy/build/pdf';\nimport * as PDFJSViewer from 'pdfjs-dist/legacy/web/pdf_viewer';\n\nimport * as ɵngcc0 from '@angular/core';\n\nconst _c0 = [\"pdfViewerContainer\"];\nfunction createEventBus(pdfJsViewer, destroy$) {\n const globalEventBus = new pdfJsViewer.EventBus();\n attachDOMEventsToEventBus(globalEventBus, destroy$);\n return globalEventBus;\n}\nfunction attachDOMEventsToEventBus(eventBus, destroy$) {\n fromEvent(eventBus, 'documentload')\n .pipe(takeUntil(destroy$))\n .subscribe(() => {\n const event = document.createEvent('CustomEvent');\n event.initCustomEvent('documentload', true, true, {});\n window.dispatchEvent(event);\n });\n fromEvent(eventBus, 'pagerendered')\n .pipe(takeUntil(destroy$))\n .subscribe(({ pageNumber, cssTransform, source }) => {\n const event = document.createEvent('CustomEvent');\n event.initCustomEvent('pagerendered', true, true, {\n pageNumber,\n cssTransform,\n });\n source.div.dispatchEvent(event);\n });\n fromEvent(eventBus, 'textlayerrendered')\n .pipe(takeUntil(destroy$))\n .subscribe(({ pageNumber, source }) => {\n const event = document.createEvent('CustomEvent');\n event.initCustomEvent('textlayerrendered', true, true, { pageNumber });\n source.textLayerDiv.dispatchEvent(event);\n });\n fromEvent(eventBus, 'pagechanging')\n .pipe(takeUntil(destroy$))\n .subscribe(({ pageNumber, source }) => {\n const event = document.createEvent('UIEvents');\n event.initEvent('pagechanging', true, true);\n /* tslint:disable:no-string-literal */\n event['pageNumber'] = pageNumber;\n source.container.dispatchEvent(event);\n });\n fromEvent(eventBus, 'pagesinit')\n .pipe(takeUntil(destroy$))\n .subscribe(({ source }) => {\n const event = document.createEvent('CustomEvent');\n event.initCustomEvent('pagesinit', true, true, null);\n source.container.dispatchEvent(event);\n });\n fromEvent(eventBus, 'pagesloaded')\n .pipe(takeUntil(destroy$))\n .subscribe(({ pagesCount, source }) => {\n const event = document.createEvent('CustomEvent');\n event.initCustomEvent('pagesloaded', true, true, { pagesCount });\n source.container.dispatchEvent(event);\n });\n fromEvent(eventBus, 'scalechange')\n .pipe(takeUntil(destroy$))\n .subscribe(({ scale, presetValue, source }) => {\n const event = document.createEvent('UIEvents');\n event.initEvent('scalechange', true, true);\n /* tslint:disable:no-string-literal */\n event['scale'] = scale;\n /* tslint:disable:no-string-literal */\n event['presetValue'] = presetValue;\n source.container.dispatchEvent(event);\n });\n fromEvent(eventBus, 'updateviewarea')\n .pipe(takeUntil(destroy$))\n .subscribe(({ location, source }) => {\n const event = document.createEvent('UIEvents');\n event.initEvent('updateviewarea', true, true);\n event['location'] = location;\n source.container.dispatchEvent(event);\n });\n fromEvent(eventBus, 'find')\n .pipe(takeUntil(destroy$))\n .subscribe(({ source, type, query, phraseSearch, caseSensitive, highlightAll, findPrevious, }) => {\n if (source === window) {\n return; // event comes from FirefoxCom, no need to replicate\n }\n const event = document.createEvent('CustomEvent');\n event.initCustomEvent('find' + type, true, true, {\n query,\n phraseSearch,\n caseSensitive,\n highlightAll,\n findPrevious,\n });\n window.dispatchEvent(event);\n });\n fromEvent(eventBus, 'attachmentsloaded')\n .pipe(takeUntil(destroy$))\n .subscribe(({ attachmentsCount, source }) => {\n const event = document.createEvent('CustomEvent');\n event.initCustomEvent('attachmentsloaded', true, true, {\n attachmentsCount,\n });\n source.container.dispatchEvent(event);\n });\n fromEvent(eventBus, 'sidebarviewchanged')\n .pipe(takeUntil(destroy$))\n .subscribe(({ view, source }) => {\n const event = document.createEvent('CustomEvent');\n event.initCustomEvent('sidebarviewchanged', true, true, { view });\n source.outerContainer.dispatchEvent(event);\n });\n fromEvent(eventBus, 'pagemode')\n .pipe(takeUntil(destroy$))\n .subscribe(({ mode, source }) => {\n const event = document.createEvent('CustomEvent');\n event.initCustomEvent('pagemode', true, true, { mode });\n source.pdfViewer.container.dispatchEvent(event);\n });\n fromEvent(eventBus, 'namedaction')\n .pipe(takeUntil(destroy$))\n .subscribe(({ action, source }) => {\n const event = document.createEvent('CustomEvent');\n event.initCustomEvent('namedaction', true, true, { action });\n source.pdfViewer.container.dispatchEvent(event);\n });\n fromEvent(eventBus, 'presentationmodechanged')\n .pipe(takeUntil(destroy$))\n .subscribe(({ active, switchInProgress }) => {\n const event = document.createEvent('CustomEvent');\n event.initCustomEvent('presentationmodechanged', true, true, {\n active,\n switchInProgress,\n });\n window.dispatchEvent(event);\n });\n fromEvent(eventBus, 'outlineloaded')\n .pipe(takeUntil(destroy$))\n .subscribe(({ outlineCount, source }) => {\n const event = document.createEvent('CustomEvent');\n event.initCustomEvent('outlineloaded', true, true, { outlineCount });\n source.container.dispatchEvent(event);\n });\n}\n\nfunction assign(obj, prop, value) {\n obj[prop] = value;\n}\nfunction isSSR() {\n return typeof window === 'undefined';\n}\n\n/**\n * Created by vadimdez on 21/06/16.\n */\nif (!isSSR()) {\n assign(PDFJS, 'verbosity', PDFJS.VerbosityLevel.INFOS);\n}\nvar RenderTextMode;\n(function (RenderTextMode) {\n RenderTextMode[RenderTextMode[\"DISABLED\"] = 0] = \"DISABLED\";\n RenderTextMode[RenderTextMode[\"ENABLED\"] = 1] = \"ENABLED\";\n RenderTextMode[RenderTextMode[\"ENHANCED\"] = 2] = \"ENHANCED\";\n})(RenderTextMode || (RenderTextMode = {}));\nclass PdfViewerComponent {\n constructor(element, ngZone) {\n this.element = element;\n this.ngZone = ngZone;\n this.isVisible = false;\n this._cMapsUrl = typeof PDFJS !== 'undefined'\n ? `https://unpkg.com/pdfjs-dist@${PDFJS.version}/cmaps/`\n : null;\n this._renderText = true;\n this._renderTextMode = RenderTextMode.ENABLED;\n this._stickToPage = false;\n this._originalSize = true;\n this._page = 1;\n this._zoom = 1;\n this._zoomScale = 'page-width';\n this._rotation = 0;\n this._showAll = true;\n this._canAutoResize = true;\n this._fitToPage = false;\n this._externalLinkTarget = 'blank';\n this._showBorders = false;\n this.resizeTimeout = null;\n this.pageScrollTimeout = null;\n this.isInitialized = false;\n this.destroy$ = new Subject();\n this.afterLoadComplete = new EventEmitter();\n this.pageRendered = new EventEmitter();\n this.pageInitialized = new EventEmitter();\n this.textLayerRendered = new EventEmitter();\n this.onError = new EventEmitter();\n this.onProgress = new EventEmitter();\n this.pageChange = new EventEmitter(true);\n if (isSSR()) {\n return;\n }\n let pdfWorkerSrc;\n if (window.hasOwnProperty('pdfWorkerSrc') &&\n typeof window.pdfWorkerSrc === 'string' &&\n window.pdfWorkerSrc) {\n pdfWorkerSrc = window.pdfWorkerSrc;\n }\n else {\n pdfWorkerSrc = `https://cdn.jsdelivr.net/npm/pdfjs-dist@${PDFJS.version}/legacy/build/pdf.worker.js`;\n }\n assign(PDFJS.GlobalWorkerOptions, 'workerSrc', pdfWorkerSrc);\n }\n set cMapsUrl(cMapsUrl) {\n this._cMapsUrl = cMapsUrl;\n }\n set page(_page) {\n _page = parseInt(_page, 10) || 1;\n const originalPage = _page;\n if (this._pdf) {\n _page = this.getValidPageNumber(_page);\n }\n this._page = _page;\n if (originalPage !== _page) {\n this.pageChange.emit(_page);\n }\n }\n set renderText(renderText) {\n this._renderText = renderText;\n }\n set renderTextMode(renderTextMode) {\n this._renderTextMode = renderTextMode;\n }\n set originalSize(originalSize) {\n this._originalSize = originalSize;\n }\n set showAll(value) {\n this._showAll = value;\n }\n set stickToPage(value) {\n this._stickToPage = value;\n }\n set zoom(value) {\n if (value <= 0) {\n return;\n }\n this._zoom = value;\n }\n get zoom() {\n return this._zoom;\n }\n set zoomScale(value) {\n this._zoomScale = value;\n }\n get zoomScale() {\n return this._zoomScale;\n }\n set rotation(value) {\n if (!(typeof value === 'number' && value % 90 === 0)) {\n console.warn('Invalid pages rotation angle.');\n return;\n }\n this._rotation = value;\n }\n set externalLinkTarget(value) {\n this._externalLinkTarget = value;\n }\n set autoresize(value) {\n this._canAutoResize = Boolean(value);\n }\n set fitToPage(value) {\n this._fitToPage = Boolean(value);\n }\n set showBorders(value) {\n this._showBorders = Boolean(value);\n }\n static getLinkTarget(type) {\n switch (type) {\n case 'blank':\n return PDFJS.LinkTarget.BLANK;\n case 'none':\n return PDFJS.LinkTarget.NONE;\n case 'self':\n return PDFJS.LinkTarget.SELF;\n case 'parent':\n return PDFJS.LinkTarget.PARENT;\n case 'top':\n return PDFJS.LinkTarget.TOP;\n }\n return null;\n }\n ngAfterViewChecked() {\n if (this.isInitialized) {\n return;\n }\n const offset = this.pdfViewerContainer.nativeElement.offsetParent;\n if (this.isVisible === true && offset == null) {\n this.isVisible = false;\n return;\n }\n if (this.isVisible === false && offset != null) {\n this.isVisible = true;\n setTimeout(() => {\n this.initialize();\n this.ngOnChanges({ src: this.src });\n });\n }\n }\n ngOnInit() {\n this.initialize();\n this.setupResizeListener();\n }\n ngOnDestroy() {\n this.clear();\n this.destroy$.next();\n this.loadingTask = null;\n }\n get pdfLinkService() {\n return this._showAll\n ? this.pdfMultiPageLinkService\n : this.pdfSinglePageLinkService;\n }\n get pdfViewer() {\n return this.getCurrentViewer();\n }\n get pdfFindController() {\n return this._showAll\n ? this.pdfMultiPageFindController\n : this.pdfSinglePageFindController;\n }\n ngOnChanges(changes) {\n if (isSSR() || !this.isVisible) {\n return;\n }\n if ('src' in changes) {\n this.loadPDF();\n }\n else if (this._pdf) {\n if ('renderText' in changes) {\n this.getCurrentViewer().textLayerMode = this._renderText\n ? this._renderTextMode\n : RenderTextMode.DISABLED;\n this.resetPdfDocument();\n }\n else if ('showAll' in changes) {\n this.resetPdfDocument();\n }\n if ('page' in changes) {\n const { page } = changes;\n if (page.currentValue === this._latestScrolledPage) {\n return;\n }\n // New form of page changing: The viewer will now jump to the specified page when it is changed.\n // This behavior is introduced by using the PDFSinglePageViewer\n this.getCurrentViewer().scrollPageIntoView({ pageNumber: this._page });\n }\n this.update();\n }\n }\n updateSize() {\n const currentViewer = this.getCurrentViewer();\n from(this._pdf.getPage(currentViewer.currentPageNumber))\n .pipe(takeUntil(this.destroy$))\n .subscribe({\n next: (page) => {\n const rotation = this._rotation || page.rotate;\n const viewportWidth = page.getViewport({\n scale: this._zoom,\n rotation\n }).width * PdfViewerComponent.CSS_UNITS;\n let scale = this._zoom;\n let stickToPage = true;\n // Scale the document when it shouldn't be in original size or doesn't fit into the viewport\n if (!this._originalSize ||\n (this._fitToPage &&\n viewportWidth > this.pdfViewerContainer.nativeElement.clientWidth)) {\n const viewPort = page.getViewport({ scale: 1, rotation });\n scale = this.getScale(viewPort.width, viewPort.height);\n stickToPage = !this._stickToPage;\n }\n currentViewer._setScale(scale, stickToPage);\n }\n });\n }\n clear() {\n if (this.loadingTask && !this.loadingTask.destroyed) {\n this.loadingTask.destroy();\n }\n if (this._pdf) {\n this._pdf.destroy();\n this._pdf = null;\n this.pdfMultiPageViewer.setDocument(null);\n this.pdfSinglePageViewer.setDocument(null);\n this.pdfMultiPageLinkService.setDocument(null, null);\n this.pdfSinglePageLinkService.setDocument(null, null);\n this.pdfMultiPageFindController.setDocument(null);\n this.pdfSinglePageFindController.setDocument(null);\n }\n }\n getPDFLinkServiceConfig() {\n const pdfLinkServiceConfig = {};\n const linkTarget = PdfViewerComponent.getLinkTarget(this._externalLinkTarget);\n if (linkTarget) {\n pdfLinkServiceConfig.externalLinkTarget = linkTarget;\n }\n return pdfLinkServiceConfig;\n }\n setupMultiPageViewer() {\n assign(PDFJS, 'disableTextLayer', !this._renderText);\n const eventBus = createEventBus(PDFJSViewer, this.destroy$);\n fromEvent(eventBus, 'pagerendered')\n .pipe(takeUntil(this.destroy$))\n .subscribe((event) => {\n this.pageRendered.emit(event);\n });\n fromEvent(eventBus, 'pagesinit')\n .pipe(takeUntil(this.destroy$))\n .subscribe((event) => {\n this.pageInitialized.emit(event);\n });\n fromEvent(eventBus, 'pagechanging')\n .pipe(takeUntil(this.destroy$))\n .subscribe(({ pageNumber }) => {\n if (this.pageScrollTimeout) {\n clearTimeout(this.pageScrollTimeout);\n }\n this.pageScrollTimeout = window.setTimeout(() => {\n this._latestScrolledPage = pageNumber;\n this.pageChange.emit(pageNumber);\n }, 100);\n });\n fromEvent(eventBus, 'textlayerrendered')\n .pipe(takeUntil(this.destroy$))\n .subscribe((event) => {\n this.textLayerRendered.emit(event);\n });\n this.pdfMultiPageLinkService = new PDFJSViewer.PDFLinkService(Object.assign({ eventBus }, this.getPDFLinkServiceConfig()));\n this.pdfMultiPageFindController = new PDFJSViewer.PDFFindController({\n linkService: this.pdfMultiPageLinkService,\n eventBus\n });\n const pdfOptions = {\n eventBus,\n container: this.element.nativeElement.querySelector('div'),\n removePageBorders: !this._showBorders,\n linkService: this.pdfMultiPageLinkService,\n textLayerMode: this._renderText\n ? this._renderTextMode\n : RenderTextMode.DISABLED,\n findController: this.pdfMultiPageFindController,\n renderer: 'canvas',\n l10n: undefined\n };\n this.pdfMultiPageViewer = new PDFJSViewer.PDFViewer(pdfOptions);\n this.pdfMultiPageLinkService.setViewer(this.pdfMultiPageViewer);\n this.pdfMultiPageFindController.setDocument(this._pdf);\n }\n setupSinglePageViewer() {\n assign(PDFJS, 'disableTextLayer', !this._renderText);\n const eventBus = createEventBus(PDFJSViewer, this.destroy$);\n fromEvent(eventBus, 'pagechanging')\n .pipe(takeUntil(this.destroy$))\n .subscribe(({ pageNumber }) => {\n if (pageNumber !== this._page) {\n this.page = pageNumber;\n }\n });\n fromEvent(eventBus, 'pagerendered')\n .pipe(takeUntil(this.destroy$))\n .subscribe((event) => {\n this.pageRendered.emit(event);\n });\n fromEvent(eventBus, 'pagesinit')\n .pipe(takeUntil(this.destroy$))\n .subscribe((event) => {\n this.pageInitialized.emit(event);\n });\n fromEvent(eventBus, 'textlayerrendered')\n .pipe(takeUntil(this.destroy$))\n .subscribe((event) => {\n this.textLayerRendered.emit(event);\n });\n this.pdfSinglePageLinkService = new PDFJSViewer.PDFLinkService(Object.assign({ eventBus }, this.getPDFLinkServiceConfig()));\n this.pdfSinglePageFindController = new PDFJSViewer.PDFFindController({\n linkService: this.pdfSinglePageLinkService,\n eventBus\n });\n const pdfOptions = {\n eventBus,\n container: this.element.nativeElement.querySelector('div'),\n removePageBorders: !this._showBorders,\n linkService: this.pdfSinglePageLinkService,\n textLayerMode: this._renderText\n ? this._renderTextMode\n : RenderTextMode.DISABLED,\n findController: this.pdfSinglePageFindController\n };\n this.pdfSinglePageViewer = new PDFJSViewer.PDFSinglePageViewer(pdfOptions);\n this.pdfSinglePageLinkService.setViewer(this.pdfSinglePageViewer);\n this.pdfSinglePageFindController.setDocument(this._pdf);\n this.pdfSinglePageViewer._currentPageNumber = this._page;\n }\n getValidPageNumber(page) {\n if (page < 1) {\n return 1;\n }\n if (page > this._pdf.numPages) {\n return this._pdf.numPages;\n }\n return page;\n }\n getDocumentParams() {\n const srcType = typeof this.src;\n if (!this._cMapsUrl) {\n return this.src;\n }\n const params = {\n cMapUrl: this._cMapsUrl,\n cMapPacked: true\n };\n if (srcType === 'string') {\n params.url = this.src;\n }\n else if (srcType === 'object') {\n if (this.src.byteLength !== undefined) {\n params.data = this.src;\n }\n else {\n Object.assign(params, this.src);\n }\n }\n return params;\n }\n loadPDF() {\n if (!this.src) {\n return;\n }\n if (this.lastLoaded === this.src) {\n this.update();\n return;\n }\n this.clear();\n this.loadingTask = PDFJS.getDocument(this.getDocumentParams());\n this.loadingTask.onProgress = (progressData) => {\n this.onProgress.emit(progressData);\n };\n const src = this.src;\n from(this.loadingTask.promise)\n .pipe(takeUntil(this.destroy$))\n .subscribe({\n next: (pdf) => {\n this._pdf = pdf;\n this.lastLoaded = src;\n this.afterLoadComplete.emit(pdf);\n if (!this.pdfMultiPageViewer) {\n this.setupMultiPageViewer();\n this.setupSinglePageViewer();\n }\n this.resetPdfDocument();\n this.update();\n },\n error: (error) => {\n this.onError.emit(error);\n }\n });\n }\n update() {\n this.page = this._page;\n this.render();\n }\n render() {\n this._page = this.getValidPageNumber(this._page);\n const currentViewer = this.getCurrentViewer();\n if (this._rotation !== 0 ||\n currentViewer.pagesRotation !== this._rotation) {\n setTimeout(() => {\n currentViewer.pagesRotation = this._rotation;\n });\n }\n if (this._stickToPage) {\n setTimeout(() => {\n currentViewer.currentPageNumber = this._page;\n });\n }\n this.updateSize();\n }\n getScale(viewportWidth, viewportHeight) {\n const borderSize = (this._showBorders ? 2 * PdfViewerComponent.BORDER_WIDTH : 0);\n const pdfContainerWidth = this.pdfViewerContainer.nativeElement.clientWidth - borderSize;\n const pdfContainerHeight = this.pdfViewerContainer.nativeElement.clientHeight - borderSize;\n if (pdfContainerHeight === 0 || viewportHeight === 0 || pdfContainerWidth === 0 || viewportWidth === 0) {\n return 1;\n }\n let ratio = 1;\n switch (this._zoomScale) {\n case 'page-fit':\n ratio = Math.min((pdfContainerHeight / viewportHeight), (pdfContainerWidth / viewportWidth));\n break;\n case 'page-height':\n ratio = (pdfContainerHeight / viewportHeight);\n break;\n case 'page-width':\n default:\n ratio = (pdfContainerWidth / viewportWidth);\n break;\n }\n return (this._zoom * ratio) / PdfViewerComponent.CSS_UNITS;\n }\n getCurrentViewer() {\n return this._showAll ? this.pdfMultiPageViewer : this.pdfSinglePageViewer;\n }\n resetPdfDocument() {\n this.pdfFindController.setDocument(this._pdf);\n if (this._showAll) {\n this.pdfSinglePageViewer.setDocument(null);\n this.pdfSinglePageLinkService.setDocument(null);\n this.pdfMultiPageViewer.setDocument(this._pdf);\n this.pdfMultiPageLinkService.setDocument(this._pdf, null);\n }\n else {\n this.pdfMultiPageViewer.setDocument(null);\n this.pdfMultiPageLinkService.setDocument(null);\n this.pdfSinglePageViewer.setDocument(this._pdf);\n this.pdfSinglePageLinkService.setDocument(this._pdf, null);\n }\n }\n initialize() {\n if (isSSR() || !this.isVisible) {\n return;\n }\n this.isInitialized = true;\n this.setupMultiPageViewer();\n this.setupSinglePageViewer();\n }\n setupResizeListener() {\n if (isSSR()) {\n return;\n }\n this.ngZone.runOutsideAngular(() => {\n fromEvent(window, 'resize')\n .pipe(debounceTime(100), filter(() => this._canAutoResize && !!this._pdf), takeUntil(this.destroy$))\n .subscribe(() => {\n this.updateSize();\n });\n });\n }\n}\nPdfViewerComponent.ɵfac = function PdfViewerComponent_Factory(t) { return new (t || PdfViewerComponent)(ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ElementRef), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.NgZone)); };\nPdfViewerComponent.ɵcmp = /*@__PURE__*/ ɵngcc0.ɵɵdefineComponent({ type: PdfViewerComponent, selectors: [[\"pdf-viewer\"]], viewQuery: function PdfViewerComponent_Query(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵviewQuery(_c0, 5);\n } if (rf & 2) {\n let _t;\n ɵngcc0.ɵɵqueryRefresh(_t = ɵngcc0.ɵɵloadQuery()) && (ctx.pdfViewerContainer = _t.first);\n } }, inputs: { cMapsUrl: [\"c-maps-url\", \"cMapsUrl\"], page: \"page\", renderText: [\"render-text\", \"renderText\"], renderTextMode: [\"render-text-mode\", \"renderTextMode\"], originalSize: [\"original-size\", \"originalSize\"], showAll: [\"show-all\", \"showAll\"], stickToPage: [\"stick-to-page\", \"stickToPage\"], zoom: \"zoom\", zoomScale: [\"zoom-scale\", \"zoomScale\"], rotation: \"rotation\", externalLinkTarget: [\"external-link-target\", \"externalLinkTarget\"], autoresize: \"autoresize\", fitToPage: [\"fit-to-page\", \"fitToPage\"], showBorders: [\"show-borders\", \"showBorders\"], src: \"src\" }, outputs: { afterLoadComplete: \"after-load-complete\", pageRendered: \"page-rendered\", pageInitialized: \"pages-initialized\", textLayerRendered: \"text-layer-rendered\", onError: \"error\", onProgress: \"on-progress\", pageChange: \"pageChange\" }, features: [ɵngcc0.ɵɵNgOnChangesFeature], decls: 3, vars: 0, consts: [[1, \"ng2-pdf-viewer-container\"], [\"pdfViewerContainer\", \"\"], [1, \"pdfViewer\"]], template: function PdfViewerComponent_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵelementStart(0, \"div\", 0, 1);\n ɵngcc0.ɵɵelement(2, \"div\", 2);\n ɵngcc0.ɵɵelementEnd();\n } }, styles: [\".ng2-pdf-viewer-container[_ngcontent-%COMP%]{overflow-x:auto;position:absolute;height:100%;width:100%;-webkit-overflow-scrolling:touch}[_nghost-%COMP%]{display:block;position:relative}[_nghost-%COMP%] {--annotation-unfocused-field-background:url(\\\"data:image/svg+xml;charset=UTF-8,\\\");--xfa-unfocused-field-background:url(\\\"data:image/svg+xml;charset=UTF-8,\\\");--pdfViewer-padding-bottom:none;--page-margin:1px auto -8px;--page-border:9px solid transparent;--spreadHorizontalWrapped-margin-LR:-3.5px;--zoom-factor:1}@media screen and (forced-colors:active){[_nghost-%COMP%] {--pdfViewer-padding-bottom:9px;--page-margin:9px auto 0;--page-border:none;--spreadHorizontalWrapped-margin-LR:4.5px}}[_nghost-%COMP%] .textLayer{position:absolute;text-align:initial;left:0;top:0;right:0;bottom:0;overflow:hidden;opacity:.2;line-height:1}[_nghost-%COMP%] .textLayer br, [_nghost-%COMP%] .textLayer span{color:transparent;position:absolute;white-space:pre;cursor:text;transform-origin:0 0}[_nghost-%COMP%] .textLayer .highlight{margin:-1px;padding:1px;background-color:#b400aa;border-radius:4px}[_nghost-%COMP%] .textLayer .highlight.appended{position:static}[_nghost-%COMP%] .textLayer .highlight.begin{border-radius:4px 0 0 4px}[_nghost-%COMP%] .textLayer .highlight.end{border-radius:0 4px 4px 0}[_nghost-%COMP%] .textLayer .highlight.middle{border-radius:0}[_nghost-%COMP%] .textLayer .highlight.selected{background-color:#006400}[_nghost-%COMP%] .textLayer ::-moz-selection{background:#00f}[_nghost-%COMP%] .textLayer ::-moz-selection, [_nghost-%COMP%] .textLayer ::selection{background:#00f}[_nghost-%COMP%] .textLayer br::-moz-selection{background:transparent}[_nghost-%COMP%] .textLayer br::-moz-selection, [_nghost-%COMP%] .textLayer br::selection{background:transparent}[_nghost-%COMP%] .textLayer .endOfContent{display:block;position:absolute;left:0;top:100%;right:0;bottom:0;z-index:-1;cursor:default;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}[_nghost-%COMP%] .textLayer .endOfContent.active{top:0}[_nghost-%COMP%] .annotationLayer section{position:absolute;text-align:initial}[_nghost-%COMP%] .annotationLayer .buttonWidgetAnnotation.pushButton>a, [_nghost-%COMP%] .annotationLayer .linkAnnotation>a{position:absolute;font-size:1em;top:0;left:0;width:100%;height:100%}[_nghost-%COMP%] .annotationLayer .buttonWidgetAnnotation.pushButton>a:hover, [_nghost-%COMP%] .annotationLayer .linkAnnotation>a:hover{opacity:.2;background:#ff0;box-shadow:0 2px 10px #ff0}[_nghost-%COMP%] .annotationLayer .textAnnotation img{position:absolute;cursor:pointer}[_nghost-%COMP%] .annotationLayer .buttonWidgetAnnotation.checkBox input, [_nghost-%COMP%] .annotationLayer .buttonWidgetAnnotation.radioButton input, [_nghost-%COMP%] .annotationLayer .choiceWidgetAnnotation select, [_nghost-%COMP%] .annotationLayer .textWidgetAnnotation input, [_nghost-%COMP%] .annotationLayer .textWidgetAnnotation textarea{background-image:var(--annotation-unfocused-field-background);border:1px solid transparent;box-sizing:border-box;font-size:9px;height:100%;margin:0;padding:0 3px;vertical-align:top;width:100%}[_nghost-%COMP%] .annotationLayer .choiceWidgetAnnotation select option{padding:0}[_nghost-%COMP%] .annotationLayer .buttonWidgetAnnotation.radioButton input{border-radius:50%}[_nghost-%COMP%] .annotationLayer .textWidgetAnnotation textarea{font:message-box;font-size:9px;resize:none}[_nghost-%COMP%] .annotationLayer .buttonWidgetAnnotation.checkBox input[disabled], [_nghost-%COMP%] .annotationLayer .buttonWidgetAnnotation.radioButton input[disabled], [_nghost-%COMP%] .annotationLayer .choiceWidgetAnnotation select[disabled], [_nghost-%COMP%] .annotationLayer .textWidgetAnnotation input[disabled], [_nghost-%COMP%] .annotationLayer .textWidgetAnnotation textarea[disabled]{background:none;border:1px solid transparent;cursor:not-allowed}[_nghost-%COMP%] .annotationLayer .buttonWidgetAnnotation.checkBox input:hover, [_nghost-%COMP%] .annotationLayer .buttonWidgetAnnotation.radioButton input:hover, [_nghost-%COMP%] .annotationLayer .choiceWidgetAnnotation select:hover, [_nghost-%COMP%] .annotationLayer .textWidgetAnnotation input:hover, [_nghost-%COMP%] .annotationLayer .textWidgetAnnotation textarea:hover{border:1px solid #000}[_nghost-%COMP%] .annotationLayer .choiceWidgetAnnotation select:focus, [_nghost-%COMP%] .annotationLayer .textWidgetAnnotation input:focus, [_nghost-%COMP%] .annotationLayer .textWidgetAnnotation textarea:focus{background:none;border:1px solid transparent}[_nghost-%COMP%] .annotationLayer .buttonWidgetAnnotation.checkBox :focus, [_nghost-%COMP%] .annotationLayer .buttonWidgetAnnotation.radioButton :focus, [_nghost-%COMP%] .annotationLayer .choiceWidgetAnnotation select :focus, [_nghost-%COMP%] .annotationLayer .textWidgetAnnotation input :focus, [_nghost-%COMP%] .annotationLayer .textWidgetAnnotation textarea :focus{background-image:none;background-color:transparent;outline:auto}[_nghost-%COMP%] .annotationLayer .buttonWidgetAnnotation.checkBox input:checked:after, [_nghost-%COMP%] .annotationLayer .buttonWidgetAnnotation.checkBox input:checked:before, [_nghost-%COMP%] .annotationLayer .buttonWidgetAnnotation.radioButton input:checked:before{background-color:#000;content:\\\"\\\";display:block;position:absolute}[_nghost-%COMP%] .annotationLayer .buttonWidgetAnnotation.checkBox input:checked:after, [_nghost-%COMP%] .annotationLayer .buttonWidgetAnnotation.checkBox input:checked:before{height:80%;left:45%;width:1px}[_nghost-%COMP%] .annotationLayer .buttonWidgetAnnotation.checkBox input:checked:before{transform:rotate(45deg)}[_nghost-%COMP%] .annotationLayer .buttonWidgetAnnotation.checkBox input:checked:after{transform:rotate(-45deg)}[_nghost-%COMP%] .annotationLayer .buttonWidgetAnnotation.radioButton input:checked:before{border-radius:50%;height:50%;left:30%;top:20%;width:50%}[_nghost-%COMP%] .annotationLayer .textWidgetAnnotation input.comb{font-family:monospace;padding-left:2px;padding-right:0}[_nghost-%COMP%] .annotationLayer .buttonWidgetAnnotation.checkBox input, [_nghost-%COMP%] .annotationLayer .buttonWidgetAnnotation.radioButton input{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:0}[_nghost-%COMP%] .annotationLayer .popupWrapper{position:absolute;width:20em}[_nghost-%COMP%] .annotationLayer .popup{position:absolute;z-index:200;max-width:20em;background-color:#ff9;box-shadow:0 2px 5px #888;border-radius:2px;padding:6px;margin-left:5px;cursor:pointer;font:message-box;font-size:9px;white-space:normal;word-wrap:break-word}[_nghost-%COMP%] .annotationLayer .popup>*{font-size:9px}[_nghost-%COMP%] .annotationLayer .popup h1{display:inline-block}[_nghost-%COMP%] .annotationLayer .popup span{display:inline-block;margin-left:5px}[_nghost-%COMP%] .annotationLayer .popup p{border-top:1px solid #333;margin-top:2px;padding-top:2px}[_nghost-%COMP%] .annotationLayer .caretAnnotation, [_nghost-%COMP%] .annotationLayer .circleAnnotation svg ellipse, [_nghost-%COMP%] .annotationLayer .fileAttachmentAnnotation, [_nghost-%COMP%] .annotationLayer .freeTextAnnotation, [_nghost-%COMP%] .annotationLayer .highlightAnnotation, [_nghost-%COMP%] .annotationLayer .inkAnnotation svg polyline, [_nghost-%COMP%] .annotationLayer .lineAnnotation svg line, [_nghost-%COMP%] .annotationLayer .polygonAnnotation svg polygon, [_nghost-%COMP%] .annotationLayer .polylineAnnotation svg polyline, [_nghost-%COMP%] .annotationLayer .squareAnnotation svg rect, [_nghost-%COMP%] .annotationLayer .squigglyAnnotation, [_nghost-%COMP%] .annotationLayer .stampAnnotation, [_nghost-%COMP%] .annotationLayer .strikeoutAnnotation, [_nghost-%COMP%] .annotationLayer .underlineAnnotation{cursor:pointer}[_nghost-%COMP%] .xfaLayer .highlight{margin:-1px;padding:1px;background-color:#efcbed;border-radius:4px}[_nghost-%COMP%] .xfaLayer .highlight.appended{position:static}[_nghost-%COMP%] .xfaLayer .highlight.begin{border-radius:4px 0 0 4px}[_nghost-%COMP%] .xfaLayer .highlight.end{border-radius:0 4px 4px 0}[_nghost-%COMP%] .xfaLayer .highlight.middle{border-radius:0}[_nghost-%COMP%] .xfaLayer .highlight.selected{background-color:#cbdfcb}[_nghost-%COMP%] .xfaLayer ::-moz-selection{background:#00f}[_nghost-%COMP%] .xfaLayer ::-moz-selection, [_nghost-%COMP%] .xfaLayer ::selection{background:#00f}[_nghost-%COMP%] .xfaPage{overflow:hidden;position:relative}[_nghost-%COMP%] .xfaContentarea{position:absolute}[_nghost-%COMP%] .xfaPrintOnly{display:none}[_nghost-%COMP%] .xfaLayer{position:absolute;text-align:initial;top:0;left:0;transform-origin:0 0;line-height:1.2}[_nghost-%COMP%] .xfaLayer *{color:inherit;font:inherit;font-style:inherit;font-weight:inherit;-webkit-font-kerning:inherit;font-kerning:inherit;letter-spacing:-.01px;text-align:inherit;text-decoration:inherit;box-sizing:border-box;background-color:transparent;padding:0;margin:0;pointer-events:auto;line-height:inherit}[_nghost-%COMP%] .xfaLayer div, [_nghost-%COMP%] .xfaLayer svg, [_nghost-%COMP%] .xfaLayer svg *{pointer-events:none}[_nghost-%COMP%] .xfaLayer a{color:#00f}[_nghost-%COMP%] .xfaRich li{margin-left:3em}[_nghost-%COMP%] .xfaFont{color:#000;font-weight:400;-webkit-font-kerning:none;font-kerning:none;font-size:10px;font-style:normal;letter-spacing:0;text-decoration:none;vertical-align:0}[_nghost-%COMP%] .xfaCaption{overflow:hidden;flex:0 0 auto}[_nghost-%COMP%] .xfaCaptionForCheckButton{overflow:hidden;flex:1 1 auto}[_nghost-%COMP%] .xfaLabel{height:100%;width:100%}[_nghost-%COMP%] .xfaLeft{display:flex;flex-direction:row;align-items:center}[_nghost-%COMP%] .xfaRight{display:flex;flex-direction:row-reverse;align-items:center}[_nghost-%COMP%] .xfaLeft>.xfaCaption, [_nghost-%COMP%] .xfaLeft>.xfaCaptionForCheckButton, [_nghost-%COMP%] .xfaRight>.xfaCaption, [_nghost-%COMP%] .xfaRight>.xfaCaptionForCheckButton{max-height:100%}[_nghost-%COMP%] .xfaTop{display:flex;flex-direction:column;align-items:flex-start}[_nghost-%COMP%] .xfaBottom{display:flex;flex-direction:column-reverse;align-items:flex-start}[_nghost-%COMP%] .xfaBottom>.xfaCaption, [_nghost-%COMP%] .xfaBottom>.xfaCaptionForCheckButton, [_nghost-%COMP%] .xfaTop>.xfaCaption, [_nghost-%COMP%] .xfaTop>.xfaCaptionForCheckButton{width:100%}[_nghost-%COMP%] .xfaBorder{background-color:transparent;position:absolute;pointer-events:none}[_nghost-%COMP%] .xfaWrapped{width:100%;height:100%}[_nghost-%COMP%] .xfaSelect:focus, [_nghost-%COMP%] .xfaTextfield:focus{background-image:none;background-color:transparent;outline:auto;outline-offset:-1px}[_nghost-%COMP%] .xfaCheckbox:focus, [_nghost-%COMP%] .xfaRadio:focus{outline:auto}[_nghost-%COMP%] .xfaSelect, [_nghost-%COMP%] .xfaTextfield{height:100%;width:100%;flex:1 1 auto;border:none;resize:none;background-image:var(--xfa-unfocused-field-background)}[_nghost-%COMP%] .xfaBottom>.xfaSelect, [_nghost-%COMP%] .xfaBottom>.xfaTextfield, [_nghost-%COMP%] .xfaTop>.xfaSelect, [_nghost-%COMP%] .xfaTop>.xfaTextfield{flex:0 1 auto}[_nghost-%COMP%] .xfaButton{cursor:pointer;width:100%;height:100%;border:none;text-align:center}[_nghost-%COMP%] .xfaLink{width:100%;height:100%}[_nghost-%COMP%] .xfaCheckbox, [_nghost-%COMP%] .xfaRadio{width:100%;height:100%;flex:0 0 auto;border:none}[_nghost-%COMP%] .xfaRich{white-space:pre-wrap;width:100%;height:100%}[_nghost-%COMP%] .xfaImage{-o-object-position:left top;object-position:left top;-o-object-fit:contain;object-fit:contain;width:100%;height:100%}[_nghost-%COMP%] .xfaLrTb, [_nghost-%COMP%] .xfaRlTb, [_nghost-%COMP%] .xfaTb{display:flex;flex-direction:column;align-items:stretch}[_nghost-%COMP%] .xfaLr{display:flex;flex-direction:row;align-items:stretch}[_nghost-%COMP%] .xfaRl{display:flex;flex-direction:row-reverse;align-items:stretch}[_nghost-%COMP%] .xfaTb>div{justify-content:left}[_nghost-%COMP%] .xfaArea, [_nghost-%COMP%] .xfaPosition{position:relative}[_nghost-%COMP%] .xfaValignMiddle{display:flex;align-items:center}[_nghost-%COMP%] .xfaTable{display:flex;flex-direction:column;align-items:stretch}[_nghost-%COMP%] .xfaTable .xfaRow{display:flex;flex-direction:row;align-items:stretch}[_nghost-%COMP%] .xfaTable .xfaRlRow{display:flex;flex-direction:row-reverse;align-items:stretch;flex:1}[_nghost-%COMP%] .xfaTable .xfaRlRow>div{flex:1}[_nghost-%COMP%] .xfaDisabled input, [_nghost-%COMP%] .xfaDisabled textarea, [_nghost-%COMP%] .xfaNonInteractive input, [_nghost-%COMP%] .xfaNonInteractive textarea, [_nghost-%COMP%] .xfaReadOnly input, [_nghost-%COMP%] .xfaReadOnly textarea{background:initial}@media print{[_nghost-%COMP%] .xfaTextfield{background:transparent}[_nghost-%COMP%] .xfaSelect{background:transparent;-webkit-appearance:none;-moz-appearance:none;appearance:none;text-indent:1px;text-overflow:\\\"\\\"}}[_nghost-%COMP%] .pdfViewer{padding-bottom:var(--pdfViewer-padding-bottom)}[_nghost-%COMP%] .pdfViewer .canvasWrapper{overflow:hidden}[_nghost-%COMP%] .pdfViewer .page{direction:ltr;width:816px;height:1056px;margin:var(--page-margin);position:relative;overflow:visible;border:var(--page-border);background-clip:content-box;-o-border-image:url(\\\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABMAAAATCAQAAADYWf5HAAAA6UlEQVR4Xl2Pi2rEMAwE16fm1f7/r14v7w4rI0IzLAF7hLxNevBSEMEF5+OilNCsRd8ZMyn+a4NmsOT8WJw1lFbSYgGFzF2bLFoLjTClWjKKGRWpDYAGXUnZ4uhbBUzF3Oe/GG/ue2fn4GgsyXhNgysV2JnrhKEMg4fEZcALmiKbNhBBRFpSyDOj1G4QOVly6O1FV54ZZq8OVygrciDt6JazRgi1ljTPH0gbrPmHPXAbCiDd4GawIjip1TPh9tt2sz24qaCjr/jAb/GBFTbq9KZ7Ke/Cqt8nayUikZKsWZK7Fe6bg5dOUt8fZHWG2BHc+6EAAAAASUVORK5CYII=\\\") 9 9 repeat;border-image:url(\\\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABMAAAATCAQAAADYWf5HAAAA6UlEQVR4Xl2Pi2rEMAwE16fm1f7/r14v7w4rI0IzLAF7hLxNevBSEMEF5+OilNCsRd8ZMyn+a4NmsOT8WJw1lFbSYgGFzF2bLFoLjTClWjKKGRWpDYAGXUnZ4uhbBUzF3Oe/GG/ue2fn4GgsyXhNgysV2JnrhKEMg4fEZcALmiKbNhBBRFpSyDOj1G4QOVly6O1FV54ZZq8OVygrciDt6JazRgi1ljTPH0gbrPmHPXAbCiDd4GawIjip1TPh9tt2sz24qaCjr/jAb/GBFTbq9KZ7Ke/Cqt8nayUikZKsWZK7Fe6bg5dOUt8fZHWG2BHc+6EAAAAASUVORK5CYII=\\\") 9 9 repeat;background-color:#fff}[_nghost-%COMP%] .pdfViewer.removePageBorders .page{margin:0 auto 10px;border:none}[_nghost-%COMP%] .pdfViewer.singlePageView{display:inline-block}[_nghost-%COMP%] .pdfViewer.singlePageView .page{margin:0;border:none}[_nghost-%COMP%] .pdfViewer.scrollHorizontal, [_nghost-%COMP%] .pdfViewer.scrollWrapped, [_nghost-%COMP%] .spread{margin-left:3.5px;margin-right:3.5px;text-align:center}[_nghost-%COMP%] .pdfViewer.scrollHorizontal, [_nghost-%COMP%] .spread{white-space:nowrap}[_nghost-%COMP%] .pdfViewer.removePageBorders, [_nghost-%COMP%] .pdfViewer.scrollHorizontal .spread, [_nghost-%COMP%] .pdfViewer.scrollWrapped .spread{margin-left:0;margin-right:0}[_nghost-%COMP%] .pdfViewer.scrollHorizontal .page, [_nghost-%COMP%] .pdfViewer.scrollHorizontal .spread, [_nghost-%COMP%] .pdfViewer.scrollWrapped .page, [_nghost-%COMP%] .pdfViewer.scrollWrapped .spread, [_nghost-%COMP%] .spread .page{display:inline-block;vertical-align:middle}[_nghost-%COMP%] .pdfViewer.scrollHorizontal .page, [_nghost-%COMP%] .pdfViewer.scrollWrapped .page, [_nghost-%COMP%] .spread .page{margin-left:var(--spreadHorizontalWrapped-margin-LR);margin-right:var(--spreadHorizontalWrapped-margin-LR)}[_nghost-%COMP%] .pdfViewer.removePageBorders.scrollHorizontal .page, [_nghost-%COMP%] .pdfViewer.removePageBorders.scrollWrapped .page, [_nghost-%COMP%] .pdfViewer.removePageBorders .spread .page{margin-left:5px;margin-right:5px}[_nghost-%COMP%] .pdfViewer .page canvas{margin:0;display:block}[_nghost-%COMP%] .pdfViewer .page canvas[hidden]{display:none}[_nghost-%COMP%] .pdfViewer .page .loadingIcon{position:absolute;display:block;left:0;top:0;right:0;bottom:0;background:url(\\\"data:image/gif;base64,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\\\") 50% no-repeat}[_nghost-%COMP%] .pdfPresentationMode .pdfViewer{margin-left:0;margin-right:0}[_nghost-%COMP%] .pdfPresentationMode .pdfViewer .page, [_nghost-%COMP%] .pdfPresentationMode .pdfViewer .spread{display:block}[_nghost-%COMP%] .pdfPresentationMode .pdfViewer .page, [_nghost-%COMP%] .pdfPresentationMode .pdfViewer.removePageBorders .page{margin-left:auto;margin-right:auto}[_nghost-%COMP%] .pdfPresentationMode:-webkit-full-screen .pdfViewer .page{margin-bottom:100%;border:0}[_nghost-%COMP%] .pdfPresentationMode:-webkit-full-screen .pdfViewer .page, [_nghost-%COMP%] .pdfPresentationMode:fullscreen .pdfViewer .page{margin-bottom:100%;border:0}\"] });\nPdfViewerComponent.CSS_UNITS = 96.0 / 72.0;\nPdfViewerComponent.BORDER_WIDTH = 9;\nPdfViewerComponent.ctorParameters = () => [\n { type: ElementRef },\n { type: NgZone }\n];\nPdfViewerComponent.propDecorators = {\n pdfViewerContainer: [{ type: ViewChild, args: ['pdfViewerContainer',] }],\n afterLoadComplete: [{ type: Output, args: ['after-load-complete',] }],\n pageRendered: [{ type: Output, args: ['page-rendered',] }],\n pageInitialized: [{ type: Output, args: ['pages-initialized',] }],\n textLayerRendered: [{ type: Output, args: ['text-layer-rendered',] }],\n onError: [{ type: Output, args: ['error',] }],\n onProgress: [{ type: Output, args: ['on-progress',] }],\n pageChange: [{ type: Output }],\n src: [{ type: Input }],\n cMapsUrl: [{ type: Input, args: ['c-maps-url',] }],\n page: [{ type: Input, args: ['page',] }],\n renderText: [{ type: Input, args: ['render-text',] }],\n renderTextMode: [{ type: Input, args: ['render-text-mode',] }],\n originalSize: [{ type: Input, args: ['original-size',] }],\n showAll: [{ type: Input, args: ['show-all',] }],\n stickToPage: [{ type: Input, args: ['stick-to-page',] }],\n zoom: [{ type: Input, args: ['zoom',] }],\n zoomScale: [{ type: Input, args: ['zoom-scale',] }],\n rotation: [{ type: Input, args: ['rotation',] }],\n externalLinkTarget: [{ type: Input, args: ['external-link-target',] }],\n autoresize: [{ type: Input, args: ['autoresize',] }],\n fitToPage: [{ type: Input, args: ['fit-to-page',] }],\n showBorders: [{ type: Input, args: ['show-borders',] }]\n};\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(PdfViewerComponent, [{\n type: Component,\n args: [{\n selector: 'pdf-viewer',\n template: `\n

\n
\n
\n `,\n styles: [\".ng2-pdf-viewer-container{overflow-x:auto;position:absolute;height:100%;width:100%;-webkit-overflow-scrolling:touch}:host{display:block;position:relative}:host ::ng-deep{--annotation-unfocused-field-background:url(\\\"data:image/svg+xml;charset=UTF-8,\\\");--xfa-unfocused-field-background:url(\\\"data:image/svg+xml;charset=UTF-8,\\\");--pdfViewer-padding-bottom:none;--page-margin:1px auto -8px;--page-border:9px solid transparent;--spreadHorizontalWrapped-margin-LR:-3.5px;--zoom-factor:1}@media screen and (forced-colors:active){:host ::ng-deep{--pdfViewer-padding-bottom:9px;--page-margin:9px auto 0;--page-border:none;--spreadHorizontalWrapped-margin-LR:4.5px}}:host ::ng-deep .textLayer{position:absolute;text-align:initial;left:0;top:0;right:0;bottom:0;overflow:hidden;opacity:.2;line-height:1}:host ::ng-deep .textLayer br,:host ::ng-deep .textLayer span{color:transparent;position:absolute;white-space:pre;cursor:text;transform-origin:0 0}:host ::ng-deep .textLayer .highlight{margin:-1px;padding:1px;background-color:#b400aa;border-radius:4px}:host ::ng-deep .textLayer .highlight.appended{position:static}:host ::ng-deep .textLayer .highlight.begin{border-radius:4px 0 0 4px}:host ::ng-deep .textLayer .highlight.end{border-radius:0 4px 4px 0}:host ::ng-deep .textLayer .highlight.middle{border-radius:0}:host ::ng-deep .textLayer .highlight.selected{background-color:#006400}:host ::ng-deep .textLayer ::-moz-selection{background:#00f}:host ::ng-deep .textLayer ::-moz-selection,:host ::ng-deep .textLayer ::selection{background:#00f}:host ::ng-deep .textLayer br::-moz-selection{background:transparent}:host ::ng-deep .textLayer br::-moz-selection,:host ::ng-deep .textLayer br::selection{background:transparent}:host ::ng-deep .textLayer .endOfContent{display:block;position:absolute;left:0;top:100%;right:0;bottom:0;z-index:-1;cursor:default;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}:host ::ng-deep .textLayer .endOfContent.active{top:0}:host ::ng-deep .annotationLayer section{position:absolute;text-align:initial}:host ::ng-deep .annotationLayer .buttonWidgetAnnotation.pushButton>a,:host ::ng-deep .annotationLayer .linkAnnotation>a{position:absolute;font-size:1em;top:0;left:0;width:100%;height:100%}:host ::ng-deep .annotationLayer .buttonWidgetAnnotation.pushButton>a:hover,:host ::ng-deep .annotationLayer .linkAnnotation>a:hover{opacity:.2;background:#ff0;box-shadow:0 2px 10px #ff0}:host ::ng-deep .annotationLayer .textAnnotation img{position:absolute;cursor:pointer}:host ::ng-deep .annotationLayer .buttonWidgetAnnotation.checkBox input,:host ::ng-deep .annotationLayer .buttonWidgetAnnotation.radioButton input,:host ::ng-deep .annotationLayer .choiceWidgetAnnotation select,:host ::ng-deep .annotationLayer .textWidgetAnnotation input,:host ::ng-deep .annotationLayer .textWidgetAnnotation textarea{background-image:var(--annotation-unfocused-field-background);border:1px solid transparent;box-sizing:border-box;font-size:9px;height:100%;margin:0;padding:0 3px;vertical-align:top;width:100%}:host ::ng-deep .annotationLayer .choiceWidgetAnnotation select option{padding:0}:host ::ng-deep .annotationLayer .buttonWidgetAnnotation.radioButton input{border-radius:50%}:host ::ng-deep .annotationLayer .textWidgetAnnotation textarea{font:message-box;font-size:9px;resize:none}:host ::ng-deep .annotationLayer .buttonWidgetAnnotation.checkBox input[disabled],:host ::ng-deep .annotationLayer .buttonWidgetAnnotation.radioButton input[disabled],:host ::ng-deep .annotationLayer .choiceWidgetAnnotation select[disabled],:host ::ng-deep .annotationLayer .textWidgetAnnotation input[disabled],:host ::ng-deep .annotationLayer .textWidgetAnnotation textarea[disabled]{background:none;border:1px solid transparent;cursor:not-allowed}:host ::ng-deep .annotationLayer .buttonWidgetAnnotation.checkBox input:hover,:host ::ng-deep .annotationLayer .buttonWidgetAnnotation.radioButton input:hover,:host ::ng-deep .annotationLayer .choiceWidgetAnnotation select:hover,:host ::ng-deep .annotationLayer .textWidgetAnnotation input:hover,:host ::ng-deep .annotationLayer .textWidgetAnnotation textarea:hover{border:1px solid #000}:host ::ng-deep .annotationLayer .choiceWidgetAnnotation select:focus,:host ::ng-deep .annotationLayer .textWidgetAnnotation input:focus,:host ::ng-deep .annotationLayer .textWidgetAnnotation textarea:focus{background:none;border:1px solid transparent}:host ::ng-deep .annotationLayer .buttonWidgetAnnotation.checkBox :focus,:host ::ng-deep .annotationLayer .buttonWidgetAnnotation.radioButton :focus,:host ::ng-deep .annotationLayer .choiceWidgetAnnotation select :focus,:host ::ng-deep .annotationLayer .textWidgetAnnotation input :focus,:host ::ng-deep .annotationLayer .textWidgetAnnotation textarea :focus{background-image:none;background-color:transparent;outline:auto}:host ::ng-deep .annotationLayer .buttonWidgetAnnotation.checkBox input:checked:after,:host ::ng-deep .annotationLayer .buttonWidgetAnnotation.checkBox input:checked:before,:host ::ng-deep .annotationLayer .buttonWidgetAnnotation.radioButton input:checked:before{background-color:#000;content:\\\"\\\";display:block;position:absolute}:host ::ng-deep .annotationLayer .buttonWidgetAnnotation.checkBox input:checked:after,:host ::ng-deep .annotationLayer .buttonWidgetAnnotation.checkBox input:checked:before{height:80%;left:45%;width:1px}:host ::ng-deep .annotationLayer .buttonWidgetAnnotation.checkBox input:checked:before{transform:rotate(45deg)}:host ::ng-deep .annotationLayer .buttonWidgetAnnotation.checkBox input:checked:after{transform:rotate(-45deg)}:host ::ng-deep .annotationLayer .buttonWidgetAnnotation.radioButton input:checked:before{border-radius:50%;height:50%;left:30%;top:20%;width:50%}:host ::ng-deep .annotationLayer .textWidgetAnnotation input.comb{font-family:monospace;padding-left:2px;padding-right:0}:host ::ng-deep .annotationLayer .buttonWidgetAnnotation.checkBox input,:host ::ng-deep .annotationLayer .buttonWidgetAnnotation.radioButton input{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:0}:host ::ng-deep .annotationLayer .popupWrapper{position:absolute;width:20em}:host ::ng-deep .annotationLayer .popup{position:absolute;z-index:200;max-width:20em;background-color:#ff9;box-shadow:0 2px 5px #888;border-radius:2px;padding:6px;margin-left:5px;cursor:pointer;font:message-box;font-size:9px;white-space:normal;word-wrap:break-word}:host ::ng-deep .annotationLayer .popup>*{font-size:9px}:host ::ng-deep .annotationLayer .popup h1{display:inline-block}:host ::ng-deep .annotationLayer .popup span{display:inline-block;margin-left:5px}:host ::ng-deep .annotationLayer .popup p{border-top:1px solid #333;margin-top:2px;padding-top:2px}:host ::ng-deep .annotationLayer .caretAnnotation,:host ::ng-deep .annotationLayer .circleAnnotation svg ellipse,:host ::ng-deep .annotationLayer .fileAttachmentAnnotation,:host ::ng-deep .annotationLayer .freeTextAnnotation,:host ::ng-deep .annotationLayer .highlightAnnotation,:host ::ng-deep .annotationLayer .inkAnnotation svg polyline,:host ::ng-deep .annotationLayer .lineAnnotation svg line,:host ::ng-deep .annotationLayer .polygonAnnotation svg polygon,:host ::ng-deep .annotationLayer .polylineAnnotation svg polyline,:host ::ng-deep .annotationLayer .squareAnnotation svg rect,:host ::ng-deep .annotationLayer .squigglyAnnotation,:host ::ng-deep .annotationLayer .stampAnnotation,:host ::ng-deep .annotationLayer .strikeoutAnnotation,:host ::ng-deep .annotationLayer .underlineAnnotation{cursor:pointer}:host ::ng-deep .xfaLayer .highlight{margin:-1px;padding:1px;background-color:#efcbed;border-radius:4px}:host ::ng-deep .xfaLayer .highlight.appended{position:static}:host ::ng-deep .xfaLayer .highlight.begin{border-radius:4px 0 0 4px}:host ::ng-deep .xfaLayer .highlight.end{border-radius:0 4px 4px 0}:host ::ng-deep .xfaLayer .highlight.middle{border-radius:0}:host ::ng-deep .xfaLayer .highlight.selected{background-color:#cbdfcb}:host ::ng-deep .xfaLayer ::-moz-selection{background:#00f}:host ::ng-deep .xfaLayer ::-moz-selection,:host ::ng-deep .xfaLayer ::selection{background:#00f}:host ::ng-deep .xfaPage{overflow:hidden;position:relative}:host ::ng-deep .xfaContentarea{position:absolute}:host ::ng-deep .xfaPrintOnly{display:none}:host ::ng-deep .xfaLayer{position:absolute;text-align:initial;top:0;left:0;transform-origin:0 0;line-height:1.2}:host ::ng-deep .xfaLayer *{color:inherit;font:inherit;font-style:inherit;font-weight:inherit;-webkit-font-kerning:inherit;font-kerning:inherit;letter-spacing:-.01px;text-align:inherit;text-decoration:inherit;box-sizing:border-box;background-color:transparent;padding:0;margin:0;pointer-events:auto;line-height:inherit}:host ::ng-deep .xfaLayer div,:host ::ng-deep .xfaLayer svg,:host ::ng-deep .xfaLayer svg *{pointer-events:none}:host ::ng-deep .xfaLayer a{color:#00f}:host ::ng-deep .xfaRich li{margin-left:3em}:host ::ng-deep .xfaFont{color:#000;font-weight:400;-webkit-font-kerning:none;font-kerning:none;font-size:10px;font-style:normal;letter-spacing:0;text-decoration:none;vertical-align:0}:host ::ng-deep .xfaCaption{overflow:hidden;flex:0 0 auto}:host ::ng-deep .xfaCaptionForCheckButton{overflow:hidden;flex:1 1 auto}:host ::ng-deep .xfaLabel{height:100%;width:100%}:host ::ng-deep .xfaLeft{display:flex;flex-direction:row;align-items:center}:host ::ng-deep .xfaRight{display:flex;flex-direction:row-reverse;align-items:center}:host ::ng-deep .xfaLeft>.xfaCaption,:host ::ng-deep .xfaLeft>.xfaCaptionForCheckButton,:host ::ng-deep .xfaRight>.xfaCaption,:host ::ng-deep .xfaRight>.xfaCaptionForCheckButton{max-height:100%}:host ::ng-deep .xfaTop{display:flex;flex-direction:column;align-items:flex-start}:host ::ng-deep .xfaBottom{display:flex;flex-direction:column-reverse;align-items:flex-start}:host ::ng-deep .xfaBottom>.xfaCaption,:host ::ng-deep .xfaBottom>.xfaCaptionForCheckButton,:host ::ng-deep .xfaTop>.xfaCaption,:host ::ng-deep .xfaTop>.xfaCaptionForCheckButton{width:100%}:host ::ng-deep .xfaBorder{background-color:transparent;position:absolute;pointer-events:none}:host ::ng-deep .xfaWrapped{width:100%;height:100%}:host ::ng-deep .xfaSelect:focus,:host ::ng-deep .xfaTextfield:focus{background-image:none;background-color:transparent;outline:auto;outline-offset:-1px}:host ::ng-deep .xfaCheckbox:focus,:host ::ng-deep .xfaRadio:focus{outline:auto}:host ::ng-deep .xfaSelect,:host ::ng-deep .xfaTextfield{height:100%;width:100%;flex:1 1 auto;border:none;resize:none;background-image:var(--xfa-unfocused-field-background)}:host ::ng-deep .xfaBottom>.xfaSelect,:host ::ng-deep .xfaBottom>.xfaTextfield,:host ::ng-deep .xfaTop>.xfaSelect,:host ::ng-deep .xfaTop>.xfaTextfield{flex:0 1 auto}:host ::ng-deep .xfaButton{cursor:pointer;width:100%;height:100%;border:none;text-align:center}:host ::ng-deep .xfaLink{width:100%;height:100%}:host ::ng-deep .xfaCheckbox,:host ::ng-deep .xfaRadio{width:100%;height:100%;flex:0 0 auto;border:none}:host ::ng-deep .xfaRich{white-space:pre-wrap;width:100%;height:100%}:host ::ng-deep .xfaImage{-o-object-position:left top;object-position:left top;-o-object-fit:contain;object-fit:contain;width:100%;height:100%}:host ::ng-deep .xfaLrTb,:host ::ng-deep .xfaRlTb,:host ::ng-deep .xfaTb{display:flex;flex-direction:column;align-items:stretch}:host ::ng-deep .xfaLr{display:flex;flex-direction:row;align-items:stretch}:host ::ng-deep .xfaRl{display:flex;flex-direction:row-reverse;align-items:stretch}:host ::ng-deep .xfaTb>div{justify-content:left}:host ::ng-deep .xfaArea,:host ::ng-deep .xfaPosition{position:relative}:host ::ng-deep .xfaValignMiddle{display:flex;align-items:center}:host ::ng-deep .xfaTable{display:flex;flex-direction:column;align-items:stretch}:host ::ng-deep .xfaTable .xfaRow{display:flex;flex-direction:row;align-items:stretch}:host ::ng-deep .xfaTable .xfaRlRow{display:flex;flex-direction:row-reverse;align-items:stretch;flex:1}:host ::ng-deep .xfaTable .xfaRlRow>div{flex:1}:host ::ng-deep .xfaDisabled input,:host ::ng-deep .xfaDisabled textarea,:host ::ng-deep .xfaNonInteractive input,:host ::ng-deep .xfaNonInteractive textarea,:host ::ng-deep .xfaReadOnly input,:host ::ng-deep .xfaReadOnly textarea{background:initial}@media print{:host ::ng-deep .xfaTextfield{background:transparent}:host ::ng-deep .xfaSelect{background:transparent;-webkit-appearance:none;-moz-appearance:none;appearance:none;text-indent:1px;text-overflow:\\\"\\\"}}:host ::ng-deep .pdfViewer{padding-bottom:var(--pdfViewer-padding-bottom)}:host ::ng-deep .pdfViewer .canvasWrapper{overflow:hidden}:host ::ng-deep .pdfViewer .page{direction:ltr;width:816px;height:1056px;margin:var(--page-margin);position:relative;overflow:visible;border:var(--page-border);background-clip:content-box;-o-border-image:url(\\\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABMAAAATCAQAAADYWf5HAAAA6UlEQVR4Xl2Pi2rEMAwE16fm1f7/r14v7w4rI0IzLAF7hLxNevBSEMEF5+OilNCsRd8ZMyn+a4NmsOT8WJw1lFbSYgGFzF2bLFoLjTClWjKKGRWpDYAGXUnZ4uhbBUzF3Oe/GG/ue2fn4GgsyXhNgysV2JnrhKEMg4fEZcALmiKbNhBBRFpSyDOj1G4QOVly6O1FV54ZZq8OVygrciDt6JazRgi1ljTPH0gbrPmHPXAbCiDd4GawIjip1TPh9tt2sz24qaCjr/jAb/GBFTbq9KZ7Ke/Cqt8nayUikZKsWZK7Fe6bg5dOUt8fZHWG2BHc+6EAAAAASUVORK5CYII=\\\") 9 9 repeat;border-image:url(\\\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABMAAAATCAQAAADYWf5HAAAA6UlEQVR4Xl2Pi2rEMAwE16fm1f7/r14v7w4rI0IzLAF7hLxNevBSEMEF5+OilNCsRd8ZMyn+a4NmsOT8WJw1lFbSYgGFzF2bLFoLjTClWjKKGRWpDYAGXUnZ4uhbBUzF3Oe/GG/ue2fn4GgsyXhNgysV2JnrhKEMg4fEZcALmiKbNhBBRFpSyDOj1G4QOVly6O1FV54ZZq8OVygrciDt6JazRgi1ljTPH0gbrPmHPXAbCiDd4GawIjip1TPh9tt2sz24qaCjr/jAb/GBFTbq9KZ7Ke/Cqt8nayUikZKsWZK7Fe6bg5dOUt8fZHWG2BHc+6EAAAAASUVORK5CYII=\\\") 9 9 repeat;background-color:#fff}:host ::ng-deep .pdfViewer.removePageBorders .page{margin:0 auto 10px;border:none}:host ::ng-deep .pdfViewer.singlePageView{display:inline-block}:host ::ng-deep .pdfViewer.singlePageView .page{margin:0;border:none}:host ::ng-deep .pdfViewer.scrollHorizontal,:host ::ng-deep .pdfViewer.scrollWrapped,:host ::ng-deep .spread{margin-left:3.5px;margin-right:3.5px;text-align:center}:host ::ng-deep .pdfViewer.scrollHorizontal,:host ::ng-deep .spread{white-space:nowrap}:host ::ng-deep .pdfViewer.removePageBorders,:host ::ng-deep .pdfViewer.scrollHorizontal .spread,:host ::ng-deep .pdfViewer.scrollWrapped .spread{margin-left:0;margin-right:0}:host ::ng-deep .pdfViewer.scrollHorizontal .page,:host ::ng-deep .pdfViewer.scrollHorizontal .spread,:host ::ng-deep .pdfViewer.scrollWrapped .page,:host ::ng-deep .pdfViewer.scrollWrapped .spread,:host ::ng-deep .spread .page{display:inline-block;vertical-align:middle}:host ::ng-deep .pdfViewer.scrollHorizontal .page,:host ::ng-deep .pdfViewer.scrollWrapped .page,:host ::ng-deep .spread .page{margin-left:var(--spreadHorizontalWrapped-margin-LR);margin-right:var(--spreadHorizontalWrapped-margin-LR)}:host ::ng-deep .pdfViewer.removePageBorders.scrollHorizontal .page,:host ::ng-deep .pdfViewer.removePageBorders.scrollWrapped .page,:host ::ng-deep .pdfViewer.removePageBorders .spread .page{margin-left:5px;margin-right:5px}:host ::ng-deep .pdfViewer .page canvas{margin:0;display:block}:host ::ng-deep .pdfViewer .page canvas[hidden]{display:none}:host ::ng-deep .pdfViewer .page .loadingIcon{position:absolute;display:block;left:0;top:0;right:0;bottom:0;background:url(\\\"data:image/gif;base64,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\\\") 50% no-repeat}:host ::ng-deep .pdfPresentationMode .pdfViewer{margin-left:0;margin-right:0}:host ::ng-deep .pdfPresentationMode .pdfViewer .page,:host ::ng-deep .pdfPresentationMode .pdfViewer .spread{display:block}:host ::ng-deep .pdfPresentationMode .pdfViewer .page,:host ::ng-deep .pdfPresentationMode .pdfViewer.removePageBorders .page{margin-left:auto;margin-right:auto}:host ::ng-deep .pdfPresentationMode:-webkit-full-screen .pdfViewer .page{margin-bottom:100%;border:0}:host ::ng-deep .pdfPresentationMode:-webkit-full-screen .pdfViewer .page,:host ::ng-deep .pdfPresentationMode:fullscreen .pdfViewer .page{margin-bottom:100%;border:0}\"]\n }]\n }], function () { return [{ type: ɵngcc0.ElementRef }, { type: ɵngcc0.NgZone }]; }, { afterLoadComplete: [{\n type: Output,\n args: ['after-load-complete']\n }], pageRendered: [{\n type: Output,\n args: ['page-rendered']\n }], pageInitialized: [{\n type: Output,\n args: ['pages-initialized']\n }], textLayerRendered: [{\n type: Output,\n args: ['text-layer-rendered']\n }], onError: [{\n type: Output,\n args: ['error']\n }], onProgress: [{\n type: Output,\n args: ['on-progress']\n }], pageChange: [{\n type: Output\n }], cMapsUrl: [{\n type: Input,\n args: ['c-maps-url']\n }], page: [{\n type: Input,\n args: ['page']\n }], renderText: [{\n type: Input,\n args: ['render-text']\n }], renderTextMode: [{\n type: Input,\n args: ['render-text-mode']\n }], originalSize: [{\n type: Input,\n args: ['original-size']\n }], showAll: [{\n type: Input,\n args: ['show-all']\n }], stickToPage: [{\n type: Input,\n args: ['stick-to-page']\n }], zoom: [{\n type: Input,\n args: ['zoom']\n }], zoomScale: [{\n type: Input,\n args: ['zoom-scale']\n }], rotation: [{\n type: Input,\n args: ['rotation']\n }], externalLinkTarget: [{\n type: Input,\n args: ['external-link-target']\n }], autoresize: [{\n type: Input,\n args: ['autoresize']\n }], fitToPage: [{\n type: Input,\n args: ['fit-to-page']\n }], showBorders: [{\n type: Input,\n args: ['show-borders']\n }], pdfViewerContainer: [{\n type: ViewChild,\n args: ['pdfViewerContainer']\n }], src: [{\n type: Input\n }] }); })();\n\n/**\n * Created by vadimdez on 01/11/2016.\n */\nclass PdfViewerModule {\n}\nPdfViewerModule.ɵfac = function PdfViewerModule_Factory(t) { return new (t || PdfViewerModule)(); };\nPdfViewerModule.ɵmod = /*@__PURE__*/ ɵngcc0.ɵɵdefineNgModule({ type: PdfViewerModule });\nPdfViewerModule.ɵinj = /*@__PURE__*/ ɵngcc0.ɵɵdefineInjector({});\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(PdfViewerModule, [{\n type: NgModule,\n args: [{\n declarations: [PdfViewerComponent],\n exports: [PdfViewerComponent]\n }]\n }], null, null); })();\n(function () { (typeof ngJitMode === \"undefined\" || ngJitMode) && ɵngcc0.ɵɵsetNgModuleScope(PdfViewerModule, { declarations: [PdfViewerComponent], exports: [PdfViewerComponent] }); })();\n\n/**\n * Generated bundle index. Do not edit.\n */\n\nexport { PdfViewerComponent, PdfViewerModule, RenderTextMode };\n\n","\n
\n
{{'Lbl_FailToShowPdf' | translate}}\n {{secureUrl}}\n
\n \n \n
\n \n
\n\n\n\n","import {ChangeDetectionStrategy, Component, Input, SecurityContext, ViewEncapsulation} from '@angular/core';\nimport {DomSanitizer} from '@angular/platform-browser';\nimport {ActivatedRoute} from '@angular/router';\nimport {Observable, of} from 'rxjs';\nimport {LanguageStore} from '../stores/translation/language.store';\nimport {MapViewStore} from '../stores/layout/mapview.store';\nimport {APP_CONFIGURATION} from '../ap-core/config';\n\n@Component({\n selector: 'ap-pdf-viewer',\n templateUrl: 'ap-pdf-viewer.component.html',\n changeDetection: ChangeDetectionStrategy.Default,\n encapsulation: ViewEncapsulation.None\n})\n\n/**\n * Pdf Viewer component which renders a pdf document as plain html.\n * This component may be used\n * (1) within another component e.g.: ....\n * (2) may be used in a route to display the pdf. e.g.:\n * path: 'PdfTest',\n * component: ApPdfViewerComponent,\n * data: {\n * relativePath: 'pathtoPdf.pdf',\n * hideMap: true,\n * login: false,\n * layout: PageMode.HALFSCREEN\n * }\n */\nexport class ApPdfViewerComponent {\n @Input()\n set relativePath(value: string) {\n this.BuildPdfPathFromRelative(value);\n }\n\n @Input()\n set absolutePath(value: string) {\n this.BuildPdfPathFromAbsolute(value);\n }\n\n @Input() public showZoomButtons = false;\n @Input() public showDownloadButton = false;\n @Input() public caption: string = null;\n @Input() public loading$: Observable = of(true);\n public secureUrl: string = null;\n public filename: string = null;\n public errorLoading = false;\n public zoom = 1;\n\n constructor(private languageStore: LanguageStore,\n private mapViewStore: MapViewStore,\n private domSanitizer: DomSanitizer,\n private route: ActivatedRoute) {\n\n const routeData = this.route.snapshot.data;\n if (routeData.caption && routeData.caption.length > 0) {\n this.caption = routeData.caption;\n }\n\n if (routeData.relativePath && routeData.relativePath.length > 0) {\n this.relativePath = routeData.relativePath;\n }\n\n if (routeData.hideMap === true) {\n this.mapViewStore.hideMapView();\n } else if (routeData.hideMap === false) {\n this.mapViewStore.showMapView();\n }\n\n if (routeData.showZoomButtons) {\n this.showZoomButtons = true;\n }\n\n if (routeData.showDownloadButton) {\n this.showDownloadButton = true;\n }\n }\n\n private BuildPdfPathFromRelative(relativePath: string): void {\n if (relativePath == null || relativePath.length === 0) {\n return;\n }\n\n if (!relativePath.startsWith('/')) {\n relativePath = '/' + relativePath;\n }\n this.BuildPdfPathFromAbsolute(APP_CONFIGURATION.BackendAddress + relativePath);\n }\n\n private BuildPdfPathFromAbsolute(absolutePath: string): void {\n if (absolutePath == null || absolutePath.length === 0) {\n return;\n }\n this.secureUrl = this.domSanitizer\n .sanitize(SecurityContext.RESOURCE_URL,\n this.domSanitizer.bypassSecurityTrustResourceUrl(absolutePath));\n\n this.filename = this.secureUrl.replace(/^.*[\\\\\\/]/, '');\n }\n\n pageRendered(): void {\n this.loading$ = of(false);\n }\n\n onError(): void {\n this.errorLoading = true;\n this.loading$ = of(false);\n }\n\n zoomOut(): void {\n this.zoom = this.zoom - 0.1;\n }\n\n zoomIn(): void {\n this.zoom = this.zoom + 0.1;\n }\n}\n","import {ChangeDetectionStrategy, Component, ViewEncapsulation} from '@angular/core';\nimport {LanguageStore} from '../../stores/translation/language.store';\nimport {MapViewStore} from '../../stores/layout/mapview.store';\n\n@Component({\n selector: 'ap-info-agreement',\n template: `\n `,\n changeDetection: ChangeDetectionStrategy.Default,\n encapsulation: ViewEncapsulation.None\n})\nexport class InfoAgreementComponent {\n public url: string;\n\n constructor(private language: LanguageStore,\n private mapViewStore: MapViewStore) {\n const key = this.language.SelectedLanguage.Key;\n this.url = '/assets/info/agreement/de/agreement.pdf';\n if (key !== 'de') {\n this.url = '/assets/info/agreement/en/agreement.pdf';\n }\n this.mapViewStore.hideMapView();\n }\n}\n","import {IStateStore} from '../../ap-interface/interfaces/store';\nimport {Store} from '../index';\nimport {Injectable} from '@angular/core';\nimport {ContactInformationLoad, ContactInformationLoadSuccess} from 'invoker-transport';\nimport IContactInformation = Data.Common.IContactInformation;\nimport {\n ApSignalrService\n} from '../../ap-core/services/ap-signalr.service';\n\ninterface IContactInformationStore extends IStateStore {\n}\n\n@Injectable({providedIn: 'root'})\nexport class ContactInformationStore extends Store {\n constructor(public backend: ApSignalrService) {\n super(backend, {\n loaded: false,\n loading: false,\n data: [],\n });\n\n backend.registerObservable(ContactInformationLoadSuccess).subscribe(d => {\n super.Mutate(s => s.data, () => d.Data);\n super.SetLoadFinishState();\n });\n this.AfterDatabaseUpdate.subscribe(() => this.ReloadSource());\n }\n\n public loadContactInformation(): void {\n this.DispatchBackend(new ContactInformationLoad([]));\n }\n}\n","import {Injectable} from '@angular/core';\nimport {Store} from '../index';\nimport {VersionInfoLoad, VersionInfoLoadSuccess} from 'invoker-transport';\nimport {IStateStore} from '../../ap-interface';\nimport {ApSignalrService} from '../../ap-core/services/ap-signalr.service';\n\ninterface IVersionInfoStore extends IStateStore {\n}\n\n@Injectable({providedIn: 'root'})\nexport class VersionInfoStore extends Store {\n constructor(public backend: ApSignalrService) {\n super(backend, {\n loaded: false,\n loading: false,\n data: [],\n });\n\n backend.registerObservable(VersionInfoLoadSuccess).subscribe(d => {\n super.Mutate(s => s.data, () => d.Data);\n super.SetLoadFinishState();\n });\n this.AfterDatabaseUpdate.subscribe(() => this.ReloadSource());\n }\n\n public loadContactInformation(): void {\n this.DispatchBackend(new VersionInfoLoad([]));\n }\n}\n","import {Subscription} from 'rxjs';\nimport {AfterContentInit, ChangeDetectionStrategy, Component, OnDestroy} from '@angular/core';\nimport {VersionInfoStore} from '../../stores/common/versioninfo.store';\n\n@Component({\n selector: 'ap-info-version',\n template: `\n
Agriport-Version: {{versionInfo}}
\n `,\n changeDetection: ChangeDetectionStrategy.Default\n})\nexport class InfoVersionComponent implements OnDestroy, AfterContentInit {\n public loading$;\n public versionInfo;\n private _subscriptions: Array = [];\n\n constructor(private versionInfoStore: VersionInfoStore) {\n\n }\n\n ngAfterContentInit(): void {\n this.loading$ = this.versionInfoStore.Listen(s => s.loading);\n this.versionInfoStore.loadContactInformation();\n this.getDataFromStore();\n }\n\n getDataFromStore(): void {\n this._subscriptions.push(this.versionInfoStore.Listen(s => s.data).subscribe(async version => {\n if (!version) {\n return;\n }\n this.versionInfo = version;\n }));\n }\n\n ngOnDestroy(): void {\n this._subscriptions.forEach(d => {\n d.unsubscribe();\n });\n }\n}\n","import {\n AfterContentInit,\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n OnDestroy,\n Renderer2,\n ViewChild,\n ViewEncapsulation\n} from '@angular/core';\nimport {ApDynformsComponent} from '../../ap-dynforms/ap-dynforms.component';\nimport {ApDynformsConfigFieldset} from '../../ap-dynforms/config/ap-dynforms-config-fieldset';\nimport {Subscription} from 'rxjs';\nimport {ContactInformationStore} from '../../stores/common/contactinformation.store';\nimport {MapViewStore} from '../../stores/layout/mapview.store';\nimport {TranslationStore} from '../../stores/translation/translation.store';\nimport {MapStore} from '../../stores/map/map.store';\n\n@Component({\n selector: 'ap-info-imprint',\n template: `\n \n
\n
\n
\n
\n \n `,\n changeDetection: ChangeDetectionStrategy.Default,\n encapsulation: ViewEncapsulation.None\n})\nexport class InfoImprintComponent implements OnDestroy, AfterContentInit {\n @ViewChild(ApDynformsComponent, {static: true}) dynForm: ApDynformsComponent;\n @ViewChild('imprint_text', {static: true, read: ElementRef}) imprintTextElement: ElementRef;\n public formConfig: ApDynformsConfigFieldset[];\n public imprintText: string;\n public loading$;\n private _subscriptions: Array = [];\n\n constructor(private elementRef: ElementRef,\n private renderer: Renderer2,\n private translationService: TranslationStore,\n private mapViewStore: MapViewStore,\n private mapStore: MapStore,\n private contactInformationStore: ContactInformationStore) {\n this.mapViewStore.showMapView();\n }\n\n ngAfterContentInit(): void {\n this.loading$ = this.contactInformationStore.Listen(s => s.loading);\n this.contactInformationStore.loadContactInformation();\n this.getDataFromStore();\n this.imprintText = this.translationService.FindTranslationForSelectedLanguage('Global_Imprint_Text');\n (this.imprintTextElement.nativeElement as HTMLDivElement).innerHTML = this.imprintText;\n }\n\n getDataFromStore(): void {\n this._subscriptions.push(this.contactInformationStore.Listen(s => s.data).subscribe(async infos => {\n if (!infos) {\n return;\n }\n await this.mapStore.Layers.ContactLayer.replaceSource(infos);\n this.mapStore.Layers.ContactLayer.ZoomIn(2500);\n this.formBuilder();\n }));\n }\n\n ngOnDestroy(): void {\n this.mapStore.Layers.ContactLayer.clear();\n this._subscriptions.forEach(d => {\n d.unsubscribe();\n });\n }\n\n formBuilder(): void {\n this.formConfig = [];\n this.formConfig = [\n new ApDynformsConfigFieldset({\n key: 'imprint_fieldset',\n columns: 1,\n legend: '',\n label: 'Global_Imprint_Tip',\n config: []\n })\n ];\n }\n}\n","import {\n AfterContentInit,\n ChangeDetectionStrategy,\n Component,\n OnDestroy,\n ViewChild,\n ViewEncapsulation\n} from '@angular/core';\nimport {ApDynformsComponent} from '../../ap-dynforms/ap-dynforms.component';\nimport {ApDynformsConfigFieldset} from '../../ap-dynforms/config/ap-dynforms-config-fieldset';\nimport {Subscription} from 'rxjs';\nimport {ApDynformsConfigLabelIcon} from '../../ap-dynforms/config/ap-dynforms-config-label-icon';\nimport {ContactInformationStore} from '../../stores/common/contactinformation.store';\nimport {MapViewStore} from '../../stores/layout/mapview.store';\nimport {MapStore} from '../../stores/map/map.store';\nimport {ApWindowHelperService} from '../../ap-core/services/ap-window-helper.service';\nimport IContactInformation = Data.Common.IContactInformation;\n\n@Component({\n selector: 'ap-info-contact',\n template: `\n \n \n
\n \n \n

{{'Global_Loading' | translate}}...

\n
\n \n \n `,\n changeDetection: ChangeDetectionStrategy.Default,\n encapsulation: ViewEncapsulation.None\n})\nexport class InfoContactComponent implements AfterContentInit, OnDestroy {\n @ViewChild(ApDynformsComponent, {static: true}) dynForm: ApDynformsComponent;\n public formConfig: ApDynformsConfigFieldset[];\n private infos: IContactInformation[];\n public loading$;\n private _subscriptions: Array = [];\n\n constructor(private mapViewStore: MapViewStore,\n private mapStore: MapStore,\n private contactInformationStore: ContactInformationStore,\n private windowHelper: ApWindowHelperService) {\n this.windowHelper.openSite('https://www.agricon.de/ansprechpartner');\n this.mapViewStore.showMapView();\n }\n\n ngAfterContentInit(): void {\n this.loading$ = this.contactInformationStore.Listen(s => s.loading);\n this.contactInformationStore.loadContactInformation();\n this.getDataFromStore();\n }\n\n getDataFromStore(): void {\n this._subscriptions.push(this.contactInformationStore.Listen(s => s.data).subscribe(async infos => {\n if (!infos) {\n return;\n }\n this.infos = infos;\n // await this.mapStore.Layers.ContactLayer.replaceSource(this.infos);\n // this.mapStore.Layers.ContactLayer.ZoomIn(2500);\n this.formBuilder();\n }));\n }\n\n ngOnDestroy(): void {\n this.mapStore.Layers.RemoveContactLayer();\n this._subscriptions.forEach(d => {\n d.unsubscribe();\n });\n }\n\n formBuilder(): void {\n const configData = [];\n for (const info of this.infos) {\n configData.push(new ApDynformsConfigLabelIcon({\n key: info.Language_Key,\n src: info.Img_Src_Path,\n label1: 'Docu_Ini__PhoneShort',\n text1: info.Tel || '',\n label2: 'Global__Email',\n text2: info.Email || ''\n }));\n }\n this.formConfig = [];\n this.formConfig = [\n new ApDynformsConfigFieldset({\n key: 'contact_fieldset',\n columns: 1,\n legend: '',\n label: '',\n config: configData\n })\n ];\n }\n}\n","import {Route, RouterModule} from '@angular/router';\nimport {PageMode} from '../ap-interface';\nimport {NgModule} from '@angular/core';\nimport {InfoLegalComponent} from './components/info-legal.component';\nimport {InfoAgreementComponent} from './components/info-agreement.component';\nimport {InfoImprintComponent} from './components/info-imprint.component';\nimport {InfoContactComponent} from './components/info-contact.component';\n\nconst routes: Route[] = [\n {\n path: 'contact',\n component: InfoContactComponent,\n data: {\n login: true,\n layout: PageMode.HALFSCREEN\n }\n },\n {\n path: 'legal',\n component: InfoLegalComponent,\n data: {\n login: false,\n layout: PageMode.FULLSCREEN\n }\n },\n {\n path: 'agreement',\n component: InfoAgreementComponent,\n data: {\n login: true,\n layout: PageMode.HALFSCREEN\n }\n },\n {\n path: 'imprint',\n component: InfoImprintComponent,\n data: {\n login: true,\n layout: PageMode.HALFSCREEN\n }\n }\n];\n\n@NgModule({\n imports: [\n RouterModule.forChild(routes)\n ],\n exports: [RouterModule]\n})\nexport class ApInfoRoutes {\n}\n","import {NgModule} from '@angular/core';\nimport {CommonModule} from '@angular/common';\nimport {ApTranslationModule} from '../translation/ap-translation.module';\nimport {ApTooltipModule} from '../ap-tooltip/ap-tooltip.module';\nimport {ApPdfViewerComponent} from './ap-pdf-viewer.component';\nimport {ApDynformsModule} from '../ap-dynforms/ap-dynforms.module';\nimport {PdfViewerModule} from 'ng2-pdf-viewer';\nimport {ButtonModule} from '@progress/kendo-angular-buttons';\n\n@NgModule({\n declarations: [\n ApPdfViewerComponent,\n ],\n imports: [\n CommonModule,\n ApTranslationModule,\n ApTooltipModule,\n ApDynformsModule,\n PdfViewerModule,\n ButtonModule,\n ],\n exports: [\n ApPdfViewerComponent,\n ]\n})\nexport class ApPdfViewerModule {\n}\n","import {NgModule} from '@angular/core';\nimport {InfoLegalComponent} from './components/info-legal.component';\nimport {InfoImprintComponent} from './components/info-imprint.component';\nimport {InfoAgreementComponent} from './components/info-agreement.component';\nimport {FormsModule, ReactiveFormsModule} from '@angular/forms';\nimport {CommonModule} from '@angular/common';\nimport {ApCoreModule} from '../ap-core/ap-core.module';\nimport {ApIconModule} from '../icons/ap-icon.module';\nimport {LayoutModule} from '@progress/kendo-angular-layout';\nimport {ApStatisticsModule} from '../statistics/ap-statistics.module';\nimport {ButtonModule, SplitButtonModule} from '@progress/kendo-angular-buttons';\nimport {ApLayoutModule} from '../layout/ap-layout.module';\nimport {InputsModule} from '@progress/kendo-angular-inputs';\nimport {ComboBoxModule, DropDownsModule} from '@progress/kendo-angular-dropdowns';\nimport {DateInputsModule} from '@progress/kendo-angular-dateinputs';\nimport {BodyModule, GridModule, HeaderModule, PagerModule, SharedModule} from '@progress/kendo-angular-grid';\nimport {ApTranslationModule} from '../translation/ap-translation.module';\nimport {ApUtilsModule} from '../ap-utils';\nimport {ApSectionHeaderModule} from '../ap-section-header/ap-section-header.module';\nimport {ApResponsiveTextModule} from '../ap-responsive-text/ap-responsive-text.module';\nimport {ApDynComponentModule} from '../ap-dyncomponent/ap-dyncomponent.module';\nimport {ApInfoRoutes} from './ap-info.routes';\nimport {InfoContactComponent} from './components/info-contact.component';\nimport {ApPdfViewerModule} from '../ap-pdf-viewer/ap-pdf-viewer.module';\nimport {InfoVersionComponent} from './components/info-version.component';\n\n@NgModule({\n declarations: [\n InfoAgreementComponent,\n InfoContactComponent,\n InfoImprintComponent,\n InfoLegalComponent,\n InfoVersionComponent\n ],\n imports: [\n ReactiveFormsModule,\n CommonModule,\n ApCoreModule,\n ApIconModule,\n LayoutModule,\n ApStatisticsModule,\n ButtonModule,\n ApLayoutModule,\n SplitButtonModule,\n InputsModule,\n ComboBoxModule,\n DateInputsModule,\n DropDownsModule,\n FormsModule,\n GridModule,\n ApTranslationModule,\n ApInfoRoutes,\n SharedModule,\n BodyModule,\n ApUtilsModule,\n PagerModule,\n HeaderModule,\n ApSectionHeaderModule,\n ApResponsiveTextModule,\n ApDynComponentModule,\n ApPdfViewerModule,\n ],\n exports: [\n InfoAgreementComponent,\n InfoContactComponent,\n InfoImprintComponent,\n InfoLegalComponent,\n InfoVersionComponent\n ],\n providers: []\n})\nexport class ApInfoModule {\n}\n","/**\n * @licstart The following is the entire license notice for the\n * Javascript code in this page\n *\n * Copyright 2021 Mozilla Foundation\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * @licend The above is the entire license notice for the\n * Javascript code in this page\n */\n\n(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(\"pdfjs-dist/build/pdf\", [], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"pdfjs-dist/build/pdf\"] = factory();\n\telse\n\t\troot[\"pdfjs-dist/build/pdf\"] = root.pdfjsLib = factory();\n})(this, function() {\nreturn /******/ (() => { // webpackBootstrap\n/******/ \tvar __webpack_modules__ = ([\n/* 0 */,\n/* 1 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\"use strict\";\n\n\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.addLinkAttributes = addLinkAttributes;\nexports.deprecated = deprecated;\nexports.getFilenameFromUrl = getFilenameFromUrl;\nexports.getPdfFilenameFromUrl = getPdfFilenameFromUrl;\nexports.getXfaPageViewport = getXfaPageViewport;\nexports.isDataScheme = isDataScheme;\nexports.isPdfFile = isPdfFile;\nexports.isValidFetchUrl = isValidFetchUrl;\nexports.loadScript = loadScript;\nexports.StatTimer = exports.RenderingCancelledException = exports.PixelsPerInch = exports.PDFDateString = exports.PageViewport = exports.LinkTarget = exports.DOMSVGFactory = exports.DOMStandardFontDataFactory = exports.DOMCMapReaderFactory = exports.DOMCanvasFactory = void 0;\n\nvar _regenerator = _interopRequireDefault(__w_pdfjs_require__(2));\n\nvar _util = __w_pdfjs_require__(4);\n\nvar _base_factory = __w_pdfjs_require__(118);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it[\"return\"] != null) it[\"return\"](); } finally { if (didErr) throw err; } } }; }\n\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\nfunction asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }\n\nfunction _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err); } _next(undefined); }); }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } else if (call !== void 0) { throw new TypeError(\"Derived constructors may only return object or undefined\"); } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\nvar DEFAULT_LINK_REL = \"noopener noreferrer nofollow\";\nvar SVG_NS = \"http://www.w3.org/2000/svg\";\nvar PixelsPerInch = {\n CSS: 96.0,\n PDF: 72.0,\n\n get PDF_TO_CSS_UNITS() {\n return (0, _util.shadow)(this, \"PDF_TO_CSS_UNITS\", this.CSS / this.PDF);\n }\n\n};\nexports.PixelsPerInch = PixelsPerInch;\n\nvar DOMCanvasFactory = /*#__PURE__*/function (_BaseCanvasFactory) {\n _inherits(DOMCanvasFactory, _BaseCanvasFactory);\n\n var _super = _createSuper(DOMCanvasFactory);\n\n function DOMCanvasFactory() {\n var _this;\n\n var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},\n _ref$ownerDocument = _ref.ownerDocument,\n ownerDocument = _ref$ownerDocument === void 0 ? globalThis.document : _ref$ownerDocument;\n\n _classCallCheck(this, DOMCanvasFactory);\n\n _this = _super.call(this);\n _this._document = ownerDocument;\n return _this;\n }\n\n _createClass(DOMCanvasFactory, [{\n key: \"_createCanvas\",\n value: function _createCanvas(width, height) {\n var canvas = this._document.createElement(\"canvas\");\n\n canvas.width = width;\n canvas.height = height;\n return canvas;\n }\n }]);\n\n return DOMCanvasFactory;\n}(_base_factory.BaseCanvasFactory);\n\nexports.DOMCanvasFactory = DOMCanvasFactory;\n\nfunction fetchData(_x) {\n return _fetchData.apply(this, arguments);\n}\n\nfunction _fetchData() {\n _fetchData = _asyncToGenerator( /*#__PURE__*/_regenerator[\"default\"].mark(function _callee(url) {\n var asTypedArray,\n response,\n _args = arguments;\n return _regenerator[\"default\"].wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n asTypedArray = _args.length > 1 && _args[1] !== undefined ? _args[1] : false;\n\n if (!isValidFetchUrl(url, document.baseURI)) {\n _context.next = 21;\n break;\n }\n\n _context.next = 4;\n return fetch(url);\n\n case 4:\n response = _context.sent;\n\n if (response.ok) {\n _context.next = 7;\n break;\n }\n\n throw new Error(response.statusText);\n\n case 7:\n if (!asTypedArray) {\n _context.next = 15;\n break;\n }\n\n _context.t1 = Uint8Array;\n _context.next = 11;\n return response.arrayBuffer();\n\n case 11:\n _context.t2 = _context.sent;\n _context.t0 = new _context.t1(_context.t2);\n _context.next = 20;\n break;\n\n case 15:\n _context.t3 = _util.stringToBytes;\n _context.next = 18;\n return response.text();\n\n case 18:\n _context.t4 = _context.sent;\n _context.t0 = (0, _context.t3)(_context.t4);\n\n case 20:\n return _context.abrupt(\"return\", _context.t0);\n\n case 21:\n return _context.abrupt(\"return\", new Promise(function (resolve, reject) {\n var request = new XMLHttpRequest();\n request.open(\"GET\", url, true);\n\n if (asTypedArray) {\n request.responseType = \"arraybuffer\";\n }\n\n request.onreadystatechange = function () {\n if (request.readyState !== XMLHttpRequest.DONE) {\n return;\n }\n\n if (request.status === 200 || request.status === 0) {\n var data;\n\n if (asTypedArray && request.response) {\n data = new Uint8Array(request.response);\n } else if (!asTypedArray && request.responseText) {\n data = (0, _util.stringToBytes)(request.responseText);\n }\n\n if (data) {\n resolve(data);\n return;\n }\n }\n\n reject(new Error(request.statusText));\n };\n\n request.send(null);\n }));\n\n case 22:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }));\n return _fetchData.apply(this, arguments);\n}\n\nvar DOMCMapReaderFactory = /*#__PURE__*/function (_BaseCMapReaderFactor) {\n _inherits(DOMCMapReaderFactory, _BaseCMapReaderFactor);\n\n var _super2 = _createSuper(DOMCMapReaderFactory);\n\n function DOMCMapReaderFactory() {\n _classCallCheck(this, DOMCMapReaderFactory);\n\n return _super2.apply(this, arguments);\n }\n\n _createClass(DOMCMapReaderFactory, [{\n key: \"_fetchData\",\n value: function _fetchData(url, compressionType) {\n return fetchData(url, this.isCompressed).then(function (data) {\n return {\n cMapData: data,\n compressionType: compressionType\n };\n });\n }\n }]);\n\n return DOMCMapReaderFactory;\n}(_base_factory.BaseCMapReaderFactory);\n\nexports.DOMCMapReaderFactory = DOMCMapReaderFactory;\n\nvar DOMStandardFontDataFactory = /*#__PURE__*/function (_BaseStandardFontData) {\n _inherits(DOMStandardFontDataFactory, _BaseStandardFontData);\n\n var _super3 = _createSuper(DOMStandardFontDataFactory);\n\n function DOMStandardFontDataFactory() {\n _classCallCheck(this, DOMStandardFontDataFactory);\n\n return _super3.apply(this, arguments);\n }\n\n _createClass(DOMStandardFontDataFactory, [{\n key: \"_fetchData\",\n value: function _fetchData(url) {\n return fetchData(url, true);\n }\n }]);\n\n return DOMStandardFontDataFactory;\n}(_base_factory.BaseStandardFontDataFactory);\n\nexports.DOMStandardFontDataFactory = DOMStandardFontDataFactory;\n\nvar DOMSVGFactory = /*#__PURE__*/function (_BaseSVGFactory) {\n _inherits(DOMSVGFactory, _BaseSVGFactory);\n\n var _super4 = _createSuper(DOMSVGFactory);\n\n function DOMSVGFactory() {\n _classCallCheck(this, DOMSVGFactory);\n\n return _super4.apply(this, arguments);\n }\n\n _createClass(DOMSVGFactory, [{\n key: \"_createSVG\",\n value: function _createSVG(type) {\n return document.createElementNS(SVG_NS, type);\n }\n }]);\n\n return DOMSVGFactory;\n}(_base_factory.BaseSVGFactory);\n\nexports.DOMSVGFactory = DOMSVGFactory;\n\nvar PageViewport = /*#__PURE__*/function () {\n function PageViewport(_ref2) {\n var viewBox = _ref2.viewBox,\n scale = _ref2.scale,\n rotation = _ref2.rotation,\n _ref2$offsetX = _ref2.offsetX,\n offsetX = _ref2$offsetX === void 0 ? 0 : _ref2$offsetX,\n _ref2$offsetY = _ref2.offsetY,\n offsetY = _ref2$offsetY === void 0 ? 0 : _ref2$offsetY,\n _ref2$dontFlip = _ref2.dontFlip,\n dontFlip = _ref2$dontFlip === void 0 ? false : _ref2$dontFlip;\n\n _classCallCheck(this, PageViewport);\n\n this.viewBox = viewBox;\n this.scale = scale;\n this.rotation = rotation;\n this.offsetX = offsetX;\n this.offsetY = offsetY;\n var centerX = (viewBox[2] + viewBox[0]) / 2;\n var centerY = (viewBox[3] + viewBox[1]) / 2;\n var rotateA, rotateB, rotateC, rotateD;\n rotation %= 360;\n\n if (rotation < 0) {\n rotation += 360;\n }\n\n switch (rotation) {\n case 180:\n rotateA = -1;\n rotateB = 0;\n rotateC = 0;\n rotateD = 1;\n break;\n\n case 90:\n rotateA = 0;\n rotateB = 1;\n rotateC = 1;\n rotateD = 0;\n break;\n\n case 270:\n rotateA = 0;\n rotateB = -1;\n rotateC = -1;\n rotateD = 0;\n break;\n\n case 0:\n rotateA = 1;\n rotateB = 0;\n rotateC = 0;\n rotateD = -1;\n break;\n\n default:\n throw new Error(\"PageViewport: Invalid rotation, must be a multiple of 90 degrees.\");\n }\n\n if (dontFlip) {\n rotateC = -rotateC;\n rotateD = -rotateD;\n }\n\n var offsetCanvasX, offsetCanvasY;\n var width, height;\n\n if (rotateA === 0) {\n offsetCanvasX = Math.abs(centerY - viewBox[1]) * scale + offsetX;\n offsetCanvasY = Math.abs(centerX - viewBox[0]) * scale + offsetY;\n width = Math.abs(viewBox[3] - viewBox[1]) * scale;\n height = Math.abs(viewBox[2] - viewBox[0]) * scale;\n } else {\n offsetCanvasX = Math.abs(centerX - viewBox[0]) * scale + offsetX;\n offsetCanvasY = Math.abs(centerY - viewBox[1]) * scale + offsetY;\n width = Math.abs(viewBox[2] - viewBox[0]) * scale;\n height = Math.abs(viewBox[3] - viewBox[1]) * scale;\n }\n\n this.transform = [rotateA * scale, rotateB * scale, rotateC * scale, rotateD * scale, offsetCanvasX - rotateA * scale * centerX - rotateC * scale * centerY, offsetCanvasY - rotateB * scale * centerX - rotateD * scale * centerY];\n this.width = width;\n this.height = height;\n }\n\n _createClass(PageViewport, [{\n key: \"clone\",\n value: function clone() {\n var _ref3 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},\n _ref3$scale = _ref3.scale,\n scale = _ref3$scale === void 0 ? this.scale : _ref3$scale,\n _ref3$rotation = _ref3.rotation,\n rotation = _ref3$rotation === void 0 ? this.rotation : _ref3$rotation,\n _ref3$offsetX = _ref3.offsetX,\n offsetX = _ref3$offsetX === void 0 ? this.offsetX : _ref3$offsetX,\n _ref3$offsetY = _ref3.offsetY,\n offsetY = _ref3$offsetY === void 0 ? this.offsetY : _ref3$offsetY,\n _ref3$dontFlip = _ref3.dontFlip,\n dontFlip = _ref3$dontFlip === void 0 ? false : _ref3$dontFlip;\n\n return new PageViewport({\n viewBox: this.viewBox.slice(),\n scale: scale,\n rotation: rotation,\n offsetX: offsetX,\n offsetY: offsetY,\n dontFlip: dontFlip\n });\n }\n }, {\n key: \"convertToViewportPoint\",\n value: function convertToViewportPoint(x, y) {\n return _util.Util.applyTransform([x, y], this.transform);\n }\n }, {\n key: \"convertToViewportRectangle\",\n value: function convertToViewportRectangle(rect) {\n var topLeft = _util.Util.applyTransform([rect[0], rect[1]], this.transform);\n\n var bottomRight = _util.Util.applyTransform([rect[2], rect[3]], this.transform);\n\n return [topLeft[0], topLeft[1], bottomRight[0], bottomRight[1]];\n }\n }, {\n key: \"convertToPdfPoint\",\n value: function convertToPdfPoint(x, y) {\n return _util.Util.applyInverseTransform([x, y], this.transform);\n }\n }]);\n\n return PageViewport;\n}();\n\nexports.PageViewport = PageViewport;\n\nvar RenderingCancelledException = /*#__PURE__*/function (_BaseException) {\n _inherits(RenderingCancelledException, _BaseException);\n\n var _super5 = _createSuper(RenderingCancelledException);\n\n function RenderingCancelledException(msg, type) {\n var _this2;\n\n _classCallCheck(this, RenderingCancelledException);\n\n _this2 = _super5.call(this, msg, \"RenderingCancelledException\");\n _this2.type = type;\n return _this2;\n }\n\n return RenderingCancelledException;\n}(_util.BaseException);\n\nexports.RenderingCancelledException = RenderingCancelledException;\nvar LinkTarget = {\n NONE: 0,\n SELF: 1,\n BLANK: 2,\n PARENT: 3,\n TOP: 4\n};\nexports.LinkTarget = LinkTarget;\n\nfunction addLinkAttributes(link) {\n var _ref4 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},\n url = _ref4.url,\n target = _ref4.target,\n rel = _ref4.rel,\n _ref4$enabled = _ref4.enabled,\n enabled = _ref4$enabled === void 0 ? true : _ref4$enabled;\n\n (0, _util.assert)(url && typeof url === \"string\", 'addLinkAttributes: A valid \"url\" parameter must provided.');\n var urlNullRemoved = (0, _util.removeNullCharacters)(url);\n\n if (enabled) {\n link.href = link.title = urlNullRemoved;\n } else {\n link.href = \"\";\n link.title = \"Disabled: \".concat(urlNullRemoved);\n\n link.onclick = function () {\n return false;\n };\n }\n\n var targetStr = \"\";\n\n switch (target) {\n case LinkTarget.NONE:\n break;\n\n case LinkTarget.SELF:\n targetStr = \"_self\";\n break;\n\n case LinkTarget.BLANK:\n targetStr = \"_blank\";\n break;\n\n case LinkTarget.PARENT:\n targetStr = \"_parent\";\n break;\n\n case LinkTarget.TOP:\n targetStr = \"_top\";\n break;\n }\n\n link.target = targetStr;\n link.rel = typeof rel === \"string\" ? rel : DEFAULT_LINK_REL;\n}\n\nfunction isDataScheme(url) {\n var ii = url.length;\n var i = 0;\n\n while (i < ii && url[i].trim() === \"\") {\n i++;\n }\n\n return url.substring(i, i + 5).toLowerCase() === \"data:\";\n}\n\nfunction isPdfFile(filename) {\n return typeof filename === \"string\" && /\\.pdf$/i.test(filename);\n}\n\nfunction getFilenameFromUrl(url) {\n var anchor = url.indexOf(\"#\");\n var query = url.indexOf(\"?\");\n var end = Math.min(anchor > 0 ? anchor : url.length, query > 0 ? query : url.length);\n return url.substring(url.lastIndexOf(\"/\", end) + 1, end);\n}\n\nfunction getPdfFilenameFromUrl(url) {\n var defaultFilename = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : \"document.pdf\";\n\n if (typeof url !== \"string\") {\n return defaultFilename;\n }\n\n if (isDataScheme(url)) {\n (0, _util.warn)('getPdfFilenameFromUrl: ignore \"data:\"-URL for performance reasons.');\n return defaultFilename;\n }\n\n var reURI = /^(?:(?:[^:]+:)?\\/\\/[^/]+)?([^?#]*)(\\?[^#]*)?(#.*)?$/;\n var reFilename = /[^/?#=]+\\.pdf\\b(?!.*\\.pdf\\b)/i;\n var splitURI = reURI.exec(url);\n var suggestedFilename = reFilename.exec(splitURI[1]) || reFilename.exec(splitURI[2]) || reFilename.exec(splitURI[3]);\n\n if (suggestedFilename) {\n suggestedFilename = suggestedFilename[0];\n\n if (suggestedFilename.includes(\"%\")) {\n try {\n suggestedFilename = reFilename.exec(decodeURIComponent(suggestedFilename))[0];\n } catch (ex) {}\n }\n }\n\n return suggestedFilename || defaultFilename;\n}\n\nvar StatTimer = /*#__PURE__*/function () {\n function StatTimer() {\n _classCallCheck(this, StatTimer);\n\n this.started = Object.create(null);\n this.times = [];\n }\n\n _createClass(StatTimer, [{\n key: \"time\",\n value: function time(name) {\n if (name in this.started) {\n (0, _util.warn)(\"Timer is already running for \".concat(name));\n }\n\n this.started[name] = Date.now();\n }\n }, {\n key: \"timeEnd\",\n value: function timeEnd(name) {\n if (!(name in this.started)) {\n (0, _util.warn)(\"Timer has not been started for \".concat(name));\n }\n\n this.times.push({\n name: name,\n start: this.started[name],\n end: Date.now()\n });\n delete this.started[name];\n }\n }, {\n key: \"toString\",\n value: function toString() {\n var outBuf = [];\n var longest = 0;\n\n var _iterator = _createForOfIteratorHelper(this.times),\n _step;\n\n try {\n for (_iterator.s(); !(_step = _iterator.n()).done;) {\n var time = _step.value;\n var name = time.name;\n\n if (name.length > longest) {\n longest = name.length;\n }\n }\n } catch (err) {\n _iterator.e(err);\n } finally {\n _iterator.f();\n }\n\n var _iterator2 = _createForOfIteratorHelper(this.times),\n _step2;\n\n try {\n for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {\n var _time = _step2.value;\n var duration = _time.end - _time.start;\n outBuf.push(\"\".concat(_time.name.padEnd(longest), \" \").concat(duration, \"ms\\n\"));\n }\n } catch (err) {\n _iterator2.e(err);\n } finally {\n _iterator2.f();\n }\n\n return outBuf.join(\"\");\n }\n }]);\n\n return StatTimer;\n}();\n\nexports.StatTimer = StatTimer;\n\nfunction isValidFetchUrl(url, baseUrl) {\n try {\n var _ref5 = baseUrl ? new URL(url, baseUrl) : new URL(url),\n protocol = _ref5.protocol;\n\n return protocol === \"http:\" || protocol === \"https:\";\n } catch (ex) {\n return false;\n }\n}\n\nfunction loadScript(src) {\n var removeScriptElement = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n return new Promise(function (resolve, reject) {\n var script = document.createElement(\"script\");\n script.src = src;\n\n script.onload = function (evt) {\n if (removeScriptElement) {\n script.remove();\n }\n\n resolve(evt);\n };\n\n script.onerror = function () {\n reject(new Error(\"Cannot load script at: \".concat(script.src)));\n };\n\n (document.head || document.documentElement).appendChild(script);\n });\n}\n\nfunction deprecated(details) {\n console.log(\"Deprecated API usage: \" + details);\n}\n\nvar pdfDateStringRegex;\n\nvar PDFDateString = /*#__PURE__*/function () {\n function PDFDateString() {\n _classCallCheck(this, PDFDateString);\n }\n\n _createClass(PDFDateString, null, [{\n key: \"toDateObject\",\n value: function toDateObject(input) {\n if (!input || !(0, _util.isString)(input)) {\n return null;\n }\n\n if (!pdfDateStringRegex) {\n pdfDateStringRegex = new RegExp(\"^D:\" + \"(\\\\d{4})\" + \"(\\\\d{2})?\" + \"(\\\\d{2})?\" + \"(\\\\d{2})?\" + \"(\\\\d{2})?\" + \"(\\\\d{2})?\" + \"([Z|+|-])?\" + \"(\\\\d{2})?\" + \"'?\" + \"(\\\\d{2})?\" + \"'?\");\n }\n\n var matches = pdfDateStringRegex.exec(input);\n\n if (!matches) {\n return null;\n }\n\n var year = parseInt(matches[1], 10);\n var month = parseInt(matches[2], 10);\n month = month >= 1 && month <= 12 ? month - 1 : 0;\n var day = parseInt(matches[3], 10);\n day = day >= 1 && day <= 31 ? day : 1;\n var hour = parseInt(matches[4], 10);\n hour = hour >= 0 && hour <= 23 ? hour : 0;\n var minute = parseInt(matches[5], 10);\n minute = minute >= 0 && minute <= 59 ? minute : 0;\n var second = parseInt(matches[6], 10);\n second = second >= 0 && second <= 59 ? second : 0;\n var universalTimeRelation = matches[7] || \"Z\";\n var offsetHour = parseInt(matches[8], 10);\n offsetHour = offsetHour >= 0 && offsetHour <= 23 ? offsetHour : 0;\n var offsetMinute = parseInt(matches[9], 10) || 0;\n offsetMinute = offsetMinute >= 0 && offsetMinute <= 59 ? offsetMinute : 0;\n\n if (universalTimeRelation === \"-\") {\n hour += offsetHour;\n minute += offsetMinute;\n } else if (universalTimeRelation === \"+\") {\n hour -= offsetHour;\n minute -= offsetMinute;\n }\n\n return new Date(Date.UTC(year, month, day, hour, minute, second));\n }\n }]);\n\n return PDFDateString;\n}();\n\nexports.PDFDateString = PDFDateString;\n\nfunction getXfaPageViewport(xfaPage, _ref6) {\n var _ref6$scale = _ref6.scale,\n scale = _ref6$scale === void 0 ? 1 : _ref6$scale,\n _ref6$rotation = _ref6.rotation,\n rotation = _ref6$rotation === void 0 ? 0 : _ref6$rotation;\n var _xfaPage$attributes$s = xfaPage.attributes.style,\n width = _xfaPage$attributes$s.width,\n height = _xfaPage$attributes$s.height;\n var viewBox = [0, 0, parseInt(width), parseInt(height)];\n return new PageViewport({\n viewBox: viewBox,\n scale: scale,\n rotation: rotation\n });\n}\n\n/***/ }),\n/* 2 */\n/***/ ((module, __unused_webpack_exports, __w_pdfjs_require__) => {\n\n\"use strict\";\n\n\nmodule.exports = __w_pdfjs_require__(3);\n\n/***/ }),\n/* 3 */\n/***/ ((module, __unused_webpack_exports, __w_pdfjs_require__) => {\n\n\"use strict\";\n/* module decorator */ module = __w_pdfjs_require__.nmd(module);\n\n\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\nvar runtime = function (exports) {\n \"use strict\";\n\n var Op = Object.prototype;\n var hasOwn = Op.hasOwnProperty;\n var undefined;\n var $Symbol = typeof Symbol === \"function\" ? Symbol : {};\n var iteratorSymbol = $Symbol.iterator || \"@@iterator\";\n var asyncIteratorSymbol = $Symbol.asyncIterator || \"@@asyncIterator\";\n var toStringTagSymbol = $Symbol.toStringTag || \"@@toStringTag\";\n\n function define(obj, key, value) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n return obj[key];\n }\n\n try {\n define({}, \"\");\n } catch (err) {\n define = function define(obj, key, value) {\n return obj[key] = value;\n };\n }\n\n function wrap(innerFn, outerFn, self, tryLocsList) {\n var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator;\n var generator = Object.create(protoGenerator.prototype);\n var context = new Context(tryLocsList || []);\n generator._invoke = makeInvokeMethod(innerFn, self, context);\n return generator;\n }\n\n exports.wrap = wrap;\n\n function tryCatch(fn, obj, arg) {\n try {\n return {\n type: \"normal\",\n arg: fn.call(obj, arg)\n };\n } catch (err) {\n return {\n type: \"throw\",\n arg: err\n };\n }\n }\n\n var GenStateSuspendedStart = \"suspendedStart\";\n var GenStateSuspendedYield = \"suspendedYield\";\n var GenStateExecuting = \"executing\";\n var GenStateCompleted = \"completed\";\n var ContinueSentinel = {};\n\n function Generator() {}\n\n function GeneratorFunction() {}\n\n function GeneratorFunctionPrototype() {}\n\n var IteratorPrototype = {};\n define(IteratorPrototype, iteratorSymbol, function () {\n return this;\n });\n var getProto = Object.getPrototypeOf;\n var NativeIteratorPrototype = getProto && getProto(getProto(values([])));\n\n if (NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol)) {\n IteratorPrototype = NativeIteratorPrototype;\n }\n\n var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype);\n GeneratorFunction.prototype = GeneratorFunctionPrototype;\n define(Gp, \"constructor\", GeneratorFunctionPrototype);\n define(GeneratorFunctionPrototype, \"constructor\", GeneratorFunction);\n GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, \"GeneratorFunction\");\n\n function defineIteratorMethods(prototype) {\n [\"next\", \"throw\", \"return\"].forEach(function (method) {\n define(prototype, method, function (arg) {\n return this._invoke(method, arg);\n });\n });\n }\n\n exports.isGeneratorFunction = function (genFun) {\n var ctor = typeof genFun === \"function\" && genFun.constructor;\n return ctor ? ctor === GeneratorFunction || (ctor.displayName || ctor.name) === \"GeneratorFunction\" : false;\n };\n\n exports.mark = function (genFun) {\n if (Object.setPrototypeOf) {\n Object.setPrototypeOf(genFun, GeneratorFunctionPrototype);\n } else {\n genFun.__proto__ = GeneratorFunctionPrototype;\n define(genFun, toStringTagSymbol, \"GeneratorFunction\");\n }\n\n genFun.prototype = Object.create(Gp);\n return genFun;\n };\n\n exports.awrap = function (arg) {\n return {\n __await: arg\n };\n };\n\n function AsyncIterator(generator, PromiseImpl) {\n function invoke(method, arg, resolve, reject) {\n var record = tryCatch(generator[method], generator, arg);\n\n if (record.type === \"throw\") {\n reject(record.arg);\n } else {\n var result = record.arg;\n var value = result.value;\n\n if (value && _typeof(value) === \"object\" && hasOwn.call(value, \"__await\")) {\n return PromiseImpl.resolve(value.__await).then(function (value) {\n invoke(\"next\", value, resolve, reject);\n }, function (err) {\n invoke(\"throw\", err, resolve, reject);\n });\n }\n\n return PromiseImpl.resolve(value).then(function (unwrapped) {\n result.value = unwrapped;\n resolve(result);\n }, function (error) {\n return invoke(\"throw\", error, resolve, reject);\n });\n }\n }\n\n var previousPromise;\n\n function enqueue(method, arg) {\n function callInvokeWithMethodAndArg() {\n return new PromiseImpl(function (resolve, reject) {\n invoke(method, arg, resolve, reject);\n });\n }\n\n return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg();\n }\n\n this._invoke = enqueue;\n }\n\n defineIteratorMethods(AsyncIterator.prototype);\n define(AsyncIterator.prototype, asyncIteratorSymbol, function () {\n return this;\n });\n exports.AsyncIterator = AsyncIterator;\n\n exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) {\n if (PromiseImpl === void 0) PromiseImpl = Promise;\n var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl);\n return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) {\n return result.done ? result.value : iter.next();\n });\n };\n\n function makeInvokeMethod(innerFn, self, context) {\n var state = GenStateSuspendedStart;\n return function invoke(method, arg) {\n if (state === GenStateExecuting) {\n throw new Error(\"Generator is already running\");\n }\n\n if (state === GenStateCompleted) {\n if (method === \"throw\") {\n throw arg;\n }\n\n return doneResult();\n }\n\n context.method = method;\n context.arg = arg;\n\n while (true) {\n var delegate = context.delegate;\n\n if (delegate) {\n var delegateResult = maybeInvokeDelegate(delegate, context);\n\n if (delegateResult) {\n if (delegateResult === ContinueSentinel) continue;\n return delegateResult;\n }\n }\n\n if (context.method === \"next\") {\n context.sent = context._sent = context.arg;\n } else if (context.method === \"throw\") {\n if (state === GenStateSuspendedStart) {\n state = GenStateCompleted;\n throw context.arg;\n }\n\n context.dispatchException(context.arg);\n } else if (context.method === \"return\") {\n context.abrupt(\"return\", context.arg);\n }\n\n state = GenStateExecuting;\n var record = tryCatch(innerFn, self, context);\n\n if (record.type === \"normal\") {\n state = context.done ? GenStateCompleted : GenStateSuspendedYield;\n\n if (record.arg === ContinueSentinel) {\n continue;\n }\n\n return {\n value: record.arg,\n done: context.done\n };\n } else if (record.type === \"throw\") {\n state = GenStateCompleted;\n context.method = \"throw\";\n context.arg = record.arg;\n }\n }\n };\n }\n\n function maybeInvokeDelegate(delegate, context) {\n var method = delegate.iterator[context.method];\n\n if (method === undefined) {\n context.delegate = null;\n\n if (context.method === \"throw\") {\n if (delegate.iterator[\"return\"]) {\n context.method = \"return\";\n context.arg = undefined;\n maybeInvokeDelegate(delegate, context);\n\n if (context.method === \"throw\") {\n return ContinueSentinel;\n }\n }\n\n context.method = \"throw\";\n context.arg = new TypeError(\"The iterator does not provide a 'throw' method\");\n }\n\n return ContinueSentinel;\n }\n\n var record = tryCatch(method, delegate.iterator, context.arg);\n\n if (record.type === \"throw\") {\n context.method = \"throw\";\n context.arg = record.arg;\n context.delegate = null;\n return ContinueSentinel;\n }\n\n var info = record.arg;\n\n if (!info) {\n context.method = \"throw\";\n context.arg = new TypeError(\"iterator result is not an object\");\n context.delegate = null;\n return ContinueSentinel;\n }\n\n if (info.done) {\n context[delegate.resultName] = info.value;\n context.next = delegate.nextLoc;\n\n if (context.method !== \"return\") {\n context.method = \"next\";\n context.arg = undefined;\n }\n } else {\n return info;\n }\n\n context.delegate = null;\n return ContinueSentinel;\n }\n\n defineIteratorMethods(Gp);\n define(Gp, toStringTagSymbol, \"Generator\");\n define(Gp, iteratorSymbol, function () {\n return this;\n });\n define(Gp, \"toString\", function () {\n return \"[object Generator]\";\n });\n\n function pushTryEntry(locs) {\n var entry = {\n tryLoc: locs[0]\n };\n\n if (1 in locs) {\n entry.catchLoc = locs[1];\n }\n\n if (2 in locs) {\n entry.finallyLoc = locs[2];\n entry.afterLoc = locs[3];\n }\n\n this.tryEntries.push(entry);\n }\n\n function resetTryEntry(entry) {\n var record = entry.completion || {};\n record.type = \"normal\";\n delete record.arg;\n entry.completion = record;\n }\n\n function Context(tryLocsList) {\n this.tryEntries = [{\n tryLoc: \"root\"\n }];\n tryLocsList.forEach(pushTryEntry, this);\n this.reset(true);\n }\n\n exports.keys = function (object) {\n var keys = [];\n\n for (var key in object) {\n keys.push(key);\n }\n\n keys.reverse();\n return function next() {\n while (keys.length) {\n var key = keys.pop();\n\n if (key in object) {\n next.value = key;\n next.done = false;\n return next;\n }\n }\n\n next.done = true;\n return next;\n };\n };\n\n function values(iterable) {\n if (iterable) {\n var iteratorMethod = iterable[iteratorSymbol];\n\n if (iteratorMethod) {\n return iteratorMethod.call(iterable);\n }\n\n if (typeof iterable.next === \"function\") {\n return iterable;\n }\n\n if (!isNaN(iterable.length)) {\n var i = -1,\n next = function next() {\n while (++i < iterable.length) {\n if (hasOwn.call(iterable, i)) {\n next.value = iterable[i];\n next.done = false;\n return next;\n }\n }\n\n next.value = undefined;\n next.done = true;\n return next;\n };\n\n return next.next = next;\n }\n }\n\n return {\n next: doneResult\n };\n }\n\n exports.values = values;\n\n function doneResult() {\n return {\n value: undefined,\n done: true\n };\n }\n\n Context.prototype = {\n constructor: Context,\n reset: function reset(skipTempReset) {\n this.prev = 0;\n this.next = 0;\n this.sent = this._sent = undefined;\n this.done = false;\n this.delegate = null;\n this.method = \"next\";\n this.arg = undefined;\n this.tryEntries.forEach(resetTryEntry);\n\n if (!skipTempReset) {\n for (var name in this) {\n if (name.charAt(0) === \"t\" && hasOwn.call(this, name) && !isNaN(+name.slice(1))) {\n this[name] = undefined;\n }\n }\n }\n },\n stop: function stop() {\n this.done = true;\n var rootEntry = this.tryEntries[0];\n var rootRecord = rootEntry.completion;\n\n if (rootRecord.type === \"throw\") {\n throw rootRecord.arg;\n }\n\n return this.rval;\n },\n dispatchException: function dispatchException(exception) {\n if (this.done) {\n throw exception;\n }\n\n var context = this;\n\n function handle(loc, caught) {\n record.type = \"throw\";\n record.arg = exception;\n context.next = loc;\n\n if (caught) {\n context.method = \"next\";\n context.arg = undefined;\n }\n\n return !!caught;\n }\n\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n var record = entry.completion;\n\n if (entry.tryLoc === \"root\") {\n return handle(\"end\");\n }\n\n if (entry.tryLoc <= this.prev) {\n var hasCatch = hasOwn.call(entry, \"catchLoc\");\n var hasFinally = hasOwn.call(entry, \"finallyLoc\");\n\n if (hasCatch && hasFinally) {\n if (this.prev < entry.catchLoc) {\n return handle(entry.catchLoc, true);\n } else if (this.prev < entry.finallyLoc) {\n return handle(entry.finallyLoc);\n }\n } else if (hasCatch) {\n if (this.prev < entry.catchLoc) {\n return handle(entry.catchLoc, true);\n }\n } else if (hasFinally) {\n if (this.prev < entry.finallyLoc) {\n return handle(entry.finallyLoc);\n }\n } else {\n throw new Error(\"try statement without catch or finally\");\n }\n }\n }\n },\n abrupt: function abrupt(type, arg) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n\n if (entry.tryLoc <= this.prev && hasOwn.call(entry, \"finallyLoc\") && this.prev < entry.finallyLoc) {\n var finallyEntry = entry;\n break;\n }\n }\n\n if (finallyEntry && (type === \"break\" || type === \"continue\") && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc) {\n finallyEntry = null;\n }\n\n var record = finallyEntry ? finallyEntry.completion : {};\n record.type = type;\n record.arg = arg;\n\n if (finallyEntry) {\n this.method = \"next\";\n this.next = finallyEntry.finallyLoc;\n return ContinueSentinel;\n }\n\n return this.complete(record);\n },\n complete: function complete(record, afterLoc) {\n if (record.type === \"throw\") {\n throw record.arg;\n }\n\n if (record.type === \"break\" || record.type === \"continue\") {\n this.next = record.arg;\n } else if (record.type === \"return\") {\n this.rval = this.arg = record.arg;\n this.method = \"return\";\n this.next = \"end\";\n } else if (record.type === \"normal\" && afterLoc) {\n this.next = afterLoc;\n }\n\n return ContinueSentinel;\n },\n finish: function finish(finallyLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n\n if (entry.finallyLoc === finallyLoc) {\n this.complete(entry.completion, entry.afterLoc);\n resetTryEntry(entry);\n return ContinueSentinel;\n }\n }\n },\n \"catch\": function _catch(tryLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n\n if (entry.tryLoc === tryLoc) {\n var record = entry.completion;\n\n if (record.type === \"throw\") {\n var thrown = record.arg;\n resetTryEntry(entry);\n }\n\n return thrown;\n }\n }\n\n throw new Error(\"illegal catch attempt\");\n },\n delegateYield: function delegateYield(iterable, resultName, nextLoc) {\n this.delegate = {\n iterator: values(iterable),\n resultName: resultName,\n nextLoc: nextLoc\n };\n\n if (this.method === \"next\") {\n this.arg = undefined;\n }\n\n return ContinueSentinel;\n }\n };\n return exports;\n}(( false ? 0 : _typeof(module)) === \"object\" ? module.exports : {});\n\ntry {\n regeneratorRuntime = runtime;\n} catch (accidentalStrictMode) {\n if ((typeof globalThis === \"undefined\" ? \"undefined\" : _typeof(globalThis)) === \"object\") {\n globalThis.regeneratorRuntime = runtime;\n } else {\n Function(\"r\", \"regeneratorRuntime = r\")(runtime);\n }\n}\n\n/***/ }),\n/* 4 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.arrayByteLength = arrayByteLength;\nexports.arraysToBytes = arraysToBytes;\nexports.assert = assert;\nexports.bytesToString = bytesToString;\nexports.createObjectURL = createObjectURL;\nexports.createPromiseCapability = createPromiseCapability;\nexports.createValidAbsoluteUrl = createValidAbsoluteUrl;\nexports.escapeString = escapeString;\nexports.getModificationDate = getModificationDate;\nexports.getVerbosityLevel = getVerbosityLevel;\nexports.info = info;\nexports.isArrayBuffer = isArrayBuffer;\nexports.isArrayEqual = isArrayEqual;\nexports.isAscii = isAscii;\nexports.isBool = isBool;\nexports.isNum = isNum;\nexports.isSameOrigin = isSameOrigin;\nexports.isString = isString;\nexports.objectFromMap = objectFromMap;\nexports.objectSize = objectSize;\nexports.removeNullCharacters = removeNullCharacters;\nexports.setVerbosityLevel = setVerbosityLevel;\nexports.shadow = shadow;\nexports.string32 = string32;\nexports.stringToBytes = stringToBytes;\nexports.stringToPDFString = stringToPDFString;\nexports.stringToUTF16BEString = stringToUTF16BEString;\nexports.stringToUTF8String = stringToUTF8String;\nexports.unreachable = unreachable;\nexports.utf8StringToString = utf8StringToString;\nexports.warn = warn;\nexports.VerbosityLevel = exports.Util = exports.UNSUPPORTED_FEATURES = exports.UnknownErrorException = exports.UnexpectedResponseException = exports.TextRenderingMode = exports.StreamType = exports.RenderingIntentFlag = exports.PermissionFlag = exports.PasswordResponses = exports.PasswordException = exports.PageActionEventType = exports.OPS = exports.MissingPDFException = exports.IsLittleEndianCached = exports.IsEvalSupportedCached = exports.InvalidPDFException = exports.ImageKind = exports.IDENTITY_MATRIX = exports.FormatError = exports.FontType = exports.FONT_IDENTITY_MATRIX = exports.DocumentActionEventType = exports.CMapCompressionType = exports.BaseException = exports.AnnotationType = exports.AnnotationStateModelType = exports.AnnotationReviewState = exports.AnnotationReplyType = exports.AnnotationMode = exports.AnnotationMarkedState = exports.AnnotationFlag = exports.AnnotationFieldFlag = exports.AnnotationBorderStyleType = exports.AnnotationActionEventType = exports.AbortException = void 0;\n\n__w_pdfjs_require__(5);\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }\n\nfunction _nonIterableSpread() { throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\nfunction _iterableToArray(iter) { if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter); }\n\nfunction _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }\n\nfunction _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }\n\nfunction _nonIterableRest() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\nfunction _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== \"undefined\" && arr[Symbol.iterator] || arr[\"@@iterator\"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"] != null) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; }\n\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\n\nfunction _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e2) { throw _e2; }, f: F }; } throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e3) { didErr = true; err = _e3; }, f: function f() { try { if (!normalCompletion && it[\"return\"] != null) it[\"return\"](); } finally { if (didErr) throw err; } } }; }\n\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } else if (call !== void 0) { throw new TypeError(\"Derived constructors may only return object or undefined\"); } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\nvar IDENTITY_MATRIX = [1, 0, 0, 1, 0, 0];\nexports.IDENTITY_MATRIX = IDENTITY_MATRIX;\nvar FONT_IDENTITY_MATRIX = [0.001, 0, 0, 0.001, 0, 0];\nexports.FONT_IDENTITY_MATRIX = FONT_IDENTITY_MATRIX;\nvar RenderingIntentFlag = {\n ANY: 0x01,\n DISPLAY: 0x02,\n PRINT: 0x04,\n ANNOTATIONS_FORMS: 0x10,\n ANNOTATIONS_STORAGE: 0x20,\n ANNOTATIONS_DISABLE: 0x40,\n OPLIST: 0x100\n};\nexports.RenderingIntentFlag = RenderingIntentFlag;\nvar AnnotationMode = {\n DISABLE: 0,\n ENABLE: 1,\n ENABLE_FORMS: 2,\n ENABLE_STORAGE: 3\n};\nexports.AnnotationMode = AnnotationMode;\nvar PermissionFlag = {\n PRINT: 0x04,\n MODIFY_CONTENTS: 0x08,\n COPY: 0x10,\n MODIFY_ANNOTATIONS: 0x20,\n FILL_INTERACTIVE_FORMS: 0x100,\n COPY_FOR_ACCESSIBILITY: 0x200,\n ASSEMBLE: 0x400,\n PRINT_HIGH_QUALITY: 0x800\n};\nexports.PermissionFlag = PermissionFlag;\nvar TextRenderingMode = {\n FILL: 0,\n STROKE: 1,\n FILL_STROKE: 2,\n INVISIBLE: 3,\n FILL_ADD_TO_PATH: 4,\n STROKE_ADD_TO_PATH: 5,\n FILL_STROKE_ADD_TO_PATH: 6,\n ADD_TO_PATH: 7,\n FILL_STROKE_MASK: 3,\n ADD_TO_PATH_FLAG: 4\n};\nexports.TextRenderingMode = TextRenderingMode;\nvar ImageKind = {\n GRAYSCALE_1BPP: 1,\n RGB_24BPP: 2,\n RGBA_32BPP: 3\n};\nexports.ImageKind = ImageKind;\nvar AnnotationType = {\n TEXT: 1,\n LINK: 2,\n FREETEXT: 3,\n LINE: 4,\n SQUARE: 5,\n CIRCLE: 6,\n POLYGON: 7,\n POLYLINE: 8,\n HIGHLIGHT: 9,\n UNDERLINE: 10,\n SQUIGGLY: 11,\n STRIKEOUT: 12,\n STAMP: 13,\n CARET: 14,\n INK: 15,\n POPUP: 16,\n FILEATTACHMENT: 17,\n SOUND: 18,\n MOVIE: 19,\n WIDGET: 20,\n SCREEN: 21,\n PRINTERMARK: 22,\n TRAPNET: 23,\n WATERMARK: 24,\n THREED: 25,\n REDACT: 26\n};\nexports.AnnotationType = AnnotationType;\nvar AnnotationStateModelType = {\n MARKED: \"Marked\",\n REVIEW: \"Review\"\n};\nexports.AnnotationStateModelType = AnnotationStateModelType;\nvar AnnotationMarkedState = {\n MARKED: \"Marked\",\n UNMARKED: \"Unmarked\"\n};\nexports.AnnotationMarkedState = AnnotationMarkedState;\nvar AnnotationReviewState = {\n ACCEPTED: \"Accepted\",\n REJECTED: \"Rejected\",\n CANCELLED: \"Cancelled\",\n COMPLETED: \"Completed\",\n NONE: \"None\"\n};\nexports.AnnotationReviewState = AnnotationReviewState;\nvar AnnotationReplyType = {\n GROUP: \"Group\",\n REPLY: \"R\"\n};\nexports.AnnotationReplyType = AnnotationReplyType;\nvar AnnotationFlag = {\n INVISIBLE: 0x01,\n HIDDEN: 0x02,\n PRINT: 0x04,\n NOZOOM: 0x08,\n NOROTATE: 0x10,\n NOVIEW: 0x20,\n READONLY: 0x40,\n LOCKED: 0x80,\n TOGGLENOVIEW: 0x100,\n LOCKEDCONTENTS: 0x200\n};\nexports.AnnotationFlag = AnnotationFlag;\nvar AnnotationFieldFlag = {\n READONLY: 0x0000001,\n REQUIRED: 0x0000002,\n NOEXPORT: 0x0000004,\n MULTILINE: 0x0001000,\n PASSWORD: 0x0002000,\n NOTOGGLETOOFF: 0x0004000,\n RADIO: 0x0008000,\n PUSHBUTTON: 0x0010000,\n COMBO: 0x0020000,\n EDIT: 0x0040000,\n SORT: 0x0080000,\n FILESELECT: 0x0100000,\n MULTISELECT: 0x0200000,\n DONOTSPELLCHECK: 0x0400000,\n DONOTSCROLL: 0x0800000,\n COMB: 0x1000000,\n RICHTEXT: 0x2000000,\n RADIOSINUNISON: 0x2000000,\n COMMITONSELCHANGE: 0x4000000\n};\nexports.AnnotationFieldFlag = AnnotationFieldFlag;\nvar AnnotationBorderStyleType = {\n SOLID: 1,\n DASHED: 2,\n BEVELED: 3,\n INSET: 4,\n UNDERLINE: 5\n};\nexports.AnnotationBorderStyleType = AnnotationBorderStyleType;\nvar AnnotationActionEventType = {\n E: \"Mouse Enter\",\n X: \"Mouse Exit\",\n D: \"Mouse Down\",\n U: \"Mouse Up\",\n Fo: \"Focus\",\n Bl: \"Blur\",\n PO: \"PageOpen\",\n PC: \"PageClose\",\n PV: \"PageVisible\",\n PI: \"PageInvisible\",\n K: \"Keystroke\",\n F: \"Format\",\n V: \"Validate\",\n C: \"Calculate\"\n};\nexports.AnnotationActionEventType = AnnotationActionEventType;\nvar DocumentActionEventType = {\n WC: \"WillClose\",\n WS: \"WillSave\",\n DS: \"DidSave\",\n WP: \"WillPrint\",\n DP: \"DidPrint\"\n};\nexports.DocumentActionEventType = DocumentActionEventType;\nvar PageActionEventType = {\n O: \"PageOpen\",\n C: \"PageClose\"\n};\nexports.PageActionEventType = PageActionEventType;\nvar StreamType = {\n UNKNOWN: \"UNKNOWN\",\n FLATE: \"FLATE\",\n LZW: \"LZW\",\n DCT: \"DCT\",\n JPX: \"JPX\",\n JBIG: \"JBIG\",\n A85: \"A85\",\n AHX: \"AHX\",\n CCF: \"CCF\",\n RLX: \"RLX\"\n};\nexports.StreamType = StreamType;\nvar FontType = {\n UNKNOWN: \"UNKNOWN\",\n TYPE1: \"TYPE1\",\n TYPE1STANDARD: \"TYPE1STANDARD\",\n TYPE1C: \"TYPE1C\",\n CIDFONTTYPE0: \"CIDFONTTYPE0\",\n CIDFONTTYPE0C: \"CIDFONTTYPE0C\",\n TRUETYPE: \"TRUETYPE\",\n CIDFONTTYPE2: \"CIDFONTTYPE2\",\n TYPE3: \"TYPE3\",\n OPENTYPE: \"OPENTYPE\",\n TYPE0: \"TYPE0\",\n MMTYPE1: \"MMTYPE1\"\n};\nexports.FontType = FontType;\nvar VerbosityLevel = {\n ERRORS: 0,\n WARNINGS: 1,\n INFOS: 5\n};\nexports.VerbosityLevel = VerbosityLevel;\nvar CMapCompressionType = {\n NONE: 0,\n BINARY: 1,\n STREAM: 2\n};\nexports.CMapCompressionType = CMapCompressionType;\nvar OPS = {\n dependency: 1,\n setLineWidth: 2,\n setLineCap: 3,\n setLineJoin: 4,\n setMiterLimit: 5,\n setDash: 6,\n setRenderingIntent: 7,\n setFlatness: 8,\n setGState: 9,\n save: 10,\n restore: 11,\n transform: 12,\n moveTo: 13,\n lineTo: 14,\n curveTo: 15,\n curveTo2: 16,\n curveTo3: 17,\n closePath: 18,\n rectangle: 19,\n stroke: 20,\n closeStroke: 21,\n fill: 22,\n eoFill: 23,\n fillStroke: 24,\n eoFillStroke: 25,\n closeFillStroke: 26,\n closeEOFillStroke: 27,\n endPath: 28,\n clip: 29,\n eoClip: 30,\n beginText: 31,\n endText: 32,\n setCharSpacing: 33,\n setWordSpacing: 34,\n setHScale: 35,\n setLeading: 36,\n setFont: 37,\n setTextRenderingMode: 38,\n setTextRise: 39,\n moveText: 40,\n setLeadingMoveText: 41,\n setTextMatrix: 42,\n nextLine: 43,\n showText: 44,\n showSpacedText: 45,\n nextLineShowText: 46,\n nextLineSetSpacingShowText: 47,\n setCharWidth: 48,\n setCharWidthAndBounds: 49,\n setStrokeColorSpace: 50,\n setFillColorSpace: 51,\n setStrokeColor: 52,\n setStrokeColorN: 53,\n setFillColor: 54,\n setFillColorN: 55,\n setStrokeGray: 56,\n setFillGray: 57,\n setStrokeRGBColor: 58,\n setFillRGBColor: 59,\n setStrokeCMYKColor: 60,\n setFillCMYKColor: 61,\n shadingFill: 62,\n beginInlineImage: 63,\n beginImageData: 64,\n endInlineImage: 65,\n paintXObject: 66,\n markPoint: 67,\n markPointProps: 68,\n beginMarkedContent: 69,\n beginMarkedContentProps: 70,\n endMarkedContent: 71,\n beginCompat: 72,\n endCompat: 73,\n paintFormXObjectBegin: 74,\n paintFormXObjectEnd: 75,\n beginGroup: 76,\n endGroup: 77,\n beginAnnotations: 78,\n endAnnotations: 79,\n beginAnnotation: 80,\n endAnnotation: 81,\n paintJpegXObject: 82,\n paintImageMaskXObject: 83,\n paintImageMaskXObjectGroup: 84,\n paintImageXObject: 85,\n paintInlineImageXObject: 86,\n paintInlineImageXObjectGroup: 87,\n paintImageXObjectRepeat: 88,\n paintImageMaskXObjectRepeat: 89,\n paintSolidColorImageMask: 90,\n constructPath: 91\n};\nexports.OPS = OPS;\nvar UNSUPPORTED_FEATURES = {\n unknown: \"unknown\",\n forms: \"forms\",\n javaScript: \"javaScript\",\n signatures: \"signatures\",\n smask: \"smask\",\n shadingPattern: \"shadingPattern\",\n font: \"font\",\n errorTilingPattern: \"errorTilingPattern\",\n errorExtGState: \"errorExtGState\",\n errorXObject: \"errorXObject\",\n errorFontLoadType3: \"errorFontLoadType3\",\n errorFontState: \"errorFontState\",\n errorFontMissing: \"errorFontMissing\",\n errorFontTranslate: \"errorFontTranslate\",\n errorColorSpace: \"errorColorSpace\",\n errorOperatorList: \"errorOperatorList\",\n errorFontToUnicode: \"errorFontToUnicode\",\n errorFontLoadNative: \"errorFontLoadNative\",\n errorFontBuildPath: \"errorFontBuildPath\",\n errorFontGetPath: \"errorFontGetPath\",\n errorMarkedContent: \"errorMarkedContent\",\n errorContentSubStream: \"errorContentSubStream\"\n};\nexports.UNSUPPORTED_FEATURES = UNSUPPORTED_FEATURES;\nvar PasswordResponses = {\n NEED_PASSWORD: 1,\n INCORRECT_PASSWORD: 2\n};\nexports.PasswordResponses = PasswordResponses;\nvar verbosity = VerbosityLevel.WARNINGS;\n\nfunction setVerbosityLevel(level) {\n if (Number.isInteger(level)) {\n verbosity = level;\n }\n}\n\nfunction getVerbosityLevel() {\n return verbosity;\n}\n\nfunction info(msg) {\n if (verbosity >= VerbosityLevel.INFOS) {\n console.log(\"Info: \".concat(msg));\n }\n}\n\nfunction warn(msg) {\n if (verbosity >= VerbosityLevel.WARNINGS) {\n console.log(\"Warning: \".concat(msg));\n }\n}\n\nfunction unreachable(msg) {\n throw new Error(msg);\n}\n\nfunction assert(cond, msg) {\n if (!cond) {\n unreachable(msg);\n }\n}\n\nfunction isSameOrigin(baseUrl, otherUrl) {\n var base;\n\n try {\n base = new URL(baseUrl);\n\n if (!base.origin || base.origin === \"null\") {\n return false;\n }\n } catch (e) {\n return false;\n }\n\n var other = new URL(otherUrl, base);\n return base.origin === other.origin;\n}\n\nfunction _isValidProtocol(url) {\n if (!url) {\n return false;\n }\n\n switch (url.protocol) {\n case \"http:\":\n case \"https:\":\n case \"ftp:\":\n case \"mailto:\":\n case \"tel:\":\n return true;\n\n default:\n return false;\n }\n}\n\nfunction createValidAbsoluteUrl(url) {\n var baseUrl = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;\n var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null;\n\n if (!url) {\n return null;\n }\n\n try {\n if (options && typeof url === \"string\") {\n if (options.addDefaultProtocol && url.startsWith(\"www.\")) {\n var dots = url.match(/\\./g);\n\n if (dots && dots.length >= 2) {\n url = \"http://\".concat(url);\n }\n }\n\n if (options.tryConvertEncoding) {\n try {\n url = stringToUTF8String(url);\n } catch (ex) {}\n }\n }\n\n var absoluteUrl = baseUrl ? new URL(url, baseUrl) : new URL(url);\n\n if (_isValidProtocol(absoluteUrl)) {\n return absoluteUrl;\n }\n } catch (ex) {}\n\n return null;\n}\n\nfunction shadow(obj, prop, value) {\n Object.defineProperty(obj, prop, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: false\n });\n return value;\n}\n\nvar BaseException = function BaseExceptionClosure() {\n function BaseException(message, name) {\n if (this.constructor === BaseException) {\n unreachable(\"Cannot initialize BaseException.\");\n }\n\n this.message = message;\n this.name = name;\n }\n\n BaseException.prototype = new Error();\n BaseException.constructor = BaseException;\n return BaseException;\n}();\n\nexports.BaseException = BaseException;\n\nvar PasswordException = /*#__PURE__*/function (_BaseException) {\n _inherits(PasswordException, _BaseException);\n\n var _super = _createSuper(PasswordException);\n\n function PasswordException(msg, code) {\n var _this;\n\n _classCallCheck(this, PasswordException);\n\n _this = _super.call(this, msg, \"PasswordException\");\n _this.code = code;\n return _this;\n }\n\n return PasswordException;\n}(BaseException);\n\nexports.PasswordException = PasswordException;\n\nvar UnknownErrorException = /*#__PURE__*/function (_BaseException2) {\n _inherits(UnknownErrorException, _BaseException2);\n\n var _super2 = _createSuper(UnknownErrorException);\n\n function UnknownErrorException(msg, details) {\n var _this2;\n\n _classCallCheck(this, UnknownErrorException);\n\n _this2 = _super2.call(this, msg, \"UnknownErrorException\");\n _this2.details = details;\n return _this2;\n }\n\n return UnknownErrorException;\n}(BaseException);\n\nexports.UnknownErrorException = UnknownErrorException;\n\nvar InvalidPDFException = /*#__PURE__*/function (_BaseException3) {\n _inherits(InvalidPDFException, _BaseException3);\n\n var _super3 = _createSuper(InvalidPDFException);\n\n function InvalidPDFException(msg) {\n _classCallCheck(this, InvalidPDFException);\n\n return _super3.call(this, msg, \"InvalidPDFException\");\n }\n\n return InvalidPDFException;\n}(BaseException);\n\nexports.InvalidPDFException = InvalidPDFException;\n\nvar MissingPDFException = /*#__PURE__*/function (_BaseException4) {\n _inherits(MissingPDFException, _BaseException4);\n\n var _super4 = _createSuper(MissingPDFException);\n\n function MissingPDFException(msg) {\n _classCallCheck(this, MissingPDFException);\n\n return _super4.call(this, msg, \"MissingPDFException\");\n }\n\n return MissingPDFException;\n}(BaseException);\n\nexports.MissingPDFException = MissingPDFException;\n\nvar UnexpectedResponseException = /*#__PURE__*/function (_BaseException5) {\n _inherits(UnexpectedResponseException, _BaseException5);\n\n var _super5 = _createSuper(UnexpectedResponseException);\n\n function UnexpectedResponseException(msg, status) {\n var _this3;\n\n _classCallCheck(this, UnexpectedResponseException);\n\n _this3 = _super5.call(this, msg, \"UnexpectedResponseException\");\n _this3.status = status;\n return _this3;\n }\n\n return UnexpectedResponseException;\n}(BaseException);\n\nexports.UnexpectedResponseException = UnexpectedResponseException;\n\nvar FormatError = /*#__PURE__*/function (_BaseException6) {\n _inherits(FormatError, _BaseException6);\n\n var _super6 = _createSuper(FormatError);\n\n function FormatError(msg) {\n _classCallCheck(this, FormatError);\n\n return _super6.call(this, msg, \"FormatError\");\n }\n\n return FormatError;\n}(BaseException);\n\nexports.FormatError = FormatError;\n\nvar AbortException = /*#__PURE__*/function (_BaseException7) {\n _inherits(AbortException, _BaseException7);\n\n var _super7 = _createSuper(AbortException);\n\n function AbortException(msg) {\n _classCallCheck(this, AbortException);\n\n return _super7.call(this, msg, \"AbortException\");\n }\n\n return AbortException;\n}(BaseException);\n\nexports.AbortException = AbortException;\nvar NullCharactersRegExp = /\\x00/g;\n\nfunction removeNullCharacters(str) {\n if (typeof str !== \"string\") {\n warn(\"The argument for removeNullCharacters must be a string.\");\n return str;\n }\n\n return str.replace(NullCharactersRegExp, \"\");\n}\n\nfunction bytesToString(bytes) {\n assert(bytes !== null && _typeof(bytes) === \"object\" && bytes.length !== undefined, \"Invalid argument for bytesToString\");\n var length = bytes.length;\n var MAX_ARGUMENT_COUNT = 8192;\n\n if (length < MAX_ARGUMENT_COUNT) {\n return String.fromCharCode.apply(null, bytes);\n }\n\n var strBuf = [];\n\n for (var i = 0; i < length; i += MAX_ARGUMENT_COUNT) {\n var chunkEnd = Math.min(i + MAX_ARGUMENT_COUNT, length);\n var chunk = bytes.subarray(i, chunkEnd);\n strBuf.push(String.fromCharCode.apply(null, chunk));\n }\n\n return strBuf.join(\"\");\n}\n\nfunction stringToBytes(str) {\n assert(typeof str === \"string\", \"Invalid argument for stringToBytes\");\n var length = str.length;\n var bytes = new Uint8Array(length);\n\n for (var i = 0; i < length; ++i) {\n bytes[i] = str.charCodeAt(i) & 0xff;\n }\n\n return bytes;\n}\n\nfunction arrayByteLength(arr) {\n if (arr.length !== undefined) {\n return arr.length;\n }\n\n assert(arr.byteLength !== undefined, \"arrayByteLength - invalid argument.\");\n return arr.byteLength;\n}\n\nfunction arraysToBytes(arr) {\n var length = arr.length;\n\n if (length === 1 && arr[0] instanceof Uint8Array) {\n return arr[0];\n }\n\n var resultLength = 0;\n\n for (var i = 0; i < length; i++) {\n resultLength += arrayByteLength(arr[i]);\n }\n\n var pos = 0;\n var data = new Uint8Array(resultLength);\n\n for (var _i = 0; _i < length; _i++) {\n var item = arr[_i];\n\n if (!(item instanceof Uint8Array)) {\n if (typeof item === \"string\") {\n item = stringToBytes(item);\n } else {\n item = new Uint8Array(item);\n }\n }\n\n var itemLength = item.byteLength;\n data.set(item, pos);\n pos += itemLength;\n }\n\n return data;\n}\n\nfunction string32(value) {\n return String.fromCharCode(value >> 24 & 0xff, value >> 16 & 0xff, value >> 8 & 0xff, value & 0xff);\n}\n\nfunction objectSize(obj) {\n return Object.keys(obj).length;\n}\n\nfunction objectFromMap(map) {\n var obj = Object.create(null);\n\n var _iterator = _createForOfIteratorHelper(map),\n _step;\n\n try {\n for (_iterator.s(); !(_step = _iterator.n()).done;) {\n var _step$value = _slicedToArray(_step.value, 2),\n key = _step$value[0],\n value = _step$value[1];\n\n obj[key] = value;\n }\n } catch (err) {\n _iterator.e(err);\n } finally {\n _iterator.f();\n }\n\n return obj;\n}\n\nfunction isLittleEndian() {\n var buffer8 = new Uint8Array(4);\n buffer8[0] = 1;\n var view32 = new Uint32Array(buffer8.buffer, 0, 1);\n return view32[0] === 1;\n}\n\nvar IsLittleEndianCached = {\n get value() {\n return shadow(this, \"value\", isLittleEndian());\n }\n\n};\nexports.IsLittleEndianCached = IsLittleEndianCached;\n\nfunction isEvalSupported() {\n try {\n new Function(\"\");\n return true;\n } catch (e) {\n return false;\n }\n}\n\nvar IsEvalSupportedCached = {\n get value() {\n return shadow(this, \"value\", isEvalSupported());\n }\n\n};\nexports.IsEvalSupportedCached = IsEvalSupportedCached;\n\nvar hexNumbers = _toConsumableArray(Array(256).keys()).map(function (n) {\n return n.toString(16).padStart(2, \"0\");\n});\n\nvar Util = /*#__PURE__*/function () {\n function Util() {\n _classCallCheck(this, Util);\n }\n\n _createClass(Util, null, [{\n key: \"makeHexColor\",\n value: function makeHexColor(r, g, b) {\n return \"#\".concat(hexNumbers[r]).concat(hexNumbers[g]).concat(hexNumbers[b]);\n }\n }, {\n key: \"transform\",\n value: function transform(m1, m2) {\n return [m1[0] * m2[0] + m1[2] * m2[1], m1[1] * m2[0] + m1[3] * m2[1], m1[0] * m2[2] + m1[2] * m2[3], m1[1] * m2[2] + m1[3] * m2[3], m1[0] * m2[4] + m1[2] * m2[5] + m1[4], m1[1] * m2[4] + m1[3] * m2[5] + m1[5]];\n }\n }, {\n key: \"applyTransform\",\n value: function applyTransform(p, m) {\n var xt = p[0] * m[0] + p[1] * m[2] + m[4];\n var yt = p[0] * m[1] + p[1] * m[3] + m[5];\n return [xt, yt];\n }\n }, {\n key: \"applyInverseTransform\",\n value: function applyInverseTransform(p, m) {\n var d = m[0] * m[3] - m[1] * m[2];\n var xt = (p[0] * m[3] - p[1] * m[2] + m[2] * m[5] - m[4] * m[3]) / d;\n var yt = (-p[0] * m[1] + p[1] * m[0] + m[4] * m[1] - m[5] * m[0]) / d;\n return [xt, yt];\n }\n }, {\n key: \"getAxialAlignedBoundingBox\",\n value: function getAxialAlignedBoundingBox(r, m) {\n var p1 = Util.applyTransform(r, m);\n var p2 = Util.applyTransform(r.slice(2, 4), m);\n var p3 = Util.applyTransform([r[0], r[3]], m);\n var p4 = Util.applyTransform([r[2], r[1]], m);\n return [Math.min(p1[0], p2[0], p3[0], p4[0]), Math.min(p1[1], p2[1], p3[1], p4[1]), Math.max(p1[0], p2[0], p3[0], p4[0]), Math.max(p1[1], p2[1], p3[1], p4[1])];\n }\n }, {\n key: \"inverseTransform\",\n value: function inverseTransform(m) {\n var d = m[0] * m[3] - m[1] * m[2];\n return [m[3] / d, -m[1] / d, -m[2] / d, m[0] / d, (m[2] * m[5] - m[4] * m[3]) / d, (m[4] * m[1] - m[5] * m[0]) / d];\n }\n }, {\n key: \"apply3dTransform\",\n value: function apply3dTransform(m, v) {\n return [m[0] * v[0] + m[1] * v[1] + m[2] * v[2], m[3] * v[0] + m[4] * v[1] + m[5] * v[2], m[6] * v[0] + m[7] * v[1] + m[8] * v[2]];\n }\n }, {\n key: \"singularValueDecompose2dScale\",\n value: function singularValueDecompose2dScale(m) {\n var transpose = [m[0], m[2], m[1], m[3]];\n var a = m[0] * transpose[0] + m[1] * transpose[2];\n var b = m[0] * transpose[1] + m[1] * transpose[3];\n var c = m[2] * transpose[0] + m[3] * transpose[2];\n var d = m[2] * transpose[1] + m[3] * transpose[3];\n var first = (a + d) / 2;\n var second = Math.sqrt(Math.pow(a + d, 2) - 4 * (a * d - c * b)) / 2;\n var sx = first + second || 1;\n var sy = first - second || 1;\n return [Math.sqrt(sx), Math.sqrt(sy)];\n }\n }, {\n key: \"normalizeRect\",\n value: function normalizeRect(rect) {\n var r = rect.slice(0);\n\n if (rect[0] > rect[2]) {\n r[0] = rect[2];\n r[2] = rect[0];\n }\n\n if (rect[1] > rect[3]) {\n r[1] = rect[3];\n r[3] = rect[1];\n }\n\n return r;\n }\n }, {\n key: \"intersect\",\n value: function intersect(rect1, rect2) {\n function compare(a, b) {\n return a - b;\n }\n\n var orderedX = [rect1[0], rect1[2], rect2[0], rect2[2]].sort(compare);\n var orderedY = [rect1[1], rect1[3], rect2[1], rect2[3]].sort(compare);\n var result = [];\n rect1 = Util.normalizeRect(rect1);\n rect2 = Util.normalizeRect(rect2);\n\n if (orderedX[0] === rect1[0] && orderedX[1] === rect2[0] || orderedX[0] === rect2[0] && orderedX[1] === rect1[0]) {\n result[0] = orderedX[1];\n result[2] = orderedX[2];\n } else {\n return null;\n }\n\n if (orderedY[0] === rect1[1] && orderedY[1] === rect2[1] || orderedY[0] === rect2[1] && orderedY[1] === rect1[1]) {\n result[1] = orderedY[1];\n result[3] = orderedY[2];\n } else {\n return null;\n }\n\n return result;\n }\n }]);\n\n return Util;\n}();\n\nexports.Util = Util;\nvar PDFStringTranslateTable = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0x2d8, 0x2c7, 0x2c6, 0x2d9, 0x2dd, 0x2db, 0x2da, 0x2dc, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0x2022, 0x2020, 0x2021, 0x2026, 0x2014, 0x2013, 0x192, 0x2044, 0x2039, 0x203a, 0x2212, 0x2030, 0x201e, 0x201c, 0x201d, 0x2018, 0x2019, 0x201a, 0x2122, 0xfb01, 0xfb02, 0x141, 0x152, 0x160, 0x178, 0x17d, 0x131, 0x142, 0x153, 0x161, 0x17e, 0, 0x20ac];\n\nfunction stringToPDFString(str) {\n var length = str.length,\n strBuf = [];\n\n if (str[0] === \"\\xFE\" && str[1] === \"\\xFF\") {\n for (var i = 2; i < length; i += 2) {\n strBuf.push(String.fromCharCode(str.charCodeAt(i) << 8 | str.charCodeAt(i + 1)));\n }\n } else if (str[0] === \"\\xFF\" && str[1] === \"\\xFE\") {\n for (var _i2 = 2; _i2 < length; _i2 += 2) {\n strBuf.push(String.fromCharCode(str.charCodeAt(_i2 + 1) << 8 | str.charCodeAt(_i2)));\n }\n } else {\n for (var _i3 = 0; _i3 < length; ++_i3) {\n var code = PDFStringTranslateTable[str.charCodeAt(_i3)];\n strBuf.push(code ? String.fromCharCode(code) : str.charAt(_i3));\n }\n }\n\n return strBuf.join(\"\");\n}\n\nfunction escapeString(str) {\n return str.replace(/([()\\\\\\n\\r])/g, function (match) {\n if (match === \"\\n\") {\n return \"\\\\n\";\n } else if (match === \"\\r\") {\n return \"\\\\r\";\n }\n\n return \"\\\\\".concat(match);\n });\n}\n\nfunction isAscii(str) {\n return /^[\\x00-\\x7F]*$/.test(str);\n}\n\nfunction stringToUTF16BEString(str) {\n var buf = [\"\\xFE\\xFF\"];\n\n for (var i = 0, ii = str.length; i < ii; i++) {\n var _char = str.charCodeAt(i);\n\n buf.push(String.fromCharCode(_char >> 8 & 0xff), String.fromCharCode(_char & 0xff));\n }\n\n return buf.join(\"\");\n}\n\nfunction stringToUTF8String(str) {\n return decodeURIComponent(escape(str));\n}\n\nfunction utf8StringToString(str) {\n return unescape(encodeURIComponent(str));\n}\n\nfunction isBool(v) {\n return typeof v === \"boolean\";\n}\n\nfunction isNum(v) {\n return typeof v === \"number\";\n}\n\nfunction isString(v) {\n return typeof v === \"string\";\n}\n\nfunction isArrayBuffer(v) {\n return _typeof(v) === \"object\" && v !== null && v.byteLength !== undefined;\n}\n\nfunction isArrayEqual(arr1, arr2) {\n if (arr1.length !== arr2.length) {\n return false;\n }\n\n for (var i = 0, ii = arr1.length; i < ii; i++) {\n if (arr1[i] !== arr2[i]) {\n return false;\n }\n }\n\n return true;\n}\n\nfunction getModificationDate() {\n var date = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : new Date();\n var buffer = [date.getUTCFullYear().toString(), (date.getUTCMonth() + 1).toString().padStart(2, \"0\"), date.getUTCDate().toString().padStart(2, \"0\"), date.getUTCHours().toString().padStart(2, \"0\"), date.getUTCMinutes().toString().padStart(2, \"0\"), date.getUTCSeconds().toString().padStart(2, \"0\")];\n return buffer.join(\"\");\n}\n\nfunction createPromiseCapability() {\n var capability = Object.create(null);\n var isSettled = false;\n Object.defineProperty(capability, \"settled\", {\n get: function get() {\n return isSettled;\n }\n });\n capability.promise = new Promise(function (resolve, reject) {\n capability.resolve = function (data) {\n isSettled = true;\n resolve(data);\n };\n\n capability.reject = function (reason) {\n isSettled = true;\n reject(reason);\n };\n });\n return capability;\n}\n\nfunction createObjectURL(data) {\n var contentType = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : \"\";\n var forceDataSchema = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n\n if (URL.createObjectURL && !forceDataSchema) {\n return URL.createObjectURL(new Blob([data], {\n type: contentType\n }));\n }\n\n var digits = \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\";\n var buffer = \"data:\".concat(contentType, \";base64,\");\n\n for (var i = 0, ii = data.length; i < ii; i += 3) {\n var b1 = data[i] & 0xff;\n var b2 = data[i + 1] & 0xff;\n var b3 = data[i + 2] & 0xff;\n var d1 = b1 >> 2,\n d2 = (b1 & 3) << 4 | b2 >> 4;\n var d3 = i + 1 < ii ? (b2 & 0xf) << 2 | b3 >> 6 : 64;\n var d4 = i + 2 < ii ? b3 & 0x3f : 64;\n buffer += digits[d1] + digits[d2] + digits[d3] + digits[d4];\n }\n\n return buffer;\n}\n\n/***/ }),\n/* 5 */\n/***/ ((__unused_webpack_module, __unused_webpack_exports, __w_pdfjs_require__) => {\n\n\"use strict\";\n\n\nvar _is_node = __w_pdfjs_require__(6);\n\nif (typeof globalThis === \"undefined\" || !globalThis._pdfjsCompatibilityChecked) {\n if (typeof globalThis === \"undefined\" || globalThis.Math !== Math) {\n globalThis = __w_pdfjs_require__(7);\n }\n\n globalThis._pdfjsCompatibilityChecked = true;\n\n (function checkNodeBtoa() {\n if (globalThis.btoa || !_is_node.isNodeJS) {\n return;\n }\n\n globalThis.btoa = function (chars) {\n return Buffer.from(chars, \"binary\").toString(\"base64\");\n };\n })();\n\n (function checkNodeAtob() {\n if (globalThis.atob || !_is_node.isNodeJS) {\n return;\n }\n\n globalThis.atob = function (input) {\n return Buffer.from(input, \"base64\").toString(\"binary\");\n };\n })();\n\n (function checkDOMMatrix() {\n if (globalThis.DOMMatrix || !_is_node.isNodeJS) {\n return;\n }\n\n globalThis.DOMMatrix = __w_pdfjs_require__(60);\n })();\n\n (function checkObjectFromEntries() {\n if (Object.fromEntries) {\n return;\n }\n\n __w_pdfjs_require__(61);\n })();\n\n (function checkPromise() {\n if (globalThis.Promise.allSettled) {\n return;\n }\n\n globalThis.Promise = __w_pdfjs_require__(89);\n })();\n\n (function checkReadableStream() {\n if (globalThis.ReadableStream || !_is_node.isNodeJS) {\n return;\n }\n\n globalThis.ReadableStream = __w_pdfjs_require__(117).ReadableStream;\n })();\n}\n\n/***/ }),\n/* 6 */\n/***/ ((__unused_webpack_module, exports) => {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.isNodeJS = void 0;\n\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\nvar isNodeJS = (typeof process === \"undefined\" ? \"undefined\" : _typeof(process)) === \"object\" && process + \"\" === \"[object process]\" && !process.versions.nw && !(process.versions.electron && process.type && process.type !== \"browser\");\nexports.isNodeJS = isNodeJS;\n\n/***/ }),\n/* 7 */\n/***/ ((module, __unused_webpack_exports, __w_pdfjs_require__) => {\n\n__w_pdfjs_require__(8);\nmodule.exports = __w_pdfjs_require__(10);\n\n/***/ }),\n/* 8 */\n/***/ ((__unused_webpack_module, __unused_webpack_exports, __w_pdfjs_require__) => {\n\nvar $ = __w_pdfjs_require__(9);\nvar global = __w_pdfjs_require__(10);\n$({ global: true }, { globalThis: global });\n\n/***/ }),\n/* 9 */\n/***/ ((module, __unused_webpack_exports, __w_pdfjs_require__) => {\n\nvar global = __w_pdfjs_require__(10);\nvar getOwnPropertyDescriptor = __w_pdfjs_require__(11).f;\nvar createNonEnumerableProperty = __w_pdfjs_require__(40);\nvar redefine = __w_pdfjs_require__(43);\nvar setGlobal = __w_pdfjs_require__(34);\nvar copyConstructorProperties = __w_pdfjs_require__(49);\nvar isForced = __w_pdfjs_require__(59);\nmodule.exports = function (options, source) {\n var TARGET = options.target;\n var GLOBAL = options.global;\n var STATIC = options.stat;\n var FORCED, target, key, targetProperty, sourceProperty, descriptor;\n if (GLOBAL) {\n target = global;\n } else if (STATIC) {\n target = global[TARGET] || setGlobal(TARGET, {});\n } else {\n target = (global[TARGET] || {}).prototype;\n }\n if (target)\n for (key in source) {\n sourceProperty = source[key];\n if (options.noTargetGet) {\n descriptor = getOwnPropertyDescriptor(target, key);\n targetProperty = descriptor && descriptor.value;\n } else\n targetProperty = target[key];\n FORCED = isForced(GLOBAL ? key : TARGET + (STATIC ? '.' : '#') + key, options.forced);\n if (!FORCED && targetProperty !== undefined) {\n if (typeof sourceProperty === typeof targetProperty)\n continue;\n copyConstructorProperties(sourceProperty, targetProperty);\n }\n if (options.sham || targetProperty && targetProperty.sham) {\n createNonEnumerableProperty(sourceProperty, 'sham', true);\n }\n redefine(target, key, sourceProperty, options);\n }\n};\n\n/***/ }),\n/* 10 */\n/***/ ((module) => {\n\nvar check = function (it) {\n return it && it.Math == Math && it;\n};\nmodule.exports = check(typeof globalThis == 'object' && globalThis) || check(typeof window == 'object' && window) || check(typeof self == 'object' && self) || check(typeof global == 'object' && global) || function () {\n return this;\n}() || Function('return this')();\n\n/***/ }),\n/* 11 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\nvar DESCRIPTORS = __w_pdfjs_require__(12);\nvar propertyIsEnumerableModule = __w_pdfjs_require__(14);\nvar createPropertyDescriptor = __w_pdfjs_require__(15);\nvar toIndexedObject = __w_pdfjs_require__(16);\nvar toPropertyKey = __w_pdfjs_require__(20);\nvar has = __w_pdfjs_require__(35);\nvar IE8_DOM_DEFINE = __w_pdfjs_require__(38);\nvar $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\nexports.f = DESCRIPTORS ? $getOwnPropertyDescriptor : function getOwnPropertyDescriptor(O, P) {\n O = toIndexedObject(O);\n P = toPropertyKey(P);\n if (IE8_DOM_DEFINE)\n try {\n return $getOwnPropertyDescriptor(O, P);\n } catch (error) {\n }\n if (has(O, P))\n return createPropertyDescriptor(!propertyIsEnumerableModule.f.call(O, P), O[P]);\n};\n\n/***/ }),\n/* 12 */\n/***/ ((module, __unused_webpack_exports, __w_pdfjs_require__) => {\n\nvar fails = __w_pdfjs_require__(13);\nmodule.exports = !fails(function () {\n return Object.defineProperty({}, 1, {\n get: function () {\n return 7;\n }\n })[1] != 7;\n});\n\n/***/ }),\n/* 13 */\n/***/ ((module) => {\n\nmodule.exports = function (exec) {\n try {\n return !!exec();\n } catch (error) {\n return true;\n }\n};\n\n/***/ }),\n/* 14 */\n/***/ ((__unused_webpack_module, exports) => {\n\n\"use strict\";\n\nvar $propertyIsEnumerable = {}.propertyIsEnumerable;\nvar getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\nvar NASHORN_BUG = getOwnPropertyDescriptor && !$propertyIsEnumerable.call({ 1: 2 }, 1);\nexports.f = NASHORN_BUG ? function propertyIsEnumerable(V) {\n var descriptor = getOwnPropertyDescriptor(this, V);\n return !!descriptor && descriptor.enumerable;\n} : $propertyIsEnumerable;\n\n/***/ }),\n/* 15 */\n/***/ ((module) => {\n\nmodule.exports = function (bitmap, value) {\n return {\n enumerable: !(bitmap & 1),\n configurable: !(bitmap & 2),\n writable: !(bitmap & 4),\n value: value\n };\n};\n\n/***/ }),\n/* 16 */\n/***/ ((module, __unused_webpack_exports, __w_pdfjs_require__) => {\n\nvar IndexedObject = __w_pdfjs_require__(17);\nvar requireObjectCoercible = __w_pdfjs_require__(19);\nmodule.exports = function (it) {\n return IndexedObject(requireObjectCoercible(it));\n};\n\n/***/ }),\n/* 17 */\n/***/ ((module, __unused_webpack_exports, __w_pdfjs_require__) => {\n\nvar fails = __w_pdfjs_require__(13);\nvar classof = __w_pdfjs_require__(18);\nvar split = ''.split;\nmodule.exports = fails(function () {\n return !Object('z').propertyIsEnumerable(0);\n}) ? function (it) {\n return classof(it) == 'String' ? split.call(it, '') : Object(it);\n} : Object;\n\n/***/ }),\n/* 18 */\n/***/ ((module) => {\n\nvar toString = {}.toString;\nmodule.exports = function (it) {\n return toString.call(it).slice(8, -1);\n};\n\n/***/ }),\n/* 19 */\n/***/ ((module) => {\n\nmodule.exports = function (it) {\n if (it == undefined)\n throw TypeError(\"Can't call method on \" + it);\n return it;\n};\n\n/***/ }),\n/* 20 */\n/***/ ((module, __unused_webpack_exports, __w_pdfjs_require__) => {\n\nvar toPrimitive = __w_pdfjs_require__(21);\nvar isSymbol = __w_pdfjs_require__(23);\nmodule.exports = function (argument) {\n var key = toPrimitive(argument, 'string');\n return isSymbol(key) ? key : String(key);\n};\n\n/***/ }),\n/* 21 */\n/***/ ((module, __unused_webpack_exports, __w_pdfjs_require__) => {\n\nvar isObject = __w_pdfjs_require__(22);\nvar isSymbol = __w_pdfjs_require__(23);\nvar ordinaryToPrimitive = __w_pdfjs_require__(29);\nvar wellKnownSymbol = __w_pdfjs_require__(30);\nvar TO_PRIMITIVE = wellKnownSymbol('toPrimitive');\nmodule.exports = function (input, pref) {\n if (!isObject(input) || isSymbol(input))\n return input;\n var exoticToPrim = input[TO_PRIMITIVE];\n var result;\n if (exoticToPrim !== undefined) {\n if (pref === undefined)\n pref = 'default';\n result = exoticToPrim.call(input, pref);\n if (!isObject(result) || isSymbol(result))\n return result;\n throw TypeError(\"Can't convert object to primitive value\");\n }\n if (pref === undefined)\n pref = 'number';\n return ordinaryToPrimitive(input, pref);\n};\n\n/***/ }),\n/* 22 */\n/***/ ((module) => {\n\nmodule.exports = function (it) {\n return typeof it === 'object' ? it !== null : typeof it === 'function';\n};\n\n/***/ }),\n/* 23 */\n/***/ ((module, __unused_webpack_exports, __w_pdfjs_require__) => {\n\nvar getBuiltIn = __w_pdfjs_require__(24);\nvar USE_SYMBOL_AS_UID = __w_pdfjs_require__(25);\nmodule.exports = USE_SYMBOL_AS_UID ? function (it) {\n return typeof it == 'symbol';\n} : function (it) {\n var $Symbol = getBuiltIn('Symbol');\n return typeof $Symbol == 'function' && Object(it) instanceof $Symbol;\n};\n\n/***/ }),\n/* 24 */\n/***/ ((module, __unused_webpack_exports, __w_pdfjs_require__) => {\n\nvar global = __w_pdfjs_require__(10);\nvar aFunction = function (variable) {\n return typeof variable == 'function' ? variable : undefined;\n};\nmodule.exports = function (namespace, method) {\n return arguments.length < 2 ? aFunction(global[namespace]) : global[namespace] && global[namespace][method];\n};\n\n/***/ }),\n/* 25 */\n/***/ ((module, __unused_webpack_exports, __w_pdfjs_require__) => {\n\nvar NATIVE_SYMBOL = __w_pdfjs_require__(26);\nmodule.exports = NATIVE_SYMBOL && !Symbol.sham && typeof Symbol.iterator == 'symbol';\n\n/***/ }),\n/* 26 */\n/***/ ((module, __unused_webpack_exports, __w_pdfjs_require__) => {\n\nvar V8_VERSION = __w_pdfjs_require__(27);\nvar fails = __w_pdfjs_require__(13);\nmodule.exports = !!Object.getOwnPropertySymbols && !fails(function () {\n var symbol = Symbol();\n return !String(symbol) || !(Object(symbol) instanceof Symbol) || !Symbol.sham && V8_VERSION && V8_VERSION < 41;\n});\n\n/***/ }),\n/* 27 */\n/***/ ((module, __unused_webpack_exports, __w_pdfjs_require__) => {\n\nvar global = __w_pdfjs_require__(10);\nvar userAgent = __w_pdfjs_require__(28);\nvar process = global.process;\nvar Deno = global.Deno;\nvar versions = process && process.versions || Deno && Deno.version;\nvar v8 = versions && versions.v8;\nvar match, version;\nif (v8) {\n match = v8.split('.');\n version = match[0] < 4 ? 1 : match[0] + match[1];\n} else if (userAgent) {\n match = userAgent.match(/Edge\\/(\\d+)/);\n if (!match || match[1] >= 74) {\n match = userAgent.match(/Chrome\\/(\\d+)/);\n if (match)\n version = match[1];\n }\n}\nmodule.exports = version && +version;\n\n/***/ }),\n/* 28 */\n/***/ ((module, __unused_webpack_exports, __w_pdfjs_require__) => {\n\nvar getBuiltIn = __w_pdfjs_require__(24);\nmodule.exports = getBuiltIn('navigator', 'userAgent') || '';\n\n/***/ }),\n/* 29 */\n/***/ ((module, __unused_webpack_exports, __w_pdfjs_require__) => {\n\nvar isObject = __w_pdfjs_require__(22);\nmodule.exports = function (input, pref) {\n var fn, val;\n if (pref === 'string' && typeof (fn = input.toString) == 'function' && !isObject(val = fn.call(input)))\n return val;\n if (typeof (fn = input.valueOf) == 'function' && !isObject(val = fn.call(input)))\n return val;\n if (pref !== 'string' && typeof (fn = input.toString) == 'function' && !isObject(val = fn.call(input)))\n return val;\n throw TypeError(\"Can't convert object to primitive value\");\n};\n\n/***/ }),\n/* 30 */\n/***/ ((module, __unused_webpack_exports, __w_pdfjs_require__) => {\n\nvar global = __w_pdfjs_require__(10);\nvar shared = __w_pdfjs_require__(31);\nvar has = __w_pdfjs_require__(35);\nvar uid = __w_pdfjs_require__(37);\nvar NATIVE_SYMBOL = __w_pdfjs_require__(26);\nvar USE_SYMBOL_AS_UID = __w_pdfjs_require__(25);\nvar WellKnownSymbolsStore = shared('wks');\nvar Symbol = global.Symbol;\nvar createWellKnownSymbol = USE_SYMBOL_AS_UID ? Symbol : Symbol && Symbol.withoutSetter || uid;\nmodule.exports = function (name) {\n if (!has(WellKnownSymbolsStore, name) || !(NATIVE_SYMBOL || typeof WellKnownSymbolsStore[name] == 'string')) {\n if (NATIVE_SYMBOL && has(Symbol, name)) {\n WellKnownSymbolsStore[name] = Symbol[name];\n } else {\n WellKnownSymbolsStore[name] = createWellKnownSymbol('Symbol.' + name);\n }\n }\n return WellKnownSymbolsStore[name];\n};\n\n/***/ }),\n/* 31 */\n/***/ ((module, __unused_webpack_exports, __w_pdfjs_require__) => {\n\nvar IS_PURE = __w_pdfjs_require__(32);\nvar store = __w_pdfjs_require__(33);\n(module.exports = function (key, value) {\n return store[key] || (store[key] = value !== undefined ? value : {});\n})('versions', []).push({\n version: '3.17.3',\n mode: IS_PURE ? 'pure' : 'global',\n copyright: '© 2021 Denis Pushkarev (zloirock.ru)'\n});\n\n/***/ }),\n/* 32 */\n/***/ ((module) => {\n\nmodule.exports = false;\n\n/***/ }),\n/* 33 */\n/***/ ((module, __unused_webpack_exports, __w_pdfjs_require__) => {\n\nvar global = __w_pdfjs_require__(10);\nvar setGlobal = __w_pdfjs_require__(34);\nvar SHARED = '__core-js_shared__';\nvar store = global[SHARED] || setGlobal(SHARED, {});\nmodule.exports = store;\n\n/***/ }),\n/* 34 */\n/***/ ((module, __unused_webpack_exports, __w_pdfjs_require__) => {\n\nvar global = __w_pdfjs_require__(10);\nmodule.exports = function (key, value) {\n try {\n Object.defineProperty(global, key, {\n value: value,\n configurable: true,\n writable: true\n });\n } catch (error) {\n global[key] = value;\n }\n return value;\n};\n\n/***/ }),\n/* 35 */\n/***/ ((module, __unused_webpack_exports, __w_pdfjs_require__) => {\n\nvar toObject = __w_pdfjs_require__(36);\nvar hasOwnProperty = {}.hasOwnProperty;\nmodule.exports = Object.hasOwn || function hasOwn(it, key) {\n return hasOwnProperty.call(toObject(it), key);\n};\n\n/***/ }),\n/* 36 */\n/***/ ((module, __unused_webpack_exports, __w_pdfjs_require__) => {\n\nvar requireObjectCoercible = __w_pdfjs_require__(19);\nmodule.exports = function (argument) {\n return Object(requireObjectCoercible(argument));\n};\n\n/***/ }),\n/* 37 */\n/***/ ((module) => {\n\nvar id = 0;\nvar postfix = Math.random();\nmodule.exports = function (key) {\n return 'Symbol(' + String(key === undefined ? '' : key) + ')_' + (++id + postfix).toString(36);\n};\n\n/***/ }),\n/* 38 */\n/***/ ((module, __unused_webpack_exports, __w_pdfjs_require__) => {\n\nvar DESCRIPTORS = __w_pdfjs_require__(12);\nvar fails = __w_pdfjs_require__(13);\nvar createElement = __w_pdfjs_require__(39);\nmodule.exports = !DESCRIPTORS && !fails(function () {\n return Object.defineProperty(createElement('div'), 'a', {\n get: function () {\n return 7;\n }\n }).a != 7;\n});\n\n/***/ }),\n/* 39 */\n/***/ ((module, __unused_webpack_exports, __w_pdfjs_require__) => {\n\nvar global = __w_pdfjs_require__(10);\nvar isObject = __w_pdfjs_require__(22);\nvar document = global.document;\nvar EXISTS = isObject(document) && isObject(document.createElement);\nmodule.exports = function (it) {\n return EXISTS ? document.createElement(it) : {};\n};\n\n/***/ }),\n/* 40 */\n/***/ ((module, __unused_webpack_exports, __w_pdfjs_require__) => {\n\nvar DESCRIPTORS = __w_pdfjs_require__(12);\nvar definePropertyModule = __w_pdfjs_require__(41);\nvar createPropertyDescriptor = __w_pdfjs_require__(15);\nmodule.exports = DESCRIPTORS ? function (object, key, value) {\n return definePropertyModule.f(object, key, createPropertyDescriptor(1, value));\n} : function (object, key, value) {\n object[key] = value;\n return object;\n};\n\n/***/ }),\n/* 41 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\nvar DESCRIPTORS = __w_pdfjs_require__(12);\nvar IE8_DOM_DEFINE = __w_pdfjs_require__(38);\nvar anObject = __w_pdfjs_require__(42);\nvar toPropertyKey = __w_pdfjs_require__(20);\nvar $defineProperty = Object.defineProperty;\nexports.f = DESCRIPTORS ? $defineProperty : function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPropertyKey(P);\n anObject(Attributes);\n if (IE8_DOM_DEFINE)\n try {\n return $defineProperty(O, P, Attributes);\n } catch (error) {\n }\n if ('get' in Attributes || 'set' in Attributes)\n throw TypeError('Accessors not supported');\n if ('value' in Attributes)\n O[P] = Attributes.value;\n return O;\n};\n\n/***/ }),\n/* 42 */\n/***/ ((module, __unused_webpack_exports, __w_pdfjs_require__) => {\n\nvar isObject = __w_pdfjs_require__(22);\nmodule.exports = function (it) {\n if (!isObject(it)) {\n throw TypeError(String(it) + ' is not an object');\n }\n return it;\n};\n\n/***/ }),\n/* 43 */\n/***/ ((module, __unused_webpack_exports, __w_pdfjs_require__) => {\n\nvar global = __w_pdfjs_require__(10);\nvar createNonEnumerableProperty = __w_pdfjs_require__(40);\nvar has = __w_pdfjs_require__(35);\nvar setGlobal = __w_pdfjs_require__(34);\nvar inspectSource = __w_pdfjs_require__(44);\nvar InternalStateModule = __w_pdfjs_require__(45);\nvar getInternalState = InternalStateModule.get;\nvar enforceInternalState = InternalStateModule.enforce;\nvar TEMPLATE = String(String).split('String');\n(module.exports = function (O, key, value, options) {\n var unsafe = options ? !!options.unsafe : false;\n var simple = options ? !!options.enumerable : false;\n var noTargetGet = options ? !!options.noTargetGet : false;\n var state;\n if (typeof value == 'function') {\n if (typeof key == 'string' && !has(value, 'name')) {\n createNonEnumerableProperty(value, 'name', key);\n }\n state = enforceInternalState(value);\n if (!state.source) {\n state.source = TEMPLATE.join(typeof key == 'string' ? key : '');\n }\n }\n if (O === global) {\n if (simple)\n O[key] = value;\n else\n setGlobal(key, value);\n return;\n } else if (!unsafe) {\n delete O[key];\n } else if (!noTargetGet && O[key]) {\n simple = true;\n }\n if (simple)\n O[key] = value;\n else\n createNonEnumerableProperty(O, key, value);\n})(Function.prototype, 'toString', function toString() {\n return typeof this == 'function' && getInternalState(this).source || inspectSource(this);\n});\n\n/***/ }),\n/* 44 */\n/***/ ((module, __unused_webpack_exports, __w_pdfjs_require__) => {\n\nvar store = __w_pdfjs_require__(33);\nvar functionToString = Function.toString;\nif (typeof store.inspectSource != 'function') {\n store.inspectSource = function (it) {\n return functionToString.call(it);\n };\n}\nmodule.exports = store.inspectSource;\n\n/***/ }),\n/* 45 */\n/***/ ((module, __unused_webpack_exports, __w_pdfjs_require__) => {\n\nvar NATIVE_WEAK_MAP = __w_pdfjs_require__(46);\nvar global = __w_pdfjs_require__(10);\nvar isObject = __w_pdfjs_require__(22);\nvar createNonEnumerableProperty = __w_pdfjs_require__(40);\nvar objectHas = __w_pdfjs_require__(35);\nvar shared = __w_pdfjs_require__(33);\nvar sharedKey = __w_pdfjs_require__(47);\nvar hiddenKeys = __w_pdfjs_require__(48);\nvar OBJECT_ALREADY_INITIALIZED = 'Object already initialized';\nvar WeakMap = global.WeakMap;\nvar set, get, has;\nvar enforce = function (it) {\n return has(it) ? get(it) : set(it, {});\n};\nvar getterFor = function (TYPE) {\n return function (it) {\n var state;\n if (!isObject(it) || (state = get(it)).type !== TYPE) {\n throw TypeError('Incompatible receiver, ' + TYPE + ' required');\n }\n return state;\n };\n};\nif (NATIVE_WEAK_MAP || shared.state) {\n var store = shared.state || (shared.state = new WeakMap());\n var wmget = store.get;\n var wmhas = store.has;\n var wmset = store.set;\n set = function (it, metadata) {\n if (wmhas.call(store, it))\n throw new TypeError(OBJECT_ALREADY_INITIALIZED);\n metadata.facade = it;\n wmset.call(store, it, metadata);\n return metadata;\n };\n get = function (it) {\n return wmget.call(store, it) || {};\n };\n has = function (it) {\n return wmhas.call(store, it);\n };\n} else {\n var STATE = sharedKey('state');\n hiddenKeys[STATE] = true;\n set = function (it, metadata) {\n if (objectHas(it, STATE))\n throw new TypeError(OBJECT_ALREADY_INITIALIZED);\n metadata.facade = it;\n createNonEnumerableProperty(it, STATE, metadata);\n return metadata;\n };\n get = function (it) {\n return objectHas(it, STATE) ? it[STATE] : {};\n };\n has = function (it) {\n return objectHas(it, STATE);\n };\n}\nmodule.exports = {\n set: set,\n get: get,\n has: has,\n enforce: enforce,\n getterFor: getterFor\n};\n\n/***/ }),\n/* 46 */\n/***/ ((module, __unused_webpack_exports, __w_pdfjs_require__) => {\n\nvar global = __w_pdfjs_require__(10);\nvar inspectSource = __w_pdfjs_require__(44);\nvar WeakMap = global.WeakMap;\nmodule.exports = typeof WeakMap === 'function' && /native code/.test(inspectSource(WeakMap));\n\n/***/ }),\n/* 47 */\n/***/ ((module, __unused_webpack_exports, __w_pdfjs_require__) => {\n\nvar shared = __w_pdfjs_require__(31);\nvar uid = __w_pdfjs_require__(37);\nvar keys = shared('keys');\nmodule.exports = function (key) {\n return keys[key] || (keys[key] = uid(key));\n};\n\n/***/ }),\n/* 48 */\n/***/ ((module) => {\n\nmodule.exports = {};\n\n/***/ }),\n/* 49 */\n/***/ ((module, __unused_webpack_exports, __w_pdfjs_require__) => {\n\nvar has = __w_pdfjs_require__(35);\nvar ownKeys = __w_pdfjs_require__(50);\nvar getOwnPropertyDescriptorModule = __w_pdfjs_require__(11);\nvar definePropertyModule = __w_pdfjs_require__(41);\nmodule.exports = function (target, source) {\n var keys = ownKeys(source);\n var defineProperty = definePropertyModule.f;\n var getOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;\n for (var i = 0; i < keys.length; i++) {\n var key = keys[i];\n if (!has(target, key))\n defineProperty(target, key, getOwnPropertyDescriptor(source, key));\n }\n};\n\n/***/ }),\n/* 50 */\n/***/ ((module, __unused_webpack_exports, __w_pdfjs_require__) => {\n\nvar getBuiltIn = __w_pdfjs_require__(24);\nvar getOwnPropertyNamesModule = __w_pdfjs_require__(51);\nvar getOwnPropertySymbolsModule = __w_pdfjs_require__(58);\nvar anObject = __w_pdfjs_require__(42);\nmodule.exports = getBuiltIn('Reflect', 'ownKeys') || function ownKeys(it) {\n var keys = getOwnPropertyNamesModule.f(anObject(it));\n var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;\n return getOwnPropertySymbols ? keys.concat(getOwnPropertySymbols(it)) : keys;\n};\n\n/***/ }),\n/* 51 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\nvar internalObjectKeys = __w_pdfjs_require__(52);\nvar enumBugKeys = __w_pdfjs_require__(57);\nvar hiddenKeys = enumBugKeys.concat('length', 'prototype');\nexports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {\n return internalObjectKeys(O, hiddenKeys);\n};\n\n/***/ }),\n/* 52 */\n/***/ ((module, __unused_webpack_exports, __w_pdfjs_require__) => {\n\nvar has = __w_pdfjs_require__(35);\nvar toIndexedObject = __w_pdfjs_require__(16);\nvar indexOf = __w_pdfjs_require__(53).indexOf;\nvar hiddenKeys = __w_pdfjs_require__(48);\nmodule.exports = function (object, names) {\n var O = toIndexedObject(object);\n var i = 0;\n var result = [];\n var key;\n for (key in O)\n !has(hiddenKeys, key) && has(O, key) && result.push(key);\n while (names.length > i)\n if (has(O, key = names[i++])) {\n ~indexOf(result, key) || result.push(key);\n }\n return result;\n};\n\n/***/ }),\n/* 53 */\n/***/ ((module, __unused_webpack_exports, __w_pdfjs_require__) => {\n\nvar toIndexedObject = __w_pdfjs_require__(16);\nvar toLength = __w_pdfjs_require__(54);\nvar toAbsoluteIndex = __w_pdfjs_require__(56);\nvar createMethod = function (IS_INCLUDES) {\n return function ($this, el, fromIndex) {\n var O = toIndexedObject($this);\n var length = toLength(O.length);\n var index = toAbsoluteIndex(fromIndex, length);\n var value;\n if (IS_INCLUDES && el != el)\n while (length > index) {\n value = O[index++];\n if (value != value)\n return true;\n }\n else\n for (; length > index; index++) {\n if ((IS_INCLUDES || index in O) && O[index] === el)\n return IS_INCLUDES || index || 0;\n }\n return !IS_INCLUDES && -1;\n };\n};\nmodule.exports = {\n includes: createMethod(true),\n indexOf: createMethod(false)\n};\n\n/***/ }),\n/* 54 */\n/***/ ((module, __unused_webpack_exports, __w_pdfjs_require__) => {\n\nvar toInteger = __w_pdfjs_require__(55);\nvar min = Math.min;\nmodule.exports = function (argument) {\n return argument > 0 ? min(toInteger(argument), 0x1FFFFFFFFFFFFF) : 0;\n};\n\n/***/ }),\n/* 55 */\n/***/ ((module) => {\n\nvar ceil = Math.ceil;\nvar floor = Math.floor;\nmodule.exports = function (argument) {\n return isNaN(argument = +argument) ? 0 : (argument > 0 ? floor : ceil)(argument);\n};\n\n/***/ }),\n/* 56 */\n/***/ ((module, __unused_webpack_exports, __w_pdfjs_require__) => {\n\nvar toInteger = __w_pdfjs_require__(55);\nvar max = Math.max;\nvar min = Math.min;\nmodule.exports = function (index, length) {\n var integer = toInteger(index);\n return integer < 0 ? max(integer + length, 0) : min(integer, length);\n};\n\n/***/ }),\n/* 57 */\n/***/ ((module) => {\n\nmodule.exports = [\n 'constructor',\n 'hasOwnProperty',\n 'isPrototypeOf',\n 'propertyIsEnumerable',\n 'toLocaleString',\n 'toString',\n 'valueOf'\n];\n\n/***/ }),\n/* 58 */\n/***/ ((__unused_webpack_module, exports) => {\n\nexports.f = Object.getOwnPropertySymbols;\n\n/***/ }),\n/* 59 */\n/***/ ((module, __unused_webpack_exports, __w_pdfjs_require__) => {\n\nvar fails = __w_pdfjs_require__(13);\nvar replacement = /#|\\.prototype\\./;\nvar isForced = function (feature, detection) {\n var value = data[normalize(feature)];\n return value == POLYFILL ? true : value == NATIVE ? false : typeof detection == 'function' ? fails(detection) : !!detection;\n};\nvar normalize = isForced.normalize = function (string) {\n return String(string).replace(replacement, '.').toLowerCase();\n};\nvar data = isForced.data = {};\nvar NATIVE = isForced.NATIVE = 'N';\nvar POLYFILL = isForced.POLYFILL = 'P';\nmodule.exports = isForced;\n\n/***/ }),\n/* 60 */\n/***/ ((module, exports, __w_pdfjs_require__) => {\n\n\"use strict\";\nvar __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_RESULT__;\n\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\n(function (global, factory) {\n ( false ? 0 : _typeof(exports)) === 'object' && \"object\" !== 'undefined' ? module.exports = factory() : true ? !(__WEBPACK_AMD_DEFINE_FACTORY__ = (factory),\n\t\t__WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ?\n\t\t(__WEBPACK_AMD_DEFINE_FACTORY__.call(exports, __w_pdfjs_require__, exports, module)) :\n\t\t__WEBPACK_AMD_DEFINE_FACTORY__),\n\t\t__WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__)) : (0);\n})(void 0, function () {\n 'use strict';\n\n var CSSMatrix = function CSSMatrix() {\n var args = [],\n len = arguments.length;\n\n while (len--) {\n args[len] = arguments[len];\n }\n\n this.setIdentity();\n return args && args.length && this.setMatrixValue(args);\n };\n\n var prototypeAccessors = {\n isIdentity: {\n configurable: true\n },\n is2D: {\n configurable: true\n }\n };\n\n prototypeAccessors.isIdentity.get = function () {\n var m = this;\n return m.m11 === 1 && m.m12 === 0 && m.m13 === 0 && m.m14 === 0 && m.m21 === 0 && m.m22 === 1 && m.m23 === 0 && m.m24 === 0 && m.m31 === 0 && m.m32 === 0 && m.m33 === 1 && m.m34 === 0 && m.m41 === 0 && m.m42 === 0 && m.m43 === 0 && m.m44 === 1;\n };\n\n prototypeAccessors.isIdentity.set = function (value) {\n this.isIdentity = value;\n };\n\n prototypeAccessors.is2D.get = function () {\n var m = this;\n return m.m31 === 0 && m.m32 === 0 && m.m33 === 1 && m.m34 === 0 && m.m43 === 0 && m.m44 === 1;\n };\n\n prototypeAccessors.is2D.set = function (value) {\n this.is2D = value;\n };\n\n Object.defineProperties(CSSMatrix.prototype, prototypeAccessors);\n var CSSMatrixProto = CSSMatrix.prototype;\n\n function Translate(x, y, z) {\n var m = new CSSMatrix();\n m.m41 = x;\n m.e = x;\n m.m42 = y;\n m.f = y;\n m.m43 = z;\n return m;\n }\n\n function Rotate(rx, ry, rz) {\n var m = new CSSMatrix();\n var radX = rx * Math.PI / 180;\n var radY = ry * Math.PI / 180;\n var radZ = rz * Math.PI / 180;\n var cosx = Math.cos(radX);\n var sinx = -Math.sin(radX);\n var cosy = Math.cos(radY);\n var siny = -Math.sin(radY);\n var cosz = Math.cos(radZ);\n var sinz = -Math.sin(radZ);\n var cycz = cosy * cosz;\n var cysz = -cosy * sinz;\n m.m11 = cycz;\n m.a = cycz;\n m.m12 = cysz;\n m.b = cysz;\n m.m13 = siny;\n var sxsy = sinx * siny * cosz + cosx * sinz;\n m.m21 = sxsy;\n m.c = sxsy;\n var cxcz = cosx * cosz - sinx * siny * sinz;\n m.m22 = cxcz;\n m.d = cxcz;\n m.m23 = -sinx * cosy;\n m.m31 = sinx * sinz - cosx * siny * cosz;\n m.m32 = sinx * cosz + cosx * siny * sinz;\n m.m33 = cosx * cosy;\n return m;\n }\n\n function RotateAxisAngle(x, y, z, angle) {\n var m = new CSSMatrix();\n var radA = angle * Math.PI / 360;\n var sinA = Math.sin(radA);\n var cosA = Math.cos(radA);\n var sinA2 = sinA * sinA;\n var length = Math.sqrt(x * x + y * y + z * z);\n var X = 0;\n var Y = 0;\n var Z = 1;\n\n if (length !== 0) {\n X = x / length;\n Y = y / length;\n Z = z / length;\n }\n\n var x2 = X * X;\n var y2 = Y * Y;\n var z2 = Z * Z;\n var m11 = 1 - 2 * (y2 + z2) * sinA2;\n m.m11 = m11;\n m.a = m11;\n var m12 = 2 * (x * y * sinA2 + z * sinA * cosA);\n m.m12 = m12;\n m.b = m12;\n m.m13 = 2 * (x * z * sinA2 - y * sinA * cosA);\n var m21 = 2 * (y * x * sinA2 - z * sinA * cosA);\n m.m21 = m21;\n m.c = m21;\n var m22 = 1 - 2 * (z2 + x2) * sinA2;\n m.m22 = m22;\n m.d = m22;\n m.m23 = 2 * (y * z * sinA2 + x * sinA * cosA);\n m.m31 = 2 * (z * x * sinA2 + y * sinA * cosA);\n m.m32 = 2 * (z * y * sinA2 - x * sinA * cosA);\n m.m33 = 1 - 2 * (x2 + y2) * sinA2;\n m.m14 = 0;\n m.m24 = 0;\n m.m34 = 0;\n m.m41 = 0;\n m.e = 0;\n m.m42 = 0;\n m.f = 0;\n m.m43 = 0;\n m.m44 = 1;\n return m;\n }\n\n function Scale(x, y, z) {\n var m = new CSSMatrix();\n m.m11 = x;\n m.a = x;\n m.m22 = y;\n m.d = y;\n m.m33 = z;\n return m;\n }\n\n function SkewX(angle) {\n var radA = angle * Math.PI / 180;\n var m = new CSSMatrix();\n var t = Math.tan(radA);\n m.m21 = t;\n m.c = t;\n return m;\n }\n\n function SkewY(angle) {\n var radA = angle * Math.PI / 180;\n var m = new CSSMatrix();\n var t = Math.tan(radA);\n m.m12 = t;\n m.b = t;\n return m;\n }\n\n function Multiply(m1, m2) {\n var m11 = m2.m11 * m1.m11 + m2.m12 * m1.m21 + m2.m13 * m1.m31 + m2.m14 * m1.m41;\n var m12 = m2.m11 * m1.m12 + m2.m12 * m1.m22 + m2.m13 * m1.m32 + m2.m14 * m1.m42;\n var m13 = m2.m11 * m1.m13 + m2.m12 * m1.m23 + m2.m13 * m1.m33 + m2.m14 * m1.m43;\n var m14 = m2.m11 * m1.m14 + m2.m12 * m1.m24 + m2.m13 * m1.m34 + m2.m14 * m1.m44;\n var m21 = m2.m21 * m1.m11 + m2.m22 * m1.m21 + m2.m23 * m1.m31 + m2.m24 * m1.m41;\n var m22 = m2.m21 * m1.m12 + m2.m22 * m1.m22 + m2.m23 * m1.m32 + m2.m24 * m1.m42;\n var m23 = m2.m21 * m1.m13 + m2.m22 * m1.m23 + m2.m23 * m1.m33 + m2.m24 * m1.m43;\n var m24 = m2.m21 * m1.m14 + m2.m22 * m1.m24 + m2.m23 * m1.m34 + m2.m24 * m1.m44;\n var m31 = m2.m31 * m1.m11 + m2.m32 * m1.m21 + m2.m33 * m1.m31 + m2.m34 * m1.m41;\n var m32 = m2.m31 * m1.m12 + m2.m32 * m1.m22 + m2.m33 * m1.m32 + m2.m34 * m1.m42;\n var m33 = m2.m31 * m1.m13 + m2.m32 * m1.m23 + m2.m33 * m1.m33 + m2.m34 * m1.m43;\n var m34 = m2.m31 * m1.m14 + m2.m32 * m1.m24 + m2.m33 * m1.m34 + m2.m34 * m1.m44;\n var m41 = m2.m41 * m1.m11 + m2.m42 * m1.m21 + m2.m43 * m1.m31 + m2.m44 * m1.m41;\n var m42 = m2.m41 * m1.m12 + m2.m42 * m1.m22 + m2.m43 * m1.m32 + m2.m44 * m1.m42;\n var m43 = m2.m41 * m1.m13 + m2.m42 * m1.m23 + m2.m43 * m1.m33 + m2.m44 * m1.m43;\n var m44 = m2.m41 * m1.m14 + m2.m42 * m1.m24 + m2.m43 * m1.m34 + m2.m44 * m1.m44;\n return new CSSMatrix([m11, m21, m31, m41, m12, m22, m32, m42, m13, m23, m33, m43, m14, m24, m34, m44]);\n }\n\n function fromMatrix(m) {\n return new CSSMatrix([m.m11, m.m21, m.m31, m.m41, m.m12, m.m22, m.m32, m.m42, m.m13, m.m23, m.m33, m.m43, m.m14, m.m24, m.m34, m.m44]);\n }\n\n function feedFromArray(m, array) {\n var a = Array.from(array);\n\n if (a.length === 16) {\n var m11 = a[0];\n var m21 = a[1];\n var m31 = a[2];\n var m41 = a[3];\n var m12 = a[4];\n var m22 = a[5];\n var m32 = a[6];\n var m42 = a[7];\n var m13 = a[8];\n var m23 = a[9];\n var m33 = a[10];\n var m43 = a[11];\n var m14 = a[12];\n var m24 = a[13];\n var m34 = a[14];\n var m44 = a[15];\n m.m11 = m11;\n m.a = m11;\n m.m21 = m21;\n m.c = m21;\n m.m31 = m31;\n m.m41 = m41;\n m.e = m41;\n m.m12 = m12;\n m.b = m12;\n m.m22 = m22;\n m.d = m22;\n m.m32 = m32;\n m.m42 = m42;\n m.f = m42;\n m.m13 = m13;\n m.m23 = m23;\n m.m33 = m33;\n m.m43 = m43;\n m.m14 = m14;\n m.m24 = m24;\n m.m34 = m34;\n m.m44 = m44;\n } else if (a.length === 6) {\n var m11$1 = a[0];\n var m12$1 = a[1];\n var m21$1 = a[2];\n var m22$1 = a[3];\n var m14$1 = a[4];\n var m24$1 = a[5];\n m.m11 = m11$1;\n m.a = m11$1;\n m.m12 = m12$1;\n m.b = m12$1;\n m.m21 = m21$1;\n m.c = m21$1;\n m.m22 = m22$1;\n m.d = m22$1;\n m.m14 = m14$1;\n m.e = m14$1;\n m.m24 = m24$1;\n m.f = m24$1;\n } else {\n throw new TypeError('CSSMatrix: expecting a 6/16 values Array');\n }\n\n return m;\n }\n\n function fromArray(a) {\n return feedFromArray(new CSSMatrix(), a);\n }\n\n CSSMatrixProto.setMatrixValue = function setMatrixValue(source) {\n var m = this;\n\n if (!source || !source.length) {\n return m;\n }\n\n if (source.length && typeof source[0] === 'string' && source[0].length) {\n var string = String(source[0]).trim();\n var type = '';\n var values = [];\n\n if (string === 'none') {\n return m;\n }\n\n type = string.slice(0, string.indexOf('('));\n values = string.slice(type === 'matrix' ? 7 : 9, -1).split(',').map(function (n) {\n return Math.abs(n) < 1e-6 ? 0 : +n;\n });\n\n if ([6, 16].indexOf(values.length) > -1) {\n feedFromArray(m, values);\n } else {\n throw new TypeError('CSSMatrix: expecting valid CSS matrix() / matrix3d() syntax');\n }\n } else if (source[0] instanceof CSSMatrix) {\n feedFromArray(m, source[0].toArray());\n } else if (Array.isArray(source[0])) {\n feedFromArray(m, source[0]);\n } else if (Array.isArray(source)) {\n feedFromArray(m, source);\n }\n\n return m;\n };\n\n CSSMatrixProto.toString = function toString() {\n var m = this;\n var type = m.is2D ? 'matrix' : 'matrix3d';\n return type + \"(\" + m.toArray(1).join(',') + \")\";\n };\n\n CSSMatrixProto.toArray = function toArray(transposed) {\n var m = this;\n var result;\n\n if (m.is2D) {\n result = [m.a, m.b, m.c, m.d, m.e, m.f];\n } else if (transposed) {\n result = [m.m11, m.m12, m.m13, m.m14, m.m21, m.m22, m.m23, m.m24, m.m31, m.m32, m.m33, m.m34, m.m41, m.m42, m.m43, m.m44];\n } else {\n result = [m.m11, m.m21, m.m31, m.m41, m.m12, m.m22, m.m32, m.m42, m.m13, m.m23, m.m33, m.m43, m.m14, m.m24, m.m34, m.m44];\n }\n\n return result;\n };\n\n CSSMatrixProto.multiply = function multiply(m2) {\n return Multiply(this, m2);\n };\n\n CSSMatrixProto.translate = function translate(x, y, z) {\n var X = x;\n var Y = y;\n var Z = z;\n\n if (Z == null) {\n Z = 0;\n }\n\n if (Y == null) {\n Y = 0;\n }\n\n return Multiply(this, Translate(X, Y, Z));\n };\n\n CSSMatrixProto.scale = function scale(x, y, z) {\n var X = x;\n var Y = y;\n var Z = z;\n\n if (Y == null) {\n Y = x;\n }\n\n if (Z == null) {\n Z = x;\n }\n\n return Multiply(this, Scale(X, Y, Z));\n };\n\n CSSMatrixProto.rotate = function rotate(rx, ry, rz) {\n var RX = rx;\n var RY = ry;\n var RZ = rz;\n\n if (RY == null) {\n RY = 0;\n }\n\n if (RZ == null) {\n RZ = RX;\n RX = 0;\n }\n\n return Multiply(this, Rotate(RX, RY, RZ));\n };\n\n CSSMatrixProto.rotateAxisAngle = function rotateAxisAngle(x, y, z, angle) {\n if (arguments.length !== 4) {\n throw new TypeError('CSSMatrix: expecting 4 values');\n }\n\n return Multiply(this, RotateAxisAngle(x, y, z, angle));\n };\n\n CSSMatrixProto.skewX = function skewX(angle) {\n return Multiply(this, SkewX(angle));\n };\n\n CSSMatrixProto.skewY = function skewY(angle) {\n return Multiply(this, SkewY(angle));\n };\n\n CSSMatrixProto.setIdentity = function setIdentity() {\n var identity = [1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1];\n return feedFromArray(this, identity);\n };\n\n CSSMatrixProto.transformPoint = function transformPoint(v) {\n var M = this;\n var m = Translate(v.x, v.y, v.z);\n m.m44 = v.w || 1;\n m = M.multiply(m);\n return {\n x: m.m41,\n y: m.m42,\n z: m.m43,\n w: m.m44\n };\n };\n\n CSSMatrixProto.transform = function transform(t) {\n var m = this;\n var x = m.m11 * t.x + m.m12 * t.y + m.m13 * t.z + m.m14 * t.w;\n var y = m.m21 * t.x + m.m22 * t.y + m.m23 * t.z + m.m24 * t.w;\n var z = m.m31 * t.x + m.m32 * t.y + m.m33 * t.z + m.m34 * t.w;\n var w = m.m41 * t.x + m.m42 * t.y + m.m43 * t.z + m.m44 * t.w;\n return {\n x: x / w,\n y: y / w,\n z: z / w,\n w: w\n };\n };\n\n CSSMatrix.Translate = Translate;\n CSSMatrix.Rotate = Rotate;\n CSSMatrix.RotateAxisAngle = RotateAxisAngle;\n CSSMatrix.Scale = Scale;\n CSSMatrix.SkewX = SkewX;\n CSSMatrix.SkewY = SkewY;\n CSSMatrix.Multiply = Multiply;\n CSSMatrix.fromMatrix = fromMatrix;\n CSSMatrix.fromArray = fromArray;\n CSSMatrix.feedFromArray = feedFromArray;\n return CSSMatrix;\n});\n\n/***/ }),\n/* 61 */\n/***/ ((module, __unused_webpack_exports, __w_pdfjs_require__) => {\n\n__w_pdfjs_require__(62);\n__w_pdfjs_require__(77);\nvar path = __w_pdfjs_require__(88);\nmodule.exports = path.Object.fromEntries;\n\n/***/ }),\n/* 62 */\n/***/ ((module, __unused_webpack_exports, __w_pdfjs_require__) => {\n\n\"use strict\";\n\nvar toIndexedObject = __w_pdfjs_require__(16);\nvar addToUnscopables = __w_pdfjs_require__(63);\nvar Iterators = __w_pdfjs_require__(68);\nvar InternalStateModule = __w_pdfjs_require__(45);\nvar defineIterator = __w_pdfjs_require__(69);\nvar ARRAY_ITERATOR = 'Array Iterator';\nvar setInternalState = InternalStateModule.set;\nvar getInternalState = InternalStateModule.getterFor(ARRAY_ITERATOR);\nmodule.exports = defineIterator(Array, 'Array', function (iterated, kind) {\n setInternalState(this, {\n type: ARRAY_ITERATOR,\n target: toIndexedObject(iterated),\n index: 0,\n kind: kind\n });\n}, function () {\n var state = getInternalState(this);\n var target = state.target;\n var kind = state.kind;\n var index = state.index++;\n if (!target || index >= target.length) {\n state.target = undefined;\n return {\n value: undefined,\n done: true\n };\n }\n if (kind == 'keys')\n return {\n value: index,\n done: false\n };\n if (kind == 'values')\n return {\n value: target[index],\n done: false\n };\n return {\n value: [\n index,\n target[index]\n ],\n done: false\n };\n}, 'values');\nIterators.Arguments = Iterators.Array;\naddToUnscopables('keys');\naddToUnscopables('values');\naddToUnscopables('entries');\n\n/***/ }),\n/* 63 */\n/***/ ((module, __unused_webpack_exports, __w_pdfjs_require__) => {\n\nvar wellKnownSymbol = __w_pdfjs_require__(30);\nvar create = __w_pdfjs_require__(64);\nvar definePropertyModule = __w_pdfjs_require__(41);\nvar UNSCOPABLES = wellKnownSymbol('unscopables');\nvar ArrayPrototype = Array.prototype;\nif (ArrayPrototype[UNSCOPABLES] == undefined) {\n definePropertyModule.f(ArrayPrototype, UNSCOPABLES, {\n configurable: true,\n value: create(null)\n });\n}\nmodule.exports = function (key) {\n ArrayPrototype[UNSCOPABLES][key] = true;\n};\n\n/***/ }),\n/* 64 */\n/***/ ((module, __unused_webpack_exports, __w_pdfjs_require__) => {\n\nvar anObject = __w_pdfjs_require__(42);\nvar defineProperties = __w_pdfjs_require__(65);\nvar enumBugKeys = __w_pdfjs_require__(57);\nvar hiddenKeys = __w_pdfjs_require__(48);\nvar html = __w_pdfjs_require__(67);\nvar documentCreateElement = __w_pdfjs_require__(39);\nvar sharedKey = __w_pdfjs_require__(47);\nvar GT = '>';\nvar LT = '<';\nvar PROTOTYPE = 'prototype';\nvar SCRIPT = 'script';\nvar IE_PROTO = sharedKey('IE_PROTO');\nvar EmptyConstructor = function () {\n};\nvar scriptTag = function (content) {\n return LT + SCRIPT + GT + content + LT + '/' + SCRIPT + GT;\n};\nvar NullProtoObjectViaActiveX = function (activeXDocument) {\n activeXDocument.write(scriptTag(''));\n activeXDocument.close();\n var temp = activeXDocument.parentWindow.Object;\n activeXDocument = null;\n return temp;\n};\nvar NullProtoObjectViaIFrame = function () {\n var iframe = documentCreateElement('iframe');\n var JS = 'java' + SCRIPT + ':';\n var iframeDocument;\n iframe.style.display = 'none';\n html.appendChild(iframe);\n iframe.src = String(JS);\n iframeDocument = iframe.contentWindow.document;\n iframeDocument.open();\n iframeDocument.write(scriptTag('document.F=Object'));\n iframeDocument.close();\n return iframeDocument.F;\n};\nvar activeXDocument;\nvar NullProtoObject = function () {\n try {\n activeXDocument = new ActiveXObject('htmlfile');\n } catch (error) {\n }\n NullProtoObject = typeof document != 'undefined' ? document.domain && activeXDocument ? NullProtoObjectViaActiveX(activeXDocument) : NullProtoObjectViaIFrame() : NullProtoObjectViaActiveX(activeXDocument);\n var length = enumBugKeys.length;\n while (length--)\n delete NullProtoObject[PROTOTYPE][enumBugKeys[length]];\n return NullProtoObject();\n};\nhiddenKeys[IE_PROTO] = true;\nmodule.exports = Object.create || function create(O, Properties) {\n var result;\n if (O !== null) {\n EmptyConstructor[PROTOTYPE] = anObject(O);\n result = new EmptyConstructor();\n EmptyConstructor[PROTOTYPE] = null;\n result[IE_PROTO] = O;\n } else\n result = NullProtoObject();\n return Properties === undefined ? result : defineProperties(result, Properties);\n};\n\n/***/ }),\n/* 65 */\n/***/ ((module, __unused_webpack_exports, __w_pdfjs_require__) => {\n\nvar DESCRIPTORS = __w_pdfjs_require__(12);\nvar definePropertyModule = __w_pdfjs_require__(41);\nvar anObject = __w_pdfjs_require__(42);\nvar objectKeys = __w_pdfjs_require__(66);\nmodule.exports = DESCRIPTORS ? Object.defineProperties : function defineProperties(O, Properties) {\n anObject(O);\n var keys = objectKeys(Properties);\n var length = keys.length;\n var index = 0;\n var key;\n while (length > index)\n definePropertyModule.f(O, key = keys[index++], Properties[key]);\n return O;\n};\n\n/***/ }),\n/* 66 */\n/***/ ((module, __unused_webpack_exports, __w_pdfjs_require__) => {\n\nvar internalObjectKeys = __w_pdfjs_require__(52);\nvar enumBugKeys = __w_pdfjs_require__(57);\nmodule.exports = Object.keys || function keys(O) {\n return internalObjectKeys(O, enumBugKeys);\n};\n\n/***/ }),\n/* 67 */\n/***/ ((module, __unused_webpack_exports, __w_pdfjs_require__) => {\n\nvar getBuiltIn = __w_pdfjs_require__(24);\nmodule.exports = getBuiltIn('document', 'documentElement');\n\n/***/ }),\n/* 68 */\n/***/ ((module) => {\n\nmodule.exports = {};\n\n/***/ }),\n/* 69 */\n/***/ ((module, __unused_webpack_exports, __w_pdfjs_require__) => {\n\n\"use strict\";\n\nvar $ = __w_pdfjs_require__(9);\nvar createIteratorConstructor = __w_pdfjs_require__(70);\nvar getPrototypeOf = __w_pdfjs_require__(72);\nvar setPrototypeOf = __w_pdfjs_require__(75);\nvar setToStringTag = __w_pdfjs_require__(74);\nvar createNonEnumerableProperty = __w_pdfjs_require__(40);\nvar redefine = __w_pdfjs_require__(43);\nvar wellKnownSymbol = __w_pdfjs_require__(30);\nvar IS_PURE = __w_pdfjs_require__(32);\nvar Iterators = __w_pdfjs_require__(68);\nvar IteratorsCore = __w_pdfjs_require__(71);\nvar IteratorPrototype = IteratorsCore.IteratorPrototype;\nvar BUGGY_SAFARI_ITERATORS = IteratorsCore.BUGGY_SAFARI_ITERATORS;\nvar ITERATOR = wellKnownSymbol('iterator');\nvar KEYS = 'keys';\nvar VALUES = 'values';\nvar ENTRIES = 'entries';\nvar returnThis = function () {\n return this;\n};\nmodule.exports = function (Iterable, NAME, IteratorConstructor, next, DEFAULT, IS_SET, FORCED) {\n createIteratorConstructor(IteratorConstructor, NAME, next);\n var getIterationMethod = function (KIND) {\n if (KIND === DEFAULT && defaultIterator)\n return defaultIterator;\n if (!BUGGY_SAFARI_ITERATORS && KIND in IterablePrototype)\n return IterablePrototype[KIND];\n switch (KIND) {\n case KEYS:\n return function keys() {\n return new IteratorConstructor(this, KIND);\n };\n case VALUES:\n return function values() {\n return new IteratorConstructor(this, KIND);\n };\n case ENTRIES:\n return function entries() {\n return new IteratorConstructor(this, KIND);\n };\n }\n return function () {\n return new IteratorConstructor(this);\n };\n };\n var TO_STRING_TAG = NAME + ' Iterator';\n var INCORRECT_VALUES_NAME = false;\n var IterablePrototype = Iterable.prototype;\n var nativeIterator = IterablePrototype[ITERATOR] || IterablePrototype['@@iterator'] || DEFAULT && IterablePrototype[DEFAULT];\n var defaultIterator = !BUGGY_SAFARI_ITERATORS && nativeIterator || getIterationMethod(DEFAULT);\n var anyNativeIterator = NAME == 'Array' ? IterablePrototype.entries || nativeIterator : nativeIterator;\n var CurrentIteratorPrototype, methods, KEY;\n if (anyNativeIterator) {\n CurrentIteratorPrototype = getPrototypeOf(anyNativeIterator.call(new Iterable()));\n if (CurrentIteratorPrototype !== Object.prototype && CurrentIteratorPrototype.next) {\n if (!IS_PURE && getPrototypeOf(CurrentIteratorPrototype) !== IteratorPrototype) {\n if (setPrototypeOf) {\n setPrototypeOf(CurrentIteratorPrototype, IteratorPrototype);\n } else if (typeof CurrentIteratorPrototype[ITERATOR] != 'function') {\n createNonEnumerableProperty(CurrentIteratorPrototype, ITERATOR, returnThis);\n }\n }\n setToStringTag(CurrentIteratorPrototype, TO_STRING_TAG, true, true);\n if (IS_PURE)\n Iterators[TO_STRING_TAG] = returnThis;\n }\n }\n if (DEFAULT == VALUES && nativeIterator && nativeIterator.name !== VALUES) {\n INCORRECT_VALUES_NAME = true;\n defaultIterator = function values() {\n return nativeIterator.call(this);\n };\n }\n if ((!IS_PURE || FORCED) && IterablePrototype[ITERATOR] !== defaultIterator) {\n createNonEnumerableProperty(IterablePrototype, ITERATOR, defaultIterator);\n }\n Iterators[NAME] = defaultIterator;\n if (DEFAULT) {\n methods = {\n values: getIterationMethod(VALUES),\n keys: IS_SET ? defaultIterator : getIterationMethod(KEYS),\n entries: getIterationMethod(ENTRIES)\n };\n if (FORCED)\n for (KEY in methods) {\n if (BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME || !(KEY in IterablePrototype)) {\n redefine(IterablePrototype, KEY, methods[KEY]);\n }\n }\n else\n $({\n target: NAME,\n proto: true,\n forced: BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME\n }, methods);\n }\n return methods;\n};\n\n/***/ }),\n/* 70 */\n/***/ ((module, __unused_webpack_exports, __w_pdfjs_require__) => {\n\n\"use strict\";\n\nvar IteratorPrototype = __w_pdfjs_require__(71).IteratorPrototype;\nvar create = __w_pdfjs_require__(64);\nvar createPropertyDescriptor = __w_pdfjs_require__(15);\nvar setToStringTag = __w_pdfjs_require__(74);\nvar Iterators = __w_pdfjs_require__(68);\nvar returnThis = function () {\n return this;\n};\nmodule.exports = function (IteratorConstructor, NAME, next) {\n var TO_STRING_TAG = NAME + ' Iterator';\n IteratorConstructor.prototype = create(IteratorPrototype, { next: createPropertyDescriptor(1, next) });\n setToStringTag(IteratorConstructor, TO_STRING_TAG, false, true);\n Iterators[TO_STRING_TAG] = returnThis;\n return IteratorConstructor;\n};\n\n/***/ }),\n/* 71 */\n/***/ ((module, __unused_webpack_exports, __w_pdfjs_require__) => {\n\n\"use strict\";\n\nvar fails = __w_pdfjs_require__(13);\nvar create = __w_pdfjs_require__(64);\nvar getPrototypeOf = __w_pdfjs_require__(72);\nvar createNonEnumerableProperty = __w_pdfjs_require__(40);\nvar wellKnownSymbol = __w_pdfjs_require__(30);\nvar IS_PURE = __w_pdfjs_require__(32);\nvar ITERATOR = wellKnownSymbol('iterator');\nvar BUGGY_SAFARI_ITERATORS = false;\nvar IteratorPrototype, PrototypeOfArrayIteratorPrototype, arrayIterator;\nif ([].keys) {\n arrayIterator = [].keys();\n if (!('next' in arrayIterator))\n BUGGY_SAFARI_ITERATORS = true;\n else {\n PrototypeOfArrayIteratorPrototype = getPrototypeOf(getPrototypeOf(arrayIterator));\n if (PrototypeOfArrayIteratorPrototype !== Object.prototype)\n IteratorPrototype = PrototypeOfArrayIteratorPrototype;\n }\n}\nvar NEW_ITERATOR_PROTOTYPE = IteratorPrototype == undefined || fails(function () {\n var test = {};\n return IteratorPrototype[ITERATOR].call(test) !== test;\n});\nif (NEW_ITERATOR_PROTOTYPE)\n IteratorPrototype = {};\nelse if (IS_PURE)\n IteratorPrototype = create(IteratorPrototype);\nif (typeof IteratorPrototype[ITERATOR] !== 'function') {\n createNonEnumerableProperty(IteratorPrototype, ITERATOR, function () {\n return this;\n });\n}\nmodule.exports = {\n IteratorPrototype: IteratorPrototype,\n BUGGY_SAFARI_ITERATORS: BUGGY_SAFARI_ITERATORS\n};\n\n/***/ }),\n/* 72 */\n/***/ ((module, __unused_webpack_exports, __w_pdfjs_require__) => {\n\nvar has = __w_pdfjs_require__(35);\nvar toObject = __w_pdfjs_require__(36);\nvar sharedKey = __w_pdfjs_require__(47);\nvar CORRECT_PROTOTYPE_GETTER = __w_pdfjs_require__(73);\nvar IE_PROTO = sharedKey('IE_PROTO');\nvar ObjectPrototype = Object.prototype;\nmodule.exports = CORRECT_PROTOTYPE_GETTER ? Object.getPrototypeOf : function (O) {\n O = toObject(O);\n if (has(O, IE_PROTO))\n return O[IE_PROTO];\n if (typeof O.constructor == 'function' && O instanceof O.constructor) {\n return O.constructor.prototype;\n }\n return O instanceof Object ? ObjectPrototype : null;\n};\n\n/***/ }),\n/* 73 */\n/***/ ((module, __unused_webpack_exports, __w_pdfjs_require__) => {\n\nvar fails = __w_pdfjs_require__(13);\nmodule.exports = !fails(function () {\n function F() {\n }\n F.prototype.constructor = null;\n return Object.getPrototypeOf(new F()) !== F.prototype;\n});\n\n/***/ }),\n/* 74 */\n/***/ ((module, __unused_webpack_exports, __w_pdfjs_require__) => {\n\nvar defineProperty = __w_pdfjs_require__(41).f;\nvar has = __w_pdfjs_require__(35);\nvar wellKnownSymbol = __w_pdfjs_require__(30);\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nmodule.exports = function (it, TAG, STATIC) {\n if (it && !has(it = STATIC ? it : it.prototype, TO_STRING_TAG)) {\n defineProperty(it, TO_STRING_TAG, {\n configurable: true,\n value: TAG\n });\n }\n};\n\n/***/ }),\n/* 75 */\n/***/ ((module, __unused_webpack_exports, __w_pdfjs_require__) => {\n\nvar anObject = __w_pdfjs_require__(42);\nvar aPossiblePrototype = __w_pdfjs_require__(76);\nmodule.exports = Object.setPrototypeOf || ('__proto__' in {} ? function () {\n var CORRECT_SETTER = false;\n var test = {};\n var setter;\n try {\n setter = Object.getOwnPropertyDescriptor(Object.prototype, '__proto__').set;\n setter.call(test, []);\n CORRECT_SETTER = test instanceof Array;\n } catch (error) {\n }\n return function setPrototypeOf(O, proto) {\n anObject(O);\n aPossiblePrototype(proto);\n if (CORRECT_SETTER)\n setter.call(O, proto);\n else\n O.__proto__ = proto;\n return O;\n };\n}() : undefined);\n\n/***/ }),\n/* 76 */\n/***/ ((module, __unused_webpack_exports, __w_pdfjs_require__) => {\n\nvar isObject = __w_pdfjs_require__(22);\nmodule.exports = function (it) {\n if (!isObject(it) && it !== null) {\n throw TypeError(\"Can't set \" + String(it) + ' as a prototype');\n }\n return it;\n};\n\n/***/ }),\n/* 77 */\n/***/ ((__unused_webpack_module, __unused_webpack_exports, __w_pdfjs_require__) => {\n\nvar $ = __w_pdfjs_require__(9);\nvar iterate = __w_pdfjs_require__(78);\nvar createProperty = __w_pdfjs_require__(87);\n$({\n target: 'Object',\n stat: true\n}, {\n fromEntries: function fromEntries(iterable) {\n var obj = {};\n iterate(iterable, function (k, v) {\n createProperty(obj, k, v);\n }, { AS_ENTRIES: true });\n return obj;\n }\n});\n\n/***/ }),\n/* 78 */\n/***/ ((module, __unused_webpack_exports, __w_pdfjs_require__) => {\n\nvar anObject = __w_pdfjs_require__(42);\nvar isArrayIteratorMethod = __w_pdfjs_require__(79);\nvar toLength = __w_pdfjs_require__(54);\nvar bind = __w_pdfjs_require__(80);\nvar getIterator = __w_pdfjs_require__(82);\nvar getIteratorMethod = __w_pdfjs_require__(83);\nvar iteratorClose = __w_pdfjs_require__(86);\nvar Result = function (stopped, result) {\n this.stopped = stopped;\n this.result = result;\n};\nmodule.exports = function (iterable, unboundFunction, options) {\n var that = options && options.that;\n var AS_ENTRIES = !!(options && options.AS_ENTRIES);\n var IS_ITERATOR = !!(options && options.IS_ITERATOR);\n var INTERRUPTED = !!(options && options.INTERRUPTED);\n var fn = bind(unboundFunction, that, 1 + AS_ENTRIES + INTERRUPTED);\n var iterator, iterFn, index, length, result, next, step;\n var stop = function (condition) {\n if (iterator)\n iteratorClose(iterator, 'normal', condition);\n return new Result(true, condition);\n };\n var callFn = function (value) {\n if (AS_ENTRIES) {\n anObject(value);\n return INTERRUPTED ? fn(value[0], value[1], stop) : fn(value[0], value[1]);\n }\n return INTERRUPTED ? fn(value, stop) : fn(value);\n };\n if (IS_ITERATOR) {\n iterator = iterable;\n } else {\n iterFn = getIteratorMethod(iterable);\n if (typeof iterFn != 'function')\n throw TypeError('Target is not iterable');\n if (isArrayIteratorMethod(iterFn)) {\n for (index = 0, length = toLength(iterable.length); length > index; index++) {\n result = callFn(iterable[index]);\n if (result && result instanceof Result)\n return result;\n }\n return new Result(false);\n }\n iterator = getIterator(iterable, iterFn);\n }\n next = iterator.next;\n while (!(step = next.call(iterator)).done) {\n try {\n result = callFn(step.value);\n } catch (error) {\n iteratorClose(iterator, 'throw', error);\n }\n if (typeof result == 'object' && result && result instanceof Result)\n return result;\n }\n return new Result(false);\n};\n\n/***/ }),\n/* 79 */\n/***/ ((module, __unused_webpack_exports, __w_pdfjs_require__) => {\n\nvar wellKnownSymbol = __w_pdfjs_require__(30);\nvar Iterators = __w_pdfjs_require__(68);\nvar ITERATOR = wellKnownSymbol('iterator');\nvar ArrayPrototype = Array.prototype;\nmodule.exports = function (it) {\n return it !== undefined && (Iterators.Array === it || ArrayPrototype[ITERATOR] === it);\n};\n\n/***/ }),\n/* 80 */\n/***/ ((module, __unused_webpack_exports, __w_pdfjs_require__) => {\n\nvar aFunction = __w_pdfjs_require__(81);\nmodule.exports = function (fn, that, length) {\n aFunction(fn);\n if (that === undefined)\n return fn;\n switch (length) {\n case 0:\n return function () {\n return fn.call(that);\n };\n case 1:\n return function (a) {\n return fn.call(that, a);\n };\n case 2:\n return function (a, b) {\n return fn.call(that, a, b);\n };\n case 3:\n return function (a, b, c) {\n return fn.call(that, a, b, c);\n };\n }\n return function () {\n return fn.apply(that, arguments);\n };\n};\n\n/***/ }),\n/* 81 */\n/***/ ((module) => {\n\nmodule.exports = function (it) {\n if (typeof it != 'function') {\n throw TypeError(String(it) + ' is not a function');\n }\n return it;\n};\n\n/***/ }),\n/* 82 */\n/***/ ((module, __unused_webpack_exports, __w_pdfjs_require__) => {\n\nvar anObject = __w_pdfjs_require__(42);\nvar getIteratorMethod = __w_pdfjs_require__(83);\nmodule.exports = function (it, usingIterator) {\n var iteratorMethod = arguments.length < 2 ? getIteratorMethod(it) : usingIterator;\n if (typeof iteratorMethod != 'function') {\n throw TypeError(String(it) + ' is not iterable');\n }\n return anObject(iteratorMethod.call(it));\n};\n\n/***/ }),\n/* 83 */\n/***/ ((module, __unused_webpack_exports, __w_pdfjs_require__) => {\n\nvar classof = __w_pdfjs_require__(84);\nvar Iterators = __w_pdfjs_require__(68);\nvar wellKnownSymbol = __w_pdfjs_require__(30);\nvar ITERATOR = wellKnownSymbol('iterator');\nmodule.exports = function (it) {\n if (it != undefined)\n return it[ITERATOR] || it['@@iterator'] || Iterators[classof(it)];\n};\n\n/***/ }),\n/* 84 */\n/***/ ((module, __unused_webpack_exports, __w_pdfjs_require__) => {\n\nvar TO_STRING_TAG_SUPPORT = __w_pdfjs_require__(85);\nvar classofRaw = __w_pdfjs_require__(18);\nvar wellKnownSymbol = __w_pdfjs_require__(30);\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nvar CORRECT_ARGUMENTS = classofRaw(function () {\n return arguments;\n}()) == 'Arguments';\nvar tryGet = function (it, key) {\n try {\n return it[key];\n } catch (error) {\n }\n};\nmodule.exports = TO_STRING_TAG_SUPPORT ? classofRaw : function (it) {\n var O, tag, result;\n return it === undefined ? 'Undefined' : it === null ? 'Null' : typeof (tag = tryGet(O = Object(it), TO_STRING_TAG)) == 'string' ? tag : CORRECT_ARGUMENTS ? classofRaw(O) : (result = classofRaw(O)) == 'Object' && typeof O.callee == 'function' ? 'Arguments' : result;\n};\n\n/***/ }),\n/* 85 */\n/***/ ((module, __unused_webpack_exports, __w_pdfjs_require__) => {\n\nvar wellKnownSymbol = __w_pdfjs_require__(30);\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nvar test = {};\ntest[TO_STRING_TAG] = 'z';\nmodule.exports = String(test) === '[object z]';\n\n/***/ }),\n/* 86 */\n/***/ ((module, __unused_webpack_exports, __w_pdfjs_require__) => {\n\nvar anObject = __w_pdfjs_require__(42);\nmodule.exports = function (iterator, kind, value) {\n var innerResult, innerError;\n anObject(iterator);\n try {\n innerResult = iterator['return'];\n if (innerResult === undefined) {\n if (kind === 'throw')\n throw value;\n return value;\n }\n innerResult = innerResult.call(iterator);\n } catch (error) {\n innerError = true;\n innerResult = error;\n }\n if (kind === 'throw')\n throw value;\n if (innerError)\n throw innerResult;\n anObject(innerResult);\n return value;\n};\n\n/***/ }),\n/* 87 */\n/***/ ((module, __unused_webpack_exports, __w_pdfjs_require__) => {\n\n\"use strict\";\n\nvar toPropertyKey = __w_pdfjs_require__(20);\nvar definePropertyModule = __w_pdfjs_require__(41);\nvar createPropertyDescriptor = __w_pdfjs_require__(15);\nmodule.exports = function (object, key, value) {\n var propertyKey = toPropertyKey(key);\n if (propertyKey in object)\n definePropertyModule.f(object, propertyKey, createPropertyDescriptor(0, value));\n else\n object[propertyKey] = value;\n};\n\n/***/ }),\n/* 88 */\n/***/ ((module, __unused_webpack_exports, __w_pdfjs_require__) => {\n\nvar global = __w_pdfjs_require__(10);\nmodule.exports = global;\n\n/***/ }),\n/* 89 */\n/***/ ((module, __unused_webpack_exports, __w_pdfjs_require__) => {\n\n__w_pdfjs_require__(90);\n__w_pdfjs_require__(62);\n__w_pdfjs_require__(92);\n__w_pdfjs_require__(94);\n__w_pdfjs_require__(112);\n__w_pdfjs_require__(113);\n__w_pdfjs_require__(114);\n__w_pdfjs_require__(115);\nvar path = __w_pdfjs_require__(88);\nmodule.exports = path.Promise;\n\n/***/ }),\n/* 90 */\n/***/ ((__unused_webpack_module, __unused_webpack_exports, __w_pdfjs_require__) => {\n\n\"use strict\";\n\nvar $ = __w_pdfjs_require__(9);\nvar getPrototypeOf = __w_pdfjs_require__(72);\nvar setPrototypeOf = __w_pdfjs_require__(75);\nvar create = __w_pdfjs_require__(64);\nvar createNonEnumerableProperty = __w_pdfjs_require__(40);\nvar createPropertyDescriptor = __w_pdfjs_require__(15);\nvar iterate = __w_pdfjs_require__(78);\nvar toString = __w_pdfjs_require__(91);\nvar $AggregateError = function AggregateError(errors, message) {\n var that = this;\n if (!(that instanceof $AggregateError))\n return new $AggregateError(errors, message);\n if (setPrototypeOf) {\n that = setPrototypeOf(new Error(undefined), getPrototypeOf(that));\n }\n if (message !== undefined)\n createNonEnumerableProperty(that, 'message', toString(message));\n var errorsArray = [];\n iterate(errors, errorsArray.push, { that: errorsArray });\n createNonEnumerableProperty(that, 'errors', errorsArray);\n return that;\n};\n$AggregateError.prototype = create(Error.prototype, {\n constructor: createPropertyDescriptor(5, $AggregateError),\n message: createPropertyDescriptor(5, ''),\n name: createPropertyDescriptor(5, 'AggregateError')\n});\n$({ global: true }, { AggregateError: $AggregateError });\n\n/***/ }),\n/* 91 */\n/***/ ((module, __unused_webpack_exports, __w_pdfjs_require__) => {\n\nvar isSymbol = __w_pdfjs_require__(23);\nmodule.exports = function (argument) {\n if (isSymbol(argument))\n throw TypeError('Cannot convert a Symbol value to a string');\n return String(argument);\n};\n\n/***/ }),\n/* 92 */\n/***/ ((__unused_webpack_module, __unused_webpack_exports, __w_pdfjs_require__) => {\n\nvar TO_STRING_TAG_SUPPORT = __w_pdfjs_require__(85);\nvar redefine = __w_pdfjs_require__(43);\nvar toString = __w_pdfjs_require__(93);\nif (!TO_STRING_TAG_SUPPORT) {\n redefine(Object.prototype, 'toString', toString, { unsafe: true });\n}\n\n/***/ }),\n/* 93 */\n/***/ ((module, __unused_webpack_exports, __w_pdfjs_require__) => {\n\n\"use strict\";\n\nvar TO_STRING_TAG_SUPPORT = __w_pdfjs_require__(85);\nvar classof = __w_pdfjs_require__(84);\nmodule.exports = TO_STRING_TAG_SUPPORT ? {}.toString : function toString() {\n return '[object ' + classof(this) + ']';\n};\n\n/***/ }),\n/* 94 */\n/***/ ((__unused_webpack_module, __unused_webpack_exports, __w_pdfjs_require__) => {\n\n\"use strict\";\n\nvar $ = __w_pdfjs_require__(9);\nvar IS_PURE = __w_pdfjs_require__(32);\nvar global = __w_pdfjs_require__(10);\nvar getBuiltIn = __w_pdfjs_require__(24);\nvar NativePromise = __w_pdfjs_require__(95);\nvar redefine = __w_pdfjs_require__(43);\nvar redefineAll = __w_pdfjs_require__(96);\nvar setPrototypeOf = __w_pdfjs_require__(75);\nvar setToStringTag = __w_pdfjs_require__(74);\nvar setSpecies = __w_pdfjs_require__(97);\nvar isObject = __w_pdfjs_require__(22);\nvar aFunction = __w_pdfjs_require__(81);\nvar anInstance = __w_pdfjs_require__(98);\nvar inspectSource = __w_pdfjs_require__(44);\nvar iterate = __w_pdfjs_require__(78);\nvar checkCorrectnessOfIteration = __w_pdfjs_require__(99);\nvar speciesConstructor = __w_pdfjs_require__(100);\nvar task = __w_pdfjs_require__(101).set;\nvar microtask = __w_pdfjs_require__(104);\nvar promiseResolve = __w_pdfjs_require__(107);\nvar hostReportErrors = __w_pdfjs_require__(109);\nvar newPromiseCapabilityModule = __w_pdfjs_require__(108);\nvar perform = __w_pdfjs_require__(110);\nvar InternalStateModule = __w_pdfjs_require__(45);\nvar isForced = __w_pdfjs_require__(59);\nvar wellKnownSymbol = __w_pdfjs_require__(30);\nvar IS_BROWSER = __w_pdfjs_require__(111);\nvar IS_NODE = __w_pdfjs_require__(103);\nvar V8_VERSION = __w_pdfjs_require__(27);\nvar SPECIES = wellKnownSymbol('species');\nvar PROMISE = 'Promise';\nvar getInternalState = InternalStateModule.get;\nvar setInternalState = InternalStateModule.set;\nvar getInternalPromiseState = InternalStateModule.getterFor(PROMISE);\nvar NativePromisePrototype = NativePromise && NativePromise.prototype;\nvar PromiseConstructor = NativePromise;\nvar PromiseConstructorPrototype = NativePromisePrototype;\nvar TypeError = global.TypeError;\nvar document = global.document;\nvar process = global.process;\nvar newPromiseCapability = newPromiseCapabilityModule.f;\nvar newGenericPromiseCapability = newPromiseCapability;\nvar DISPATCH_EVENT = !!(document && document.createEvent && global.dispatchEvent);\nvar NATIVE_REJECTION_EVENT = typeof PromiseRejectionEvent == 'function';\nvar UNHANDLED_REJECTION = 'unhandledrejection';\nvar REJECTION_HANDLED = 'rejectionhandled';\nvar PENDING = 0;\nvar FULFILLED = 1;\nvar REJECTED = 2;\nvar HANDLED = 1;\nvar UNHANDLED = 2;\nvar SUBCLASSING = false;\nvar Internal, OwnPromiseCapability, PromiseWrapper, nativeThen;\nvar FORCED = isForced(PROMISE, function () {\n var PROMISE_CONSTRUCTOR_SOURCE = inspectSource(PromiseConstructor);\n var GLOBAL_CORE_JS_PROMISE = PROMISE_CONSTRUCTOR_SOURCE !== String(PromiseConstructor);\n if (!GLOBAL_CORE_JS_PROMISE && V8_VERSION === 66)\n return true;\n if (IS_PURE && !PromiseConstructorPrototype['finally'])\n return true;\n if (V8_VERSION >= 51 && /native code/.test(PROMISE_CONSTRUCTOR_SOURCE))\n return false;\n var promise = new PromiseConstructor(function (resolve) {\n resolve(1);\n });\n var FakePromise = function (exec) {\n exec(function () {\n }, function () {\n });\n };\n var constructor = promise.constructor = {};\n constructor[SPECIES] = FakePromise;\n SUBCLASSING = promise.then(function () {\n }) instanceof FakePromise;\n if (!SUBCLASSING)\n return true;\n return !GLOBAL_CORE_JS_PROMISE && IS_BROWSER && !NATIVE_REJECTION_EVENT;\n});\nvar INCORRECT_ITERATION = FORCED || !checkCorrectnessOfIteration(function (iterable) {\n PromiseConstructor.all(iterable)['catch'](function () {\n });\n});\nvar isThenable = function (it) {\n var then;\n return isObject(it) && typeof (then = it.then) == 'function' ? then : false;\n};\nvar notify = function (state, isReject) {\n if (state.notified)\n return;\n state.notified = true;\n var chain = state.reactions;\n microtask(function () {\n var value = state.value;\n var ok = state.state == FULFILLED;\n var index = 0;\n while (chain.length > index) {\n var reaction = chain[index++];\n var handler = ok ? reaction.ok : reaction.fail;\n var resolve = reaction.resolve;\n var reject = reaction.reject;\n var domain = reaction.domain;\n var result, then, exited;\n try {\n if (handler) {\n if (!ok) {\n if (state.rejection === UNHANDLED)\n onHandleUnhandled(state);\n state.rejection = HANDLED;\n }\n if (handler === true)\n result = value;\n else {\n if (domain)\n domain.enter();\n result = handler(value);\n if (domain) {\n domain.exit();\n exited = true;\n }\n }\n if (result === reaction.promise) {\n reject(TypeError('Promise-chain cycle'));\n } else if (then = isThenable(result)) {\n then.call(result, resolve, reject);\n } else\n resolve(result);\n } else\n reject(value);\n } catch (error) {\n if (domain && !exited)\n domain.exit();\n reject(error);\n }\n }\n state.reactions = [];\n state.notified = false;\n if (isReject && !state.rejection)\n onUnhandled(state);\n });\n};\nvar dispatchEvent = function (name, promise, reason) {\n var event, handler;\n if (DISPATCH_EVENT) {\n event = document.createEvent('Event');\n event.promise = promise;\n event.reason = reason;\n event.initEvent(name, false, true);\n global.dispatchEvent(event);\n } else\n event = {\n promise: promise,\n reason: reason\n };\n if (!NATIVE_REJECTION_EVENT && (handler = global['on' + name]))\n handler(event);\n else if (name === UNHANDLED_REJECTION)\n hostReportErrors('Unhandled promise rejection', reason);\n};\nvar onUnhandled = function (state) {\n task.call(global, function () {\n var promise = state.facade;\n var value = state.value;\n var IS_UNHANDLED = isUnhandled(state);\n var result;\n if (IS_UNHANDLED) {\n result = perform(function () {\n if (IS_NODE) {\n process.emit('unhandledRejection', value, promise);\n } else\n dispatchEvent(UNHANDLED_REJECTION, promise, value);\n });\n state.rejection = IS_NODE || isUnhandled(state) ? UNHANDLED : HANDLED;\n if (result.error)\n throw result.value;\n }\n });\n};\nvar isUnhandled = function (state) {\n return state.rejection !== HANDLED && !state.parent;\n};\nvar onHandleUnhandled = function (state) {\n task.call(global, function () {\n var promise = state.facade;\n if (IS_NODE) {\n process.emit('rejectionHandled', promise);\n } else\n dispatchEvent(REJECTION_HANDLED, promise, state.value);\n });\n};\nvar bind = function (fn, state, unwrap) {\n return function (value) {\n fn(state, value, unwrap);\n };\n};\nvar internalReject = function (state, value, unwrap) {\n if (state.done)\n return;\n state.done = true;\n if (unwrap)\n state = unwrap;\n state.value = value;\n state.state = REJECTED;\n notify(state, true);\n};\nvar internalResolve = function (state, value, unwrap) {\n if (state.done)\n return;\n state.done = true;\n if (unwrap)\n state = unwrap;\n try {\n if (state.facade === value)\n throw TypeError(\"Promise can't be resolved itself\");\n var then = isThenable(value);\n if (then) {\n microtask(function () {\n var wrapper = { done: false };\n try {\n then.call(value, bind(internalResolve, wrapper, state), bind(internalReject, wrapper, state));\n } catch (error) {\n internalReject(wrapper, error, state);\n }\n });\n } else {\n state.value = value;\n state.state = FULFILLED;\n notify(state, false);\n }\n } catch (error) {\n internalReject({ done: false }, error, state);\n }\n};\nif (FORCED) {\n PromiseConstructor = function Promise(executor) {\n anInstance(this, PromiseConstructor, PROMISE);\n aFunction(executor);\n Internal.call(this);\n var state = getInternalState(this);\n try {\n executor(bind(internalResolve, state), bind(internalReject, state));\n } catch (error) {\n internalReject(state, error);\n }\n };\n PromiseConstructorPrototype = PromiseConstructor.prototype;\n Internal = function Promise(executor) {\n setInternalState(this, {\n type: PROMISE,\n done: false,\n notified: false,\n parent: false,\n reactions: [],\n rejection: false,\n state: PENDING,\n value: undefined\n });\n };\n Internal.prototype = redefineAll(PromiseConstructorPrototype, {\n then: function then(onFulfilled, onRejected) {\n var state = getInternalPromiseState(this);\n var reaction = newPromiseCapability(speciesConstructor(this, PromiseConstructor));\n reaction.ok = typeof onFulfilled == 'function' ? onFulfilled : true;\n reaction.fail = typeof onRejected == 'function' && onRejected;\n reaction.domain = IS_NODE ? process.domain : undefined;\n state.parent = true;\n state.reactions.push(reaction);\n if (state.state != PENDING)\n notify(state, false);\n return reaction.promise;\n },\n 'catch': function (onRejected) {\n return this.then(undefined, onRejected);\n }\n });\n OwnPromiseCapability = function () {\n var promise = new Internal();\n var state = getInternalState(promise);\n this.promise = promise;\n this.resolve = bind(internalResolve, state);\n this.reject = bind(internalReject, state);\n };\n newPromiseCapabilityModule.f = newPromiseCapability = function (C) {\n return C === PromiseConstructor || C === PromiseWrapper ? new OwnPromiseCapability(C) : newGenericPromiseCapability(C);\n };\n if (!IS_PURE && typeof NativePromise == 'function' && NativePromisePrototype !== Object.prototype) {\n nativeThen = NativePromisePrototype.then;\n if (!SUBCLASSING) {\n redefine(NativePromisePrototype, 'then', function then(onFulfilled, onRejected) {\n var that = this;\n return new PromiseConstructor(function (resolve, reject) {\n nativeThen.call(that, resolve, reject);\n }).then(onFulfilled, onRejected);\n }, { unsafe: true });\n redefine(NativePromisePrototype, 'catch', PromiseConstructorPrototype['catch'], { unsafe: true });\n }\n try {\n delete NativePromisePrototype.constructor;\n } catch (error) {\n }\n if (setPrototypeOf) {\n setPrototypeOf(NativePromisePrototype, PromiseConstructorPrototype);\n }\n }\n}\n$({\n global: true,\n wrap: true,\n forced: FORCED\n}, { Promise: PromiseConstructor });\nsetToStringTag(PromiseConstructor, PROMISE, false, true);\nsetSpecies(PROMISE);\nPromiseWrapper = getBuiltIn(PROMISE);\n$({\n target: PROMISE,\n stat: true,\n forced: FORCED\n}, {\n reject: function reject(r) {\n var capability = newPromiseCapability(this);\n capability.reject.call(undefined, r);\n return capability.promise;\n }\n});\n$({\n target: PROMISE,\n stat: true,\n forced: IS_PURE || FORCED\n}, {\n resolve: function resolve(x) {\n return promiseResolve(IS_PURE && this === PromiseWrapper ? PromiseConstructor : this, x);\n }\n});\n$({\n target: PROMISE,\n stat: true,\n forced: INCORRECT_ITERATION\n}, {\n all: function all(iterable) {\n var C = this;\n var capability = newPromiseCapability(C);\n var resolve = capability.resolve;\n var reject = capability.reject;\n var result = perform(function () {\n var $promiseResolve = aFunction(C.resolve);\n var values = [];\n var counter = 0;\n var remaining = 1;\n iterate(iterable, function (promise) {\n var index = counter++;\n var alreadyCalled = false;\n values.push(undefined);\n remaining++;\n $promiseResolve.call(C, promise).then(function (value) {\n if (alreadyCalled)\n return;\n alreadyCalled = true;\n values[index] = value;\n --remaining || resolve(values);\n }, reject);\n });\n --remaining || resolve(values);\n });\n if (result.error)\n reject(result.value);\n return capability.promise;\n },\n race: function race(iterable) {\n var C = this;\n var capability = newPromiseCapability(C);\n var reject = capability.reject;\n var result = perform(function () {\n var $promiseResolve = aFunction(C.resolve);\n iterate(iterable, function (promise) {\n $promiseResolve.call(C, promise).then(capability.resolve, reject);\n });\n });\n if (result.error)\n reject(result.value);\n return capability.promise;\n }\n});\n\n/***/ }),\n/* 95 */\n/***/ ((module, __unused_webpack_exports, __w_pdfjs_require__) => {\n\nvar global = __w_pdfjs_require__(10);\nmodule.exports = global.Promise;\n\n/***/ }),\n/* 96 */\n/***/ ((module, __unused_webpack_exports, __w_pdfjs_require__) => {\n\nvar redefine = __w_pdfjs_require__(43);\nmodule.exports = function (target, src, options) {\n for (var key in src)\n redefine(target, key, src[key], options);\n return target;\n};\n\n/***/ }),\n/* 97 */\n/***/ ((module, __unused_webpack_exports, __w_pdfjs_require__) => {\n\n\"use strict\";\n\nvar getBuiltIn = __w_pdfjs_require__(24);\nvar definePropertyModule = __w_pdfjs_require__(41);\nvar wellKnownSymbol = __w_pdfjs_require__(30);\nvar DESCRIPTORS = __w_pdfjs_require__(12);\nvar SPECIES = wellKnownSymbol('species');\nmodule.exports = function (CONSTRUCTOR_NAME) {\n var Constructor = getBuiltIn(CONSTRUCTOR_NAME);\n var defineProperty = definePropertyModule.f;\n if (DESCRIPTORS && Constructor && !Constructor[SPECIES]) {\n defineProperty(Constructor, SPECIES, {\n configurable: true,\n get: function () {\n return this;\n }\n });\n }\n};\n\n/***/ }),\n/* 98 */\n/***/ ((module) => {\n\nmodule.exports = function (it, Constructor, name) {\n if (!(it instanceof Constructor)) {\n throw TypeError('Incorrect ' + (name ? name + ' ' : '') + 'invocation');\n }\n return it;\n};\n\n/***/ }),\n/* 99 */\n/***/ ((module, __unused_webpack_exports, __w_pdfjs_require__) => {\n\nvar wellKnownSymbol = __w_pdfjs_require__(30);\nvar ITERATOR = wellKnownSymbol('iterator');\nvar SAFE_CLOSING = false;\ntry {\n var called = 0;\n var iteratorWithReturn = {\n next: function () {\n return { done: !!called++ };\n },\n 'return': function () {\n SAFE_CLOSING = true;\n }\n };\n iteratorWithReturn[ITERATOR] = function () {\n return this;\n };\n Array.from(iteratorWithReturn, function () {\n throw 2;\n });\n} catch (error) {\n}\nmodule.exports = function (exec, SKIP_CLOSING) {\n if (!SKIP_CLOSING && !SAFE_CLOSING)\n return false;\n var ITERATION_SUPPORT = false;\n try {\n var object = {};\n object[ITERATOR] = function () {\n return {\n next: function () {\n return { done: ITERATION_SUPPORT = true };\n }\n };\n };\n exec(object);\n } catch (error) {\n }\n return ITERATION_SUPPORT;\n};\n\n/***/ }),\n/* 100 */\n/***/ ((module, __unused_webpack_exports, __w_pdfjs_require__) => {\n\nvar anObject = __w_pdfjs_require__(42);\nvar aFunction = __w_pdfjs_require__(81);\nvar wellKnownSymbol = __w_pdfjs_require__(30);\nvar SPECIES = wellKnownSymbol('species');\nmodule.exports = function (O, defaultConstructor) {\n var C = anObject(O).constructor;\n var S;\n return C === undefined || (S = anObject(C)[SPECIES]) == undefined ? defaultConstructor : aFunction(S);\n};\n\n/***/ }),\n/* 101 */\n/***/ ((module, __unused_webpack_exports, __w_pdfjs_require__) => {\n\nvar global = __w_pdfjs_require__(10);\nvar fails = __w_pdfjs_require__(13);\nvar bind = __w_pdfjs_require__(80);\nvar html = __w_pdfjs_require__(67);\nvar createElement = __w_pdfjs_require__(39);\nvar IS_IOS = __w_pdfjs_require__(102);\nvar IS_NODE = __w_pdfjs_require__(103);\nvar set = global.setImmediate;\nvar clear = global.clearImmediate;\nvar process = global.process;\nvar MessageChannel = global.MessageChannel;\nvar Dispatch = global.Dispatch;\nvar counter = 0;\nvar queue = {};\nvar ONREADYSTATECHANGE = 'onreadystatechange';\nvar location, defer, channel, port;\ntry {\n location = global.location;\n} catch (error) {\n}\nvar run = function (id) {\n if (queue.hasOwnProperty(id)) {\n var fn = queue[id];\n delete queue[id];\n fn();\n }\n};\nvar runner = function (id) {\n return function () {\n run(id);\n };\n};\nvar listener = function (event) {\n run(event.data);\n};\nvar post = function (id) {\n global.postMessage(String(id), location.protocol + '//' + location.host);\n};\nif (!set || !clear) {\n set = function setImmediate(fn) {\n var args = [];\n var argumentsLength = arguments.length;\n var i = 1;\n while (argumentsLength > i)\n args.push(arguments[i++]);\n queue[++counter] = function () {\n (typeof fn == 'function' ? fn : Function(fn)).apply(undefined, args);\n };\n defer(counter);\n return counter;\n };\n clear = function clearImmediate(id) {\n delete queue[id];\n };\n if (IS_NODE) {\n defer = function (id) {\n process.nextTick(runner(id));\n };\n } else if (Dispatch && Dispatch.now) {\n defer = function (id) {\n Dispatch.now(runner(id));\n };\n } else if (MessageChannel && !IS_IOS) {\n channel = new MessageChannel();\n port = channel.port2;\n channel.port1.onmessage = listener;\n defer = bind(port.postMessage, port, 1);\n } else if (global.addEventListener && typeof postMessage == 'function' && !global.importScripts && location && location.protocol !== 'file:' && !fails(post)) {\n defer = post;\n global.addEventListener('message', listener, false);\n } else if (ONREADYSTATECHANGE in createElement('script')) {\n defer = function (id) {\n html.appendChild(createElement('script'))[ONREADYSTATECHANGE] = function () {\n html.removeChild(this);\n run(id);\n };\n };\n } else {\n defer = function (id) {\n setTimeout(runner(id), 0);\n };\n }\n}\nmodule.exports = {\n set: set,\n clear: clear\n};\n\n/***/ }),\n/* 102 */\n/***/ ((module, __unused_webpack_exports, __w_pdfjs_require__) => {\n\nvar userAgent = __w_pdfjs_require__(28);\nmodule.exports = /(?:ipad|iphone|ipod).*applewebkit/i.test(userAgent);\n\n/***/ }),\n/* 103 */\n/***/ ((module, __unused_webpack_exports, __w_pdfjs_require__) => {\n\nvar classof = __w_pdfjs_require__(18);\nvar global = __w_pdfjs_require__(10);\nmodule.exports = classof(global.process) == 'process';\n\n/***/ }),\n/* 104 */\n/***/ ((module, __unused_webpack_exports, __w_pdfjs_require__) => {\n\nvar global = __w_pdfjs_require__(10);\nvar getOwnPropertyDescriptor = __w_pdfjs_require__(11).f;\nvar macrotask = __w_pdfjs_require__(101).set;\nvar IS_IOS = __w_pdfjs_require__(102);\nvar IS_IOS_PEBBLE = __w_pdfjs_require__(105);\nvar IS_WEBOS_WEBKIT = __w_pdfjs_require__(106);\nvar IS_NODE = __w_pdfjs_require__(103);\nvar MutationObserver = global.MutationObserver || global.WebKitMutationObserver;\nvar document = global.document;\nvar process = global.process;\nvar Promise = global.Promise;\nvar queueMicrotaskDescriptor = getOwnPropertyDescriptor(global, 'queueMicrotask');\nvar queueMicrotask = queueMicrotaskDescriptor && queueMicrotaskDescriptor.value;\nvar flush, head, last, notify, toggle, node, promise, then;\nif (!queueMicrotask) {\n flush = function () {\n var parent, fn;\n if (IS_NODE && (parent = process.domain))\n parent.exit();\n while (head) {\n fn = head.fn;\n head = head.next;\n try {\n fn();\n } catch (error) {\n if (head)\n notify();\n else\n last = undefined;\n throw error;\n }\n }\n last = undefined;\n if (parent)\n parent.enter();\n };\n if (!IS_IOS && !IS_NODE && !IS_WEBOS_WEBKIT && MutationObserver && document) {\n toggle = true;\n node = document.createTextNode('');\n new MutationObserver(flush).observe(node, { characterData: true });\n notify = function () {\n node.data = toggle = !toggle;\n };\n } else if (!IS_IOS_PEBBLE && Promise && Promise.resolve) {\n promise = Promise.resolve(undefined);\n promise.constructor = Promise;\n then = promise.then;\n notify = function () {\n then.call(promise, flush);\n };\n } else if (IS_NODE) {\n notify = function () {\n process.nextTick(flush);\n };\n } else {\n notify = function () {\n macrotask.call(global, flush);\n };\n }\n}\nmodule.exports = queueMicrotask || function (fn) {\n var task = {\n fn: fn,\n next: undefined\n };\n if (last)\n last.next = task;\n if (!head) {\n head = task;\n notify();\n }\n last = task;\n};\n\n/***/ }),\n/* 105 */\n/***/ ((module, __unused_webpack_exports, __w_pdfjs_require__) => {\n\nvar userAgent = __w_pdfjs_require__(28);\nvar global = __w_pdfjs_require__(10);\nmodule.exports = /ipad|iphone|ipod/i.test(userAgent) && global.Pebble !== undefined;\n\n/***/ }),\n/* 106 */\n/***/ ((module, __unused_webpack_exports, __w_pdfjs_require__) => {\n\nvar userAgent = __w_pdfjs_require__(28);\nmodule.exports = /web0s(?!.*chrome)/i.test(userAgent);\n\n/***/ }),\n/* 107 */\n/***/ ((module, __unused_webpack_exports, __w_pdfjs_require__) => {\n\nvar anObject = __w_pdfjs_require__(42);\nvar isObject = __w_pdfjs_require__(22);\nvar newPromiseCapability = __w_pdfjs_require__(108);\nmodule.exports = function (C, x) {\n anObject(C);\n if (isObject(x) && x.constructor === C)\n return x;\n var promiseCapability = newPromiseCapability.f(C);\n var resolve = promiseCapability.resolve;\n resolve(x);\n return promiseCapability.promise;\n};\n\n/***/ }),\n/* 108 */\n/***/ ((module, __unused_webpack_exports, __w_pdfjs_require__) => {\n\n\"use strict\";\n\nvar aFunction = __w_pdfjs_require__(81);\nvar PromiseCapability = function (C) {\n var resolve, reject;\n this.promise = new C(function ($$resolve, $$reject) {\n if (resolve !== undefined || reject !== undefined)\n throw TypeError('Bad Promise constructor');\n resolve = $$resolve;\n reject = $$reject;\n });\n this.resolve = aFunction(resolve);\n this.reject = aFunction(reject);\n};\nmodule.exports.f = function (C) {\n return new PromiseCapability(C);\n};\n\n/***/ }),\n/* 109 */\n/***/ ((module, __unused_webpack_exports, __w_pdfjs_require__) => {\n\nvar global = __w_pdfjs_require__(10);\nmodule.exports = function (a, b) {\n var console = global.console;\n if (console && console.error) {\n arguments.length === 1 ? console.error(a) : console.error(a, b);\n }\n};\n\n/***/ }),\n/* 110 */\n/***/ ((module) => {\n\nmodule.exports = function (exec) {\n try {\n return {\n error: false,\n value: exec()\n };\n } catch (error) {\n return {\n error: true,\n value: error\n };\n }\n};\n\n/***/ }),\n/* 111 */\n/***/ ((module) => {\n\nmodule.exports = typeof window == 'object';\n\n/***/ }),\n/* 112 */\n/***/ ((__unused_webpack_module, __unused_webpack_exports, __w_pdfjs_require__) => {\n\n\"use strict\";\n\nvar $ = __w_pdfjs_require__(9);\nvar aFunction = __w_pdfjs_require__(81);\nvar newPromiseCapabilityModule = __w_pdfjs_require__(108);\nvar perform = __w_pdfjs_require__(110);\nvar iterate = __w_pdfjs_require__(78);\n$({\n target: 'Promise',\n stat: true\n}, {\n allSettled: function allSettled(iterable) {\n var C = this;\n var capability = newPromiseCapabilityModule.f(C);\n var resolve = capability.resolve;\n var reject = capability.reject;\n var result = perform(function () {\n var promiseResolve = aFunction(C.resolve);\n var values = [];\n var counter = 0;\n var remaining = 1;\n iterate(iterable, function (promise) {\n var index = counter++;\n var alreadyCalled = false;\n values.push(undefined);\n remaining++;\n promiseResolve.call(C, promise).then(function (value) {\n if (alreadyCalled)\n return;\n alreadyCalled = true;\n values[index] = {\n status: 'fulfilled',\n value: value\n };\n --remaining || resolve(values);\n }, function (error) {\n if (alreadyCalled)\n return;\n alreadyCalled = true;\n values[index] = {\n status: 'rejected',\n reason: error\n };\n --remaining || resolve(values);\n });\n });\n --remaining || resolve(values);\n });\n if (result.error)\n reject(result.value);\n return capability.promise;\n }\n});\n\n/***/ }),\n/* 113 */\n/***/ ((__unused_webpack_module, __unused_webpack_exports, __w_pdfjs_require__) => {\n\n\"use strict\";\n\nvar $ = __w_pdfjs_require__(9);\nvar aFunction = __w_pdfjs_require__(81);\nvar getBuiltIn = __w_pdfjs_require__(24);\nvar newPromiseCapabilityModule = __w_pdfjs_require__(108);\nvar perform = __w_pdfjs_require__(110);\nvar iterate = __w_pdfjs_require__(78);\nvar PROMISE_ANY_ERROR = 'No one promise resolved';\n$({\n target: 'Promise',\n stat: true\n}, {\n any: function any(iterable) {\n var C = this;\n var capability = newPromiseCapabilityModule.f(C);\n var resolve = capability.resolve;\n var reject = capability.reject;\n var result = perform(function () {\n var promiseResolve = aFunction(C.resolve);\n var errors = [];\n var counter = 0;\n var remaining = 1;\n var alreadyResolved = false;\n iterate(iterable, function (promise) {\n var index = counter++;\n var alreadyRejected = false;\n errors.push(undefined);\n remaining++;\n promiseResolve.call(C, promise).then(function (value) {\n if (alreadyRejected || alreadyResolved)\n return;\n alreadyResolved = true;\n resolve(value);\n }, function (error) {\n if (alreadyRejected || alreadyResolved)\n return;\n alreadyRejected = true;\n errors[index] = error;\n --remaining || reject(new (getBuiltIn('AggregateError'))(errors, PROMISE_ANY_ERROR));\n });\n });\n --remaining || reject(new (getBuiltIn('AggregateError'))(errors, PROMISE_ANY_ERROR));\n });\n if (result.error)\n reject(result.value);\n return capability.promise;\n }\n});\n\n/***/ }),\n/* 114 */\n/***/ ((__unused_webpack_module, __unused_webpack_exports, __w_pdfjs_require__) => {\n\n\"use strict\";\n\nvar $ = __w_pdfjs_require__(9);\nvar IS_PURE = __w_pdfjs_require__(32);\nvar NativePromise = __w_pdfjs_require__(95);\nvar fails = __w_pdfjs_require__(13);\nvar getBuiltIn = __w_pdfjs_require__(24);\nvar speciesConstructor = __w_pdfjs_require__(100);\nvar promiseResolve = __w_pdfjs_require__(107);\nvar redefine = __w_pdfjs_require__(43);\nvar NON_GENERIC = !!NativePromise && fails(function () {\n NativePromise.prototype['finally'].call({\n then: function () {\n }\n }, function () {\n });\n});\n$({\n target: 'Promise',\n proto: true,\n real: true,\n forced: NON_GENERIC\n}, {\n 'finally': function (onFinally) {\n var C = speciesConstructor(this, getBuiltIn('Promise'));\n var isFunction = typeof onFinally == 'function';\n return this.then(isFunction ? function (x) {\n return promiseResolve(C, onFinally()).then(function () {\n return x;\n });\n } : onFinally, isFunction ? function (e) {\n return promiseResolve(C, onFinally()).then(function () {\n throw e;\n });\n } : onFinally);\n }\n});\nif (!IS_PURE && typeof NativePromise == 'function') {\n var method = getBuiltIn('Promise').prototype['finally'];\n if (NativePromise.prototype['finally'] !== method) {\n redefine(NativePromise.prototype, 'finally', method, { unsafe: true });\n }\n}\n\n/***/ }),\n/* 115 */\n/***/ ((__unused_webpack_module, __unused_webpack_exports, __w_pdfjs_require__) => {\n\n\"use strict\";\n\nvar charAt = __w_pdfjs_require__(116).charAt;\nvar toString = __w_pdfjs_require__(91);\nvar InternalStateModule = __w_pdfjs_require__(45);\nvar defineIterator = __w_pdfjs_require__(69);\nvar STRING_ITERATOR = 'String Iterator';\nvar setInternalState = InternalStateModule.set;\nvar getInternalState = InternalStateModule.getterFor(STRING_ITERATOR);\ndefineIterator(String, 'String', function (iterated) {\n setInternalState(this, {\n type: STRING_ITERATOR,\n string: toString(iterated),\n index: 0\n });\n}, function next() {\n var state = getInternalState(this);\n var string = state.string;\n var index = state.index;\n var point;\n if (index >= string.length)\n return {\n value: undefined,\n done: true\n };\n point = charAt(string, index);\n state.index += point.length;\n return {\n value: point,\n done: false\n };\n});\n\n/***/ }),\n/* 116 */\n/***/ ((module, __unused_webpack_exports, __w_pdfjs_require__) => {\n\nvar toInteger = __w_pdfjs_require__(55);\nvar toString = __w_pdfjs_require__(91);\nvar requireObjectCoercible = __w_pdfjs_require__(19);\nvar createMethod = function (CONVERT_TO_STRING) {\n return function ($this, pos) {\n var S = toString(requireObjectCoercible($this));\n var position = toInteger(pos);\n var size = S.length;\n var first, second;\n if (position < 0 || position >= size)\n return CONVERT_TO_STRING ? '' : undefined;\n first = S.charCodeAt(position);\n return first < 0xD800 || first > 0xDBFF || position + 1 === size || (second = S.charCodeAt(position + 1)) < 0xDC00 || second > 0xDFFF ? CONVERT_TO_STRING ? S.charAt(position) : first : CONVERT_TO_STRING ? S.slice(position, position + 2) : (first - 0xD800 << 10) + (second - 0xDC00) + 0x10000;\n };\n};\nmodule.exports = {\n codeAt: createMethod(false),\n charAt: createMethod(true)\n};\n\n/***/ }),\n/* 117 */\n/***/ (function(__unused_webpack_module, exports) {\n\n(function (global, factory) {\n true ? factory(exports) : 0;\n}(this, function (exports) {\n 'use strict';\n var SymbolPolyfill = typeof Symbol === 'function' && typeof Symbol.iterator === 'symbol' ? Symbol : function (description) {\n return \"Symbol(\" + description + \")\";\n };\n function noop() {\n return undefined;\n }\n function getGlobals() {\n if (typeof self !== 'undefined') {\n return self;\n } else if (typeof window !== 'undefined') {\n return window;\n } else if (typeof global !== 'undefined') {\n return global;\n }\n return undefined;\n }\n var globals = getGlobals();\n function typeIsObject(x) {\n return typeof x === 'object' && x !== null || typeof x === 'function';\n }\n var rethrowAssertionErrorRejection = noop;\n var originalPromise = Promise;\n var originalPromiseThen = Promise.prototype.then;\n var originalPromiseResolve = Promise.resolve.bind(originalPromise);\n var originalPromiseReject = Promise.reject.bind(originalPromise);\n function newPromise(executor) {\n return new originalPromise(executor);\n }\n function promiseResolvedWith(value) {\n return originalPromiseResolve(value);\n }\n function promiseRejectedWith(reason) {\n return originalPromiseReject(reason);\n }\n function PerformPromiseThen(promise, onFulfilled, onRejected) {\n return originalPromiseThen.call(promise, onFulfilled, onRejected);\n }\n function uponPromise(promise, onFulfilled, onRejected) {\n PerformPromiseThen(PerformPromiseThen(promise, onFulfilled, onRejected), undefined, rethrowAssertionErrorRejection);\n }\n function uponFulfillment(promise, onFulfilled) {\n uponPromise(promise, onFulfilled);\n }\n function uponRejection(promise, onRejected) {\n uponPromise(promise, undefined, onRejected);\n }\n function transformPromiseWith(promise, fulfillmentHandler, rejectionHandler) {\n return PerformPromiseThen(promise, fulfillmentHandler, rejectionHandler);\n }\n function setPromiseIsHandledToTrue(promise) {\n PerformPromiseThen(promise, undefined, rethrowAssertionErrorRejection);\n }\n var queueMicrotask = function () {\n var globalQueueMicrotask = globals && globals.queueMicrotask;\n if (typeof globalQueueMicrotask === 'function') {\n return globalQueueMicrotask;\n }\n var resolvedPromise = promiseResolvedWith(undefined);\n return function (fn) {\n return PerformPromiseThen(resolvedPromise, fn);\n };\n }();\n function reflectCall(F, V, args) {\n if (typeof F !== 'function') {\n throw new TypeError('Argument is not a function');\n }\n return Function.prototype.apply.call(F, V, args);\n }\n function promiseCall(F, V, args) {\n try {\n return promiseResolvedWith(reflectCall(F, V, args));\n } catch (value) {\n return promiseRejectedWith(value);\n }\n }\n var QUEUE_MAX_ARRAY_SIZE = 16384;\n var SimpleQueue = function () {\n function SimpleQueue() {\n this._cursor = 0;\n this._size = 0;\n this._front = {\n _elements: [],\n _next: undefined\n };\n this._back = this._front;\n this._cursor = 0;\n this._size = 0;\n }\n Object.defineProperty(SimpleQueue.prototype, \"length\", {\n get: function () {\n return this._size;\n },\n enumerable: false,\n configurable: true\n });\n SimpleQueue.prototype.push = function (element) {\n var oldBack = this._back;\n var newBack = oldBack;\n if (oldBack._elements.length === QUEUE_MAX_ARRAY_SIZE - 1) {\n newBack = {\n _elements: [],\n _next: undefined\n };\n }\n oldBack._elements.push(element);\n if (newBack !== oldBack) {\n this._back = newBack;\n oldBack._next = newBack;\n }\n ++this._size;\n };\n SimpleQueue.prototype.shift = function () {\n var oldFront = this._front;\n var newFront = oldFront;\n var oldCursor = this._cursor;\n var newCursor = oldCursor + 1;\n var elements = oldFront._elements;\n var element = elements[oldCursor];\n if (newCursor === QUEUE_MAX_ARRAY_SIZE) {\n newFront = oldFront._next;\n newCursor = 0;\n }\n --this._size;\n this._cursor = newCursor;\n if (oldFront !== newFront) {\n this._front = newFront;\n }\n elements[oldCursor] = undefined;\n return element;\n };\n SimpleQueue.prototype.forEach = function (callback) {\n var i = this._cursor;\n var node = this._front;\n var elements = node._elements;\n while (i !== elements.length || node._next !== undefined) {\n if (i === elements.length) {\n node = node._next;\n elements = node._elements;\n i = 0;\n if (elements.length === 0) {\n break;\n }\n }\n callback(elements[i]);\n ++i;\n }\n };\n SimpleQueue.prototype.peek = function () {\n var front = this._front;\n var cursor = this._cursor;\n return front._elements[cursor];\n };\n return SimpleQueue;\n }();\n function ReadableStreamReaderGenericInitialize(reader, stream) {\n reader._ownerReadableStream = stream;\n stream._reader = reader;\n if (stream._state === 'readable') {\n defaultReaderClosedPromiseInitialize(reader);\n } else if (stream._state === 'closed') {\n defaultReaderClosedPromiseInitializeAsResolved(reader);\n } else {\n defaultReaderClosedPromiseInitializeAsRejected(reader, stream._storedError);\n }\n }\n function ReadableStreamReaderGenericCancel(reader, reason) {\n var stream = reader._ownerReadableStream;\n return ReadableStreamCancel(stream, reason);\n }\n function ReadableStreamReaderGenericRelease(reader) {\n if (reader._ownerReadableStream._state === 'readable') {\n defaultReaderClosedPromiseReject(reader, new TypeError(\"Reader was released and can no longer be used to monitor the stream's closedness\"));\n } else {\n defaultReaderClosedPromiseResetToRejected(reader, new TypeError(\"Reader was released and can no longer be used to monitor the stream's closedness\"));\n }\n reader._ownerReadableStream._reader = undefined;\n reader._ownerReadableStream = undefined;\n }\n function readerLockException(name) {\n return new TypeError('Cannot ' + name + ' a stream using a released reader');\n }\n function defaultReaderClosedPromiseInitialize(reader) {\n reader._closedPromise = newPromise(function (resolve, reject) {\n reader._closedPromise_resolve = resolve;\n reader._closedPromise_reject = reject;\n });\n }\n function defaultReaderClosedPromiseInitializeAsRejected(reader, reason) {\n defaultReaderClosedPromiseInitialize(reader);\n defaultReaderClosedPromiseReject(reader, reason);\n }\n function defaultReaderClosedPromiseInitializeAsResolved(reader) {\n defaultReaderClosedPromiseInitialize(reader);\n defaultReaderClosedPromiseResolve(reader);\n }\n function defaultReaderClosedPromiseReject(reader, reason) {\n if (reader._closedPromise_reject === undefined) {\n return;\n }\n setPromiseIsHandledToTrue(reader._closedPromise);\n reader._closedPromise_reject(reason);\n reader._closedPromise_resolve = undefined;\n reader._closedPromise_reject = undefined;\n }\n function defaultReaderClosedPromiseResetToRejected(reader, reason) {\n defaultReaderClosedPromiseInitializeAsRejected(reader, reason);\n }\n function defaultReaderClosedPromiseResolve(reader) {\n if (reader._closedPromise_resolve === undefined) {\n return;\n }\n reader._closedPromise_resolve(undefined);\n reader._closedPromise_resolve = undefined;\n reader._closedPromise_reject = undefined;\n }\n var AbortSteps = SymbolPolyfill('[[AbortSteps]]');\n var ErrorSteps = SymbolPolyfill('[[ErrorSteps]]');\n var CancelSteps = SymbolPolyfill('[[CancelSteps]]');\n var PullSteps = SymbolPolyfill('[[PullSteps]]');\n var NumberIsFinite = Number.isFinite || function (x) {\n return typeof x === 'number' && isFinite(x);\n };\n var MathTrunc = Math.trunc || function (v) {\n return v < 0 ? Math.ceil(v) : Math.floor(v);\n };\n function isDictionary(x) {\n return typeof x === 'object' || typeof x === 'function';\n }\n function assertDictionary(obj, context) {\n if (obj !== undefined && !isDictionary(obj)) {\n throw new TypeError(context + \" is not an object.\");\n }\n }\n function assertFunction(x, context) {\n if (typeof x !== 'function') {\n throw new TypeError(context + \" is not a function.\");\n }\n }\n function isObject(x) {\n return typeof x === 'object' && x !== null || typeof x === 'function';\n }\n function assertObject(x, context) {\n if (!isObject(x)) {\n throw new TypeError(context + \" is not an object.\");\n }\n }\n function assertRequiredArgument(x, position, context) {\n if (x === undefined) {\n throw new TypeError(\"Parameter \" + position + \" is required in '\" + context + \"'.\");\n }\n }\n function assertRequiredField(x, field, context) {\n if (x === undefined) {\n throw new TypeError(field + \" is required in '\" + context + \"'.\");\n }\n }\n function convertUnrestrictedDouble(value) {\n return Number(value);\n }\n function censorNegativeZero(x) {\n return x === 0 ? 0 : x;\n }\n function integerPart(x) {\n return censorNegativeZero(MathTrunc(x));\n }\n function convertUnsignedLongLongWithEnforceRange(value, context) {\n var lowerBound = 0;\n var upperBound = Number.MAX_SAFE_INTEGER;\n var x = Number(value);\n x = censorNegativeZero(x);\n if (!NumberIsFinite(x)) {\n throw new TypeError(context + \" is not a finite number\");\n }\n x = integerPart(x);\n if (x < lowerBound || x > upperBound) {\n throw new TypeError(context + \" is outside the accepted range of \" + lowerBound + \" to \" + upperBound + \", inclusive\");\n }\n if (!NumberIsFinite(x) || x === 0) {\n return 0;\n }\n return x;\n }\n function assertReadableStream(x, context) {\n if (!IsReadableStream(x)) {\n throw new TypeError(context + \" is not a ReadableStream.\");\n }\n }\n function AcquireReadableStreamDefaultReader(stream) {\n return new ReadableStreamDefaultReader(stream);\n }\n function ReadableStreamAddReadRequest(stream, readRequest) {\n stream._reader._readRequests.push(readRequest);\n }\n function ReadableStreamFulfillReadRequest(stream, chunk, done) {\n var reader = stream._reader;\n var readRequest = reader._readRequests.shift();\n if (done) {\n readRequest._closeSteps();\n } else {\n readRequest._chunkSteps(chunk);\n }\n }\n function ReadableStreamGetNumReadRequests(stream) {\n return stream._reader._readRequests.length;\n }\n function ReadableStreamHasDefaultReader(stream) {\n var reader = stream._reader;\n if (reader === undefined) {\n return false;\n }\n if (!IsReadableStreamDefaultReader(reader)) {\n return false;\n }\n return true;\n }\n var ReadableStreamDefaultReader = function () {\n function ReadableStreamDefaultReader(stream) {\n assertRequiredArgument(stream, 1, 'ReadableStreamDefaultReader');\n assertReadableStream(stream, 'First parameter');\n if (IsReadableStreamLocked(stream)) {\n throw new TypeError('This stream has already been locked for exclusive reading by another reader');\n }\n ReadableStreamReaderGenericInitialize(this, stream);\n this._readRequests = new SimpleQueue();\n }\n Object.defineProperty(ReadableStreamDefaultReader.prototype, \"closed\", {\n get: function () {\n if (!IsReadableStreamDefaultReader(this)) {\n return promiseRejectedWith(defaultReaderBrandCheckException('closed'));\n }\n return this._closedPromise;\n },\n enumerable: false,\n configurable: true\n });\n ReadableStreamDefaultReader.prototype.cancel = function (reason) {\n if (reason === void 0) {\n reason = undefined;\n }\n if (!IsReadableStreamDefaultReader(this)) {\n return promiseRejectedWith(defaultReaderBrandCheckException('cancel'));\n }\n if (this._ownerReadableStream === undefined) {\n return promiseRejectedWith(readerLockException('cancel'));\n }\n return ReadableStreamReaderGenericCancel(this, reason);\n };\n ReadableStreamDefaultReader.prototype.read = function () {\n if (!IsReadableStreamDefaultReader(this)) {\n return promiseRejectedWith(defaultReaderBrandCheckException('read'));\n }\n if (this._ownerReadableStream === undefined) {\n return promiseRejectedWith(readerLockException('read from'));\n }\n var resolvePromise;\n var rejectPromise;\n var promise = newPromise(function (resolve, reject) {\n resolvePromise = resolve;\n rejectPromise = reject;\n });\n var readRequest = {\n _chunkSteps: function (chunk) {\n return resolvePromise({\n value: chunk,\n done: false\n });\n },\n _closeSteps: function () {\n return resolvePromise({\n value: undefined,\n done: true\n });\n },\n _errorSteps: function (e) {\n return rejectPromise(e);\n }\n };\n ReadableStreamDefaultReaderRead(this, readRequest);\n return promise;\n };\n ReadableStreamDefaultReader.prototype.releaseLock = function () {\n if (!IsReadableStreamDefaultReader(this)) {\n throw defaultReaderBrandCheckException('releaseLock');\n }\n if (this._ownerReadableStream === undefined) {\n return;\n }\n if (this._readRequests.length > 0) {\n throw new TypeError('Tried to release a reader lock when that reader has pending read() calls un-settled');\n }\n ReadableStreamReaderGenericRelease(this);\n };\n return ReadableStreamDefaultReader;\n }();\n Object.defineProperties(ReadableStreamDefaultReader.prototype, {\n cancel: { enumerable: true },\n read: { enumerable: true },\n releaseLock: { enumerable: true },\n closed: { enumerable: true }\n });\n if (typeof SymbolPolyfill.toStringTag === 'symbol') {\n Object.defineProperty(ReadableStreamDefaultReader.prototype, SymbolPolyfill.toStringTag, {\n value: 'ReadableStreamDefaultReader',\n configurable: true\n });\n }\n function IsReadableStreamDefaultReader(x) {\n if (!typeIsObject(x)) {\n return false;\n }\n if (!Object.prototype.hasOwnProperty.call(x, '_readRequests')) {\n return false;\n }\n return x instanceof ReadableStreamDefaultReader;\n }\n function ReadableStreamDefaultReaderRead(reader, readRequest) {\n var stream = reader._ownerReadableStream;\n stream._disturbed = true;\n if (stream._state === 'closed') {\n readRequest._closeSteps();\n } else if (stream._state === 'errored') {\n readRequest._errorSteps(stream._storedError);\n } else {\n stream._readableStreamController[PullSteps](readRequest);\n }\n }\n function defaultReaderBrandCheckException(name) {\n return new TypeError(\"ReadableStreamDefaultReader.prototype.\" + name + \" can only be used on a ReadableStreamDefaultReader\");\n }\n var _a;\n var AsyncIteratorPrototype;\n if (typeof SymbolPolyfill.asyncIterator === 'symbol') {\n AsyncIteratorPrototype = (_a = {}, _a[SymbolPolyfill.asyncIterator] = function () {\n return this;\n }, _a);\n Object.defineProperty(AsyncIteratorPrototype, SymbolPolyfill.asyncIterator, { enumerable: false });\n }\n var ReadableStreamAsyncIteratorImpl = function () {\n function ReadableStreamAsyncIteratorImpl(reader, preventCancel) {\n this._ongoingPromise = undefined;\n this._isFinished = false;\n this._reader = reader;\n this._preventCancel = preventCancel;\n }\n ReadableStreamAsyncIteratorImpl.prototype.next = function () {\n var _this = this;\n var nextSteps = function () {\n return _this._nextSteps();\n };\n this._ongoingPromise = this._ongoingPromise ? transformPromiseWith(this._ongoingPromise, nextSteps, nextSteps) : nextSteps();\n return this._ongoingPromise;\n };\n ReadableStreamAsyncIteratorImpl.prototype.return = function (value) {\n var _this = this;\n var returnSteps = function () {\n return _this._returnSteps(value);\n };\n return this._ongoingPromise ? transformPromiseWith(this._ongoingPromise, returnSteps, returnSteps) : returnSteps();\n };\n ReadableStreamAsyncIteratorImpl.prototype._nextSteps = function () {\n var _this = this;\n if (this._isFinished) {\n return Promise.resolve({\n value: undefined,\n done: true\n });\n }\n var reader = this._reader;\n if (reader._ownerReadableStream === undefined) {\n return promiseRejectedWith(readerLockException('iterate'));\n }\n var resolvePromise;\n var rejectPromise;\n var promise = newPromise(function (resolve, reject) {\n resolvePromise = resolve;\n rejectPromise = reject;\n });\n var readRequest = {\n _chunkSteps: function (chunk) {\n _this._ongoingPromise = undefined;\n queueMicrotask(function () {\n return resolvePromise({\n value: chunk,\n done: false\n });\n });\n },\n _closeSteps: function () {\n _this._ongoingPromise = undefined;\n _this._isFinished = true;\n ReadableStreamReaderGenericRelease(reader);\n resolvePromise({\n value: undefined,\n done: true\n });\n },\n _errorSteps: function (reason) {\n _this._ongoingPromise = undefined;\n _this._isFinished = true;\n ReadableStreamReaderGenericRelease(reader);\n rejectPromise(reason);\n }\n };\n ReadableStreamDefaultReaderRead(reader, readRequest);\n return promise;\n };\n ReadableStreamAsyncIteratorImpl.prototype._returnSteps = function (value) {\n if (this._isFinished) {\n return Promise.resolve({\n value: value,\n done: true\n });\n }\n this._isFinished = true;\n var reader = this._reader;\n if (reader._ownerReadableStream === undefined) {\n return promiseRejectedWith(readerLockException('finish iterating'));\n }\n if (!this._preventCancel) {\n var result = ReadableStreamReaderGenericCancel(reader, value);\n ReadableStreamReaderGenericRelease(reader);\n return transformPromiseWith(result, function () {\n return {\n value: value,\n done: true\n };\n });\n }\n ReadableStreamReaderGenericRelease(reader);\n return promiseResolvedWith({\n value: value,\n done: true\n });\n };\n return ReadableStreamAsyncIteratorImpl;\n }();\n var ReadableStreamAsyncIteratorPrototype = {\n next: function () {\n if (!IsReadableStreamAsyncIterator(this)) {\n return promiseRejectedWith(streamAsyncIteratorBrandCheckException('next'));\n }\n return this._asyncIteratorImpl.next();\n },\n return: function (value) {\n if (!IsReadableStreamAsyncIterator(this)) {\n return promiseRejectedWith(streamAsyncIteratorBrandCheckException('return'));\n }\n return this._asyncIteratorImpl.return(value);\n }\n };\n if (AsyncIteratorPrototype !== undefined) {\n Object.setPrototypeOf(ReadableStreamAsyncIteratorPrototype, AsyncIteratorPrototype);\n }\n function AcquireReadableStreamAsyncIterator(stream, preventCancel) {\n var reader = AcquireReadableStreamDefaultReader(stream);\n var impl = new ReadableStreamAsyncIteratorImpl(reader, preventCancel);\n var iterator = Object.create(ReadableStreamAsyncIteratorPrototype);\n iterator._asyncIteratorImpl = impl;\n return iterator;\n }\n function IsReadableStreamAsyncIterator(x) {\n if (!typeIsObject(x)) {\n return false;\n }\n if (!Object.prototype.hasOwnProperty.call(x, '_asyncIteratorImpl')) {\n return false;\n }\n try {\n return x._asyncIteratorImpl instanceof ReadableStreamAsyncIteratorImpl;\n } catch (_a) {\n return false;\n }\n }\n function streamAsyncIteratorBrandCheckException(name) {\n return new TypeError(\"ReadableStreamAsyncIterator.\" + name + \" can only be used on a ReadableSteamAsyncIterator\");\n }\n var NumberIsNaN = Number.isNaN || function (x) {\n return x !== x;\n };\n function CreateArrayFromList(elements) {\n return elements.slice();\n }\n function CopyDataBlockBytes(dest, destOffset, src, srcOffset, n) {\n new Uint8Array(dest).set(new Uint8Array(src, srcOffset, n), destOffset);\n }\n function TransferArrayBuffer(O) {\n return O;\n }\n function IsDetachedBuffer(O) {\n return false;\n }\n function ArrayBufferSlice(buffer, begin, end) {\n if (buffer.slice) {\n return buffer.slice(begin, end);\n }\n var length = end - begin;\n var slice = new ArrayBuffer(length);\n CopyDataBlockBytes(slice, 0, buffer, begin, length);\n return slice;\n }\n function IsNonNegativeNumber(v) {\n if (typeof v !== 'number') {\n return false;\n }\n if (NumberIsNaN(v)) {\n return false;\n }\n if (v < 0) {\n return false;\n }\n return true;\n }\n function CloneAsUint8Array(O) {\n var buffer = ArrayBufferSlice(O.buffer, O.byteOffset, O.byteOffset + O.byteLength);\n return new Uint8Array(buffer);\n }\n function DequeueValue(container) {\n var pair = container._queue.shift();\n container._queueTotalSize -= pair.size;\n if (container._queueTotalSize < 0) {\n container._queueTotalSize = 0;\n }\n return pair.value;\n }\n function EnqueueValueWithSize(container, value, size) {\n if (!IsNonNegativeNumber(size) || size === Infinity) {\n throw new RangeError('Size must be a finite, non-NaN, non-negative number.');\n }\n container._queue.push({\n value: value,\n size: size\n });\n container._queueTotalSize += size;\n }\n function PeekQueueValue(container) {\n var pair = container._queue.peek();\n return pair.value;\n }\n function ResetQueue(container) {\n container._queue = new SimpleQueue();\n container._queueTotalSize = 0;\n }\n var ReadableStreamBYOBRequest = function () {\n function ReadableStreamBYOBRequest() {\n throw new TypeError('Illegal constructor');\n }\n Object.defineProperty(ReadableStreamBYOBRequest.prototype, \"view\", {\n get: function () {\n if (!IsReadableStreamBYOBRequest(this)) {\n throw byobRequestBrandCheckException('view');\n }\n return this._view;\n },\n enumerable: false,\n configurable: true\n });\n ReadableStreamBYOBRequest.prototype.respond = function (bytesWritten) {\n if (!IsReadableStreamBYOBRequest(this)) {\n throw byobRequestBrandCheckException('respond');\n }\n assertRequiredArgument(bytesWritten, 1, 'respond');\n bytesWritten = convertUnsignedLongLongWithEnforceRange(bytesWritten, 'First parameter');\n if (this._associatedReadableByteStreamController === undefined) {\n throw new TypeError('This BYOB request has been invalidated');\n }\n if (IsDetachedBuffer(this._view.buffer));\n ReadableByteStreamControllerRespond(this._associatedReadableByteStreamController, bytesWritten);\n };\n ReadableStreamBYOBRequest.prototype.respondWithNewView = function (view) {\n if (!IsReadableStreamBYOBRequest(this)) {\n throw byobRequestBrandCheckException('respondWithNewView');\n }\n assertRequiredArgument(view, 1, 'respondWithNewView');\n if (!ArrayBuffer.isView(view)) {\n throw new TypeError('You can only respond with array buffer views');\n }\n if (this._associatedReadableByteStreamController === undefined) {\n throw new TypeError('This BYOB request has been invalidated');\n }\n if (IsDetachedBuffer(view.buffer));\n ReadableByteStreamControllerRespondWithNewView(this._associatedReadableByteStreamController, view);\n };\n return ReadableStreamBYOBRequest;\n }();\n Object.defineProperties(ReadableStreamBYOBRequest.prototype, {\n respond: { enumerable: true },\n respondWithNewView: { enumerable: true },\n view: { enumerable: true }\n });\n if (typeof SymbolPolyfill.toStringTag === 'symbol') {\n Object.defineProperty(ReadableStreamBYOBRequest.prototype, SymbolPolyfill.toStringTag, {\n value: 'ReadableStreamBYOBRequest',\n configurable: true\n });\n }\n var ReadableByteStreamController = function () {\n function ReadableByteStreamController() {\n throw new TypeError('Illegal constructor');\n }\n Object.defineProperty(ReadableByteStreamController.prototype, \"byobRequest\", {\n get: function () {\n if (!IsReadableByteStreamController(this)) {\n throw byteStreamControllerBrandCheckException('byobRequest');\n }\n return ReadableByteStreamControllerGetBYOBRequest(this);\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(ReadableByteStreamController.prototype, \"desiredSize\", {\n get: function () {\n if (!IsReadableByteStreamController(this)) {\n throw byteStreamControllerBrandCheckException('desiredSize');\n }\n return ReadableByteStreamControllerGetDesiredSize(this);\n },\n enumerable: false,\n configurable: true\n });\n ReadableByteStreamController.prototype.close = function () {\n if (!IsReadableByteStreamController(this)) {\n throw byteStreamControllerBrandCheckException('close');\n }\n if (this._closeRequested) {\n throw new TypeError('The stream has already been closed; do not close it again!');\n }\n var state = this._controlledReadableByteStream._state;\n if (state !== 'readable') {\n throw new TypeError(\"The stream (in \" + state + \" state) is not in the readable state and cannot be closed\");\n }\n ReadableByteStreamControllerClose(this);\n };\n ReadableByteStreamController.prototype.enqueue = function (chunk) {\n if (!IsReadableByteStreamController(this)) {\n throw byteStreamControllerBrandCheckException('enqueue');\n }\n assertRequiredArgument(chunk, 1, 'enqueue');\n if (!ArrayBuffer.isView(chunk)) {\n throw new TypeError('chunk must be an array buffer view');\n }\n if (chunk.byteLength === 0) {\n throw new TypeError('chunk must have non-zero byteLength');\n }\n if (chunk.buffer.byteLength === 0) {\n throw new TypeError(\"chunk's buffer must have non-zero byteLength\");\n }\n if (this._closeRequested) {\n throw new TypeError('stream is closed or draining');\n }\n var state = this._controlledReadableByteStream._state;\n if (state !== 'readable') {\n throw new TypeError(\"The stream (in \" + state + \" state) is not in the readable state and cannot be enqueued to\");\n }\n ReadableByteStreamControllerEnqueue(this, chunk);\n };\n ReadableByteStreamController.prototype.error = function (e) {\n if (e === void 0) {\n e = undefined;\n }\n if (!IsReadableByteStreamController(this)) {\n throw byteStreamControllerBrandCheckException('error');\n }\n ReadableByteStreamControllerError(this, e);\n };\n ReadableByteStreamController.prototype[CancelSteps] = function (reason) {\n ReadableByteStreamControllerClearPendingPullIntos(this);\n ResetQueue(this);\n var result = this._cancelAlgorithm(reason);\n ReadableByteStreamControllerClearAlgorithms(this);\n return result;\n };\n ReadableByteStreamController.prototype[PullSteps] = function (readRequest) {\n var stream = this._controlledReadableByteStream;\n if (this._queueTotalSize > 0) {\n var entry = this._queue.shift();\n this._queueTotalSize -= entry.byteLength;\n ReadableByteStreamControllerHandleQueueDrain(this);\n var view = new Uint8Array(entry.buffer, entry.byteOffset, entry.byteLength);\n readRequest._chunkSteps(view);\n return;\n }\n var autoAllocateChunkSize = this._autoAllocateChunkSize;\n if (autoAllocateChunkSize !== undefined) {\n var buffer = void 0;\n try {\n buffer = new ArrayBuffer(autoAllocateChunkSize);\n } catch (bufferE) {\n readRequest._errorSteps(bufferE);\n return;\n }\n var pullIntoDescriptor = {\n buffer: buffer,\n bufferByteLength: autoAllocateChunkSize,\n byteOffset: 0,\n byteLength: autoAllocateChunkSize,\n bytesFilled: 0,\n elementSize: 1,\n viewConstructor: Uint8Array,\n readerType: 'default'\n };\n this._pendingPullIntos.push(pullIntoDescriptor);\n }\n ReadableStreamAddReadRequest(stream, readRequest);\n ReadableByteStreamControllerCallPullIfNeeded(this);\n };\n return ReadableByteStreamController;\n }();\n Object.defineProperties(ReadableByteStreamController.prototype, {\n close: { enumerable: true },\n enqueue: { enumerable: true },\n error: { enumerable: true },\n byobRequest: { enumerable: true },\n desiredSize: { enumerable: true }\n });\n if (typeof SymbolPolyfill.toStringTag === 'symbol') {\n Object.defineProperty(ReadableByteStreamController.prototype, SymbolPolyfill.toStringTag, {\n value: 'ReadableByteStreamController',\n configurable: true\n });\n }\n function IsReadableByteStreamController(x) {\n if (!typeIsObject(x)) {\n return false;\n }\n if (!Object.prototype.hasOwnProperty.call(x, '_controlledReadableByteStream')) {\n return false;\n }\n return x instanceof ReadableByteStreamController;\n }\n function IsReadableStreamBYOBRequest(x) {\n if (!typeIsObject(x)) {\n return false;\n }\n if (!Object.prototype.hasOwnProperty.call(x, '_associatedReadableByteStreamController')) {\n return false;\n }\n return x instanceof ReadableStreamBYOBRequest;\n }\n function ReadableByteStreamControllerCallPullIfNeeded(controller) {\n var shouldPull = ReadableByteStreamControllerShouldCallPull(controller);\n if (!shouldPull) {\n return;\n }\n if (controller._pulling) {\n controller._pullAgain = true;\n return;\n }\n controller._pulling = true;\n var pullPromise = controller._pullAlgorithm();\n uponPromise(pullPromise, function () {\n controller._pulling = false;\n if (controller._pullAgain) {\n controller._pullAgain = false;\n ReadableByteStreamControllerCallPullIfNeeded(controller);\n }\n }, function (e) {\n ReadableByteStreamControllerError(controller, e);\n });\n }\n function ReadableByteStreamControllerClearPendingPullIntos(controller) {\n ReadableByteStreamControllerInvalidateBYOBRequest(controller);\n controller._pendingPullIntos = new SimpleQueue();\n }\n function ReadableByteStreamControllerCommitPullIntoDescriptor(stream, pullIntoDescriptor) {\n var done = false;\n if (stream._state === 'closed') {\n done = true;\n }\n var filledView = ReadableByteStreamControllerConvertPullIntoDescriptor(pullIntoDescriptor);\n if (pullIntoDescriptor.readerType === 'default') {\n ReadableStreamFulfillReadRequest(stream, filledView, done);\n } else {\n ReadableStreamFulfillReadIntoRequest(stream, filledView, done);\n }\n }\n function ReadableByteStreamControllerConvertPullIntoDescriptor(pullIntoDescriptor) {\n var bytesFilled = pullIntoDescriptor.bytesFilled;\n var elementSize = pullIntoDescriptor.elementSize;\n return new pullIntoDescriptor.viewConstructor(pullIntoDescriptor.buffer, pullIntoDescriptor.byteOffset, bytesFilled / elementSize);\n }\n function ReadableByteStreamControllerEnqueueChunkToQueue(controller, buffer, byteOffset, byteLength) {\n controller._queue.push({\n buffer: buffer,\n byteOffset: byteOffset,\n byteLength: byteLength\n });\n controller._queueTotalSize += byteLength;\n }\n function ReadableByteStreamControllerFillPullIntoDescriptorFromQueue(controller, pullIntoDescriptor) {\n var elementSize = pullIntoDescriptor.elementSize;\n var currentAlignedBytes = pullIntoDescriptor.bytesFilled - pullIntoDescriptor.bytesFilled % elementSize;\n var maxBytesToCopy = Math.min(controller._queueTotalSize, pullIntoDescriptor.byteLength - pullIntoDescriptor.bytesFilled);\n var maxBytesFilled = pullIntoDescriptor.bytesFilled + maxBytesToCopy;\n var maxAlignedBytes = maxBytesFilled - maxBytesFilled % elementSize;\n var totalBytesToCopyRemaining = maxBytesToCopy;\n var ready = false;\n if (maxAlignedBytes > currentAlignedBytes) {\n totalBytesToCopyRemaining = maxAlignedBytes - pullIntoDescriptor.bytesFilled;\n ready = true;\n }\n var queue = controller._queue;\n while (totalBytesToCopyRemaining > 0) {\n var headOfQueue = queue.peek();\n var bytesToCopy = Math.min(totalBytesToCopyRemaining, headOfQueue.byteLength);\n var destStart = pullIntoDescriptor.byteOffset + pullIntoDescriptor.bytesFilled;\n CopyDataBlockBytes(pullIntoDescriptor.buffer, destStart, headOfQueue.buffer, headOfQueue.byteOffset, bytesToCopy);\n if (headOfQueue.byteLength === bytesToCopy) {\n queue.shift();\n } else {\n headOfQueue.byteOffset += bytesToCopy;\n headOfQueue.byteLength -= bytesToCopy;\n }\n controller._queueTotalSize -= bytesToCopy;\n ReadableByteStreamControllerFillHeadPullIntoDescriptor(controller, bytesToCopy, pullIntoDescriptor);\n totalBytesToCopyRemaining -= bytesToCopy;\n }\n return ready;\n }\n function ReadableByteStreamControllerFillHeadPullIntoDescriptor(controller, size, pullIntoDescriptor) {\n pullIntoDescriptor.bytesFilled += size;\n }\n function ReadableByteStreamControllerHandleQueueDrain(controller) {\n if (controller._queueTotalSize === 0 && controller._closeRequested) {\n ReadableByteStreamControllerClearAlgorithms(controller);\n ReadableStreamClose(controller._controlledReadableByteStream);\n } else {\n ReadableByteStreamControllerCallPullIfNeeded(controller);\n }\n }\n function ReadableByteStreamControllerInvalidateBYOBRequest(controller) {\n if (controller._byobRequest === null) {\n return;\n }\n controller._byobRequest._associatedReadableByteStreamController = undefined;\n controller._byobRequest._view = null;\n controller._byobRequest = null;\n }\n function ReadableByteStreamControllerProcessPullIntoDescriptorsUsingQueue(controller) {\n while (controller._pendingPullIntos.length > 0) {\n if (controller._queueTotalSize === 0) {\n return;\n }\n var pullIntoDescriptor = controller._pendingPullIntos.peek();\n if (ReadableByteStreamControllerFillPullIntoDescriptorFromQueue(controller, pullIntoDescriptor)) {\n ReadableByteStreamControllerShiftPendingPullInto(controller);\n ReadableByteStreamControllerCommitPullIntoDescriptor(controller._controlledReadableByteStream, pullIntoDescriptor);\n }\n }\n }\n function ReadableByteStreamControllerPullInto(controller, view, readIntoRequest) {\n var stream = controller._controlledReadableByteStream;\n var elementSize = 1;\n if (view.constructor !== DataView) {\n elementSize = view.constructor.BYTES_PER_ELEMENT;\n }\n var ctor = view.constructor;\n var buffer = TransferArrayBuffer(view.buffer);\n var pullIntoDescriptor = {\n buffer: buffer,\n bufferByteLength: buffer.byteLength,\n byteOffset: view.byteOffset,\n byteLength: view.byteLength,\n bytesFilled: 0,\n elementSize: elementSize,\n viewConstructor: ctor,\n readerType: 'byob'\n };\n if (controller._pendingPullIntos.length > 0) {\n controller._pendingPullIntos.push(pullIntoDescriptor);\n ReadableStreamAddReadIntoRequest(stream, readIntoRequest);\n return;\n }\n if (stream._state === 'closed') {\n var emptyView = new ctor(pullIntoDescriptor.buffer, pullIntoDescriptor.byteOffset, 0);\n readIntoRequest._closeSteps(emptyView);\n return;\n }\n if (controller._queueTotalSize > 0) {\n if (ReadableByteStreamControllerFillPullIntoDescriptorFromQueue(controller, pullIntoDescriptor)) {\n var filledView = ReadableByteStreamControllerConvertPullIntoDescriptor(pullIntoDescriptor);\n ReadableByteStreamControllerHandleQueueDrain(controller);\n readIntoRequest._chunkSteps(filledView);\n return;\n }\n if (controller._closeRequested) {\n var e = new TypeError('Insufficient bytes to fill elements in the given buffer');\n ReadableByteStreamControllerError(controller, e);\n readIntoRequest._errorSteps(e);\n return;\n }\n }\n controller._pendingPullIntos.push(pullIntoDescriptor);\n ReadableStreamAddReadIntoRequest(stream, readIntoRequest);\n ReadableByteStreamControllerCallPullIfNeeded(controller);\n }\n function ReadableByteStreamControllerRespondInClosedState(controller, firstDescriptor) {\n var stream = controller._controlledReadableByteStream;\n if (ReadableStreamHasBYOBReader(stream)) {\n while (ReadableStreamGetNumReadIntoRequests(stream) > 0) {\n var pullIntoDescriptor = ReadableByteStreamControllerShiftPendingPullInto(controller);\n ReadableByteStreamControllerCommitPullIntoDescriptor(stream, pullIntoDescriptor);\n }\n }\n }\n function ReadableByteStreamControllerRespondInReadableState(controller, bytesWritten, pullIntoDescriptor) {\n ReadableByteStreamControllerFillHeadPullIntoDescriptor(controller, bytesWritten, pullIntoDescriptor);\n if (pullIntoDescriptor.bytesFilled < pullIntoDescriptor.elementSize) {\n return;\n }\n ReadableByteStreamControllerShiftPendingPullInto(controller);\n var remainderSize = pullIntoDescriptor.bytesFilled % pullIntoDescriptor.elementSize;\n if (remainderSize > 0) {\n var end = pullIntoDescriptor.byteOffset + pullIntoDescriptor.bytesFilled;\n var remainder = ArrayBufferSlice(pullIntoDescriptor.buffer, end - remainderSize, end);\n ReadableByteStreamControllerEnqueueChunkToQueue(controller, remainder, 0, remainder.byteLength);\n }\n pullIntoDescriptor.bytesFilled -= remainderSize;\n ReadableByteStreamControllerCommitPullIntoDescriptor(controller._controlledReadableByteStream, pullIntoDescriptor);\n ReadableByteStreamControllerProcessPullIntoDescriptorsUsingQueue(controller);\n }\n function ReadableByteStreamControllerRespondInternal(controller, bytesWritten) {\n var firstDescriptor = controller._pendingPullIntos.peek();\n ReadableByteStreamControllerInvalidateBYOBRequest(controller);\n var state = controller._controlledReadableByteStream._state;\n if (state === 'closed') {\n ReadableByteStreamControllerRespondInClosedState(controller);\n } else {\n ReadableByteStreamControllerRespondInReadableState(controller, bytesWritten, firstDescriptor);\n }\n ReadableByteStreamControllerCallPullIfNeeded(controller);\n }\n function ReadableByteStreamControllerShiftPendingPullInto(controller) {\n var descriptor = controller._pendingPullIntos.shift();\n return descriptor;\n }\n function ReadableByteStreamControllerShouldCallPull(controller) {\n var stream = controller._controlledReadableByteStream;\n if (stream._state !== 'readable') {\n return false;\n }\n if (controller._closeRequested) {\n return false;\n }\n if (!controller._started) {\n return false;\n }\n if (ReadableStreamHasDefaultReader(stream) && ReadableStreamGetNumReadRequests(stream) > 0) {\n return true;\n }\n if (ReadableStreamHasBYOBReader(stream) && ReadableStreamGetNumReadIntoRequests(stream) > 0) {\n return true;\n }\n var desiredSize = ReadableByteStreamControllerGetDesiredSize(controller);\n if (desiredSize > 0) {\n return true;\n }\n return false;\n }\n function ReadableByteStreamControllerClearAlgorithms(controller) {\n controller._pullAlgorithm = undefined;\n controller._cancelAlgorithm = undefined;\n }\n function ReadableByteStreamControllerClose(controller) {\n var stream = controller._controlledReadableByteStream;\n if (controller._closeRequested || stream._state !== 'readable') {\n return;\n }\n if (controller._queueTotalSize > 0) {\n controller._closeRequested = true;\n return;\n }\n if (controller._pendingPullIntos.length > 0) {\n var firstPendingPullInto = controller._pendingPullIntos.peek();\n if (firstPendingPullInto.bytesFilled > 0) {\n var e = new TypeError('Insufficient bytes to fill elements in the given buffer');\n ReadableByteStreamControllerError(controller, e);\n throw e;\n }\n }\n ReadableByteStreamControllerClearAlgorithms(controller);\n ReadableStreamClose(stream);\n }\n function ReadableByteStreamControllerEnqueue(controller, chunk) {\n var stream = controller._controlledReadableByteStream;\n if (controller._closeRequested || stream._state !== 'readable') {\n return;\n }\n var buffer = chunk.buffer;\n var byteOffset = chunk.byteOffset;\n var byteLength = chunk.byteLength;\n var transferredBuffer = TransferArrayBuffer(buffer);\n if (controller._pendingPullIntos.length > 0) {\n var firstPendingPullInto = controller._pendingPullIntos.peek();\n if (IsDetachedBuffer(firstPendingPullInto.buffer));\n firstPendingPullInto.buffer = TransferArrayBuffer(firstPendingPullInto.buffer);\n }\n ReadableByteStreamControllerInvalidateBYOBRequest(controller);\n if (ReadableStreamHasDefaultReader(stream)) {\n if (ReadableStreamGetNumReadRequests(stream) === 0) {\n ReadableByteStreamControllerEnqueueChunkToQueue(controller, transferredBuffer, byteOffset, byteLength);\n } else {\n var transferredView = new Uint8Array(transferredBuffer, byteOffset, byteLength);\n ReadableStreamFulfillReadRequest(stream, transferredView, false);\n }\n } else if (ReadableStreamHasBYOBReader(stream)) {\n ReadableByteStreamControllerEnqueueChunkToQueue(controller, transferredBuffer, byteOffset, byteLength);\n ReadableByteStreamControllerProcessPullIntoDescriptorsUsingQueue(controller);\n } else {\n ReadableByteStreamControllerEnqueueChunkToQueue(controller, transferredBuffer, byteOffset, byteLength);\n }\n ReadableByteStreamControllerCallPullIfNeeded(controller);\n }\n function ReadableByteStreamControllerError(controller, e) {\n var stream = controller._controlledReadableByteStream;\n if (stream._state !== 'readable') {\n return;\n }\n ReadableByteStreamControllerClearPendingPullIntos(controller);\n ResetQueue(controller);\n ReadableByteStreamControllerClearAlgorithms(controller);\n ReadableStreamError(stream, e);\n }\n function ReadableByteStreamControllerGetBYOBRequest(controller) {\n if (controller._byobRequest === null && controller._pendingPullIntos.length > 0) {\n var firstDescriptor = controller._pendingPullIntos.peek();\n var view = new Uint8Array(firstDescriptor.buffer, firstDescriptor.byteOffset + firstDescriptor.bytesFilled, firstDescriptor.byteLength - firstDescriptor.bytesFilled);\n var byobRequest = Object.create(ReadableStreamBYOBRequest.prototype);\n SetUpReadableStreamBYOBRequest(byobRequest, controller, view);\n controller._byobRequest = byobRequest;\n }\n return controller._byobRequest;\n }\n function ReadableByteStreamControllerGetDesiredSize(controller) {\n var state = controller._controlledReadableByteStream._state;\n if (state === 'errored') {\n return null;\n }\n if (state === 'closed') {\n return 0;\n }\n return controller._strategyHWM - controller._queueTotalSize;\n }\n function ReadableByteStreamControllerRespond(controller, bytesWritten) {\n var firstDescriptor = controller._pendingPullIntos.peek();\n var state = controller._controlledReadableByteStream._state;\n if (state === 'closed') {\n if (bytesWritten !== 0) {\n throw new TypeError('bytesWritten must be 0 when calling respond() on a closed stream');\n }\n } else {\n if (bytesWritten === 0) {\n throw new TypeError('bytesWritten must be greater than 0 when calling respond() on a readable stream');\n }\n if (firstDescriptor.bytesFilled + bytesWritten > firstDescriptor.byteLength) {\n throw new RangeError('bytesWritten out of range');\n }\n }\n firstDescriptor.buffer = TransferArrayBuffer(firstDescriptor.buffer);\n ReadableByteStreamControllerRespondInternal(controller, bytesWritten);\n }\n function ReadableByteStreamControllerRespondWithNewView(controller, view) {\n var firstDescriptor = controller._pendingPullIntos.peek();\n var state = controller._controlledReadableByteStream._state;\n if (state === 'closed') {\n if (view.byteLength !== 0) {\n throw new TypeError('The view\\'s length must be 0 when calling respondWithNewView() on a closed stream');\n }\n } else {\n if (view.byteLength === 0) {\n throw new TypeError('The view\\'s length must be greater than 0 when calling respondWithNewView() on a readable stream');\n }\n }\n if (firstDescriptor.byteOffset + firstDescriptor.bytesFilled !== view.byteOffset) {\n throw new RangeError('The region specified by view does not match byobRequest');\n }\n if (firstDescriptor.bufferByteLength !== view.buffer.byteLength) {\n throw new RangeError('The buffer of view has different capacity than byobRequest');\n }\n if (firstDescriptor.bytesFilled + view.byteLength > firstDescriptor.byteLength) {\n throw new RangeError('The region specified by view is larger than byobRequest');\n }\n firstDescriptor.buffer = TransferArrayBuffer(view.buffer);\n ReadableByteStreamControllerRespondInternal(controller, view.byteLength);\n }\n function SetUpReadableByteStreamController(stream, controller, startAlgorithm, pullAlgorithm, cancelAlgorithm, highWaterMark, autoAllocateChunkSize) {\n controller._controlledReadableByteStream = stream;\n controller._pullAgain = false;\n controller._pulling = false;\n controller._byobRequest = null;\n controller._queue = controller._queueTotalSize = undefined;\n ResetQueue(controller);\n controller._closeRequested = false;\n controller._started = false;\n controller._strategyHWM = highWaterMark;\n controller._pullAlgorithm = pullAlgorithm;\n controller._cancelAlgorithm = cancelAlgorithm;\n controller._autoAllocateChunkSize = autoAllocateChunkSize;\n controller._pendingPullIntos = new SimpleQueue();\n stream._readableStreamController = controller;\n var startResult = startAlgorithm();\n uponPromise(promiseResolvedWith(startResult), function () {\n controller._started = true;\n ReadableByteStreamControllerCallPullIfNeeded(controller);\n }, function (r) {\n ReadableByteStreamControllerError(controller, r);\n });\n }\n function SetUpReadableByteStreamControllerFromUnderlyingSource(stream, underlyingByteSource, highWaterMark) {\n var controller = Object.create(ReadableByteStreamController.prototype);\n var startAlgorithm = function () {\n return undefined;\n };\n var pullAlgorithm = function () {\n return promiseResolvedWith(undefined);\n };\n var cancelAlgorithm = function () {\n return promiseResolvedWith(undefined);\n };\n if (underlyingByteSource.start !== undefined) {\n startAlgorithm = function () {\n return underlyingByteSource.start(controller);\n };\n }\n if (underlyingByteSource.pull !== undefined) {\n pullAlgorithm = function () {\n return underlyingByteSource.pull(controller);\n };\n }\n if (underlyingByteSource.cancel !== undefined) {\n cancelAlgorithm = function (reason) {\n return underlyingByteSource.cancel(reason);\n };\n }\n var autoAllocateChunkSize = underlyingByteSource.autoAllocateChunkSize;\n if (autoAllocateChunkSize === 0) {\n throw new TypeError('autoAllocateChunkSize must be greater than 0');\n }\n SetUpReadableByteStreamController(stream, controller, startAlgorithm, pullAlgorithm, cancelAlgorithm, highWaterMark, autoAllocateChunkSize);\n }\n function SetUpReadableStreamBYOBRequest(request, controller, view) {\n request._associatedReadableByteStreamController = controller;\n request._view = view;\n }\n function byobRequestBrandCheckException(name) {\n return new TypeError(\"ReadableStreamBYOBRequest.prototype.\" + name + \" can only be used on a ReadableStreamBYOBRequest\");\n }\n function byteStreamControllerBrandCheckException(name) {\n return new TypeError(\"ReadableByteStreamController.prototype.\" + name + \" can only be used on a ReadableByteStreamController\");\n }\n function AcquireReadableStreamBYOBReader(stream) {\n return new ReadableStreamBYOBReader(stream);\n }\n function ReadableStreamAddReadIntoRequest(stream, readIntoRequest) {\n stream._reader._readIntoRequests.push(readIntoRequest);\n }\n function ReadableStreamFulfillReadIntoRequest(stream, chunk, done) {\n var reader = stream._reader;\n var readIntoRequest = reader._readIntoRequests.shift();\n if (done) {\n readIntoRequest._closeSteps(chunk);\n } else {\n readIntoRequest._chunkSteps(chunk);\n }\n }\n function ReadableStreamGetNumReadIntoRequests(stream) {\n return stream._reader._readIntoRequests.length;\n }\n function ReadableStreamHasBYOBReader(stream) {\n var reader = stream._reader;\n if (reader === undefined) {\n return false;\n }\n if (!IsReadableStreamBYOBReader(reader)) {\n return false;\n }\n return true;\n }\n var ReadableStreamBYOBReader = function () {\n function ReadableStreamBYOBReader(stream) {\n assertRequiredArgument(stream, 1, 'ReadableStreamBYOBReader');\n assertReadableStream(stream, 'First parameter');\n if (IsReadableStreamLocked(stream)) {\n throw new TypeError('This stream has already been locked for exclusive reading by another reader');\n }\n if (!IsReadableByteStreamController(stream._readableStreamController)) {\n throw new TypeError('Cannot construct a ReadableStreamBYOBReader for a stream not constructed with a byte ' + 'source');\n }\n ReadableStreamReaderGenericInitialize(this, stream);\n this._readIntoRequests = new SimpleQueue();\n }\n Object.defineProperty(ReadableStreamBYOBReader.prototype, \"closed\", {\n get: function () {\n if (!IsReadableStreamBYOBReader(this)) {\n return promiseRejectedWith(byobReaderBrandCheckException('closed'));\n }\n return this._closedPromise;\n },\n enumerable: false,\n configurable: true\n });\n ReadableStreamBYOBReader.prototype.cancel = function (reason) {\n if (reason === void 0) {\n reason = undefined;\n }\n if (!IsReadableStreamBYOBReader(this)) {\n return promiseRejectedWith(byobReaderBrandCheckException('cancel'));\n }\n if (this._ownerReadableStream === undefined) {\n return promiseRejectedWith(readerLockException('cancel'));\n }\n return ReadableStreamReaderGenericCancel(this, reason);\n };\n ReadableStreamBYOBReader.prototype.read = function (view) {\n if (!IsReadableStreamBYOBReader(this)) {\n return promiseRejectedWith(byobReaderBrandCheckException('read'));\n }\n if (!ArrayBuffer.isView(view)) {\n return promiseRejectedWith(new TypeError('view must be an array buffer view'));\n }\n if (view.byteLength === 0) {\n return promiseRejectedWith(new TypeError('view must have non-zero byteLength'));\n }\n if (view.buffer.byteLength === 0) {\n return promiseRejectedWith(new TypeError(\"view's buffer must have non-zero byteLength\"));\n }\n if (IsDetachedBuffer(view.buffer));\n if (this._ownerReadableStream === undefined) {\n return promiseRejectedWith(readerLockException('read from'));\n }\n var resolvePromise;\n var rejectPromise;\n var promise = newPromise(function (resolve, reject) {\n resolvePromise = resolve;\n rejectPromise = reject;\n });\n var readIntoRequest = {\n _chunkSteps: function (chunk) {\n return resolvePromise({\n value: chunk,\n done: false\n });\n },\n _closeSteps: function (chunk) {\n return resolvePromise({\n value: chunk,\n done: true\n });\n },\n _errorSteps: function (e) {\n return rejectPromise(e);\n }\n };\n ReadableStreamBYOBReaderRead(this, view, readIntoRequest);\n return promise;\n };\n ReadableStreamBYOBReader.prototype.releaseLock = function () {\n if (!IsReadableStreamBYOBReader(this)) {\n throw byobReaderBrandCheckException('releaseLock');\n }\n if (this._ownerReadableStream === undefined) {\n return;\n }\n if (this._readIntoRequests.length > 0) {\n throw new TypeError('Tried to release a reader lock when that reader has pending read() calls un-settled');\n }\n ReadableStreamReaderGenericRelease(this);\n };\n return ReadableStreamBYOBReader;\n }();\n Object.defineProperties(ReadableStreamBYOBReader.prototype, {\n cancel: { enumerable: true },\n read: { enumerable: true },\n releaseLock: { enumerable: true },\n closed: { enumerable: true }\n });\n if (typeof SymbolPolyfill.toStringTag === 'symbol') {\n Object.defineProperty(ReadableStreamBYOBReader.prototype, SymbolPolyfill.toStringTag, {\n value: 'ReadableStreamBYOBReader',\n configurable: true\n });\n }\n function IsReadableStreamBYOBReader(x) {\n if (!typeIsObject(x)) {\n return false;\n }\n if (!Object.prototype.hasOwnProperty.call(x, '_readIntoRequests')) {\n return false;\n }\n return x instanceof ReadableStreamBYOBReader;\n }\n function ReadableStreamBYOBReaderRead(reader, view, readIntoRequest) {\n var stream = reader._ownerReadableStream;\n stream._disturbed = true;\n if (stream._state === 'errored') {\n readIntoRequest._errorSteps(stream._storedError);\n } else {\n ReadableByteStreamControllerPullInto(stream._readableStreamController, view, readIntoRequest);\n }\n }\n function byobReaderBrandCheckException(name) {\n return new TypeError(\"ReadableStreamBYOBReader.prototype.\" + name + \" can only be used on a ReadableStreamBYOBReader\");\n }\n function ExtractHighWaterMark(strategy, defaultHWM) {\n var highWaterMark = strategy.highWaterMark;\n if (highWaterMark === undefined) {\n return defaultHWM;\n }\n if (NumberIsNaN(highWaterMark) || highWaterMark < 0) {\n throw new RangeError('Invalid highWaterMark');\n }\n return highWaterMark;\n }\n function ExtractSizeAlgorithm(strategy) {\n var size = strategy.size;\n if (!size) {\n return function () {\n return 1;\n };\n }\n return size;\n }\n function convertQueuingStrategy(init, context) {\n assertDictionary(init, context);\n var highWaterMark = init === null || init === void 0 ? void 0 : init.highWaterMark;\n var size = init === null || init === void 0 ? void 0 : init.size;\n return {\n highWaterMark: highWaterMark === undefined ? undefined : convertUnrestrictedDouble(highWaterMark),\n size: size === undefined ? undefined : convertQueuingStrategySize(size, context + \" has member 'size' that\")\n };\n }\n function convertQueuingStrategySize(fn, context) {\n assertFunction(fn, context);\n return function (chunk) {\n return convertUnrestrictedDouble(fn(chunk));\n };\n }\n function convertUnderlyingSink(original, context) {\n assertDictionary(original, context);\n var abort = original === null || original === void 0 ? void 0 : original.abort;\n var close = original === null || original === void 0 ? void 0 : original.close;\n var start = original === null || original === void 0 ? void 0 : original.start;\n var type = original === null || original === void 0 ? void 0 : original.type;\n var write = original === null || original === void 0 ? void 0 : original.write;\n return {\n abort: abort === undefined ? undefined : convertUnderlyingSinkAbortCallback(abort, original, context + \" has member 'abort' that\"),\n close: close === undefined ? undefined : convertUnderlyingSinkCloseCallback(close, original, context + \" has member 'close' that\"),\n start: start === undefined ? undefined : convertUnderlyingSinkStartCallback(start, original, context + \" has member 'start' that\"),\n write: write === undefined ? undefined : convertUnderlyingSinkWriteCallback(write, original, context + \" has member 'write' that\"),\n type: type\n };\n }\n function convertUnderlyingSinkAbortCallback(fn, original, context) {\n assertFunction(fn, context);\n return function (reason) {\n return promiseCall(fn, original, [reason]);\n };\n }\n function convertUnderlyingSinkCloseCallback(fn, original, context) {\n assertFunction(fn, context);\n return function () {\n return promiseCall(fn, original, []);\n };\n }\n function convertUnderlyingSinkStartCallback(fn, original, context) {\n assertFunction(fn, context);\n return function (controller) {\n return reflectCall(fn, original, [controller]);\n };\n }\n function convertUnderlyingSinkWriteCallback(fn, original, context) {\n assertFunction(fn, context);\n return function (chunk, controller) {\n return promiseCall(fn, original, [\n chunk,\n controller\n ]);\n };\n }\n function assertWritableStream(x, context) {\n if (!IsWritableStream(x)) {\n throw new TypeError(context + \" is not a WritableStream.\");\n }\n }\n function isAbortSignal(value) {\n if (typeof value !== 'object' || value === null) {\n return false;\n }\n try {\n return typeof value.aborted === 'boolean';\n } catch (_a) {\n return false;\n }\n }\n var supportsAbortController = typeof AbortController === 'function';\n function createAbortController() {\n if (supportsAbortController) {\n return new AbortController();\n }\n return undefined;\n }\n var WritableStream = function () {\n function WritableStream(rawUnderlyingSink, rawStrategy) {\n if (rawUnderlyingSink === void 0) {\n rawUnderlyingSink = {};\n }\n if (rawStrategy === void 0) {\n rawStrategy = {};\n }\n if (rawUnderlyingSink === undefined) {\n rawUnderlyingSink = null;\n } else {\n assertObject(rawUnderlyingSink, 'First parameter');\n }\n var strategy = convertQueuingStrategy(rawStrategy, 'Second parameter');\n var underlyingSink = convertUnderlyingSink(rawUnderlyingSink, 'First parameter');\n InitializeWritableStream(this);\n var type = underlyingSink.type;\n if (type !== undefined) {\n throw new RangeError('Invalid type is specified');\n }\n var sizeAlgorithm = ExtractSizeAlgorithm(strategy);\n var highWaterMark = ExtractHighWaterMark(strategy, 1);\n SetUpWritableStreamDefaultControllerFromUnderlyingSink(this, underlyingSink, highWaterMark, sizeAlgorithm);\n }\n Object.defineProperty(WritableStream.prototype, \"locked\", {\n get: function () {\n if (!IsWritableStream(this)) {\n throw streamBrandCheckException$2('locked');\n }\n return IsWritableStreamLocked(this);\n },\n enumerable: false,\n configurable: true\n });\n WritableStream.prototype.abort = function (reason) {\n if (reason === void 0) {\n reason = undefined;\n }\n if (!IsWritableStream(this)) {\n return promiseRejectedWith(streamBrandCheckException$2('abort'));\n }\n if (IsWritableStreamLocked(this)) {\n return promiseRejectedWith(new TypeError('Cannot abort a stream that already has a writer'));\n }\n return WritableStreamAbort(this, reason);\n };\n WritableStream.prototype.close = function () {\n if (!IsWritableStream(this)) {\n return promiseRejectedWith(streamBrandCheckException$2('close'));\n }\n if (IsWritableStreamLocked(this)) {\n return promiseRejectedWith(new TypeError('Cannot close a stream that already has a writer'));\n }\n if (WritableStreamCloseQueuedOrInFlight(this)) {\n return promiseRejectedWith(new TypeError('Cannot close an already-closing stream'));\n }\n return WritableStreamClose(this);\n };\n WritableStream.prototype.getWriter = function () {\n if (!IsWritableStream(this)) {\n throw streamBrandCheckException$2('getWriter');\n }\n return AcquireWritableStreamDefaultWriter(this);\n };\n return WritableStream;\n }();\n Object.defineProperties(WritableStream.prototype, {\n abort: { enumerable: true },\n close: { enumerable: true },\n getWriter: { enumerable: true },\n locked: { enumerable: true }\n });\n if (typeof SymbolPolyfill.toStringTag === 'symbol') {\n Object.defineProperty(WritableStream.prototype, SymbolPolyfill.toStringTag, {\n value: 'WritableStream',\n configurable: true\n });\n }\n function AcquireWritableStreamDefaultWriter(stream) {\n return new WritableStreamDefaultWriter(stream);\n }\n function CreateWritableStream(startAlgorithm, writeAlgorithm, closeAlgorithm, abortAlgorithm, highWaterMark, sizeAlgorithm) {\n if (highWaterMark === void 0) {\n highWaterMark = 1;\n }\n if (sizeAlgorithm === void 0) {\n sizeAlgorithm = function () {\n return 1;\n };\n }\n var stream = Object.create(WritableStream.prototype);\n InitializeWritableStream(stream);\n var controller = Object.create(WritableStreamDefaultController.prototype);\n SetUpWritableStreamDefaultController(stream, controller, startAlgorithm, writeAlgorithm, closeAlgorithm, abortAlgorithm, highWaterMark, sizeAlgorithm);\n return stream;\n }\n function InitializeWritableStream(stream) {\n stream._state = 'writable';\n stream._storedError = undefined;\n stream._writer = undefined;\n stream._writableStreamController = undefined;\n stream._writeRequests = new SimpleQueue();\n stream._inFlightWriteRequest = undefined;\n stream._closeRequest = undefined;\n stream._inFlightCloseRequest = undefined;\n stream._pendingAbortRequest = undefined;\n stream._backpressure = false;\n }\n function IsWritableStream(x) {\n if (!typeIsObject(x)) {\n return false;\n }\n if (!Object.prototype.hasOwnProperty.call(x, '_writableStreamController')) {\n return false;\n }\n return x instanceof WritableStream;\n }\n function IsWritableStreamLocked(stream) {\n if (stream._writer === undefined) {\n return false;\n }\n return true;\n }\n function WritableStreamAbort(stream, reason) {\n var _a;\n if (stream._state === 'closed' || stream._state === 'errored') {\n return promiseResolvedWith(undefined);\n }\n stream._writableStreamController._abortReason = reason;\n (_a = stream._writableStreamController._abortController) === null || _a === void 0 ? void 0 : _a.abort();\n var state = stream._state;\n if (state === 'closed' || state === 'errored') {\n return promiseResolvedWith(undefined);\n }\n if (stream._pendingAbortRequest !== undefined) {\n return stream._pendingAbortRequest._promise;\n }\n var wasAlreadyErroring = false;\n if (state === 'erroring') {\n wasAlreadyErroring = true;\n reason = undefined;\n }\n var promise = newPromise(function (resolve, reject) {\n stream._pendingAbortRequest = {\n _promise: undefined,\n _resolve: resolve,\n _reject: reject,\n _reason: reason,\n _wasAlreadyErroring: wasAlreadyErroring\n };\n });\n stream._pendingAbortRequest._promise = promise;\n if (!wasAlreadyErroring) {\n WritableStreamStartErroring(stream, reason);\n }\n return promise;\n }\n function WritableStreamClose(stream) {\n var state = stream._state;\n if (state === 'closed' || state === 'errored') {\n return promiseRejectedWith(new TypeError(\"The stream (in \" + state + \" state) is not in the writable state and cannot be closed\"));\n }\n var promise = newPromise(function (resolve, reject) {\n var closeRequest = {\n _resolve: resolve,\n _reject: reject\n };\n stream._closeRequest = closeRequest;\n });\n var writer = stream._writer;\n if (writer !== undefined && stream._backpressure && state === 'writable') {\n defaultWriterReadyPromiseResolve(writer);\n }\n WritableStreamDefaultControllerClose(stream._writableStreamController);\n return promise;\n }\n function WritableStreamAddWriteRequest(stream) {\n var promise = newPromise(function (resolve, reject) {\n var writeRequest = {\n _resolve: resolve,\n _reject: reject\n };\n stream._writeRequests.push(writeRequest);\n });\n return promise;\n }\n function WritableStreamDealWithRejection(stream, error) {\n var state = stream._state;\n if (state === 'writable') {\n WritableStreamStartErroring(stream, error);\n return;\n }\n WritableStreamFinishErroring(stream);\n }\n function WritableStreamStartErroring(stream, reason) {\n var controller = stream._writableStreamController;\n stream._state = 'erroring';\n stream._storedError = reason;\n var writer = stream._writer;\n if (writer !== undefined) {\n WritableStreamDefaultWriterEnsureReadyPromiseRejected(writer, reason);\n }\n if (!WritableStreamHasOperationMarkedInFlight(stream) && controller._started) {\n WritableStreamFinishErroring(stream);\n }\n }\n function WritableStreamFinishErroring(stream) {\n stream._state = 'errored';\n stream._writableStreamController[ErrorSteps]();\n var storedError = stream._storedError;\n stream._writeRequests.forEach(function (writeRequest) {\n writeRequest._reject(storedError);\n });\n stream._writeRequests = new SimpleQueue();\n if (stream._pendingAbortRequest === undefined) {\n WritableStreamRejectCloseAndClosedPromiseIfNeeded(stream);\n return;\n }\n var abortRequest = stream._pendingAbortRequest;\n stream._pendingAbortRequest = undefined;\n if (abortRequest._wasAlreadyErroring) {\n abortRequest._reject(storedError);\n WritableStreamRejectCloseAndClosedPromiseIfNeeded(stream);\n return;\n }\n var promise = stream._writableStreamController[AbortSteps](abortRequest._reason);\n uponPromise(promise, function () {\n abortRequest._resolve();\n WritableStreamRejectCloseAndClosedPromiseIfNeeded(stream);\n }, function (reason) {\n abortRequest._reject(reason);\n WritableStreamRejectCloseAndClosedPromiseIfNeeded(stream);\n });\n }\n function WritableStreamFinishInFlightWrite(stream) {\n stream._inFlightWriteRequest._resolve(undefined);\n stream._inFlightWriteRequest = undefined;\n }\n function WritableStreamFinishInFlightWriteWithError(stream, error) {\n stream._inFlightWriteRequest._reject(error);\n stream._inFlightWriteRequest = undefined;\n WritableStreamDealWithRejection(stream, error);\n }\n function WritableStreamFinishInFlightClose(stream) {\n stream._inFlightCloseRequest._resolve(undefined);\n stream._inFlightCloseRequest = undefined;\n var state = stream._state;\n if (state === 'erroring') {\n stream._storedError = undefined;\n if (stream._pendingAbortRequest !== undefined) {\n stream._pendingAbortRequest._resolve();\n stream._pendingAbortRequest = undefined;\n }\n }\n stream._state = 'closed';\n var writer = stream._writer;\n if (writer !== undefined) {\n defaultWriterClosedPromiseResolve(writer);\n }\n }\n function WritableStreamFinishInFlightCloseWithError(stream, error) {\n stream._inFlightCloseRequest._reject(error);\n stream._inFlightCloseRequest = undefined;\n if (stream._pendingAbortRequest !== undefined) {\n stream._pendingAbortRequest._reject(error);\n stream._pendingAbortRequest = undefined;\n }\n WritableStreamDealWithRejection(stream, error);\n }\n function WritableStreamCloseQueuedOrInFlight(stream) {\n if (stream._closeRequest === undefined && stream._inFlightCloseRequest === undefined) {\n return false;\n }\n return true;\n }\n function WritableStreamHasOperationMarkedInFlight(stream) {\n if (stream._inFlightWriteRequest === undefined && stream._inFlightCloseRequest === undefined) {\n return false;\n }\n return true;\n }\n function WritableStreamMarkCloseRequestInFlight(stream) {\n stream._inFlightCloseRequest = stream._closeRequest;\n stream._closeRequest = undefined;\n }\n function WritableStreamMarkFirstWriteRequestInFlight(stream) {\n stream._inFlightWriteRequest = stream._writeRequests.shift();\n }\n function WritableStreamRejectCloseAndClosedPromiseIfNeeded(stream) {\n if (stream._closeRequest !== undefined) {\n stream._closeRequest._reject(stream._storedError);\n stream._closeRequest = undefined;\n }\n var writer = stream._writer;\n if (writer !== undefined) {\n defaultWriterClosedPromiseReject(writer, stream._storedError);\n }\n }\n function WritableStreamUpdateBackpressure(stream, backpressure) {\n var writer = stream._writer;\n if (writer !== undefined && backpressure !== stream._backpressure) {\n if (backpressure) {\n defaultWriterReadyPromiseReset(writer);\n } else {\n defaultWriterReadyPromiseResolve(writer);\n }\n }\n stream._backpressure = backpressure;\n }\n var WritableStreamDefaultWriter = function () {\n function WritableStreamDefaultWriter(stream) {\n assertRequiredArgument(stream, 1, 'WritableStreamDefaultWriter');\n assertWritableStream(stream, 'First parameter');\n if (IsWritableStreamLocked(stream)) {\n throw new TypeError('This stream has already been locked for exclusive writing by another writer');\n }\n this._ownerWritableStream = stream;\n stream._writer = this;\n var state = stream._state;\n if (state === 'writable') {\n if (!WritableStreamCloseQueuedOrInFlight(stream) && stream._backpressure) {\n defaultWriterReadyPromiseInitialize(this);\n } else {\n defaultWriterReadyPromiseInitializeAsResolved(this);\n }\n defaultWriterClosedPromiseInitialize(this);\n } else if (state === 'erroring') {\n defaultWriterReadyPromiseInitializeAsRejected(this, stream._storedError);\n defaultWriterClosedPromiseInitialize(this);\n } else if (state === 'closed') {\n defaultWriterReadyPromiseInitializeAsResolved(this);\n defaultWriterClosedPromiseInitializeAsResolved(this);\n } else {\n var storedError = stream._storedError;\n defaultWriterReadyPromiseInitializeAsRejected(this, storedError);\n defaultWriterClosedPromiseInitializeAsRejected(this, storedError);\n }\n }\n Object.defineProperty(WritableStreamDefaultWriter.prototype, \"closed\", {\n get: function () {\n if (!IsWritableStreamDefaultWriter(this)) {\n return promiseRejectedWith(defaultWriterBrandCheckException('closed'));\n }\n return this._closedPromise;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(WritableStreamDefaultWriter.prototype, \"desiredSize\", {\n get: function () {\n if (!IsWritableStreamDefaultWriter(this)) {\n throw defaultWriterBrandCheckException('desiredSize');\n }\n if (this._ownerWritableStream === undefined) {\n throw defaultWriterLockException('desiredSize');\n }\n return WritableStreamDefaultWriterGetDesiredSize(this);\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(WritableStreamDefaultWriter.prototype, \"ready\", {\n get: function () {\n if (!IsWritableStreamDefaultWriter(this)) {\n return promiseRejectedWith(defaultWriterBrandCheckException('ready'));\n }\n return this._readyPromise;\n },\n enumerable: false,\n configurable: true\n });\n WritableStreamDefaultWriter.prototype.abort = function (reason) {\n if (reason === void 0) {\n reason = undefined;\n }\n if (!IsWritableStreamDefaultWriter(this)) {\n return promiseRejectedWith(defaultWriterBrandCheckException('abort'));\n }\n if (this._ownerWritableStream === undefined) {\n return promiseRejectedWith(defaultWriterLockException('abort'));\n }\n return WritableStreamDefaultWriterAbort(this, reason);\n };\n WritableStreamDefaultWriter.prototype.close = function () {\n if (!IsWritableStreamDefaultWriter(this)) {\n return promiseRejectedWith(defaultWriterBrandCheckException('close'));\n }\n var stream = this._ownerWritableStream;\n if (stream === undefined) {\n return promiseRejectedWith(defaultWriterLockException('close'));\n }\n if (WritableStreamCloseQueuedOrInFlight(stream)) {\n return promiseRejectedWith(new TypeError('Cannot close an already-closing stream'));\n }\n return WritableStreamDefaultWriterClose(this);\n };\n WritableStreamDefaultWriter.prototype.releaseLock = function () {\n if (!IsWritableStreamDefaultWriter(this)) {\n throw defaultWriterBrandCheckException('releaseLock');\n }\n var stream = this._ownerWritableStream;\n if (stream === undefined) {\n return;\n }\n WritableStreamDefaultWriterRelease(this);\n };\n WritableStreamDefaultWriter.prototype.write = function (chunk) {\n if (chunk === void 0) {\n chunk = undefined;\n }\n if (!IsWritableStreamDefaultWriter(this)) {\n return promiseRejectedWith(defaultWriterBrandCheckException('write'));\n }\n if (this._ownerWritableStream === undefined) {\n return promiseRejectedWith(defaultWriterLockException('write to'));\n }\n return WritableStreamDefaultWriterWrite(this, chunk);\n };\n return WritableStreamDefaultWriter;\n }();\n Object.defineProperties(WritableStreamDefaultWriter.prototype, {\n abort: { enumerable: true },\n close: { enumerable: true },\n releaseLock: { enumerable: true },\n write: { enumerable: true },\n closed: { enumerable: true },\n desiredSize: { enumerable: true },\n ready: { enumerable: true }\n });\n if (typeof SymbolPolyfill.toStringTag === 'symbol') {\n Object.defineProperty(WritableStreamDefaultWriter.prototype, SymbolPolyfill.toStringTag, {\n value: 'WritableStreamDefaultWriter',\n configurable: true\n });\n }\n function IsWritableStreamDefaultWriter(x) {\n if (!typeIsObject(x)) {\n return false;\n }\n if (!Object.prototype.hasOwnProperty.call(x, '_ownerWritableStream')) {\n return false;\n }\n return x instanceof WritableStreamDefaultWriter;\n }\n function WritableStreamDefaultWriterAbort(writer, reason) {\n var stream = writer._ownerWritableStream;\n return WritableStreamAbort(stream, reason);\n }\n function WritableStreamDefaultWriterClose(writer) {\n var stream = writer._ownerWritableStream;\n return WritableStreamClose(stream);\n }\n function WritableStreamDefaultWriterCloseWithErrorPropagation(writer) {\n var stream = writer._ownerWritableStream;\n var state = stream._state;\n if (WritableStreamCloseQueuedOrInFlight(stream) || state === 'closed') {\n return promiseResolvedWith(undefined);\n }\n if (state === 'errored') {\n return promiseRejectedWith(stream._storedError);\n }\n return WritableStreamDefaultWriterClose(writer);\n }\n function WritableStreamDefaultWriterEnsureClosedPromiseRejected(writer, error) {\n if (writer._closedPromiseState === 'pending') {\n defaultWriterClosedPromiseReject(writer, error);\n } else {\n defaultWriterClosedPromiseResetToRejected(writer, error);\n }\n }\n function WritableStreamDefaultWriterEnsureReadyPromiseRejected(writer, error) {\n if (writer._readyPromiseState === 'pending') {\n defaultWriterReadyPromiseReject(writer, error);\n } else {\n defaultWriterReadyPromiseResetToRejected(writer, error);\n }\n }\n function WritableStreamDefaultWriterGetDesiredSize(writer) {\n var stream = writer._ownerWritableStream;\n var state = stream._state;\n if (state === 'errored' || state === 'erroring') {\n return null;\n }\n if (state === 'closed') {\n return 0;\n }\n return WritableStreamDefaultControllerGetDesiredSize(stream._writableStreamController);\n }\n function WritableStreamDefaultWriterRelease(writer) {\n var stream = writer._ownerWritableStream;\n var releasedError = new TypeError(\"Writer was released and can no longer be used to monitor the stream's closedness\");\n WritableStreamDefaultWriterEnsureReadyPromiseRejected(writer, releasedError);\n WritableStreamDefaultWriterEnsureClosedPromiseRejected(writer, releasedError);\n stream._writer = undefined;\n writer._ownerWritableStream = undefined;\n }\n function WritableStreamDefaultWriterWrite(writer, chunk) {\n var stream = writer._ownerWritableStream;\n var controller = stream._writableStreamController;\n var chunkSize = WritableStreamDefaultControllerGetChunkSize(controller, chunk);\n if (stream !== writer._ownerWritableStream) {\n return promiseRejectedWith(defaultWriterLockException('write to'));\n }\n var state = stream._state;\n if (state === 'errored') {\n return promiseRejectedWith(stream._storedError);\n }\n if (WritableStreamCloseQueuedOrInFlight(stream) || state === 'closed') {\n return promiseRejectedWith(new TypeError('The stream is closing or closed and cannot be written to'));\n }\n if (state === 'erroring') {\n return promiseRejectedWith(stream._storedError);\n }\n var promise = WritableStreamAddWriteRequest(stream);\n WritableStreamDefaultControllerWrite(controller, chunk, chunkSize);\n return promise;\n }\n var closeSentinel = {};\n var WritableStreamDefaultController = function () {\n function WritableStreamDefaultController() {\n throw new TypeError('Illegal constructor');\n }\n Object.defineProperty(WritableStreamDefaultController.prototype, \"abortReason\", {\n get: function () {\n if (!IsWritableStreamDefaultController(this)) {\n throw defaultControllerBrandCheckException$2('abortReason');\n }\n return this._abortReason;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(WritableStreamDefaultController.prototype, \"signal\", {\n get: function () {\n if (!IsWritableStreamDefaultController(this)) {\n throw defaultControllerBrandCheckException$2('signal');\n }\n if (this._abortController === undefined) {\n throw new TypeError('WritableStreamDefaultController.prototype.signal is not supported');\n }\n return this._abortController.signal;\n },\n enumerable: false,\n configurable: true\n });\n WritableStreamDefaultController.prototype.error = function (e) {\n if (e === void 0) {\n e = undefined;\n }\n if (!IsWritableStreamDefaultController(this)) {\n throw defaultControllerBrandCheckException$2('error');\n }\n var state = this._controlledWritableStream._state;\n if (state !== 'writable') {\n return;\n }\n WritableStreamDefaultControllerError(this, e);\n };\n WritableStreamDefaultController.prototype[AbortSteps] = function (reason) {\n var result = this._abortAlgorithm(reason);\n WritableStreamDefaultControllerClearAlgorithms(this);\n return result;\n };\n WritableStreamDefaultController.prototype[ErrorSteps] = function () {\n ResetQueue(this);\n };\n return WritableStreamDefaultController;\n }();\n Object.defineProperties(WritableStreamDefaultController.prototype, { error: { enumerable: true } });\n if (typeof SymbolPolyfill.toStringTag === 'symbol') {\n Object.defineProperty(WritableStreamDefaultController.prototype, SymbolPolyfill.toStringTag, {\n value: 'WritableStreamDefaultController',\n configurable: true\n });\n }\n function IsWritableStreamDefaultController(x) {\n if (!typeIsObject(x)) {\n return false;\n }\n if (!Object.prototype.hasOwnProperty.call(x, '_controlledWritableStream')) {\n return false;\n }\n return x instanceof WritableStreamDefaultController;\n }\n function SetUpWritableStreamDefaultController(stream, controller, startAlgorithm, writeAlgorithm, closeAlgorithm, abortAlgorithm, highWaterMark, sizeAlgorithm) {\n controller._controlledWritableStream = stream;\n stream._writableStreamController = controller;\n controller._queue = undefined;\n controller._queueTotalSize = undefined;\n ResetQueue(controller);\n controller._abortReason = undefined;\n controller._abortController = createAbortController();\n controller._started = false;\n controller._strategySizeAlgorithm = sizeAlgorithm;\n controller._strategyHWM = highWaterMark;\n controller._writeAlgorithm = writeAlgorithm;\n controller._closeAlgorithm = closeAlgorithm;\n controller._abortAlgorithm = abortAlgorithm;\n var backpressure = WritableStreamDefaultControllerGetBackpressure(controller);\n WritableStreamUpdateBackpressure(stream, backpressure);\n var startResult = startAlgorithm();\n var startPromise = promiseResolvedWith(startResult);\n uponPromise(startPromise, function () {\n controller._started = true;\n WritableStreamDefaultControllerAdvanceQueueIfNeeded(controller);\n }, function (r) {\n controller._started = true;\n WritableStreamDealWithRejection(stream, r);\n });\n }\n function SetUpWritableStreamDefaultControllerFromUnderlyingSink(stream, underlyingSink, highWaterMark, sizeAlgorithm) {\n var controller = Object.create(WritableStreamDefaultController.prototype);\n var startAlgorithm = function () {\n return undefined;\n };\n var writeAlgorithm = function () {\n return promiseResolvedWith(undefined);\n };\n var closeAlgorithm = function () {\n return promiseResolvedWith(undefined);\n };\n var abortAlgorithm = function () {\n return promiseResolvedWith(undefined);\n };\n if (underlyingSink.start !== undefined) {\n startAlgorithm = function () {\n return underlyingSink.start(controller);\n };\n }\n if (underlyingSink.write !== undefined) {\n writeAlgorithm = function (chunk) {\n return underlyingSink.write(chunk, controller);\n };\n }\n if (underlyingSink.close !== undefined) {\n closeAlgorithm = function () {\n return underlyingSink.close();\n };\n }\n if (underlyingSink.abort !== undefined) {\n abortAlgorithm = function (reason) {\n return underlyingSink.abort(reason);\n };\n }\n SetUpWritableStreamDefaultController(stream, controller, startAlgorithm, writeAlgorithm, closeAlgorithm, abortAlgorithm, highWaterMark, sizeAlgorithm);\n }\n function WritableStreamDefaultControllerClearAlgorithms(controller) {\n controller._writeAlgorithm = undefined;\n controller._closeAlgorithm = undefined;\n controller._abortAlgorithm = undefined;\n controller._strategySizeAlgorithm = undefined;\n }\n function WritableStreamDefaultControllerClose(controller) {\n EnqueueValueWithSize(controller, closeSentinel, 0);\n WritableStreamDefaultControllerAdvanceQueueIfNeeded(controller);\n }\n function WritableStreamDefaultControllerGetChunkSize(controller, chunk) {\n try {\n return controller._strategySizeAlgorithm(chunk);\n } catch (chunkSizeE) {\n WritableStreamDefaultControllerErrorIfNeeded(controller, chunkSizeE);\n return 1;\n }\n }\n function WritableStreamDefaultControllerGetDesiredSize(controller) {\n return controller._strategyHWM - controller._queueTotalSize;\n }\n function WritableStreamDefaultControllerWrite(controller, chunk, chunkSize) {\n try {\n EnqueueValueWithSize(controller, chunk, chunkSize);\n } catch (enqueueE) {\n WritableStreamDefaultControllerErrorIfNeeded(controller, enqueueE);\n return;\n }\n var stream = controller._controlledWritableStream;\n if (!WritableStreamCloseQueuedOrInFlight(stream) && stream._state === 'writable') {\n var backpressure = WritableStreamDefaultControllerGetBackpressure(controller);\n WritableStreamUpdateBackpressure(stream, backpressure);\n }\n WritableStreamDefaultControllerAdvanceQueueIfNeeded(controller);\n }\n function WritableStreamDefaultControllerAdvanceQueueIfNeeded(controller) {\n var stream = controller._controlledWritableStream;\n if (!controller._started) {\n return;\n }\n if (stream._inFlightWriteRequest !== undefined) {\n return;\n }\n var state = stream._state;\n if (state === 'erroring') {\n WritableStreamFinishErroring(stream);\n return;\n }\n if (controller._queue.length === 0) {\n return;\n }\n var value = PeekQueueValue(controller);\n if (value === closeSentinel) {\n WritableStreamDefaultControllerProcessClose(controller);\n } else {\n WritableStreamDefaultControllerProcessWrite(controller, value);\n }\n }\n function WritableStreamDefaultControllerErrorIfNeeded(controller, error) {\n if (controller._controlledWritableStream._state === 'writable') {\n WritableStreamDefaultControllerError(controller, error);\n }\n }\n function WritableStreamDefaultControllerProcessClose(controller) {\n var stream = controller._controlledWritableStream;\n WritableStreamMarkCloseRequestInFlight(stream);\n DequeueValue(controller);\n var sinkClosePromise = controller._closeAlgorithm();\n WritableStreamDefaultControllerClearAlgorithms(controller);\n uponPromise(sinkClosePromise, function () {\n WritableStreamFinishInFlightClose(stream);\n }, function (reason) {\n WritableStreamFinishInFlightCloseWithError(stream, reason);\n });\n }\n function WritableStreamDefaultControllerProcessWrite(controller, chunk) {\n var stream = controller._controlledWritableStream;\n WritableStreamMarkFirstWriteRequestInFlight(stream);\n var sinkWritePromise = controller._writeAlgorithm(chunk);\n uponPromise(sinkWritePromise, function () {\n WritableStreamFinishInFlightWrite(stream);\n var state = stream._state;\n DequeueValue(controller);\n if (!WritableStreamCloseQueuedOrInFlight(stream) && state === 'writable') {\n var backpressure = WritableStreamDefaultControllerGetBackpressure(controller);\n WritableStreamUpdateBackpressure(stream, backpressure);\n }\n WritableStreamDefaultControllerAdvanceQueueIfNeeded(controller);\n }, function (reason) {\n if (stream._state === 'writable') {\n WritableStreamDefaultControllerClearAlgorithms(controller);\n }\n WritableStreamFinishInFlightWriteWithError(stream, reason);\n });\n }\n function WritableStreamDefaultControllerGetBackpressure(controller) {\n var desiredSize = WritableStreamDefaultControllerGetDesiredSize(controller);\n return desiredSize <= 0;\n }\n function WritableStreamDefaultControllerError(controller, error) {\n var stream = controller._controlledWritableStream;\n WritableStreamDefaultControllerClearAlgorithms(controller);\n WritableStreamStartErroring(stream, error);\n }\n function streamBrandCheckException$2(name) {\n return new TypeError(\"WritableStream.prototype.\" + name + \" can only be used on a WritableStream\");\n }\n function defaultControllerBrandCheckException$2(name) {\n return new TypeError(\"WritableStreamDefaultController.prototype.\" + name + \" can only be used on a WritableStreamDefaultController\");\n }\n function defaultWriterBrandCheckException(name) {\n return new TypeError(\"WritableStreamDefaultWriter.prototype.\" + name + \" can only be used on a WritableStreamDefaultWriter\");\n }\n function defaultWriterLockException(name) {\n return new TypeError('Cannot ' + name + ' a stream using a released writer');\n }\n function defaultWriterClosedPromiseInitialize(writer) {\n writer._closedPromise = newPromise(function (resolve, reject) {\n writer._closedPromise_resolve = resolve;\n writer._closedPromise_reject = reject;\n writer._closedPromiseState = 'pending';\n });\n }\n function defaultWriterClosedPromiseInitializeAsRejected(writer, reason) {\n defaultWriterClosedPromiseInitialize(writer);\n defaultWriterClosedPromiseReject(writer, reason);\n }\n function defaultWriterClosedPromiseInitializeAsResolved(writer) {\n defaultWriterClosedPromiseInitialize(writer);\n defaultWriterClosedPromiseResolve(writer);\n }\n function defaultWriterClosedPromiseReject(writer, reason) {\n if (writer._closedPromise_reject === undefined) {\n return;\n }\n setPromiseIsHandledToTrue(writer._closedPromise);\n writer._closedPromise_reject(reason);\n writer._closedPromise_resolve = undefined;\n writer._closedPromise_reject = undefined;\n writer._closedPromiseState = 'rejected';\n }\n function defaultWriterClosedPromiseResetToRejected(writer, reason) {\n defaultWriterClosedPromiseInitializeAsRejected(writer, reason);\n }\n function defaultWriterClosedPromiseResolve(writer) {\n if (writer._closedPromise_resolve === undefined) {\n return;\n }\n writer._closedPromise_resolve(undefined);\n writer._closedPromise_resolve = undefined;\n writer._closedPromise_reject = undefined;\n writer._closedPromiseState = 'resolved';\n }\n function defaultWriterReadyPromiseInitialize(writer) {\n writer._readyPromise = newPromise(function (resolve, reject) {\n writer._readyPromise_resolve = resolve;\n writer._readyPromise_reject = reject;\n });\n writer._readyPromiseState = 'pending';\n }\n function defaultWriterReadyPromiseInitializeAsRejected(writer, reason) {\n defaultWriterReadyPromiseInitialize(writer);\n defaultWriterReadyPromiseReject(writer, reason);\n }\n function defaultWriterReadyPromiseInitializeAsResolved(writer) {\n defaultWriterReadyPromiseInitialize(writer);\n defaultWriterReadyPromiseResolve(writer);\n }\n function defaultWriterReadyPromiseReject(writer, reason) {\n if (writer._readyPromise_reject === undefined) {\n return;\n }\n setPromiseIsHandledToTrue(writer._readyPromise);\n writer._readyPromise_reject(reason);\n writer._readyPromise_resolve = undefined;\n writer._readyPromise_reject = undefined;\n writer._readyPromiseState = 'rejected';\n }\n function defaultWriterReadyPromiseReset(writer) {\n defaultWriterReadyPromiseInitialize(writer);\n }\n function defaultWriterReadyPromiseResetToRejected(writer, reason) {\n defaultWriterReadyPromiseInitializeAsRejected(writer, reason);\n }\n function defaultWriterReadyPromiseResolve(writer) {\n if (writer._readyPromise_resolve === undefined) {\n return;\n }\n writer._readyPromise_resolve(undefined);\n writer._readyPromise_resolve = undefined;\n writer._readyPromise_reject = undefined;\n writer._readyPromiseState = 'fulfilled';\n }\n var NativeDOMException = typeof DOMException !== 'undefined' ? DOMException : undefined;\n function isDOMExceptionConstructor(ctor) {\n if (!(typeof ctor === 'function' || typeof ctor === 'object')) {\n return false;\n }\n try {\n new ctor();\n return true;\n } catch (_a) {\n return false;\n }\n }\n function createDOMExceptionPolyfill() {\n var ctor = function DOMException(message, name) {\n this.message = message || '';\n this.name = name || 'Error';\n if (Error.captureStackTrace) {\n Error.captureStackTrace(this, this.constructor);\n }\n };\n ctor.prototype = Object.create(Error.prototype);\n Object.defineProperty(ctor.prototype, 'constructor', {\n value: ctor,\n writable: true,\n configurable: true\n });\n return ctor;\n }\n var DOMException$1 = isDOMExceptionConstructor(NativeDOMException) ? NativeDOMException : createDOMExceptionPolyfill();\n function ReadableStreamPipeTo(source, dest, preventClose, preventAbort, preventCancel, signal) {\n var reader = AcquireReadableStreamDefaultReader(source);\n var writer = AcquireWritableStreamDefaultWriter(dest);\n source._disturbed = true;\n var shuttingDown = false;\n var currentWrite = promiseResolvedWith(undefined);\n return newPromise(function (resolve, reject) {\n var abortAlgorithm;\n if (signal !== undefined) {\n abortAlgorithm = function () {\n var error = new DOMException$1('Aborted', 'AbortError');\n var actions = [];\n if (!preventAbort) {\n actions.push(function () {\n if (dest._state === 'writable') {\n return WritableStreamAbort(dest, error);\n }\n return promiseResolvedWith(undefined);\n });\n }\n if (!preventCancel) {\n actions.push(function () {\n if (source._state === 'readable') {\n return ReadableStreamCancel(source, error);\n }\n return promiseResolvedWith(undefined);\n });\n }\n shutdownWithAction(function () {\n return Promise.all(actions.map(function (action) {\n return action();\n }));\n }, true, error);\n };\n if (signal.aborted) {\n abortAlgorithm();\n return;\n }\n signal.addEventListener('abort', abortAlgorithm);\n }\n function pipeLoop() {\n return newPromise(function (resolveLoop, rejectLoop) {\n function next(done) {\n if (done) {\n resolveLoop();\n } else {\n PerformPromiseThen(pipeStep(), next, rejectLoop);\n }\n }\n next(false);\n });\n }\n function pipeStep() {\n if (shuttingDown) {\n return promiseResolvedWith(true);\n }\n return PerformPromiseThen(writer._readyPromise, function () {\n return newPromise(function (resolveRead, rejectRead) {\n ReadableStreamDefaultReaderRead(reader, {\n _chunkSteps: function (chunk) {\n currentWrite = PerformPromiseThen(WritableStreamDefaultWriterWrite(writer, chunk), undefined, noop);\n resolveRead(false);\n },\n _closeSteps: function () {\n return resolveRead(true);\n },\n _errorSteps: rejectRead\n });\n });\n });\n }\n isOrBecomesErrored(source, reader._closedPromise, function (storedError) {\n if (!preventAbort) {\n shutdownWithAction(function () {\n return WritableStreamAbort(dest, storedError);\n }, true, storedError);\n } else {\n shutdown(true, storedError);\n }\n });\n isOrBecomesErrored(dest, writer._closedPromise, function (storedError) {\n if (!preventCancel) {\n shutdownWithAction(function () {\n return ReadableStreamCancel(source, storedError);\n }, true, storedError);\n } else {\n shutdown(true, storedError);\n }\n });\n isOrBecomesClosed(source, reader._closedPromise, function () {\n if (!preventClose) {\n shutdownWithAction(function () {\n return WritableStreamDefaultWriterCloseWithErrorPropagation(writer);\n });\n } else {\n shutdown();\n }\n });\n if (WritableStreamCloseQueuedOrInFlight(dest) || dest._state === 'closed') {\n var destClosed_1 = new TypeError('the destination writable stream closed before all data could be piped to it');\n if (!preventCancel) {\n shutdownWithAction(function () {\n return ReadableStreamCancel(source, destClosed_1);\n }, true, destClosed_1);\n } else {\n shutdown(true, destClosed_1);\n }\n }\n setPromiseIsHandledToTrue(pipeLoop());\n function waitForWritesToFinish() {\n var oldCurrentWrite = currentWrite;\n return PerformPromiseThen(currentWrite, function () {\n return oldCurrentWrite !== currentWrite ? waitForWritesToFinish() : undefined;\n });\n }\n function isOrBecomesErrored(stream, promise, action) {\n if (stream._state === 'errored') {\n action(stream._storedError);\n } else {\n uponRejection(promise, action);\n }\n }\n function isOrBecomesClosed(stream, promise, action) {\n if (stream._state === 'closed') {\n action();\n } else {\n uponFulfillment(promise, action);\n }\n }\n function shutdownWithAction(action, originalIsError, originalError) {\n if (shuttingDown) {\n return;\n }\n shuttingDown = true;\n if (dest._state === 'writable' && !WritableStreamCloseQueuedOrInFlight(dest)) {\n uponFulfillment(waitForWritesToFinish(), doTheRest);\n } else {\n doTheRest();\n }\n function doTheRest() {\n uponPromise(action(), function () {\n return finalize(originalIsError, originalError);\n }, function (newError) {\n return finalize(true, newError);\n });\n }\n }\n function shutdown(isError, error) {\n if (shuttingDown) {\n return;\n }\n shuttingDown = true;\n if (dest._state === 'writable' && !WritableStreamCloseQueuedOrInFlight(dest)) {\n uponFulfillment(waitForWritesToFinish(), function () {\n return finalize(isError, error);\n });\n } else {\n finalize(isError, error);\n }\n }\n function finalize(isError, error) {\n WritableStreamDefaultWriterRelease(writer);\n ReadableStreamReaderGenericRelease(reader);\n if (signal !== undefined) {\n signal.removeEventListener('abort', abortAlgorithm);\n }\n if (isError) {\n reject(error);\n } else {\n resolve(undefined);\n }\n }\n });\n }\n var ReadableStreamDefaultController = function () {\n function ReadableStreamDefaultController() {\n throw new TypeError('Illegal constructor');\n }\n Object.defineProperty(ReadableStreamDefaultController.prototype, \"desiredSize\", {\n get: function () {\n if (!IsReadableStreamDefaultController(this)) {\n throw defaultControllerBrandCheckException$1('desiredSize');\n }\n return ReadableStreamDefaultControllerGetDesiredSize(this);\n },\n enumerable: false,\n configurable: true\n });\n ReadableStreamDefaultController.prototype.close = function () {\n if (!IsReadableStreamDefaultController(this)) {\n throw defaultControllerBrandCheckException$1('close');\n }\n if (!ReadableStreamDefaultControllerCanCloseOrEnqueue(this)) {\n throw new TypeError('The stream is not in a state that permits close');\n }\n ReadableStreamDefaultControllerClose(this);\n };\n ReadableStreamDefaultController.prototype.enqueue = function (chunk) {\n if (chunk === void 0) {\n chunk = undefined;\n }\n if (!IsReadableStreamDefaultController(this)) {\n throw defaultControllerBrandCheckException$1('enqueue');\n }\n if (!ReadableStreamDefaultControllerCanCloseOrEnqueue(this)) {\n throw new TypeError('The stream is not in a state that permits enqueue');\n }\n return ReadableStreamDefaultControllerEnqueue(this, chunk);\n };\n ReadableStreamDefaultController.prototype.error = function (e) {\n if (e === void 0) {\n e = undefined;\n }\n if (!IsReadableStreamDefaultController(this)) {\n throw defaultControllerBrandCheckException$1('error');\n }\n ReadableStreamDefaultControllerError(this, e);\n };\n ReadableStreamDefaultController.prototype[CancelSteps] = function (reason) {\n ResetQueue(this);\n var result = this._cancelAlgorithm(reason);\n ReadableStreamDefaultControllerClearAlgorithms(this);\n return result;\n };\n ReadableStreamDefaultController.prototype[PullSteps] = function (readRequest) {\n var stream = this._controlledReadableStream;\n if (this._queue.length > 0) {\n var chunk = DequeueValue(this);\n if (this._closeRequested && this._queue.length === 0) {\n ReadableStreamDefaultControllerClearAlgorithms(this);\n ReadableStreamClose(stream);\n } else {\n ReadableStreamDefaultControllerCallPullIfNeeded(this);\n }\n readRequest._chunkSteps(chunk);\n } else {\n ReadableStreamAddReadRequest(stream, readRequest);\n ReadableStreamDefaultControllerCallPullIfNeeded(this);\n }\n };\n return ReadableStreamDefaultController;\n }();\n Object.defineProperties(ReadableStreamDefaultController.prototype, {\n close: { enumerable: true },\n enqueue: { enumerable: true },\n error: { enumerable: true },\n desiredSize: { enumerable: true }\n });\n if (typeof SymbolPolyfill.toStringTag === 'symbol') {\n Object.defineProperty(ReadableStreamDefaultController.prototype, SymbolPolyfill.toStringTag, {\n value: 'ReadableStreamDefaultController',\n configurable: true\n });\n }\n function IsReadableStreamDefaultController(x) {\n if (!typeIsObject(x)) {\n return false;\n }\n if (!Object.prototype.hasOwnProperty.call(x, '_controlledReadableStream')) {\n return false;\n }\n return x instanceof ReadableStreamDefaultController;\n }\n function ReadableStreamDefaultControllerCallPullIfNeeded(controller) {\n var shouldPull = ReadableStreamDefaultControllerShouldCallPull(controller);\n if (!shouldPull) {\n return;\n }\n if (controller._pulling) {\n controller._pullAgain = true;\n return;\n }\n controller._pulling = true;\n var pullPromise = controller._pullAlgorithm();\n uponPromise(pullPromise, function () {\n controller._pulling = false;\n if (controller._pullAgain) {\n controller._pullAgain = false;\n ReadableStreamDefaultControllerCallPullIfNeeded(controller);\n }\n }, function (e) {\n ReadableStreamDefaultControllerError(controller, e);\n });\n }\n function ReadableStreamDefaultControllerShouldCallPull(controller) {\n var stream = controller._controlledReadableStream;\n if (!ReadableStreamDefaultControllerCanCloseOrEnqueue(controller)) {\n return false;\n }\n if (!controller._started) {\n return false;\n }\n if (IsReadableStreamLocked(stream) && ReadableStreamGetNumReadRequests(stream) > 0) {\n return true;\n }\n var desiredSize = ReadableStreamDefaultControllerGetDesiredSize(controller);\n if (desiredSize > 0) {\n return true;\n }\n return false;\n }\n function ReadableStreamDefaultControllerClearAlgorithms(controller) {\n controller._pullAlgorithm = undefined;\n controller._cancelAlgorithm = undefined;\n controller._strategySizeAlgorithm = undefined;\n }\n function ReadableStreamDefaultControllerClose(controller) {\n if (!ReadableStreamDefaultControllerCanCloseOrEnqueue(controller)) {\n return;\n }\n var stream = controller._controlledReadableStream;\n controller._closeRequested = true;\n if (controller._queue.length === 0) {\n ReadableStreamDefaultControllerClearAlgorithms(controller);\n ReadableStreamClose(stream);\n }\n }\n function ReadableStreamDefaultControllerEnqueue(controller, chunk) {\n if (!ReadableStreamDefaultControllerCanCloseOrEnqueue(controller)) {\n return;\n }\n var stream = controller._controlledReadableStream;\n if (IsReadableStreamLocked(stream) && ReadableStreamGetNumReadRequests(stream) > 0) {\n ReadableStreamFulfillReadRequest(stream, chunk, false);\n } else {\n var chunkSize = void 0;\n try {\n chunkSize = controller._strategySizeAlgorithm(chunk);\n } catch (chunkSizeE) {\n ReadableStreamDefaultControllerError(controller, chunkSizeE);\n throw chunkSizeE;\n }\n try {\n EnqueueValueWithSize(controller, chunk, chunkSize);\n } catch (enqueueE) {\n ReadableStreamDefaultControllerError(controller, enqueueE);\n throw enqueueE;\n }\n }\n ReadableStreamDefaultControllerCallPullIfNeeded(controller);\n }\n function ReadableStreamDefaultControllerError(controller, e) {\n var stream = controller._controlledReadableStream;\n if (stream._state !== 'readable') {\n return;\n }\n ResetQueue(controller);\n ReadableStreamDefaultControllerClearAlgorithms(controller);\n ReadableStreamError(stream, e);\n }\n function ReadableStreamDefaultControllerGetDesiredSize(controller) {\n var state = controller._controlledReadableStream._state;\n if (state === 'errored') {\n return null;\n }\n if (state === 'closed') {\n return 0;\n }\n return controller._strategyHWM - controller._queueTotalSize;\n }\n function ReadableStreamDefaultControllerHasBackpressure(controller) {\n if (ReadableStreamDefaultControllerShouldCallPull(controller)) {\n return false;\n }\n return true;\n }\n function ReadableStreamDefaultControllerCanCloseOrEnqueue(controller) {\n var state = controller._controlledReadableStream._state;\n if (!controller._closeRequested && state === 'readable') {\n return true;\n }\n return false;\n }\n function SetUpReadableStreamDefaultController(stream, controller, startAlgorithm, pullAlgorithm, cancelAlgorithm, highWaterMark, sizeAlgorithm) {\n controller._controlledReadableStream = stream;\n controller._queue = undefined;\n controller._queueTotalSize = undefined;\n ResetQueue(controller);\n controller._started = false;\n controller._closeRequested = false;\n controller._pullAgain = false;\n controller._pulling = false;\n controller._strategySizeAlgorithm = sizeAlgorithm;\n controller._strategyHWM = highWaterMark;\n controller._pullAlgorithm = pullAlgorithm;\n controller._cancelAlgorithm = cancelAlgorithm;\n stream._readableStreamController = controller;\n var startResult = startAlgorithm();\n uponPromise(promiseResolvedWith(startResult), function () {\n controller._started = true;\n ReadableStreamDefaultControllerCallPullIfNeeded(controller);\n }, function (r) {\n ReadableStreamDefaultControllerError(controller, r);\n });\n }\n function SetUpReadableStreamDefaultControllerFromUnderlyingSource(stream, underlyingSource, highWaterMark, sizeAlgorithm) {\n var controller = Object.create(ReadableStreamDefaultController.prototype);\n var startAlgorithm = function () {\n return undefined;\n };\n var pullAlgorithm = function () {\n return promiseResolvedWith(undefined);\n };\n var cancelAlgorithm = function () {\n return promiseResolvedWith(undefined);\n };\n if (underlyingSource.start !== undefined) {\n startAlgorithm = function () {\n return underlyingSource.start(controller);\n };\n }\n if (underlyingSource.pull !== undefined) {\n pullAlgorithm = function () {\n return underlyingSource.pull(controller);\n };\n }\n if (underlyingSource.cancel !== undefined) {\n cancelAlgorithm = function (reason) {\n return underlyingSource.cancel(reason);\n };\n }\n SetUpReadableStreamDefaultController(stream, controller, startAlgorithm, pullAlgorithm, cancelAlgorithm, highWaterMark, sizeAlgorithm);\n }\n function defaultControllerBrandCheckException$1(name) {\n return new TypeError(\"ReadableStreamDefaultController.prototype.\" + name + \" can only be used on a ReadableStreamDefaultController\");\n }\n function ReadableStreamTee(stream, cloneForBranch2) {\n if (IsReadableByteStreamController(stream._readableStreamController)) {\n return ReadableByteStreamTee(stream);\n }\n return ReadableStreamDefaultTee(stream);\n }\n function ReadableStreamDefaultTee(stream, cloneForBranch2) {\n var reader = AcquireReadableStreamDefaultReader(stream);\n var reading = false;\n var canceled1 = false;\n var canceled2 = false;\n var reason1;\n var reason2;\n var branch1;\n var branch2;\n var resolveCancelPromise;\n var cancelPromise = newPromise(function (resolve) {\n resolveCancelPromise = resolve;\n });\n function pullAlgorithm() {\n if (reading) {\n return promiseResolvedWith(undefined);\n }\n reading = true;\n var readRequest = {\n _chunkSteps: function (chunk) {\n queueMicrotask(function () {\n reading = false;\n var chunk1 = chunk;\n var chunk2 = chunk;\n if (!canceled1) {\n ReadableStreamDefaultControllerEnqueue(branch1._readableStreamController, chunk1);\n }\n if (!canceled2) {\n ReadableStreamDefaultControllerEnqueue(branch2._readableStreamController, chunk2);\n }\n });\n },\n _closeSteps: function () {\n reading = false;\n if (!canceled1) {\n ReadableStreamDefaultControllerClose(branch1._readableStreamController);\n }\n if (!canceled2) {\n ReadableStreamDefaultControllerClose(branch2._readableStreamController);\n }\n if (!canceled1 || !canceled2) {\n resolveCancelPromise(undefined);\n }\n },\n _errorSteps: function () {\n reading = false;\n }\n };\n ReadableStreamDefaultReaderRead(reader, readRequest);\n return promiseResolvedWith(undefined);\n }\n function cancel1Algorithm(reason) {\n canceled1 = true;\n reason1 = reason;\n if (canceled2) {\n var compositeReason = CreateArrayFromList([\n reason1,\n reason2\n ]);\n var cancelResult = ReadableStreamCancel(stream, compositeReason);\n resolveCancelPromise(cancelResult);\n }\n return cancelPromise;\n }\n function cancel2Algorithm(reason) {\n canceled2 = true;\n reason2 = reason;\n if (canceled1) {\n var compositeReason = CreateArrayFromList([\n reason1,\n reason2\n ]);\n var cancelResult = ReadableStreamCancel(stream, compositeReason);\n resolveCancelPromise(cancelResult);\n }\n return cancelPromise;\n }\n function startAlgorithm() {\n }\n branch1 = CreateReadableStream(startAlgorithm, pullAlgorithm, cancel1Algorithm);\n branch2 = CreateReadableStream(startAlgorithm, pullAlgorithm, cancel2Algorithm);\n uponRejection(reader._closedPromise, function (r) {\n ReadableStreamDefaultControllerError(branch1._readableStreamController, r);\n ReadableStreamDefaultControllerError(branch2._readableStreamController, r);\n if (!canceled1 || !canceled2) {\n resolveCancelPromise(undefined);\n }\n });\n return [\n branch1,\n branch2\n ];\n }\n function ReadableByteStreamTee(stream) {\n var reader = AcquireReadableStreamDefaultReader(stream);\n var reading = false;\n var canceled1 = false;\n var canceled2 = false;\n var reason1;\n var reason2;\n var branch1;\n var branch2;\n var resolveCancelPromise;\n var cancelPromise = newPromise(function (resolve) {\n resolveCancelPromise = resolve;\n });\n function forwardReaderError(thisReader) {\n uponRejection(thisReader._closedPromise, function (r) {\n if (thisReader !== reader) {\n return;\n }\n ReadableByteStreamControllerError(branch1._readableStreamController, r);\n ReadableByteStreamControllerError(branch2._readableStreamController, r);\n if (!canceled1 || !canceled2) {\n resolveCancelPromise(undefined);\n }\n });\n }\n function pullWithDefaultReader() {\n if (IsReadableStreamBYOBReader(reader)) {\n ReadableStreamReaderGenericRelease(reader);\n reader = AcquireReadableStreamDefaultReader(stream);\n forwardReaderError(reader);\n }\n var readRequest = {\n _chunkSteps: function (chunk) {\n queueMicrotask(function () {\n reading = false;\n var chunk1 = chunk;\n var chunk2 = chunk;\n if (!canceled1 && !canceled2) {\n try {\n chunk2 = CloneAsUint8Array(chunk);\n } catch (cloneE) {\n ReadableByteStreamControllerError(branch1._readableStreamController, cloneE);\n ReadableByteStreamControllerError(branch2._readableStreamController, cloneE);\n resolveCancelPromise(ReadableStreamCancel(stream, cloneE));\n return;\n }\n }\n if (!canceled1) {\n ReadableByteStreamControllerEnqueue(branch1._readableStreamController, chunk1);\n }\n if (!canceled2) {\n ReadableByteStreamControllerEnqueue(branch2._readableStreamController, chunk2);\n }\n });\n },\n _closeSteps: function () {\n reading = false;\n if (!canceled1) {\n ReadableByteStreamControllerClose(branch1._readableStreamController);\n }\n if (!canceled2) {\n ReadableByteStreamControllerClose(branch2._readableStreamController);\n }\n if (branch1._readableStreamController._pendingPullIntos.length > 0) {\n ReadableByteStreamControllerRespond(branch1._readableStreamController, 0);\n }\n if (branch2._readableStreamController._pendingPullIntos.length > 0) {\n ReadableByteStreamControllerRespond(branch2._readableStreamController, 0);\n }\n if (!canceled1 || !canceled2) {\n resolveCancelPromise(undefined);\n }\n },\n _errorSteps: function () {\n reading = false;\n }\n };\n ReadableStreamDefaultReaderRead(reader, readRequest);\n }\n function pullWithBYOBReader(view, forBranch2) {\n if (IsReadableStreamDefaultReader(reader)) {\n ReadableStreamReaderGenericRelease(reader);\n reader = AcquireReadableStreamBYOBReader(stream);\n forwardReaderError(reader);\n }\n var byobBranch = forBranch2 ? branch2 : branch1;\n var otherBranch = forBranch2 ? branch1 : branch2;\n var readIntoRequest = {\n _chunkSteps: function (chunk) {\n queueMicrotask(function () {\n reading = false;\n var byobCanceled = forBranch2 ? canceled2 : canceled1;\n var otherCanceled = forBranch2 ? canceled1 : canceled2;\n if (!otherCanceled) {\n var clonedChunk = void 0;\n try {\n clonedChunk = CloneAsUint8Array(chunk);\n } catch (cloneE) {\n ReadableByteStreamControllerError(byobBranch._readableStreamController, cloneE);\n ReadableByteStreamControllerError(otherBranch._readableStreamController, cloneE);\n resolveCancelPromise(ReadableStreamCancel(stream, cloneE));\n return;\n }\n if (!byobCanceled) {\n ReadableByteStreamControllerRespondWithNewView(byobBranch._readableStreamController, chunk);\n }\n ReadableByteStreamControllerEnqueue(otherBranch._readableStreamController, clonedChunk);\n } else if (!byobCanceled) {\n ReadableByteStreamControllerRespondWithNewView(byobBranch._readableStreamController, chunk);\n }\n });\n },\n _closeSteps: function (chunk) {\n reading = false;\n var byobCanceled = forBranch2 ? canceled2 : canceled1;\n var otherCanceled = forBranch2 ? canceled1 : canceled2;\n if (!byobCanceled) {\n ReadableByteStreamControllerClose(byobBranch._readableStreamController);\n }\n if (!otherCanceled) {\n ReadableByteStreamControllerClose(otherBranch._readableStreamController);\n }\n if (chunk !== undefined) {\n if (!byobCanceled) {\n ReadableByteStreamControllerRespondWithNewView(byobBranch._readableStreamController, chunk);\n }\n if (!otherCanceled && otherBranch._readableStreamController._pendingPullIntos.length > 0) {\n ReadableByteStreamControllerRespond(otherBranch._readableStreamController, 0);\n }\n }\n if (!byobCanceled || !otherCanceled) {\n resolveCancelPromise(undefined);\n }\n },\n _errorSteps: function () {\n reading = false;\n }\n };\n ReadableStreamBYOBReaderRead(reader, view, readIntoRequest);\n }\n function pull1Algorithm() {\n if (reading) {\n return promiseResolvedWith(undefined);\n }\n reading = true;\n var byobRequest = ReadableByteStreamControllerGetBYOBRequest(branch1._readableStreamController);\n if (byobRequest === null) {\n pullWithDefaultReader();\n } else {\n pullWithBYOBReader(byobRequest._view, false);\n }\n return promiseResolvedWith(undefined);\n }\n function pull2Algorithm() {\n if (reading) {\n return promiseResolvedWith(undefined);\n }\n reading = true;\n var byobRequest = ReadableByteStreamControllerGetBYOBRequest(branch2._readableStreamController);\n if (byobRequest === null) {\n pullWithDefaultReader();\n } else {\n pullWithBYOBReader(byobRequest._view, true);\n }\n return promiseResolvedWith(undefined);\n }\n function cancel1Algorithm(reason) {\n canceled1 = true;\n reason1 = reason;\n if (canceled2) {\n var compositeReason = CreateArrayFromList([\n reason1,\n reason2\n ]);\n var cancelResult = ReadableStreamCancel(stream, compositeReason);\n resolveCancelPromise(cancelResult);\n }\n return cancelPromise;\n }\n function cancel2Algorithm(reason) {\n canceled2 = true;\n reason2 = reason;\n if (canceled1) {\n var compositeReason = CreateArrayFromList([\n reason1,\n reason2\n ]);\n var cancelResult = ReadableStreamCancel(stream, compositeReason);\n resolveCancelPromise(cancelResult);\n }\n return cancelPromise;\n }\n function startAlgorithm() {\n }\n branch1 = CreateReadableByteStream(startAlgorithm, pull1Algorithm, cancel1Algorithm);\n branch2 = CreateReadableByteStream(startAlgorithm, pull2Algorithm, cancel2Algorithm);\n forwardReaderError(reader);\n return [\n branch1,\n branch2\n ];\n }\n function convertUnderlyingDefaultOrByteSource(source, context) {\n assertDictionary(source, context);\n var original = source;\n var autoAllocateChunkSize = original === null || original === void 0 ? void 0 : original.autoAllocateChunkSize;\n var cancel = original === null || original === void 0 ? void 0 : original.cancel;\n var pull = original === null || original === void 0 ? void 0 : original.pull;\n var start = original === null || original === void 0 ? void 0 : original.start;\n var type = original === null || original === void 0 ? void 0 : original.type;\n return {\n autoAllocateChunkSize: autoAllocateChunkSize === undefined ? undefined : convertUnsignedLongLongWithEnforceRange(autoAllocateChunkSize, context + \" has member 'autoAllocateChunkSize' that\"),\n cancel: cancel === undefined ? undefined : convertUnderlyingSourceCancelCallback(cancel, original, context + \" has member 'cancel' that\"),\n pull: pull === undefined ? undefined : convertUnderlyingSourcePullCallback(pull, original, context + \" has member 'pull' that\"),\n start: start === undefined ? undefined : convertUnderlyingSourceStartCallback(start, original, context + \" has member 'start' that\"),\n type: type === undefined ? undefined : convertReadableStreamType(type, context + \" has member 'type' that\")\n };\n }\n function convertUnderlyingSourceCancelCallback(fn, original, context) {\n assertFunction(fn, context);\n return function (reason) {\n return promiseCall(fn, original, [reason]);\n };\n }\n function convertUnderlyingSourcePullCallback(fn, original, context) {\n assertFunction(fn, context);\n return function (controller) {\n return promiseCall(fn, original, [controller]);\n };\n }\n function convertUnderlyingSourceStartCallback(fn, original, context) {\n assertFunction(fn, context);\n return function (controller) {\n return reflectCall(fn, original, [controller]);\n };\n }\n function convertReadableStreamType(type, context) {\n type = \"\" + type;\n if (type !== 'bytes') {\n throw new TypeError(context + \" '\" + type + \"' is not a valid enumeration value for ReadableStreamType\");\n }\n return type;\n }\n function convertReaderOptions(options, context) {\n assertDictionary(options, context);\n var mode = options === null || options === void 0 ? void 0 : options.mode;\n return { mode: mode === undefined ? undefined : convertReadableStreamReaderMode(mode, context + \" has member 'mode' that\") };\n }\n function convertReadableStreamReaderMode(mode, context) {\n mode = \"\" + mode;\n if (mode !== 'byob') {\n throw new TypeError(context + \" '\" + mode + \"' is not a valid enumeration value for ReadableStreamReaderMode\");\n }\n return mode;\n }\n function convertIteratorOptions(options, context) {\n assertDictionary(options, context);\n var preventCancel = options === null || options === void 0 ? void 0 : options.preventCancel;\n return { preventCancel: Boolean(preventCancel) };\n }\n function convertPipeOptions(options, context) {\n assertDictionary(options, context);\n var preventAbort = options === null || options === void 0 ? void 0 : options.preventAbort;\n var preventCancel = options === null || options === void 0 ? void 0 : options.preventCancel;\n var preventClose = options === null || options === void 0 ? void 0 : options.preventClose;\n var signal = options === null || options === void 0 ? void 0 : options.signal;\n if (signal !== undefined) {\n assertAbortSignal(signal, context + \" has member 'signal' that\");\n }\n return {\n preventAbort: Boolean(preventAbort),\n preventCancel: Boolean(preventCancel),\n preventClose: Boolean(preventClose),\n signal: signal\n };\n }\n function assertAbortSignal(signal, context) {\n if (!isAbortSignal(signal)) {\n throw new TypeError(context + \" is not an AbortSignal.\");\n }\n }\n function convertReadableWritablePair(pair, context) {\n assertDictionary(pair, context);\n var readable = pair === null || pair === void 0 ? void 0 : pair.readable;\n assertRequiredField(readable, 'readable', 'ReadableWritablePair');\n assertReadableStream(readable, context + \" has member 'readable' that\");\n var writable = pair === null || pair === void 0 ? void 0 : pair.writable;\n assertRequiredField(writable, 'writable', 'ReadableWritablePair');\n assertWritableStream(writable, context + \" has member 'writable' that\");\n return {\n readable: readable,\n writable: writable\n };\n }\n var ReadableStream = function () {\n function ReadableStream(rawUnderlyingSource, rawStrategy) {\n if (rawUnderlyingSource === void 0) {\n rawUnderlyingSource = {};\n }\n if (rawStrategy === void 0) {\n rawStrategy = {};\n }\n if (rawUnderlyingSource === undefined) {\n rawUnderlyingSource = null;\n } else {\n assertObject(rawUnderlyingSource, 'First parameter');\n }\n var strategy = convertQueuingStrategy(rawStrategy, 'Second parameter');\n var underlyingSource = convertUnderlyingDefaultOrByteSource(rawUnderlyingSource, 'First parameter');\n InitializeReadableStream(this);\n if (underlyingSource.type === 'bytes') {\n if (strategy.size !== undefined) {\n throw new RangeError('The strategy for a byte stream cannot have a size function');\n }\n var highWaterMark = ExtractHighWaterMark(strategy, 0);\n SetUpReadableByteStreamControllerFromUnderlyingSource(this, underlyingSource, highWaterMark);\n } else {\n var sizeAlgorithm = ExtractSizeAlgorithm(strategy);\n var highWaterMark = ExtractHighWaterMark(strategy, 1);\n SetUpReadableStreamDefaultControllerFromUnderlyingSource(this, underlyingSource, highWaterMark, sizeAlgorithm);\n }\n }\n Object.defineProperty(ReadableStream.prototype, \"locked\", {\n get: function () {\n if (!IsReadableStream(this)) {\n throw streamBrandCheckException$1('locked');\n }\n return IsReadableStreamLocked(this);\n },\n enumerable: false,\n configurable: true\n });\n ReadableStream.prototype.cancel = function (reason) {\n if (reason === void 0) {\n reason = undefined;\n }\n if (!IsReadableStream(this)) {\n return promiseRejectedWith(streamBrandCheckException$1('cancel'));\n }\n if (IsReadableStreamLocked(this)) {\n return promiseRejectedWith(new TypeError('Cannot cancel a stream that already has a reader'));\n }\n return ReadableStreamCancel(this, reason);\n };\n ReadableStream.prototype.getReader = function (rawOptions) {\n if (rawOptions === void 0) {\n rawOptions = undefined;\n }\n if (!IsReadableStream(this)) {\n throw streamBrandCheckException$1('getReader');\n }\n var options = convertReaderOptions(rawOptions, 'First parameter');\n if (options.mode === undefined) {\n return AcquireReadableStreamDefaultReader(this);\n }\n return AcquireReadableStreamBYOBReader(this);\n };\n ReadableStream.prototype.pipeThrough = function (rawTransform, rawOptions) {\n if (rawOptions === void 0) {\n rawOptions = {};\n }\n if (!IsReadableStream(this)) {\n throw streamBrandCheckException$1('pipeThrough');\n }\n assertRequiredArgument(rawTransform, 1, 'pipeThrough');\n var transform = convertReadableWritablePair(rawTransform, 'First parameter');\n var options = convertPipeOptions(rawOptions, 'Second parameter');\n if (IsReadableStreamLocked(this)) {\n throw new TypeError('ReadableStream.prototype.pipeThrough cannot be used on a locked ReadableStream');\n }\n if (IsWritableStreamLocked(transform.writable)) {\n throw new TypeError('ReadableStream.prototype.pipeThrough cannot be used on a locked WritableStream');\n }\n var promise = ReadableStreamPipeTo(this, transform.writable, options.preventClose, options.preventAbort, options.preventCancel, options.signal);\n setPromiseIsHandledToTrue(promise);\n return transform.readable;\n };\n ReadableStream.prototype.pipeTo = function (destination, rawOptions) {\n if (rawOptions === void 0) {\n rawOptions = {};\n }\n if (!IsReadableStream(this)) {\n return promiseRejectedWith(streamBrandCheckException$1('pipeTo'));\n }\n if (destination === undefined) {\n return promiseRejectedWith(\"Parameter 1 is required in 'pipeTo'.\");\n }\n if (!IsWritableStream(destination)) {\n return promiseRejectedWith(new TypeError(\"ReadableStream.prototype.pipeTo's first argument must be a WritableStream\"));\n }\n var options;\n try {\n options = convertPipeOptions(rawOptions, 'Second parameter');\n } catch (e) {\n return promiseRejectedWith(e);\n }\n if (IsReadableStreamLocked(this)) {\n return promiseRejectedWith(new TypeError('ReadableStream.prototype.pipeTo cannot be used on a locked ReadableStream'));\n }\n if (IsWritableStreamLocked(destination)) {\n return promiseRejectedWith(new TypeError('ReadableStream.prototype.pipeTo cannot be used on a locked WritableStream'));\n }\n return ReadableStreamPipeTo(this, destination, options.preventClose, options.preventAbort, options.preventCancel, options.signal);\n };\n ReadableStream.prototype.tee = function () {\n if (!IsReadableStream(this)) {\n throw streamBrandCheckException$1('tee');\n }\n var branches = ReadableStreamTee(this);\n return CreateArrayFromList(branches);\n };\n ReadableStream.prototype.values = function (rawOptions) {\n if (rawOptions === void 0) {\n rawOptions = undefined;\n }\n if (!IsReadableStream(this)) {\n throw streamBrandCheckException$1('values');\n }\n var options = convertIteratorOptions(rawOptions, 'First parameter');\n return AcquireReadableStreamAsyncIterator(this, options.preventCancel);\n };\n return ReadableStream;\n }();\n Object.defineProperties(ReadableStream.prototype, {\n cancel: { enumerable: true },\n getReader: { enumerable: true },\n pipeThrough: { enumerable: true },\n pipeTo: { enumerable: true },\n tee: { enumerable: true },\n values: { enumerable: true },\n locked: { enumerable: true }\n });\n if (typeof SymbolPolyfill.toStringTag === 'symbol') {\n Object.defineProperty(ReadableStream.prototype, SymbolPolyfill.toStringTag, {\n value: 'ReadableStream',\n configurable: true\n });\n }\n if (typeof SymbolPolyfill.asyncIterator === 'symbol') {\n Object.defineProperty(ReadableStream.prototype, SymbolPolyfill.asyncIterator, {\n value: ReadableStream.prototype.values,\n writable: true,\n configurable: true\n });\n }\n function CreateReadableStream(startAlgorithm, pullAlgorithm, cancelAlgorithm, highWaterMark, sizeAlgorithm) {\n if (highWaterMark === void 0) {\n highWaterMark = 1;\n }\n if (sizeAlgorithm === void 0) {\n sizeAlgorithm = function () {\n return 1;\n };\n }\n var stream = Object.create(ReadableStream.prototype);\n InitializeReadableStream(stream);\n var controller = Object.create(ReadableStreamDefaultController.prototype);\n SetUpReadableStreamDefaultController(stream, controller, startAlgorithm, pullAlgorithm, cancelAlgorithm, highWaterMark, sizeAlgorithm);\n return stream;\n }\n function CreateReadableByteStream(startAlgorithm, pullAlgorithm, cancelAlgorithm) {\n var stream = Object.create(ReadableStream.prototype);\n InitializeReadableStream(stream);\n var controller = Object.create(ReadableByteStreamController.prototype);\n SetUpReadableByteStreamController(stream, controller, startAlgorithm, pullAlgorithm, cancelAlgorithm, 0, undefined);\n return stream;\n }\n function InitializeReadableStream(stream) {\n stream._state = 'readable';\n stream._reader = undefined;\n stream._storedError = undefined;\n stream._disturbed = false;\n }\n function IsReadableStream(x) {\n if (!typeIsObject(x)) {\n return false;\n }\n if (!Object.prototype.hasOwnProperty.call(x, '_readableStreamController')) {\n return false;\n }\n return x instanceof ReadableStream;\n }\n function IsReadableStreamLocked(stream) {\n if (stream._reader === undefined) {\n return false;\n }\n return true;\n }\n function ReadableStreamCancel(stream, reason) {\n stream._disturbed = true;\n if (stream._state === 'closed') {\n return promiseResolvedWith(undefined);\n }\n if (stream._state === 'errored') {\n return promiseRejectedWith(stream._storedError);\n }\n ReadableStreamClose(stream);\n var reader = stream._reader;\n if (reader !== undefined && IsReadableStreamBYOBReader(reader)) {\n reader._readIntoRequests.forEach(function (readIntoRequest) {\n readIntoRequest._closeSteps(undefined);\n });\n reader._readIntoRequests = new SimpleQueue();\n }\n var sourceCancelPromise = stream._readableStreamController[CancelSteps](reason);\n return transformPromiseWith(sourceCancelPromise, noop);\n }\n function ReadableStreamClose(stream) {\n stream._state = 'closed';\n var reader = stream._reader;\n if (reader === undefined) {\n return;\n }\n defaultReaderClosedPromiseResolve(reader);\n if (IsReadableStreamDefaultReader(reader)) {\n reader._readRequests.forEach(function (readRequest) {\n readRequest._closeSteps();\n });\n reader._readRequests = new SimpleQueue();\n }\n }\n function ReadableStreamError(stream, e) {\n stream._state = 'errored';\n stream._storedError = e;\n var reader = stream._reader;\n if (reader === undefined) {\n return;\n }\n defaultReaderClosedPromiseReject(reader, e);\n if (IsReadableStreamDefaultReader(reader)) {\n reader._readRequests.forEach(function (readRequest) {\n readRequest._errorSteps(e);\n });\n reader._readRequests = new SimpleQueue();\n } else {\n reader._readIntoRequests.forEach(function (readIntoRequest) {\n readIntoRequest._errorSteps(e);\n });\n reader._readIntoRequests = new SimpleQueue();\n }\n }\n function streamBrandCheckException$1(name) {\n return new TypeError(\"ReadableStream.prototype.\" + name + \" can only be used on a ReadableStream\");\n }\n function convertQueuingStrategyInit(init, context) {\n assertDictionary(init, context);\n var highWaterMark = init === null || init === void 0 ? void 0 : init.highWaterMark;\n assertRequiredField(highWaterMark, 'highWaterMark', 'QueuingStrategyInit');\n return { highWaterMark: convertUnrestrictedDouble(highWaterMark) };\n }\n var byteLengthSizeFunction = function (chunk) {\n return chunk.byteLength;\n };\n Object.defineProperty(byteLengthSizeFunction, 'name', {\n value: 'size',\n configurable: true\n });\n var ByteLengthQueuingStrategy = function () {\n function ByteLengthQueuingStrategy(options) {\n assertRequiredArgument(options, 1, 'ByteLengthQueuingStrategy');\n options = convertQueuingStrategyInit(options, 'First parameter');\n this._byteLengthQueuingStrategyHighWaterMark = options.highWaterMark;\n }\n Object.defineProperty(ByteLengthQueuingStrategy.prototype, \"highWaterMark\", {\n get: function () {\n if (!IsByteLengthQueuingStrategy(this)) {\n throw byteLengthBrandCheckException('highWaterMark');\n }\n return this._byteLengthQueuingStrategyHighWaterMark;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(ByteLengthQueuingStrategy.prototype, \"size\", {\n get: function () {\n if (!IsByteLengthQueuingStrategy(this)) {\n throw byteLengthBrandCheckException('size');\n }\n return byteLengthSizeFunction;\n },\n enumerable: false,\n configurable: true\n });\n return ByteLengthQueuingStrategy;\n }();\n Object.defineProperties(ByteLengthQueuingStrategy.prototype, {\n highWaterMark: { enumerable: true },\n size: { enumerable: true }\n });\n if (typeof SymbolPolyfill.toStringTag === 'symbol') {\n Object.defineProperty(ByteLengthQueuingStrategy.prototype, SymbolPolyfill.toStringTag, {\n value: 'ByteLengthQueuingStrategy',\n configurable: true\n });\n }\n function byteLengthBrandCheckException(name) {\n return new TypeError(\"ByteLengthQueuingStrategy.prototype.\" + name + \" can only be used on a ByteLengthQueuingStrategy\");\n }\n function IsByteLengthQueuingStrategy(x) {\n if (!typeIsObject(x)) {\n return false;\n }\n if (!Object.prototype.hasOwnProperty.call(x, '_byteLengthQueuingStrategyHighWaterMark')) {\n return false;\n }\n return x instanceof ByteLengthQueuingStrategy;\n }\n var countSizeFunction = function () {\n return 1;\n };\n Object.defineProperty(countSizeFunction, 'name', {\n value: 'size',\n configurable: true\n });\n var CountQueuingStrategy = function () {\n function CountQueuingStrategy(options) {\n assertRequiredArgument(options, 1, 'CountQueuingStrategy');\n options = convertQueuingStrategyInit(options, 'First parameter');\n this._countQueuingStrategyHighWaterMark = options.highWaterMark;\n }\n Object.defineProperty(CountQueuingStrategy.prototype, \"highWaterMark\", {\n get: function () {\n if (!IsCountQueuingStrategy(this)) {\n throw countBrandCheckException('highWaterMark');\n }\n return this._countQueuingStrategyHighWaterMark;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(CountQueuingStrategy.prototype, \"size\", {\n get: function () {\n if (!IsCountQueuingStrategy(this)) {\n throw countBrandCheckException('size');\n }\n return countSizeFunction;\n },\n enumerable: false,\n configurable: true\n });\n return CountQueuingStrategy;\n }();\n Object.defineProperties(CountQueuingStrategy.prototype, {\n highWaterMark: { enumerable: true },\n size: { enumerable: true }\n });\n if (typeof SymbolPolyfill.toStringTag === 'symbol') {\n Object.defineProperty(CountQueuingStrategy.prototype, SymbolPolyfill.toStringTag, {\n value: 'CountQueuingStrategy',\n configurable: true\n });\n }\n function countBrandCheckException(name) {\n return new TypeError(\"CountQueuingStrategy.prototype.\" + name + \" can only be used on a CountQueuingStrategy\");\n }\n function IsCountQueuingStrategy(x) {\n if (!typeIsObject(x)) {\n return false;\n }\n if (!Object.prototype.hasOwnProperty.call(x, '_countQueuingStrategyHighWaterMark')) {\n return false;\n }\n return x instanceof CountQueuingStrategy;\n }\n function convertTransformer(original, context) {\n assertDictionary(original, context);\n var flush = original === null || original === void 0 ? void 0 : original.flush;\n var readableType = original === null || original === void 0 ? void 0 : original.readableType;\n var start = original === null || original === void 0 ? void 0 : original.start;\n var transform = original === null || original === void 0 ? void 0 : original.transform;\n var writableType = original === null || original === void 0 ? void 0 : original.writableType;\n return {\n flush: flush === undefined ? undefined : convertTransformerFlushCallback(flush, original, context + \" has member 'flush' that\"),\n readableType: readableType,\n start: start === undefined ? undefined : convertTransformerStartCallback(start, original, context + \" has member 'start' that\"),\n transform: transform === undefined ? undefined : convertTransformerTransformCallback(transform, original, context + \" has member 'transform' that\"),\n writableType: writableType\n };\n }\n function convertTransformerFlushCallback(fn, original, context) {\n assertFunction(fn, context);\n return function (controller) {\n return promiseCall(fn, original, [controller]);\n };\n }\n function convertTransformerStartCallback(fn, original, context) {\n assertFunction(fn, context);\n return function (controller) {\n return reflectCall(fn, original, [controller]);\n };\n }\n function convertTransformerTransformCallback(fn, original, context) {\n assertFunction(fn, context);\n return function (chunk, controller) {\n return promiseCall(fn, original, [\n chunk,\n controller\n ]);\n };\n }\n var TransformStream = function () {\n function TransformStream(rawTransformer, rawWritableStrategy, rawReadableStrategy) {\n if (rawTransformer === void 0) {\n rawTransformer = {};\n }\n if (rawWritableStrategy === void 0) {\n rawWritableStrategy = {};\n }\n if (rawReadableStrategy === void 0) {\n rawReadableStrategy = {};\n }\n if (rawTransformer === undefined) {\n rawTransformer = null;\n }\n var writableStrategy = convertQueuingStrategy(rawWritableStrategy, 'Second parameter');\n var readableStrategy = convertQueuingStrategy(rawReadableStrategy, 'Third parameter');\n var transformer = convertTransformer(rawTransformer, 'First parameter');\n if (transformer.readableType !== undefined) {\n throw new RangeError('Invalid readableType specified');\n }\n if (transformer.writableType !== undefined) {\n throw new RangeError('Invalid writableType specified');\n }\n var readableHighWaterMark = ExtractHighWaterMark(readableStrategy, 0);\n var readableSizeAlgorithm = ExtractSizeAlgorithm(readableStrategy);\n var writableHighWaterMark = ExtractHighWaterMark(writableStrategy, 1);\n var writableSizeAlgorithm = ExtractSizeAlgorithm(writableStrategy);\n var startPromise_resolve;\n var startPromise = newPromise(function (resolve) {\n startPromise_resolve = resolve;\n });\n InitializeTransformStream(this, startPromise, writableHighWaterMark, writableSizeAlgorithm, readableHighWaterMark, readableSizeAlgorithm);\n SetUpTransformStreamDefaultControllerFromTransformer(this, transformer);\n if (transformer.start !== undefined) {\n startPromise_resolve(transformer.start(this._transformStreamController));\n } else {\n startPromise_resolve(undefined);\n }\n }\n Object.defineProperty(TransformStream.prototype, \"readable\", {\n get: function () {\n if (!IsTransformStream(this)) {\n throw streamBrandCheckException('readable');\n }\n return this._readable;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(TransformStream.prototype, \"writable\", {\n get: function () {\n if (!IsTransformStream(this)) {\n throw streamBrandCheckException('writable');\n }\n return this._writable;\n },\n enumerable: false,\n configurable: true\n });\n return TransformStream;\n }();\n Object.defineProperties(TransformStream.prototype, {\n readable: { enumerable: true },\n writable: { enumerable: true }\n });\n if (typeof SymbolPolyfill.toStringTag === 'symbol') {\n Object.defineProperty(TransformStream.prototype, SymbolPolyfill.toStringTag, {\n value: 'TransformStream',\n configurable: true\n });\n }\n function InitializeTransformStream(stream, startPromise, writableHighWaterMark, writableSizeAlgorithm, readableHighWaterMark, readableSizeAlgorithm) {\n function startAlgorithm() {\n return startPromise;\n }\n function writeAlgorithm(chunk) {\n return TransformStreamDefaultSinkWriteAlgorithm(stream, chunk);\n }\n function abortAlgorithm(reason) {\n return TransformStreamDefaultSinkAbortAlgorithm(stream, reason);\n }\n function closeAlgorithm() {\n return TransformStreamDefaultSinkCloseAlgorithm(stream);\n }\n stream._writable = CreateWritableStream(startAlgorithm, writeAlgorithm, closeAlgorithm, abortAlgorithm, writableHighWaterMark, writableSizeAlgorithm);\n function pullAlgorithm() {\n return TransformStreamDefaultSourcePullAlgorithm(stream);\n }\n function cancelAlgorithm(reason) {\n TransformStreamErrorWritableAndUnblockWrite(stream, reason);\n return promiseResolvedWith(undefined);\n }\n stream._readable = CreateReadableStream(startAlgorithm, pullAlgorithm, cancelAlgorithm, readableHighWaterMark, readableSizeAlgorithm);\n stream._backpressure = undefined;\n stream._backpressureChangePromise = undefined;\n stream._backpressureChangePromise_resolve = undefined;\n TransformStreamSetBackpressure(stream, true);\n stream._transformStreamController = undefined;\n }\n function IsTransformStream(x) {\n if (!typeIsObject(x)) {\n return false;\n }\n if (!Object.prototype.hasOwnProperty.call(x, '_transformStreamController')) {\n return false;\n }\n return x instanceof TransformStream;\n }\n function TransformStreamError(stream, e) {\n ReadableStreamDefaultControllerError(stream._readable._readableStreamController, e);\n TransformStreamErrorWritableAndUnblockWrite(stream, e);\n }\n function TransformStreamErrorWritableAndUnblockWrite(stream, e) {\n TransformStreamDefaultControllerClearAlgorithms(stream._transformStreamController);\n WritableStreamDefaultControllerErrorIfNeeded(stream._writable._writableStreamController, e);\n if (stream._backpressure) {\n TransformStreamSetBackpressure(stream, false);\n }\n }\n function TransformStreamSetBackpressure(stream, backpressure) {\n if (stream._backpressureChangePromise !== undefined) {\n stream._backpressureChangePromise_resolve();\n }\n stream._backpressureChangePromise = newPromise(function (resolve) {\n stream._backpressureChangePromise_resolve = resolve;\n });\n stream._backpressure = backpressure;\n }\n var TransformStreamDefaultController = function () {\n function TransformStreamDefaultController() {\n throw new TypeError('Illegal constructor');\n }\n Object.defineProperty(TransformStreamDefaultController.prototype, \"desiredSize\", {\n get: function () {\n if (!IsTransformStreamDefaultController(this)) {\n throw defaultControllerBrandCheckException('desiredSize');\n }\n var readableController = this._controlledTransformStream._readable._readableStreamController;\n return ReadableStreamDefaultControllerGetDesiredSize(readableController);\n },\n enumerable: false,\n configurable: true\n });\n TransformStreamDefaultController.prototype.enqueue = function (chunk) {\n if (chunk === void 0) {\n chunk = undefined;\n }\n if (!IsTransformStreamDefaultController(this)) {\n throw defaultControllerBrandCheckException('enqueue');\n }\n TransformStreamDefaultControllerEnqueue(this, chunk);\n };\n TransformStreamDefaultController.prototype.error = function (reason) {\n if (reason === void 0) {\n reason = undefined;\n }\n if (!IsTransformStreamDefaultController(this)) {\n throw defaultControllerBrandCheckException('error');\n }\n TransformStreamDefaultControllerError(this, reason);\n };\n TransformStreamDefaultController.prototype.terminate = function () {\n if (!IsTransformStreamDefaultController(this)) {\n throw defaultControllerBrandCheckException('terminate');\n }\n TransformStreamDefaultControllerTerminate(this);\n };\n return TransformStreamDefaultController;\n }();\n Object.defineProperties(TransformStreamDefaultController.prototype, {\n enqueue: { enumerable: true },\n error: { enumerable: true },\n terminate: { enumerable: true },\n desiredSize: { enumerable: true }\n });\n if (typeof SymbolPolyfill.toStringTag === 'symbol') {\n Object.defineProperty(TransformStreamDefaultController.prototype, SymbolPolyfill.toStringTag, {\n value: 'TransformStreamDefaultController',\n configurable: true\n });\n }\n function IsTransformStreamDefaultController(x) {\n if (!typeIsObject(x)) {\n return false;\n }\n if (!Object.prototype.hasOwnProperty.call(x, '_controlledTransformStream')) {\n return false;\n }\n return x instanceof TransformStreamDefaultController;\n }\n function SetUpTransformStreamDefaultController(stream, controller, transformAlgorithm, flushAlgorithm) {\n controller._controlledTransformStream = stream;\n stream._transformStreamController = controller;\n controller._transformAlgorithm = transformAlgorithm;\n controller._flushAlgorithm = flushAlgorithm;\n }\n function SetUpTransformStreamDefaultControllerFromTransformer(stream, transformer) {\n var controller = Object.create(TransformStreamDefaultController.prototype);\n var transformAlgorithm = function (chunk) {\n try {\n TransformStreamDefaultControllerEnqueue(controller, chunk);\n return promiseResolvedWith(undefined);\n } catch (transformResultE) {\n return promiseRejectedWith(transformResultE);\n }\n };\n var flushAlgorithm = function () {\n return promiseResolvedWith(undefined);\n };\n if (transformer.transform !== undefined) {\n transformAlgorithm = function (chunk) {\n return transformer.transform(chunk, controller);\n };\n }\n if (transformer.flush !== undefined) {\n flushAlgorithm = function () {\n return transformer.flush(controller);\n };\n }\n SetUpTransformStreamDefaultController(stream, controller, transformAlgorithm, flushAlgorithm);\n }\n function TransformStreamDefaultControllerClearAlgorithms(controller) {\n controller._transformAlgorithm = undefined;\n controller._flushAlgorithm = undefined;\n }\n function TransformStreamDefaultControllerEnqueue(controller, chunk) {\n var stream = controller._controlledTransformStream;\n var readableController = stream._readable._readableStreamController;\n if (!ReadableStreamDefaultControllerCanCloseOrEnqueue(readableController)) {\n throw new TypeError('Readable side is not in a state that permits enqueue');\n }\n try {\n ReadableStreamDefaultControllerEnqueue(readableController, chunk);\n } catch (e) {\n TransformStreamErrorWritableAndUnblockWrite(stream, e);\n throw stream._readable._storedError;\n }\n var backpressure = ReadableStreamDefaultControllerHasBackpressure(readableController);\n if (backpressure !== stream._backpressure) {\n TransformStreamSetBackpressure(stream, true);\n }\n }\n function TransformStreamDefaultControllerError(controller, e) {\n TransformStreamError(controller._controlledTransformStream, e);\n }\n function TransformStreamDefaultControllerPerformTransform(controller, chunk) {\n var transformPromise = controller._transformAlgorithm(chunk);\n return transformPromiseWith(transformPromise, undefined, function (r) {\n TransformStreamError(controller._controlledTransformStream, r);\n throw r;\n });\n }\n function TransformStreamDefaultControllerTerminate(controller) {\n var stream = controller._controlledTransformStream;\n var readableController = stream._readable._readableStreamController;\n ReadableStreamDefaultControllerClose(readableController);\n var error = new TypeError('TransformStream terminated');\n TransformStreamErrorWritableAndUnblockWrite(stream, error);\n }\n function TransformStreamDefaultSinkWriteAlgorithm(stream, chunk) {\n var controller = stream._transformStreamController;\n if (stream._backpressure) {\n var backpressureChangePromise = stream._backpressureChangePromise;\n return transformPromiseWith(backpressureChangePromise, function () {\n var writable = stream._writable;\n var state = writable._state;\n if (state === 'erroring') {\n throw writable._storedError;\n }\n return TransformStreamDefaultControllerPerformTransform(controller, chunk);\n });\n }\n return TransformStreamDefaultControllerPerformTransform(controller, chunk);\n }\n function TransformStreamDefaultSinkAbortAlgorithm(stream, reason) {\n TransformStreamError(stream, reason);\n return promiseResolvedWith(undefined);\n }\n function TransformStreamDefaultSinkCloseAlgorithm(stream) {\n var readable = stream._readable;\n var controller = stream._transformStreamController;\n var flushPromise = controller._flushAlgorithm();\n TransformStreamDefaultControllerClearAlgorithms(controller);\n return transformPromiseWith(flushPromise, function () {\n if (readable._state === 'errored') {\n throw readable._storedError;\n }\n ReadableStreamDefaultControllerClose(readable._readableStreamController);\n }, function (r) {\n TransformStreamError(stream, r);\n throw readable._storedError;\n });\n }\n function TransformStreamDefaultSourcePullAlgorithm(stream) {\n TransformStreamSetBackpressure(stream, false);\n return stream._backpressureChangePromise;\n }\n function defaultControllerBrandCheckException(name) {\n return new TypeError(\"TransformStreamDefaultController.prototype.\" + name + \" can only be used on a TransformStreamDefaultController\");\n }\n function streamBrandCheckException(name) {\n return new TypeError(\"TransformStream.prototype.\" + name + \" can only be used on a TransformStream\");\n }\n exports.ByteLengthQueuingStrategy = ByteLengthQueuingStrategy;\n exports.CountQueuingStrategy = CountQueuingStrategy;\n exports.ReadableByteStreamController = ReadableByteStreamController;\n exports.ReadableStream = ReadableStream;\n exports.ReadableStreamBYOBReader = ReadableStreamBYOBReader;\n exports.ReadableStreamBYOBRequest = ReadableStreamBYOBRequest;\n exports.ReadableStreamDefaultController = ReadableStreamDefaultController;\n exports.ReadableStreamDefaultReader = ReadableStreamDefaultReader;\n exports.TransformStream = TransformStream;\n exports.TransformStreamDefaultController = TransformStreamDefaultController;\n exports.WritableStream = WritableStream;\n exports.WritableStreamDefaultController = WritableStreamDefaultController;\n exports.WritableStreamDefaultWriter = WritableStreamDefaultWriter;\n Object.defineProperty(exports, '__esModule', { value: true });\n}));\n\n/***/ }),\n/* 118 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.BaseSVGFactory = exports.BaseStandardFontDataFactory = exports.BaseCMapReaderFactory = exports.BaseCanvasFactory = void 0;\n\nvar _regenerator = _interopRequireDefault(__w_pdfjs_require__(2));\n\nvar _util = __w_pdfjs_require__(4);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }\n\nfunction _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err); } _next(undefined); }); }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nvar BaseCanvasFactory = /*#__PURE__*/function () {\n function BaseCanvasFactory() {\n _classCallCheck(this, BaseCanvasFactory);\n\n if (this.constructor === BaseCanvasFactory) {\n (0, _util.unreachable)(\"Cannot initialize BaseCanvasFactory.\");\n }\n }\n\n _createClass(BaseCanvasFactory, [{\n key: \"create\",\n value: function create(width, height) {\n if (width <= 0 || height <= 0) {\n throw new Error(\"Invalid canvas size\");\n }\n\n var canvas = this._createCanvas(width, height);\n\n return {\n canvas: canvas,\n context: canvas.getContext(\"2d\")\n };\n }\n }, {\n key: \"reset\",\n value: function reset(canvasAndContext, width, height) {\n if (!canvasAndContext.canvas) {\n throw new Error(\"Canvas is not specified\");\n }\n\n if (width <= 0 || height <= 0) {\n throw new Error(\"Invalid canvas size\");\n }\n\n canvasAndContext.canvas.width = width;\n canvasAndContext.canvas.height = height;\n }\n }, {\n key: \"destroy\",\n value: function destroy(canvasAndContext) {\n if (!canvasAndContext.canvas) {\n throw new Error(\"Canvas is not specified\");\n }\n\n canvasAndContext.canvas.width = 0;\n canvasAndContext.canvas.height = 0;\n canvasAndContext.canvas = null;\n canvasAndContext.context = null;\n }\n }, {\n key: \"_createCanvas\",\n value: function _createCanvas(width, height) {\n (0, _util.unreachable)(\"Abstract method `_createCanvas` called.\");\n }\n }]);\n\n return BaseCanvasFactory;\n}();\n\nexports.BaseCanvasFactory = BaseCanvasFactory;\n\nvar BaseCMapReaderFactory = /*#__PURE__*/function () {\n function BaseCMapReaderFactory(_ref) {\n var _ref$baseUrl = _ref.baseUrl,\n baseUrl = _ref$baseUrl === void 0 ? null : _ref$baseUrl,\n _ref$isCompressed = _ref.isCompressed,\n isCompressed = _ref$isCompressed === void 0 ? false : _ref$isCompressed;\n\n _classCallCheck(this, BaseCMapReaderFactory);\n\n if (this.constructor === BaseCMapReaderFactory) {\n (0, _util.unreachable)(\"Cannot initialize BaseCMapReaderFactory.\");\n }\n\n this.baseUrl = baseUrl;\n this.isCompressed = isCompressed;\n }\n\n _createClass(BaseCMapReaderFactory, [{\n key: \"fetch\",\n value: function () {\n var _fetch = _asyncToGenerator( /*#__PURE__*/_regenerator[\"default\"].mark(function _callee(_ref2) {\n var _this = this;\n\n var name, url, compressionType;\n return _regenerator[\"default\"].wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n name = _ref2.name;\n\n if (this.baseUrl) {\n _context.next = 3;\n break;\n }\n\n throw new Error('The CMap \"baseUrl\" parameter must be specified, ensure that ' + 'the \"cMapUrl\" and \"cMapPacked\" API parameters are provided.');\n\n case 3:\n if (name) {\n _context.next = 5;\n break;\n }\n\n throw new Error(\"CMap name must be specified.\");\n\n case 5:\n url = this.baseUrl + name + (this.isCompressed ? \".bcmap\" : \"\");\n compressionType = this.isCompressed ? _util.CMapCompressionType.BINARY : _util.CMapCompressionType.NONE;\n return _context.abrupt(\"return\", this._fetchData(url, compressionType)[\"catch\"](function (reason) {\n throw new Error(\"Unable to load \".concat(_this.isCompressed ? \"binary \" : \"\", \"CMap at: \").concat(url));\n }));\n\n case 8:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee, this);\n }));\n\n function fetch(_x) {\n return _fetch.apply(this, arguments);\n }\n\n return fetch;\n }()\n }, {\n key: \"_fetchData\",\n value: function _fetchData(url, compressionType) {\n (0, _util.unreachable)(\"Abstract method `_fetchData` called.\");\n }\n }]);\n\n return BaseCMapReaderFactory;\n}();\n\nexports.BaseCMapReaderFactory = BaseCMapReaderFactory;\n\nvar BaseStandardFontDataFactory = /*#__PURE__*/function () {\n function BaseStandardFontDataFactory(_ref3) {\n var _ref3$baseUrl = _ref3.baseUrl,\n baseUrl = _ref3$baseUrl === void 0 ? null : _ref3$baseUrl;\n\n _classCallCheck(this, BaseStandardFontDataFactory);\n\n if (this.constructor === BaseStandardFontDataFactory) {\n (0, _util.unreachable)(\"Cannot initialize BaseStandardFontDataFactory.\");\n }\n\n this.baseUrl = baseUrl;\n }\n\n _createClass(BaseStandardFontDataFactory, [{\n key: \"fetch\",\n value: function () {\n var _fetch2 = _asyncToGenerator( /*#__PURE__*/_regenerator[\"default\"].mark(function _callee2(_ref4) {\n var filename, url;\n return _regenerator[\"default\"].wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n filename = _ref4.filename;\n\n if (this.baseUrl) {\n _context2.next = 3;\n break;\n }\n\n throw new Error('The standard font \"baseUrl\" parameter must be specified, ensure that ' + 'the \"standardFontDataUrl\" API parameter is provided.');\n\n case 3:\n if (filename) {\n _context2.next = 5;\n break;\n }\n\n throw new Error(\"Font filename must be specified.\");\n\n case 5:\n url = \"\".concat(this.baseUrl).concat(filename);\n return _context2.abrupt(\"return\", this._fetchData(url)[\"catch\"](function (reason) {\n throw new Error(\"Unable to load font data at: \".concat(url));\n }));\n\n case 7:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2, this);\n }));\n\n function fetch(_x2) {\n return _fetch2.apply(this, arguments);\n }\n\n return fetch;\n }()\n }, {\n key: \"_fetchData\",\n value: function _fetchData(url) {\n (0, _util.unreachable)(\"Abstract method `_fetchData` called.\");\n }\n }]);\n\n return BaseStandardFontDataFactory;\n}();\n\nexports.BaseStandardFontDataFactory = BaseStandardFontDataFactory;\n\nvar BaseSVGFactory = /*#__PURE__*/function () {\n function BaseSVGFactory() {\n _classCallCheck(this, BaseSVGFactory);\n\n if (this.constructor === BaseSVGFactory) {\n (0, _util.unreachable)(\"Cannot initialize BaseSVGFactory.\");\n }\n }\n\n _createClass(BaseSVGFactory, [{\n key: \"create\",\n value: function create(width, height) {\n if (width <= 0 || height <= 0) {\n throw new Error(\"Invalid SVG dimensions\");\n }\n\n var svg = this._createSVG(\"svg:svg\");\n\n svg.setAttribute(\"version\", \"1.1\");\n svg.setAttribute(\"width\", \"\".concat(width, \"px\"));\n svg.setAttribute(\"height\", \"\".concat(height, \"px\"));\n svg.setAttribute(\"preserveAspectRatio\", \"none\");\n svg.setAttribute(\"viewBox\", \"0 0 \".concat(width, \" \").concat(height));\n return svg;\n }\n }, {\n key: \"createElement\",\n value: function createElement(type) {\n if (typeof type !== \"string\") {\n throw new Error(\"Invalid SVG element type\");\n }\n\n return this._createSVG(type);\n }\n }, {\n key: \"_createSVG\",\n value: function _createSVG(type) {\n (0, _util.unreachable)(\"Abstract method `_createSVG` called.\");\n }\n }]);\n\n return BaseSVGFactory;\n}();\n\nexports.BaseSVGFactory = BaseSVGFactory;\n\n/***/ }),\n/* 119 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.getDocument = getDocument;\nexports.setPDFNetworkStreamFactory = setPDFNetworkStreamFactory;\nexports.version = exports.RenderTask = exports.PDFWorker = exports.PDFPageProxy = exports.PDFDocumentProxy = exports.PDFDocumentLoadingTask = exports.PDFDataRangeTransport = exports.LoopbackPort = exports.DefaultStandardFontDataFactory = exports.DefaultCMapReaderFactory = exports.DefaultCanvasFactory = exports.build = void 0;\n\nvar _regenerator = _interopRequireDefault(__w_pdfjs_require__(2));\n\nvar _util = __w_pdfjs_require__(4);\n\nvar _display_utils = __w_pdfjs_require__(1);\n\nvar _font_loader = __w_pdfjs_require__(120);\n\nvar _node_utils = __w_pdfjs_require__(121);\n\nvar _annotation_storage = __w_pdfjs_require__(122);\n\nvar _canvas = __w_pdfjs_require__(123);\n\nvar _worker_options = __w_pdfjs_require__(125);\n\nvar _is_node = __w_pdfjs_require__(6);\n\nvar _message_handler = __w_pdfjs_require__(126);\n\nvar _metadata = __w_pdfjs_require__(127);\n\nvar _optional_content_config = __w_pdfjs_require__(128);\n\nvar _transport_stream = __w_pdfjs_require__(129);\n\nvar _xfa_text = __w_pdfjs_require__(130);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }\n\nfunction _nonIterableSpread() { throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\nfunction _iterableToArray(iter) { if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter); }\n\nfunction _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }\n\nfunction _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e2) { throw _e2; }, f: F }; } throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e3) { didErr = true; err = _e3; }, f: function f() { try { if (!normalCompletion && it[\"return\"] != null) it[\"return\"](); } finally { if (didErr) throw err; } } }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }\n\nfunction _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err); } _next(undefined); }); }; }\n\nfunction _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }\n\nfunction _nonIterableRest() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\nfunction _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== \"undefined\" && arr[Symbol.iterator] || arr[\"@@iterator\"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"] != null) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; }\n\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\n\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\nvar DEFAULT_RANGE_CHUNK_SIZE = 65536;\nvar RENDERING_CANCELLED_TIMEOUT = 100;\nvar DefaultCanvasFactory = _is_node.isNodeJS ? _node_utils.NodeCanvasFactory : _display_utils.DOMCanvasFactory;\nexports.DefaultCanvasFactory = DefaultCanvasFactory;\nvar DefaultCMapReaderFactory = _is_node.isNodeJS ? _node_utils.NodeCMapReaderFactory : _display_utils.DOMCMapReaderFactory;\nexports.DefaultCMapReaderFactory = DefaultCMapReaderFactory;\nvar DefaultStandardFontDataFactory = _is_node.isNodeJS ? _node_utils.NodeStandardFontDataFactory : _display_utils.DOMStandardFontDataFactory;\nexports.DefaultStandardFontDataFactory = DefaultStandardFontDataFactory;\nvar createPDFNetworkStream;\n\nfunction setPDFNetworkStreamFactory(pdfNetworkStreamFactory) {\n createPDFNetworkStream = pdfNetworkStreamFactory;\n}\n\nfunction getDocument(src) {\n var task = new PDFDocumentLoadingTask();\n var source;\n\n if (typeof src === \"string\" || src instanceof URL) {\n source = {\n url: src\n };\n } else if ((0, _util.isArrayBuffer)(src)) {\n source = {\n data: src\n };\n } else if (src instanceof PDFDataRangeTransport) {\n source = {\n range: src\n };\n } else {\n if (_typeof(src) !== \"object\") {\n throw new Error(\"Invalid parameter in getDocument, \" + \"need either string, URL, Uint8Array, or parameter object.\");\n }\n\n if (!src.url && !src.data && !src.range) {\n throw new Error(\"Invalid parameter object: need either .data, .range or .url\");\n }\n\n source = src;\n }\n\n var params = Object.create(null);\n var rangeTransport = null,\n worker = null;\n\n for (var key in source) {\n var value = source[key];\n\n switch (key) {\n case \"url\":\n if (typeof window !== \"undefined\") {\n try {\n params[key] = new URL(value, window.location).href;\n continue;\n } catch (ex) {\n (0, _util.warn)(\"Cannot create valid URL: \\\"\".concat(ex, \"\\\".\"));\n }\n } else if (typeof value === \"string\" || value instanceof URL) {\n params[key] = value.toString();\n continue;\n }\n\n throw new Error(\"Invalid PDF url data: \" + \"either string or URL-object is expected in the url property.\");\n\n case \"range\":\n rangeTransport = value;\n continue;\n\n case \"worker\":\n worker = value;\n continue;\n\n case \"data\":\n if (_is_node.isNodeJS && typeof Buffer !== \"undefined\" && value instanceof Buffer) {\n params[key] = new Uint8Array(value);\n } else if (value instanceof Uint8Array) {\n break;\n } else if (typeof value === \"string\") {\n params[key] = (0, _util.stringToBytes)(value);\n } else if (_typeof(value) === \"object\" && value !== null && !isNaN(value.length)) {\n params[key] = new Uint8Array(value);\n } else if ((0, _util.isArrayBuffer)(value)) {\n params[key] = new Uint8Array(value);\n } else {\n throw new Error(\"Invalid PDF binary data: either typed array, \" + \"string, or array-like object is expected in the data property.\");\n }\n\n continue;\n }\n\n params[key] = value;\n }\n\n params.rangeChunkSize = params.rangeChunkSize || DEFAULT_RANGE_CHUNK_SIZE;\n params.CMapReaderFactory = params.CMapReaderFactory || DefaultCMapReaderFactory;\n params.StandardFontDataFactory = params.StandardFontDataFactory || DefaultStandardFontDataFactory;\n params.ignoreErrors = params.stopAtErrors !== true;\n params.fontExtraProperties = params.fontExtraProperties === true;\n params.pdfBug = params.pdfBug === true;\n params.enableXfa = params.enableXfa === true;\n\n if (typeof params.docBaseUrl !== \"string\" || (0, _display_utils.isDataScheme)(params.docBaseUrl)) {\n params.docBaseUrl = null;\n }\n\n if (!Number.isInteger(params.maxImageSize)) {\n params.maxImageSize = -1;\n }\n\n if (typeof params.useWorkerFetch !== \"boolean\") {\n params.useWorkerFetch = params.CMapReaderFactory === _display_utils.DOMCMapReaderFactory && params.StandardFontDataFactory === _display_utils.DOMStandardFontDataFactory;\n }\n\n if (typeof params.isEvalSupported !== \"boolean\") {\n params.isEvalSupported = true;\n }\n\n if (typeof params.disableFontFace !== \"boolean\") {\n params.disableFontFace = _is_node.isNodeJS;\n }\n\n if (typeof params.useSystemFonts !== \"boolean\") {\n params.useSystemFonts = !_is_node.isNodeJS && !params.disableFontFace;\n }\n\n if (typeof params.ownerDocument === \"undefined\") {\n params.ownerDocument = globalThis.document;\n }\n\n if (typeof params.disableRange !== \"boolean\") {\n params.disableRange = false;\n }\n\n if (typeof params.disableStream !== \"boolean\") {\n params.disableStream = false;\n }\n\n if (typeof params.disableAutoFetch !== \"boolean\") {\n params.disableAutoFetch = false;\n }\n\n (0, _util.setVerbosityLevel)(params.verbosity);\n\n if (!worker) {\n var workerParams = {\n verbosity: params.verbosity,\n port: _worker_options.GlobalWorkerOptions.workerPort\n };\n worker = workerParams.port ? PDFWorker.fromPort(workerParams) : new PDFWorker(workerParams);\n task._worker = worker;\n }\n\n var docId = task.docId;\n worker.promise.then(function () {\n if (task.destroyed) {\n throw new Error(\"Loading aborted\");\n }\n\n var workerIdPromise = _fetchDocument(worker, params, rangeTransport, docId);\n\n var networkStreamPromise = new Promise(function (resolve) {\n var networkStream;\n\n if (rangeTransport) {\n networkStream = new _transport_stream.PDFDataTransportStream({\n length: params.length,\n initialData: params.initialData,\n progressiveDone: params.progressiveDone,\n contentDispositionFilename: params.contentDispositionFilename,\n disableRange: params.disableRange,\n disableStream: params.disableStream\n }, rangeTransport);\n } else if (!params.data) {\n networkStream = createPDFNetworkStream({\n url: params.url,\n length: params.length,\n httpHeaders: params.httpHeaders,\n withCredentials: params.withCredentials,\n rangeChunkSize: params.rangeChunkSize,\n disableRange: params.disableRange,\n disableStream: params.disableStream\n });\n }\n\n resolve(networkStream);\n });\n return Promise.all([workerIdPromise, networkStreamPromise]).then(function (_ref) {\n var _ref2 = _slicedToArray(_ref, 2),\n workerId = _ref2[0],\n networkStream = _ref2[1];\n\n if (task.destroyed) {\n throw new Error(\"Loading aborted\");\n }\n\n var messageHandler = new _message_handler.MessageHandler(docId, workerId, worker.port);\n messageHandler.postMessageTransfers = worker.postMessageTransfers;\n var transport = new WorkerTransport(messageHandler, task, networkStream, params);\n task._transport = transport;\n messageHandler.send(\"Ready\", null);\n });\n })[\"catch\"](task._capability.reject);\n return task;\n}\n\nfunction _fetchDocument(_x, _x2, _x3, _x4) {\n return _fetchDocument2.apply(this, arguments);\n}\n\nfunction _fetchDocument2() {\n _fetchDocument2 = _asyncToGenerator( /*#__PURE__*/_regenerator[\"default\"].mark(function _callee6(worker, source, pdfDataRangeTransport, docId) {\n var workerId;\n return _regenerator[\"default\"].wrap(function _callee6$(_context6) {\n while (1) {\n switch (_context6.prev = _context6.next) {\n case 0:\n if (!worker.destroyed) {\n _context6.next = 2;\n break;\n }\n\n throw new Error(\"Worker was destroyed\");\n\n case 2:\n if (pdfDataRangeTransport) {\n source.length = pdfDataRangeTransport.length;\n source.initialData = pdfDataRangeTransport.initialData;\n source.progressiveDone = pdfDataRangeTransport.progressiveDone;\n source.contentDispositionFilename = pdfDataRangeTransport.contentDispositionFilename;\n }\n\n _context6.next = 5;\n return worker.messageHandler.sendWithPromise(\"GetDocRequest\", {\n docId: docId,\n apiVersion: '2.11.338',\n source: {\n data: source.data,\n url: source.url,\n password: source.password,\n disableAutoFetch: source.disableAutoFetch,\n rangeChunkSize: source.rangeChunkSize,\n length: source.length\n },\n maxImageSize: source.maxImageSize,\n disableFontFace: source.disableFontFace,\n postMessageTransfers: worker.postMessageTransfers,\n docBaseUrl: source.docBaseUrl,\n ignoreErrors: source.ignoreErrors,\n isEvalSupported: source.isEvalSupported,\n fontExtraProperties: source.fontExtraProperties,\n enableXfa: source.enableXfa,\n useSystemFonts: source.useSystemFonts,\n cMapUrl: source.useWorkerFetch ? source.cMapUrl : null,\n standardFontDataUrl: source.useWorkerFetch ? source.standardFontDataUrl : null\n });\n\n case 5:\n workerId = _context6.sent;\n\n if (!worker.destroyed) {\n _context6.next = 8;\n break;\n }\n\n throw new Error(\"Worker was destroyed\");\n\n case 8:\n return _context6.abrupt(\"return\", workerId);\n\n case 9:\n case \"end\":\n return _context6.stop();\n }\n }\n }, _callee6);\n }));\n return _fetchDocument2.apply(this, arguments);\n}\n\nvar PDFDocumentLoadingTask = /*#__PURE__*/function () {\n function PDFDocumentLoadingTask() {\n _classCallCheck(this, PDFDocumentLoadingTask);\n\n this._capability = (0, _util.createPromiseCapability)();\n this._transport = null;\n this._worker = null;\n this.docId = \"d\".concat(PDFDocumentLoadingTask.idCounters.doc++);\n this.destroyed = false;\n this.onPassword = null;\n this.onProgress = null;\n this.onUnsupportedFeature = null;\n }\n\n _createClass(PDFDocumentLoadingTask, [{\n key: \"promise\",\n get: function get() {\n return this._capability.promise;\n }\n }, {\n key: \"destroy\",\n value: function () {\n var _destroy = _asyncToGenerator( /*#__PURE__*/_regenerator[\"default\"].mark(function _callee() {\n var _this$_transport;\n\n return _regenerator[\"default\"].wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n this.destroyed = true;\n _context.next = 3;\n return (_this$_transport = this._transport) === null || _this$_transport === void 0 ? void 0 : _this$_transport.destroy();\n\n case 3:\n this._transport = null;\n\n if (this._worker) {\n this._worker.destroy();\n\n this._worker = null;\n }\n\n case 5:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee, this);\n }));\n\n function destroy() {\n return _destroy.apply(this, arguments);\n }\n\n return destroy;\n }()\n }], [{\n key: \"idCounters\",\n get: function get() {\n return (0, _util.shadow)(this, \"idCounters\", {\n doc: 0\n });\n }\n }]);\n\n return PDFDocumentLoadingTask;\n}();\n\nexports.PDFDocumentLoadingTask = PDFDocumentLoadingTask;\n\nvar PDFDataRangeTransport = /*#__PURE__*/function () {\n function PDFDataRangeTransport(length, initialData) {\n var progressiveDone = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n var contentDispositionFilename = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : null;\n\n _classCallCheck(this, PDFDataRangeTransport);\n\n this.length = length;\n this.initialData = initialData;\n this.progressiveDone = progressiveDone;\n this.contentDispositionFilename = contentDispositionFilename;\n this._rangeListeners = [];\n this._progressListeners = [];\n this._progressiveReadListeners = [];\n this._progressiveDoneListeners = [];\n this._readyCapability = (0, _util.createPromiseCapability)();\n }\n\n _createClass(PDFDataRangeTransport, [{\n key: \"addRangeListener\",\n value: function addRangeListener(listener) {\n this._rangeListeners.push(listener);\n }\n }, {\n key: \"addProgressListener\",\n value: function addProgressListener(listener) {\n this._progressListeners.push(listener);\n }\n }, {\n key: \"addProgressiveReadListener\",\n value: function addProgressiveReadListener(listener) {\n this._progressiveReadListeners.push(listener);\n }\n }, {\n key: \"addProgressiveDoneListener\",\n value: function addProgressiveDoneListener(listener) {\n this._progressiveDoneListeners.push(listener);\n }\n }, {\n key: \"onDataRange\",\n value: function onDataRange(begin, chunk) {\n var _iterator = _createForOfIteratorHelper(this._rangeListeners),\n _step;\n\n try {\n for (_iterator.s(); !(_step = _iterator.n()).done;) {\n var listener = _step.value;\n listener(begin, chunk);\n }\n } catch (err) {\n _iterator.e(err);\n } finally {\n _iterator.f();\n }\n }\n }, {\n key: \"onDataProgress\",\n value: function onDataProgress(loaded, total) {\n var _this = this;\n\n this._readyCapability.promise.then(function () {\n var _iterator2 = _createForOfIteratorHelper(_this._progressListeners),\n _step2;\n\n try {\n for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {\n var listener = _step2.value;\n listener(loaded, total);\n }\n } catch (err) {\n _iterator2.e(err);\n } finally {\n _iterator2.f();\n }\n });\n }\n }, {\n key: \"onDataProgressiveRead\",\n value: function onDataProgressiveRead(chunk) {\n var _this2 = this;\n\n this._readyCapability.promise.then(function () {\n var _iterator3 = _createForOfIteratorHelper(_this2._progressiveReadListeners),\n _step3;\n\n try {\n for (_iterator3.s(); !(_step3 = _iterator3.n()).done;) {\n var listener = _step3.value;\n listener(chunk);\n }\n } catch (err) {\n _iterator3.e(err);\n } finally {\n _iterator3.f();\n }\n });\n }\n }, {\n key: \"onDataProgressiveDone\",\n value: function onDataProgressiveDone() {\n var _this3 = this;\n\n this._readyCapability.promise.then(function () {\n var _iterator4 = _createForOfIteratorHelper(_this3._progressiveDoneListeners),\n _step4;\n\n try {\n for (_iterator4.s(); !(_step4 = _iterator4.n()).done;) {\n var listener = _step4.value;\n listener();\n }\n } catch (err) {\n _iterator4.e(err);\n } finally {\n _iterator4.f();\n }\n });\n }\n }, {\n key: \"transportReady\",\n value: function transportReady() {\n this._readyCapability.resolve();\n }\n }, {\n key: \"requestDataRange\",\n value: function requestDataRange(begin, end) {\n (0, _util.unreachable)(\"Abstract method PDFDataRangeTransport.requestDataRange\");\n }\n }, {\n key: \"abort\",\n value: function abort() {}\n }]);\n\n return PDFDataRangeTransport;\n}();\n\nexports.PDFDataRangeTransport = PDFDataRangeTransport;\n\nvar PDFDocumentProxy = /*#__PURE__*/function () {\n function PDFDocumentProxy(pdfInfo, transport) {\n _classCallCheck(this, PDFDocumentProxy);\n\n this._pdfInfo = pdfInfo;\n this._transport = transport;\n Object.defineProperty(this, \"fingerprint\", {\n get: function get() {\n (0, _display_utils.deprecated)(\"`PDFDocumentProxy.fingerprint`, \" + \"please use `PDFDocumentProxy.fingerprints` instead.\");\n return this.fingerprints[0];\n }\n });\n }\n\n _createClass(PDFDocumentProxy, [{\n key: \"annotationStorage\",\n get: function get() {\n return this._transport.annotationStorage;\n }\n }, {\n key: \"numPages\",\n get: function get() {\n return this._pdfInfo.numPages;\n }\n }, {\n key: \"fingerprints\",\n get: function get() {\n return this._pdfInfo.fingerprints;\n }\n }, {\n key: \"isPureXfa\",\n get: function get() {\n return !!this._transport._htmlForXfa;\n }\n }, {\n key: \"allXfaHtml\",\n get: function get() {\n return this._transport._htmlForXfa;\n }\n }, {\n key: \"getPage\",\n value: function getPage(pageNumber) {\n return this._transport.getPage(pageNumber);\n }\n }, {\n key: \"getPageIndex\",\n value: function getPageIndex(ref) {\n return this._transport.getPageIndex(ref);\n }\n }, {\n key: \"getDestinations\",\n value: function getDestinations() {\n return this._transport.getDestinations();\n }\n }, {\n key: \"getDestination\",\n value: function getDestination(id) {\n return this._transport.getDestination(id);\n }\n }, {\n key: \"getPageLabels\",\n value: function getPageLabels() {\n return this._transport.getPageLabels();\n }\n }, {\n key: \"getPageLayout\",\n value: function getPageLayout() {\n return this._transport.getPageLayout();\n }\n }, {\n key: \"getPageMode\",\n value: function getPageMode() {\n return this._transport.getPageMode();\n }\n }, {\n key: \"getViewerPreferences\",\n value: function getViewerPreferences() {\n return this._transport.getViewerPreferences();\n }\n }, {\n key: \"getOpenAction\",\n value: function getOpenAction() {\n return this._transport.getOpenAction();\n }\n }, {\n key: \"getAttachments\",\n value: function getAttachments() {\n return this._transport.getAttachments();\n }\n }, {\n key: \"getJavaScript\",\n value: function getJavaScript() {\n return this._transport.getJavaScript();\n }\n }, {\n key: \"getJSActions\",\n value: function getJSActions() {\n return this._transport.getDocJSActions();\n }\n }, {\n key: \"getOutline\",\n value: function getOutline() {\n return this._transport.getOutline();\n }\n }, {\n key: \"getOptionalContentConfig\",\n value: function getOptionalContentConfig() {\n return this._transport.getOptionalContentConfig();\n }\n }, {\n key: \"getPermissions\",\n value: function getPermissions() {\n return this._transport.getPermissions();\n }\n }, {\n key: \"getMetadata\",\n value: function getMetadata() {\n return this._transport.getMetadata();\n }\n }, {\n key: \"getMarkInfo\",\n value: function getMarkInfo() {\n return this._transport.getMarkInfo();\n }\n }, {\n key: \"getData\",\n value: function getData() {\n return this._transport.getData();\n }\n }, {\n key: \"getDownloadInfo\",\n value: function getDownloadInfo() {\n return this._transport.downloadInfoCapability.promise;\n }\n }, {\n key: \"getStats\",\n value: function getStats() {\n return this._transport.getStats();\n }\n }, {\n key: \"cleanup\",\n value: function cleanup() {\n var keepLoadedFonts = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;\n return this._transport.startCleanup(keepLoadedFonts || this.isPureXfa);\n }\n }, {\n key: \"destroy\",\n value: function destroy() {\n return this.loadingTask.destroy();\n }\n }, {\n key: \"loadingParams\",\n get: function get() {\n return this._transport.loadingParams;\n }\n }, {\n key: \"loadingTask\",\n get: function get() {\n return this._transport.loadingTask;\n }\n }, {\n key: \"saveDocument\",\n value: function saveDocument() {\n if (this._transport.annotationStorage.size <= 0) {\n (0, _display_utils.deprecated)(\"saveDocument called while `annotationStorage` is empty, \" + \"please use the getData-method instead.\");\n }\n\n return this._transport.saveDocument();\n }\n }, {\n key: \"getFieldObjects\",\n value: function getFieldObjects() {\n return this._transport.getFieldObjects();\n }\n }, {\n key: \"hasJSActions\",\n value: function hasJSActions() {\n return this._transport.hasJSActions();\n }\n }, {\n key: \"getCalculationOrderIds\",\n value: function getCalculationOrderIds() {\n return this._transport.getCalculationOrderIds();\n }\n }]);\n\n return PDFDocumentProxy;\n}();\n\nexports.PDFDocumentProxy = PDFDocumentProxy;\n\nvar PDFPageProxy = /*#__PURE__*/function () {\n function PDFPageProxy(pageIndex, pageInfo, transport, ownerDocument) {\n var pdfBug = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : false;\n\n _classCallCheck(this, PDFPageProxy);\n\n this._pageIndex = pageIndex;\n this._pageInfo = pageInfo;\n this._ownerDocument = ownerDocument;\n this._transport = transport;\n this._stats = pdfBug ? new _display_utils.StatTimer() : null;\n this._pdfBug = pdfBug;\n this.commonObjs = transport.commonObjs;\n this.objs = new PDFObjects();\n this.cleanupAfterRender = false;\n this.pendingCleanup = false;\n this._intentStates = new Map();\n this._annotationPromises = new Map();\n this.destroyed = false;\n }\n\n _createClass(PDFPageProxy, [{\n key: \"pageNumber\",\n get: function get() {\n return this._pageIndex + 1;\n }\n }, {\n key: \"rotate\",\n get: function get() {\n return this._pageInfo.rotate;\n }\n }, {\n key: \"ref\",\n get: function get() {\n return this._pageInfo.ref;\n }\n }, {\n key: \"userUnit\",\n get: function get() {\n return this._pageInfo.userUnit;\n }\n }, {\n key: \"view\",\n get: function get() {\n return this._pageInfo.view;\n }\n }, {\n key: \"getViewport\",\n value: function getViewport() {\n var _ref3 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},\n scale = _ref3.scale,\n _ref3$rotation = _ref3.rotation,\n rotation = _ref3$rotation === void 0 ? this.rotate : _ref3$rotation,\n _ref3$offsetX = _ref3.offsetX,\n offsetX = _ref3$offsetX === void 0 ? 0 : _ref3$offsetX,\n _ref3$offsetY = _ref3.offsetY,\n offsetY = _ref3$offsetY === void 0 ? 0 : _ref3$offsetY,\n _ref3$dontFlip = _ref3.dontFlip,\n dontFlip = _ref3$dontFlip === void 0 ? false : _ref3$dontFlip;\n\n return new _display_utils.PageViewport({\n viewBox: this.view,\n scale: scale,\n rotation: rotation,\n offsetX: offsetX,\n offsetY: offsetY,\n dontFlip: dontFlip\n });\n }\n }, {\n key: \"getAnnotations\",\n value: function getAnnotations() {\n var _ref4 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},\n _ref4$intent = _ref4.intent,\n intent = _ref4$intent === void 0 ? \"display\" : _ref4$intent;\n\n var intentArgs = this._transport.getRenderingIntent(intent);\n\n var promise = this._annotationPromises.get(intentArgs.cacheKey);\n\n if (!promise) {\n promise = this._transport.getAnnotations(this._pageIndex, intentArgs.renderingIntent);\n\n this._annotationPromises.set(intentArgs.cacheKey, promise);\n\n promise = promise.then(function (annotations) {\n var _iterator5 = _createForOfIteratorHelper(annotations),\n _step5;\n\n try {\n var _loop = function _loop() {\n var annotation = _step5.value;\n\n if (annotation.titleObj !== undefined) {\n Object.defineProperty(annotation, \"title\", {\n get: function get() {\n (0, _display_utils.deprecated)(\"`title`-property on annotation, please use `titleObj` instead.\");\n return annotation.titleObj.str;\n }\n });\n }\n\n if (annotation.contentsObj !== undefined) {\n Object.defineProperty(annotation, \"contents\", {\n get: function get() {\n (0, _display_utils.deprecated)(\"`contents`-property on annotation, please use `contentsObj` instead.\");\n return annotation.contentsObj.str;\n }\n });\n }\n };\n\n for (_iterator5.s(); !(_step5 = _iterator5.n()).done;) {\n _loop();\n }\n } catch (err) {\n _iterator5.e(err);\n } finally {\n _iterator5.f();\n }\n\n return annotations;\n });\n }\n\n return promise;\n }\n }, {\n key: \"getJSActions\",\n value: function getJSActions() {\n return this._jsActionsPromise || (this._jsActionsPromise = this._transport.getPageJSActions(this._pageIndex));\n }\n }, {\n key: \"getXfa\",\n value: function () {\n var _getXfa = _asyncToGenerator( /*#__PURE__*/_regenerator[\"default\"].mark(function _callee2() {\n var _this$_transport$_htm;\n\n return _regenerator[\"default\"].wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n return _context2.abrupt(\"return\", ((_this$_transport$_htm = this._transport._htmlForXfa) === null || _this$_transport$_htm === void 0 ? void 0 : _this$_transport$_htm.children[this._pageIndex]) || null);\n\n case 1:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2, this);\n }));\n\n function getXfa() {\n return _getXfa.apply(this, arguments);\n }\n\n return getXfa;\n }()\n }, {\n key: \"render\",\n value: function render(_ref5) {\n var _arguments$,\n _arguments$2,\n _this4 = this,\n _intentState;\n\n var canvasContext = _ref5.canvasContext,\n viewport = _ref5.viewport,\n _ref5$intent = _ref5.intent,\n intent = _ref5$intent === void 0 ? \"display\" : _ref5$intent,\n _ref5$annotationMode = _ref5.annotationMode,\n annotationMode = _ref5$annotationMode === void 0 ? _util.AnnotationMode.ENABLE : _ref5$annotationMode,\n _ref5$transform = _ref5.transform,\n transform = _ref5$transform === void 0 ? null : _ref5$transform,\n _ref5$imageLayer = _ref5.imageLayer,\n imageLayer = _ref5$imageLayer === void 0 ? null : _ref5$imageLayer,\n _ref5$canvasFactory = _ref5.canvasFactory,\n canvasFactory = _ref5$canvasFactory === void 0 ? null : _ref5$canvasFactory,\n _ref5$background = _ref5.background,\n background = _ref5$background === void 0 ? null : _ref5$background,\n _ref5$optionalContent = _ref5.optionalContentConfigPromise,\n optionalContentConfigPromise = _ref5$optionalContent === void 0 ? null : _ref5$optionalContent;\n\n if (((_arguments$ = arguments[0]) === null || _arguments$ === void 0 ? void 0 : _arguments$.renderInteractiveForms) !== undefined) {\n (0, _display_utils.deprecated)(\"render no longer accepts the `renderInteractiveForms`-option, \" + \"please use the `annotationMode`-option instead.\");\n\n if (arguments[0].renderInteractiveForms === true && annotationMode === _util.AnnotationMode.ENABLE) {\n annotationMode = _util.AnnotationMode.ENABLE_FORMS;\n }\n }\n\n if (((_arguments$2 = arguments[0]) === null || _arguments$2 === void 0 ? void 0 : _arguments$2.includeAnnotationStorage) !== undefined) {\n (0, _display_utils.deprecated)(\"render no longer accepts the `includeAnnotationStorage`-option, \" + \"please use the `annotationMode`-option instead.\");\n\n if (arguments[0].includeAnnotationStorage === true && annotationMode === _util.AnnotationMode.ENABLE) {\n annotationMode = _util.AnnotationMode.ENABLE_STORAGE;\n }\n }\n\n if (this._stats) {\n this._stats.time(\"Overall\");\n }\n\n var intentArgs = this._transport.getRenderingIntent(intent, annotationMode);\n\n this.pendingCleanup = false;\n\n if (!optionalContentConfigPromise) {\n optionalContentConfigPromise = this._transport.getOptionalContentConfig();\n }\n\n var intentState = this._intentStates.get(intentArgs.cacheKey);\n\n if (!intentState) {\n intentState = Object.create(null);\n\n this._intentStates.set(intentArgs.cacheKey, intentState);\n }\n\n if (intentState.streamReaderCancelTimeout) {\n clearTimeout(intentState.streamReaderCancelTimeout);\n intentState.streamReaderCancelTimeout = null;\n }\n\n var canvasFactoryInstance = canvasFactory || new DefaultCanvasFactory({\n ownerDocument: this._ownerDocument\n });\n var intentPrint = !!(intentArgs.renderingIntent & _util.RenderingIntentFlag.PRINT);\n\n if (!intentState.displayReadyCapability) {\n intentState.displayReadyCapability = (0, _util.createPromiseCapability)();\n intentState.operatorList = {\n fnArray: [],\n argsArray: [],\n lastChunk: false\n };\n\n if (this._stats) {\n this._stats.time(\"Page Request\");\n }\n\n this._pumpOperatorList(intentArgs);\n }\n\n var complete = function complete(error) {\n intentState.renderTasks[\"delete\"](internalRenderTask);\n\n if (_this4.cleanupAfterRender || intentPrint) {\n _this4.pendingCleanup = true;\n }\n\n _this4._tryCleanup();\n\n if (error) {\n internalRenderTask.capability.reject(error);\n\n _this4._abortOperatorList({\n intentState: intentState,\n reason: error instanceof Error ? error : new Error(error)\n });\n } else {\n internalRenderTask.capability.resolve();\n }\n\n if (_this4._stats) {\n _this4._stats.timeEnd(\"Rendering\");\n\n _this4._stats.timeEnd(\"Overall\");\n }\n };\n\n var internalRenderTask = new InternalRenderTask({\n callback: complete,\n params: {\n canvasContext: canvasContext,\n viewport: viewport,\n transform: transform,\n imageLayer: imageLayer,\n background: background\n },\n objs: this.objs,\n commonObjs: this.commonObjs,\n operatorList: intentState.operatorList,\n pageIndex: this._pageIndex,\n canvasFactory: canvasFactoryInstance,\n useRequestAnimationFrame: !intentPrint,\n pdfBug: this._pdfBug\n });\n ((_intentState = intentState).renderTasks || (_intentState.renderTasks = new Set())).add(internalRenderTask);\n var renderTask = internalRenderTask.task;\n Promise.all([intentState.displayReadyCapability.promise, optionalContentConfigPromise]).then(function (_ref6) {\n var _ref7 = _slicedToArray(_ref6, 2),\n transparency = _ref7[0],\n optionalContentConfig = _ref7[1];\n\n if (_this4.pendingCleanup) {\n complete();\n return;\n }\n\n if (_this4._stats) {\n _this4._stats.time(\"Rendering\");\n }\n\n internalRenderTask.initializeGraphics({\n transparency: transparency,\n optionalContentConfig: optionalContentConfig\n });\n internalRenderTask.operatorListChanged();\n })[\"catch\"](complete);\n return renderTask;\n }\n }, {\n key: \"getOperatorList\",\n value: function getOperatorList() {\n var _ref8 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},\n _ref8$intent = _ref8.intent,\n intent = _ref8$intent === void 0 ? \"display\" : _ref8$intent,\n _ref8$annotationMode = _ref8.annotationMode,\n annotationMode = _ref8$annotationMode === void 0 ? _util.AnnotationMode.ENABLE : _ref8$annotationMode;\n\n function operatorListChanged() {\n if (intentState.operatorList.lastChunk) {\n intentState.opListReadCapability.resolve(intentState.operatorList);\n intentState.renderTasks[\"delete\"](opListTask);\n }\n }\n\n var intentArgs = this._transport.getRenderingIntent(intent, annotationMode, true);\n\n var intentState = this._intentStates.get(intentArgs.cacheKey);\n\n if (!intentState) {\n intentState = Object.create(null);\n\n this._intentStates.set(intentArgs.cacheKey, intentState);\n }\n\n var opListTask;\n\n if (!intentState.opListReadCapability) {\n var _intentState2;\n\n opListTask = Object.create(null);\n opListTask.operatorListChanged = operatorListChanged;\n intentState.opListReadCapability = (0, _util.createPromiseCapability)();\n ((_intentState2 = intentState).renderTasks || (_intentState2.renderTasks = new Set())).add(opListTask);\n intentState.operatorList = {\n fnArray: [],\n argsArray: [],\n lastChunk: false\n };\n\n if (this._stats) {\n this._stats.time(\"Page Request\");\n }\n\n this._pumpOperatorList(intentArgs);\n }\n\n return intentState.opListReadCapability.promise;\n }\n }, {\n key: \"streamTextContent\",\n value: function streamTextContent() {\n var _ref9 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},\n _ref9$normalizeWhites = _ref9.normalizeWhitespace,\n normalizeWhitespace = _ref9$normalizeWhites === void 0 ? false : _ref9$normalizeWhites,\n _ref9$disableCombineT = _ref9.disableCombineTextItems,\n disableCombineTextItems = _ref9$disableCombineT === void 0 ? false : _ref9$disableCombineT,\n _ref9$includeMarkedCo = _ref9.includeMarkedContent,\n includeMarkedContent = _ref9$includeMarkedCo === void 0 ? false : _ref9$includeMarkedCo;\n\n var TEXT_CONTENT_CHUNK_SIZE = 100;\n return this._transport.messageHandler.sendWithStream(\"GetTextContent\", {\n pageIndex: this._pageIndex,\n normalizeWhitespace: normalizeWhitespace === true,\n combineTextItems: disableCombineTextItems !== true,\n includeMarkedContent: includeMarkedContent === true\n }, {\n highWaterMark: TEXT_CONTENT_CHUNK_SIZE,\n size: function size(textContent) {\n return textContent.items.length;\n }\n });\n }\n }, {\n key: \"getTextContent\",\n value: function getTextContent() {\n var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n\n if (this._transport._htmlForXfa) {\n return this.getXfa().then(function (xfa) {\n return _xfa_text.XfaText.textContent(xfa);\n });\n }\n\n var readableStream = this.streamTextContent(params);\n return new Promise(function (resolve, reject) {\n function pump() {\n reader.read().then(function (_ref10) {\n var _textContent$items;\n\n var value = _ref10.value,\n done = _ref10.done;\n\n if (done) {\n resolve(textContent);\n return;\n }\n\n Object.assign(textContent.styles, value.styles);\n\n (_textContent$items = textContent.items).push.apply(_textContent$items, _toConsumableArray(value.items));\n\n pump();\n }, reject);\n }\n\n var reader = readableStream.getReader();\n var textContent = {\n items: [],\n styles: Object.create(null)\n };\n pump();\n });\n }\n }, {\n key: \"getStructTree\",\n value: function getStructTree() {\n return this._structTreePromise || (this._structTreePromise = this._transport.getStructTree(this._pageIndex));\n }\n }, {\n key: \"_destroy\",\n value: function _destroy() {\n this.destroyed = true;\n this._transport.pageCache[this._pageIndex] = null;\n var waitOn = [];\n\n var _iterator6 = _createForOfIteratorHelper(this._intentStates.values()),\n _step6;\n\n try {\n for (_iterator6.s(); !(_step6 = _iterator6.n()).done;) {\n var intentState = _step6.value;\n\n this._abortOperatorList({\n intentState: intentState,\n reason: new Error(\"Page was destroyed.\"),\n force: true\n });\n\n if (intentState.opListReadCapability) {\n continue;\n }\n\n var _iterator7 = _createForOfIteratorHelper(intentState.renderTasks),\n _step7;\n\n try {\n for (_iterator7.s(); !(_step7 = _iterator7.n()).done;) {\n var internalRenderTask = _step7.value;\n waitOn.push(internalRenderTask.completed);\n internalRenderTask.cancel();\n }\n } catch (err) {\n _iterator7.e(err);\n } finally {\n _iterator7.f();\n }\n }\n } catch (err) {\n _iterator6.e(err);\n } finally {\n _iterator6.f();\n }\n\n this.objs.clear();\n\n this._annotationPromises.clear();\n\n this._jsActionsPromise = null;\n this._structTreePromise = null;\n this.pendingCleanup = false;\n return Promise.all(waitOn);\n }\n }, {\n key: \"cleanup\",\n value: function cleanup() {\n var resetStats = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;\n this.pendingCleanup = true;\n return this._tryCleanup(resetStats);\n }\n }, {\n key: \"_tryCleanup\",\n value: function _tryCleanup() {\n var resetStats = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;\n\n if (!this.pendingCleanup) {\n return false;\n }\n\n var _iterator8 = _createForOfIteratorHelper(this._intentStates.values()),\n _step8;\n\n try {\n for (_iterator8.s(); !(_step8 = _iterator8.n()).done;) {\n var _step8$value = _step8.value,\n renderTasks = _step8$value.renderTasks,\n operatorList = _step8$value.operatorList;\n\n if (renderTasks.size > 0 || !operatorList.lastChunk) {\n return false;\n }\n }\n } catch (err) {\n _iterator8.e(err);\n } finally {\n _iterator8.f();\n }\n\n this._intentStates.clear();\n\n this.objs.clear();\n\n this._annotationPromises.clear();\n\n this._jsActionsPromise = null;\n this._structTreePromise = null;\n\n if (resetStats && this._stats) {\n this._stats = new _display_utils.StatTimer();\n }\n\n this.pendingCleanup = false;\n return true;\n }\n }, {\n key: \"_startRenderPage\",\n value: function _startRenderPage(transparency, cacheKey) {\n var intentState = this._intentStates.get(cacheKey);\n\n if (!intentState) {\n return;\n }\n\n if (this._stats) {\n this._stats.timeEnd(\"Page Request\");\n }\n\n if (intentState.displayReadyCapability) {\n intentState.displayReadyCapability.resolve(transparency);\n }\n }\n }, {\n key: \"_renderPageChunk\",\n value: function _renderPageChunk(operatorListChunk, intentState) {\n for (var i = 0, ii = operatorListChunk.length; i < ii; i++) {\n intentState.operatorList.fnArray.push(operatorListChunk.fnArray[i]);\n intentState.operatorList.argsArray.push(operatorListChunk.argsArray[i]);\n }\n\n intentState.operatorList.lastChunk = operatorListChunk.lastChunk;\n\n var _iterator9 = _createForOfIteratorHelper(intentState.renderTasks),\n _step9;\n\n try {\n for (_iterator9.s(); !(_step9 = _iterator9.n()).done;) {\n var internalRenderTask = _step9.value;\n internalRenderTask.operatorListChanged();\n }\n } catch (err) {\n _iterator9.e(err);\n } finally {\n _iterator9.f();\n }\n\n if (operatorListChunk.lastChunk) {\n this._tryCleanup();\n }\n }\n }, {\n key: \"_pumpOperatorList\",\n value: function _pumpOperatorList(_ref11) {\n var _this5 = this;\n\n var renderingIntent = _ref11.renderingIntent,\n cacheKey = _ref11.cacheKey;\n\n var readableStream = this._transport.messageHandler.sendWithStream(\"GetOperatorList\", {\n pageIndex: this._pageIndex,\n intent: renderingIntent,\n cacheKey: cacheKey,\n annotationStorage: renderingIntent & _util.RenderingIntentFlag.ANNOTATIONS_STORAGE ? this._transport.annotationStorage.serializable : null\n });\n\n var reader = readableStream.getReader();\n\n var intentState = this._intentStates.get(cacheKey);\n\n intentState.streamReader = reader;\n\n var pump = function pump() {\n reader.read().then(function (_ref12) {\n var value = _ref12.value,\n done = _ref12.done;\n\n if (done) {\n intentState.streamReader = null;\n return;\n }\n\n if (_this5._transport.destroyed) {\n return;\n }\n\n _this5._renderPageChunk(value, intentState);\n\n pump();\n }, function (reason) {\n intentState.streamReader = null;\n\n if (_this5._transport.destroyed) {\n return;\n }\n\n if (intentState.operatorList) {\n intentState.operatorList.lastChunk = true;\n\n var _iterator10 = _createForOfIteratorHelper(intentState.renderTasks),\n _step10;\n\n try {\n for (_iterator10.s(); !(_step10 = _iterator10.n()).done;) {\n var internalRenderTask = _step10.value;\n internalRenderTask.operatorListChanged();\n }\n } catch (err) {\n _iterator10.e(err);\n } finally {\n _iterator10.f();\n }\n\n _this5._tryCleanup();\n }\n\n if (intentState.displayReadyCapability) {\n intentState.displayReadyCapability.reject(reason);\n } else if (intentState.opListReadCapability) {\n intentState.opListReadCapability.reject(reason);\n } else {\n throw reason;\n }\n });\n };\n\n pump();\n }\n }, {\n key: \"_abortOperatorList\",\n value: function _abortOperatorList(_ref13) {\n var _this6 = this;\n\n var intentState = _ref13.intentState,\n reason = _ref13.reason,\n _ref13$force = _ref13.force,\n force = _ref13$force === void 0 ? false : _ref13$force;\n\n if (!intentState.streamReader) {\n return;\n }\n\n if (!force) {\n if (intentState.renderTasks.size > 0) {\n return;\n }\n\n if (reason instanceof _display_utils.RenderingCancelledException) {\n intentState.streamReaderCancelTimeout = setTimeout(function () {\n _this6._abortOperatorList({\n intentState: intentState,\n reason: reason,\n force: true\n });\n\n intentState.streamReaderCancelTimeout = null;\n }, RENDERING_CANCELLED_TIMEOUT);\n return;\n }\n }\n\n intentState.streamReader.cancel(new _util.AbortException(reason.message))[\"catch\"](function () {});\n intentState.streamReader = null;\n\n if (this._transport.destroyed) {\n return;\n }\n\n var _iterator11 = _createForOfIteratorHelper(this._intentStates),\n _step11;\n\n try {\n for (_iterator11.s(); !(_step11 = _iterator11.n()).done;) {\n var _step11$value = _slicedToArray(_step11.value, 2),\n curCacheKey = _step11$value[0],\n curIntentState = _step11$value[1];\n\n if (curIntentState === intentState) {\n this._intentStates[\"delete\"](curCacheKey);\n\n break;\n }\n }\n } catch (err) {\n _iterator11.e(err);\n } finally {\n _iterator11.f();\n }\n\n this.cleanup();\n }\n }, {\n key: \"stats\",\n get: function get() {\n return this._stats;\n }\n }]);\n\n return PDFPageProxy;\n}();\n\nexports.PDFPageProxy = PDFPageProxy;\n\nvar LoopbackPort = /*#__PURE__*/function () {\n function LoopbackPort() {\n _classCallCheck(this, LoopbackPort);\n\n this._listeners = [];\n this._deferred = Promise.resolve(undefined);\n }\n\n _createClass(LoopbackPort, [{\n key: \"postMessage\",\n value: function postMessage(obj, transfers) {\n var _this7 = this;\n\n function cloneValue(value) {\n if (typeof value === \"function\" || _typeof(value) === \"symbol\" || value instanceof URL) {\n throw new Error(\"LoopbackPort.postMessage - cannot clone: \".concat(value === null || value === void 0 ? void 0 : value.toString()));\n }\n\n if (_typeof(value) !== \"object\" || value === null) {\n return value;\n }\n\n if (cloned.has(value)) {\n return cloned.get(value);\n }\n\n var buffer, result;\n\n if ((buffer = value.buffer) && (0, _util.isArrayBuffer)(buffer)) {\n if (transfers !== null && transfers !== void 0 && transfers.includes(buffer)) {\n result = new value.constructor(buffer, value.byteOffset, value.byteLength);\n } else {\n result = new value.constructor(value);\n }\n\n cloned.set(value, result);\n return result;\n }\n\n if (value instanceof Map) {\n result = new Map();\n cloned.set(value, result);\n\n var _iterator12 = _createForOfIteratorHelper(value),\n _step12;\n\n try {\n for (_iterator12.s(); !(_step12 = _iterator12.n()).done;) {\n var _step12$value = _slicedToArray(_step12.value, 2),\n key = _step12$value[0],\n val = _step12$value[1];\n\n result.set(key, cloneValue(val));\n }\n } catch (err) {\n _iterator12.e(err);\n } finally {\n _iterator12.f();\n }\n\n return result;\n }\n\n if (value instanceof Set) {\n result = new Set();\n cloned.set(value, result);\n\n var _iterator13 = _createForOfIteratorHelper(value),\n _step13;\n\n try {\n for (_iterator13.s(); !(_step13 = _iterator13.n()).done;) {\n var _val = _step13.value;\n result.add(cloneValue(_val));\n }\n } catch (err) {\n _iterator13.e(err);\n } finally {\n _iterator13.f();\n }\n\n return result;\n }\n\n result = Array.isArray(value) ? [] : Object.create(null);\n cloned.set(value, result);\n\n for (var i in value) {\n var _value$hasOwnProperty;\n\n var desc = void 0,\n p = value;\n\n while (!(desc = Object.getOwnPropertyDescriptor(p, i))) {\n p = Object.getPrototypeOf(p);\n }\n\n if (typeof desc.value === \"undefined\") {\n continue;\n }\n\n if (typeof desc.value === \"function\" && !((_value$hasOwnProperty = value.hasOwnProperty) !== null && _value$hasOwnProperty !== void 0 && _value$hasOwnProperty.call(value, i))) {\n continue;\n }\n\n result[i] = cloneValue(desc.value);\n }\n\n return result;\n }\n\n var cloned = new WeakMap();\n var event = {\n data: cloneValue(obj)\n };\n\n this._deferred.then(function () {\n var _iterator14 = _createForOfIteratorHelper(_this7._listeners),\n _step14;\n\n try {\n for (_iterator14.s(); !(_step14 = _iterator14.n()).done;) {\n var listener = _step14.value;\n listener.call(_this7, event);\n }\n } catch (err) {\n _iterator14.e(err);\n } finally {\n _iterator14.f();\n }\n });\n }\n }, {\n key: \"addEventListener\",\n value: function addEventListener(name, listener) {\n this._listeners.push(listener);\n }\n }, {\n key: \"removeEventListener\",\n value: function removeEventListener(name, listener) {\n var i = this._listeners.indexOf(listener);\n\n this._listeners.splice(i, 1);\n }\n }, {\n key: \"terminate\",\n value: function terminate() {\n this._listeners.length = 0;\n }\n }]);\n\n return LoopbackPort;\n}();\n\nexports.LoopbackPort = LoopbackPort;\nvar PDFWorkerUtil = {\n isWorkerDisabled: false,\n fallbackWorkerSrc: null,\n fakeWorkerId: 0\n};\n{\n if (_is_node.isNodeJS && typeof require === \"function\") {\n PDFWorkerUtil.isWorkerDisabled = true;\n PDFWorkerUtil.fallbackWorkerSrc = \"./pdf.worker.js\";\n } else if ((typeof document === \"undefined\" ? \"undefined\" : _typeof(document)) === \"object\") {\n var _document, _document$currentScri;\n\n var pdfjsFilePath = (_document = document) === null || _document === void 0 ? void 0 : (_document$currentScri = _document.currentScript) === null || _document$currentScri === void 0 ? void 0 : _document$currentScri.src;\n\n if (pdfjsFilePath) {\n PDFWorkerUtil.fallbackWorkerSrc = pdfjsFilePath.replace(/(\\.(?:min\\.)?js)(\\?.*)?$/i, \".worker$1$2\");\n }\n }\n\n PDFWorkerUtil.createCDNWrapper = function (url) {\n var wrapper = \"importScripts(\\\"\".concat(url, \"\\\");\");\n return URL.createObjectURL(new Blob([wrapper]));\n };\n}\n\nvar PDFWorker = /*#__PURE__*/function () {\n function PDFWorker() {\n var _ref14 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},\n _ref14$name = _ref14.name,\n name = _ref14$name === void 0 ? null : _ref14$name,\n _ref14$port = _ref14.port,\n port = _ref14$port === void 0 ? null : _ref14$port,\n _ref14$verbosity = _ref14.verbosity,\n verbosity = _ref14$verbosity === void 0 ? (0, _util.getVerbosityLevel)() : _ref14$verbosity;\n\n _classCallCheck(this, PDFWorker);\n\n if (port && PDFWorker._workerPorts.has(port)) {\n throw new Error(\"Cannot use more than one PDFWorker per port.\");\n }\n\n this.name = name;\n this.destroyed = false;\n this.postMessageTransfers = true;\n this.verbosity = verbosity;\n this._readyCapability = (0, _util.createPromiseCapability)();\n this._port = null;\n this._webWorker = null;\n this._messageHandler = null;\n\n if (port) {\n PDFWorker._workerPorts.set(port, this);\n\n this._initializeFromPort(port);\n\n return;\n }\n\n this._initialize();\n }\n\n _createClass(PDFWorker, [{\n key: \"promise\",\n get: function get() {\n return this._readyCapability.promise;\n }\n }, {\n key: \"port\",\n get: function get() {\n return this._port;\n }\n }, {\n key: \"messageHandler\",\n get: function get() {\n return this._messageHandler;\n }\n }, {\n key: \"_initializeFromPort\",\n value: function _initializeFromPort(port) {\n this._port = port;\n this._messageHandler = new _message_handler.MessageHandler(\"main\", \"worker\", port);\n\n this._messageHandler.on(\"ready\", function () {});\n\n this._readyCapability.resolve();\n }\n }, {\n key: \"_initialize\",\n value: function _initialize() {\n var _this8 = this;\n\n if (typeof Worker !== \"undefined\" && !PDFWorkerUtil.isWorkerDisabled && !PDFWorker._mainThreadWorkerMessageHandler) {\n var workerSrc = PDFWorker.workerSrc;\n\n try {\n if (!(0, _util.isSameOrigin)(window.location.href, workerSrc)) {\n workerSrc = PDFWorkerUtil.createCDNWrapper(new URL(workerSrc, window.location).href);\n }\n\n var worker = new Worker(workerSrc);\n var messageHandler = new _message_handler.MessageHandler(\"main\", \"worker\", worker);\n\n var terminateEarly = function terminateEarly() {\n worker.removeEventListener(\"error\", onWorkerError);\n messageHandler.destroy();\n worker.terminate();\n\n if (_this8.destroyed) {\n _this8._readyCapability.reject(new Error(\"Worker was destroyed\"));\n } else {\n _this8._setupFakeWorker();\n }\n };\n\n var onWorkerError = function onWorkerError() {\n if (!_this8._webWorker) {\n terminateEarly();\n }\n };\n\n worker.addEventListener(\"error\", onWorkerError);\n messageHandler.on(\"test\", function (data) {\n worker.removeEventListener(\"error\", onWorkerError);\n\n if (_this8.destroyed) {\n terminateEarly();\n return;\n }\n\n if (data) {\n _this8._messageHandler = messageHandler;\n _this8._port = worker;\n _this8._webWorker = worker;\n\n if (!data.supportTransfers) {\n _this8.postMessageTransfers = false;\n }\n\n _this8._readyCapability.resolve();\n\n messageHandler.send(\"configure\", {\n verbosity: _this8.verbosity\n });\n } else {\n _this8._setupFakeWorker();\n\n messageHandler.destroy();\n worker.terminate();\n }\n });\n messageHandler.on(\"ready\", function (data) {\n worker.removeEventListener(\"error\", onWorkerError);\n\n if (_this8.destroyed) {\n terminateEarly();\n return;\n }\n\n try {\n sendTest();\n } catch (e) {\n _this8._setupFakeWorker();\n }\n });\n\n var sendTest = function sendTest() {\n var testObj = new Uint8Array([_this8.postMessageTransfers ? 255 : 0]);\n\n try {\n messageHandler.send(\"test\", testObj, [testObj.buffer]);\n } catch (ex) {\n (0, _util.warn)(\"Cannot use postMessage transfers.\");\n testObj[0] = 0;\n messageHandler.send(\"test\", testObj);\n }\n };\n\n sendTest();\n return;\n } catch (e) {\n (0, _util.info)(\"The worker has been disabled.\");\n }\n }\n\n this._setupFakeWorker();\n }\n }, {\n key: \"_setupFakeWorker\",\n value: function _setupFakeWorker() {\n var _this9 = this;\n\n if (!PDFWorkerUtil.isWorkerDisabled) {\n (0, _util.warn)(\"Setting up fake worker.\");\n PDFWorkerUtil.isWorkerDisabled = true;\n }\n\n PDFWorker._setupFakeWorkerGlobal.then(function (WorkerMessageHandler) {\n if (_this9.destroyed) {\n _this9._readyCapability.reject(new Error(\"Worker was destroyed\"));\n\n return;\n }\n\n var port = new LoopbackPort();\n _this9._port = port;\n var id = \"fake\".concat(PDFWorkerUtil.fakeWorkerId++);\n var workerHandler = new _message_handler.MessageHandler(id + \"_worker\", id, port);\n WorkerMessageHandler.setup(workerHandler, port);\n var messageHandler = new _message_handler.MessageHandler(id, id + \"_worker\", port);\n _this9._messageHandler = messageHandler;\n\n _this9._readyCapability.resolve();\n\n messageHandler.send(\"configure\", {\n verbosity: _this9.verbosity\n });\n })[\"catch\"](function (reason) {\n _this9._readyCapability.reject(new Error(\"Setting up fake worker failed: \\\"\".concat(reason.message, \"\\\".\")));\n });\n }\n }, {\n key: \"destroy\",\n value: function destroy() {\n this.destroyed = true;\n\n if (this._webWorker) {\n this._webWorker.terminate();\n\n this._webWorker = null;\n }\n\n PDFWorker._workerPorts[\"delete\"](this._port);\n\n this._port = null;\n\n if (this._messageHandler) {\n this._messageHandler.destroy();\n\n this._messageHandler = null;\n }\n }\n }], [{\n key: \"_workerPorts\",\n get: function get() {\n return (0, _util.shadow)(this, \"_workerPorts\", new WeakMap());\n }\n }, {\n key: \"fromPort\",\n value: function fromPort(params) {\n if (!(params !== null && params !== void 0 && params.port)) {\n throw new Error(\"PDFWorker.fromPort - invalid method signature.\");\n }\n\n if (this._workerPorts.has(params.port)) {\n return this._workerPorts.get(params.port);\n }\n\n return new PDFWorker(params);\n }\n }, {\n key: \"workerSrc\",\n get: function get() {\n if (_worker_options.GlobalWorkerOptions.workerSrc) {\n return _worker_options.GlobalWorkerOptions.workerSrc;\n }\n\n if (PDFWorkerUtil.fallbackWorkerSrc !== null) {\n if (!_is_node.isNodeJS) {\n (0, _display_utils.deprecated)('No \"GlobalWorkerOptions.workerSrc\" specified.');\n }\n\n return PDFWorkerUtil.fallbackWorkerSrc;\n }\n\n throw new Error('No \"GlobalWorkerOptions.workerSrc\" specified.');\n }\n }, {\n key: \"_mainThreadWorkerMessageHandler\",\n get: function get() {\n try {\n var _globalThis$pdfjsWork;\n\n return ((_globalThis$pdfjsWork = globalThis.pdfjsWorker) === null || _globalThis$pdfjsWork === void 0 ? void 0 : _globalThis$pdfjsWork.WorkerMessageHandler) || null;\n } catch (ex) {\n return null;\n }\n }\n }, {\n key: \"_setupFakeWorkerGlobal\",\n get: function get() {\n var _this10 = this;\n\n var loader = /*#__PURE__*/function () {\n var _ref15 = _asyncToGenerator( /*#__PURE__*/_regenerator[\"default\"].mark(function _callee3() {\n var mainWorkerMessageHandler, worker;\n return _regenerator[\"default\"].wrap(function _callee3$(_context3) {\n while (1) {\n switch (_context3.prev = _context3.next) {\n case 0:\n mainWorkerMessageHandler = _this10._mainThreadWorkerMessageHandler;\n\n if (!mainWorkerMessageHandler) {\n _context3.next = 3;\n break;\n }\n\n return _context3.abrupt(\"return\", mainWorkerMessageHandler);\n\n case 3:\n if (!(_is_node.isNodeJS && typeof require === \"function\")) {\n _context3.next = 6;\n break;\n }\n\n worker = eval(\"require\")(_this10.workerSrc);\n return _context3.abrupt(\"return\", worker.WorkerMessageHandler);\n\n case 6:\n _context3.next = 8;\n return (0, _display_utils.loadScript)(_this10.workerSrc);\n\n case 8:\n return _context3.abrupt(\"return\", window.pdfjsWorker.WorkerMessageHandler);\n\n case 9:\n case \"end\":\n return _context3.stop();\n }\n }\n }, _callee3);\n }));\n\n return function loader() {\n return _ref15.apply(this, arguments);\n };\n }();\n\n return (0, _util.shadow)(this, \"_setupFakeWorkerGlobal\", loader());\n }\n }]);\n\n return PDFWorker;\n}();\n\nexports.PDFWorker = PDFWorker;\n{\n PDFWorker.getWorkerSrc = function () {\n (0, _display_utils.deprecated)(\"`PDFWorker.getWorkerSrc()`, please use `PDFWorker.workerSrc` instead.\");\n return this.workerSrc;\n };\n}\n\nvar WorkerTransport = /*#__PURE__*/function () {\n function WorkerTransport(messageHandler, loadingTask, networkStream, params) {\n _classCallCheck(this, WorkerTransport);\n\n this.messageHandler = messageHandler;\n this.loadingTask = loadingTask;\n this.commonObjs = new PDFObjects();\n this.fontLoader = new _font_loader.FontLoader({\n docId: loadingTask.docId,\n onUnsupportedFeature: this._onUnsupportedFeature.bind(this),\n ownerDocument: params.ownerDocument,\n styleElement: params.styleElement\n });\n this._params = params;\n\n if (!params.useWorkerFetch) {\n this.CMapReaderFactory = new params.CMapReaderFactory({\n baseUrl: params.cMapUrl,\n isCompressed: params.cMapPacked\n });\n this.StandardFontDataFactory = new params.StandardFontDataFactory({\n baseUrl: params.standardFontDataUrl\n });\n }\n\n this.destroyed = false;\n this.destroyCapability = null;\n this._passwordCapability = null;\n this._networkStream = networkStream;\n this._fullReader = null;\n this._lastProgress = null;\n this.pageCache = [];\n this.pagePromises = [];\n this.downloadInfoCapability = (0, _util.createPromiseCapability)();\n this.setupMessageHandler();\n }\n\n _createClass(WorkerTransport, [{\n key: \"annotationStorage\",\n get: function get() {\n return (0, _util.shadow)(this, \"annotationStorage\", new _annotation_storage.AnnotationStorage());\n }\n }, {\n key: \"getRenderingIntent\",\n value: function getRenderingIntent(intent) {\n var annotationMode = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : _util.AnnotationMode.ENABLE;\n var isOpList = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n var renderingIntent = _util.RenderingIntentFlag.DISPLAY;\n var lastModified = \"\";\n\n switch (intent) {\n case \"any\":\n renderingIntent = _util.RenderingIntentFlag.ANY;\n break;\n\n case \"display\":\n break;\n\n case \"print\":\n renderingIntent = _util.RenderingIntentFlag.PRINT;\n break;\n\n default:\n (0, _util.warn)(\"getRenderingIntent - invalid intent: \".concat(intent));\n }\n\n switch (annotationMode) {\n case _util.AnnotationMode.DISABLE:\n renderingIntent += _util.RenderingIntentFlag.ANNOTATIONS_DISABLE;\n break;\n\n case _util.AnnotationMode.ENABLE:\n break;\n\n case _util.AnnotationMode.ENABLE_FORMS:\n renderingIntent += _util.RenderingIntentFlag.ANNOTATIONS_FORMS;\n break;\n\n case _util.AnnotationMode.ENABLE_STORAGE:\n renderingIntent += _util.RenderingIntentFlag.ANNOTATIONS_STORAGE;\n lastModified = this.annotationStorage.lastModified;\n break;\n\n default:\n (0, _util.warn)(\"getRenderingIntent - invalid annotationMode: \".concat(annotationMode));\n }\n\n if (isOpList) {\n renderingIntent += _util.RenderingIntentFlag.OPLIST;\n }\n\n return {\n renderingIntent: renderingIntent,\n cacheKey: \"\".concat(renderingIntent, \"_\").concat(lastModified)\n };\n }\n }, {\n key: \"destroy\",\n value: function destroy() {\n var _this11 = this;\n\n if (this.destroyCapability) {\n return this.destroyCapability.promise;\n }\n\n this.destroyed = true;\n this.destroyCapability = (0, _util.createPromiseCapability)();\n\n if (this._passwordCapability) {\n this._passwordCapability.reject(new Error(\"Worker was destroyed during onPassword callback\"));\n }\n\n var waitOn = [];\n\n var _iterator15 = _createForOfIteratorHelper(this.pageCache),\n _step15;\n\n try {\n for (_iterator15.s(); !(_step15 = _iterator15.n()).done;) {\n var page = _step15.value;\n\n if (page) {\n waitOn.push(page._destroy());\n }\n }\n } catch (err) {\n _iterator15.e(err);\n } finally {\n _iterator15.f();\n }\n\n this.pageCache.length = 0;\n this.pagePromises.length = 0;\n\n if (this.hasOwnProperty(\"annotationStorage\")) {\n this.annotationStorage.resetModified();\n }\n\n var terminated = this.messageHandler.sendWithPromise(\"Terminate\", null);\n waitOn.push(terminated);\n Promise.all(waitOn).then(function () {\n _this11.commonObjs.clear();\n\n _this11.fontLoader.clear();\n\n _this11._getFieldObjectsPromise = null;\n _this11._hasJSActionsPromise = null;\n\n if (_this11._networkStream) {\n _this11._networkStream.cancelAllRequests(new _util.AbortException(\"Worker was terminated.\"));\n }\n\n if (_this11.messageHandler) {\n _this11.messageHandler.destroy();\n\n _this11.messageHandler = null;\n }\n\n _this11.destroyCapability.resolve();\n }, this.destroyCapability.reject);\n return this.destroyCapability.promise;\n }\n }, {\n key: \"setupMessageHandler\",\n value: function setupMessageHandler() {\n var _this12 = this;\n\n var messageHandler = this.messageHandler,\n loadingTask = this.loadingTask;\n messageHandler.on(\"GetReader\", function (data, sink) {\n (0, _util.assert)(_this12._networkStream, \"GetReader - no `IPDFStream` instance available.\");\n _this12._fullReader = _this12._networkStream.getFullReader();\n\n _this12._fullReader.onProgress = function (evt) {\n _this12._lastProgress = {\n loaded: evt.loaded,\n total: evt.total\n };\n };\n\n sink.onPull = function () {\n _this12._fullReader.read().then(function (_ref16) {\n var value = _ref16.value,\n done = _ref16.done;\n\n if (done) {\n sink.close();\n return;\n }\n\n (0, _util.assert)((0, _util.isArrayBuffer)(value), \"GetReader - expected an ArrayBuffer.\");\n sink.enqueue(new Uint8Array(value), 1, [value]);\n })[\"catch\"](function (reason) {\n sink.error(reason);\n });\n };\n\n sink.onCancel = function (reason) {\n _this12._fullReader.cancel(reason);\n\n sink.ready[\"catch\"](function (readyReason) {\n if (_this12.destroyed) {\n return;\n }\n\n throw readyReason;\n });\n };\n });\n messageHandler.on(\"ReaderHeadersReady\", function (data) {\n var headersCapability = (0, _util.createPromiseCapability)();\n var fullReader = _this12._fullReader;\n fullReader.headersReady.then(function () {\n if (!fullReader.isStreamingSupported || !fullReader.isRangeSupported) {\n if (_this12._lastProgress && loadingTask.onProgress) {\n loadingTask.onProgress(_this12._lastProgress);\n }\n\n fullReader.onProgress = function (evt) {\n if (loadingTask.onProgress) {\n loadingTask.onProgress({\n loaded: evt.loaded,\n total: evt.total\n });\n }\n };\n }\n\n headersCapability.resolve({\n isStreamingSupported: fullReader.isStreamingSupported,\n isRangeSupported: fullReader.isRangeSupported,\n contentLength: fullReader.contentLength\n });\n }, headersCapability.reject);\n return headersCapability.promise;\n });\n messageHandler.on(\"GetRangeReader\", function (data, sink) {\n (0, _util.assert)(_this12._networkStream, \"GetRangeReader - no `IPDFStream` instance available.\");\n\n var rangeReader = _this12._networkStream.getRangeReader(data.begin, data.end);\n\n if (!rangeReader) {\n sink.close();\n return;\n }\n\n sink.onPull = function () {\n rangeReader.read().then(function (_ref17) {\n var value = _ref17.value,\n done = _ref17.done;\n\n if (done) {\n sink.close();\n return;\n }\n\n (0, _util.assert)((0, _util.isArrayBuffer)(value), \"GetRangeReader - expected an ArrayBuffer.\");\n sink.enqueue(new Uint8Array(value), 1, [value]);\n })[\"catch\"](function (reason) {\n sink.error(reason);\n });\n };\n\n sink.onCancel = function (reason) {\n rangeReader.cancel(reason);\n sink.ready[\"catch\"](function (readyReason) {\n if (_this12.destroyed) {\n return;\n }\n\n throw readyReason;\n });\n };\n });\n messageHandler.on(\"GetDoc\", function (_ref18) {\n var pdfInfo = _ref18.pdfInfo;\n _this12._numPages = pdfInfo.numPages;\n _this12._htmlForXfa = pdfInfo.htmlForXfa;\n delete pdfInfo.htmlForXfa;\n\n loadingTask._capability.resolve(new PDFDocumentProxy(pdfInfo, _this12));\n });\n messageHandler.on(\"DocException\", function (ex) {\n var reason;\n\n switch (ex.name) {\n case \"PasswordException\":\n reason = new _util.PasswordException(ex.message, ex.code);\n break;\n\n case \"InvalidPDFException\":\n reason = new _util.InvalidPDFException(ex.message);\n break;\n\n case \"MissingPDFException\":\n reason = new _util.MissingPDFException(ex.message);\n break;\n\n case \"UnexpectedResponseException\":\n reason = new _util.UnexpectedResponseException(ex.message, ex.status);\n break;\n\n case \"UnknownErrorException\":\n reason = new _util.UnknownErrorException(ex.message, ex.details);\n break;\n\n default:\n (0, _util.unreachable)(\"DocException - expected a valid Error.\");\n }\n\n loadingTask._capability.reject(reason);\n });\n messageHandler.on(\"PasswordRequest\", function (exception) {\n _this12._passwordCapability = (0, _util.createPromiseCapability)();\n\n if (loadingTask.onPassword) {\n var updatePassword = function updatePassword(password) {\n _this12._passwordCapability.resolve({\n password: password\n });\n };\n\n try {\n loadingTask.onPassword(updatePassword, exception.code);\n } catch (ex) {\n _this12._passwordCapability.reject(ex);\n }\n } else {\n _this12._passwordCapability.reject(new _util.PasswordException(exception.message, exception.code));\n }\n\n return _this12._passwordCapability.promise;\n });\n messageHandler.on(\"DataLoaded\", function (data) {\n if (loadingTask.onProgress) {\n loadingTask.onProgress({\n loaded: data.length,\n total: data.length\n });\n }\n\n _this12.downloadInfoCapability.resolve(data);\n });\n messageHandler.on(\"StartRenderPage\", function (data) {\n if (_this12.destroyed) {\n return;\n }\n\n var page = _this12.pageCache[data.pageIndex];\n\n page._startRenderPage(data.transparency, data.cacheKey);\n });\n messageHandler.on(\"commonobj\", function (data) {\n var _globalThis$FontInspe;\n\n if (_this12.destroyed) {\n return;\n }\n\n var _data = _slicedToArray(data, 3),\n id = _data[0],\n type = _data[1],\n exportedData = _data[2];\n\n if (_this12.commonObjs.has(id)) {\n return;\n }\n\n switch (type) {\n case \"Font\":\n var params = _this12._params;\n\n if (\"error\" in exportedData) {\n var exportedError = exportedData.error;\n (0, _util.warn)(\"Error during font loading: \".concat(exportedError));\n\n _this12.commonObjs.resolve(id, exportedError);\n\n break;\n }\n\n var fontRegistry = null;\n\n if (params.pdfBug && (_globalThis$FontInspe = globalThis.FontInspector) !== null && _globalThis$FontInspe !== void 0 && _globalThis$FontInspe.enabled) {\n fontRegistry = {\n registerFont: function registerFont(font, url) {\n globalThis.FontInspector.fontAdded(font, url);\n }\n };\n }\n\n var font = new _font_loader.FontFaceObject(exportedData, {\n isEvalSupported: params.isEvalSupported,\n disableFontFace: params.disableFontFace,\n ignoreErrors: params.ignoreErrors,\n onUnsupportedFeature: _this12._onUnsupportedFeature.bind(_this12),\n fontRegistry: fontRegistry\n });\n\n _this12.fontLoader.bind(font)[\"catch\"](function (reason) {\n return messageHandler.sendWithPromise(\"FontFallback\", {\n id: id\n });\n })[\"finally\"](function () {\n if (!params.fontExtraProperties && font.data) {\n font.data = null;\n }\n\n _this12.commonObjs.resolve(id, font);\n });\n\n break;\n\n case \"FontPath\":\n case \"Image\":\n _this12.commonObjs.resolve(id, exportedData);\n\n break;\n\n default:\n throw new Error(\"Got unknown common object type \".concat(type));\n }\n });\n messageHandler.on(\"obj\", function (data) {\n var _imageData$data;\n\n if (_this12.destroyed) {\n return undefined;\n }\n\n var _data2 = _slicedToArray(data, 4),\n id = _data2[0],\n pageIndex = _data2[1],\n type = _data2[2],\n imageData = _data2[3];\n\n var pageProxy = _this12.pageCache[pageIndex];\n\n if (pageProxy.objs.has(id)) {\n return undefined;\n }\n\n switch (type) {\n case \"Image\":\n pageProxy.objs.resolve(id, imageData);\n var MAX_IMAGE_SIZE_TO_STORE = 8000000;\n\n if ((imageData === null || imageData === void 0 ? void 0 : (_imageData$data = imageData.data) === null || _imageData$data === void 0 ? void 0 : _imageData$data.length) > MAX_IMAGE_SIZE_TO_STORE) {\n pageProxy.cleanupAfterRender = true;\n }\n\n break;\n\n case \"Pattern\":\n pageProxy.objs.resolve(id, imageData);\n break;\n\n default:\n throw new Error(\"Got unknown object type \".concat(type));\n }\n\n return undefined;\n });\n messageHandler.on(\"DocProgress\", function (data) {\n if (_this12.destroyed) {\n return;\n }\n\n if (loadingTask.onProgress) {\n loadingTask.onProgress({\n loaded: data.loaded,\n total: data.total\n });\n }\n });\n messageHandler.on(\"UnsupportedFeature\", this._onUnsupportedFeature.bind(this));\n messageHandler.on(\"FetchBuiltInCMap\", function (data) {\n if (_this12.destroyed) {\n return Promise.reject(new Error(\"Worker was destroyed.\"));\n }\n\n if (!_this12.CMapReaderFactory) {\n return Promise.reject(new Error(\"CMapReaderFactory not initialized, see the `useWorkerFetch` parameter.\"));\n }\n\n return _this12.CMapReaderFactory.fetch(data);\n });\n messageHandler.on(\"FetchStandardFontData\", function (data) {\n if (_this12.destroyed) {\n return Promise.reject(new Error(\"Worker was destroyed.\"));\n }\n\n if (!_this12.StandardFontDataFactory) {\n return Promise.reject(new Error(\"StandardFontDataFactory not initialized, see the `useWorkerFetch` parameter.\"));\n }\n\n return _this12.StandardFontDataFactory.fetch(data);\n });\n }\n }, {\n key: \"_onUnsupportedFeature\",\n value: function _onUnsupportedFeature(_ref19) {\n var featureId = _ref19.featureId;\n\n if (this.destroyed) {\n return;\n }\n\n if (this.loadingTask.onUnsupportedFeature) {\n this.loadingTask.onUnsupportedFeature(featureId);\n }\n }\n }, {\n key: \"getData\",\n value: function getData() {\n return this.messageHandler.sendWithPromise(\"GetData\", null);\n }\n }, {\n key: \"getPage\",\n value: function getPage(pageNumber) {\n var _this13 = this;\n\n if (!Number.isInteger(pageNumber) || pageNumber <= 0 || pageNumber > this._numPages) {\n return Promise.reject(new Error(\"Invalid page request\"));\n }\n\n var pageIndex = pageNumber - 1;\n\n if (pageIndex in this.pagePromises) {\n return this.pagePromises[pageIndex];\n }\n\n var promise = this.messageHandler.sendWithPromise(\"GetPage\", {\n pageIndex: pageIndex\n }).then(function (pageInfo) {\n if (_this13.destroyed) {\n throw new Error(\"Transport destroyed\");\n }\n\n var page = new PDFPageProxy(pageIndex, pageInfo, _this13, _this13._params.ownerDocument, _this13._params.pdfBug);\n _this13.pageCache[pageIndex] = page;\n return page;\n });\n this.pagePromises[pageIndex] = promise;\n return promise;\n }\n }, {\n key: \"getPageIndex\",\n value: function getPageIndex(ref) {\n return this.messageHandler.sendWithPromise(\"GetPageIndex\", {\n ref: ref\n });\n }\n }, {\n key: \"getAnnotations\",\n value: function getAnnotations(pageIndex, intent) {\n return this.messageHandler.sendWithPromise(\"GetAnnotations\", {\n pageIndex: pageIndex,\n intent: intent\n });\n }\n }, {\n key: \"saveDocument\",\n value: function saveDocument() {\n var _this$_fullReader$fil,\n _this$_fullReader,\n _this14 = this;\n\n return this.messageHandler.sendWithPromise(\"SaveDocument\", {\n isPureXfa: !!this._htmlForXfa,\n numPages: this._numPages,\n annotationStorage: this.annotationStorage.serializable,\n filename: (_this$_fullReader$fil = (_this$_fullReader = this._fullReader) === null || _this$_fullReader === void 0 ? void 0 : _this$_fullReader.filename) !== null && _this$_fullReader$fil !== void 0 ? _this$_fullReader$fil : null\n })[\"finally\"](function () {\n _this14.annotationStorage.resetModified();\n });\n }\n }, {\n key: \"getFieldObjects\",\n value: function getFieldObjects() {\n return this._getFieldObjectsPromise || (this._getFieldObjectsPromise = this.messageHandler.sendWithPromise(\"GetFieldObjects\", null));\n }\n }, {\n key: \"hasJSActions\",\n value: function hasJSActions() {\n return this._hasJSActionsPromise || (this._hasJSActionsPromise = this.messageHandler.sendWithPromise(\"HasJSActions\", null));\n }\n }, {\n key: \"getCalculationOrderIds\",\n value: function getCalculationOrderIds() {\n return this.messageHandler.sendWithPromise(\"GetCalculationOrderIds\", null);\n }\n }, {\n key: \"getDestinations\",\n value: function getDestinations() {\n return this.messageHandler.sendWithPromise(\"GetDestinations\", null);\n }\n }, {\n key: \"getDestination\",\n value: function getDestination(id) {\n if (typeof id !== \"string\") {\n return Promise.reject(new Error(\"Invalid destination request.\"));\n }\n\n return this.messageHandler.sendWithPromise(\"GetDestination\", {\n id: id\n });\n }\n }, {\n key: \"getPageLabels\",\n value: function getPageLabels() {\n return this.messageHandler.sendWithPromise(\"GetPageLabels\", null);\n }\n }, {\n key: \"getPageLayout\",\n value: function getPageLayout() {\n return this.messageHandler.sendWithPromise(\"GetPageLayout\", null);\n }\n }, {\n key: \"getPageMode\",\n value: function getPageMode() {\n return this.messageHandler.sendWithPromise(\"GetPageMode\", null);\n }\n }, {\n key: \"getViewerPreferences\",\n value: function getViewerPreferences() {\n return this.messageHandler.sendWithPromise(\"GetViewerPreferences\", null);\n }\n }, {\n key: \"getOpenAction\",\n value: function getOpenAction() {\n return this.messageHandler.sendWithPromise(\"GetOpenAction\", null);\n }\n }, {\n key: \"getAttachments\",\n value: function getAttachments() {\n return this.messageHandler.sendWithPromise(\"GetAttachments\", null);\n }\n }, {\n key: \"getJavaScript\",\n value: function getJavaScript() {\n return this.messageHandler.sendWithPromise(\"GetJavaScript\", null);\n }\n }, {\n key: \"getDocJSActions\",\n value: function getDocJSActions() {\n return this.messageHandler.sendWithPromise(\"GetDocJSActions\", null);\n }\n }, {\n key: \"getPageJSActions\",\n value: function getPageJSActions(pageIndex) {\n return this.messageHandler.sendWithPromise(\"GetPageJSActions\", {\n pageIndex: pageIndex\n });\n }\n }, {\n key: \"getStructTree\",\n value: function getStructTree(pageIndex) {\n return this.messageHandler.sendWithPromise(\"GetStructTree\", {\n pageIndex: pageIndex\n });\n }\n }, {\n key: \"getOutline\",\n value: function getOutline() {\n return this.messageHandler.sendWithPromise(\"GetOutline\", null);\n }\n }, {\n key: \"getOptionalContentConfig\",\n value: function getOptionalContentConfig() {\n return this.messageHandler.sendWithPromise(\"GetOptionalContentConfig\", null).then(function (results) {\n return new _optional_content_config.OptionalContentConfig(results);\n });\n }\n }, {\n key: \"getPermissions\",\n value: function getPermissions() {\n return this.messageHandler.sendWithPromise(\"GetPermissions\", null);\n }\n }, {\n key: \"getMetadata\",\n value: function getMetadata() {\n var _this15 = this;\n\n return this.messageHandler.sendWithPromise(\"GetMetadata\", null).then(function (results) {\n var _this15$_fullReader$f, _this15$_fullReader, _this15$_fullReader$c, _this15$_fullReader2;\n\n return {\n info: results[0],\n metadata: results[1] ? new _metadata.Metadata(results[1]) : null,\n contentDispositionFilename: (_this15$_fullReader$f = (_this15$_fullReader = _this15._fullReader) === null || _this15$_fullReader === void 0 ? void 0 : _this15$_fullReader.filename) !== null && _this15$_fullReader$f !== void 0 ? _this15$_fullReader$f : null,\n contentLength: (_this15$_fullReader$c = (_this15$_fullReader2 = _this15._fullReader) === null || _this15$_fullReader2 === void 0 ? void 0 : _this15$_fullReader2.contentLength) !== null && _this15$_fullReader$c !== void 0 ? _this15$_fullReader$c : null\n };\n });\n }\n }, {\n key: \"getMarkInfo\",\n value: function getMarkInfo() {\n return this.messageHandler.sendWithPromise(\"GetMarkInfo\", null);\n }\n }, {\n key: \"getStats\",\n value: function getStats() {\n return this.messageHandler.sendWithPromise(\"GetStats\", null);\n }\n }, {\n key: \"startCleanup\",\n value: function () {\n var _startCleanup = _asyncToGenerator( /*#__PURE__*/_regenerator[\"default\"].mark(function _callee4() {\n var keepLoadedFonts,\n i,\n ii,\n page,\n cleanupSuccessful,\n _args4 = arguments;\n return _regenerator[\"default\"].wrap(function _callee4$(_context4) {\n while (1) {\n switch (_context4.prev = _context4.next) {\n case 0:\n keepLoadedFonts = _args4.length > 0 && _args4[0] !== undefined ? _args4[0] : false;\n _context4.next = 3;\n return this.messageHandler.sendWithPromise(\"Cleanup\", null);\n\n case 3:\n if (!this.destroyed) {\n _context4.next = 5;\n break;\n }\n\n return _context4.abrupt(\"return\");\n\n case 5:\n i = 0, ii = this.pageCache.length;\n\n case 6:\n if (!(i < ii)) {\n _context4.next = 16;\n break;\n }\n\n page = this.pageCache[i];\n\n if (page) {\n _context4.next = 10;\n break;\n }\n\n return _context4.abrupt(\"continue\", 13);\n\n case 10:\n cleanupSuccessful = page.cleanup();\n\n if (cleanupSuccessful) {\n _context4.next = 13;\n break;\n }\n\n throw new Error(\"startCleanup: Page \".concat(i + 1, \" is currently rendering.\"));\n\n case 13:\n i++;\n _context4.next = 6;\n break;\n\n case 16:\n this.commonObjs.clear();\n\n if (!keepLoadedFonts) {\n this.fontLoader.clear();\n }\n\n this._getFieldObjectsPromise = null;\n this._hasJSActionsPromise = null;\n\n case 20:\n case \"end\":\n return _context4.stop();\n }\n }\n }, _callee4, this);\n }));\n\n function startCleanup() {\n return _startCleanup.apply(this, arguments);\n }\n\n return startCleanup;\n }()\n }, {\n key: \"loadingParams\",\n get: function get() {\n var params = this._params;\n return (0, _util.shadow)(this, \"loadingParams\", {\n disableAutoFetch: params.disableAutoFetch,\n enableXfa: params.enableXfa\n });\n }\n }]);\n\n return WorkerTransport;\n}();\n\nvar PDFObjects = /*#__PURE__*/function () {\n function PDFObjects() {\n _classCallCheck(this, PDFObjects);\n\n this._objs = Object.create(null);\n }\n\n _createClass(PDFObjects, [{\n key: \"_ensureObj\",\n value: function _ensureObj(objId) {\n if (this._objs[objId]) {\n return this._objs[objId];\n }\n\n return this._objs[objId] = {\n capability: (0, _util.createPromiseCapability)(),\n data: null,\n resolved: false\n };\n }\n }, {\n key: \"get\",\n value: function get(objId) {\n var callback = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;\n\n if (callback) {\n this._ensureObj(objId).capability.promise.then(callback);\n\n return null;\n }\n\n var obj = this._objs[objId];\n\n if (!obj || !obj.resolved) {\n throw new Error(\"Requesting object that isn't resolved yet \".concat(objId, \".\"));\n }\n\n return obj.data;\n }\n }, {\n key: \"has\",\n value: function has(objId) {\n var obj = this._objs[objId];\n return (obj === null || obj === void 0 ? void 0 : obj.resolved) || false;\n }\n }, {\n key: \"resolve\",\n value: function resolve(objId, data) {\n var obj = this._ensureObj(objId);\n\n obj.resolved = true;\n obj.data = data;\n obj.capability.resolve(data);\n }\n }, {\n key: \"clear\",\n value: function clear() {\n this._objs = Object.create(null);\n }\n }]);\n\n return PDFObjects;\n}();\n\nvar RenderTask = /*#__PURE__*/function () {\n function RenderTask(internalRenderTask) {\n _classCallCheck(this, RenderTask);\n\n this._internalRenderTask = internalRenderTask;\n this.onContinue = null;\n }\n\n _createClass(RenderTask, [{\n key: \"promise\",\n get: function get() {\n return this._internalRenderTask.capability.promise;\n }\n }, {\n key: \"cancel\",\n value: function cancel() {\n this._internalRenderTask.cancel();\n }\n }]);\n\n return RenderTask;\n}();\n\nexports.RenderTask = RenderTask;\n\nvar InternalRenderTask = /*#__PURE__*/function () {\n function InternalRenderTask(_ref20) {\n var callback = _ref20.callback,\n params = _ref20.params,\n objs = _ref20.objs,\n commonObjs = _ref20.commonObjs,\n operatorList = _ref20.operatorList,\n pageIndex = _ref20.pageIndex,\n canvasFactory = _ref20.canvasFactory,\n _ref20$useRequestAnim = _ref20.useRequestAnimationFrame,\n useRequestAnimationFrame = _ref20$useRequestAnim === void 0 ? false : _ref20$useRequestAnim,\n _ref20$pdfBug = _ref20.pdfBug,\n pdfBug = _ref20$pdfBug === void 0 ? false : _ref20$pdfBug;\n\n _classCallCheck(this, InternalRenderTask);\n\n this.callback = callback;\n this.params = params;\n this.objs = objs;\n this.commonObjs = commonObjs;\n this.operatorListIdx = null;\n this.operatorList = operatorList;\n this._pageIndex = pageIndex;\n this.canvasFactory = canvasFactory;\n this._pdfBug = pdfBug;\n this.running = false;\n this.graphicsReadyCallback = null;\n this.graphicsReady = false;\n this._useRequestAnimationFrame = useRequestAnimationFrame === true && typeof window !== \"undefined\";\n this.cancelled = false;\n this.capability = (0, _util.createPromiseCapability)();\n this.task = new RenderTask(this);\n this._cancelBound = this.cancel.bind(this);\n this._continueBound = this._continue.bind(this);\n this._scheduleNextBound = this._scheduleNext.bind(this);\n this._nextBound = this._next.bind(this);\n this._canvas = params.canvasContext.canvas;\n }\n\n _createClass(InternalRenderTask, [{\n key: \"completed\",\n get: function get() {\n return this.capability.promise[\"catch\"](function () {});\n }\n }, {\n key: \"initializeGraphics\",\n value: function initializeGraphics(_ref21) {\n var _globalThis$StepperMa;\n\n var _ref21$transparency = _ref21.transparency,\n transparency = _ref21$transparency === void 0 ? false : _ref21$transparency,\n optionalContentConfig = _ref21.optionalContentConfig;\n\n if (this.cancelled) {\n return;\n }\n\n if (this._canvas) {\n if (InternalRenderTask.canvasInUse.has(this._canvas)) {\n throw new Error(\"Cannot use the same canvas during multiple render() operations. \" + \"Use different canvas or ensure previous operations were \" + \"cancelled or completed.\");\n }\n\n InternalRenderTask.canvasInUse.add(this._canvas);\n }\n\n if (this._pdfBug && (_globalThis$StepperMa = globalThis.StepperManager) !== null && _globalThis$StepperMa !== void 0 && _globalThis$StepperMa.enabled) {\n this.stepper = globalThis.StepperManager.create(this._pageIndex);\n this.stepper.init(this.operatorList);\n this.stepper.nextBreakPoint = this.stepper.getNextBreakPoint();\n }\n\n var _this$params = this.params,\n canvasContext = _this$params.canvasContext,\n viewport = _this$params.viewport,\n transform = _this$params.transform,\n imageLayer = _this$params.imageLayer,\n background = _this$params.background;\n this.gfx = new _canvas.CanvasGraphics(canvasContext, this.commonObjs, this.objs, this.canvasFactory, imageLayer, optionalContentConfig);\n this.gfx.beginDrawing({\n transform: transform,\n viewport: viewport,\n transparency: transparency,\n background: background\n });\n this.operatorListIdx = 0;\n this.graphicsReady = true;\n\n if (this.graphicsReadyCallback) {\n this.graphicsReadyCallback();\n }\n }\n }, {\n key: \"cancel\",\n value: function cancel() {\n var error = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;\n this.running = false;\n this.cancelled = true;\n\n if (this.gfx) {\n this.gfx.endDrawing();\n }\n\n if (this._canvas) {\n InternalRenderTask.canvasInUse[\"delete\"](this._canvas);\n }\n\n this.callback(error || new _display_utils.RenderingCancelledException(\"Rendering cancelled, page \".concat(this._pageIndex + 1), \"canvas\"));\n }\n }, {\n key: \"operatorListChanged\",\n value: function operatorListChanged() {\n if (!this.graphicsReady) {\n if (!this.graphicsReadyCallback) {\n this.graphicsReadyCallback = this._continueBound;\n }\n\n return;\n }\n\n if (this.stepper) {\n this.stepper.updateOperatorList(this.operatorList);\n }\n\n if (this.running) {\n return;\n }\n\n this._continue();\n }\n }, {\n key: \"_continue\",\n value: function _continue() {\n this.running = true;\n\n if (this.cancelled) {\n return;\n }\n\n if (this.task.onContinue) {\n this.task.onContinue(this._scheduleNextBound);\n } else {\n this._scheduleNext();\n }\n }\n }, {\n key: \"_scheduleNext\",\n value: function _scheduleNext() {\n var _this16 = this;\n\n if (this._useRequestAnimationFrame) {\n window.requestAnimationFrame(function () {\n _this16._nextBound()[\"catch\"](_this16._cancelBound);\n });\n } else {\n Promise.resolve().then(this._nextBound)[\"catch\"](this._cancelBound);\n }\n }\n }, {\n key: \"_next\",\n value: function () {\n var _next2 = _asyncToGenerator( /*#__PURE__*/_regenerator[\"default\"].mark(function _callee5() {\n return _regenerator[\"default\"].wrap(function _callee5$(_context5) {\n while (1) {\n switch (_context5.prev = _context5.next) {\n case 0:\n if (!this.cancelled) {\n _context5.next = 2;\n break;\n }\n\n return _context5.abrupt(\"return\");\n\n case 2:\n this.operatorListIdx = this.gfx.executeOperatorList(this.operatorList, this.operatorListIdx, this._continueBound, this.stepper);\n\n if (this.operatorListIdx === this.operatorList.argsArray.length) {\n this.running = false;\n\n if (this.operatorList.lastChunk) {\n this.gfx.endDrawing();\n\n if (this._canvas) {\n InternalRenderTask.canvasInUse[\"delete\"](this._canvas);\n }\n\n this.callback();\n }\n }\n\n case 4:\n case \"end\":\n return _context5.stop();\n }\n }\n }, _callee5, this);\n }));\n\n function _next() {\n return _next2.apply(this, arguments);\n }\n\n return _next;\n }()\n }], [{\n key: \"canvasInUse\",\n get: function get() {\n return (0, _util.shadow)(this, \"canvasInUse\", new WeakSet());\n }\n }]);\n\n return InternalRenderTask;\n}();\n\nvar version = '2.11.338';\nexports.version = version;\nvar build = 'dedff3c98';\nexports.build = build;\n\n/***/ }),\n/* 120 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\"use strict\";\n\n\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.FontLoader = exports.FontFaceObject = void 0;\n\nvar _regenerator = _interopRequireDefault(__w_pdfjs_require__(2));\n\nvar _util = __w_pdfjs_require__(4);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } else if (call !== void 0) { throw new TypeError(\"Derived constructors may only return object or undefined\"); } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\nfunction asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }\n\nfunction _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err); } _next(undefined); }); }; }\n\nfunction _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it[\"return\"] != null) it[\"return\"](); } finally { if (didErr) throw err; } } }; }\n\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nvar BaseFontLoader = /*#__PURE__*/function () {\n function BaseFontLoader(_ref) {\n var docId = _ref.docId,\n onUnsupportedFeature = _ref.onUnsupportedFeature,\n _ref$ownerDocument = _ref.ownerDocument,\n ownerDocument = _ref$ownerDocument === void 0 ? globalThis.document : _ref$ownerDocument,\n _ref$styleElement = _ref.styleElement,\n styleElement = _ref$styleElement === void 0 ? null : _ref$styleElement;\n\n _classCallCheck(this, BaseFontLoader);\n\n if (this.constructor === BaseFontLoader) {\n (0, _util.unreachable)(\"Cannot initialize BaseFontLoader.\");\n }\n\n this.docId = docId;\n this._onUnsupportedFeature = onUnsupportedFeature;\n this._document = ownerDocument;\n this.nativeFontFaces = [];\n this.styleElement = null;\n }\n\n _createClass(BaseFontLoader, [{\n key: \"addNativeFontFace\",\n value: function addNativeFontFace(nativeFontFace) {\n this.nativeFontFaces.push(nativeFontFace);\n\n this._document.fonts.add(nativeFontFace);\n }\n }, {\n key: \"insertRule\",\n value: function insertRule(rule) {\n var styleElement = this.styleElement;\n\n if (!styleElement) {\n styleElement = this.styleElement = this._document.createElement(\"style\");\n styleElement.id = \"PDFJS_FONT_STYLE_TAG_\".concat(this.docId);\n\n this._document.documentElement.getElementsByTagName(\"head\")[0].appendChild(styleElement);\n }\n\n var styleSheet = styleElement.sheet;\n styleSheet.insertRule(rule, styleSheet.cssRules.length);\n }\n }, {\n key: \"clear\",\n value: function clear() {\n var _iterator = _createForOfIteratorHelper(this.nativeFontFaces),\n _step;\n\n try {\n for (_iterator.s(); !(_step = _iterator.n()).done;) {\n var nativeFontFace = _step.value;\n\n this._document.fonts[\"delete\"](nativeFontFace);\n }\n } catch (err) {\n _iterator.e(err);\n } finally {\n _iterator.f();\n }\n\n this.nativeFontFaces.length = 0;\n\n if (this.styleElement) {\n this.styleElement.remove();\n this.styleElement = null;\n }\n }\n }, {\n key: \"bind\",\n value: function () {\n var _bind = _asyncToGenerator( /*#__PURE__*/_regenerator[\"default\"].mark(function _callee(font) {\n var _this = this;\n\n var nativeFontFace, rule;\n return _regenerator[\"default\"].wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n if (!(font.attached || font.missingFile)) {\n _context.next = 2;\n break;\n }\n\n return _context.abrupt(\"return\");\n\n case 2:\n font.attached = true;\n\n if (!this.isFontLoadingAPISupported) {\n _context.next = 19;\n break;\n }\n\n nativeFontFace = font.createNativeFontFace();\n\n if (!nativeFontFace) {\n _context.next = 18;\n break;\n }\n\n this.addNativeFontFace(nativeFontFace);\n _context.prev = 7;\n _context.next = 10;\n return nativeFontFace.loaded;\n\n case 10:\n _context.next = 18;\n break;\n\n case 12:\n _context.prev = 12;\n _context.t0 = _context[\"catch\"](7);\n\n this._onUnsupportedFeature({\n featureId: _util.UNSUPPORTED_FEATURES.errorFontLoadNative\n });\n\n (0, _util.warn)(\"Failed to load font '\".concat(nativeFontFace.family, \"': '\").concat(_context.t0, \"'.\"));\n font.disableFontFace = true;\n throw _context.t0;\n\n case 18:\n return _context.abrupt(\"return\");\n\n case 19:\n rule = font.createFontFaceRule();\n\n if (!rule) {\n _context.next = 26;\n break;\n }\n\n this.insertRule(rule);\n\n if (!this.isSyncFontLoadingSupported) {\n _context.next = 24;\n break;\n }\n\n return _context.abrupt(\"return\");\n\n case 24:\n _context.next = 26;\n return new Promise(function (resolve) {\n var request = _this._queueLoadingCallback(resolve);\n\n _this._prepareFontLoadEvent([rule], [font], request);\n });\n\n case 26:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee, this, [[7, 12]]);\n }));\n\n function bind(_x) {\n return _bind.apply(this, arguments);\n }\n\n return bind;\n }()\n }, {\n key: \"_queueLoadingCallback\",\n value: function _queueLoadingCallback(callback) {\n (0, _util.unreachable)(\"Abstract method `_queueLoadingCallback`.\");\n }\n }, {\n key: \"isFontLoadingAPISupported\",\n get: function get() {\n var _this$_document;\n\n var hasFonts = !!((_this$_document = this._document) !== null && _this$_document !== void 0 && _this$_document.fonts);\n return (0, _util.shadow)(this, \"isFontLoadingAPISupported\", hasFonts);\n }\n }, {\n key: \"isSyncFontLoadingSupported\",\n get: function get() {\n (0, _util.unreachable)(\"Abstract method `isSyncFontLoadingSupported`.\");\n }\n }, {\n key: \"_loadTestFont\",\n get: function get() {\n (0, _util.unreachable)(\"Abstract method `_loadTestFont`.\");\n }\n }, {\n key: \"_prepareFontLoadEvent\",\n value: function _prepareFontLoadEvent(rules, fontsToLoad, request) {\n (0, _util.unreachable)(\"Abstract method `_prepareFontLoadEvent`.\");\n }\n }]);\n\n return BaseFontLoader;\n}();\n\nvar FontLoader;\nexports.FontLoader = FontLoader;\n{\n exports.FontLoader = FontLoader = /*#__PURE__*/function (_BaseFontLoader) {\n _inherits(GenericFontLoader, _BaseFontLoader);\n\n var _super = _createSuper(GenericFontLoader);\n\n function GenericFontLoader(params) {\n var _this2;\n\n _classCallCheck(this, GenericFontLoader);\n\n _this2 = _super.call(this, params);\n _this2.loadingContext = {\n requests: [],\n nextRequestId: 0\n };\n _this2.loadTestFontId = 0;\n return _this2;\n }\n\n _createClass(GenericFontLoader, [{\n key: \"isSyncFontLoadingSupported\",\n get: function get() {\n var supported = false;\n\n if (typeof navigator === \"undefined\") {\n supported = true;\n } else {\n var m = /Mozilla\\/5.0.*?rv:(\\d+).*? Gecko/.exec(navigator.userAgent);\n\n if ((m === null || m === void 0 ? void 0 : m[1]) >= 14) {\n supported = true;\n }\n }\n\n return (0, _util.shadow)(this, \"isSyncFontLoadingSupported\", supported);\n }\n }, {\n key: \"_queueLoadingCallback\",\n value: function _queueLoadingCallback(callback) {\n function completeRequest() {\n (0, _util.assert)(!request.done, \"completeRequest() cannot be called twice.\");\n request.done = true;\n\n while (context.requests.length > 0 && context.requests[0].done) {\n var otherRequest = context.requests.shift();\n setTimeout(otherRequest.callback, 0);\n }\n }\n\n var context = this.loadingContext;\n var request = {\n id: \"pdfjs-font-loading-\".concat(context.nextRequestId++),\n done: false,\n complete: completeRequest,\n callback: callback\n };\n context.requests.push(request);\n return request;\n }\n }, {\n key: \"_loadTestFont\",\n get: function get() {\n var getLoadTestFont = function getLoadTestFont() {\n return atob(\"T1RUTwALAIAAAwAwQ0ZGIDHtZg4AAAOYAAAAgUZGVE1lkzZwAAAEHAAAABxHREVGABQA\" + \"FQAABDgAAAAeT1MvMlYNYwkAAAEgAAAAYGNtYXABDQLUAAACNAAAAUJoZWFk/xVFDQAA\" + \"ALwAAAA2aGhlYQdkA+oAAAD0AAAAJGhtdHgD6AAAAAAEWAAAAAZtYXhwAAJQAAAAARgA\" + \"AAAGbmFtZVjmdH4AAAGAAAAAsXBvc3T/hgAzAAADeAAAACAAAQAAAAEAALZRFsRfDzz1\" + \"AAsD6AAAAADOBOTLAAAAAM4KHDwAAAAAA+gDIQAAAAgAAgAAAAAAAAABAAADIQAAAFoD\" + \"6AAAAAAD6AABAAAAAAAAAAAAAAAAAAAAAQAAUAAAAgAAAAQD6AH0AAUAAAKKArwAAACM\" + \"AooCvAAAAeAAMQECAAACAAYJAAAAAAAAAAAAAQAAAAAAAAAAAAAAAFBmRWQAwAAuAC4D\" + \"IP84AFoDIQAAAAAAAQAAAAAAAAAAACAAIAABAAAADgCuAAEAAAAAAAAAAQAAAAEAAAAA\" + \"AAEAAQAAAAEAAAAAAAIAAQAAAAEAAAAAAAMAAQAAAAEAAAAAAAQAAQAAAAEAAAAAAAUA\" + \"AQAAAAEAAAAAAAYAAQAAAAMAAQQJAAAAAgABAAMAAQQJAAEAAgABAAMAAQQJAAIAAgAB\" + \"AAMAAQQJAAMAAgABAAMAAQQJAAQAAgABAAMAAQQJAAUAAgABAAMAAQQJAAYAAgABWABY\" + \"AAAAAAAAAwAAAAMAAAAcAAEAAAAAADwAAwABAAAAHAAEACAAAAAEAAQAAQAAAC7//wAA\" + \"AC7////TAAEAAAAAAAABBgAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\" + \"AAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\" + \"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\" + \"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\" + \"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\" + \"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAAAAAD/gwAyAAAAAQAAAAAAAAAAAAAAAAAA\" + \"AAABAAQEAAEBAQJYAAEBASH4DwD4GwHEAvgcA/gXBIwMAYuL+nz5tQXkD5j3CBLnEQAC\" + \"AQEBIVhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYAAABAQAADwACAQEEE/t3\" + \"Dov6fAH6fAT+fPp8+nwHDosMCvm1Cvm1DAz6fBQAAAAAAAABAAAAAMmJbzEAAAAAzgTj\" + \"FQAAAADOBOQpAAEAAAAAAAAADAAUAAQAAAABAAAAAgABAAAAAAAAAAAD6AAAAAAAAA==\");\n };\n\n return (0, _util.shadow)(this, \"_loadTestFont\", getLoadTestFont());\n }\n }, {\n key: \"_prepareFontLoadEvent\",\n value: function _prepareFontLoadEvent(rules, fonts, request) {\n var _this3 = this;\n\n function int32(data, offset) {\n return data.charCodeAt(offset) << 24 | data.charCodeAt(offset + 1) << 16 | data.charCodeAt(offset + 2) << 8 | data.charCodeAt(offset + 3) & 0xff;\n }\n\n function spliceString(s, offset, remove, insert) {\n var chunk1 = s.substring(0, offset);\n var chunk2 = s.substring(offset + remove);\n return chunk1 + insert + chunk2;\n }\n\n var i, ii;\n\n var canvas = this._document.createElement(\"canvas\");\n\n canvas.width = 1;\n canvas.height = 1;\n var ctx = canvas.getContext(\"2d\");\n var called = 0;\n\n function isFontReady(name, callback) {\n called++;\n\n if (called > 30) {\n (0, _util.warn)(\"Load test font never loaded.\");\n callback();\n return;\n }\n\n ctx.font = \"30px \" + name;\n ctx.fillText(\".\", 0, 20);\n var imageData = ctx.getImageData(0, 0, 1, 1);\n\n if (imageData.data[3] > 0) {\n callback();\n return;\n }\n\n setTimeout(isFontReady.bind(null, name, callback));\n }\n\n var loadTestFontId = \"lt\".concat(Date.now()).concat(this.loadTestFontId++);\n var data = this._loadTestFont;\n var COMMENT_OFFSET = 976;\n data = spliceString(data, COMMENT_OFFSET, loadTestFontId.length, loadTestFontId);\n var CFF_CHECKSUM_OFFSET = 16;\n var XXXX_VALUE = 0x58585858;\n var checksum = int32(data, CFF_CHECKSUM_OFFSET);\n\n for (i = 0, ii = loadTestFontId.length - 3; i < ii; i += 4) {\n checksum = checksum - XXXX_VALUE + int32(loadTestFontId, i) | 0;\n }\n\n if (i < loadTestFontId.length) {\n checksum = checksum - XXXX_VALUE + int32(loadTestFontId + \"XXX\", i) | 0;\n }\n\n data = spliceString(data, CFF_CHECKSUM_OFFSET, 4, (0, _util.string32)(checksum));\n var url = \"url(data:font/opentype;base64,\".concat(btoa(data), \");\");\n var rule = \"@font-face {font-family:\\\"\".concat(loadTestFontId, \"\\\";src:\").concat(url, \"}\");\n this.insertRule(rule);\n var names = [];\n\n var _iterator2 = _createForOfIteratorHelper(fonts),\n _step2;\n\n try {\n for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {\n var font = _step2.value;\n names.push(font.loadedName);\n }\n } catch (err) {\n _iterator2.e(err);\n } finally {\n _iterator2.f();\n }\n\n names.push(loadTestFontId);\n\n var div = this._document.createElement(\"div\");\n\n div.style.visibility = \"hidden\";\n div.style.width = div.style.height = \"10px\";\n div.style.position = \"absolute\";\n div.style.top = div.style.left = \"0px\";\n\n for (var _i = 0, _names = names; _i < _names.length; _i++) {\n var name = _names[_i];\n\n var span = this._document.createElement(\"span\");\n\n span.textContent = \"Hi\";\n span.style.fontFamily = name;\n div.appendChild(span);\n }\n\n this._document.body.appendChild(div);\n\n isFontReady(loadTestFontId, function () {\n _this3._document.body.removeChild(div);\n\n request.complete();\n });\n }\n }]);\n\n return GenericFontLoader;\n }(BaseFontLoader);\n}\n\nvar FontFaceObject = /*#__PURE__*/function () {\n function FontFaceObject(translatedData, _ref2) {\n var _ref2$isEvalSupported = _ref2.isEvalSupported,\n isEvalSupported = _ref2$isEvalSupported === void 0 ? true : _ref2$isEvalSupported,\n _ref2$disableFontFace = _ref2.disableFontFace,\n disableFontFace = _ref2$disableFontFace === void 0 ? false : _ref2$disableFontFace,\n _ref2$ignoreErrors = _ref2.ignoreErrors,\n ignoreErrors = _ref2$ignoreErrors === void 0 ? false : _ref2$ignoreErrors,\n onUnsupportedFeature = _ref2.onUnsupportedFeature,\n _ref2$fontRegistry = _ref2.fontRegistry,\n fontRegistry = _ref2$fontRegistry === void 0 ? null : _ref2$fontRegistry;\n\n _classCallCheck(this, FontFaceObject);\n\n this.compiledGlyphs = Object.create(null);\n\n for (var i in translatedData) {\n this[i] = translatedData[i];\n }\n\n this.isEvalSupported = isEvalSupported !== false;\n this.disableFontFace = disableFontFace === true;\n this.ignoreErrors = ignoreErrors === true;\n this._onUnsupportedFeature = onUnsupportedFeature;\n this.fontRegistry = fontRegistry;\n }\n\n _createClass(FontFaceObject, [{\n key: \"createNativeFontFace\",\n value: function createNativeFontFace() {\n if (!this.data || this.disableFontFace) {\n return null;\n }\n\n var nativeFontFace;\n\n if (!this.cssFontInfo) {\n nativeFontFace = new FontFace(this.loadedName, this.data, {});\n } else {\n var css = {\n weight: this.cssFontInfo.fontWeight\n };\n\n if (this.cssFontInfo.italicAngle) {\n css.style = \"oblique \".concat(this.cssFontInfo.italicAngle, \"deg\");\n }\n\n nativeFontFace = new FontFace(this.cssFontInfo.fontFamily, this.data, css);\n }\n\n if (this.fontRegistry) {\n this.fontRegistry.registerFont(this);\n }\n\n return nativeFontFace;\n }\n }, {\n key: \"createFontFaceRule\",\n value: function createFontFaceRule() {\n if (!this.data || this.disableFontFace) {\n return null;\n }\n\n var data = (0, _util.bytesToString)(this.data);\n var url = \"url(data:\".concat(this.mimetype, \";base64,\").concat(btoa(data), \");\");\n var rule;\n\n if (!this.cssFontInfo) {\n rule = \"@font-face {font-family:\\\"\".concat(this.loadedName, \"\\\";src:\").concat(url, \"}\");\n } else {\n var css = \"font-weight: \".concat(this.cssFontInfo.fontWeight, \";\");\n\n if (this.cssFontInfo.italicAngle) {\n css += \"font-style: oblique \".concat(this.cssFontInfo.italicAngle, \"deg;\");\n }\n\n rule = \"@font-face {font-family:\\\"\".concat(this.cssFontInfo.fontFamily, \"\\\";\").concat(css, \"src:\").concat(url, \"}\");\n }\n\n if (this.fontRegistry) {\n this.fontRegistry.registerFont(this, url);\n }\n\n return rule;\n }\n }, {\n key: \"getPathGenerator\",\n value: function getPathGenerator(objs, character) {\n if (this.compiledGlyphs[character] !== undefined) {\n return this.compiledGlyphs[character];\n }\n\n var cmds;\n\n try {\n cmds = objs.get(this.loadedName + \"_path_\" + character);\n } catch (ex) {\n if (!this.ignoreErrors) {\n throw ex;\n }\n\n this._onUnsupportedFeature({\n featureId: _util.UNSUPPORTED_FEATURES.errorFontGetPath\n });\n\n (0, _util.warn)(\"getPathGenerator - ignoring character: \\\"\".concat(ex, \"\\\".\"));\n return this.compiledGlyphs[character] = function (c, size) {};\n }\n\n if (this.isEvalSupported && _util.IsEvalSupportedCached.value) {\n var jsBuf = [];\n\n var _iterator3 = _createForOfIteratorHelper(cmds),\n _step3;\n\n try {\n for (_iterator3.s(); !(_step3 = _iterator3.n()).done;) {\n var current = _step3.value;\n var args = current.args !== undefined ? current.args.join(\",\") : \"\";\n jsBuf.push(\"c.\", current.cmd, \"(\", args, \");\\n\");\n }\n } catch (err) {\n _iterator3.e(err);\n } finally {\n _iterator3.f();\n }\n\n return this.compiledGlyphs[character] = new Function(\"c\", \"size\", jsBuf.join(\"\"));\n }\n\n return this.compiledGlyphs[character] = function (c, size) {\n var _iterator4 = _createForOfIteratorHelper(cmds),\n _step4;\n\n try {\n for (_iterator4.s(); !(_step4 = _iterator4.n()).done;) {\n var _current = _step4.value;\n\n if (_current.cmd === \"scale\") {\n _current.args = [size, -size];\n }\n\n c[_current.cmd].apply(c, _current.args);\n }\n } catch (err) {\n _iterator4.e(err);\n } finally {\n _iterator4.f();\n }\n };\n }\n }]);\n\n return FontFaceObject;\n}();\n\nexports.FontFaceObject = FontFaceObject;\n\n/***/ }),\n/* 121 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\"use strict\";\n\n\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.NodeStandardFontDataFactory = exports.NodeCMapReaderFactory = exports.NodeCanvasFactory = void 0;\n\nvar _base_factory = __w_pdfjs_require__(118);\n\nvar _is_node = __w_pdfjs_require__(6);\n\nvar _util = __w_pdfjs_require__(4);\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } else if (call !== void 0) { throw new TypeError(\"Derived constructors may only return object or undefined\"); } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nvar NodeCanvasFactory = function NodeCanvasFactory() {\n _classCallCheck(this, NodeCanvasFactory);\n\n (0, _util.unreachable)(\"Not implemented: NodeCanvasFactory\");\n};\n\nexports.NodeCanvasFactory = NodeCanvasFactory;\n\nvar NodeCMapReaderFactory = function NodeCMapReaderFactory() {\n _classCallCheck(this, NodeCMapReaderFactory);\n\n (0, _util.unreachable)(\"Not implemented: NodeCMapReaderFactory\");\n};\n\nexports.NodeCMapReaderFactory = NodeCMapReaderFactory;\n\nvar NodeStandardFontDataFactory = function NodeStandardFontDataFactory() {\n _classCallCheck(this, NodeStandardFontDataFactory);\n\n (0, _util.unreachable)(\"Not implemented: NodeStandardFontDataFactory\");\n};\n\nexports.NodeStandardFontDataFactory = NodeStandardFontDataFactory;\n\nif (_is_node.isNodeJS) {\n var fetchData = function fetchData(url) {\n return new Promise(function (resolve, reject) {\n var fs = require(\"fs\");\n\n fs.readFile(url, function (error, data) {\n if (error || !data) {\n reject(new Error(error));\n return;\n }\n\n resolve(new Uint8Array(data));\n });\n });\n };\n\n exports.NodeCanvasFactory = NodeCanvasFactory = /*#__PURE__*/function (_BaseCanvasFactory) {\n _inherits(NodeCanvasFactory, _BaseCanvasFactory);\n\n var _super = _createSuper(NodeCanvasFactory);\n\n function NodeCanvasFactory() {\n _classCallCheck(this, NodeCanvasFactory);\n\n return _super.apply(this, arguments);\n }\n\n _createClass(NodeCanvasFactory, [{\n key: \"_createCanvas\",\n value: function _createCanvas(width, height) {\n var Canvas = require(\"canvas\");\n\n return Canvas.createCanvas(width, height);\n }\n }]);\n\n return NodeCanvasFactory;\n }(_base_factory.BaseCanvasFactory);\n\n exports.NodeCMapReaderFactory = NodeCMapReaderFactory = /*#__PURE__*/function (_BaseCMapReaderFactor) {\n _inherits(NodeCMapReaderFactory, _BaseCMapReaderFactor);\n\n var _super2 = _createSuper(NodeCMapReaderFactory);\n\n function NodeCMapReaderFactory() {\n _classCallCheck(this, NodeCMapReaderFactory);\n\n return _super2.apply(this, arguments);\n }\n\n _createClass(NodeCMapReaderFactory, [{\n key: \"_fetchData\",\n value: function _fetchData(url, compressionType) {\n return fetchData(url).then(function (data) {\n return {\n cMapData: data,\n compressionType: compressionType\n };\n });\n }\n }]);\n\n return NodeCMapReaderFactory;\n }(_base_factory.BaseCMapReaderFactory);\n\n exports.NodeStandardFontDataFactory = NodeStandardFontDataFactory = /*#__PURE__*/function (_BaseStandardFontData) {\n _inherits(NodeStandardFontDataFactory, _BaseStandardFontData);\n\n var _super3 = _createSuper(NodeStandardFontDataFactory);\n\n function NodeStandardFontDataFactory() {\n _classCallCheck(this, NodeStandardFontDataFactory);\n\n return _super3.apply(this, arguments);\n }\n\n _createClass(NodeStandardFontDataFactory, [{\n key: \"_fetchData\",\n value: function _fetchData(url) {\n return fetchData(url);\n }\n }]);\n\n return NodeStandardFontDataFactory;\n }(_base_factory.BaseStandardFontDataFactory);\n}\n\n/***/ }),\n/* 122 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.AnnotationStorage = void 0;\n\nvar _util = __w_pdfjs_require__(4);\n\nfunction _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }\n\nfunction _nonIterableRest() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\nfunction _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== \"undefined\" && arr[Symbol.iterator] || arr[\"@@iterator\"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"] != null) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; }\n\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nvar AnnotationStorage = /*#__PURE__*/function () {\n function AnnotationStorage() {\n _classCallCheck(this, AnnotationStorage);\n\n this._storage = new Map();\n this._timeStamp = Date.now();\n this._modified = false;\n this.onSetModified = null;\n this.onResetModified = null;\n }\n\n _createClass(AnnotationStorage, [{\n key: \"getValue\",\n value: function getValue(key, defaultValue) {\n var value = this._storage.get(key);\n\n if (value === undefined) {\n return defaultValue;\n }\n\n return Object.assign(defaultValue, value);\n }\n }, {\n key: \"setValue\",\n value: function setValue(key, value) {\n var obj = this._storage.get(key);\n\n var modified = false;\n\n if (obj !== undefined) {\n for (var _i = 0, _Object$entries = Object.entries(value); _i < _Object$entries.length; _i++) {\n var _Object$entries$_i = _slicedToArray(_Object$entries[_i], 2),\n entry = _Object$entries$_i[0],\n val = _Object$entries$_i[1];\n\n if (obj[entry] !== val) {\n modified = true;\n obj[entry] = val;\n }\n }\n } else {\n modified = true;\n\n this._storage.set(key, value);\n }\n\n if (modified) {\n this._timeStamp = Date.now();\n\n this._setModified();\n }\n }\n }, {\n key: \"getAll\",\n value: function getAll() {\n return this._storage.size > 0 ? (0, _util.objectFromMap)(this._storage) : null;\n }\n }, {\n key: \"size\",\n get: function get() {\n return this._storage.size;\n }\n }, {\n key: \"_setModified\",\n value: function _setModified() {\n if (!this._modified) {\n this._modified = true;\n\n if (typeof this.onSetModified === \"function\") {\n this.onSetModified();\n }\n }\n }\n }, {\n key: \"resetModified\",\n value: function resetModified() {\n if (this._modified) {\n this._modified = false;\n\n if (typeof this.onResetModified === \"function\") {\n this.onResetModified();\n }\n }\n }\n }, {\n key: \"serializable\",\n get: function get() {\n return this._storage.size > 0 ? this._storage : null;\n }\n }, {\n key: \"lastModified\",\n get: function get() {\n return this._timeStamp.toString();\n }\n }]);\n\n return AnnotationStorage;\n}();\n\nexports.AnnotationStorage = AnnotationStorage;\n\n/***/ }),\n/* 123 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.CanvasGraphics = void 0;\n\nvar _util = __w_pdfjs_require__(4);\n\nvar _pattern_helper = __w_pdfjs_require__(124);\n\nvar _display_utils = __w_pdfjs_require__(1);\n\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\nfunction _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e2) { throw _e2; }, f: F }; } throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e3) { didErr = true; err = _e3; }, f: function f() { try { if (!normalCompletion && it[\"return\"] != null) it[\"return\"](); } finally { if (didErr) throw err; } } }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }\n\nfunction _nonIterableRest() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\nfunction _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== \"undefined\" && arr[Symbol.iterator] || arr[\"@@iterator\"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"] != null) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; }\n\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\n\nvar MIN_FONT_SIZE = 16;\nvar MAX_FONT_SIZE = 100;\nvar MAX_GROUP_SIZE = 4096;\nvar MAX_CACHED_CANVAS_PATTERNS = 2;\nvar EXECUTION_TIME = 15;\nvar EXECUTION_STEPS = 10;\nvar COMPILE_TYPE3_GLYPHS = true;\nvar MAX_SIZE_TO_COMPILE = 1000;\nvar FULL_CHUNK_HEIGHT = 16;\nvar LINEWIDTH_SCALE_FACTOR = 1.000001;\n\nfunction addContextCurrentTransform(ctx) {\n if (ctx.mozCurrentTransform) {\n return;\n }\n\n ctx._originalSave = ctx.save;\n ctx._originalRestore = ctx.restore;\n ctx._originalRotate = ctx.rotate;\n ctx._originalScale = ctx.scale;\n ctx._originalTranslate = ctx.translate;\n ctx._originalTransform = ctx.transform;\n ctx._originalSetTransform = ctx.setTransform;\n ctx._originalResetTransform = ctx.resetTransform;\n ctx._transformMatrix = ctx._transformMatrix || [1, 0, 0, 1, 0, 0];\n ctx._transformStack = [];\n\n try {\n var desc = Object.getOwnPropertyDescriptor(Object.getPrototypeOf(ctx), \"lineWidth\");\n ctx._setLineWidth = desc.set;\n ctx._getLineWidth = desc.get;\n Object.defineProperty(ctx, \"lineWidth\", {\n set: function setLineWidth(width) {\n this._setLineWidth(width * LINEWIDTH_SCALE_FACTOR);\n },\n get: function getLineWidth() {\n return this._getLineWidth();\n }\n });\n } catch (_) {}\n\n Object.defineProperty(ctx, \"mozCurrentTransform\", {\n get: function getCurrentTransform() {\n return this._transformMatrix;\n }\n });\n Object.defineProperty(ctx, \"mozCurrentTransformInverse\", {\n get: function getCurrentTransformInverse() {\n var _this$_transformMatri = _slicedToArray(this._transformMatrix, 6),\n a = _this$_transformMatri[0],\n b = _this$_transformMatri[1],\n c = _this$_transformMatri[2],\n d = _this$_transformMatri[3],\n e = _this$_transformMatri[4],\n f = _this$_transformMatri[5];\n\n var ad_bc = a * d - b * c;\n var bc_ad = b * c - a * d;\n return [d / ad_bc, b / bc_ad, c / bc_ad, a / ad_bc, (d * e - c * f) / bc_ad, (b * e - a * f) / ad_bc];\n }\n });\n\n ctx.save = function ctxSave() {\n var old = this._transformMatrix;\n\n this._transformStack.push(old);\n\n this._transformMatrix = old.slice(0, 6);\n\n this._originalSave();\n };\n\n ctx.restore = function ctxRestore() {\n var prev = this._transformStack.pop();\n\n if (prev) {\n this._transformMatrix = prev;\n\n this._originalRestore();\n }\n };\n\n ctx.translate = function ctxTranslate(x, y) {\n var m = this._transformMatrix;\n m[4] = m[0] * x + m[2] * y + m[4];\n m[5] = m[1] * x + m[3] * y + m[5];\n\n this._originalTranslate(x, y);\n };\n\n ctx.scale = function ctxScale(x, y) {\n var m = this._transformMatrix;\n m[0] *= x;\n m[1] *= x;\n m[2] *= y;\n m[3] *= y;\n\n this._originalScale(x, y);\n };\n\n ctx.transform = function ctxTransform(a, b, c, d, e, f) {\n var m = this._transformMatrix;\n this._transformMatrix = [m[0] * a + m[2] * b, m[1] * a + m[3] * b, m[0] * c + m[2] * d, m[1] * c + m[3] * d, m[0] * e + m[2] * f + m[4], m[1] * e + m[3] * f + m[5]];\n\n ctx._originalTransform(a, b, c, d, e, f);\n };\n\n ctx.setTransform = function ctxSetTransform(a, b, c, d, e, f) {\n this._transformMatrix = [a, b, c, d, e, f];\n\n ctx._originalSetTransform(a, b, c, d, e, f);\n };\n\n ctx.resetTransform = function ctxResetTransform() {\n this._transformMatrix = [1, 0, 0, 1, 0, 0];\n\n ctx._originalResetTransform();\n };\n\n ctx.rotate = function ctxRotate(angle) {\n var cosValue = Math.cos(angle);\n var sinValue = Math.sin(angle);\n var m = this._transformMatrix;\n this._transformMatrix = [m[0] * cosValue + m[2] * sinValue, m[1] * cosValue + m[3] * sinValue, m[0] * -sinValue + m[2] * cosValue, m[1] * -sinValue + m[3] * cosValue, m[4], m[5]];\n\n this._originalRotate(angle);\n };\n}\n\nvar CachedCanvases = /*#__PURE__*/function () {\n function CachedCanvases(canvasFactory) {\n _classCallCheck(this, CachedCanvases);\n\n this.canvasFactory = canvasFactory;\n this.cache = Object.create(null);\n }\n\n _createClass(CachedCanvases, [{\n key: \"getCanvas\",\n value: function getCanvas(id, width, height, trackTransform) {\n var canvasEntry;\n\n if (this.cache[id] !== undefined) {\n canvasEntry = this.cache[id];\n this.canvasFactory.reset(canvasEntry, width, height);\n canvasEntry.context.setTransform(1, 0, 0, 1, 0, 0);\n } else {\n canvasEntry = this.canvasFactory.create(width, height);\n this.cache[id] = canvasEntry;\n }\n\n if (trackTransform) {\n addContextCurrentTransform(canvasEntry.context);\n }\n\n return canvasEntry;\n }\n }, {\n key: \"clear\",\n value: function clear() {\n for (var id in this.cache) {\n var canvasEntry = this.cache[id];\n this.canvasFactory.destroy(canvasEntry);\n delete this.cache[id];\n }\n }\n }]);\n\n return CachedCanvases;\n}();\n\nvar LRUCache = /*#__PURE__*/function () {\n function LRUCache() {\n var maxSize = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;\n\n _classCallCheck(this, LRUCache);\n\n this._cache = new Map();\n this._maxSize = maxSize;\n }\n\n _createClass(LRUCache, [{\n key: \"has\",\n value: function has(key) {\n return this._cache.has(key);\n }\n }, {\n key: \"get\",\n value: function get(key) {\n if (this._cache.has(key)) {\n var value = this._cache.get(key);\n\n this._cache[\"delete\"](key);\n\n this._cache.set(key, value);\n }\n\n return this._cache.get(key);\n }\n }, {\n key: \"set\",\n value: function set(key, value) {\n if (this._maxSize <= 0) {\n return;\n }\n\n if (this._cache.size + 1 > this._maxSize) {\n this._cache[\"delete\"](this._cache.keys().next().value);\n }\n\n this._cache.set(key, value);\n }\n }, {\n key: \"clear\",\n value: function clear() {\n this._cache.clear();\n }\n }]);\n\n return LRUCache;\n}();\n\nfunction compileType3Glyph(imgData) {\n var POINT_TO_PROCESS_LIMIT = 1000;\n var POINT_TYPES = new Uint8Array([0, 2, 4, 0, 1, 0, 5, 4, 8, 10, 0, 8, 0, 2, 1, 0]);\n var width = imgData.width,\n height = imgData.height,\n width1 = width + 1;\n var i, ii, j, j0;\n var points = new Uint8Array(width1 * (height + 1));\n var lineSize = width + 7 & ~7,\n data0 = imgData.data;\n var data = new Uint8Array(lineSize * height);\n var pos = 0;\n\n for (i = 0, ii = data0.length; i < ii; i++) {\n var elem = data0[i];\n var mask = 128;\n\n while (mask > 0) {\n data[pos++] = elem & mask ? 0 : 255;\n mask >>= 1;\n }\n }\n\n var count = 0;\n pos = 0;\n\n if (data[pos] !== 0) {\n points[0] = 1;\n ++count;\n }\n\n for (j = 1; j < width; j++) {\n if (data[pos] !== data[pos + 1]) {\n points[j] = data[pos] ? 2 : 1;\n ++count;\n }\n\n pos++;\n }\n\n if (data[pos] !== 0) {\n points[j] = 2;\n ++count;\n }\n\n for (i = 1; i < height; i++) {\n pos = i * lineSize;\n j0 = i * width1;\n\n if (data[pos - lineSize] !== data[pos]) {\n points[j0] = data[pos] ? 1 : 8;\n ++count;\n }\n\n var sum = (data[pos] ? 4 : 0) + (data[pos - lineSize] ? 8 : 0);\n\n for (j = 1; j < width; j++) {\n sum = (sum >> 2) + (data[pos + 1] ? 4 : 0) + (data[pos - lineSize + 1] ? 8 : 0);\n\n if (POINT_TYPES[sum]) {\n points[j0 + j] = POINT_TYPES[sum];\n ++count;\n }\n\n pos++;\n }\n\n if (data[pos - lineSize] !== data[pos]) {\n points[j0 + j] = data[pos] ? 2 : 4;\n ++count;\n }\n\n if (count > POINT_TO_PROCESS_LIMIT) {\n return null;\n }\n }\n\n pos = lineSize * (height - 1);\n j0 = i * width1;\n\n if (data[pos] !== 0) {\n points[j0] = 8;\n ++count;\n }\n\n for (j = 1; j < width; j++) {\n if (data[pos] !== data[pos + 1]) {\n points[j0 + j] = data[pos] ? 4 : 8;\n ++count;\n }\n\n pos++;\n }\n\n if (data[pos] !== 0) {\n points[j0 + j] = 4;\n ++count;\n }\n\n if (count > POINT_TO_PROCESS_LIMIT) {\n return null;\n }\n\n var steps = new Int32Array([0, width1, -1, 0, -width1, 0, 0, 0, 1]);\n var outlines = [];\n\n for (i = 0; count && i <= height; i++) {\n var p = i * width1;\n var end = p + width;\n\n while (p < end && !points[p]) {\n p++;\n }\n\n if (p === end) {\n continue;\n }\n\n var coords = [p % width1, i];\n var p0 = p;\n var type = points[p];\n\n do {\n var step = steps[type];\n\n do {\n p += step;\n } while (!points[p]);\n\n var pp = points[p];\n\n if (pp !== 5 && pp !== 10) {\n type = pp;\n points[p] = 0;\n } else {\n type = pp & 0x33 * type >> 4;\n points[p] &= type >> 2 | type << 2;\n }\n\n coords.push(p % width1, p / width1 | 0);\n\n if (!points[p]) {\n --count;\n }\n } while (p0 !== p);\n\n outlines.push(coords);\n --i;\n }\n\n var drawOutline = function drawOutline(c) {\n c.save();\n c.scale(1 / width, -1 / height);\n c.translate(0, -height);\n c.beginPath();\n\n for (var k = 0, kk = outlines.length; k < kk; k++) {\n var o = outlines[k];\n c.moveTo(o[0], o[1]);\n\n for (var l = 2, ll = o.length; l < ll; l += 2) {\n c.lineTo(o[l], o[l + 1]);\n }\n }\n\n c.fill();\n c.beginPath();\n c.restore();\n };\n\n return drawOutline;\n}\n\nvar CanvasExtraState = /*#__PURE__*/function () {\n function CanvasExtraState() {\n _classCallCheck(this, CanvasExtraState);\n\n this.alphaIsShape = false;\n this.fontSize = 0;\n this.fontSizeScale = 1;\n this.textMatrix = _util.IDENTITY_MATRIX;\n this.textMatrixScale = 1;\n this.fontMatrix = _util.FONT_IDENTITY_MATRIX;\n this.leading = 0;\n this.x = 0;\n this.y = 0;\n this.lineX = 0;\n this.lineY = 0;\n this.charSpacing = 0;\n this.wordSpacing = 0;\n this.textHScale = 1;\n this.textRenderingMode = _util.TextRenderingMode.FILL;\n this.textRise = 0;\n this.fillColor = \"#000000\";\n this.strokeColor = \"#000000\";\n this.patternFill = false;\n this.fillAlpha = 1;\n this.strokeAlpha = 1;\n this.lineWidth = 1;\n this.activeSMask = null;\n this.resumeSMaskCtx = null;\n this.transferMaps = null;\n }\n\n _createClass(CanvasExtraState, [{\n key: \"clone\",\n value: function clone() {\n return Object.create(this);\n }\n }, {\n key: \"setCurrentPoint\",\n value: function setCurrentPoint(x, y) {\n this.x = x;\n this.y = y;\n }\n }]);\n\n return CanvasExtraState;\n}();\n\nfunction putBinaryImageData(ctx, imgData) {\n var transferMaps = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null;\n\n if (typeof ImageData !== \"undefined\" && imgData instanceof ImageData) {\n ctx.putImageData(imgData, 0, 0);\n return;\n }\n\n var height = imgData.height,\n width = imgData.width;\n var partialChunkHeight = height % FULL_CHUNK_HEIGHT;\n var fullChunks = (height - partialChunkHeight) / FULL_CHUNK_HEIGHT;\n var totalChunks = partialChunkHeight === 0 ? fullChunks : fullChunks + 1;\n var chunkImgData = ctx.createImageData(width, FULL_CHUNK_HEIGHT);\n var srcPos = 0,\n destPos;\n var src = imgData.data;\n var dest = chunkImgData.data;\n var i, j, thisChunkHeight, elemsInThisChunk;\n var transferMapRed, transferMapGreen, transferMapBlue, transferMapGray;\n\n if (transferMaps) {\n switch (transferMaps.length) {\n case 1:\n transferMapRed = transferMaps[0];\n transferMapGreen = transferMaps[0];\n transferMapBlue = transferMaps[0];\n transferMapGray = transferMaps[0];\n break;\n\n case 4:\n transferMapRed = transferMaps[0];\n transferMapGreen = transferMaps[1];\n transferMapBlue = transferMaps[2];\n transferMapGray = transferMaps[3];\n break;\n }\n }\n\n if (imgData.kind === _util.ImageKind.GRAYSCALE_1BPP) {\n var srcLength = src.byteLength;\n var dest32 = new Uint32Array(dest.buffer, 0, dest.byteLength >> 2);\n var dest32DataLength = dest32.length;\n var fullSrcDiff = width + 7 >> 3;\n var white = 0xffffffff;\n var black = _util.IsLittleEndianCached.value ? 0xff000000 : 0x000000ff;\n\n if (transferMapGray) {\n if (transferMapGray[0] === 0xff && transferMapGray[0xff] === 0) {\n var _ref = [black, white];\n white = _ref[0];\n black = _ref[1];\n }\n }\n\n for (i = 0; i < totalChunks; i++) {\n thisChunkHeight = i < fullChunks ? FULL_CHUNK_HEIGHT : partialChunkHeight;\n destPos = 0;\n\n for (j = 0; j < thisChunkHeight; j++) {\n var srcDiff = srcLength - srcPos;\n var k = 0;\n var kEnd = srcDiff > fullSrcDiff ? width : srcDiff * 8 - 7;\n var kEndUnrolled = kEnd & ~7;\n var mask = 0;\n var srcByte = 0;\n\n for (; k < kEndUnrolled; k += 8) {\n srcByte = src[srcPos++];\n dest32[destPos++] = srcByte & 128 ? white : black;\n dest32[destPos++] = srcByte & 64 ? white : black;\n dest32[destPos++] = srcByte & 32 ? white : black;\n dest32[destPos++] = srcByte & 16 ? white : black;\n dest32[destPos++] = srcByte & 8 ? white : black;\n dest32[destPos++] = srcByte & 4 ? white : black;\n dest32[destPos++] = srcByte & 2 ? white : black;\n dest32[destPos++] = srcByte & 1 ? white : black;\n }\n\n for (; k < kEnd; k++) {\n if (mask === 0) {\n srcByte = src[srcPos++];\n mask = 128;\n }\n\n dest32[destPos++] = srcByte & mask ? white : black;\n mask >>= 1;\n }\n }\n\n while (destPos < dest32DataLength) {\n dest32[destPos++] = 0;\n }\n\n ctx.putImageData(chunkImgData, 0, i * FULL_CHUNK_HEIGHT);\n }\n } else if (imgData.kind === _util.ImageKind.RGBA_32BPP) {\n var hasTransferMaps = !!(transferMapRed || transferMapGreen || transferMapBlue);\n j = 0;\n elemsInThisChunk = width * FULL_CHUNK_HEIGHT * 4;\n\n for (i = 0; i < fullChunks; i++) {\n dest.set(src.subarray(srcPos, srcPos + elemsInThisChunk));\n srcPos += elemsInThisChunk;\n\n if (hasTransferMaps) {\n for (var _k = 0; _k < elemsInThisChunk; _k += 4) {\n if (transferMapRed) {\n dest[_k + 0] = transferMapRed[dest[_k + 0]];\n }\n\n if (transferMapGreen) {\n dest[_k + 1] = transferMapGreen[dest[_k + 1]];\n }\n\n if (transferMapBlue) {\n dest[_k + 2] = transferMapBlue[dest[_k + 2]];\n }\n }\n }\n\n ctx.putImageData(chunkImgData, 0, j);\n j += FULL_CHUNK_HEIGHT;\n }\n\n if (i < totalChunks) {\n elemsInThisChunk = width * partialChunkHeight * 4;\n dest.set(src.subarray(srcPos, srcPos + elemsInThisChunk));\n\n if (hasTransferMaps) {\n for (var _k2 = 0; _k2 < elemsInThisChunk; _k2 += 4) {\n if (transferMapRed) {\n dest[_k2 + 0] = transferMapRed[dest[_k2 + 0]];\n }\n\n if (transferMapGreen) {\n dest[_k2 + 1] = transferMapGreen[dest[_k2 + 1]];\n }\n\n if (transferMapBlue) {\n dest[_k2 + 2] = transferMapBlue[dest[_k2 + 2]];\n }\n }\n }\n\n ctx.putImageData(chunkImgData, 0, j);\n }\n } else if (imgData.kind === _util.ImageKind.RGB_24BPP) {\n var _hasTransferMaps = !!(transferMapRed || transferMapGreen || transferMapBlue);\n\n thisChunkHeight = FULL_CHUNK_HEIGHT;\n elemsInThisChunk = width * thisChunkHeight;\n\n for (i = 0; i < totalChunks; i++) {\n if (i >= fullChunks) {\n thisChunkHeight = partialChunkHeight;\n elemsInThisChunk = width * thisChunkHeight;\n }\n\n destPos = 0;\n\n for (j = elemsInThisChunk; j--;) {\n dest[destPos++] = src[srcPos++];\n dest[destPos++] = src[srcPos++];\n dest[destPos++] = src[srcPos++];\n dest[destPos++] = 255;\n }\n\n if (_hasTransferMaps) {\n for (var _k3 = 0; _k3 < destPos; _k3 += 4) {\n if (transferMapRed) {\n dest[_k3 + 0] = transferMapRed[dest[_k3 + 0]];\n }\n\n if (transferMapGreen) {\n dest[_k3 + 1] = transferMapGreen[dest[_k3 + 1]];\n }\n\n if (transferMapBlue) {\n dest[_k3 + 2] = transferMapBlue[dest[_k3 + 2]];\n }\n }\n }\n\n ctx.putImageData(chunkImgData, 0, i * FULL_CHUNK_HEIGHT);\n }\n } else {\n throw new Error(\"bad image kind: \".concat(imgData.kind));\n }\n}\n\nfunction putBinaryImageMask(ctx, imgData) {\n var height = imgData.height,\n width = imgData.width;\n var partialChunkHeight = height % FULL_CHUNK_HEIGHT;\n var fullChunks = (height - partialChunkHeight) / FULL_CHUNK_HEIGHT;\n var totalChunks = partialChunkHeight === 0 ? fullChunks : fullChunks + 1;\n var chunkImgData = ctx.createImageData(width, FULL_CHUNK_HEIGHT);\n var srcPos = 0;\n var src = imgData.data;\n var dest = chunkImgData.data;\n\n for (var i = 0; i < totalChunks; i++) {\n var thisChunkHeight = i < fullChunks ? FULL_CHUNK_HEIGHT : partialChunkHeight;\n var destPos = 3;\n\n for (var j = 0; j < thisChunkHeight; j++) {\n var elem = void 0,\n mask = 0;\n\n for (var k = 0; k < width; k++) {\n if (!mask) {\n elem = src[srcPos++];\n mask = 128;\n }\n\n dest[destPos] = elem & mask ? 0 : 255;\n destPos += 4;\n mask >>= 1;\n }\n }\n\n ctx.putImageData(chunkImgData, 0, i * FULL_CHUNK_HEIGHT);\n }\n}\n\nfunction copyCtxState(sourceCtx, destCtx) {\n var properties = [\"strokeStyle\", \"fillStyle\", \"fillRule\", \"globalAlpha\", \"lineWidth\", \"lineCap\", \"lineJoin\", \"miterLimit\", \"globalCompositeOperation\", \"font\"];\n\n for (var i = 0, ii = properties.length; i < ii; i++) {\n var property = properties[i];\n\n if (sourceCtx[property] !== undefined) {\n destCtx[property] = sourceCtx[property];\n }\n }\n\n if (sourceCtx.setLineDash !== undefined) {\n destCtx.setLineDash(sourceCtx.getLineDash());\n destCtx.lineDashOffset = sourceCtx.lineDashOffset;\n }\n}\n\nfunction resetCtxToDefault(ctx) {\n ctx.strokeStyle = \"#000000\";\n ctx.fillStyle = \"#000000\";\n ctx.fillRule = \"nonzero\";\n ctx.globalAlpha = 1;\n ctx.lineWidth = 1;\n ctx.lineCap = \"butt\";\n ctx.lineJoin = \"miter\";\n ctx.miterLimit = 10;\n ctx.globalCompositeOperation = \"source-over\";\n ctx.font = \"10px sans-serif\";\n\n if (ctx.setLineDash !== undefined) {\n ctx.setLineDash([]);\n ctx.lineDashOffset = 0;\n }\n}\n\nfunction composeSMaskBackdrop(bytes, r0, g0, b0) {\n var length = bytes.length;\n\n for (var i = 3; i < length; i += 4) {\n var alpha = bytes[i];\n\n if (alpha === 0) {\n bytes[i - 3] = r0;\n bytes[i - 2] = g0;\n bytes[i - 1] = b0;\n } else if (alpha < 255) {\n var alpha_ = 255 - alpha;\n bytes[i - 3] = bytes[i - 3] * alpha + r0 * alpha_ >> 8;\n bytes[i - 2] = bytes[i - 2] * alpha + g0 * alpha_ >> 8;\n bytes[i - 1] = bytes[i - 1] * alpha + b0 * alpha_ >> 8;\n }\n }\n}\n\nfunction composeSMaskAlpha(maskData, layerData, transferMap) {\n var length = maskData.length;\n var scale = 1 / 255;\n\n for (var i = 3; i < length; i += 4) {\n var alpha = transferMap ? transferMap[maskData[i]] : maskData[i];\n layerData[i] = layerData[i] * alpha * scale | 0;\n }\n}\n\nfunction composeSMaskLuminosity(maskData, layerData, transferMap) {\n var length = maskData.length;\n\n for (var i = 3; i < length; i += 4) {\n var y = maskData[i - 3] * 77 + maskData[i - 2] * 152 + maskData[i - 1] * 28;\n layerData[i] = transferMap ? layerData[i] * transferMap[y >> 8] >> 8 : layerData[i] * y >> 16;\n }\n}\n\nfunction genericComposeSMask(maskCtx, layerCtx, width, height, subtype, backdrop, transferMap) {\n var hasBackdrop = !!backdrop;\n var r0 = hasBackdrop ? backdrop[0] : 0;\n var g0 = hasBackdrop ? backdrop[1] : 0;\n var b0 = hasBackdrop ? backdrop[2] : 0;\n var composeFn;\n\n if (subtype === \"Luminosity\") {\n composeFn = composeSMaskLuminosity;\n } else {\n composeFn = composeSMaskAlpha;\n }\n\n var PIXELS_TO_PROCESS = 1048576;\n var chunkSize = Math.min(height, Math.ceil(PIXELS_TO_PROCESS / width));\n\n for (var row = 0; row < height; row += chunkSize) {\n var chunkHeight = Math.min(chunkSize, height - row);\n var maskData = maskCtx.getImageData(0, row, width, chunkHeight);\n var layerData = layerCtx.getImageData(0, row, width, chunkHeight);\n\n if (hasBackdrop) {\n composeSMaskBackdrop(maskData.data, r0, g0, b0);\n }\n\n composeFn(maskData.data, layerData.data, transferMap);\n maskCtx.putImageData(layerData, 0, row);\n }\n}\n\nfunction composeSMask(ctx, smask, layerCtx) {\n var mask = smask.canvas;\n var maskCtx = smask.context;\n ctx.setTransform(smask.scaleX, 0, 0, smask.scaleY, smask.offsetX, smask.offsetY);\n genericComposeSMask(maskCtx, layerCtx, mask.width, mask.height, smask.subtype, smask.backdrop, smask.transferMap);\n ctx.drawImage(mask, 0, 0);\n}\n\nfunction getImageSmoothingEnabled(transform, interpolate) {\n var scale = _util.Util.singularValueDecompose2dScale(transform);\n\n scale[0] = Math.fround(scale[0]);\n scale[1] = Math.fround(scale[1]);\n var actualScale = Math.fround((globalThis.devicePixelRatio || 1) * _display_utils.PixelsPerInch.PDF_TO_CSS_UNITS);\n\n if (interpolate !== undefined) {\n return interpolate;\n } else if (scale[0] <= actualScale || scale[1] <= actualScale) {\n return true;\n }\n\n return false;\n}\n\nvar LINE_CAP_STYLES = [\"butt\", \"round\", \"square\"];\nvar LINE_JOIN_STYLES = [\"miter\", \"round\", \"bevel\"];\nvar NORMAL_CLIP = {};\nvar EO_CLIP = {};\n\nvar CanvasGraphics = /*#__PURE__*/function () {\n function CanvasGraphics(canvasCtx, commonObjs, objs, canvasFactory, imageLayer, optionalContentConfig) {\n _classCallCheck(this, CanvasGraphics);\n\n this.ctx = canvasCtx;\n this.current = new CanvasExtraState();\n this.stateStack = [];\n this.pendingClip = null;\n this.pendingEOFill = false;\n this.res = null;\n this.xobjs = null;\n this.commonObjs = commonObjs;\n this.objs = objs;\n this.canvasFactory = canvasFactory;\n this.imageLayer = imageLayer;\n this.groupStack = [];\n this.processingType3 = null;\n this.baseTransform = null;\n this.baseTransformStack = [];\n this.groupLevel = 0;\n this.smaskStack = [];\n this.smaskCounter = 0;\n this.tempSMask = null;\n this.contentVisible = true;\n this.markedContentStack = [];\n this.optionalContentConfig = optionalContentConfig;\n this.cachedCanvases = new CachedCanvases(this.canvasFactory);\n this.cachedCanvasPatterns = new LRUCache(MAX_CACHED_CANVAS_PATTERNS);\n this.cachedPatterns = new Map();\n\n if (canvasCtx) {\n addContextCurrentTransform(canvasCtx);\n }\n\n this._cachedGetSinglePixelWidth = null;\n }\n\n _createClass(CanvasGraphics, [{\n key: \"beginDrawing\",\n value: function beginDrawing(_ref2) {\n var transform = _ref2.transform,\n viewport = _ref2.viewport,\n _ref2$transparency = _ref2.transparency,\n transparency = _ref2$transparency === void 0 ? false : _ref2$transparency,\n _ref2$background = _ref2.background,\n background = _ref2$background === void 0 ? null : _ref2$background;\n var width = this.ctx.canvas.width;\n var height = this.ctx.canvas.height;\n this.ctx.save();\n this.ctx.fillStyle = background || \"rgb(255, 255, 255)\";\n this.ctx.fillRect(0, 0, width, height);\n this.ctx.restore();\n\n if (transparency) {\n var transparentCanvas = this.cachedCanvases.getCanvas(\"transparent\", width, height, true);\n this.compositeCtx = this.ctx;\n this.transparentCanvas = transparentCanvas.canvas;\n this.ctx = transparentCanvas.context;\n this.ctx.save();\n this.ctx.transform.apply(this.ctx, this.compositeCtx.mozCurrentTransform);\n }\n\n this.ctx.save();\n resetCtxToDefault(this.ctx);\n\n if (transform) {\n this.ctx.transform.apply(this.ctx, transform);\n }\n\n this.ctx.transform.apply(this.ctx, viewport.transform);\n this.baseTransform = this.ctx.mozCurrentTransform.slice();\n this._combinedScaleFactor = Math.hypot(this.baseTransform[0], this.baseTransform[2]);\n\n if (this.imageLayer) {\n this.imageLayer.beginLayout();\n }\n }\n }, {\n key: \"executeOperatorList\",\n value: function executeOperatorList(operatorList, executionStartIdx, continueCallback, stepper) {\n var argsArray = operatorList.argsArray;\n var fnArray = operatorList.fnArray;\n var i = executionStartIdx || 0;\n var argsArrayLen = argsArray.length;\n\n if (argsArrayLen === i) {\n return i;\n }\n\n var chunkOperations = argsArrayLen - i > EXECUTION_STEPS && typeof continueCallback === \"function\";\n var endTime = chunkOperations ? Date.now() + EXECUTION_TIME : 0;\n var steps = 0;\n var commonObjs = this.commonObjs;\n var objs = this.objs;\n var fnId;\n\n while (true) {\n if (stepper !== undefined && i === stepper.nextBreakPoint) {\n stepper.breakIt(i, continueCallback);\n return i;\n }\n\n fnId = fnArray[i];\n\n if (fnId !== _util.OPS.dependency) {\n this[fnId].apply(this, argsArray[i]);\n } else {\n var _iterator = _createForOfIteratorHelper(argsArray[i]),\n _step;\n\n try {\n for (_iterator.s(); !(_step = _iterator.n()).done;) {\n var depObjId = _step.value;\n var objsPool = depObjId.startsWith(\"g_\") ? commonObjs : objs;\n\n if (!objsPool.has(depObjId)) {\n objsPool.get(depObjId, continueCallback);\n return i;\n }\n }\n } catch (err) {\n _iterator.e(err);\n } finally {\n _iterator.f();\n }\n }\n\n i++;\n\n if (i === argsArrayLen) {\n return i;\n }\n\n if (chunkOperations && ++steps > EXECUTION_STEPS) {\n if (Date.now() > endTime) {\n continueCallback();\n return i;\n }\n\n steps = 0;\n }\n }\n }\n }, {\n key: \"endDrawing\",\n value: function endDrawing() {\n while (this.stateStack.length || this.current.activeSMask !== null) {\n this.restore();\n }\n\n this.ctx.restore();\n\n if (this.transparentCanvas) {\n this.ctx = this.compositeCtx;\n this.ctx.save();\n this.ctx.setTransform(1, 0, 0, 1, 0, 0);\n this.ctx.drawImage(this.transparentCanvas, 0, 0);\n this.ctx.restore();\n this.transparentCanvas = null;\n }\n\n this.cachedCanvases.clear();\n this.cachedCanvasPatterns.clear();\n this.cachedPatterns.clear();\n\n if (this.imageLayer) {\n this.imageLayer.endLayout();\n }\n }\n }, {\n key: \"_scaleImage\",\n value: function _scaleImage(img, inverseTransform) {\n var width = img.width;\n var height = img.height;\n var widthScale = Math.max(Math.hypot(inverseTransform[0], inverseTransform[1]), 1);\n var heightScale = Math.max(Math.hypot(inverseTransform[2], inverseTransform[3]), 1);\n var paintWidth = width,\n paintHeight = height;\n var tmpCanvasId = \"prescale1\";\n var tmpCanvas, tmpCtx;\n\n while (widthScale > 2 && paintWidth > 1 || heightScale > 2 && paintHeight > 1) {\n var newWidth = paintWidth,\n newHeight = paintHeight;\n\n if (widthScale > 2 && paintWidth > 1) {\n newWidth = Math.ceil(paintWidth / 2);\n widthScale /= paintWidth / newWidth;\n }\n\n if (heightScale > 2 && paintHeight > 1) {\n newHeight = Math.ceil(paintHeight / 2);\n heightScale /= paintHeight / newHeight;\n }\n\n tmpCanvas = this.cachedCanvases.getCanvas(tmpCanvasId, newWidth, newHeight);\n tmpCtx = tmpCanvas.context;\n tmpCtx.clearRect(0, 0, newWidth, newHeight);\n tmpCtx.drawImage(img, 0, 0, paintWidth, paintHeight, 0, 0, newWidth, newHeight);\n img = tmpCanvas.canvas;\n paintWidth = newWidth;\n paintHeight = newHeight;\n tmpCanvasId = tmpCanvasId === \"prescale1\" ? \"prescale2\" : \"prescale1\";\n }\n\n return {\n img: img,\n paintWidth: paintWidth,\n paintHeight: paintHeight\n };\n }\n }, {\n key: \"_createMaskCanvas\",\n value: function _createMaskCanvas(img) {\n var ctx = this.ctx;\n var width = img.width,\n height = img.height;\n var fillColor = this.current.fillColor;\n var isPatternFill = this.current.patternFill;\n var maskCanvas = this.cachedCanvases.getCanvas(\"maskCanvas\", width, height);\n var maskCtx = maskCanvas.context;\n putBinaryImageMask(maskCtx, img);\n var objToCanvas = ctx.mozCurrentTransform;\n\n var maskToCanvas = _util.Util.transform(objToCanvas, [1 / width, 0, 0, -1 / height, 0, 0]);\n\n maskToCanvas = _util.Util.transform(maskToCanvas, [1, 0, 0, 1, 0, -height]);\n\n var cord1 = _util.Util.applyTransform([0, 0], maskToCanvas);\n\n var cord2 = _util.Util.applyTransform([width, height], maskToCanvas);\n\n var rect = _util.Util.normalizeRect([cord1[0], cord1[1], cord2[0], cord2[1]]);\n\n var drawnWidth = Math.ceil(rect[2] - rect[0]);\n var drawnHeight = Math.ceil(rect[3] - rect[1]);\n var fillCanvas = this.cachedCanvases.getCanvas(\"fillCanvas\", drawnWidth, drawnHeight, true);\n var fillCtx = fillCanvas.context;\n var offsetX = Math.min(cord1[0], cord2[0]);\n var offsetY = Math.min(cord1[1], cord2[1]);\n fillCtx.translate(-offsetX, -offsetY);\n fillCtx.transform.apply(fillCtx, maskToCanvas);\n\n var scaled = this._scaleImage(maskCanvas.canvas, fillCtx.mozCurrentTransformInverse);\n\n fillCtx.imageSmoothingEnabled = getImageSmoothingEnabled(fillCtx.mozCurrentTransform, img.interpolate);\n fillCtx.drawImage(scaled.img, 0, 0, scaled.img.width, scaled.img.height, 0, 0, width, height);\n fillCtx.globalCompositeOperation = \"source-in\";\n\n var inverse = _util.Util.transform(fillCtx.mozCurrentTransformInverse, [1, 0, 0, 1, -offsetX, -offsetY]);\n\n fillCtx.fillStyle = isPatternFill ? fillColor.getPattern(ctx, this, inverse, false) : fillColor;\n fillCtx.fillRect(0, 0, width, height);\n return {\n canvas: fillCanvas.canvas,\n offsetX: Math.round(offsetX),\n offsetY: Math.round(offsetY)\n };\n }\n }, {\n key: \"setLineWidth\",\n value: function setLineWidth(width) {\n this.current.lineWidth = width;\n this.ctx.lineWidth = width;\n }\n }, {\n key: \"setLineCap\",\n value: function setLineCap(style) {\n this.ctx.lineCap = LINE_CAP_STYLES[style];\n }\n }, {\n key: \"setLineJoin\",\n value: function setLineJoin(style) {\n this.ctx.lineJoin = LINE_JOIN_STYLES[style];\n }\n }, {\n key: \"setMiterLimit\",\n value: function setMiterLimit(limit) {\n this.ctx.miterLimit = limit;\n }\n }, {\n key: \"setDash\",\n value: function setDash(dashArray, dashPhase) {\n var ctx = this.ctx;\n\n if (ctx.setLineDash !== undefined) {\n ctx.setLineDash(dashArray);\n ctx.lineDashOffset = dashPhase;\n }\n }\n }, {\n key: \"setRenderingIntent\",\n value: function setRenderingIntent(intent) {}\n }, {\n key: \"setFlatness\",\n value: function setFlatness(flatness) {}\n }, {\n key: \"setGState\",\n value: function setGState(states) {\n for (var i = 0, ii = states.length; i < ii; i++) {\n var state = states[i];\n var key = state[0];\n var value = state[1];\n\n switch (key) {\n case \"LW\":\n this.setLineWidth(value);\n break;\n\n case \"LC\":\n this.setLineCap(value);\n break;\n\n case \"LJ\":\n this.setLineJoin(value);\n break;\n\n case \"ML\":\n this.setMiterLimit(value);\n break;\n\n case \"D\":\n this.setDash(value[0], value[1]);\n break;\n\n case \"RI\":\n this.setRenderingIntent(value);\n break;\n\n case \"FL\":\n this.setFlatness(value);\n break;\n\n case \"Font\":\n this.setFont(value[0], value[1]);\n break;\n\n case \"CA\":\n this.current.strokeAlpha = state[1];\n break;\n\n case \"ca\":\n this.current.fillAlpha = state[1];\n this.ctx.globalAlpha = state[1];\n break;\n\n case \"BM\":\n this.ctx.globalCompositeOperation = value;\n break;\n\n case \"SMask\":\n if (this.current.activeSMask) {\n if (this.stateStack.length > 0 && this.stateStack[this.stateStack.length - 1].activeSMask === this.current.activeSMask) {\n this.suspendSMaskGroup();\n } else {\n this.endSMaskGroup();\n }\n }\n\n this.current.activeSMask = value ? this.tempSMask : null;\n\n if (this.current.activeSMask) {\n this.beginSMaskGroup();\n }\n\n this.tempSMask = null;\n break;\n\n case \"TR\":\n this.current.transferMaps = value;\n }\n }\n }\n }, {\n key: \"beginSMaskGroup\",\n value: function beginSMaskGroup() {\n var activeSMask = this.current.activeSMask;\n var drawnWidth = activeSMask.canvas.width;\n var drawnHeight = activeSMask.canvas.height;\n var cacheId = \"smaskGroupAt\" + this.groupLevel;\n var scratchCanvas = this.cachedCanvases.getCanvas(cacheId, drawnWidth, drawnHeight, true);\n var currentCtx = this.ctx;\n var currentTransform = currentCtx.mozCurrentTransform;\n this.ctx.save();\n var groupCtx = scratchCanvas.context;\n groupCtx.scale(1 / activeSMask.scaleX, 1 / activeSMask.scaleY);\n groupCtx.translate(-activeSMask.offsetX, -activeSMask.offsetY);\n groupCtx.transform.apply(groupCtx, currentTransform);\n activeSMask.startTransformInverse = groupCtx.mozCurrentTransformInverse;\n copyCtxState(currentCtx, groupCtx);\n this.ctx = groupCtx;\n this.setGState([[\"BM\", \"source-over\"], [\"ca\", 1], [\"CA\", 1]]);\n this.groupStack.push(currentCtx);\n this.groupLevel++;\n }\n }, {\n key: \"suspendSMaskGroup\",\n value: function suspendSMaskGroup() {\n var groupCtx = this.ctx;\n this.groupLevel--;\n this.ctx = this.groupStack.pop();\n composeSMask(this.ctx, this.current.activeSMask, groupCtx);\n this.ctx.restore();\n this.ctx.save();\n copyCtxState(groupCtx, this.ctx);\n this.current.resumeSMaskCtx = groupCtx;\n\n var deltaTransform = _util.Util.transform(this.current.activeSMask.startTransformInverse, groupCtx.mozCurrentTransform);\n\n this.ctx.transform.apply(this.ctx, deltaTransform);\n groupCtx.save();\n groupCtx.setTransform(1, 0, 0, 1, 0, 0);\n groupCtx.clearRect(0, 0, groupCtx.canvas.width, groupCtx.canvas.height);\n groupCtx.restore();\n }\n }, {\n key: \"resumeSMaskGroup\",\n value: function resumeSMaskGroup() {\n var groupCtx = this.current.resumeSMaskCtx;\n var currentCtx = this.ctx;\n this.ctx = groupCtx;\n this.groupStack.push(currentCtx);\n this.groupLevel++;\n }\n }, {\n key: \"endSMaskGroup\",\n value: function endSMaskGroup() {\n var groupCtx = this.ctx;\n this.groupLevel--;\n this.ctx = this.groupStack.pop();\n composeSMask(this.ctx, this.current.activeSMask, groupCtx);\n this.ctx.restore();\n copyCtxState(groupCtx, this.ctx);\n\n var deltaTransform = _util.Util.transform(this.current.activeSMask.startTransformInverse, groupCtx.mozCurrentTransform);\n\n this.ctx.transform.apply(this.ctx, deltaTransform);\n }\n }, {\n key: \"save\",\n value: function save() {\n this.ctx.save();\n var old = this.current;\n this.stateStack.push(old);\n this.current = old.clone();\n this.current.resumeSMaskCtx = null;\n }\n }, {\n key: \"restore\",\n value: function restore() {\n if (this.current.resumeSMaskCtx) {\n this.resumeSMaskGroup();\n }\n\n if (this.current.activeSMask !== null && (this.stateStack.length === 0 || this.stateStack[this.stateStack.length - 1].activeSMask !== this.current.activeSMask)) {\n this.endSMaskGroup();\n }\n\n if (this.stateStack.length !== 0) {\n this.current = this.stateStack.pop();\n this.ctx.restore();\n this.pendingClip = null;\n this._cachedGetSinglePixelWidth = null;\n } else {\n this.current.activeSMask = null;\n }\n }\n }, {\n key: \"transform\",\n value: function transform(a, b, c, d, e, f) {\n this.ctx.transform(a, b, c, d, e, f);\n this._cachedGetSinglePixelWidth = null;\n }\n }, {\n key: \"constructPath\",\n value: function constructPath(ops, args) {\n var ctx = this.ctx;\n var current = this.current;\n var x = current.x,\n y = current.y;\n\n for (var i = 0, j = 0, ii = ops.length; i < ii; i++) {\n switch (ops[i] | 0) {\n case _util.OPS.rectangle:\n x = args[j++];\n y = args[j++];\n var width = args[j++];\n var height = args[j++];\n var xw = x + width;\n var yh = y + height;\n ctx.moveTo(x, y);\n\n if (width === 0 || height === 0) {\n ctx.lineTo(xw, yh);\n } else {\n ctx.lineTo(xw, y);\n ctx.lineTo(xw, yh);\n ctx.lineTo(x, yh);\n }\n\n ctx.closePath();\n break;\n\n case _util.OPS.moveTo:\n x = args[j++];\n y = args[j++];\n ctx.moveTo(x, y);\n break;\n\n case _util.OPS.lineTo:\n x = args[j++];\n y = args[j++];\n ctx.lineTo(x, y);\n break;\n\n case _util.OPS.curveTo:\n x = args[j + 4];\n y = args[j + 5];\n ctx.bezierCurveTo(args[j], args[j + 1], args[j + 2], args[j + 3], x, y);\n j += 6;\n break;\n\n case _util.OPS.curveTo2:\n ctx.bezierCurveTo(x, y, args[j], args[j + 1], args[j + 2], args[j + 3]);\n x = args[j + 2];\n y = args[j + 3];\n j += 4;\n break;\n\n case _util.OPS.curveTo3:\n x = args[j + 2];\n y = args[j + 3];\n ctx.bezierCurveTo(args[j], args[j + 1], x, y, x, y);\n j += 4;\n break;\n\n case _util.OPS.closePath:\n ctx.closePath();\n break;\n }\n }\n\n current.setCurrentPoint(x, y);\n }\n }, {\n key: \"closePath\",\n value: function closePath() {\n this.ctx.closePath();\n }\n }, {\n key: \"stroke\",\n value: function stroke(consumePath) {\n consumePath = typeof consumePath !== \"undefined\" ? consumePath : true;\n var ctx = this.ctx;\n var strokeColor = this.current.strokeColor;\n ctx.globalAlpha = this.current.strokeAlpha;\n\n if (this.contentVisible) {\n if (_typeof(strokeColor) === \"object\" && strokeColor !== null && strokeColor !== void 0 && strokeColor.getPattern) {\n var lineWidth = this.getSinglePixelWidth();\n ctx.save();\n ctx.strokeStyle = strokeColor.getPattern(ctx, this, ctx.mozCurrentTransformInverse);\n ctx.lineWidth = Math.max(lineWidth, this.current.lineWidth);\n ctx.stroke();\n ctx.restore();\n } else {\n var _lineWidth = this.getSinglePixelWidth();\n\n if (_lineWidth < 0 && -_lineWidth >= this.current.lineWidth) {\n ctx.save();\n ctx.resetTransform();\n ctx.lineWidth = Math.round(this._combinedScaleFactor);\n ctx.stroke();\n ctx.restore();\n } else {\n ctx.lineWidth = Math.max(_lineWidth, this.current.lineWidth);\n ctx.stroke();\n }\n }\n }\n\n if (consumePath) {\n this.consumePath();\n }\n\n ctx.globalAlpha = this.current.fillAlpha;\n }\n }, {\n key: \"closeStroke\",\n value: function closeStroke() {\n this.closePath();\n this.stroke();\n }\n }, {\n key: \"fill\",\n value: function fill(consumePath) {\n consumePath = typeof consumePath !== \"undefined\" ? consumePath : true;\n var ctx = this.ctx;\n var fillColor = this.current.fillColor;\n var isPatternFill = this.current.patternFill;\n var needRestore = false;\n\n if (isPatternFill) {\n ctx.save();\n ctx.fillStyle = fillColor.getPattern(ctx, this, ctx.mozCurrentTransformInverse);\n needRestore = true;\n }\n\n if (this.contentVisible) {\n if (this.pendingEOFill) {\n ctx.fill(\"evenodd\");\n this.pendingEOFill = false;\n } else {\n ctx.fill();\n }\n }\n\n if (needRestore) {\n ctx.restore();\n }\n\n if (consumePath) {\n this.consumePath();\n }\n }\n }, {\n key: \"eoFill\",\n value: function eoFill() {\n this.pendingEOFill = true;\n this.fill();\n }\n }, {\n key: \"fillStroke\",\n value: function fillStroke() {\n this.fill(false);\n this.stroke(false);\n this.consumePath();\n }\n }, {\n key: \"eoFillStroke\",\n value: function eoFillStroke() {\n this.pendingEOFill = true;\n this.fillStroke();\n }\n }, {\n key: \"closeFillStroke\",\n value: function closeFillStroke() {\n this.closePath();\n this.fillStroke();\n }\n }, {\n key: \"closeEOFillStroke\",\n value: function closeEOFillStroke() {\n this.pendingEOFill = true;\n this.closePath();\n this.fillStroke();\n }\n }, {\n key: \"endPath\",\n value: function endPath() {\n this.consumePath();\n }\n }, {\n key: \"clip\",\n value: function clip() {\n this.pendingClip = NORMAL_CLIP;\n }\n }, {\n key: \"eoClip\",\n value: function eoClip() {\n this.pendingClip = EO_CLIP;\n }\n }, {\n key: \"beginText\",\n value: function beginText() {\n this.current.textMatrix = _util.IDENTITY_MATRIX;\n this.current.textMatrixScale = 1;\n this.current.x = this.current.lineX = 0;\n this.current.y = this.current.lineY = 0;\n }\n }, {\n key: \"endText\",\n value: function endText() {\n var paths = this.pendingTextPaths;\n var ctx = this.ctx;\n\n if (paths === undefined) {\n ctx.beginPath();\n return;\n }\n\n ctx.save();\n ctx.beginPath();\n\n for (var i = 0; i < paths.length; i++) {\n var path = paths[i];\n ctx.setTransform.apply(ctx, path.transform);\n ctx.translate(path.x, path.y);\n path.addToPath(ctx, path.fontSize);\n }\n\n ctx.restore();\n ctx.clip();\n ctx.beginPath();\n delete this.pendingTextPaths;\n }\n }, {\n key: \"setCharSpacing\",\n value: function setCharSpacing(spacing) {\n this.current.charSpacing = spacing;\n }\n }, {\n key: \"setWordSpacing\",\n value: function setWordSpacing(spacing) {\n this.current.wordSpacing = spacing;\n }\n }, {\n key: \"setHScale\",\n value: function setHScale(scale) {\n this.current.textHScale = scale / 100;\n }\n }, {\n key: \"setLeading\",\n value: function setLeading(leading) {\n this.current.leading = -leading;\n }\n }, {\n key: \"setFont\",\n value: function setFont(fontRefName, size) {\n var fontObj = this.commonObjs.get(fontRefName);\n var current = this.current;\n\n if (!fontObj) {\n throw new Error(\"Can't find font for \".concat(fontRefName));\n }\n\n current.fontMatrix = fontObj.fontMatrix || _util.FONT_IDENTITY_MATRIX;\n\n if (current.fontMatrix[0] === 0 || current.fontMatrix[3] === 0) {\n (0, _util.warn)(\"Invalid font matrix for font \" + fontRefName);\n }\n\n if (size < 0) {\n size = -size;\n current.fontDirection = -1;\n } else {\n current.fontDirection = 1;\n }\n\n this.current.font = fontObj;\n this.current.fontSize = size;\n\n if (fontObj.isType3Font) {\n return;\n }\n\n var name = fontObj.loadedName || \"sans-serif\";\n var bold = \"normal\";\n\n if (fontObj.black) {\n bold = \"900\";\n } else if (fontObj.bold) {\n bold = \"bold\";\n }\n\n var italic = fontObj.italic ? \"italic\" : \"normal\";\n var typeface = \"\\\"\".concat(name, \"\\\", \").concat(fontObj.fallbackName);\n var browserFontSize = size;\n\n if (size < MIN_FONT_SIZE) {\n browserFontSize = MIN_FONT_SIZE;\n } else if (size > MAX_FONT_SIZE) {\n browserFontSize = MAX_FONT_SIZE;\n }\n\n this.current.fontSizeScale = size / browserFontSize;\n this.ctx.font = \"\".concat(italic, \" \").concat(bold, \" \").concat(browserFontSize, \"px \").concat(typeface);\n }\n }, {\n key: \"setTextRenderingMode\",\n value: function setTextRenderingMode(mode) {\n this.current.textRenderingMode = mode;\n }\n }, {\n key: \"setTextRise\",\n value: function setTextRise(rise) {\n this.current.textRise = rise;\n }\n }, {\n key: \"moveText\",\n value: function moveText(x, y) {\n this.current.x = this.current.lineX += x;\n this.current.y = this.current.lineY += y;\n }\n }, {\n key: \"setLeadingMoveText\",\n value: function setLeadingMoveText(x, y) {\n this.setLeading(-y);\n this.moveText(x, y);\n }\n }, {\n key: \"setTextMatrix\",\n value: function setTextMatrix(a, b, c, d, e, f) {\n this.current.textMatrix = [a, b, c, d, e, f];\n this.current.textMatrixScale = Math.hypot(a, b);\n this.current.x = this.current.lineX = 0;\n this.current.y = this.current.lineY = 0;\n }\n }, {\n key: \"nextLine\",\n value: function nextLine() {\n this.moveText(0, this.current.leading);\n }\n }, {\n key: \"paintChar\",\n value: function paintChar(character, x, y, patternTransform, resetLineWidthToOne) {\n var ctx = this.ctx;\n var current = this.current;\n var font = current.font;\n var textRenderingMode = current.textRenderingMode;\n var fontSize = current.fontSize / current.fontSizeScale;\n var fillStrokeMode = textRenderingMode & _util.TextRenderingMode.FILL_STROKE_MASK;\n var isAddToPathSet = !!(textRenderingMode & _util.TextRenderingMode.ADD_TO_PATH_FLAG);\n var patternFill = current.patternFill && !font.missingFile;\n var addToPath;\n\n if (font.disableFontFace || isAddToPathSet || patternFill) {\n addToPath = font.getPathGenerator(this.commonObjs, character);\n }\n\n if (font.disableFontFace || patternFill) {\n ctx.save();\n ctx.translate(x, y);\n ctx.beginPath();\n addToPath(ctx, fontSize);\n\n if (patternTransform) {\n ctx.setTransform.apply(ctx, patternTransform);\n }\n\n if (fillStrokeMode === _util.TextRenderingMode.FILL || fillStrokeMode === _util.TextRenderingMode.FILL_STROKE) {\n ctx.fill();\n }\n\n if (fillStrokeMode === _util.TextRenderingMode.STROKE || fillStrokeMode === _util.TextRenderingMode.FILL_STROKE) {\n if (resetLineWidthToOne) {\n ctx.resetTransform();\n ctx.lineWidth = Math.round(this._combinedScaleFactor);\n }\n\n ctx.stroke();\n }\n\n ctx.restore();\n } else {\n if (fillStrokeMode === _util.TextRenderingMode.FILL || fillStrokeMode === _util.TextRenderingMode.FILL_STROKE) {\n ctx.fillText(character, x, y);\n }\n\n if (fillStrokeMode === _util.TextRenderingMode.STROKE || fillStrokeMode === _util.TextRenderingMode.FILL_STROKE) {\n if (resetLineWidthToOne) {\n ctx.save();\n ctx.moveTo(x, y);\n ctx.resetTransform();\n ctx.lineWidth = Math.round(this._combinedScaleFactor);\n ctx.strokeText(character, 0, 0);\n ctx.restore();\n } else {\n ctx.strokeText(character, x, y);\n }\n }\n }\n\n if (isAddToPathSet) {\n var paths = this.pendingTextPaths || (this.pendingTextPaths = []);\n paths.push({\n transform: ctx.mozCurrentTransform,\n x: x,\n y: y,\n fontSize: fontSize,\n addToPath: addToPath\n });\n }\n }\n }, {\n key: \"isFontSubpixelAAEnabled\",\n get: function get() {\n var _this$cachedCanvases$ = this.cachedCanvases.getCanvas(\"isFontSubpixelAAEnabled\", 10, 10),\n ctx = _this$cachedCanvases$.context;\n\n ctx.scale(1.5, 1);\n ctx.fillText(\"I\", 0, 10);\n var data = ctx.getImageData(0, 0, 10, 10).data;\n var enabled = false;\n\n for (var i = 3; i < data.length; i += 4) {\n if (data[i] > 0 && data[i] < 255) {\n enabled = true;\n break;\n }\n }\n\n return (0, _util.shadow)(this, \"isFontSubpixelAAEnabled\", enabled);\n }\n }, {\n key: \"showText\",\n value: function showText(glyphs) {\n var current = this.current;\n var font = current.font;\n\n if (font.isType3Font) {\n return this.showType3Text(glyphs);\n }\n\n var fontSize = current.fontSize;\n\n if (fontSize === 0) {\n return undefined;\n }\n\n var ctx = this.ctx;\n var fontSizeScale = current.fontSizeScale;\n var charSpacing = current.charSpacing;\n var wordSpacing = current.wordSpacing;\n var fontDirection = current.fontDirection;\n var textHScale = current.textHScale * fontDirection;\n var glyphsLength = glyphs.length;\n var vertical = font.vertical;\n var spacingDir = vertical ? 1 : -1;\n var defaultVMetrics = font.defaultVMetrics;\n var widthAdvanceScale = fontSize * current.fontMatrix[0];\n var simpleFillText = current.textRenderingMode === _util.TextRenderingMode.FILL && !font.disableFontFace && !current.patternFill;\n ctx.save();\n var patternTransform;\n\n if (current.patternFill) {\n ctx.save();\n var pattern = current.fillColor.getPattern(ctx, this, ctx.mozCurrentTransformInverse);\n patternTransform = ctx.mozCurrentTransform;\n ctx.restore();\n ctx.fillStyle = pattern;\n }\n\n ctx.transform.apply(ctx, current.textMatrix);\n ctx.translate(current.x, current.y + current.textRise);\n\n if (fontDirection > 0) {\n ctx.scale(textHScale, -1);\n } else {\n ctx.scale(textHScale, 1);\n }\n\n var lineWidth = current.lineWidth;\n var resetLineWidthToOne = false;\n var scale = current.textMatrixScale;\n\n if (scale === 0 || lineWidth === 0) {\n var fillStrokeMode = current.textRenderingMode & _util.TextRenderingMode.FILL_STROKE_MASK;\n\n if (fillStrokeMode === _util.TextRenderingMode.STROKE || fillStrokeMode === _util.TextRenderingMode.FILL_STROKE) {\n this._cachedGetSinglePixelWidth = null;\n lineWidth = this.getSinglePixelWidth();\n resetLineWidthToOne = lineWidth < 0;\n }\n } else {\n lineWidth /= scale;\n }\n\n if (fontSizeScale !== 1.0) {\n ctx.scale(fontSizeScale, fontSizeScale);\n lineWidth /= fontSizeScale;\n }\n\n ctx.lineWidth = lineWidth;\n var x = 0,\n i;\n\n for (i = 0; i < glyphsLength; ++i) {\n var glyph = glyphs[i];\n\n if ((0, _util.isNum)(glyph)) {\n x += spacingDir * glyph * fontSize / 1000;\n continue;\n }\n\n var restoreNeeded = false;\n var spacing = (glyph.isSpace ? wordSpacing : 0) + charSpacing;\n var character = glyph.fontChar;\n var accent = glyph.accent;\n var scaledX = void 0,\n scaledY = void 0;\n var width = glyph.width;\n\n if (vertical) {\n var vmetric = glyph.vmetric || defaultVMetrics;\n var vx = -(glyph.vmetric ? vmetric[1] : width * 0.5) * widthAdvanceScale;\n var vy = vmetric[2] * widthAdvanceScale;\n width = vmetric ? -vmetric[0] : width;\n scaledX = vx / fontSizeScale;\n scaledY = (x + vy) / fontSizeScale;\n } else {\n scaledX = x / fontSizeScale;\n scaledY = 0;\n }\n\n if (font.remeasure && width > 0) {\n var measuredWidth = ctx.measureText(character).width * 1000 / fontSize * fontSizeScale;\n\n if (width < measuredWidth && this.isFontSubpixelAAEnabled) {\n var characterScaleX = width / measuredWidth;\n restoreNeeded = true;\n ctx.save();\n ctx.scale(characterScaleX, 1);\n scaledX /= characterScaleX;\n } else if (width !== measuredWidth) {\n scaledX += (width - measuredWidth) / 2000 * fontSize / fontSizeScale;\n }\n }\n\n if (this.contentVisible && (glyph.isInFont || font.missingFile)) {\n if (simpleFillText && !accent) {\n ctx.fillText(character, scaledX, scaledY);\n } else {\n this.paintChar(character, scaledX, scaledY, patternTransform, resetLineWidthToOne);\n\n if (accent) {\n var scaledAccentX = scaledX + fontSize * accent.offset.x / fontSizeScale;\n var scaledAccentY = scaledY - fontSize * accent.offset.y / fontSizeScale;\n this.paintChar(accent.fontChar, scaledAccentX, scaledAccentY, patternTransform, resetLineWidthToOne);\n }\n }\n }\n\n var charWidth = void 0;\n\n if (vertical) {\n charWidth = width * widthAdvanceScale - spacing * fontDirection;\n } else {\n charWidth = width * widthAdvanceScale + spacing * fontDirection;\n }\n\n x += charWidth;\n\n if (restoreNeeded) {\n ctx.restore();\n }\n }\n\n if (vertical) {\n current.y -= x;\n } else {\n current.x += x * textHScale;\n }\n\n ctx.restore();\n return undefined;\n }\n }, {\n key: \"showType3Text\",\n value: function showType3Text(glyphs) {\n var ctx = this.ctx;\n var current = this.current;\n var font = current.font;\n var fontSize = current.fontSize;\n var fontDirection = current.fontDirection;\n var spacingDir = font.vertical ? 1 : -1;\n var charSpacing = current.charSpacing;\n var wordSpacing = current.wordSpacing;\n var textHScale = current.textHScale * fontDirection;\n var fontMatrix = current.fontMatrix || _util.FONT_IDENTITY_MATRIX;\n var glyphsLength = glyphs.length;\n var isTextInvisible = current.textRenderingMode === _util.TextRenderingMode.INVISIBLE;\n var i, glyph, width, spacingLength;\n\n if (isTextInvisible || fontSize === 0) {\n return;\n }\n\n this._cachedGetSinglePixelWidth = null;\n ctx.save();\n ctx.transform.apply(ctx, current.textMatrix);\n ctx.translate(current.x, current.y);\n ctx.scale(textHScale, fontDirection);\n\n for (i = 0; i < glyphsLength; ++i) {\n glyph = glyphs[i];\n\n if ((0, _util.isNum)(glyph)) {\n spacingLength = spacingDir * glyph * fontSize / 1000;\n this.ctx.translate(spacingLength, 0);\n current.x += spacingLength * textHScale;\n continue;\n }\n\n var spacing = (glyph.isSpace ? wordSpacing : 0) + charSpacing;\n var operatorList = font.charProcOperatorList[glyph.operatorListId];\n\n if (!operatorList) {\n (0, _util.warn)(\"Type3 character \\\"\".concat(glyph.operatorListId, \"\\\" is not available.\"));\n continue;\n }\n\n if (this.contentVisible) {\n this.processingType3 = glyph;\n this.save();\n ctx.scale(fontSize, fontSize);\n ctx.transform.apply(ctx, fontMatrix);\n this.executeOperatorList(operatorList);\n this.restore();\n }\n\n var transformed = _util.Util.applyTransform([glyph.width, 0], fontMatrix);\n\n width = transformed[0] * fontSize + spacing;\n ctx.translate(width, 0);\n current.x += width * textHScale;\n }\n\n ctx.restore();\n this.processingType3 = null;\n }\n }, {\n key: \"setCharWidth\",\n value: function setCharWidth(xWidth, yWidth) {}\n }, {\n key: \"setCharWidthAndBounds\",\n value: function setCharWidthAndBounds(xWidth, yWidth, llx, lly, urx, ury) {\n this.ctx.rect(llx, lly, urx - llx, ury - lly);\n this.clip();\n this.endPath();\n }\n }, {\n key: \"getColorN_Pattern\",\n value: function getColorN_Pattern(IR) {\n var _this = this;\n\n var pattern;\n\n if (IR[0] === \"TilingPattern\") {\n var color = IR[1];\n var baseTransform = this.baseTransform || this.ctx.mozCurrentTransform.slice();\n var canvasGraphicsFactory = {\n createCanvasGraphics: function createCanvasGraphics(ctx) {\n return new CanvasGraphics(ctx, _this.commonObjs, _this.objs, _this.canvasFactory);\n }\n };\n pattern = new _pattern_helper.TilingPattern(IR, color, this.ctx, canvasGraphicsFactory, baseTransform);\n } else {\n pattern = this._getPattern(IR[1], IR[2]);\n }\n\n return pattern;\n }\n }, {\n key: \"setStrokeColorN\",\n value: function setStrokeColorN() {\n this.current.strokeColor = this.getColorN_Pattern(arguments);\n }\n }, {\n key: \"setFillColorN\",\n value: function setFillColorN() {\n this.current.fillColor = this.getColorN_Pattern(arguments);\n this.current.patternFill = true;\n }\n }, {\n key: \"setStrokeRGBColor\",\n value: function setStrokeRGBColor(r, g, b) {\n var color = _util.Util.makeHexColor(r, g, b);\n\n this.ctx.strokeStyle = color;\n this.current.strokeColor = color;\n }\n }, {\n key: \"setFillRGBColor\",\n value: function setFillRGBColor(r, g, b) {\n var color = _util.Util.makeHexColor(r, g, b);\n\n this.ctx.fillStyle = color;\n this.current.fillColor = color;\n this.current.patternFill = false;\n }\n }, {\n key: \"_getPattern\",\n value: function _getPattern(objId) {\n var matrix = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;\n var pattern;\n\n if (this.cachedPatterns.has(objId)) {\n pattern = this.cachedPatterns.get(objId);\n } else {\n pattern = (0, _pattern_helper.getShadingPattern)(this.objs.get(objId), this.cachedCanvasPatterns);\n this.cachedPatterns.set(objId, pattern);\n }\n\n if (matrix) {\n pattern.matrix = matrix;\n }\n\n return pattern;\n }\n }, {\n key: \"shadingFill\",\n value: function shadingFill(objId) {\n if (!this.contentVisible) {\n return;\n }\n\n var ctx = this.ctx;\n this.save();\n\n var pattern = this._getPattern(objId);\n\n ctx.fillStyle = pattern.getPattern(ctx, this, ctx.mozCurrentTransformInverse, true);\n var inv = ctx.mozCurrentTransformInverse;\n\n if (inv) {\n var canvas = ctx.canvas;\n var width = canvas.width;\n var height = canvas.height;\n\n var bl = _util.Util.applyTransform([0, 0], inv);\n\n var br = _util.Util.applyTransform([0, height], inv);\n\n var ul = _util.Util.applyTransform([width, 0], inv);\n\n var ur = _util.Util.applyTransform([width, height], inv);\n\n var x0 = Math.min(bl[0], br[0], ul[0], ur[0]);\n var y0 = Math.min(bl[1], br[1], ul[1], ur[1]);\n var x1 = Math.max(bl[0], br[0], ul[0], ur[0]);\n var y1 = Math.max(bl[1], br[1], ul[1], ur[1]);\n this.ctx.fillRect(x0, y0, x1 - x0, y1 - y0);\n } else {\n this.ctx.fillRect(-1e10, -1e10, 2e10, 2e10);\n }\n\n this.restore();\n }\n }, {\n key: \"beginInlineImage\",\n value: function beginInlineImage() {\n (0, _util.unreachable)(\"Should not call beginInlineImage\");\n }\n }, {\n key: \"beginImageData\",\n value: function beginImageData() {\n (0, _util.unreachable)(\"Should not call beginImageData\");\n }\n }, {\n key: \"paintFormXObjectBegin\",\n value: function paintFormXObjectBegin(matrix, bbox) {\n if (!this.contentVisible) {\n return;\n }\n\n this.save();\n this.baseTransformStack.push(this.baseTransform);\n\n if (Array.isArray(matrix) && matrix.length === 6) {\n this.transform.apply(this, matrix);\n }\n\n this.baseTransform = this.ctx.mozCurrentTransform;\n\n if (bbox) {\n var width = bbox[2] - bbox[0];\n var height = bbox[3] - bbox[1];\n this.ctx.rect(bbox[0], bbox[1], width, height);\n this.clip();\n this.endPath();\n }\n }\n }, {\n key: \"paintFormXObjectEnd\",\n value: function paintFormXObjectEnd() {\n if (!this.contentVisible) {\n return;\n }\n\n this.restore();\n this.baseTransform = this.baseTransformStack.pop();\n }\n }, {\n key: \"beginGroup\",\n value: function beginGroup(group) {\n if (!this.contentVisible) {\n return;\n }\n\n this.save();\n var currentCtx = this.ctx;\n\n if (!group.isolated) {\n (0, _util.info)(\"TODO: Support non-isolated groups.\");\n }\n\n if (group.knockout) {\n (0, _util.warn)(\"Knockout groups not supported.\");\n }\n\n var currentTransform = currentCtx.mozCurrentTransform;\n\n if (group.matrix) {\n currentCtx.transform.apply(currentCtx, group.matrix);\n }\n\n if (!group.bbox) {\n throw new Error(\"Bounding box is required.\");\n }\n\n var bounds = _util.Util.getAxialAlignedBoundingBox(group.bbox, currentCtx.mozCurrentTransform);\n\n var canvasBounds = [0, 0, currentCtx.canvas.width, currentCtx.canvas.height];\n bounds = _util.Util.intersect(bounds, canvasBounds) || [0, 0, 0, 0];\n var offsetX = Math.floor(bounds[0]);\n var offsetY = Math.floor(bounds[1]);\n var drawnWidth = Math.max(Math.ceil(bounds[2]) - offsetX, 1);\n var drawnHeight = Math.max(Math.ceil(bounds[3]) - offsetY, 1);\n var scaleX = 1,\n scaleY = 1;\n\n if (drawnWidth > MAX_GROUP_SIZE) {\n scaleX = drawnWidth / MAX_GROUP_SIZE;\n drawnWidth = MAX_GROUP_SIZE;\n }\n\n if (drawnHeight > MAX_GROUP_SIZE) {\n scaleY = drawnHeight / MAX_GROUP_SIZE;\n drawnHeight = MAX_GROUP_SIZE;\n }\n\n var cacheId = \"groupAt\" + this.groupLevel;\n\n if (group.smask) {\n cacheId += \"_smask_\" + this.smaskCounter++ % 2;\n }\n\n var scratchCanvas = this.cachedCanvases.getCanvas(cacheId, drawnWidth, drawnHeight, true);\n var groupCtx = scratchCanvas.context;\n groupCtx.scale(1 / scaleX, 1 / scaleY);\n groupCtx.translate(-offsetX, -offsetY);\n groupCtx.transform.apply(groupCtx, currentTransform);\n\n if (group.smask) {\n this.smaskStack.push({\n canvas: scratchCanvas.canvas,\n context: groupCtx,\n offsetX: offsetX,\n offsetY: offsetY,\n scaleX: scaleX,\n scaleY: scaleY,\n subtype: group.smask.subtype,\n backdrop: group.smask.backdrop,\n transferMap: group.smask.transferMap || null,\n startTransformInverse: null\n });\n } else {\n currentCtx.setTransform(1, 0, 0, 1, 0, 0);\n currentCtx.translate(offsetX, offsetY);\n currentCtx.scale(scaleX, scaleY);\n }\n\n copyCtxState(currentCtx, groupCtx);\n this.ctx = groupCtx;\n this.setGState([[\"BM\", \"source-over\"], [\"ca\", 1], [\"CA\", 1]]);\n this.groupStack.push(currentCtx);\n this.groupLevel++;\n this.current.activeSMask = null;\n }\n }, {\n key: \"endGroup\",\n value: function endGroup(group) {\n if (!this.contentVisible) {\n return;\n }\n\n this.groupLevel--;\n var groupCtx = this.ctx;\n this.ctx = this.groupStack.pop();\n this.ctx.imageSmoothingEnabled = false;\n\n if (group.smask) {\n this.tempSMask = this.smaskStack.pop();\n } else {\n this.ctx.drawImage(groupCtx.canvas, 0, 0);\n }\n\n this.restore();\n }\n }, {\n key: \"beginAnnotations\",\n value: function beginAnnotations() {\n this.save();\n\n if (this.baseTransform) {\n this.ctx.setTransform.apply(this.ctx, this.baseTransform);\n }\n }\n }, {\n key: \"endAnnotations\",\n value: function endAnnotations() {\n this.restore();\n }\n }, {\n key: \"beginAnnotation\",\n value: function beginAnnotation(id, rect, transform, matrix) {\n this.save();\n resetCtxToDefault(this.ctx);\n this.current = new CanvasExtraState();\n\n if (Array.isArray(rect) && rect.length === 4) {\n var width = rect[2] - rect[0];\n var height = rect[3] - rect[1];\n this.ctx.rect(rect[0], rect[1], width, height);\n this.clip();\n this.endPath();\n }\n\n this.transform.apply(this, transform);\n this.transform.apply(this, matrix);\n }\n }, {\n key: \"endAnnotation\",\n value: function endAnnotation() {\n this.restore();\n }\n }, {\n key: \"paintImageMaskXObject\",\n value: function paintImageMaskXObject(img) {\n if (!this.contentVisible) {\n return;\n }\n\n var ctx = this.ctx;\n var width = img.width,\n height = img.height;\n var glyph = this.processingType3;\n\n if (COMPILE_TYPE3_GLYPHS && glyph && glyph.compiled === undefined) {\n if (width <= MAX_SIZE_TO_COMPILE && height <= MAX_SIZE_TO_COMPILE) {\n glyph.compiled = compileType3Glyph({\n data: img.data,\n width: width,\n height: height\n });\n } else {\n glyph.compiled = null;\n }\n }\n\n if (glyph !== null && glyph !== void 0 && glyph.compiled) {\n glyph.compiled(ctx);\n return;\n }\n\n var mask = this._createMaskCanvas(img);\n\n var maskCanvas = mask.canvas;\n ctx.save();\n ctx.setTransform(1, 0, 0, 1, 0, 0);\n ctx.drawImage(maskCanvas, mask.offsetX, mask.offsetY);\n ctx.restore();\n }\n }, {\n key: \"paintImageMaskXObjectRepeat\",\n value: function paintImageMaskXObjectRepeat(imgData, scaleX) {\n var skewX = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 0;\n var skewY = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 0;\n var scaleY = arguments.length > 4 ? arguments[4] : undefined;\n var positions = arguments.length > 5 ? arguments[5] : undefined;\n\n if (!this.contentVisible) {\n return;\n }\n\n var ctx = this.ctx;\n ctx.save();\n var currentTransform = ctx.mozCurrentTransform;\n ctx.transform(scaleX, skewX, skewY, scaleY, 0, 0);\n\n var mask = this._createMaskCanvas(imgData);\n\n ctx.setTransform(1, 0, 0, 1, 0, 0);\n\n for (var i = 0, ii = positions.length; i < ii; i += 2) {\n var trans = _util.Util.transform(currentTransform, [scaleX, skewX, skewY, scaleY, positions[i], positions[i + 1]]);\n\n var _Util$applyTransform = _util.Util.applyTransform([0, 0], trans),\n _Util$applyTransform2 = _slicedToArray(_Util$applyTransform, 2),\n x = _Util$applyTransform2[0],\n y = _Util$applyTransform2[1];\n\n ctx.drawImage(mask.canvas, x, y);\n }\n\n ctx.restore();\n }\n }, {\n key: \"paintImageMaskXObjectGroup\",\n value: function paintImageMaskXObjectGroup(images) {\n if (!this.contentVisible) {\n return;\n }\n\n var ctx = this.ctx;\n var fillColor = this.current.fillColor;\n var isPatternFill = this.current.patternFill;\n\n for (var i = 0, ii = images.length; i < ii; i++) {\n var image = images[i];\n var width = image.width,\n height = image.height;\n var maskCanvas = this.cachedCanvases.getCanvas(\"maskCanvas\", width, height);\n var maskCtx = maskCanvas.context;\n maskCtx.save();\n putBinaryImageMask(maskCtx, image);\n maskCtx.globalCompositeOperation = \"source-in\";\n maskCtx.fillStyle = isPatternFill ? fillColor.getPattern(maskCtx, this, ctx.mozCurrentTransformInverse, false) : fillColor;\n maskCtx.fillRect(0, 0, width, height);\n maskCtx.restore();\n ctx.save();\n ctx.transform.apply(ctx, image.transform);\n ctx.scale(1, -1);\n ctx.drawImage(maskCanvas.canvas, 0, 0, width, height, 0, -1, 1, 1);\n ctx.restore();\n }\n }\n }, {\n key: \"paintImageXObject\",\n value: function paintImageXObject(objId) {\n if (!this.contentVisible) {\n return;\n }\n\n var imgData = objId.startsWith(\"g_\") ? this.commonObjs.get(objId) : this.objs.get(objId);\n\n if (!imgData) {\n (0, _util.warn)(\"Dependent image isn't ready yet\");\n return;\n }\n\n this.paintInlineImageXObject(imgData);\n }\n }, {\n key: \"paintImageXObjectRepeat\",\n value: function paintImageXObjectRepeat(objId, scaleX, scaleY, positions) {\n if (!this.contentVisible) {\n return;\n }\n\n var imgData = objId.startsWith(\"g_\") ? this.commonObjs.get(objId) : this.objs.get(objId);\n\n if (!imgData) {\n (0, _util.warn)(\"Dependent image isn't ready yet\");\n return;\n }\n\n var width = imgData.width;\n var height = imgData.height;\n var map = [];\n\n for (var i = 0, ii = positions.length; i < ii; i += 2) {\n map.push({\n transform: [scaleX, 0, 0, scaleY, positions[i], positions[i + 1]],\n x: 0,\n y: 0,\n w: width,\n h: height\n });\n }\n\n this.paintInlineImageXObjectGroup(imgData, map);\n }\n }, {\n key: \"paintInlineImageXObject\",\n value: function paintInlineImageXObject(imgData) {\n if (!this.contentVisible) {\n return;\n }\n\n var width = imgData.width;\n var height = imgData.height;\n var ctx = this.ctx;\n this.save();\n ctx.scale(1 / width, -1 / height);\n var imgToPaint;\n\n if (typeof HTMLElement === \"function\" && imgData instanceof HTMLElement || !imgData.data) {\n imgToPaint = imgData;\n } else {\n var tmpCanvas = this.cachedCanvases.getCanvas(\"inlineImage\", width, height);\n var tmpCtx = tmpCanvas.context;\n putBinaryImageData(tmpCtx, imgData, this.current.transferMaps);\n imgToPaint = tmpCanvas.canvas;\n }\n\n var scaled = this._scaleImage(imgToPaint, ctx.mozCurrentTransformInverse);\n\n ctx.imageSmoothingEnabled = getImageSmoothingEnabled(ctx.mozCurrentTransform, imgData.interpolate);\n ctx.drawImage(scaled.img, 0, 0, scaled.paintWidth, scaled.paintHeight, 0, -height, width, height);\n\n if (this.imageLayer) {\n var position = this.getCanvasPosition(0, -height);\n this.imageLayer.appendImage({\n imgData: imgData,\n left: position[0],\n top: position[1],\n width: width / ctx.mozCurrentTransformInverse[0],\n height: height / ctx.mozCurrentTransformInverse[3]\n });\n }\n\n this.restore();\n }\n }, {\n key: \"paintInlineImageXObjectGroup\",\n value: function paintInlineImageXObjectGroup(imgData, map) {\n if (!this.contentVisible) {\n return;\n }\n\n var ctx = this.ctx;\n var w = imgData.width;\n var h = imgData.height;\n var tmpCanvas = this.cachedCanvases.getCanvas(\"inlineImage\", w, h);\n var tmpCtx = tmpCanvas.context;\n putBinaryImageData(tmpCtx, imgData, this.current.transferMaps);\n\n for (var i = 0, ii = map.length; i < ii; i++) {\n var entry = map[i];\n ctx.save();\n ctx.transform.apply(ctx, entry.transform);\n ctx.scale(1, -1);\n ctx.drawImage(tmpCanvas.canvas, entry.x, entry.y, entry.w, entry.h, 0, -1, 1, 1);\n\n if (this.imageLayer) {\n var position = this.getCanvasPosition(entry.x, entry.y);\n this.imageLayer.appendImage({\n imgData: imgData,\n left: position[0],\n top: position[1],\n width: w,\n height: h\n });\n }\n\n ctx.restore();\n }\n }\n }, {\n key: \"paintSolidColorImageMask\",\n value: function paintSolidColorImageMask() {\n if (!this.contentVisible) {\n return;\n }\n\n this.ctx.fillRect(0, 0, 1, 1);\n }\n }, {\n key: \"markPoint\",\n value: function markPoint(tag) {}\n }, {\n key: \"markPointProps\",\n value: function markPointProps(tag, properties) {}\n }, {\n key: \"beginMarkedContent\",\n value: function beginMarkedContent(tag) {\n this.markedContentStack.push({\n visible: true\n });\n }\n }, {\n key: \"beginMarkedContentProps\",\n value: function beginMarkedContentProps(tag, properties) {\n if (tag === \"OC\") {\n this.markedContentStack.push({\n visible: this.optionalContentConfig.isVisible(properties)\n });\n } else {\n this.markedContentStack.push({\n visible: true\n });\n }\n\n this.contentVisible = this.isContentVisible();\n }\n }, {\n key: \"endMarkedContent\",\n value: function endMarkedContent() {\n this.markedContentStack.pop();\n this.contentVisible = this.isContentVisible();\n }\n }, {\n key: \"beginCompat\",\n value: function beginCompat() {}\n }, {\n key: \"endCompat\",\n value: function endCompat() {}\n }, {\n key: \"consumePath\",\n value: function consumePath() {\n var ctx = this.ctx;\n\n if (this.pendingClip) {\n if (this.pendingClip === EO_CLIP) {\n ctx.clip(\"evenodd\");\n } else {\n ctx.clip();\n }\n\n this.pendingClip = null;\n }\n\n ctx.beginPath();\n }\n }, {\n key: \"getSinglePixelWidth\",\n value: function getSinglePixelWidth() {\n if (this._cachedGetSinglePixelWidth === null) {\n var m = this.ctx.mozCurrentTransform;\n var absDet = Math.abs(m[0] * m[3] - m[2] * m[1]);\n var sqNorm1 = Math.pow(m[0], 2) + Math.pow(m[2], 2);\n var sqNorm2 = Math.pow(m[1], 2) + Math.pow(m[3], 2);\n var pixelHeight = Math.sqrt(Math.max(sqNorm1, sqNorm2)) / absDet;\n\n if (sqNorm1 !== sqNorm2 && this._combinedScaleFactor * pixelHeight > 1) {\n this._cachedGetSinglePixelWidth = -(this._combinedScaleFactor * pixelHeight);\n } else if (absDet > Number.EPSILON) {\n this._cachedGetSinglePixelWidth = pixelHeight;\n } else {\n this._cachedGetSinglePixelWidth = 1;\n }\n }\n\n return this._cachedGetSinglePixelWidth;\n }\n }, {\n key: \"getCanvasPosition\",\n value: function getCanvasPosition(x, y) {\n var transform = this.ctx.mozCurrentTransform;\n return [transform[0] * x + transform[2] * y + transform[4], transform[1] * x + transform[3] * y + transform[5]];\n }\n }, {\n key: \"isContentVisible\",\n value: function isContentVisible() {\n for (var i = this.markedContentStack.length - 1; i >= 0; i--) {\n if (!this.markedContentStack[i].visible) {\n return false;\n }\n }\n\n return true;\n }\n }]);\n\n return CanvasGraphics;\n}();\n\nexports.CanvasGraphics = CanvasGraphics;\n\nfor (var op in _util.OPS) {\n if (CanvasGraphics.prototype[op] !== undefined) {\n CanvasGraphics.prototype[_util.OPS[op]] = CanvasGraphics.prototype[op];\n }\n}\n\n/***/ }),\n/* 124 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\"use strict\";\n\n\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.getShadingPattern = getShadingPattern;\nexports.TilingPattern = void 0;\n\nvar _util = __w_pdfjs_require__(4);\n\nfunction _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it[\"return\"] != null) it[\"return\"](); } finally { if (didErr) throw err; } } }; }\n\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } else if (call !== void 0) { throw new TypeError(\"Derived constructors may only return object or undefined\"); } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction applyBoundingBox(ctx, bbox) {\n if (!bbox || typeof Path2D === \"undefined\") {\n return;\n }\n\n var width = bbox[2] - bbox[0];\n var height = bbox[3] - bbox[1];\n var region = new Path2D();\n region.rect(bbox[0], bbox[1], width, height);\n ctx.clip(region);\n}\n\nvar BaseShadingPattern = /*#__PURE__*/function () {\n function BaseShadingPattern() {\n _classCallCheck(this, BaseShadingPattern);\n\n if (this.constructor === BaseShadingPattern) {\n (0, _util.unreachable)(\"Cannot initialize BaseShadingPattern.\");\n }\n }\n\n _createClass(BaseShadingPattern, [{\n key: \"getPattern\",\n value: function getPattern() {\n (0, _util.unreachable)(\"Abstract method `getPattern` called.\");\n }\n }]);\n\n return BaseShadingPattern;\n}();\n\nvar RadialAxialShadingPattern = /*#__PURE__*/function (_BaseShadingPattern) {\n _inherits(RadialAxialShadingPattern, _BaseShadingPattern);\n\n var _super = _createSuper(RadialAxialShadingPattern);\n\n function RadialAxialShadingPattern(IR, cachedCanvasPatterns) {\n var _this;\n\n _classCallCheck(this, RadialAxialShadingPattern);\n\n _this = _super.call(this);\n _this._type = IR[1];\n _this._bbox = IR[2];\n _this._colorStops = IR[3];\n _this._p0 = IR[4];\n _this._p1 = IR[5];\n _this._r0 = IR[6];\n _this._r1 = IR[7];\n _this.matrix = null;\n _this.cachedCanvasPatterns = cachedCanvasPatterns;\n return _this;\n }\n\n _createClass(RadialAxialShadingPattern, [{\n key: \"_createGradient\",\n value: function _createGradient(ctx) {\n var grad;\n\n if (this._type === \"axial\") {\n grad = ctx.createLinearGradient(this._p0[0], this._p0[1], this._p1[0], this._p1[1]);\n } else if (this._type === \"radial\") {\n grad = ctx.createRadialGradient(this._p0[0], this._p0[1], this._r0, this._p1[0], this._p1[1], this._r1);\n }\n\n var _iterator = _createForOfIteratorHelper(this._colorStops),\n _step;\n\n try {\n for (_iterator.s(); !(_step = _iterator.n()).done;) {\n var colorStop = _step.value;\n grad.addColorStop(colorStop[0], colorStop[1]);\n }\n } catch (err) {\n _iterator.e(err);\n } finally {\n _iterator.f();\n }\n\n return grad;\n }\n }, {\n key: \"getPattern\",\n value: function getPattern(ctx, owner, inverse) {\n var shadingFill = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false;\n var pattern;\n\n if (!shadingFill) {\n if (this.cachedCanvasPatterns.has(this)) {\n pattern = this.cachedCanvasPatterns.get(this);\n } else {\n var tmpCanvas = owner.cachedCanvases.getCanvas(\"pattern\", owner.ctx.canvas.width, owner.ctx.canvas.height, true);\n var tmpCtx = tmpCanvas.context;\n tmpCtx.clearRect(0, 0, tmpCtx.canvas.width, tmpCtx.canvas.height);\n tmpCtx.beginPath();\n tmpCtx.rect(0, 0, tmpCtx.canvas.width, tmpCtx.canvas.height);\n tmpCtx.setTransform.apply(tmpCtx, owner.baseTransform);\n\n if (this.matrix) {\n tmpCtx.transform.apply(tmpCtx, this.matrix);\n }\n\n applyBoundingBox(tmpCtx, this._bbox);\n tmpCtx.fillStyle = this._createGradient(tmpCtx);\n tmpCtx.fill();\n pattern = ctx.createPattern(tmpCanvas.canvas, \"repeat\");\n this.cachedCanvasPatterns.set(this, pattern);\n }\n } else {\n applyBoundingBox(ctx, this._bbox);\n pattern = this._createGradient(ctx);\n }\n\n if (!shadingFill) {\n var domMatrix = new DOMMatrix(inverse);\n\n try {\n pattern.setTransform(domMatrix);\n } catch (ex) {\n (0, _util.warn)(\"RadialAxialShadingPattern.getPattern: \\\"\".concat(ex === null || ex === void 0 ? void 0 : ex.message, \"\\\".\"));\n }\n }\n\n return pattern;\n }\n }]);\n\n return RadialAxialShadingPattern;\n}(BaseShadingPattern);\n\nfunction drawTriangle(data, context, p1, p2, p3, c1, c2, c3) {\n var coords = context.coords,\n colors = context.colors;\n var bytes = data.data,\n rowSize = data.width * 4;\n var tmp;\n\n if (coords[p1 + 1] > coords[p2 + 1]) {\n tmp = p1;\n p1 = p2;\n p2 = tmp;\n tmp = c1;\n c1 = c2;\n c2 = tmp;\n }\n\n if (coords[p2 + 1] > coords[p3 + 1]) {\n tmp = p2;\n p2 = p3;\n p3 = tmp;\n tmp = c2;\n c2 = c3;\n c3 = tmp;\n }\n\n if (coords[p1 + 1] > coords[p2 + 1]) {\n tmp = p1;\n p1 = p2;\n p2 = tmp;\n tmp = c1;\n c1 = c2;\n c2 = tmp;\n }\n\n var x1 = (coords[p1] + context.offsetX) * context.scaleX;\n var y1 = (coords[p1 + 1] + context.offsetY) * context.scaleY;\n var x2 = (coords[p2] + context.offsetX) * context.scaleX;\n var y2 = (coords[p2 + 1] + context.offsetY) * context.scaleY;\n var x3 = (coords[p3] + context.offsetX) * context.scaleX;\n var y3 = (coords[p3 + 1] + context.offsetY) * context.scaleY;\n\n if (y1 >= y3) {\n return;\n }\n\n var c1r = colors[c1],\n c1g = colors[c1 + 1],\n c1b = colors[c1 + 2];\n var c2r = colors[c2],\n c2g = colors[c2 + 1],\n c2b = colors[c2 + 2];\n var c3r = colors[c3],\n c3g = colors[c3 + 1],\n c3b = colors[c3 + 2];\n var minY = Math.round(y1),\n maxY = Math.round(y3);\n var xa, car, cag, cab;\n var xb, cbr, cbg, cbb;\n\n for (var y = minY; y <= maxY; y++) {\n if (y < y2) {\n var _k = void 0;\n\n if (y < y1) {\n _k = 0;\n } else {\n _k = (y1 - y) / (y1 - y2);\n }\n\n xa = x1 - (x1 - x2) * _k;\n car = c1r - (c1r - c2r) * _k;\n cag = c1g - (c1g - c2g) * _k;\n cab = c1b - (c1b - c2b) * _k;\n } else {\n var _k2 = void 0;\n\n if (y > y3) {\n _k2 = 1;\n } else if (y2 === y3) {\n _k2 = 0;\n } else {\n _k2 = (y2 - y) / (y2 - y3);\n }\n\n xa = x2 - (x2 - x3) * _k2;\n car = c2r - (c2r - c3r) * _k2;\n cag = c2g - (c2g - c3g) * _k2;\n cab = c2b - (c2b - c3b) * _k2;\n }\n\n var k = void 0;\n\n if (y < y1) {\n k = 0;\n } else if (y > y3) {\n k = 1;\n } else {\n k = (y1 - y) / (y1 - y3);\n }\n\n xb = x1 - (x1 - x3) * k;\n cbr = c1r - (c1r - c3r) * k;\n cbg = c1g - (c1g - c3g) * k;\n cbb = c1b - (c1b - c3b) * k;\n var x1_ = Math.round(Math.min(xa, xb));\n var x2_ = Math.round(Math.max(xa, xb));\n var j = rowSize * y + x1_ * 4;\n\n for (var x = x1_; x <= x2_; x++) {\n k = (xa - x) / (xa - xb);\n\n if (k < 0) {\n k = 0;\n } else if (k > 1) {\n k = 1;\n }\n\n bytes[j++] = car - (car - cbr) * k | 0;\n bytes[j++] = cag - (cag - cbg) * k | 0;\n bytes[j++] = cab - (cab - cbb) * k | 0;\n bytes[j++] = 255;\n }\n }\n}\n\nfunction drawFigure(data, figure, context) {\n var ps = figure.coords;\n var cs = figure.colors;\n var i, ii;\n\n switch (figure.type) {\n case \"lattice\":\n var verticesPerRow = figure.verticesPerRow;\n var rows = Math.floor(ps.length / verticesPerRow) - 1;\n var cols = verticesPerRow - 1;\n\n for (i = 0; i < rows; i++) {\n var q = i * verticesPerRow;\n\n for (var j = 0; j < cols; j++, q++) {\n drawTriangle(data, context, ps[q], ps[q + 1], ps[q + verticesPerRow], cs[q], cs[q + 1], cs[q + verticesPerRow]);\n drawTriangle(data, context, ps[q + verticesPerRow + 1], ps[q + 1], ps[q + verticesPerRow], cs[q + verticesPerRow + 1], cs[q + 1], cs[q + verticesPerRow]);\n }\n }\n\n break;\n\n case \"triangles\":\n for (i = 0, ii = ps.length; i < ii; i += 3) {\n drawTriangle(data, context, ps[i], ps[i + 1], ps[i + 2], cs[i], cs[i + 1], cs[i + 2]);\n }\n\n break;\n\n default:\n throw new Error(\"illegal figure\");\n }\n}\n\nvar MeshShadingPattern = /*#__PURE__*/function (_BaseShadingPattern2) {\n _inherits(MeshShadingPattern, _BaseShadingPattern2);\n\n var _super2 = _createSuper(MeshShadingPattern);\n\n function MeshShadingPattern(IR) {\n var _this2;\n\n _classCallCheck(this, MeshShadingPattern);\n\n _this2 = _super2.call(this);\n _this2._coords = IR[2];\n _this2._colors = IR[3];\n _this2._figures = IR[4];\n _this2._bounds = IR[5];\n _this2._bbox = IR[7];\n _this2._background = IR[8];\n _this2.matrix = null;\n return _this2;\n }\n\n _createClass(MeshShadingPattern, [{\n key: \"_createMeshCanvas\",\n value: function _createMeshCanvas(combinedScale, backgroundColor, cachedCanvases) {\n var EXPECTED_SCALE = 1.1;\n var MAX_PATTERN_SIZE = 3000;\n var BORDER_SIZE = 2;\n var offsetX = Math.floor(this._bounds[0]);\n var offsetY = Math.floor(this._bounds[1]);\n var boundsWidth = Math.ceil(this._bounds[2]) - offsetX;\n var boundsHeight = Math.ceil(this._bounds[3]) - offsetY;\n var width = Math.min(Math.ceil(Math.abs(boundsWidth * combinedScale[0] * EXPECTED_SCALE)), MAX_PATTERN_SIZE);\n var height = Math.min(Math.ceil(Math.abs(boundsHeight * combinedScale[1] * EXPECTED_SCALE)), MAX_PATTERN_SIZE);\n var scaleX = boundsWidth / width;\n var scaleY = boundsHeight / height;\n var context = {\n coords: this._coords,\n colors: this._colors,\n offsetX: -offsetX,\n offsetY: -offsetY,\n scaleX: 1 / scaleX,\n scaleY: 1 / scaleY\n };\n var paddedWidth = width + BORDER_SIZE * 2;\n var paddedHeight = height + BORDER_SIZE * 2;\n var tmpCanvas = cachedCanvases.getCanvas(\"mesh\", paddedWidth, paddedHeight, false);\n var tmpCtx = tmpCanvas.context;\n var data = tmpCtx.createImageData(width, height);\n\n if (backgroundColor) {\n var bytes = data.data;\n\n for (var i = 0, ii = bytes.length; i < ii; i += 4) {\n bytes[i] = backgroundColor[0];\n bytes[i + 1] = backgroundColor[1];\n bytes[i + 2] = backgroundColor[2];\n bytes[i + 3] = 255;\n }\n }\n\n var _iterator2 = _createForOfIteratorHelper(this._figures),\n _step2;\n\n try {\n for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {\n var figure = _step2.value;\n drawFigure(data, figure, context);\n }\n } catch (err) {\n _iterator2.e(err);\n } finally {\n _iterator2.f();\n }\n\n tmpCtx.putImageData(data, BORDER_SIZE, BORDER_SIZE);\n var canvas = tmpCanvas.canvas;\n return {\n canvas: canvas,\n offsetX: offsetX - BORDER_SIZE * scaleX,\n offsetY: offsetY - BORDER_SIZE * scaleY,\n scaleX: scaleX,\n scaleY: scaleY\n };\n }\n }, {\n key: \"getPattern\",\n value: function getPattern(ctx, owner, inverse) {\n var shadingFill = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false;\n applyBoundingBox(ctx, this._bbox);\n var scale;\n\n if (shadingFill) {\n scale = _util.Util.singularValueDecompose2dScale(ctx.mozCurrentTransform);\n } else {\n scale = _util.Util.singularValueDecompose2dScale(owner.baseTransform);\n\n if (this.matrix) {\n var matrixScale = _util.Util.singularValueDecompose2dScale(this.matrix);\n\n scale = [scale[0] * matrixScale[0], scale[1] * matrixScale[1]];\n }\n }\n\n var temporaryPatternCanvas = this._createMeshCanvas(scale, shadingFill ? null : this._background, owner.cachedCanvases);\n\n if (!shadingFill) {\n ctx.setTransform.apply(ctx, owner.baseTransform);\n\n if (this.matrix) {\n ctx.transform.apply(ctx, this.matrix);\n }\n }\n\n ctx.translate(temporaryPatternCanvas.offsetX, temporaryPatternCanvas.offsetY);\n ctx.scale(temporaryPatternCanvas.scaleX, temporaryPatternCanvas.scaleY);\n return ctx.createPattern(temporaryPatternCanvas.canvas, \"no-repeat\");\n }\n }]);\n\n return MeshShadingPattern;\n}(BaseShadingPattern);\n\nvar DummyShadingPattern = /*#__PURE__*/function (_BaseShadingPattern3) {\n _inherits(DummyShadingPattern, _BaseShadingPattern3);\n\n var _super3 = _createSuper(DummyShadingPattern);\n\n function DummyShadingPattern() {\n _classCallCheck(this, DummyShadingPattern);\n\n return _super3.apply(this, arguments);\n }\n\n _createClass(DummyShadingPattern, [{\n key: \"getPattern\",\n value: function getPattern() {\n return \"hotpink\";\n }\n }]);\n\n return DummyShadingPattern;\n}(BaseShadingPattern);\n\nfunction getShadingPattern(IR, cachedCanvasPatterns) {\n switch (IR[0]) {\n case \"RadialAxial\":\n return new RadialAxialShadingPattern(IR, cachedCanvasPatterns);\n\n case \"Mesh\":\n return new MeshShadingPattern(IR);\n\n case \"Dummy\":\n return new DummyShadingPattern();\n }\n\n throw new Error(\"Unknown IR type: \".concat(IR[0]));\n}\n\nvar PaintType = {\n COLORED: 1,\n UNCOLORED: 2\n};\n\nvar TilingPattern = /*#__PURE__*/function () {\n function TilingPattern(IR, color, ctx, canvasGraphicsFactory, baseTransform) {\n _classCallCheck(this, TilingPattern);\n\n this.operatorList = IR[2];\n this.matrix = IR[3] || [1, 0, 0, 1, 0, 0];\n this.bbox = IR[4];\n this.xstep = IR[5];\n this.ystep = IR[6];\n this.paintType = IR[7];\n this.tilingType = IR[8];\n this.color = color;\n this.ctx = ctx;\n this.canvasGraphicsFactory = canvasGraphicsFactory;\n this.baseTransform = baseTransform;\n }\n\n _createClass(TilingPattern, [{\n key: \"createPatternCanvas\",\n value: function createPatternCanvas(owner) {\n var operatorList = this.operatorList;\n var bbox = this.bbox;\n var xstep = this.xstep;\n var ystep = this.ystep;\n var paintType = this.paintType;\n var tilingType = this.tilingType;\n var color = this.color;\n var canvasGraphicsFactory = this.canvasGraphicsFactory;\n (0, _util.info)(\"TilingType: \" + tilingType);\n var x0 = bbox[0],\n y0 = bbox[1],\n x1 = bbox[2],\n y1 = bbox[3];\n\n var matrixScale = _util.Util.singularValueDecompose2dScale(this.matrix);\n\n var curMatrixScale = _util.Util.singularValueDecompose2dScale(this.baseTransform);\n\n var combinedScale = [matrixScale[0] * curMatrixScale[0], matrixScale[1] * curMatrixScale[1]];\n var dimx = this.getSizeAndScale(xstep, this.ctx.canvas.width, combinedScale[0]);\n var dimy = this.getSizeAndScale(ystep, this.ctx.canvas.height, combinedScale[1]);\n var tmpCanvas = owner.cachedCanvases.getCanvas(\"pattern\", dimx.size, dimy.size, true);\n var tmpCtx = tmpCanvas.context;\n var graphics = canvasGraphicsFactory.createCanvasGraphics(tmpCtx);\n graphics.groupLevel = owner.groupLevel;\n this.setFillAndStrokeStyleToContext(graphics, paintType, color);\n var adjustedX0 = x0;\n var adjustedY0 = y0;\n var adjustedX1 = x1;\n var adjustedY1 = y1;\n\n if (x0 < 0) {\n adjustedX0 = 0;\n adjustedX1 += Math.abs(x0);\n }\n\n if (y0 < 0) {\n adjustedY0 = 0;\n adjustedY1 += Math.abs(y0);\n }\n\n tmpCtx.translate(-(dimx.scale * adjustedX0), -(dimy.scale * adjustedY0));\n graphics.transform(dimx.scale, 0, 0, dimy.scale, 0, 0);\n this.clipBbox(graphics, adjustedX0, adjustedY0, adjustedX1, adjustedY1);\n graphics.baseTransform = graphics.ctx.mozCurrentTransform.slice();\n graphics.executeOperatorList(operatorList);\n graphics.endDrawing();\n return {\n canvas: tmpCanvas.canvas,\n scaleX: dimx.scale,\n scaleY: dimy.scale,\n offsetX: adjustedX0,\n offsetY: adjustedY0\n };\n }\n }, {\n key: \"getSizeAndScale\",\n value: function getSizeAndScale(step, realOutputSize, scale) {\n step = Math.abs(step);\n var maxSize = Math.max(TilingPattern.MAX_PATTERN_SIZE, realOutputSize);\n var size = Math.ceil(step * scale);\n\n if (size >= maxSize) {\n size = maxSize;\n } else {\n scale = size / step;\n }\n\n return {\n scale: scale,\n size: size\n };\n }\n }, {\n key: \"clipBbox\",\n value: function clipBbox(graphics, x0, y0, x1, y1) {\n var bboxWidth = x1 - x0;\n var bboxHeight = y1 - y0;\n graphics.ctx.rect(x0, y0, bboxWidth, bboxHeight);\n graphics.clip();\n graphics.endPath();\n }\n }, {\n key: \"setFillAndStrokeStyleToContext\",\n value: function setFillAndStrokeStyleToContext(graphics, paintType, color) {\n var context = graphics.ctx,\n current = graphics.current;\n\n switch (paintType) {\n case PaintType.COLORED:\n var ctx = this.ctx;\n context.fillStyle = ctx.fillStyle;\n context.strokeStyle = ctx.strokeStyle;\n current.fillColor = ctx.fillStyle;\n current.strokeColor = ctx.strokeStyle;\n break;\n\n case PaintType.UNCOLORED:\n var cssColor = _util.Util.makeHexColor(color[0], color[1], color[2]);\n\n context.fillStyle = cssColor;\n context.strokeStyle = cssColor;\n current.fillColor = cssColor;\n current.strokeColor = cssColor;\n break;\n\n default:\n throw new _util.FormatError(\"Unsupported paint type: \".concat(paintType));\n }\n }\n }, {\n key: \"getPattern\",\n value: function getPattern(ctx, owner, inverse) {\n var shadingFill = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false;\n var matrix = inverse;\n\n if (!shadingFill) {\n matrix = _util.Util.transform(matrix, owner.baseTransform);\n\n if (this.matrix) {\n matrix = _util.Util.transform(matrix, this.matrix);\n }\n }\n\n var temporaryPatternCanvas = this.createPatternCanvas(owner);\n var domMatrix = new DOMMatrix(matrix);\n domMatrix = domMatrix.translate(temporaryPatternCanvas.offsetX, temporaryPatternCanvas.offsetY);\n domMatrix = domMatrix.scale(1 / temporaryPatternCanvas.scaleX, 1 / temporaryPatternCanvas.scaleY);\n var pattern = ctx.createPattern(temporaryPatternCanvas.canvas, \"repeat\");\n\n try {\n pattern.setTransform(domMatrix);\n } catch (ex) {\n (0, _util.warn)(\"TilingPattern.getPattern: \\\"\".concat(ex === null || ex === void 0 ? void 0 : ex.message, \"\\\".\"));\n }\n\n return pattern;\n }\n }], [{\n key: \"MAX_PATTERN_SIZE\",\n get: function get() {\n return (0, _util.shadow)(this, \"MAX_PATTERN_SIZE\", 3000);\n }\n }]);\n\n return TilingPattern;\n}();\n\nexports.TilingPattern = TilingPattern;\n\n/***/ }),\n/* 125 */\n/***/ ((__unused_webpack_module, exports) => {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.GlobalWorkerOptions = void 0;\nvar GlobalWorkerOptions = Object.create(null);\nexports.GlobalWorkerOptions = GlobalWorkerOptions;\nGlobalWorkerOptions.workerPort = GlobalWorkerOptions.workerPort === undefined ? null : GlobalWorkerOptions.workerPort;\nGlobalWorkerOptions.workerSrc = GlobalWorkerOptions.workerSrc === undefined ? \"\" : GlobalWorkerOptions.workerSrc;\n\n/***/ }),\n/* 126 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.MessageHandler = void 0;\n\nvar _regenerator = _interopRequireDefault(__w_pdfjs_require__(2));\n\nvar _util = __w_pdfjs_require__(4);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }\n\nfunction _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err); } _next(undefined); }); }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\nvar CallbackKind = {\n UNKNOWN: 0,\n DATA: 1,\n ERROR: 2\n};\nvar StreamKind = {\n UNKNOWN: 0,\n CANCEL: 1,\n CANCEL_COMPLETE: 2,\n CLOSE: 3,\n ENQUEUE: 4,\n ERROR: 5,\n PULL: 6,\n PULL_COMPLETE: 7,\n START_COMPLETE: 8\n};\n\nfunction wrapReason(reason) {\n if (!(reason instanceof Error || _typeof(reason) === \"object\" && reason !== null)) {\n (0, _util.warn)('wrapReason: Expected \"reason\" to be a (possibly cloned) Error.');\n return reason;\n }\n\n switch (reason.name) {\n case \"AbortException\":\n return new _util.AbortException(reason.message);\n\n case \"MissingPDFException\":\n return new _util.MissingPDFException(reason.message);\n\n case \"PasswordException\":\n return new _util.PasswordException(reason.message, reason.code);\n\n case \"UnexpectedResponseException\":\n return new _util.UnexpectedResponseException(reason.message, reason.status);\n\n case \"UnknownErrorException\":\n return new _util.UnknownErrorException(reason.message, reason.details);\n\n default:\n return new _util.UnknownErrorException(reason.message, reason.toString());\n }\n}\n\nvar MessageHandler = /*#__PURE__*/function () {\n function MessageHandler(sourceName, targetName, comObj) {\n var _this = this;\n\n _classCallCheck(this, MessageHandler);\n\n this.sourceName = sourceName;\n this.targetName = targetName;\n this.comObj = comObj;\n this.callbackId = 1;\n this.streamId = 1;\n this.postMessageTransfers = true;\n this.streamSinks = Object.create(null);\n this.streamControllers = Object.create(null);\n this.callbackCapabilities = Object.create(null);\n this.actionHandler = Object.create(null);\n\n this._onComObjOnMessage = function (event) {\n var data = event.data;\n\n if (data.targetName !== _this.sourceName) {\n return;\n }\n\n if (data.stream) {\n _this._processStreamMessage(data);\n\n return;\n }\n\n if (data.callback) {\n var callbackId = data.callbackId;\n var capability = _this.callbackCapabilities[callbackId];\n\n if (!capability) {\n throw new Error(\"Cannot resolve callback \".concat(callbackId));\n }\n\n delete _this.callbackCapabilities[callbackId];\n\n if (data.callback === CallbackKind.DATA) {\n capability.resolve(data.data);\n } else if (data.callback === CallbackKind.ERROR) {\n capability.reject(wrapReason(data.reason));\n } else {\n throw new Error(\"Unexpected callback case\");\n }\n\n return;\n }\n\n var action = _this.actionHandler[data.action];\n\n if (!action) {\n throw new Error(\"Unknown action from worker: \".concat(data.action));\n }\n\n if (data.callbackId) {\n var cbSourceName = _this.sourceName;\n var cbTargetName = data.sourceName;\n new Promise(function (resolve) {\n resolve(action(data.data));\n }).then(function (result) {\n comObj.postMessage({\n sourceName: cbSourceName,\n targetName: cbTargetName,\n callback: CallbackKind.DATA,\n callbackId: data.callbackId,\n data: result\n });\n }, function (reason) {\n comObj.postMessage({\n sourceName: cbSourceName,\n targetName: cbTargetName,\n callback: CallbackKind.ERROR,\n callbackId: data.callbackId,\n reason: wrapReason(reason)\n });\n });\n return;\n }\n\n if (data.streamId) {\n _this._createStreamSink(data);\n\n return;\n }\n\n action(data.data);\n };\n\n comObj.addEventListener(\"message\", this._onComObjOnMessage);\n }\n\n _createClass(MessageHandler, [{\n key: \"on\",\n value: function on(actionName, handler) {\n var ah = this.actionHandler;\n\n if (ah[actionName]) {\n throw new Error(\"There is already an actionName called \\\"\".concat(actionName, \"\\\"\"));\n }\n\n ah[actionName] = handler;\n }\n }, {\n key: \"send\",\n value: function send(actionName, data, transfers) {\n this._postMessage({\n sourceName: this.sourceName,\n targetName: this.targetName,\n action: actionName,\n data: data\n }, transfers);\n }\n }, {\n key: \"sendWithPromise\",\n value: function sendWithPromise(actionName, data, transfers) {\n var callbackId = this.callbackId++;\n var capability = (0, _util.createPromiseCapability)();\n this.callbackCapabilities[callbackId] = capability;\n\n try {\n this._postMessage({\n sourceName: this.sourceName,\n targetName: this.targetName,\n action: actionName,\n callbackId: callbackId,\n data: data\n }, transfers);\n } catch (ex) {\n capability.reject(ex);\n }\n\n return capability.promise;\n }\n }, {\n key: \"sendWithStream\",\n value: function sendWithStream(actionName, data, queueingStrategy, transfers) {\n var _this2 = this;\n\n var streamId = this.streamId++,\n sourceName = this.sourceName,\n targetName = this.targetName,\n comObj = this.comObj;\n return new ReadableStream({\n start: function start(controller) {\n var startCapability = (0, _util.createPromiseCapability)();\n _this2.streamControllers[streamId] = {\n controller: controller,\n startCall: startCapability,\n pullCall: null,\n cancelCall: null,\n isClosed: false\n };\n\n _this2._postMessage({\n sourceName: sourceName,\n targetName: targetName,\n action: actionName,\n streamId: streamId,\n data: data,\n desiredSize: controller.desiredSize\n }, transfers);\n\n return startCapability.promise;\n },\n pull: function pull(controller) {\n var pullCapability = (0, _util.createPromiseCapability)();\n _this2.streamControllers[streamId].pullCall = pullCapability;\n comObj.postMessage({\n sourceName: sourceName,\n targetName: targetName,\n stream: StreamKind.PULL,\n streamId: streamId,\n desiredSize: controller.desiredSize\n });\n return pullCapability.promise;\n },\n cancel: function cancel(reason) {\n (0, _util.assert)(reason instanceof Error, \"cancel must have a valid reason\");\n var cancelCapability = (0, _util.createPromiseCapability)();\n _this2.streamControllers[streamId].cancelCall = cancelCapability;\n _this2.streamControllers[streamId].isClosed = true;\n comObj.postMessage({\n sourceName: sourceName,\n targetName: targetName,\n stream: StreamKind.CANCEL,\n streamId: streamId,\n reason: wrapReason(reason)\n });\n return cancelCapability.promise;\n }\n }, queueingStrategy);\n }\n }, {\n key: \"_createStreamSink\",\n value: function _createStreamSink(data) {\n var streamId = data.streamId,\n sourceName = this.sourceName,\n targetName = data.sourceName,\n comObj = this.comObj;\n var self = this,\n action = this.actionHandler[data.action];\n var streamSink = {\n enqueue: function enqueue(chunk) {\n var size = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 1;\n var transfers = arguments.length > 2 ? arguments[2] : undefined;\n\n if (this.isCancelled) {\n return;\n }\n\n var lastDesiredSize = this.desiredSize;\n this.desiredSize -= size;\n\n if (lastDesiredSize > 0 && this.desiredSize <= 0) {\n this.sinkCapability = (0, _util.createPromiseCapability)();\n this.ready = this.sinkCapability.promise;\n }\n\n self._postMessage({\n sourceName: sourceName,\n targetName: targetName,\n stream: StreamKind.ENQUEUE,\n streamId: streamId,\n chunk: chunk\n }, transfers);\n },\n close: function close() {\n if (this.isCancelled) {\n return;\n }\n\n this.isCancelled = true;\n comObj.postMessage({\n sourceName: sourceName,\n targetName: targetName,\n stream: StreamKind.CLOSE,\n streamId: streamId\n });\n delete self.streamSinks[streamId];\n },\n error: function error(reason) {\n (0, _util.assert)(reason instanceof Error, \"error must have a valid reason\");\n\n if (this.isCancelled) {\n return;\n }\n\n this.isCancelled = true;\n comObj.postMessage({\n sourceName: sourceName,\n targetName: targetName,\n stream: StreamKind.ERROR,\n streamId: streamId,\n reason: wrapReason(reason)\n });\n },\n sinkCapability: (0, _util.createPromiseCapability)(),\n onPull: null,\n onCancel: null,\n isCancelled: false,\n desiredSize: data.desiredSize,\n ready: null\n };\n streamSink.sinkCapability.resolve();\n streamSink.ready = streamSink.sinkCapability.promise;\n this.streamSinks[streamId] = streamSink;\n new Promise(function (resolve) {\n resolve(action(data.data, streamSink));\n }).then(function () {\n comObj.postMessage({\n sourceName: sourceName,\n targetName: targetName,\n stream: StreamKind.START_COMPLETE,\n streamId: streamId,\n success: true\n });\n }, function (reason) {\n comObj.postMessage({\n sourceName: sourceName,\n targetName: targetName,\n stream: StreamKind.START_COMPLETE,\n streamId: streamId,\n reason: wrapReason(reason)\n });\n });\n }\n }, {\n key: \"_processStreamMessage\",\n value: function _processStreamMessage(data) {\n var streamId = data.streamId,\n sourceName = this.sourceName,\n targetName = data.sourceName,\n comObj = this.comObj;\n var streamController = this.streamControllers[streamId],\n streamSink = this.streamSinks[streamId];\n\n switch (data.stream) {\n case StreamKind.START_COMPLETE:\n if (data.success) {\n streamController.startCall.resolve();\n } else {\n streamController.startCall.reject(wrapReason(data.reason));\n }\n\n break;\n\n case StreamKind.PULL_COMPLETE:\n if (data.success) {\n streamController.pullCall.resolve();\n } else {\n streamController.pullCall.reject(wrapReason(data.reason));\n }\n\n break;\n\n case StreamKind.PULL:\n if (!streamSink) {\n comObj.postMessage({\n sourceName: sourceName,\n targetName: targetName,\n stream: StreamKind.PULL_COMPLETE,\n streamId: streamId,\n success: true\n });\n break;\n }\n\n if (streamSink.desiredSize <= 0 && data.desiredSize > 0) {\n streamSink.sinkCapability.resolve();\n }\n\n streamSink.desiredSize = data.desiredSize;\n new Promise(function (resolve) {\n resolve(streamSink.onPull && streamSink.onPull());\n }).then(function () {\n comObj.postMessage({\n sourceName: sourceName,\n targetName: targetName,\n stream: StreamKind.PULL_COMPLETE,\n streamId: streamId,\n success: true\n });\n }, function (reason) {\n comObj.postMessage({\n sourceName: sourceName,\n targetName: targetName,\n stream: StreamKind.PULL_COMPLETE,\n streamId: streamId,\n reason: wrapReason(reason)\n });\n });\n break;\n\n case StreamKind.ENQUEUE:\n (0, _util.assert)(streamController, \"enqueue should have stream controller\");\n\n if (streamController.isClosed) {\n break;\n }\n\n streamController.controller.enqueue(data.chunk);\n break;\n\n case StreamKind.CLOSE:\n (0, _util.assert)(streamController, \"close should have stream controller\");\n\n if (streamController.isClosed) {\n break;\n }\n\n streamController.isClosed = true;\n streamController.controller.close();\n\n this._deleteStreamController(streamController, streamId);\n\n break;\n\n case StreamKind.ERROR:\n (0, _util.assert)(streamController, \"error should have stream controller\");\n streamController.controller.error(wrapReason(data.reason));\n\n this._deleteStreamController(streamController, streamId);\n\n break;\n\n case StreamKind.CANCEL_COMPLETE:\n if (data.success) {\n streamController.cancelCall.resolve();\n } else {\n streamController.cancelCall.reject(wrapReason(data.reason));\n }\n\n this._deleteStreamController(streamController, streamId);\n\n break;\n\n case StreamKind.CANCEL:\n if (!streamSink) {\n break;\n }\n\n new Promise(function (resolve) {\n resolve(streamSink.onCancel && streamSink.onCancel(wrapReason(data.reason)));\n }).then(function () {\n comObj.postMessage({\n sourceName: sourceName,\n targetName: targetName,\n stream: StreamKind.CANCEL_COMPLETE,\n streamId: streamId,\n success: true\n });\n }, function (reason) {\n comObj.postMessage({\n sourceName: sourceName,\n targetName: targetName,\n stream: StreamKind.CANCEL_COMPLETE,\n streamId: streamId,\n reason: wrapReason(reason)\n });\n });\n streamSink.sinkCapability.reject(wrapReason(data.reason));\n streamSink.isCancelled = true;\n delete this.streamSinks[streamId];\n break;\n\n default:\n throw new Error(\"Unexpected stream case\");\n }\n }\n }, {\n key: \"_deleteStreamController\",\n value: function () {\n var _deleteStreamController2 = _asyncToGenerator( /*#__PURE__*/_regenerator[\"default\"].mark(function _callee(streamController, streamId) {\n return _regenerator[\"default\"].wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n _context.next = 2;\n return Promise.allSettled([streamController.startCall && streamController.startCall.promise, streamController.pullCall && streamController.pullCall.promise, streamController.cancelCall && streamController.cancelCall.promise]);\n\n case 2:\n delete this.streamControllers[streamId];\n\n case 3:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee, this);\n }));\n\n function _deleteStreamController(_x, _x2) {\n return _deleteStreamController2.apply(this, arguments);\n }\n\n return _deleteStreamController;\n }()\n }, {\n key: \"_postMessage\",\n value: function _postMessage(message, transfers) {\n if (transfers && this.postMessageTransfers) {\n this.comObj.postMessage(message, transfers);\n } else {\n this.comObj.postMessage(message);\n }\n }\n }, {\n key: \"destroy\",\n value: function destroy() {\n this.comObj.removeEventListener(\"message\", this._onComObjOnMessage);\n }\n }]);\n\n return MessageHandler;\n}();\n\nexports.MessageHandler = MessageHandler;\n\n/***/ }),\n/* 127 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.Metadata = void 0;\n\nvar _util = __w_pdfjs_require__(4);\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nvar Metadata = /*#__PURE__*/function () {\n function Metadata(_ref) {\n var parsedData = _ref.parsedData,\n rawData = _ref.rawData;\n\n _classCallCheck(this, Metadata);\n\n this._metadataMap = parsedData;\n this._data = rawData;\n }\n\n _createClass(Metadata, [{\n key: \"getRaw\",\n value: function getRaw() {\n return this._data;\n }\n }, {\n key: \"get\",\n value: function get(name) {\n var _this$_metadataMap$ge;\n\n return (_this$_metadataMap$ge = this._metadataMap.get(name)) !== null && _this$_metadataMap$ge !== void 0 ? _this$_metadataMap$ge : null;\n }\n }, {\n key: \"getAll\",\n value: function getAll() {\n return (0, _util.objectFromMap)(this._metadataMap);\n }\n }, {\n key: \"has\",\n value: function has(name) {\n return this._metadataMap.has(name);\n }\n }]);\n\n return Metadata;\n}();\n\nexports.Metadata = Metadata;\n\n/***/ }),\n/* 128 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.OptionalContentConfig = void 0;\n\nvar _util = __w_pdfjs_require__(4);\n\nfunction _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it[\"return\"] != null) it[\"return\"](); } finally { if (didErr) throw err; } } }; }\n\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nvar OptionalContentGroup = function OptionalContentGroup(name, intent) {\n _classCallCheck(this, OptionalContentGroup);\n\n this.visible = true;\n this.name = name;\n this.intent = intent;\n};\n\nvar OptionalContentConfig = /*#__PURE__*/function () {\n function OptionalContentConfig(data) {\n _classCallCheck(this, OptionalContentConfig);\n\n this.name = null;\n this.creator = null;\n this._order = null;\n this._groups = new Map();\n\n if (data === null) {\n return;\n }\n\n this.name = data.name;\n this.creator = data.creator;\n this._order = data.order;\n\n var _iterator = _createForOfIteratorHelper(data.groups),\n _step;\n\n try {\n for (_iterator.s(); !(_step = _iterator.n()).done;) {\n var _group = _step.value;\n\n this._groups.set(_group.id, new OptionalContentGroup(_group.name, _group.intent));\n }\n } catch (err) {\n _iterator.e(err);\n } finally {\n _iterator.f();\n }\n\n if (data.baseState === \"OFF\") {\n var _iterator2 = _createForOfIteratorHelper(this._groups),\n _step2;\n\n try {\n for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {\n var group = _step2.value;\n group.visible = false;\n }\n } catch (err) {\n _iterator2.e(err);\n } finally {\n _iterator2.f();\n }\n }\n\n var _iterator3 = _createForOfIteratorHelper(data.on),\n _step3;\n\n try {\n for (_iterator3.s(); !(_step3 = _iterator3.n()).done;) {\n var on = _step3.value;\n this._groups.get(on).visible = true;\n }\n } catch (err) {\n _iterator3.e(err);\n } finally {\n _iterator3.f();\n }\n\n var _iterator4 = _createForOfIteratorHelper(data.off),\n _step4;\n\n try {\n for (_iterator4.s(); !(_step4 = _iterator4.n()).done;) {\n var off = _step4.value;\n this._groups.get(off).visible = false;\n }\n } catch (err) {\n _iterator4.e(err);\n } finally {\n _iterator4.f();\n }\n }\n\n _createClass(OptionalContentConfig, [{\n key: \"_evaluateVisibilityExpression\",\n value: function _evaluateVisibilityExpression(array) {\n var length = array.length;\n\n if (length < 2) {\n return true;\n }\n\n var operator = array[0];\n\n for (var i = 1; i < length; i++) {\n var element = array[i];\n var state = void 0;\n\n if (Array.isArray(element)) {\n state = this._evaluateVisibilityExpression(element);\n } else if (this._groups.has(element)) {\n state = this._groups.get(element).visible;\n } else {\n (0, _util.warn)(\"Optional content group not found: \".concat(element));\n return true;\n }\n\n switch (operator) {\n case \"And\":\n if (!state) {\n return false;\n }\n\n break;\n\n case \"Or\":\n if (state) {\n return true;\n }\n\n break;\n\n case \"Not\":\n return !state;\n\n default:\n return true;\n }\n }\n\n return operator === \"And\";\n }\n }, {\n key: \"isVisible\",\n value: function isVisible(group) {\n if (this._groups.size === 0) {\n return true;\n }\n\n if (!group) {\n (0, _util.warn)(\"Optional content group not defined.\");\n return true;\n }\n\n if (group.type === \"OCG\") {\n if (!this._groups.has(group.id)) {\n (0, _util.warn)(\"Optional content group not found: \".concat(group.id));\n return true;\n }\n\n return this._groups.get(group.id).visible;\n } else if (group.type === \"OCMD\") {\n if (group.expression) {\n return this._evaluateVisibilityExpression(group.expression);\n }\n\n if (!group.policy || group.policy === \"AnyOn\") {\n var _iterator5 = _createForOfIteratorHelper(group.ids),\n _step5;\n\n try {\n for (_iterator5.s(); !(_step5 = _iterator5.n()).done;) {\n var id = _step5.value;\n\n if (!this._groups.has(id)) {\n (0, _util.warn)(\"Optional content group not found: \".concat(id));\n return true;\n }\n\n if (this._groups.get(id).visible) {\n return true;\n }\n }\n } catch (err) {\n _iterator5.e(err);\n } finally {\n _iterator5.f();\n }\n\n return false;\n } else if (group.policy === \"AllOn\") {\n var _iterator6 = _createForOfIteratorHelper(group.ids),\n _step6;\n\n try {\n for (_iterator6.s(); !(_step6 = _iterator6.n()).done;) {\n var _id = _step6.value;\n\n if (!this._groups.has(_id)) {\n (0, _util.warn)(\"Optional content group not found: \".concat(_id));\n return true;\n }\n\n if (!this._groups.get(_id).visible) {\n return false;\n }\n }\n } catch (err) {\n _iterator6.e(err);\n } finally {\n _iterator6.f();\n }\n\n return true;\n } else if (group.policy === \"AnyOff\") {\n var _iterator7 = _createForOfIteratorHelper(group.ids),\n _step7;\n\n try {\n for (_iterator7.s(); !(_step7 = _iterator7.n()).done;) {\n var _id2 = _step7.value;\n\n if (!this._groups.has(_id2)) {\n (0, _util.warn)(\"Optional content group not found: \".concat(_id2));\n return true;\n }\n\n if (!this._groups.get(_id2).visible) {\n return true;\n }\n }\n } catch (err) {\n _iterator7.e(err);\n } finally {\n _iterator7.f();\n }\n\n return false;\n } else if (group.policy === \"AllOff\") {\n var _iterator8 = _createForOfIteratorHelper(group.ids),\n _step8;\n\n try {\n for (_iterator8.s(); !(_step8 = _iterator8.n()).done;) {\n var _id3 = _step8.value;\n\n if (!this._groups.has(_id3)) {\n (0, _util.warn)(\"Optional content group not found: \".concat(_id3));\n return true;\n }\n\n if (this._groups.get(_id3).visible) {\n return false;\n }\n }\n } catch (err) {\n _iterator8.e(err);\n } finally {\n _iterator8.f();\n }\n\n return true;\n }\n\n (0, _util.warn)(\"Unknown optional content policy \".concat(group.policy, \".\"));\n return true;\n }\n\n (0, _util.warn)(\"Unknown group type \".concat(group.type, \".\"));\n return true;\n }\n }, {\n key: \"setVisibility\",\n value: function setVisibility(id) {\n var visible = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;\n\n if (!this._groups.has(id)) {\n (0, _util.warn)(\"Optional content group not found: \".concat(id));\n return;\n }\n\n this._groups.get(id).visible = !!visible;\n }\n }, {\n key: \"getOrder\",\n value: function getOrder() {\n if (!this._groups.size) {\n return null;\n }\n\n if (this._order) {\n return this._order.slice();\n }\n\n return Array.from(this._groups.keys());\n }\n }, {\n key: \"getGroups\",\n value: function getGroups() {\n return this._groups.size > 0 ? (0, _util.objectFromMap)(this._groups) : null;\n }\n }, {\n key: \"getGroup\",\n value: function getGroup(id) {\n return this._groups.get(id) || null;\n }\n }]);\n\n return OptionalContentConfig;\n}();\n\nexports.OptionalContentConfig = OptionalContentConfig;\n\n/***/ }),\n/* 129 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.PDFDataTransportStream = void 0;\n\nvar _regenerator = _interopRequireDefault(__w_pdfjs_require__(2));\n\nvar _util = __w_pdfjs_require__(4);\n\nvar _display_utils = __w_pdfjs_require__(1);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }\n\nfunction _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err); } _next(undefined); }); }; }\n\nfunction _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it[\"return\"] != null) it[\"return\"](); } finally { if (didErr) throw err; } } }; }\n\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nvar PDFDataTransportStream = /*#__PURE__*/function () {\n function PDFDataTransportStream(params, pdfDataRangeTransport) {\n var _this = this;\n\n _classCallCheck(this, PDFDataTransportStream);\n\n (0, _util.assert)(pdfDataRangeTransport, 'PDFDataTransportStream - missing required \"pdfDataRangeTransport\" argument.');\n this._queuedChunks = [];\n this._progressiveDone = params.progressiveDone || false;\n this._contentDispositionFilename = params.contentDispositionFilename || null;\n var initialData = params.initialData;\n\n if ((initialData === null || initialData === void 0 ? void 0 : initialData.length) > 0) {\n var buffer = new Uint8Array(initialData).buffer;\n\n this._queuedChunks.push(buffer);\n }\n\n this._pdfDataRangeTransport = pdfDataRangeTransport;\n this._isStreamingSupported = !params.disableStream;\n this._isRangeSupported = !params.disableRange;\n this._contentLength = params.length;\n this._fullRequestReader = null;\n this._rangeReaders = [];\n\n this._pdfDataRangeTransport.addRangeListener(function (begin, chunk) {\n _this._onReceiveData({\n begin: begin,\n chunk: chunk\n });\n });\n\n this._pdfDataRangeTransport.addProgressListener(function (loaded, total) {\n _this._onProgress({\n loaded: loaded,\n total: total\n });\n });\n\n this._pdfDataRangeTransport.addProgressiveReadListener(function (chunk) {\n _this._onReceiveData({\n chunk: chunk\n });\n });\n\n this._pdfDataRangeTransport.addProgressiveDoneListener(function () {\n _this._onProgressiveDone();\n });\n\n this._pdfDataRangeTransport.transportReady();\n }\n\n _createClass(PDFDataTransportStream, [{\n key: \"_onReceiveData\",\n value: function _onReceiveData(args) {\n var buffer = new Uint8Array(args.chunk).buffer;\n\n if (args.begin === undefined) {\n if (this._fullRequestReader) {\n this._fullRequestReader._enqueue(buffer);\n } else {\n this._queuedChunks.push(buffer);\n }\n } else {\n var found = this._rangeReaders.some(function (rangeReader) {\n if (rangeReader._begin !== args.begin) {\n return false;\n }\n\n rangeReader._enqueue(buffer);\n\n return true;\n });\n\n (0, _util.assert)(found, \"_onReceiveData - no `PDFDataTransportStreamRangeReader` instance found.\");\n }\n }\n }, {\n key: \"_progressiveDataLength\",\n get: function get() {\n var _this$_fullRequestRea, _this$_fullRequestRea2;\n\n return (_this$_fullRequestRea = (_this$_fullRequestRea2 = this._fullRequestReader) === null || _this$_fullRequestRea2 === void 0 ? void 0 : _this$_fullRequestRea2._loaded) !== null && _this$_fullRequestRea !== void 0 ? _this$_fullRequestRea : 0;\n }\n }, {\n key: \"_onProgress\",\n value: function _onProgress(evt) {\n if (evt.total === undefined) {\n var firstReader = this._rangeReaders[0];\n\n if (firstReader !== null && firstReader !== void 0 && firstReader.onProgress) {\n firstReader.onProgress({\n loaded: evt.loaded\n });\n }\n } else {\n var fullReader = this._fullRequestReader;\n\n if (fullReader !== null && fullReader !== void 0 && fullReader.onProgress) {\n fullReader.onProgress({\n loaded: evt.loaded,\n total: evt.total\n });\n }\n }\n }\n }, {\n key: \"_onProgressiveDone\",\n value: function _onProgressiveDone() {\n if (this._fullRequestReader) {\n this._fullRequestReader.progressiveDone();\n }\n\n this._progressiveDone = true;\n }\n }, {\n key: \"_removeRangeReader\",\n value: function _removeRangeReader(reader) {\n var i = this._rangeReaders.indexOf(reader);\n\n if (i >= 0) {\n this._rangeReaders.splice(i, 1);\n }\n }\n }, {\n key: \"getFullReader\",\n value: function getFullReader() {\n (0, _util.assert)(!this._fullRequestReader, \"PDFDataTransportStream.getFullReader can only be called once.\");\n var queuedChunks = this._queuedChunks;\n this._queuedChunks = null;\n return new PDFDataTransportStreamReader(this, queuedChunks, this._progressiveDone, this._contentDispositionFilename);\n }\n }, {\n key: \"getRangeReader\",\n value: function getRangeReader(begin, end) {\n if (end <= this._progressiveDataLength) {\n return null;\n }\n\n var reader = new PDFDataTransportStreamRangeReader(this, begin, end);\n\n this._pdfDataRangeTransport.requestDataRange(begin, end);\n\n this._rangeReaders.push(reader);\n\n return reader;\n }\n }, {\n key: \"cancelAllRequests\",\n value: function cancelAllRequests(reason) {\n if (this._fullRequestReader) {\n this._fullRequestReader.cancel(reason);\n }\n\n var _iterator = _createForOfIteratorHelper(this._rangeReaders.slice(0)),\n _step;\n\n try {\n for (_iterator.s(); !(_step = _iterator.n()).done;) {\n var reader = _step.value;\n reader.cancel(reason);\n }\n } catch (err) {\n _iterator.e(err);\n } finally {\n _iterator.f();\n }\n\n this._pdfDataRangeTransport.abort();\n }\n }]);\n\n return PDFDataTransportStream;\n}();\n\nexports.PDFDataTransportStream = PDFDataTransportStream;\n\nvar PDFDataTransportStreamReader = /*#__PURE__*/function () {\n function PDFDataTransportStreamReader(stream, queuedChunks) {\n var progressiveDone = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n var contentDispositionFilename = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : null;\n\n _classCallCheck(this, PDFDataTransportStreamReader);\n\n this._stream = stream;\n this._done = progressiveDone || false;\n this._filename = (0, _display_utils.isPdfFile)(contentDispositionFilename) ? contentDispositionFilename : null;\n this._queuedChunks = queuedChunks || [];\n this._loaded = 0;\n\n var _iterator2 = _createForOfIteratorHelper(this._queuedChunks),\n _step2;\n\n try {\n for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {\n var chunk = _step2.value;\n this._loaded += chunk.byteLength;\n }\n } catch (err) {\n _iterator2.e(err);\n } finally {\n _iterator2.f();\n }\n\n this._requests = [];\n this._headersReady = Promise.resolve();\n stream._fullRequestReader = this;\n this.onProgress = null;\n }\n\n _createClass(PDFDataTransportStreamReader, [{\n key: \"_enqueue\",\n value: function _enqueue(chunk) {\n if (this._done) {\n return;\n }\n\n if (this._requests.length > 0) {\n var requestCapability = this._requests.shift();\n\n requestCapability.resolve({\n value: chunk,\n done: false\n });\n } else {\n this._queuedChunks.push(chunk);\n }\n\n this._loaded += chunk.byteLength;\n }\n }, {\n key: \"headersReady\",\n get: function get() {\n return this._headersReady;\n }\n }, {\n key: \"filename\",\n get: function get() {\n return this._filename;\n }\n }, {\n key: \"isRangeSupported\",\n get: function get() {\n return this._stream._isRangeSupported;\n }\n }, {\n key: \"isStreamingSupported\",\n get: function get() {\n return this._stream._isStreamingSupported;\n }\n }, {\n key: \"contentLength\",\n get: function get() {\n return this._stream._contentLength;\n }\n }, {\n key: \"read\",\n value: function () {\n var _read = _asyncToGenerator( /*#__PURE__*/_regenerator[\"default\"].mark(function _callee() {\n var chunk, requestCapability;\n return _regenerator[\"default\"].wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n if (!(this._queuedChunks.length > 0)) {\n _context.next = 3;\n break;\n }\n\n chunk = this._queuedChunks.shift();\n return _context.abrupt(\"return\", {\n value: chunk,\n done: false\n });\n\n case 3:\n if (!this._done) {\n _context.next = 5;\n break;\n }\n\n return _context.abrupt(\"return\", {\n value: undefined,\n done: true\n });\n\n case 5:\n requestCapability = (0, _util.createPromiseCapability)();\n\n this._requests.push(requestCapability);\n\n return _context.abrupt(\"return\", requestCapability.promise);\n\n case 8:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee, this);\n }));\n\n function read() {\n return _read.apply(this, arguments);\n }\n\n return read;\n }()\n }, {\n key: \"cancel\",\n value: function cancel(reason) {\n this._done = true;\n\n var _iterator3 = _createForOfIteratorHelper(this._requests),\n _step3;\n\n try {\n for (_iterator3.s(); !(_step3 = _iterator3.n()).done;) {\n var requestCapability = _step3.value;\n requestCapability.resolve({\n value: undefined,\n done: true\n });\n }\n } catch (err) {\n _iterator3.e(err);\n } finally {\n _iterator3.f();\n }\n\n this._requests.length = 0;\n }\n }, {\n key: \"progressiveDone\",\n value: function progressiveDone() {\n if (this._done) {\n return;\n }\n\n this._done = true;\n }\n }]);\n\n return PDFDataTransportStreamReader;\n}();\n\nvar PDFDataTransportStreamRangeReader = /*#__PURE__*/function () {\n function PDFDataTransportStreamRangeReader(stream, begin, end) {\n _classCallCheck(this, PDFDataTransportStreamRangeReader);\n\n this._stream = stream;\n this._begin = begin;\n this._end = end;\n this._queuedChunk = null;\n this._requests = [];\n this._done = false;\n this.onProgress = null;\n }\n\n _createClass(PDFDataTransportStreamRangeReader, [{\n key: \"_enqueue\",\n value: function _enqueue(chunk) {\n if (this._done) {\n return;\n }\n\n if (this._requests.length === 0) {\n this._queuedChunk = chunk;\n } else {\n var requestsCapability = this._requests.shift();\n\n requestsCapability.resolve({\n value: chunk,\n done: false\n });\n\n var _iterator4 = _createForOfIteratorHelper(this._requests),\n _step4;\n\n try {\n for (_iterator4.s(); !(_step4 = _iterator4.n()).done;) {\n var requestCapability = _step4.value;\n requestCapability.resolve({\n value: undefined,\n done: true\n });\n }\n } catch (err) {\n _iterator4.e(err);\n } finally {\n _iterator4.f();\n }\n\n this._requests.length = 0;\n }\n\n this._done = true;\n\n this._stream._removeRangeReader(this);\n }\n }, {\n key: \"isStreamingSupported\",\n get: function get() {\n return false;\n }\n }, {\n key: \"read\",\n value: function () {\n var _read2 = _asyncToGenerator( /*#__PURE__*/_regenerator[\"default\"].mark(function _callee2() {\n var chunk, requestCapability;\n return _regenerator[\"default\"].wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n if (!this._queuedChunk) {\n _context2.next = 4;\n break;\n }\n\n chunk = this._queuedChunk;\n this._queuedChunk = null;\n return _context2.abrupt(\"return\", {\n value: chunk,\n done: false\n });\n\n case 4:\n if (!this._done) {\n _context2.next = 6;\n break;\n }\n\n return _context2.abrupt(\"return\", {\n value: undefined,\n done: true\n });\n\n case 6:\n requestCapability = (0, _util.createPromiseCapability)();\n\n this._requests.push(requestCapability);\n\n return _context2.abrupt(\"return\", requestCapability.promise);\n\n case 9:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2, this);\n }));\n\n function read() {\n return _read2.apply(this, arguments);\n }\n\n return read;\n }()\n }, {\n key: \"cancel\",\n value: function cancel(reason) {\n this._done = true;\n\n var _iterator5 = _createForOfIteratorHelper(this._requests),\n _step5;\n\n try {\n for (_iterator5.s(); !(_step5 = _iterator5.n()).done;) {\n var requestCapability = _step5.value;\n requestCapability.resolve({\n value: undefined,\n done: true\n });\n }\n } catch (err) {\n _iterator5.e(err);\n } finally {\n _iterator5.f();\n }\n\n this._requests.length = 0;\n\n this._stream._removeRangeReader(this);\n }\n }]);\n\n return PDFDataTransportStreamRangeReader;\n}();\n\n/***/ }),\n/* 130 */\n/***/ ((__unused_webpack_module, exports) => {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.XfaText = void 0;\n\nfunction _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it[\"return\"] != null) it[\"return\"](); } finally { if (didErr) throw err; } } }; }\n\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nvar XfaText = /*#__PURE__*/function () {\n function XfaText() {\n _classCallCheck(this, XfaText);\n }\n\n _createClass(XfaText, null, [{\n key: \"textContent\",\n value: function textContent(xfa) {\n var items = [];\n var output = {\n items: items,\n styles: Object.create(null)\n };\n\n function walk(node) {\n var _node$attributes;\n\n if (!node) {\n return;\n }\n\n var str = null;\n var name = node.name;\n\n if (name === \"#text\") {\n str = node.value;\n } else if (!XfaText.shouldBuildText(name)) {\n return;\n } else if (node !== null && node !== void 0 && (_node$attributes = node.attributes) !== null && _node$attributes !== void 0 && _node$attributes.textContent) {\n str = node.attributes.textContent;\n } else if (node.value) {\n str = node.value;\n }\n\n if (str !== null) {\n items.push({\n str: str\n });\n }\n\n if (!node.children) {\n return;\n }\n\n var _iterator = _createForOfIteratorHelper(node.children),\n _step;\n\n try {\n for (_iterator.s(); !(_step = _iterator.n()).done;) {\n var child = _step.value;\n walk(child);\n }\n } catch (err) {\n _iterator.e(err);\n } finally {\n _iterator.f();\n }\n }\n\n walk(xfa);\n return output;\n }\n }, {\n key: \"shouldBuildText\",\n value: function shouldBuildText(name) {\n return !(name === \"textarea\" || name === \"input\" || name === \"option\" || name === \"select\");\n }\n }]);\n\n return XfaText;\n}();\n\nexports.XfaText = XfaText;\n\n/***/ }),\n/* 131 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\"use strict\";\n\n\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.AnnotationLayer = void 0;\n\nvar _util = __w_pdfjs_require__(4);\n\nvar _display_utils = __w_pdfjs_require__(1);\n\nvar _annotation_storage = __w_pdfjs_require__(122);\n\nvar _scripting_utils = __w_pdfjs_require__(132);\n\nfunction _get(target, property, receiver) { if (typeof Reflect !== \"undefined\" && Reflect.get) { _get = Reflect.get; } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(receiver); } return desc.value; }; } return _get(target, property, receiver || target); }\n\nfunction _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nfunction _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }\n\nfunction _nonIterableRest() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\nfunction _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== \"undefined\" && arr[Symbol.iterator] || arr[\"@@iterator\"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"] != null) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; }\n\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\n\nfunction _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }\n\nfunction _nonIterableSpread() { throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\nfunction _iterableToArray(iter) { if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter); }\n\nfunction _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } else if (call !== void 0) { throw new TypeError(\"Derived constructors may only return object or undefined\"); } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\nfunction _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e2) { throw _e2; }, f: F }; } throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e3) { didErr = true; err = _e3; }, f: function f() { try { if (!normalCompletion && it[\"return\"] != null) it[\"return\"](); } finally { if (didErr) throw err; } } }; }\n\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nvar DEFAULT_TAB_INDEX = 1000;\nvar GetElementsByNameSet = new WeakSet();\n\nvar AnnotationElementFactory = /*#__PURE__*/function () {\n function AnnotationElementFactory() {\n _classCallCheck(this, AnnotationElementFactory);\n }\n\n _createClass(AnnotationElementFactory, null, [{\n key: \"create\",\n value: function create(parameters) {\n var subtype = parameters.data.annotationType;\n\n switch (subtype) {\n case _util.AnnotationType.LINK:\n return new LinkAnnotationElement(parameters);\n\n case _util.AnnotationType.TEXT:\n return new TextAnnotationElement(parameters);\n\n case _util.AnnotationType.WIDGET:\n var fieldType = parameters.data.fieldType;\n\n switch (fieldType) {\n case \"Tx\":\n return new TextWidgetAnnotationElement(parameters);\n\n case \"Btn\":\n if (parameters.data.radioButton) {\n return new RadioButtonWidgetAnnotationElement(parameters);\n } else if (parameters.data.checkBox) {\n return new CheckboxWidgetAnnotationElement(parameters);\n }\n\n return new PushButtonWidgetAnnotationElement(parameters);\n\n case \"Ch\":\n return new ChoiceWidgetAnnotationElement(parameters);\n }\n\n return new WidgetAnnotationElement(parameters);\n\n case _util.AnnotationType.POPUP:\n return new PopupAnnotationElement(parameters);\n\n case _util.AnnotationType.FREETEXT:\n return new FreeTextAnnotationElement(parameters);\n\n case _util.AnnotationType.LINE:\n return new LineAnnotationElement(parameters);\n\n case _util.AnnotationType.SQUARE:\n return new SquareAnnotationElement(parameters);\n\n case _util.AnnotationType.CIRCLE:\n return new CircleAnnotationElement(parameters);\n\n case _util.AnnotationType.POLYLINE:\n return new PolylineAnnotationElement(parameters);\n\n case _util.AnnotationType.CARET:\n return new CaretAnnotationElement(parameters);\n\n case _util.AnnotationType.INK:\n return new InkAnnotationElement(parameters);\n\n case _util.AnnotationType.POLYGON:\n return new PolygonAnnotationElement(parameters);\n\n case _util.AnnotationType.HIGHLIGHT:\n return new HighlightAnnotationElement(parameters);\n\n case _util.AnnotationType.UNDERLINE:\n return new UnderlineAnnotationElement(parameters);\n\n case _util.AnnotationType.SQUIGGLY:\n return new SquigglyAnnotationElement(parameters);\n\n case _util.AnnotationType.STRIKEOUT:\n return new StrikeOutAnnotationElement(parameters);\n\n case _util.AnnotationType.STAMP:\n return new StampAnnotationElement(parameters);\n\n case _util.AnnotationType.FILEATTACHMENT:\n return new FileAttachmentAnnotationElement(parameters);\n\n default:\n return new AnnotationElement(parameters);\n }\n }\n }]);\n\n return AnnotationElementFactory;\n}();\n\nvar AnnotationElement = /*#__PURE__*/function () {\n function AnnotationElement(parameters) {\n var _ref = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},\n _ref$isRenderable = _ref.isRenderable,\n isRenderable = _ref$isRenderable === void 0 ? false : _ref$isRenderable,\n _ref$ignoreBorder = _ref.ignoreBorder,\n ignoreBorder = _ref$ignoreBorder === void 0 ? false : _ref$ignoreBorder,\n _ref$createQuadrilate = _ref.createQuadrilaterals,\n createQuadrilaterals = _ref$createQuadrilate === void 0 ? false : _ref$createQuadrilate;\n\n _classCallCheck(this, AnnotationElement);\n\n this.isRenderable = isRenderable;\n this.data = parameters.data;\n this.layer = parameters.layer;\n this.page = parameters.page;\n this.viewport = parameters.viewport;\n this.linkService = parameters.linkService;\n this.downloadManager = parameters.downloadManager;\n this.imageResourcesPath = parameters.imageResourcesPath;\n this.renderForms = parameters.renderForms;\n this.svgFactory = parameters.svgFactory;\n this.annotationStorage = parameters.annotationStorage;\n this.enableScripting = parameters.enableScripting;\n this.hasJSActions = parameters.hasJSActions;\n this._fieldObjects = parameters.fieldObjects;\n this._mouseState = parameters.mouseState;\n\n if (isRenderable) {\n this.container = this._createContainer(ignoreBorder);\n }\n\n if (createQuadrilaterals) {\n this.quadrilaterals = this._createQuadrilaterals(ignoreBorder);\n }\n }\n\n _createClass(AnnotationElement, [{\n key: \"_createContainer\",\n value: function _createContainer() {\n var ignoreBorder = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;\n var data = this.data,\n page = this.page,\n viewport = this.viewport;\n var container = document.createElement(\"section\");\n var width = data.rect[2] - data.rect[0];\n var height = data.rect[3] - data.rect[1];\n container.setAttribute(\"data-annotation-id\", data.id);\n\n var rect = _util.Util.normalizeRect([data.rect[0], page.view[3] - data.rect[1] + page.view[1], data.rect[2], page.view[3] - data.rect[3] + page.view[1]]);\n\n container.style.transform = \"matrix(\".concat(viewport.transform.join(\",\"), \")\");\n container.style.transformOrigin = \"\".concat(-rect[0], \"px \").concat(-rect[1], \"px\");\n\n if (!ignoreBorder && data.borderStyle.width > 0) {\n container.style.borderWidth = \"\".concat(data.borderStyle.width, \"px\");\n\n if (data.borderStyle.style !== _util.AnnotationBorderStyleType.UNDERLINE) {\n width -= 2 * data.borderStyle.width;\n height -= 2 * data.borderStyle.width;\n }\n\n var horizontalRadius = data.borderStyle.horizontalCornerRadius;\n var verticalRadius = data.borderStyle.verticalCornerRadius;\n\n if (horizontalRadius > 0 || verticalRadius > 0) {\n var radius = \"\".concat(horizontalRadius, \"px / \").concat(verticalRadius, \"px\");\n container.style.borderRadius = radius;\n }\n\n switch (data.borderStyle.style) {\n case _util.AnnotationBorderStyleType.SOLID:\n container.style.borderStyle = \"solid\";\n break;\n\n case _util.AnnotationBorderStyleType.DASHED:\n container.style.borderStyle = \"dashed\";\n break;\n\n case _util.AnnotationBorderStyleType.BEVELED:\n (0, _util.warn)(\"Unimplemented border style: beveled\");\n break;\n\n case _util.AnnotationBorderStyleType.INSET:\n (0, _util.warn)(\"Unimplemented border style: inset\");\n break;\n\n case _util.AnnotationBorderStyleType.UNDERLINE:\n container.style.borderBottomStyle = \"solid\";\n break;\n\n default:\n break;\n }\n\n var borderColor = data.borderColor || data.color || null;\n\n if (borderColor) {\n container.style.borderColor = _util.Util.makeHexColor(data.color[0] | 0, data.color[1] | 0, data.color[2] | 0);\n } else {\n container.style.borderWidth = 0;\n }\n }\n\n container.style.left = \"\".concat(rect[0], \"px\");\n container.style.top = \"\".concat(rect[1], \"px\");\n container.style.width = \"\".concat(width, \"px\");\n container.style.height = \"\".concat(height, \"px\");\n return container;\n }\n }, {\n key: \"_createQuadrilaterals\",\n value: function _createQuadrilaterals() {\n var ignoreBorder = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;\n\n if (!this.data.quadPoints) {\n return null;\n }\n\n var quadrilaterals = [];\n var savedRect = this.data.rect;\n\n var _iterator = _createForOfIteratorHelper(this.data.quadPoints),\n _step;\n\n try {\n for (_iterator.s(); !(_step = _iterator.n()).done;) {\n var quadPoint = _step.value;\n this.data.rect = [quadPoint[2].x, quadPoint[2].y, quadPoint[1].x, quadPoint[1].y];\n quadrilaterals.push(this._createContainer(ignoreBorder));\n }\n } catch (err) {\n _iterator.e(err);\n } finally {\n _iterator.f();\n }\n\n this.data.rect = savedRect;\n return quadrilaterals;\n }\n }, {\n key: \"_createPopup\",\n value: function _createPopup(trigger, data) {\n var container = this.container;\n\n if (this.quadrilaterals) {\n trigger = trigger || this.quadrilaterals;\n container = this.quadrilaterals[0];\n }\n\n if (!trigger) {\n trigger = document.createElement(\"div\");\n trigger.style.height = container.style.height;\n trigger.style.width = container.style.width;\n container.appendChild(trigger);\n }\n\n var popupElement = new PopupElement({\n container: container,\n trigger: trigger,\n color: data.color,\n titleObj: data.titleObj,\n modificationDate: data.modificationDate,\n contentsObj: data.contentsObj,\n hideWrapper: true\n });\n var popup = popupElement.render();\n popup.style.left = container.style.width;\n container.appendChild(popup);\n }\n }, {\n key: \"_renderQuadrilaterals\",\n value: function _renderQuadrilaterals(className) {\n var _iterator2 = _createForOfIteratorHelper(this.quadrilaterals),\n _step2;\n\n try {\n for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {\n var quadrilateral = _step2.value;\n quadrilateral.className = className;\n }\n } catch (err) {\n _iterator2.e(err);\n } finally {\n _iterator2.f();\n }\n\n return this.quadrilaterals;\n }\n }, {\n key: \"render\",\n value: function render() {\n (0, _util.unreachable)(\"Abstract method `AnnotationElement.render` called\");\n }\n }, {\n key: \"_getElementsByName\",\n value: function _getElementsByName(name) {\n var skipId = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;\n var fields = [];\n\n if (this._fieldObjects) {\n var fieldObj = this._fieldObjects[name];\n\n if (fieldObj) {\n var _iterator3 = _createForOfIteratorHelper(fieldObj),\n _step3;\n\n try {\n for (_iterator3.s(); !(_step3 = _iterator3.n()).done;) {\n var _step3$value = _step3.value,\n page = _step3$value.page,\n id = _step3$value.id,\n exportValues = _step3$value.exportValues;\n\n if (page === -1) {\n continue;\n }\n\n if (id === skipId) {\n continue;\n }\n\n var exportValue = typeof exportValues === \"string\" ? exportValues : null;\n var domElement = document.getElementById(id);\n\n if (domElement && !GetElementsByNameSet.has(domElement)) {\n (0, _util.warn)(\"_getElementsByName - element not allowed: \".concat(id));\n continue;\n }\n\n fields.push({\n id: id,\n exportValue: exportValue,\n domElement: domElement\n });\n }\n } catch (err) {\n _iterator3.e(err);\n } finally {\n _iterator3.f();\n }\n }\n\n return fields;\n }\n\n var _iterator4 = _createForOfIteratorHelper(document.getElementsByName(name)),\n _step4;\n\n try {\n for (_iterator4.s(); !(_step4 = _iterator4.n()).done;) {\n var _domElement = _step4.value;\n var _id = _domElement.id,\n _exportValue = _domElement.exportValue;\n\n if (_id === skipId) {\n continue;\n }\n\n if (!GetElementsByNameSet.has(_domElement)) {\n continue;\n }\n\n fields.push({\n id: _id,\n exportValue: _exportValue,\n domElement: _domElement\n });\n }\n } catch (err) {\n _iterator4.e(err);\n } finally {\n _iterator4.f();\n }\n\n return fields;\n }\n }], [{\n key: \"platform\",\n get: function get() {\n var platform = typeof navigator !== \"undefined\" ? navigator.platform : \"\";\n return (0, _util.shadow)(this, \"platform\", {\n isWin: platform.includes(\"Win\"),\n isMac: platform.includes(\"Mac\")\n });\n }\n }]);\n\n return AnnotationElement;\n}();\n\nvar LinkAnnotationElement = /*#__PURE__*/function (_AnnotationElement) {\n _inherits(LinkAnnotationElement, _AnnotationElement);\n\n var _super = _createSuper(LinkAnnotationElement);\n\n function LinkAnnotationElement(parameters) {\n _classCallCheck(this, LinkAnnotationElement);\n\n var isRenderable = !!(parameters.data.url || parameters.data.dest || parameters.data.action || parameters.data.isTooltipOnly || parameters.data.resetForm || parameters.data.actions && (parameters.data.actions.Action || parameters.data.actions[\"Mouse Up\"] || parameters.data.actions[\"Mouse Down\"]));\n return _super.call(this, parameters, {\n isRenderable: isRenderable,\n createQuadrilaterals: true\n });\n }\n\n _createClass(LinkAnnotationElement, [{\n key: \"render\",\n value: function render() {\n var data = this.data,\n linkService = this.linkService;\n var link = document.createElement(\"a\");\n\n if (data.url) {\n var _linkService$addLinkA;\n\n if (!linkService.addLinkAttributes) {\n (0, _util.warn)(\"LinkAnnotationElement.render - missing `addLinkAttributes`-method on the `linkService`-instance.\");\n }\n\n (_linkService$addLinkA = linkService.addLinkAttributes) === null || _linkService$addLinkA === void 0 ? void 0 : _linkService$addLinkA.call(linkService, link, data.url, data.newWindow);\n } else if (data.action) {\n this._bindNamedAction(link, data.action);\n } else if (data.dest) {\n this._bindLink(link, data.dest);\n } else {\n var hasClickAction = false;\n\n if (data.actions && (data.actions.Action || data.actions[\"Mouse Up\"] || data.actions[\"Mouse Down\"]) && this.enableScripting && this.hasJSActions) {\n hasClickAction = true;\n\n this._bindJSAction(link, data);\n }\n\n if (data.resetForm) {\n this._bindResetFormAction(link, data.resetForm);\n } else if (!hasClickAction) {\n this._bindLink(link, \"\");\n }\n }\n\n if (this.quadrilaterals) {\n return this._renderQuadrilaterals(\"linkAnnotation\").map(function (quadrilateral, index) {\n var linkElement = index === 0 ? link : link.cloneNode();\n quadrilateral.appendChild(linkElement);\n return quadrilateral;\n });\n }\n\n this.container.className = \"linkAnnotation\";\n this.container.appendChild(link);\n return this.container;\n }\n }, {\n key: \"_bindLink\",\n value: function _bindLink(link, destination) {\n var _this = this;\n\n link.href = this.linkService.getDestinationHash(destination);\n\n link.onclick = function () {\n if (destination) {\n _this.linkService.goToDestination(destination);\n }\n\n return false;\n };\n\n if (destination || destination === \"\") {\n link.className = \"internalLink\";\n }\n }\n }, {\n key: \"_bindNamedAction\",\n value: function _bindNamedAction(link, action) {\n var _this2 = this;\n\n link.href = this.linkService.getAnchorUrl(\"\");\n\n link.onclick = function () {\n _this2.linkService.executeNamedAction(action);\n\n return false;\n };\n\n link.className = \"internalLink\";\n }\n }, {\n key: \"_bindJSAction\",\n value: function _bindJSAction(link, data) {\n var _this3 = this;\n\n link.href = this.linkService.getAnchorUrl(\"\");\n var map = new Map([[\"Action\", \"onclick\"], [\"Mouse Up\", \"onmouseup\"], [\"Mouse Down\", \"onmousedown\"]]);\n\n var _loop = function _loop() {\n var name = _Object$keys[_i];\n var jsName = map.get(name);\n\n if (!jsName) {\n return \"continue\";\n }\n\n link[jsName] = function () {\n var _this3$linkService$ev;\n\n (_this3$linkService$ev = _this3.linkService.eventBus) === null || _this3$linkService$ev === void 0 ? void 0 : _this3$linkService$ev.dispatch(\"dispatcheventinsandbox\", {\n source: _this3,\n detail: {\n id: data.id,\n name: name\n }\n });\n return false;\n };\n };\n\n for (var _i = 0, _Object$keys = Object.keys(data.actions); _i < _Object$keys.length; _i++) {\n var _ret = _loop();\n\n if (_ret === \"continue\") continue;\n }\n\n if (!link.onclick) {\n link.onclick = function () {\n return false;\n };\n }\n\n link.className = \"internalLink\";\n }\n }, {\n key: \"_bindResetFormAction\",\n value: function _bindResetFormAction(link, resetForm) {\n var _this4 = this;\n\n var otherClickAction = link.onclick;\n\n if (!otherClickAction) {\n link.href = this.linkService.getAnchorUrl(\"\");\n }\n\n link.className = \"internalLink\";\n\n if (!this._fieldObjects) {\n (0, _util.warn)(\"_bindResetFormAction - \\\"resetForm\\\" action not supported, \" + \"ensure that the `fieldObjects` parameter is provided.\");\n\n if (!otherClickAction) {\n link.onclick = function () {\n return false;\n };\n }\n\n return;\n }\n\n link.onclick = function () {\n if (otherClickAction) {\n otherClickAction();\n }\n\n var resetFormFields = resetForm.fields,\n resetFormRefs = resetForm.refs,\n include = resetForm.include;\n var allFields = [];\n\n if (resetFormFields.length !== 0 || resetFormRefs.length !== 0) {\n var fieldIds = new Set(resetFormRefs);\n\n var _iterator5 = _createForOfIteratorHelper(resetFormFields),\n _step5;\n\n try {\n for (_iterator5.s(); !(_step5 = _iterator5.n()).done;) {\n var fieldName = _step5.value;\n\n var _fields = _this4._fieldObjects[fieldName] || [];\n\n var _iterator7 = _createForOfIteratorHelper(_fields),\n _step7;\n\n try {\n for (_iterator7.s(); !(_step7 = _iterator7.n()).done;) {\n var id = _step7.value.id;\n fieldIds.add(id);\n }\n } catch (err) {\n _iterator7.e(err);\n } finally {\n _iterator7.f();\n }\n }\n } catch (err) {\n _iterator5.e(err);\n } finally {\n _iterator5.f();\n }\n\n for (var _i2 = 0, _Object$values = Object.values(_this4._fieldObjects); _i2 < _Object$values.length; _i2++) {\n var fields = _Object$values[_i2];\n\n var _iterator6 = _createForOfIteratorHelper(fields),\n _step6;\n\n try {\n for (_iterator6.s(); !(_step6 = _iterator6.n()).done;) {\n var field = _step6.value;\n\n if (fieldIds.has(field.id) === include) {\n allFields.push(field);\n }\n }\n } catch (err) {\n _iterator6.e(err);\n } finally {\n _iterator6.f();\n }\n }\n } else {\n for (var _i3 = 0, _Object$values2 = Object.values(_this4._fieldObjects); _i3 < _Object$values2.length; _i3++) {\n var _fields2 = _Object$values2[_i3];\n allFields.push.apply(allFields, _toConsumableArray(_fields2));\n }\n }\n\n var storage = _this4.annotationStorage;\n var allIds = [];\n\n for (var _i4 = 0, _allFields = allFields; _i4 < _allFields.length; _i4++) {\n var _field = _allFields[_i4];\n var _id2 = _field.id;\n allIds.push(_id2);\n\n switch (_field.type) {\n case \"text\":\n {\n var value = _field.defaultValue || \"\";\n storage.setValue(_id2, {\n value: value,\n valueAsString: value\n });\n break;\n }\n\n case \"checkbox\":\n case \"radiobutton\":\n {\n var _value = _field.defaultValue === _field.exportValues;\n\n storage.setValue(_id2, {\n value: _value\n });\n break;\n }\n\n case \"combobox\":\n case \"listbox\":\n {\n var _value2 = _field.defaultValue || \"\";\n\n storage.setValue(_id2, {\n value: _value2\n });\n break;\n }\n\n default:\n continue;\n }\n\n var domElement = document.getElementById(_id2);\n\n if (!domElement || !GetElementsByNameSet.has(domElement)) {\n continue;\n }\n\n domElement.dispatchEvent(new Event(\"resetform\"));\n }\n\n if (_this4.enableScripting) {\n var _this4$linkService$ev;\n\n (_this4$linkService$ev = _this4.linkService.eventBus) === null || _this4$linkService$ev === void 0 ? void 0 : _this4$linkService$ev.dispatch(\"dispatcheventinsandbox\", {\n source: _this4,\n detail: {\n id: \"app\",\n ids: allIds,\n name: \"ResetForm\"\n }\n });\n }\n\n return false;\n };\n }\n }]);\n\n return LinkAnnotationElement;\n}(AnnotationElement);\n\nvar TextAnnotationElement = /*#__PURE__*/function (_AnnotationElement2) {\n _inherits(TextAnnotationElement, _AnnotationElement2);\n\n var _super2 = _createSuper(TextAnnotationElement);\n\n function TextAnnotationElement(parameters) {\n var _parameters$data$titl, _parameters$data$cont;\n\n _classCallCheck(this, TextAnnotationElement);\n\n var isRenderable = !!(parameters.data.hasPopup || (_parameters$data$titl = parameters.data.titleObj) !== null && _parameters$data$titl !== void 0 && _parameters$data$titl.str || (_parameters$data$cont = parameters.data.contentsObj) !== null && _parameters$data$cont !== void 0 && _parameters$data$cont.str);\n return _super2.call(this, parameters, {\n isRenderable: isRenderable\n });\n }\n\n _createClass(TextAnnotationElement, [{\n key: \"render\",\n value: function render() {\n this.container.className = \"textAnnotation\";\n var image = document.createElement(\"img\");\n image.style.height = this.container.style.height;\n image.style.width = this.container.style.width;\n image.src = this.imageResourcesPath + \"annotation-\" + this.data.name.toLowerCase() + \".svg\";\n image.alt = \"[{{type}} Annotation]\";\n image.dataset.l10nId = \"text_annotation_type\";\n image.dataset.l10nArgs = JSON.stringify({\n type: this.data.name\n });\n\n if (!this.data.hasPopup) {\n this._createPopup(image, this.data);\n }\n\n this.container.appendChild(image);\n return this.container;\n }\n }]);\n\n return TextAnnotationElement;\n}(AnnotationElement);\n\nvar WidgetAnnotationElement = /*#__PURE__*/function (_AnnotationElement3) {\n _inherits(WidgetAnnotationElement, _AnnotationElement3);\n\n var _super3 = _createSuper(WidgetAnnotationElement);\n\n function WidgetAnnotationElement() {\n _classCallCheck(this, WidgetAnnotationElement);\n\n return _super3.apply(this, arguments);\n }\n\n _createClass(WidgetAnnotationElement, [{\n key: \"render\",\n value: function render() {\n if (this.data.alternativeText) {\n this.container.title = this.data.alternativeText;\n }\n\n return this.container;\n }\n }, {\n key: \"_getKeyModifier\",\n value: function _getKeyModifier(event) {\n var _AnnotationElement$pl = AnnotationElement.platform,\n isWin = _AnnotationElement$pl.isWin,\n isMac = _AnnotationElement$pl.isMac;\n return isWin && event.ctrlKey || isMac && event.metaKey;\n }\n }, {\n key: \"_setEventListener\",\n value: function _setEventListener(element, baseName, eventName, valueGetter) {\n var _this5 = this;\n\n if (baseName.includes(\"mouse\")) {\n element.addEventListener(baseName, function (event) {\n var _this5$linkService$ev;\n\n (_this5$linkService$ev = _this5.linkService.eventBus) === null || _this5$linkService$ev === void 0 ? void 0 : _this5$linkService$ev.dispatch(\"dispatcheventinsandbox\", {\n source: _this5,\n detail: {\n id: _this5.data.id,\n name: eventName,\n value: valueGetter(event),\n shift: event.shiftKey,\n modifier: _this5._getKeyModifier(event)\n }\n });\n });\n } else {\n element.addEventListener(baseName, function (event) {\n var _this5$linkService$ev2;\n\n (_this5$linkService$ev2 = _this5.linkService.eventBus) === null || _this5$linkService$ev2 === void 0 ? void 0 : _this5$linkService$ev2.dispatch(\"dispatcheventinsandbox\", {\n source: _this5,\n detail: {\n id: _this5.data.id,\n name: eventName,\n value: event.target.checked\n }\n });\n });\n }\n }\n }, {\n key: \"_setEventListeners\",\n value: function _setEventListeners(element, names, getter) {\n var _iterator8 = _createForOfIteratorHelper(names),\n _step8;\n\n try {\n for (_iterator8.s(); !(_step8 = _iterator8.n()).done;) {\n var _this$data$actions;\n\n var _step8$value = _slicedToArray(_step8.value, 2),\n baseName = _step8$value[0],\n eventName = _step8$value[1];\n\n if (eventName === \"Action\" || (_this$data$actions = this.data.actions) !== null && _this$data$actions !== void 0 && _this$data$actions[eventName]) {\n this._setEventListener(element, baseName, eventName, getter);\n }\n }\n } catch (err) {\n _iterator8.e(err);\n } finally {\n _iterator8.f();\n }\n }\n }, {\n key: \"_setBackgroundColor\",\n value: function _setBackgroundColor(element) {\n var color = this.data.backgroundColor || null;\n element.style.backgroundColor = color === null ? \"transparent\" : _util.Util.makeHexColor(color[0], color[1], color[2]);\n }\n }, {\n key: \"_dispatchEventFromSandbox\",\n value: function _dispatchEventFromSandbox(actions, jsEvent) {\n var _this6 = this;\n\n var setColor = function setColor(jsName, styleName, event) {\n var color = event.detail[jsName];\n event.target.style[styleName] = _scripting_utils.ColorConverters[\"\".concat(color[0], \"_HTML\")](color.slice(1));\n };\n\n var commonActions = {\n display: function display(event) {\n var hidden = event.detail.display % 2 === 1;\n event.target.style.visibility = hidden ? \"hidden\" : \"visible\";\n\n _this6.annotationStorage.setValue(_this6.data.id, {\n hidden: hidden,\n print: event.detail.display === 0 || event.detail.display === 3\n });\n },\n print: function print(event) {\n _this6.annotationStorage.setValue(_this6.data.id, {\n print: event.detail.print\n });\n },\n hidden: function hidden(event) {\n event.target.style.visibility = event.detail.hidden ? \"hidden\" : \"visible\";\n\n _this6.annotationStorage.setValue(_this6.data.id, {\n hidden: event.detail.hidden\n });\n },\n focus: function focus(event) {\n setTimeout(function () {\n return event.target.focus({\n preventScroll: false\n });\n }, 0);\n },\n userName: function userName(event) {\n event.target.title = event.detail.userName;\n },\n readonly: function readonly(event) {\n if (event.detail.readonly) {\n event.target.setAttribute(\"readonly\", \"\");\n } else {\n event.target.removeAttribute(\"readonly\");\n }\n },\n required: function required(event) {\n if (event.detail.required) {\n event.target.setAttribute(\"required\", \"\");\n } else {\n event.target.removeAttribute(\"required\");\n }\n },\n bgColor: function bgColor(event) {\n setColor(\"bgColor\", \"backgroundColor\", event);\n },\n fillColor: function fillColor(event) {\n setColor(\"fillColor\", \"backgroundColor\", event);\n },\n fgColor: function fgColor(event) {\n setColor(\"fgColor\", \"color\", event);\n },\n textColor: function textColor(event) {\n setColor(\"textColor\", \"color\", event);\n },\n borderColor: function borderColor(event) {\n setColor(\"borderColor\", \"borderColor\", event);\n },\n strokeColor: function strokeColor(event) {\n setColor(\"strokeColor\", \"borderColor\", event);\n }\n };\n\n for (var _i5 = 0, _Object$keys2 = Object.keys(jsEvent.detail); _i5 < _Object$keys2.length; _i5++) {\n var name = _Object$keys2[_i5];\n var action = actions[name] || commonActions[name];\n\n if (action) {\n action(jsEvent);\n }\n }\n }\n }]);\n\n return WidgetAnnotationElement;\n}(AnnotationElement);\n\nvar TextWidgetAnnotationElement = /*#__PURE__*/function (_WidgetAnnotationElem) {\n _inherits(TextWidgetAnnotationElement, _WidgetAnnotationElem);\n\n var _super4 = _createSuper(TextWidgetAnnotationElement);\n\n function TextWidgetAnnotationElement(parameters) {\n _classCallCheck(this, TextWidgetAnnotationElement);\n\n var isRenderable = parameters.renderForms || !parameters.data.hasAppearance && !!parameters.data.fieldValue;\n return _super4.call(this, parameters, {\n isRenderable: isRenderable\n });\n }\n\n _createClass(TextWidgetAnnotationElement, [{\n key: \"setPropertyOnSiblings\",\n value: function setPropertyOnSiblings(base, key, value, keyInStorage) {\n var storage = this.annotationStorage;\n\n var _iterator9 = _createForOfIteratorHelper(this._getElementsByName(base.name, base.id)),\n _step9;\n\n try {\n for (_iterator9.s(); !(_step9 = _iterator9.n()).done;) {\n var element = _step9.value;\n\n if (element.domElement) {\n element.domElement[key] = value;\n }\n\n storage.setValue(element.id, _defineProperty({}, keyInStorage, value));\n }\n } catch (err) {\n _iterator9.e(err);\n } finally {\n _iterator9.f();\n }\n }\n }, {\n key: \"render\",\n value: function render() {\n var _this7 = this;\n\n var storage = this.annotationStorage;\n var id = this.data.id;\n this.container.className = \"textWidgetAnnotation\";\n var element = null;\n\n if (this.renderForms) {\n var storedData = storage.getValue(id, {\n value: this.data.fieldValue,\n valueAsString: this.data.fieldValue\n });\n var textContent = storedData.valueAsString || storedData.value || \"\";\n var elementData = {\n userValue: null,\n formattedValue: null,\n beforeInputSelectionRange: null,\n beforeInputValue: null\n };\n\n if (this.data.multiLine) {\n element = document.createElement(\"textarea\");\n element.textContent = textContent;\n } else {\n element = document.createElement(\"input\");\n element.type = \"text\";\n element.setAttribute(\"value\", textContent);\n }\n\n GetElementsByNameSet.add(element);\n element.disabled = this.data.readOnly;\n element.name = this.data.fieldName;\n element.tabIndex = DEFAULT_TAB_INDEX;\n elementData.userValue = textContent;\n element.setAttribute(\"id\", id);\n element.addEventListener(\"input\", function (event) {\n storage.setValue(id, {\n value: event.target.value\n });\n\n _this7.setPropertyOnSiblings(element, \"value\", event.target.value, \"value\");\n });\n element.addEventListener(\"resetform\", function (event) {\n var defaultValue = _this7.data.defaultFieldValue || \"\";\n element.value = elementData.userValue = defaultValue;\n delete elementData.formattedValue;\n });\n\n var blurListener = function blurListener(event) {\n if (elementData.formattedValue) {\n event.target.value = elementData.formattedValue;\n }\n\n event.target.scrollLeft = 0;\n elementData.beforeInputSelectionRange = null;\n };\n\n if (this.enableScripting && this.hasJSActions) {\n var _this$data$actions2;\n\n element.addEventListener(\"focus\", function (event) {\n if (elementData.userValue) {\n event.target.value = elementData.userValue;\n }\n });\n element.addEventListener(\"updatefromsandbox\", function (jsEvent) {\n var actions = {\n value: function value(event) {\n elementData.userValue = event.detail.value || \"\";\n storage.setValue(id, {\n value: elementData.userValue.toString()\n });\n\n if (!elementData.formattedValue) {\n event.target.value = elementData.userValue;\n }\n },\n valueAsString: function valueAsString(event) {\n elementData.formattedValue = event.detail.valueAsString || \"\";\n\n if (event.target !== document.activeElement) {\n event.target.value = elementData.formattedValue;\n }\n\n storage.setValue(id, {\n formattedValue: elementData.formattedValue\n });\n },\n selRange: function selRange(event) {\n var _event$detail$selRang = _slicedToArray(event.detail.selRange, 2),\n selStart = _event$detail$selRang[0],\n selEnd = _event$detail$selRang[1];\n\n if (selStart >= 0 && selEnd < event.target.value.length) {\n event.target.setSelectionRange(selStart, selEnd);\n }\n }\n };\n\n _this7._dispatchEventFromSandbox(actions, jsEvent);\n });\n element.addEventListener(\"keydown\", function (event) {\n var _this7$linkService$ev;\n\n elementData.beforeInputValue = event.target.value;\n var commitKey = -1;\n\n if (event.key === \"Escape\") {\n commitKey = 0;\n } else if (event.key === \"Enter\") {\n commitKey = 2;\n } else if (event.key === \"Tab\") {\n commitKey = 3;\n }\n\n if (commitKey === -1) {\n return;\n }\n\n elementData.userValue = event.target.value;\n (_this7$linkService$ev = _this7.linkService.eventBus) === null || _this7$linkService$ev === void 0 ? void 0 : _this7$linkService$ev.dispatch(\"dispatcheventinsandbox\", {\n source: _this7,\n detail: {\n id: id,\n name: \"Keystroke\",\n value: event.target.value,\n willCommit: true,\n commitKey: commitKey,\n selStart: event.target.selectionStart,\n selEnd: event.target.selectionEnd\n }\n });\n });\n var _blurListener = blurListener;\n blurListener = null;\n element.addEventListener(\"blur\", function (event) {\n if (_this7._mouseState.isDown) {\n var _this7$linkService$ev2;\n\n elementData.userValue = event.target.value;\n (_this7$linkService$ev2 = _this7.linkService.eventBus) === null || _this7$linkService$ev2 === void 0 ? void 0 : _this7$linkService$ev2.dispatch(\"dispatcheventinsandbox\", {\n source: _this7,\n detail: {\n id: id,\n name: \"Keystroke\",\n value: event.target.value,\n willCommit: true,\n commitKey: 1,\n selStart: event.target.selectionStart,\n selEnd: event.target.selectionEnd\n }\n });\n }\n\n _blurListener(event);\n });\n element.addEventListener(\"mousedown\", function (event) {\n elementData.beforeInputValue = event.target.value;\n elementData.beforeInputSelectionRange = null;\n });\n element.addEventListener(\"keyup\", function (event) {\n if (event.target.selectionStart === event.target.selectionEnd) {\n elementData.beforeInputSelectionRange = null;\n }\n });\n element.addEventListener(\"select\", function (event) {\n elementData.beforeInputSelectionRange = [event.target.selectionStart, event.target.selectionEnd];\n });\n\n if ((_this$data$actions2 = this.data.actions) !== null && _this$data$actions2 !== void 0 && _this$data$actions2.Keystroke) {\n element.addEventListener(\"input\", function (event) {\n var _this7$linkService$ev3;\n\n var selStart = -1;\n var selEnd = -1;\n\n if (elementData.beforeInputSelectionRange) {\n var _elementData$beforeIn = _slicedToArray(elementData.beforeInputSelectionRange, 2);\n\n selStart = _elementData$beforeIn[0];\n selEnd = _elementData$beforeIn[1];\n }\n\n (_this7$linkService$ev3 = _this7.linkService.eventBus) === null || _this7$linkService$ev3 === void 0 ? void 0 : _this7$linkService$ev3.dispatch(\"dispatcheventinsandbox\", {\n source: _this7,\n detail: {\n id: id,\n name: \"Keystroke\",\n value: elementData.beforeInputValue,\n change: event.data,\n willCommit: false,\n selStart: selStart,\n selEnd: selEnd\n }\n });\n });\n }\n\n this._setEventListeners(element, [[\"focus\", \"Focus\"], [\"blur\", \"Blur\"], [\"mousedown\", \"Mouse Down\"], [\"mouseenter\", \"Mouse Enter\"], [\"mouseleave\", \"Mouse Exit\"], [\"mouseup\", \"Mouse Up\"]], function (event) {\n return event.target.value;\n });\n }\n\n if (blurListener) {\n element.addEventListener(\"blur\", blurListener);\n }\n\n if (this.data.maxLen !== null) {\n element.maxLength = this.data.maxLen;\n }\n\n if (this.data.comb) {\n var fieldWidth = this.data.rect[2] - this.data.rect[0];\n var combWidth = fieldWidth / this.data.maxLen;\n element.classList.add(\"comb\");\n element.style.letterSpacing = \"calc(\".concat(combWidth, \"px - 1ch)\");\n }\n } else {\n element = document.createElement(\"div\");\n element.textContent = this.data.fieldValue;\n element.style.verticalAlign = \"middle\";\n element.style.display = \"table-cell\";\n }\n\n this._setTextStyle(element);\n\n this._setBackgroundColor(element);\n\n this.container.appendChild(element);\n return this.container;\n }\n }, {\n key: \"_setTextStyle\",\n value: function _setTextStyle(element) {\n var TEXT_ALIGNMENT = [\"left\", \"center\", \"right\"];\n var _this$data$defaultApp = this.data.defaultAppearanceData,\n fontSize = _this$data$defaultApp.fontSize,\n fontColor = _this$data$defaultApp.fontColor;\n var style = element.style;\n\n if (fontSize) {\n style.fontSize = \"\".concat(fontSize, \"px\");\n }\n\n style.color = _util.Util.makeHexColor(fontColor[0], fontColor[1], fontColor[2]);\n\n if (this.data.textAlignment !== null) {\n style.textAlign = TEXT_ALIGNMENT[this.data.textAlignment];\n }\n }\n }]);\n\n return TextWidgetAnnotationElement;\n}(WidgetAnnotationElement);\n\nvar CheckboxWidgetAnnotationElement = /*#__PURE__*/function (_WidgetAnnotationElem2) {\n _inherits(CheckboxWidgetAnnotationElement, _WidgetAnnotationElem2);\n\n var _super5 = _createSuper(CheckboxWidgetAnnotationElement);\n\n function CheckboxWidgetAnnotationElement(parameters) {\n _classCallCheck(this, CheckboxWidgetAnnotationElement);\n\n return _super5.call(this, parameters, {\n isRenderable: parameters.renderForms\n });\n }\n\n _createClass(CheckboxWidgetAnnotationElement, [{\n key: \"render\",\n value: function render() {\n var _this8 = this;\n\n var storage = this.annotationStorage;\n var data = this.data;\n var id = data.id;\n var value = storage.getValue(id, {\n value: data.exportValue === data.fieldValue\n }).value;\n\n if (typeof value === \"string\") {\n value = value !== \"Off\";\n storage.setValue(id, {\n value: value\n });\n }\n\n this.container.className = \"buttonWidgetAnnotation checkBox\";\n var element = document.createElement(\"input\");\n GetElementsByNameSet.add(element);\n element.disabled = data.readOnly;\n element.type = \"checkbox\";\n element.name = data.fieldName;\n\n if (value) {\n element.setAttribute(\"checked\", true);\n }\n\n element.setAttribute(\"id\", id);\n element.setAttribute(\"exportValue\", data.exportValue);\n element.tabIndex = DEFAULT_TAB_INDEX;\n element.addEventListener(\"change\", function (event) {\n var _event$target = event.target,\n name = _event$target.name,\n checked = _event$target.checked;\n\n var _iterator10 = _createForOfIteratorHelper(_this8._getElementsByName(name, id)),\n _step10;\n\n try {\n for (_iterator10.s(); !(_step10 = _iterator10.n()).done;) {\n var checkbox = _step10.value;\n var curChecked = checked && checkbox.exportValue === data.exportValue;\n\n if (checkbox.domElement) {\n checkbox.domElement.checked = curChecked;\n }\n\n storage.setValue(checkbox.id, {\n value: curChecked\n });\n }\n } catch (err) {\n _iterator10.e(err);\n } finally {\n _iterator10.f();\n }\n\n storage.setValue(id, {\n value: checked\n });\n });\n element.addEventListener(\"resetform\", function (event) {\n var defaultValue = data.defaultFieldValue || \"Off\";\n event.target.checked = defaultValue === data.exportValue;\n });\n\n if (this.enableScripting && this.hasJSActions) {\n element.addEventListener(\"updatefromsandbox\", function (jsEvent) {\n var actions = {\n value: function value(event) {\n event.target.checked = event.detail.value !== \"Off\";\n storage.setValue(id, {\n value: event.target.checked\n });\n }\n };\n\n _this8._dispatchEventFromSandbox(actions, jsEvent);\n });\n\n this._setEventListeners(element, [[\"change\", \"Validate\"], [\"change\", \"Action\"], [\"focus\", \"Focus\"], [\"blur\", \"Blur\"], [\"mousedown\", \"Mouse Down\"], [\"mouseenter\", \"Mouse Enter\"], [\"mouseleave\", \"Mouse Exit\"], [\"mouseup\", \"Mouse Up\"]], function (event) {\n return event.target.checked;\n });\n }\n\n this._setBackgroundColor(element);\n\n this.container.appendChild(element);\n return this.container;\n }\n }]);\n\n return CheckboxWidgetAnnotationElement;\n}(WidgetAnnotationElement);\n\nvar RadioButtonWidgetAnnotationElement = /*#__PURE__*/function (_WidgetAnnotationElem3) {\n _inherits(RadioButtonWidgetAnnotationElement, _WidgetAnnotationElem3);\n\n var _super6 = _createSuper(RadioButtonWidgetAnnotationElement);\n\n function RadioButtonWidgetAnnotationElement(parameters) {\n _classCallCheck(this, RadioButtonWidgetAnnotationElement);\n\n return _super6.call(this, parameters, {\n isRenderable: parameters.renderForms\n });\n }\n\n _createClass(RadioButtonWidgetAnnotationElement, [{\n key: \"render\",\n value: function render() {\n var _this9 = this;\n\n this.container.className = \"buttonWidgetAnnotation radioButton\";\n var storage = this.annotationStorage;\n var data = this.data;\n var id = data.id;\n var value = storage.getValue(id, {\n value: data.fieldValue === data.buttonValue\n }).value;\n\n if (typeof value === \"string\") {\n value = value !== data.buttonValue;\n storage.setValue(id, {\n value: value\n });\n }\n\n var element = document.createElement(\"input\");\n GetElementsByNameSet.add(element);\n element.disabled = data.readOnly;\n element.type = \"radio\";\n element.name = data.fieldName;\n\n if (value) {\n element.setAttribute(\"checked\", true);\n }\n\n element.setAttribute(\"id\", id);\n element.tabIndex = DEFAULT_TAB_INDEX;\n element.addEventListener(\"change\", function (event) {\n var _event$target2 = event.target,\n name = _event$target2.name,\n checked = _event$target2.checked;\n\n var _iterator11 = _createForOfIteratorHelper(_this9._getElementsByName(name, id)),\n _step11;\n\n try {\n for (_iterator11.s(); !(_step11 = _iterator11.n()).done;) {\n var radio = _step11.value;\n storage.setValue(radio.id, {\n value: false\n });\n }\n } catch (err) {\n _iterator11.e(err);\n } finally {\n _iterator11.f();\n }\n\n storage.setValue(id, {\n value: checked\n });\n });\n element.addEventListener(\"resetform\", function (event) {\n var defaultValue = data.defaultFieldValue;\n event.target.checked = defaultValue !== null && defaultValue !== undefined && defaultValue === data.buttonValue;\n });\n\n if (this.enableScripting && this.hasJSActions) {\n var pdfButtonValue = data.buttonValue;\n element.addEventListener(\"updatefromsandbox\", function (jsEvent) {\n var actions = {\n value: function value(event) {\n var checked = pdfButtonValue === event.detail.value;\n\n var _iterator12 = _createForOfIteratorHelper(_this9._getElementsByName(event.target.name)),\n _step12;\n\n try {\n for (_iterator12.s(); !(_step12 = _iterator12.n()).done;) {\n var radio = _step12.value;\n var curChecked = checked && radio.id === id;\n\n if (radio.domElement) {\n radio.domElement.checked = curChecked;\n }\n\n storage.setValue(radio.id, {\n value: curChecked\n });\n }\n } catch (err) {\n _iterator12.e(err);\n } finally {\n _iterator12.f();\n }\n }\n };\n\n _this9._dispatchEventFromSandbox(actions, jsEvent);\n });\n\n this._setEventListeners(element, [[\"change\", \"Validate\"], [\"change\", \"Action\"], [\"focus\", \"Focus\"], [\"blur\", \"Blur\"], [\"mousedown\", \"Mouse Down\"], [\"mouseenter\", \"Mouse Enter\"], [\"mouseleave\", \"Mouse Exit\"], [\"mouseup\", \"Mouse Up\"]], function (event) {\n return event.target.checked;\n });\n }\n\n this._setBackgroundColor(element);\n\n this.container.appendChild(element);\n return this.container;\n }\n }]);\n\n return RadioButtonWidgetAnnotationElement;\n}(WidgetAnnotationElement);\n\nvar PushButtonWidgetAnnotationElement = /*#__PURE__*/function (_LinkAnnotationElemen) {\n _inherits(PushButtonWidgetAnnotationElement, _LinkAnnotationElemen);\n\n var _super7 = _createSuper(PushButtonWidgetAnnotationElement);\n\n function PushButtonWidgetAnnotationElement() {\n _classCallCheck(this, PushButtonWidgetAnnotationElement);\n\n return _super7.apply(this, arguments);\n }\n\n _createClass(PushButtonWidgetAnnotationElement, [{\n key: \"render\",\n value: function render() {\n var container = _get(_getPrototypeOf(PushButtonWidgetAnnotationElement.prototype), \"render\", this).call(this);\n\n container.className = \"buttonWidgetAnnotation pushButton\";\n\n if (this.data.alternativeText) {\n container.title = this.data.alternativeText;\n }\n\n return container;\n }\n }]);\n\n return PushButtonWidgetAnnotationElement;\n}(LinkAnnotationElement);\n\nvar ChoiceWidgetAnnotationElement = /*#__PURE__*/function (_WidgetAnnotationElem4) {\n _inherits(ChoiceWidgetAnnotationElement, _WidgetAnnotationElem4);\n\n var _super8 = _createSuper(ChoiceWidgetAnnotationElement);\n\n function ChoiceWidgetAnnotationElement(parameters) {\n _classCallCheck(this, ChoiceWidgetAnnotationElement);\n\n return _super8.call(this, parameters, {\n isRenderable: parameters.renderForms\n });\n }\n\n _createClass(ChoiceWidgetAnnotationElement, [{\n key: \"render\",\n value: function render() {\n var _this10 = this;\n\n this.container.className = \"choiceWidgetAnnotation\";\n var storage = this.annotationStorage;\n var id = this.data.id;\n storage.getValue(id, {\n value: this.data.fieldValue.length > 0 ? this.data.fieldValue[0] : undefined\n });\n var fontSize = this.data.defaultAppearanceData.fontSize;\n\n if (!fontSize) {\n fontSize = 9;\n }\n\n var fontSizeStyle = \"calc(\".concat(fontSize, \"px * var(--zoom-factor))\");\n var selectElement = document.createElement(\"select\");\n GetElementsByNameSet.add(selectElement);\n selectElement.disabled = this.data.readOnly;\n selectElement.name = this.data.fieldName;\n selectElement.setAttribute(\"id\", id);\n selectElement.tabIndex = DEFAULT_TAB_INDEX;\n selectElement.style.fontSize = \"\".concat(fontSize, \"px\");\n\n if (!this.data.combo) {\n selectElement.size = this.data.options.length;\n\n if (this.data.multiSelect) {\n selectElement.multiple = true;\n }\n }\n\n selectElement.addEventListener(\"resetform\", function (event) {\n var defaultValue = _this10.data.defaultFieldValue;\n\n var _iterator13 = _createForOfIteratorHelper(selectElement.options),\n _step13;\n\n try {\n for (_iterator13.s(); !(_step13 = _iterator13.n()).done;) {\n var option = _step13.value;\n option.selected = option.value === defaultValue;\n }\n } catch (err) {\n _iterator13.e(err);\n } finally {\n _iterator13.f();\n }\n });\n\n var _iterator14 = _createForOfIteratorHelper(this.data.options),\n _step14;\n\n try {\n for (_iterator14.s(); !(_step14 = _iterator14.n()).done;) {\n var option = _step14.value;\n var optionElement = document.createElement(\"option\");\n optionElement.textContent = option.displayValue;\n optionElement.value = option.exportValue;\n\n if (this.data.combo) {\n optionElement.style.fontSize = fontSizeStyle;\n }\n\n if (this.data.fieldValue.includes(option.exportValue)) {\n optionElement.setAttribute(\"selected\", true);\n }\n\n selectElement.appendChild(optionElement);\n }\n } catch (err) {\n _iterator14.e(err);\n } finally {\n _iterator14.f();\n }\n\n var getValue = function getValue(event, isExport) {\n var name = isExport ? \"value\" : \"textContent\";\n var options = event.target.options;\n\n if (!event.target.multiple) {\n return options.selectedIndex === -1 ? null : options[options.selectedIndex][name];\n }\n\n return Array.prototype.filter.call(options, function (option) {\n return option.selected;\n }).map(function (option) {\n return option[name];\n });\n };\n\n var getItems = function getItems(event) {\n var options = event.target.options;\n return Array.prototype.map.call(options, function (option) {\n return {\n displayValue: option.textContent,\n exportValue: option.value\n };\n });\n };\n\n if (this.enableScripting && this.hasJSActions) {\n selectElement.addEventListener(\"updatefromsandbox\", function (jsEvent) {\n var actions = {\n value: function value(event) {\n var value = event.detail.value;\n var values = new Set(Array.isArray(value) ? value : [value]);\n\n var _iterator15 = _createForOfIteratorHelper(selectElement.options),\n _step15;\n\n try {\n for (_iterator15.s(); !(_step15 = _iterator15.n()).done;) {\n var option = _step15.value;\n option.selected = values.has(option.value);\n }\n } catch (err) {\n _iterator15.e(err);\n } finally {\n _iterator15.f();\n }\n\n storage.setValue(id, {\n value: getValue(event, true)\n });\n },\n multipleSelection: function multipleSelection(event) {\n selectElement.multiple = true;\n },\n remove: function remove(event) {\n var options = selectElement.options;\n var index = event.detail.remove;\n options[index].selected = false;\n selectElement.remove(index);\n\n if (options.length > 0) {\n var i = Array.prototype.findIndex.call(options, function (option) {\n return option.selected;\n });\n\n if (i === -1) {\n options[0].selected = true;\n }\n }\n\n storage.setValue(id, {\n value: getValue(event, true),\n items: getItems(event)\n });\n },\n clear: function clear(event) {\n while (selectElement.length !== 0) {\n selectElement.remove(0);\n }\n\n storage.setValue(id, {\n value: null,\n items: []\n });\n },\n insert: function insert(event) {\n var _event$detail$insert = event.detail.insert,\n index = _event$detail$insert.index,\n displayValue = _event$detail$insert.displayValue,\n exportValue = _event$detail$insert.exportValue;\n var optionElement = document.createElement(\"option\");\n optionElement.textContent = displayValue;\n optionElement.value = exportValue;\n selectElement.insertBefore(optionElement, selectElement.children[index]);\n storage.setValue(id, {\n value: getValue(event, true),\n items: getItems(event)\n });\n },\n items: function items(event) {\n var items = event.detail.items;\n\n while (selectElement.length !== 0) {\n selectElement.remove(0);\n }\n\n var _iterator16 = _createForOfIteratorHelper(items),\n _step16;\n\n try {\n for (_iterator16.s(); !(_step16 = _iterator16.n()).done;) {\n var item = _step16.value;\n var displayValue = item.displayValue,\n exportValue = item.exportValue;\n var optionElement = document.createElement(\"option\");\n optionElement.textContent = displayValue;\n optionElement.value = exportValue;\n selectElement.appendChild(optionElement);\n }\n } catch (err) {\n _iterator16.e(err);\n } finally {\n _iterator16.f();\n }\n\n if (selectElement.options.length > 0) {\n selectElement.options[0].selected = true;\n }\n\n storage.setValue(id, {\n value: getValue(event, true),\n items: getItems(event)\n });\n },\n indices: function indices(event) {\n var indices = new Set(event.detail.indices);\n\n var _iterator17 = _createForOfIteratorHelper(event.target.options),\n _step17;\n\n try {\n for (_iterator17.s(); !(_step17 = _iterator17.n()).done;) {\n var option = _step17.value;\n option.selected = indices.has(option.index);\n }\n } catch (err) {\n _iterator17.e(err);\n } finally {\n _iterator17.f();\n }\n\n storage.setValue(id, {\n value: getValue(event, true)\n });\n },\n editable: function editable(event) {\n event.target.disabled = !event.detail.editable;\n }\n };\n\n _this10._dispatchEventFromSandbox(actions, jsEvent);\n });\n selectElement.addEventListener(\"input\", function (event) {\n var _this10$linkService$e;\n\n var exportValue = getValue(event, true);\n var value = getValue(event, false);\n storage.setValue(id, {\n value: exportValue\n });\n (_this10$linkService$e = _this10.linkService.eventBus) === null || _this10$linkService$e === void 0 ? void 0 : _this10$linkService$e.dispatch(\"dispatcheventinsandbox\", {\n source: _this10,\n detail: {\n id: id,\n name: \"Keystroke\",\n value: value,\n changeEx: exportValue,\n willCommit: true,\n commitKey: 1,\n keyDown: false\n }\n });\n });\n\n this._setEventListeners(selectElement, [[\"focus\", \"Focus\"], [\"blur\", \"Blur\"], [\"mousedown\", \"Mouse Down\"], [\"mouseenter\", \"Mouse Enter\"], [\"mouseleave\", \"Mouse Exit\"], [\"mouseup\", \"Mouse Up\"], [\"input\", \"Action\"]], function (event) {\n return event.target.checked;\n });\n } else {\n selectElement.addEventListener(\"input\", function (event) {\n storage.setValue(id, {\n value: getValue(event)\n });\n });\n }\n\n this._setBackgroundColor(selectElement);\n\n this.container.appendChild(selectElement);\n return this.container;\n }\n }]);\n\n return ChoiceWidgetAnnotationElement;\n}(WidgetAnnotationElement);\n\nvar PopupAnnotationElement = /*#__PURE__*/function (_AnnotationElement4) {\n _inherits(PopupAnnotationElement, _AnnotationElement4);\n\n var _super9 = _createSuper(PopupAnnotationElement);\n\n function PopupAnnotationElement(parameters) {\n var _parameters$data$titl2, _parameters$data$cont2;\n\n _classCallCheck(this, PopupAnnotationElement);\n\n var isRenderable = !!((_parameters$data$titl2 = parameters.data.titleObj) !== null && _parameters$data$titl2 !== void 0 && _parameters$data$titl2.str || (_parameters$data$cont2 = parameters.data.contentsObj) !== null && _parameters$data$cont2 !== void 0 && _parameters$data$cont2.str);\n return _super9.call(this, parameters, {\n isRenderable: isRenderable\n });\n }\n\n _createClass(PopupAnnotationElement, [{\n key: \"render\",\n value: function render() {\n var IGNORE_TYPES = [\"Line\", \"Square\", \"Circle\", \"PolyLine\", \"Polygon\", \"Ink\"];\n this.container.className = \"popupAnnotation\";\n\n if (IGNORE_TYPES.includes(this.data.parentType)) {\n return this.container;\n }\n\n var selector = \"[data-annotation-id=\\\"\".concat(this.data.parentId, \"\\\"]\");\n var parentElements = this.layer.querySelectorAll(selector);\n\n if (parentElements.length === 0) {\n return this.container;\n }\n\n var popup = new PopupElement({\n container: this.container,\n trigger: Array.from(parentElements),\n color: this.data.color,\n titleObj: this.data.titleObj,\n modificationDate: this.data.modificationDate,\n contentsObj: this.data.contentsObj\n });\n var page = this.page;\n\n var rect = _util.Util.normalizeRect([this.data.parentRect[0], page.view[3] - this.data.parentRect[1] + page.view[1], this.data.parentRect[2], page.view[3] - this.data.parentRect[3] + page.view[1]]);\n\n var popupLeft = rect[0] + this.data.parentRect[2] - this.data.parentRect[0];\n var popupTop = rect[1];\n this.container.style.transformOrigin = \"\".concat(-popupLeft, \"px \").concat(-popupTop, \"px\");\n this.container.style.left = \"\".concat(popupLeft, \"px\");\n this.container.style.top = \"\".concat(popupTop, \"px\");\n this.container.appendChild(popup.render());\n return this.container;\n }\n }]);\n\n return PopupAnnotationElement;\n}(AnnotationElement);\n\nvar PopupElement = /*#__PURE__*/function () {\n function PopupElement(parameters) {\n _classCallCheck(this, PopupElement);\n\n this.container = parameters.container;\n this.trigger = parameters.trigger;\n this.color = parameters.color;\n this.titleObj = parameters.titleObj;\n this.modificationDate = parameters.modificationDate;\n this.contentsObj = parameters.contentsObj;\n this.hideWrapper = parameters.hideWrapper || false;\n this.pinned = false;\n }\n\n _createClass(PopupElement, [{\n key: \"render\",\n value: function render() {\n var BACKGROUND_ENLIGHT = 0.7;\n var wrapper = document.createElement(\"div\");\n wrapper.className = \"popupWrapper\";\n this.hideElement = this.hideWrapper ? wrapper : this.container;\n this.hideElement.hidden = true;\n var popup = document.createElement(\"div\");\n popup.className = \"popup\";\n var color = this.color;\n\n if (color) {\n var r = BACKGROUND_ENLIGHT * (255 - color[0]) + color[0];\n var g = BACKGROUND_ENLIGHT * (255 - color[1]) + color[1];\n var b = BACKGROUND_ENLIGHT * (255 - color[2]) + color[2];\n popup.style.backgroundColor = _util.Util.makeHexColor(r | 0, g | 0, b | 0);\n }\n\n var title = document.createElement(\"h1\");\n title.dir = this.titleObj.dir;\n title.textContent = this.titleObj.str;\n popup.appendChild(title);\n\n var dateObject = _display_utils.PDFDateString.toDateObject(this.modificationDate);\n\n if (dateObject) {\n var modificationDate = document.createElement(\"span\");\n modificationDate.textContent = \"{{date}}, {{time}}\";\n modificationDate.dataset.l10nId = \"annotation_date_string\";\n modificationDate.dataset.l10nArgs = JSON.stringify({\n date: dateObject.toLocaleDateString(),\n time: dateObject.toLocaleTimeString()\n });\n popup.appendChild(modificationDate);\n }\n\n var contents = this._formatContents(this.contentsObj);\n\n popup.appendChild(contents);\n\n if (!Array.isArray(this.trigger)) {\n this.trigger = [this.trigger];\n }\n\n var _iterator18 = _createForOfIteratorHelper(this.trigger),\n _step18;\n\n try {\n for (_iterator18.s(); !(_step18 = _iterator18.n()).done;) {\n var element = _step18.value;\n element.addEventListener(\"click\", this._toggle.bind(this));\n element.addEventListener(\"mouseover\", this._show.bind(this, false));\n element.addEventListener(\"mouseout\", this._hide.bind(this, false));\n }\n } catch (err) {\n _iterator18.e(err);\n } finally {\n _iterator18.f();\n }\n\n popup.addEventListener(\"click\", this._hide.bind(this, true));\n wrapper.appendChild(popup);\n return wrapper;\n }\n }, {\n key: \"_formatContents\",\n value: function _formatContents(_ref2) {\n var str = _ref2.str,\n dir = _ref2.dir;\n var p = document.createElement(\"p\");\n p.dir = dir;\n var lines = str.split(/(?:\\r\\n?|\\n)/);\n\n for (var i = 0, ii = lines.length; i < ii; ++i) {\n var line = lines[i];\n p.appendChild(document.createTextNode(line));\n\n if (i < ii - 1) {\n p.appendChild(document.createElement(\"br\"));\n }\n }\n\n return p;\n }\n }, {\n key: \"_toggle\",\n value: function _toggle() {\n if (this.pinned) {\n this._hide(true);\n } else {\n this._show(true);\n }\n }\n }, {\n key: \"_show\",\n value: function _show() {\n var pin = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;\n\n if (pin) {\n this.pinned = true;\n }\n\n if (this.hideElement.hidden) {\n this.hideElement.hidden = false;\n this.container.style.zIndex += 1;\n }\n }\n }, {\n key: \"_hide\",\n value: function _hide() {\n var unpin = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;\n\n if (unpin) {\n this.pinned = false;\n }\n\n if (!this.hideElement.hidden && !this.pinned) {\n this.hideElement.hidden = true;\n this.container.style.zIndex -= 1;\n }\n }\n }]);\n\n return PopupElement;\n}();\n\nvar FreeTextAnnotationElement = /*#__PURE__*/function (_AnnotationElement5) {\n _inherits(FreeTextAnnotationElement, _AnnotationElement5);\n\n var _super10 = _createSuper(FreeTextAnnotationElement);\n\n function FreeTextAnnotationElement(parameters) {\n var _parameters$data$titl3, _parameters$data$cont3;\n\n _classCallCheck(this, FreeTextAnnotationElement);\n\n var isRenderable = !!(parameters.data.hasPopup || (_parameters$data$titl3 = parameters.data.titleObj) !== null && _parameters$data$titl3 !== void 0 && _parameters$data$titl3.str || (_parameters$data$cont3 = parameters.data.contentsObj) !== null && _parameters$data$cont3 !== void 0 && _parameters$data$cont3.str);\n return _super10.call(this, parameters, {\n isRenderable: isRenderable,\n ignoreBorder: true\n });\n }\n\n _createClass(FreeTextAnnotationElement, [{\n key: \"render\",\n value: function render() {\n this.container.className = \"freeTextAnnotation\";\n\n if (!this.data.hasPopup) {\n this._createPopup(null, this.data);\n }\n\n return this.container;\n }\n }]);\n\n return FreeTextAnnotationElement;\n}(AnnotationElement);\n\nvar LineAnnotationElement = /*#__PURE__*/function (_AnnotationElement6) {\n _inherits(LineAnnotationElement, _AnnotationElement6);\n\n var _super11 = _createSuper(LineAnnotationElement);\n\n function LineAnnotationElement(parameters) {\n var _parameters$data$titl4, _parameters$data$cont4;\n\n _classCallCheck(this, LineAnnotationElement);\n\n var isRenderable = !!(parameters.data.hasPopup || (_parameters$data$titl4 = parameters.data.titleObj) !== null && _parameters$data$titl4 !== void 0 && _parameters$data$titl4.str || (_parameters$data$cont4 = parameters.data.contentsObj) !== null && _parameters$data$cont4 !== void 0 && _parameters$data$cont4.str);\n return _super11.call(this, parameters, {\n isRenderable: isRenderable,\n ignoreBorder: true\n });\n }\n\n _createClass(LineAnnotationElement, [{\n key: \"render\",\n value: function render() {\n this.container.className = \"lineAnnotation\";\n var data = this.data;\n var width = data.rect[2] - data.rect[0];\n var height = data.rect[3] - data.rect[1];\n var svg = this.svgFactory.create(width, height);\n var line = this.svgFactory.createElement(\"svg:line\");\n line.setAttribute(\"x1\", data.rect[2] - data.lineCoordinates[0]);\n line.setAttribute(\"y1\", data.rect[3] - data.lineCoordinates[1]);\n line.setAttribute(\"x2\", data.rect[2] - data.lineCoordinates[2]);\n line.setAttribute(\"y2\", data.rect[3] - data.lineCoordinates[3]);\n line.setAttribute(\"stroke-width\", data.borderStyle.width || 1);\n line.setAttribute(\"stroke\", \"transparent\");\n svg.appendChild(line);\n this.container.append(svg);\n\n this._createPopup(line, data);\n\n return this.container;\n }\n }]);\n\n return LineAnnotationElement;\n}(AnnotationElement);\n\nvar SquareAnnotationElement = /*#__PURE__*/function (_AnnotationElement7) {\n _inherits(SquareAnnotationElement, _AnnotationElement7);\n\n var _super12 = _createSuper(SquareAnnotationElement);\n\n function SquareAnnotationElement(parameters) {\n var _parameters$data$titl5, _parameters$data$cont5;\n\n _classCallCheck(this, SquareAnnotationElement);\n\n var isRenderable = !!(parameters.data.hasPopup || (_parameters$data$titl5 = parameters.data.titleObj) !== null && _parameters$data$titl5 !== void 0 && _parameters$data$titl5.str || (_parameters$data$cont5 = parameters.data.contentsObj) !== null && _parameters$data$cont5 !== void 0 && _parameters$data$cont5.str);\n return _super12.call(this, parameters, {\n isRenderable: isRenderable,\n ignoreBorder: true\n });\n }\n\n _createClass(SquareAnnotationElement, [{\n key: \"render\",\n value: function render() {\n this.container.className = \"squareAnnotation\";\n var data = this.data;\n var width = data.rect[2] - data.rect[0];\n var height = data.rect[3] - data.rect[1];\n var svg = this.svgFactory.create(width, height);\n var borderWidth = data.borderStyle.width;\n var square = this.svgFactory.createElement(\"svg:rect\");\n square.setAttribute(\"x\", borderWidth / 2);\n square.setAttribute(\"y\", borderWidth / 2);\n square.setAttribute(\"width\", width - borderWidth);\n square.setAttribute(\"height\", height - borderWidth);\n square.setAttribute(\"stroke-width\", borderWidth || 1);\n square.setAttribute(\"stroke\", \"transparent\");\n square.setAttribute(\"fill\", \"none\");\n svg.appendChild(square);\n this.container.append(svg);\n\n this._createPopup(square, data);\n\n return this.container;\n }\n }]);\n\n return SquareAnnotationElement;\n}(AnnotationElement);\n\nvar CircleAnnotationElement = /*#__PURE__*/function (_AnnotationElement8) {\n _inherits(CircleAnnotationElement, _AnnotationElement8);\n\n var _super13 = _createSuper(CircleAnnotationElement);\n\n function CircleAnnotationElement(parameters) {\n var _parameters$data$titl6, _parameters$data$cont6;\n\n _classCallCheck(this, CircleAnnotationElement);\n\n var isRenderable = !!(parameters.data.hasPopup || (_parameters$data$titl6 = parameters.data.titleObj) !== null && _parameters$data$titl6 !== void 0 && _parameters$data$titl6.str || (_parameters$data$cont6 = parameters.data.contentsObj) !== null && _parameters$data$cont6 !== void 0 && _parameters$data$cont6.str);\n return _super13.call(this, parameters, {\n isRenderable: isRenderable,\n ignoreBorder: true\n });\n }\n\n _createClass(CircleAnnotationElement, [{\n key: \"render\",\n value: function render() {\n this.container.className = \"circleAnnotation\";\n var data = this.data;\n var width = data.rect[2] - data.rect[0];\n var height = data.rect[3] - data.rect[1];\n var svg = this.svgFactory.create(width, height);\n var borderWidth = data.borderStyle.width;\n var circle = this.svgFactory.createElement(\"svg:ellipse\");\n circle.setAttribute(\"cx\", width / 2);\n circle.setAttribute(\"cy\", height / 2);\n circle.setAttribute(\"rx\", width / 2 - borderWidth / 2);\n circle.setAttribute(\"ry\", height / 2 - borderWidth / 2);\n circle.setAttribute(\"stroke-width\", borderWidth || 1);\n circle.setAttribute(\"stroke\", \"transparent\");\n circle.setAttribute(\"fill\", \"none\");\n svg.appendChild(circle);\n this.container.append(svg);\n\n this._createPopup(circle, data);\n\n return this.container;\n }\n }]);\n\n return CircleAnnotationElement;\n}(AnnotationElement);\n\nvar PolylineAnnotationElement = /*#__PURE__*/function (_AnnotationElement9) {\n _inherits(PolylineAnnotationElement, _AnnotationElement9);\n\n var _super14 = _createSuper(PolylineAnnotationElement);\n\n function PolylineAnnotationElement(parameters) {\n var _parameters$data$titl7, _parameters$data$cont7;\n\n var _this11;\n\n _classCallCheck(this, PolylineAnnotationElement);\n\n var isRenderable = !!(parameters.data.hasPopup || (_parameters$data$titl7 = parameters.data.titleObj) !== null && _parameters$data$titl7 !== void 0 && _parameters$data$titl7.str || (_parameters$data$cont7 = parameters.data.contentsObj) !== null && _parameters$data$cont7 !== void 0 && _parameters$data$cont7.str);\n _this11 = _super14.call(this, parameters, {\n isRenderable: isRenderable,\n ignoreBorder: true\n });\n _this11.containerClassName = \"polylineAnnotation\";\n _this11.svgElementName = \"svg:polyline\";\n return _this11;\n }\n\n _createClass(PolylineAnnotationElement, [{\n key: \"render\",\n value: function render() {\n this.container.className = this.containerClassName;\n var data = this.data;\n var width = data.rect[2] - data.rect[0];\n var height = data.rect[3] - data.rect[1];\n var svg = this.svgFactory.create(width, height);\n var points = [];\n\n var _iterator19 = _createForOfIteratorHelper(data.vertices),\n _step19;\n\n try {\n for (_iterator19.s(); !(_step19 = _iterator19.n()).done;) {\n var coordinate = _step19.value;\n var x = coordinate.x - data.rect[0];\n var y = data.rect[3] - coordinate.y;\n points.push(x + \",\" + y);\n }\n } catch (err) {\n _iterator19.e(err);\n } finally {\n _iterator19.f();\n }\n\n points = points.join(\" \");\n var polyline = this.svgFactory.createElement(this.svgElementName);\n polyline.setAttribute(\"points\", points);\n polyline.setAttribute(\"stroke-width\", data.borderStyle.width || 1);\n polyline.setAttribute(\"stroke\", \"transparent\");\n polyline.setAttribute(\"fill\", \"none\");\n svg.appendChild(polyline);\n this.container.append(svg);\n\n this._createPopup(polyline, data);\n\n return this.container;\n }\n }]);\n\n return PolylineAnnotationElement;\n}(AnnotationElement);\n\nvar PolygonAnnotationElement = /*#__PURE__*/function (_PolylineAnnotationEl) {\n _inherits(PolygonAnnotationElement, _PolylineAnnotationEl);\n\n var _super15 = _createSuper(PolygonAnnotationElement);\n\n function PolygonAnnotationElement(parameters) {\n var _this12;\n\n _classCallCheck(this, PolygonAnnotationElement);\n\n _this12 = _super15.call(this, parameters);\n _this12.containerClassName = \"polygonAnnotation\";\n _this12.svgElementName = \"svg:polygon\";\n return _this12;\n }\n\n return PolygonAnnotationElement;\n}(PolylineAnnotationElement);\n\nvar CaretAnnotationElement = /*#__PURE__*/function (_AnnotationElement10) {\n _inherits(CaretAnnotationElement, _AnnotationElement10);\n\n var _super16 = _createSuper(CaretAnnotationElement);\n\n function CaretAnnotationElement(parameters) {\n var _parameters$data$titl8, _parameters$data$cont8;\n\n _classCallCheck(this, CaretAnnotationElement);\n\n var isRenderable = !!(parameters.data.hasPopup || (_parameters$data$titl8 = parameters.data.titleObj) !== null && _parameters$data$titl8 !== void 0 && _parameters$data$titl8.str || (_parameters$data$cont8 = parameters.data.contentsObj) !== null && _parameters$data$cont8 !== void 0 && _parameters$data$cont8.str);\n return _super16.call(this, parameters, {\n isRenderable: isRenderable,\n ignoreBorder: true\n });\n }\n\n _createClass(CaretAnnotationElement, [{\n key: \"render\",\n value: function render() {\n this.container.className = \"caretAnnotation\";\n\n if (!this.data.hasPopup) {\n this._createPopup(null, this.data);\n }\n\n return this.container;\n }\n }]);\n\n return CaretAnnotationElement;\n}(AnnotationElement);\n\nvar InkAnnotationElement = /*#__PURE__*/function (_AnnotationElement11) {\n _inherits(InkAnnotationElement, _AnnotationElement11);\n\n var _super17 = _createSuper(InkAnnotationElement);\n\n function InkAnnotationElement(parameters) {\n var _parameters$data$titl9, _parameters$data$cont9;\n\n var _this13;\n\n _classCallCheck(this, InkAnnotationElement);\n\n var isRenderable = !!(parameters.data.hasPopup || (_parameters$data$titl9 = parameters.data.titleObj) !== null && _parameters$data$titl9 !== void 0 && _parameters$data$titl9.str || (_parameters$data$cont9 = parameters.data.contentsObj) !== null && _parameters$data$cont9 !== void 0 && _parameters$data$cont9.str);\n _this13 = _super17.call(this, parameters, {\n isRenderable: isRenderable,\n ignoreBorder: true\n });\n _this13.containerClassName = \"inkAnnotation\";\n _this13.svgElementName = \"svg:polyline\";\n return _this13;\n }\n\n _createClass(InkAnnotationElement, [{\n key: \"render\",\n value: function render() {\n this.container.className = this.containerClassName;\n var data = this.data;\n var width = data.rect[2] - data.rect[0];\n var height = data.rect[3] - data.rect[1];\n var svg = this.svgFactory.create(width, height);\n\n var _iterator20 = _createForOfIteratorHelper(data.inkLists),\n _step20;\n\n try {\n for (_iterator20.s(); !(_step20 = _iterator20.n()).done;) {\n var inkList = _step20.value;\n var points = [];\n\n var _iterator21 = _createForOfIteratorHelper(inkList),\n _step21;\n\n try {\n for (_iterator21.s(); !(_step21 = _iterator21.n()).done;) {\n var coordinate = _step21.value;\n var x = coordinate.x - data.rect[0];\n var y = data.rect[3] - coordinate.y;\n points.push(\"\".concat(x, \",\").concat(y));\n }\n } catch (err) {\n _iterator21.e(err);\n } finally {\n _iterator21.f();\n }\n\n points = points.join(\" \");\n var polyline = this.svgFactory.createElement(this.svgElementName);\n polyline.setAttribute(\"points\", points);\n polyline.setAttribute(\"stroke-width\", data.borderStyle.width || 1);\n polyline.setAttribute(\"stroke\", \"transparent\");\n polyline.setAttribute(\"fill\", \"none\");\n\n this._createPopup(polyline, data);\n\n svg.appendChild(polyline);\n }\n } catch (err) {\n _iterator20.e(err);\n } finally {\n _iterator20.f();\n }\n\n this.container.append(svg);\n return this.container;\n }\n }]);\n\n return InkAnnotationElement;\n}(AnnotationElement);\n\nvar HighlightAnnotationElement = /*#__PURE__*/function (_AnnotationElement12) {\n _inherits(HighlightAnnotationElement, _AnnotationElement12);\n\n var _super18 = _createSuper(HighlightAnnotationElement);\n\n function HighlightAnnotationElement(parameters) {\n var _parameters$data$titl10, _parameters$data$cont10;\n\n _classCallCheck(this, HighlightAnnotationElement);\n\n var isRenderable = !!(parameters.data.hasPopup || (_parameters$data$titl10 = parameters.data.titleObj) !== null && _parameters$data$titl10 !== void 0 && _parameters$data$titl10.str || (_parameters$data$cont10 = parameters.data.contentsObj) !== null && _parameters$data$cont10 !== void 0 && _parameters$data$cont10.str);\n return _super18.call(this, parameters, {\n isRenderable: isRenderable,\n ignoreBorder: true,\n createQuadrilaterals: true\n });\n }\n\n _createClass(HighlightAnnotationElement, [{\n key: \"render\",\n value: function render() {\n if (!this.data.hasPopup) {\n this._createPopup(null, this.data);\n }\n\n if (this.quadrilaterals) {\n return this._renderQuadrilaterals(\"highlightAnnotation\");\n }\n\n this.container.className = \"highlightAnnotation\";\n return this.container;\n }\n }]);\n\n return HighlightAnnotationElement;\n}(AnnotationElement);\n\nvar UnderlineAnnotationElement = /*#__PURE__*/function (_AnnotationElement13) {\n _inherits(UnderlineAnnotationElement, _AnnotationElement13);\n\n var _super19 = _createSuper(UnderlineAnnotationElement);\n\n function UnderlineAnnotationElement(parameters) {\n var _parameters$data$titl11, _parameters$data$cont11;\n\n _classCallCheck(this, UnderlineAnnotationElement);\n\n var isRenderable = !!(parameters.data.hasPopup || (_parameters$data$titl11 = parameters.data.titleObj) !== null && _parameters$data$titl11 !== void 0 && _parameters$data$titl11.str || (_parameters$data$cont11 = parameters.data.contentsObj) !== null && _parameters$data$cont11 !== void 0 && _parameters$data$cont11.str);\n return _super19.call(this, parameters, {\n isRenderable: isRenderable,\n ignoreBorder: true,\n createQuadrilaterals: true\n });\n }\n\n _createClass(UnderlineAnnotationElement, [{\n key: \"render\",\n value: function render() {\n if (!this.data.hasPopup) {\n this._createPopup(null, this.data);\n }\n\n if (this.quadrilaterals) {\n return this._renderQuadrilaterals(\"underlineAnnotation\");\n }\n\n this.container.className = \"underlineAnnotation\";\n return this.container;\n }\n }]);\n\n return UnderlineAnnotationElement;\n}(AnnotationElement);\n\nvar SquigglyAnnotationElement = /*#__PURE__*/function (_AnnotationElement14) {\n _inherits(SquigglyAnnotationElement, _AnnotationElement14);\n\n var _super20 = _createSuper(SquigglyAnnotationElement);\n\n function SquigglyAnnotationElement(parameters) {\n var _parameters$data$titl12, _parameters$data$cont12;\n\n _classCallCheck(this, SquigglyAnnotationElement);\n\n var isRenderable = !!(parameters.data.hasPopup || (_parameters$data$titl12 = parameters.data.titleObj) !== null && _parameters$data$titl12 !== void 0 && _parameters$data$titl12.str || (_parameters$data$cont12 = parameters.data.contentsObj) !== null && _parameters$data$cont12 !== void 0 && _parameters$data$cont12.str);\n return _super20.call(this, parameters, {\n isRenderable: isRenderable,\n ignoreBorder: true,\n createQuadrilaterals: true\n });\n }\n\n _createClass(SquigglyAnnotationElement, [{\n key: \"render\",\n value: function render() {\n if (!this.data.hasPopup) {\n this._createPopup(null, this.data);\n }\n\n if (this.quadrilaterals) {\n return this._renderQuadrilaterals(\"squigglyAnnotation\");\n }\n\n this.container.className = \"squigglyAnnotation\";\n return this.container;\n }\n }]);\n\n return SquigglyAnnotationElement;\n}(AnnotationElement);\n\nvar StrikeOutAnnotationElement = /*#__PURE__*/function (_AnnotationElement15) {\n _inherits(StrikeOutAnnotationElement, _AnnotationElement15);\n\n var _super21 = _createSuper(StrikeOutAnnotationElement);\n\n function StrikeOutAnnotationElement(parameters) {\n var _parameters$data$titl13, _parameters$data$cont13;\n\n _classCallCheck(this, StrikeOutAnnotationElement);\n\n var isRenderable = !!(parameters.data.hasPopup || (_parameters$data$titl13 = parameters.data.titleObj) !== null && _parameters$data$titl13 !== void 0 && _parameters$data$titl13.str || (_parameters$data$cont13 = parameters.data.contentsObj) !== null && _parameters$data$cont13 !== void 0 && _parameters$data$cont13.str);\n return _super21.call(this, parameters, {\n isRenderable: isRenderable,\n ignoreBorder: true,\n createQuadrilaterals: true\n });\n }\n\n _createClass(StrikeOutAnnotationElement, [{\n key: \"render\",\n value: function render() {\n if (!this.data.hasPopup) {\n this._createPopup(null, this.data);\n }\n\n if (this.quadrilaterals) {\n return this._renderQuadrilaterals(\"strikeoutAnnotation\");\n }\n\n this.container.className = \"strikeoutAnnotation\";\n return this.container;\n }\n }]);\n\n return StrikeOutAnnotationElement;\n}(AnnotationElement);\n\nvar StampAnnotationElement = /*#__PURE__*/function (_AnnotationElement16) {\n _inherits(StampAnnotationElement, _AnnotationElement16);\n\n var _super22 = _createSuper(StampAnnotationElement);\n\n function StampAnnotationElement(parameters) {\n var _parameters$data$titl14, _parameters$data$cont14;\n\n _classCallCheck(this, StampAnnotationElement);\n\n var isRenderable = !!(parameters.data.hasPopup || (_parameters$data$titl14 = parameters.data.titleObj) !== null && _parameters$data$titl14 !== void 0 && _parameters$data$titl14.str || (_parameters$data$cont14 = parameters.data.contentsObj) !== null && _parameters$data$cont14 !== void 0 && _parameters$data$cont14.str);\n return _super22.call(this, parameters, {\n isRenderable: isRenderable,\n ignoreBorder: true\n });\n }\n\n _createClass(StampAnnotationElement, [{\n key: \"render\",\n value: function render() {\n this.container.className = \"stampAnnotation\";\n\n if (!this.data.hasPopup) {\n this._createPopup(null, this.data);\n }\n\n return this.container;\n }\n }]);\n\n return StampAnnotationElement;\n}(AnnotationElement);\n\nvar FileAttachmentAnnotationElement = /*#__PURE__*/function (_AnnotationElement17) {\n _inherits(FileAttachmentAnnotationElement, _AnnotationElement17);\n\n var _super23 = _createSuper(FileAttachmentAnnotationElement);\n\n function FileAttachmentAnnotationElement(parameters) {\n var _this14$linkService$e;\n\n var _this14;\n\n _classCallCheck(this, FileAttachmentAnnotationElement);\n\n _this14 = _super23.call(this, parameters, {\n isRenderable: true\n });\n var _this14$data$file = _this14.data.file,\n filename = _this14$data$file.filename,\n content = _this14$data$file.content;\n _this14.filename = (0, _display_utils.getFilenameFromUrl)(filename);\n _this14.content = content;\n (_this14$linkService$e = _this14.linkService.eventBus) === null || _this14$linkService$e === void 0 ? void 0 : _this14$linkService$e.dispatch(\"fileattachmentannotation\", {\n source: _assertThisInitialized(_this14),\n id: (0, _util.stringToPDFString)(filename),\n filename: filename,\n content: content\n });\n return _this14;\n }\n\n _createClass(FileAttachmentAnnotationElement, [{\n key: \"render\",\n value: function render() {\n var _this$data$titleObj, _this$data$contentsOb;\n\n this.container.className = \"fileAttachmentAnnotation\";\n var trigger = document.createElement(\"div\");\n trigger.style.height = this.container.style.height;\n trigger.style.width = this.container.style.width;\n trigger.addEventListener(\"dblclick\", this._download.bind(this));\n\n if (!this.data.hasPopup && ((_this$data$titleObj = this.data.titleObj) !== null && _this$data$titleObj !== void 0 && _this$data$titleObj.str || (_this$data$contentsOb = this.data.contentsObj) !== null && _this$data$contentsOb !== void 0 && _this$data$contentsOb.str)) {\n this._createPopup(trigger, this.data);\n }\n\n this.container.appendChild(trigger);\n return this.container;\n }\n }, {\n key: \"_download\",\n value: function _download() {\n var _this$downloadManager;\n\n (_this$downloadManager = this.downloadManager) === null || _this$downloadManager === void 0 ? void 0 : _this$downloadManager.openOrDownloadData(this.container, this.content, this.filename);\n }\n }]);\n\n return FileAttachmentAnnotationElement;\n}(AnnotationElement);\n\nvar AnnotationLayer = /*#__PURE__*/function () {\n function AnnotationLayer() {\n _classCallCheck(this, AnnotationLayer);\n }\n\n _createClass(AnnotationLayer, null, [{\n key: \"render\",\n value: function render(parameters) {\n var sortedAnnotations = [],\n popupAnnotations = [];\n\n var _iterator22 = _createForOfIteratorHelper(parameters.annotations),\n _step22;\n\n try {\n for (_iterator22.s(); !(_step22 = _iterator22.n()).done;) {\n var _data = _step22.value;\n\n if (!_data) {\n continue;\n }\n\n if (_data.annotationType === _util.AnnotationType.POPUP) {\n popupAnnotations.push(_data);\n continue;\n }\n\n sortedAnnotations.push(_data);\n }\n } catch (err) {\n _iterator22.e(err);\n } finally {\n _iterator22.f();\n }\n\n if (popupAnnotations.length) {\n sortedAnnotations.push.apply(sortedAnnotations, popupAnnotations);\n }\n\n for (var _i6 = 0, _sortedAnnotations = sortedAnnotations; _i6 < _sortedAnnotations.length; _i6++) {\n var data = _sortedAnnotations[_i6];\n var element = AnnotationElementFactory.create({\n data: data,\n layer: parameters.div,\n page: parameters.page,\n viewport: parameters.viewport,\n linkService: parameters.linkService,\n downloadManager: parameters.downloadManager,\n imageResourcesPath: parameters.imageResourcesPath || \"\",\n renderForms: parameters.renderForms !== false,\n svgFactory: new _display_utils.DOMSVGFactory(),\n annotationStorage: parameters.annotationStorage || new _annotation_storage.AnnotationStorage(),\n enableScripting: parameters.enableScripting,\n hasJSActions: parameters.hasJSActions,\n fieldObjects: parameters.fieldObjects,\n mouseState: parameters.mouseState || {\n isDown: false\n }\n });\n\n if (element.isRenderable) {\n var rendered = element.render();\n\n if (data.hidden) {\n rendered.style.visibility = \"hidden\";\n }\n\n if (Array.isArray(rendered)) {\n var _iterator23 = _createForOfIteratorHelper(rendered),\n _step23;\n\n try {\n for (_iterator23.s(); !(_step23 = _iterator23.n()).done;) {\n var renderedElement = _step23.value;\n parameters.div.appendChild(renderedElement);\n }\n } catch (err) {\n _iterator23.e(err);\n } finally {\n _iterator23.f();\n }\n } else {\n if (element instanceof PopupAnnotationElement) {\n parameters.div.prepend(rendered);\n } else {\n parameters.div.appendChild(rendered);\n }\n }\n }\n }\n }\n }, {\n key: \"update\",\n value: function update(parameters) {\n var transform = \"matrix(\".concat(parameters.viewport.transform.join(\",\"), \")\");\n\n var _iterator24 = _createForOfIteratorHelper(parameters.annotations),\n _step24;\n\n try {\n for (_iterator24.s(); !(_step24 = _iterator24.n()).done;) {\n var data = _step24.value;\n var elements = parameters.div.querySelectorAll(\"[data-annotation-id=\\\"\".concat(data.id, \"\\\"]\"));\n\n if (elements) {\n var _iterator25 = _createForOfIteratorHelper(elements),\n _step25;\n\n try {\n for (_iterator25.s(); !(_step25 = _iterator25.n()).done;) {\n var element = _step25.value;\n element.style.transform = transform;\n }\n } catch (err) {\n _iterator25.e(err);\n } finally {\n _iterator25.f();\n }\n }\n }\n } catch (err) {\n _iterator24.e(err);\n } finally {\n _iterator24.f();\n }\n\n parameters.div.hidden = false;\n }\n }]);\n\n return AnnotationLayer;\n}();\n\nexports.AnnotationLayer = AnnotationLayer;\n\n/***/ }),\n/* 132 */\n/***/ ((__unused_webpack_module, exports) => {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.ColorConverters = void 0;\n\nfunction _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }\n\nfunction _nonIterableRest() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\nfunction _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== \"undefined\" && arr[Symbol.iterator] || arr[\"@@iterator\"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"] != null) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; }\n\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction makeColorComp(n) {\n return Math.floor(Math.max(0, Math.min(1, n)) * 255).toString(16).padStart(2, \"0\");\n}\n\nvar ColorConverters = /*#__PURE__*/function () {\n function ColorConverters() {\n _classCallCheck(this, ColorConverters);\n }\n\n _createClass(ColorConverters, null, [{\n key: \"CMYK_G\",\n value: function CMYK_G(_ref) {\n var _ref2 = _slicedToArray(_ref, 4),\n c = _ref2[0],\n y = _ref2[1],\n m = _ref2[2],\n k = _ref2[3];\n\n return [\"G\", 1 - Math.min(1, 0.3 * c + 0.59 * m + 0.11 * y + k)];\n }\n }, {\n key: \"G_CMYK\",\n value: function G_CMYK(_ref3) {\n var _ref4 = _slicedToArray(_ref3, 1),\n g = _ref4[0];\n\n return [\"CMYK\", 0, 0, 0, 1 - g];\n }\n }, {\n key: \"G_RGB\",\n value: function G_RGB(_ref5) {\n var _ref6 = _slicedToArray(_ref5, 1),\n g = _ref6[0];\n\n return [\"RGB\", g, g, g];\n }\n }, {\n key: \"G_HTML\",\n value: function G_HTML(_ref7) {\n var _ref8 = _slicedToArray(_ref7, 1),\n g = _ref8[0];\n\n var G = makeColorComp(g);\n return \"#\".concat(G).concat(G).concat(G);\n }\n }, {\n key: \"RGB_G\",\n value: function RGB_G(_ref9) {\n var _ref10 = _slicedToArray(_ref9, 3),\n r = _ref10[0],\n g = _ref10[1],\n b = _ref10[2];\n\n return [\"G\", 0.3 * r + 0.59 * g + 0.11 * b];\n }\n }, {\n key: \"RGB_HTML\",\n value: function RGB_HTML(_ref11) {\n var _ref12 = _slicedToArray(_ref11, 3),\n r = _ref12[0],\n g = _ref12[1],\n b = _ref12[2];\n\n var R = makeColorComp(r);\n var G = makeColorComp(g);\n var B = makeColorComp(b);\n return \"#\".concat(R).concat(G).concat(B);\n }\n }, {\n key: \"T_HTML\",\n value: function T_HTML() {\n return \"#00000000\";\n }\n }, {\n key: \"CMYK_RGB\",\n value: function CMYK_RGB(_ref13) {\n var _ref14 = _slicedToArray(_ref13, 4),\n c = _ref14[0],\n y = _ref14[1],\n m = _ref14[2],\n k = _ref14[3];\n\n return [\"RGB\", 1 - Math.min(1, c + k), 1 - Math.min(1, m + k), 1 - Math.min(1, y + k)];\n }\n }, {\n key: \"CMYK_HTML\",\n value: function CMYK_HTML(components) {\n return this.RGB_HTML(this.CMYK_RGB(components));\n }\n }, {\n key: \"RGB_CMYK\",\n value: function RGB_CMYK(_ref15) {\n var _ref16 = _slicedToArray(_ref15, 3),\n r = _ref16[0],\n g = _ref16[1],\n b = _ref16[2];\n\n var c = 1 - r;\n var m = 1 - g;\n var y = 1 - b;\n var k = Math.min(c, m, y);\n return [\"CMYK\", c, m, y, k];\n }\n }]);\n\n return ColorConverters;\n}();\n\nexports.ColorConverters = ColorConverters;\n\n/***/ }),\n/* 133 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.renderTextLayer = renderTextLayer;\n\nvar _util = __w_pdfjs_require__(4);\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it[\"return\"] != null) it[\"return\"](); } finally { if (didErr) throw err; } } }; }\n\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\nvar MAX_TEXT_DIVS_TO_RENDER = 100000;\nvar DEFAULT_FONT_SIZE = 30;\nvar DEFAULT_FONT_ASCENT = 0.8;\nvar ascentCache = new Map();\nvar AllWhitespaceRegexp = /^\\s+$/g;\n\nfunction getAscent(fontFamily, ctx) {\n var cachedAscent = ascentCache.get(fontFamily);\n\n if (cachedAscent) {\n return cachedAscent;\n }\n\n ctx.save();\n ctx.font = \"\".concat(DEFAULT_FONT_SIZE, \"px \").concat(fontFamily);\n var metrics = ctx.measureText(\"\");\n var ascent = metrics.fontBoundingBoxAscent;\n var descent = Math.abs(metrics.fontBoundingBoxDescent);\n\n if (ascent) {\n ctx.restore();\n var ratio = ascent / (ascent + descent);\n ascentCache.set(fontFamily, ratio);\n return ratio;\n }\n\n ctx.strokeStyle = \"red\";\n ctx.clearRect(0, 0, DEFAULT_FONT_SIZE, DEFAULT_FONT_SIZE);\n ctx.strokeText(\"g\", 0, 0);\n var pixels = ctx.getImageData(0, 0, DEFAULT_FONT_SIZE, DEFAULT_FONT_SIZE).data;\n descent = 0;\n\n for (var i = pixels.length - 1 - 3; i >= 0; i -= 4) {\n if (pixels[i] > 0) {\n descent = Math.ceil(i / 4 / DEFAULT_FONT_SIZE);\n break;\n }\n }\n\n ctx.clearRect(0, 0, DEFAULT_FONT_SIZE, DEFAULT_FONT_SIZE);\n ctx.strokeText(\"A\", 0, DEFAULT_FONT_SIZE);\n pixels = ctx.getImageData(0, 0, DEFAULT_FONT_SIZE, DEFAULT_FONT_SIZE).data;\n ascent = 0;\n\n for (var _i = 0, ii = pixels.length; _i < ii; _i += 4) {\n if (pixels[_i] > 0) {\n ascent = DEFAULT_FONT_SIZE - Math.floor(_i / 4 / DEFAULT_FONT_SIZE);\n break;\n }\n }\n\n ctx.restore();\n\n if (ascent) {\n var _ratio = ascent / (ascent + descent);\n\n ascentCache.set(fontFamily, _ratio);\n return _ratio;\n }\n\n ascentCache.set(fontFamily, DEFAULT_FONT_ASCENT);\n return DEFAULT_FONT_ASCENT;\n}\n\nfunction appendText(task, geom, styles, ctx) {\n var textDiv = document.createElement(\"span\");\n var textDivProperties = task._enhanceTextSelection ? {\n angle: 0,\n canvasWidth: 0,\n hasText: geom.str !== \"\",\n hasEOL: geom.hasEOL,\n originalTransform: null,\n paddingBottom: 0,\n paddingLeft: 0,\n paddingRight: 0,\n paddingTop: 0,\n scale: 1\n } : {\n angle: 0,\n canvasWidth: 0,\n hasText: geom.str !== \"\",\n hasEOL: geom.hasEOL\n };\n\n task._textDivs.push(textDiv);\n\n var tx = _util.Util.transform(task._viewport.transform, geom.transform);\n\n var angle = Math.atan2(tx[1], tx[0]);\n var style = styles[geom.fontName];\n\n if (style.vertical) {\n angle += Math.PI / 2;\n }\n\n var fontHeight = Math.hypot(tx[2], tx[3]);\n var fontAscent = fontHeight * getAscent(style.fontFamily, ctx);\n var left, top;\n\n if (angle === 0) {\n left = tx[4];\n top = tx[5] - fontAscent;\n } else {\n left = tx[4] + fontAscent * Math.sin(angle);\n top = tx[5] - fontAscent * Math.cos(angle);\n }\n\n textDiv.style.left = \"\".concat(left, \"px\");\n textDiv.style.top = \"\".concat(top, \"px\");\n textDiv.style.fontSize = \"\".concat(fontHeight, \"px\");\n textDiv.style.fontFamily = style.fontFamily;\n textDiv.setAttribute(\"role\", \"presentation\");\n textDiv.textContent = geom.str;\n textDiv.dir = geom.dir;\n\n if (task._fontInspectorEnabled) {\n textDiv.dataset.fontName = geom.fontName;\n }\n\n if (angle !== 0) {\n textDivProperties.angle = angle * (180 / Math.PI);\n }\n\n var shouldScaleText = false;\n\n if (geom.str.length > 1 || task._enhanceTextSelection && AllWhitespaceRegexp.test(geom.str)) {\n shouldScaleText = true;\n } else if (geom.transform[0] !== geom.transform[3]) {\n var absScaleX = Math.abs(geom.transform[0]),\n absScaleY = Math.abs(geom.transform[3]);\n\n if (absScaleX !== absScaleY && Math.max(absScaleX, absScaleY) / Math.min(absScaleX, absScaleY) > 1.5) {\n shouldScaleText = true;\n }\n }\n\n if (shouldScaleText) {\n if (style.vertical) {\n textDivProperties.canvasWidth = geom.height * task._viewport.scale;\n } else {\n textDivProperties.canvasWidth = geom.width * task._viewport.scale;\n }\n }\n\n task._textDivProperties.set(textDiv, textDivProperties);\n\n if (task._textContentStream) {\n task._layoutText(textDiv);\n }\n\n if (task._enhanceTextSelection && textDivProperties.hasText) {\n var angleCos = 1,\n angleSin = 0;\n\n if (angle !== 0) {\n angleCos = Math.cos(angle);\n angleSin = Math.sin(angle);\n }\n\n var divWidth = (style.vertical ? geom.height : geom.width) * task._viewport.scale;\n var divHeight = fontHeight;\n var m, b;\n\n if (angle !== 0) {\n m = [angleCos, angleSin, -angleSin, angleCos, left, top];\n b = _util.Util.getAxialAlignedBoundingBox([0, 0, divWidth, divHeight], m);\n } else {\n b = [left, top, left + divWidth, top + divHeight];\n }\n\n task._bounds.push({\n left: b[0],\n top: b[1],\n right: b[2],\n bottom: b[3],\n div: textDiv,\n size: [divWidth, divHeight],\n m: m\n });\n }\n}\n\nfunction render(task) {\n if (task._canceled) {\n return;\n }\n\n var textDivs = task._textDivs;\n var capability = task._capability;\n var textDivsLength = textDivs.length;\n\n if (textDivsLength > MAX_TEXT_DIVS_TO_RENDER) {\n task._renderingDone = true;\n capability.resolve();\n return;\n }\n\n if (!task._textContentStream) {\n for (var i = 0; i < textDivsLength; i++) {\n task._layoutText(textDivs[i]);\n }\n }\n\n task._renderingDone = true;\n capability.resolve();\n}\n\nfunction findPositiveMin(ts, offset, count) {\n var result = 0;\n\n for (var i = 0; i < count; i++) {\n var t = ts[offset++];\n\n if (t > 0) {\n result = result ? Math.min(t, result) : t;\n }\n }\n\n return result;\n}\n\nfunction expand(task) {\n var bounds = task._bounds;\n var viewport = task._viewport;\n var expanded = expandBounds(viewport.width, viewport.height, bounds);\n\n for (var i = 0; i < expanded.length; i++) {\n var div = bounds[i].div;\n\n var divProperties = task._textDivProperties.get(div);\n\n if (divProperties.angle === 0) {\n divProperties.paddingLeft = bounds[i].left - expanded[i].left;\n divProperties.paddingTop = bounds[i].top - expanded[i].top;\n divProperties.paddingRight = expanded[i].right - bounds[i].right;\n divProperties.paddingBottom = expanded[i].bottom - bounds[i].bottom;\n\n task._textDivProperties.set(div, divProperties);\n\n continue;\n }\n\n var e = expanded[i],\n b = bounds[i];\n var m = b.m,\n c = m[0],\n s = m[1];\n var points = [[0, 0], [0, b.size[1]], [b.size[0], 0], b.size];\n var ts = new Float64Array(64);\n\n for (var j = 0, jj = points.length; j < jj; j++) {\n var t = _util.Util.applyTransform(points[j], m);\n\n ts[j + 0] = c && (e.left - t[0]) / c;\n ts[j + 4] = s && (e.top - t[1]) / s;\n ts[j + 8] = c && (e.right - t[0]) / c;\n ts[j + 12] = s && (e.bottom - t[1]) / s;\n ts[j + 16] = s && (e.left - t[0]) / -s;\n ts[j + 20] = c && (e.top - t[1]) / c;\n ts[j + 24] = s && (e.right - t[0]) / -s;\n ts[j + 28] = c && (e.bottom - t[1]) / c;\n ts[j + 32] = c && (e.left - t[0]) / -c;\n ts[j + 36] = s && (e.top - t[1]) / -s;\n ts[j + 40] = c && (e.right - t[0]) / -c;\n ts[j + 44] = s && (e.bottom - t[1]) / -s;\n ts[j + 48] = s && (e.left - t[0]) / s;\n ts[j + 52] = c && (e.top - t[1]) / -c;\n ts[j + 56] = s && (e.right - t[0]) / s;\n ts[j + 60] = c && (e.bottom - t[1]) / -c;\n }\n\n var boxScale = 1 + Math.min(Math.abs(c), Math.abs(s));\n divProperties.paddingLeft = findPositiveMin(ts, 32, 16) / boxScale;\n divProperties.paddingTop = findPositiveMin(ts, 48, 16) / boxScale;\n divProperties.paddingRight = findPositiveMin(ts, 0, 16) / boxScale;\n divProperties.paddingBottom = findPositiveMin(ts, 16, 16) / boxScale;\n\n task._textDivProperties.set(div, divProperties);\n }\n}\n\nfunction expandBounds(width, height, boxes) {\n var bounds = boxes.map(function (box, i) {\n return {\n x1: box.left,\n y1: box.top,\n x2: box.right,\n y2: box.bottom,\n index: i,\n x1New: undefined,\n x2New: undefined\n };\n });\n expandBoundsLTR(width, bounds);\n var expanded = new Array(boxes.length);\n\n var _iterator = _createForOfIteratorHelper(bounds),\n _step;\n\n try {\n for (_iterator.s(); !(_step = _iterator.n()).done;) {\n var b = _step.value;\n var i = b.index;\n expanded[i] = {\n left: b.x1New,\n top: 0,\n right: b.x2New,\n bottom: 0\n };\n }\n } catch (err) {\n _iterator.e(err);\n } finally {\n _iterator.f();\n }\n\n boxes.map(function (box, i) {\n var e = expanded[i],\n b = bounds[i];\n b.x1 = box.top;\n b.y1 = width - e.right;\n b.x2 = box.bottom;\n b.y2 = width - e.left;\n b.index = i;\n b.x1New = undefined;\n b.x2New = undefined;\n });\n expandBoundsLTR(height, bounds);\n\n var _iterator2 = _createForOfIteratorHelper(bounds),\n _step2;\n\n try {\n for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {\n var _b = _step2.value;\n var _i2 = _b.index;\n expanded[_i2].top = _b.x1New;\n expanded[_i2].bottom = _b.x2New;\n }\n } catch (err) {\n _iterator2.e(err);\n } finally {\n _iterator2.f();\n }\n\n return expanded;\n}\n\nfunction expandBoundsLTR(width, bounds) {\n bounds.sort(function (a, b) {\n return a.x1 - b.x1 || a.index - b.index;\n });\n var fakeBoundary = {\n x1: -Infinity,\n y1: -Infinity,\n x2: 0,\n y2: Infinity,\n index: -1,\n x1New: 0,\n x2New: 0\n };\n var horizon = [{\n start: -Infinity,\n end: Infinity,\n boundary: fakeBoundary\n }];\n\n var _iterator3 = _createForOfIteratorHelper(bounds),\n _step3;\n\n try {\n for (_iterator3.s(); !(_step3 = _iterator3.n()).done;) {\n var boundary = _step3.value;\n var i = 0;\n\n while (i < horizon.length && horizon[i].end <= boundary.y1) {\n i++;\n }\n\n var j = horizon.length - 1;\n\n while (j >= 0 && horizon[j].start >= boundary.y2) {\n j--;\n }\n\n var _horizonPart = void 0,\n _affectedBoundary = void 0;\n\n var q = void 0,\n k = void 0,\n maxXNew = -Infinity;\n\n for (q = i; q <= j; q++) {\n _horizonPart = horizon[q];\n _affectedBoundary = _horizonPart.boundary;\n var xNew = void 0;\n\n if (_affectedBoundary.x2 > boundary.x1) {\n xNew = _affectedBoundary.index > boundary.index ? _affectedBoundary.x1New : boundary.x1;\n } else if (_affectedBoundary.x2New === undefined) {\n xNew = (_affectedBoundary.x2 + boundary.x1) / 2;\n } else {\n xNew = _affectedBoundary.x2New;\n }\n\n if (xNew > maxXNew) {\n maxXNew = xNew;\n }\n }\n\n boundary.x1New = maxXNew;\n\n for (q = i; q <= j; q++) {\n _horizonPart = horizon[q];\n _affectedBoundary = _horizonPart.boundary;\n\n if (_affectedBoundary.x2New === undefined) {\n if (_affectedBoundary.x2 > boundary.x1) {\n if (_affectedBoundary.index > boundary.index) {\n _affectedBoundary.x2New = _affectedBoundary.x2;\n }\n } else {\n _affectedBoundary.x2New = maxXNew;\n }\n } else if (_affectedBoundary.x2New > maxXNew) {\n _affectedBoundary.x2New = Math.max(maxXNew, _affectedBoundary.x2);\n }\n }\n\n var changedHorizon = [];\n var lastBoundary = null;\n\n for (q = i; q <= j; q++) {\n _horizonPart = horizon[q];\n _affectedBoundary = _horizonPart.boundary;\n var useBoundary = _affectedBoundary.x2 > boundary.x2 ? _affectedBoundary : boundary;\n\n if (lastBoundary === useBoundary) {\n changedHorizon[changedHorizon.length - 1].end = _horizonPart.end;\n } else {\n changedHorizon.push({\n start: _horizonPart.start,\n end: _horizonPart.end,\n boundary: useBoundary\n });\n lastBoundary = useBoundary;\n }\n }\n\n if (horizon[i].start < boundary.y1) {\n changedHorizon[0].start = boundary.y1;\n changedHorizon.unshift({\n start: horizon[i].start,\n end: boundary.y1,\n boundary: horizon[i].boundary\n });\n }\n\n if (boundary.y2 < horizon[j].end) {\n changedHorizon[changedHorizon.length - 1].end = boundary.y2;\n changedHorizon.push({\n start: boundary.y2,\n end: horizon[j].end,\n boundary: horizon[j].boundary\n });\n }\n\n for (q = i; q <= j; q++) {\n _horizonPart = horizon[q];\n _affectedBoundary = _horizonPart.boundary;\n\n if (_affectedBoundary.x2New !== undefined) {\n continue;\n }\n\n var used = false;\n\n for (k = i - 1; !used && k >= 0 && horizon[k].start >= _affectedBoundary.y1; k--) {\n used = horizon[k].boundary === _affectedBoundary;\n }\n\n for (k = j + 1; !used && k < horizon.length && horizon[k].end <= _affectedBoundary.y2; k++) {\n used = horizon[k].boundary === _affectedBoundary;\n }\n\n for (k = 0; !used && k < changedHorizon.length; k++) {\n used = changedHorizon[k].boundary === _affectedBoundary;\n }\n\n if (!used) {\n _affectedBoundary.x2New = maxXNew;\n }\n }\n\n Array.prototype.splice.apply(horizon, [i, j - i + 1].concat(changedHorizon));\n }\n } catch (err) {\n _iterator3.e(err);\n } finally {\n _iterator3.f();\n }\n\n for (var _i3 = 0, _horizon = horizon; _i3 < _horizon.length; _i3++) {\n var horizonPart = _horizon[_i3];\n var affectedBoundary = horizonPart.boundary;\n\n if (affectedBoundary.x2New === undefined) {\n affectedBoundary.x2New = Math.max(width, affectedBoundary.x2);\n }\n }\n}\n\nvar TextLayerRenderTask = /*#__PURE__*/function () {\n function TextLayerRenderTask(_ref) {\n var _globalThis$FontInspe,\n _this = this;\n\n var textContent = _ref.textContent,\n textContentStream = _ref.textContentStream,\n container = _ref.container,\n viewport = _ref.viewport,\n textDivs = _ref.textDivs,\n textContentItemsStr = _ref.textContentItemsStr,\n enhanceTextSelection = _ref.enhanceTextSelection;\n\n _classCallCheck(this, TextLayerRenderTask);\n\n this._textContent = textContent;\n this._textContentStream = textContentStream;\n this._container = container;\n this._document = container.ownerDocument;\n this._viewport = viewport;\n this._textDivs = textDivs || [];\n this._textContentItemsStr = textContentItemsStr || [];\n this._enhanceTextSelection = !!enhanceTextSelection;\n this._fontInspectorEnabled = !!((_globalThis$FontInspe = globalThis.FontInspector) !== null && _globalThis$FontInspe !== void 0 && _globalThis$FontInspe.enabled);\n this._reader = null;\n this._layoutTextLastFontSize = null;\n this._layoutTextLastFontFamily = null;\n this._layoutTextCtx = null;\n this._textDivProperties = new WeakMap();\n this._renderingDone = false;\n this._canceled = false;\n this._capability = (0, _util.createPromiseCapability)();\n this._renderTimer = null;\n this._bounds = [];\n\n this._capability.promise[\"finally\"](function () {\n if (!_this._enhanceTextSelection) {\n _this._textDivProperties = null;\n }\n\n if (_this._layoutTextCtx) {\n _this._layoutTextCtx.canvas.width = 0;\n _this._layoutTextCtx.canvas.height = 0;\n _this._layoutTextCtx = null;\n }\n })[\"catch\"](function () {});\n }\n\n _createClass(TextLayerRenderTask, [{\n key: \"promise\",\n get: function get() {\n return this._capability.promise;\n }\n }, {\n key: \"cancel\",\n value: function cancel() {\n this._canceled = true;\n\n if (this._reader) {\n this._reader.cancel(new _util.AbortException(\"TextLayer task cancelled.\"))[\"catch\"](function () {});\n\n this._reader = null;\n }\n\n if (this._renderTimer !== null) {\n clearTimeout(this._renderTimer);\n this._renderTimer = null;\n }\n\n this._capability.reject(new Error(\"TextLayer task cancelled.\"));\n }\n }, {\n key: \"_processItems\",\n value: function _processItems(items, styleCache) {\n for (var i = 0, len = items.length; i < len; i++) {\n if (items[i].str === undefined) {\n if (items[i].type === \"beginMarkedContentProps\" || items[i].type === \"beginMarkedContent\") {\n var parent = this._container;\n this._container = document.createElement(\"span\");\n\n this._container.classList.add(\"markedContent\");\n\n if (items[i].id !== null) {\n this._container.setAttribute(\"id\", \"\".concat(items[i].id));\n }\n\n parent.appendChild(this._container);\n } else if (items[i].type === \"endMarkedContent\") {\n this._container = this._container.parentNode;\n }\n\n continue;\n }\n\n this._textContentItemsStr.push(items[i].str);\n\n appendText(this, items[i], styleCache, this._layoutTextCtx);\n }\n }\n }, {\n key: \"_layoutText\",\n value: function _layoutText(textDiv) {\n var textDivProperties = this._textDivProperties.get(textDiv);\n\n var transform = \"\";\n\n if (textDivProperties.canvasWidth !== 0 && textDivProperties.hasText) {\n var _textDiv$style = textDiv.style,\n fontSize = _textDiv$style.fontSize,\n fontFamily = _textDiv$style.fontFamily;\n\n if (fontSize !== this._layoutTextLastFontSize || fontFamily !== this._layoutTextLastFontFamily) {\n this._layoutTextCtx.font = \"\".concat(fontSize, \" \").concat(fontFamily);\n this._layoutTextLastFontSize = fontSize;\n this._layoutTextLastFontFamily = fontFamily;\n }\n\n var _this$_layoutTextCtx$ = this._layoutTextCtx.measureText(textDiv.textContent),\n width = _this$_layoutTextCtx$.width;\n\n if (width > 0) {\n var scale = textDivProperties.canvasWidth / width;\n\n if (this._enhanceTextSelection) {\n textDivProperties.scale = scale;\n }\n\n transform = \"scaleX(\".concat(scale, \")\");\n }\n }\n\n if (textDivProperties.angle !== 0) {\n transform = \"rotate(\".concat(textDivProperties.angle, \"deg) \").concat(transform);\n }\n\n if (transform.length > 0) {\n if (this._enhanceTextSelection) {\n textDivProperties.originalTransform = transform;\n }\n\n textDiv.style.transform = transform;\n }\n\n if (textDivProperties.hasText) {\n this._container.appendChild(textDiv);\n }\n\n if (textDivProperties.hasEOL) {\n var br = document.createElement(\"br\");\n br.setAttribute(\"role\", \"presentation\");\n\n this._container.appendChild(br);\n }\n }\n }, {\n key: \"_render\",\n value: function _render() {\n var _this2 = this;\n\n var timeout = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;\n var capability = (0, _util.createPromiseCapability)();\n var styleCache = Object.create(null);\n\n var canvas = this._document.createElement(\"canvas\");\n\n canvas.height = canvas.width = DEFAULT_FONT_SIZE;\n canvas.mozOpaque = true;\n this._layoutTextCtx = canvas.getContext(\"2d\", {\n alpha: false\n });\n\n if (this._textContent) {\n var textItems = this._textContent.items;\n var textStyles = this._textContent.styles;\n\n this._processItems(textItems, textStyles);\n\n capability.resolve();\n } else if (this._textContentStream) {\n var pump = function pump() {\n _this2._reader.read().then(function (_ref2) {\n var value = _ref2.value,\n done = _ref2.done;\n\n if (done) {\n capability.resolve();\n return;\n }\n\n Object.assign(styleCache, value.styles);\n\n _this2._processItems(value.items, styleCache);\n\n pump();\n }, capability.reject);\n };\n\n this._reader = this._textContentStream.getReader();\n pump();\n } else {\n throw new Error('Neither \"textContent\" nor \"textContentStream\" parameters specified.');\n }\n\n capability.promise.then(function () {\n styleCache = null;\n\n if (!timeout) {\n render(_this2);\n } else {\n _this2._renderTimer = setTimeout(function () {\n render(_this2);\n _this2._renderTimer = null;\n }, timeout);\n }\n }, this._capability.reject);\n }\n }, {\n key: \"expandTextDivs\",\n value: function expandTextDivs() {\n var expandDivs = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;\n\n if (!this._enhanceTextSelection || !this._renderingDone) {\n return;\n }\n\n if (this._bounds !== null) {\n expand(this);\n this._bounds = null;\n }\n\n var transformBuf = [],\n paddingBuf = [];\n\n for (var i = 0, ii = this._textDivs.length; i < ii; i++) {\n var div = this._textDivs[i];\n\n var divProps = this._textDivProperties.get(div);\n\n if (!divProps.hasText) {\n continue;\n }\n\n if (expandDivs) {\n transformBuf.length = 0;\n paddingBuf.length = 0;\n\n if (divProps.originalTransform) {\n transformBuf.push(divProps.originalTransform);\n }\n\n if (divProps.paddingTop > 0) {\n paddingBuf.push(\"\".concat(divProps.paddingTop, \"px\"));\n transformBuf.push(\"translateY(\".concat(-divProps.paddingTop, \"px)\"));\n } else {\n paddingBuf.push(0);\n }\n\n if (divProps.paddingRight > 0) {\n paddingBuf.push(\"\".concat(divProps.paddingRight / divProps.scale, \"px\"));\n } else {\n paddingBuf.push(0);\n }\n\n if (divProps.paddingBottom > 0) {\n paddingBuf.push(\"\".concat(divProps.paddingBottom, \"px\"));\n } else {\n paddingBuf.push(0);\n }\n\n if (divProps.paddingLeft > 0) {\n paddingBuf.push(\"\".concat(divProps.paddingLeft / divProps.scale, \"px\"));\n transformBuf.push(\"translateX(\".concat(-divProps.paddingLeft / divProps.scale, \"px)\"));\n } else {\n paddingBuf.push(0);\n }\n\n div.style.padding = paddingBuf.join(\" \");\n\n if (transformBuf.length) {\n div.style.transform = transformBuf.join(\" \");\n }\n } else {\n div.style.padding = null;\n div.style.transform = divProps.originalTransform;\n }\n }\n }\n }]);\n\n return TextLayerRenderTask;\n}();\n\nfunction renderTextLayer(renderParameters) {\n var task = new TextLayerRenderTask({\n textContent: renderParameters.textContent,\n textContentStream: renderParameters.textContentStream,\n container: renderParameters.container,\n viewport: renderParameters.viewport,\n textDivs: renderParameters.textDivs,\n textContentItemsStr: renderParameters.textContentItemsStr,\n enhanceTextSelection: renderParameters.enhanceTextSelection\n });\n\n task._render(renderParameters.timeout);\n\n return task;\n}\n\n/***/ }),\n/* 134 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.SVGGraphics = void 0;\n\nvar _util = __w_pdfjs_require__(4);\n\nvar _display_utils = __w_pdfjs_require__(1);\n\nvar _is_node = __w_pdfjs_require__(6);\n\nfunction _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }\n\nfunction _nonIterableSpread() { throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\nfunction _iterableToArray(iter) { if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter); }\n\nfunction _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }\n\nfunction _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }\n\nfunction _nonIterableRest() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\nfunction _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== \"undefined\" && arr[Symbol.iterator] || arr[\"@@iterator\"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"] != null) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; }\n\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\n\nfunction _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e2) { throw _e2; }, f: F }; } throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e3) { didErr = true; err = _e3; }, f: function f() { try { if (!normalCompletion && it[\"return\"] != null) it[\"return\"](); } finally { if (didErr) throw err; } } }; }\n\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nvar SVGGraphics = function SVGGraphics() {\n _classCallCheck(this, SVGGraphics);\n\n (0, _util.unreachable)(\"Not implemented: SVGGraphics\");\n};\n\nexports.SVGGraphics = SVGGraphics;\n{\n var opListToTree = function opListToTree(opList) {\n var opTree = [];\n var tmp = [];\n\n var _iterator = _createForOfIteratorHelper(opList),\n _step;\n\n try {\n for (_iterator.s(); !(_step = _iterator.n()).done;) {\n var opListElement = _step.value;\n\n if (opListElement.fn === \"save\") {\n opTree.push({\n fnId: 92,\n fn: \"group\",\n items: []\n });\n tmp.push(opTree);\n opTree = opTree[opTree.length - 1].items;\n continue;\n }\n\n if (opListElement.fn === \"restore\") {\n opTree = tmp.pop();\n } else {\n opTree.push(opListElement);\n }\n }\n } catch (err) {\n _iterator.e(err);\n } finally {\n _iterator.f();\n }\n\n return opTree;\n };\n\n var pf = function pf(value) {\n if (Number.isInteger(value)) {\n return value.toString();\n }\n\n var s = value.toFixed(10);\n var i = s.length - 1;\n\n if (s[i] !== \"0\") {\n return s;\n }\n\n do {\n i--;\n } while (s[i] === \"0\");\n\n return s.substring(0, s[i] === \".\" ? i : i + 1);\n };\n\n var pm = function pm(m) {\n if (m[4] === 0 && m[5] === 0) {\n if (m[1] === 0 && m[2] === 0) {\n if (m[0] === 1 && m[3] === 1) {\n return \"\";\n }\n\n return \"scale(\".concat(pf(m[0]), \" \").concat(pf(m[3]), \")\");\n }\n\n if (m[0] === m[3] && m[1] === -m[2]) {\n var a = Math.acos(m[0]) * 180 / Math.PI;\n return \"rotate(\".concat(pf(a), \")\");\n }\n } else {\n if (m[0] === 1 && m[1] === 0 && m[2] === 0 && m[3] === 1) {\n return \"translate(\".concat(pf(m[4]), \" \").concat(pf(m[5]), \")\");\n }\n }\n\n return \"matrix(\".concat(pf(m[0]), \" \").concat(pf(m[1]), \" \").concat(pf(m[2]), \" \").concat(pf(m[3]), \" \").concat(pf(m[4]), \" \") + \"\".concat(pf(m[5]), \")\");\n };\n\n var SVG_DEFAULTS = {\n fontStyle: \"normal\",\n fontWeight: \"normal\",\n fillColor: \"#000000\"\n };\n var XML_NS = \"http://www.w3.org/XML/1998/namespace\";\n var XLINK_NS = \"http://www.w3.org/1999/xlink\";\n var LINE_CAP_STYLES = [\"butt\", \"round\", \"square\"];\n var LINE_JOIN_STYLES = [\"miter\", \"round\", \"bevel\"];\n\n var convertImgDataToPng = function () {\n var PNG_HEADER = new Uint8Array([0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a]);\n var CHUNK_WRAPPER_SIZE = 12;\n var crcTable = new Int32Array(256);\n\n for (var i = 0; i < 256; i++) {\n var c = i;\n\n for (var h = 0; h < 8; h++) {\n if (c & 1) {\n c = 0xedb88320 ^ c >> 1 & 0x7fffffff;\n } else {\n c = c >> 1 & 0x7fffffff;\n }\n }\n\n crcTable[i] = c;\n }\n\n function crc32(data, start, end) {\n var crc = -1;\n\n for (var _i = start; _i < end; _i++) {\n var a = (crc ^ data[_i]) & 0xff;\n var b = crcTable[a];\n crc = crc >>> 8 ^ b;\n }\n\n return crc ^ -1;\n }\n\n function writePngChunk(type, body, data, offset) {\n var p = offset;\n var len = body.length;\n data[p] = len >> 24 & 0xff;\n data[p + 1] = len >> 16 & 0xff;\n data[p + 2] = len >> 8 & 0xff;\n data[p + 3] = len & 0xff;\n p += 4;\n data[p] = type.charCodeAt(0) & 0xff;\n data[p + 1] = type.charCodeAt(1) & 0xff;\n data[p + 2] = type.charCodeAt(2) & 0xff;\n data[p + 3] = type.charCodeAt(3) & 0xff;\n p += 4;\n data.set(body, p);\n p += body.length;\n var crc = crc32(data, offset + 4, p);\n data[p] = crc >> 24 & 0xff;\n data[p + 1] = crc >> 16 & 0xff;\n data[p + 2] = crc >> 8 & 0xff;\n data[p + 3] = crc & 0xff;\n }\n\n function adler32(data, start, end) {\n var a = 1;\n var b = 0;\n\n for (var _i2 = start; _i2 < end; ++_i2) {\n a = (a + (data[_i2] & 0xff)) % 65521;\n b = (b + a) % 65521;\n }\n\n return b << 16 | a;\n }\n\n function deflateSync(literals) {\n if (!_is_node.isNodeJS) {\n return deflateSyncUncompressed(literals);\n }\n\n try {\n var input;\n\n if (parseInt(process.versions.node) >= 8) {\n input = literals;\n } else {\n input = Buffer.from(literals);\n }\n\n var output = require(\"zlib\").deflateSync(input, {\n level: 9\n });\n\n return output instanceof Uint8Array ? output : new Uint8Array(output);\n } catch (e) {\n (0, _util.warn)(\"Not compressing PNG because zlib.deflateSync is unavailable: \" + e);\n }\n\n return deflateSyncUncompressed(literals);\n }\n\n function deflateSyncUncompressed(literals) {\n var len = literals.length;\n var maxBlockLength = 0xffff;\n var deflateBlocks = Math.ceil(len / maxBlockLength);\n var idat = new Uint8Array(2 + len + deflateBlocks * 5 + 4);\n var pi = 0;\n idat[pi++] = 0x78;\n idat[pi++] = 0x9c;\n var pos = 0;\n\n while (len > maxBlockLength) {\n idat[pi++] = 0x00;\n idat[pi++] = 0xff;\n idat[pi++] = 0xff;\n idat[pi++] = 0x00;\n idat[pi++] = 0x00;\n idat.set(literals.subarray(pos, pos + maxBlockLength), pi);\n pi += maxBlockLength;\n pos += maxBlockLength;\n len -= maxBlockLength;\n }\n\n idat[pi++] = 0x01;\n idat[pi++] = len & 0xff;\n idat[pi++] = len >> 8 & 0xff;\n idat[pi++] = ~len & 0xffff & 0xff;\n idat[pi++] = (~len & 0xffff) >> 8 & 0xff;\n idat.set(literals.subarray(pos), pi);\n pi += literals.length - pos;\n var adler = adler32(literals, 0, literals.length);\n idat[pi++] = adler >> 24 & 0xff;\n idat[pi++] = adler >> 16 & 0xff;\n idat[pi++] = adler >> 8 & 0xff;\n idat[pi++] = adler & 0xff;\n return idat;\n }\n\n function encode(imgData, kind, forceDataSchema, isMask) {\n var width = imgData.width;\n var height = imgData.height;\n var bitDepth, colorType, lineSize;\n var bytes = imgData.data;\n\n switch (kind) {\n case _util.ImageKind.GRAYSCALE_1BPP:\n colorType = 0;\n bitDepth = 1;\n lineSize = width + 7 >> 3;\n break;\n\n case _util.ImageKind.RGB_24BPP:\n colorType = 2;\n bitDepth = 8;\n lineSize = width * 3;\n break;\n\n case _util.ImageKind.RGBA_32BPP:\n colorType = 6;\n bitDepth = 8;\n lineSize = width * 4;\n break;\n\n default:\n throw new Error(\"invalid format\");\n }\n\n var literals = new Uint8Array((1 + lineSize) * height);\n var offsetLiterals = 0,\n offsetBytes = 0;\n\n for (var y = 0; y < height; ++y) {\n literals[offsetLiterals++] = 0;\n literals.set(bytes.subarray(offsetBytes, offsetBytes + lineSize), offsetLiterals);\n offsetBytes += lineSize;\n offsetLiterals += lineSize;\n }\n\n if (kind === _util.ImageKind.GRAYSCALE_1BPP && isMask) {\n offsetLiterals = 0;\n\n for (var _y = 0; _y < height; _y++) {\n offsetLiterals++;\n\n for (var _i3 = 0; _i3 < lineSize; _i3++) {\n literals[offsetLiterals++] ^= 0xff;\n }\n }\n }\n\n var ihdr = new Uint8Array([width >> 24 & 0xff, width >> 16 & 0xff, width >> 8 & 0xff, width & 0xff, height >> 24 & 0xff, height >> 16 & 0xff, height >> 8 & 0xff, height & 0xff, bitDepth, colorType, 0x00, 0x00, 0x00]);\n var idat = deflateSync(literals);\n var pngLength = PNG_HEADER.length + CHUNK_WRAPPER_SIZE * 3 + ihdr.length + idat.length;\n var data = new Uint8Array(pngLength);\n var offset = 0;\n data.set(PNG_HEADER, offset);\n offset += PNG_HEADER.length;\n writePngChunk(\"IHDR\", ihdr, data, offset);\n offset += CHUNK_WRAPPER_SIZE + ihdr.length;\n writePngChunk(\"IDATA\", idat, data, offset);\n offset += CHUNK_WRAPPER_SIZE + idat.length;\n writePngChunk(\"IEND\", new Uint8Array(0), data, offset);\n return (0, _util.createObjectURL)(data, \"image/png\", forceDataSchema);\n }\n\n return function convertImgDataToPng(imgData, forceDataSchema, isMask) {\n var kind = imgData.kind === undefined ? _util.ImageKind.GRAYSCALE_1BPP : imgData.kind;\n return encode(imgData, kind, forceDataSchema, isMask);\n };\n }();\n\n var SVGExtraState = /*#__PURE__*/function () {\n function SVGExtraState() {\n _classCallCheck(this, SVGExtraState);\n\n this.fontSizeScale = 1;\n this.fontWeight = SVG_DEFAULTS.fontWeight;\n this.fontSize = 0;\n this.textMatrix = _util.IDENTITY_MATRIX;\n this.fontMatrix = _util.FONT_IDENTITY_MATRIX;\n this.leading = 0;\n this.textRenderingMode = _util.TextRenderingMode.FILL;\n this.textMatrixScale = 1;\n this.x = 0;\n this.y = 0;\n this.lineX = 0;\n this.lineY = 0;\n this.charSpacing = 0;\n this.wordSpacing = 0;\n this.textHScale = 1;\n this.textRise = 0;\n this.fillColor = SVG_DEFAULTS.fillColor;\n this.strokeColor = \"#000000\";\n this.fillAlpha = 1;\n this.strokeAlpha = 1;\n this.lineWidth = 1;\n this.lineJoin = \"\";\n this.lineCap = \"\";\n this.miterLimit = 0;\n this.dashArray = [];\n this.dashPhase = 0;\n this.dependencies = [];\n this.activeClipUrl = null;\n this.clipGroup = null;\n this.maskId = \"\";\n }\n\n _createClass(SVGExtraState, [{\n key: \"clone\",\n value: function clone() {\n return Object.create(this);\n }\n }, {\n key: \"setCurrentPoint\",\n value: function setCurrentPoint(x, y) {\n this.x = x;\n this.y = y;\n }\n }]);\n\n return SVGExtraState;\n }();\n\n var clipCount = 0;\n var maskCount = 0;\n var shadingCount = 0;\n\n exports.SVGGraphics = SVGGraphics = /*#__PURE__*/function () {\n function SVGGraphics(commonObjs, objs) {\n var forceDataSchema = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n\n _classCallCheck(this, SVGGraphics);\n\n this.svgFactory = new _display_utils.DOMSVGFactory();\n this.current = new SVGExtraState();\n this.transformMatrix = _util.IDENTITY_MATRIX;\n this.transformStack = [];\n this.extraStack = [];\n this.commonObjs = commonObjs;\n this.objs = objs;\n this.pendingClip = null;\n this.pendingEOFill = false;\n this.embedFonts = false;\n this.embeddedFonts = Object.create(null);\n this.cssStyle = null;\n this.forceDataSchema = !!forceDataSchema;\n this._operatorIdMapping = [];\n\n for (var op in _util.OPS) {\n this._operatorIdMapping[_util.OPS[op]] = op;\n }\n }\n\n _createClass(SVGGraphics, [{\n key: \"save\",\n value: function save() {\n this.transformStack.push(this.transformMatrix);\n var old = this.current;\n this.extraStack.push(old);\n this.current = old.clone();\n }\n }, {\n key: \"restore\",\n value: function restore() {\n this.transformMatrix = this.transformStack.pop();\n this.current = this.extraStack.pop();\n this.pendingClip = null;\n this.tgrp = null;\n }\n }, {\n key: \"group\",\n value: function group(items) {\n this.save();\n this.executeOpTree(items);\n this.restore();\n }\n }, {\n key: \"loadDependencies\",\n value: function loadDependencies(operatorList) {\n var _this = this;\n\n var fnArray = operatorList.fnArray;\n var argsArray = operatorList.argsArray;\n\n for (var i = 0, ii = fnArray.length; i < ii; i++) {\n if (fnArray[i] !== _util.OPS.dependency) {\n continue;\n }\n\n var _iterator2 = _createForOfIteratorHelper(argsArray[i]),\n _step2;\n\n try {\n var _loop = function _loop() {\n var obj = _step2.value;\n var objsPool = obj.startsWith(\"g_\") ? _this.commonObjs : _this.objs;\n var promise = new Promise(function (resolve) {\n objsPool.get(obj, resolve);\n });\n\n _this.current.dependencies.push(promise);\n };\n\n for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {\n _loop();\n }\n } catch (err) {\n _iterator2.e(err);\n } finally {\n _iterator2.f();\n }\n }\n\n return Promise.all(this.current.dependencies);\n }\n }, {\n key: \"transform\",\n value: function transform(a, b, c, d, e, f) {\n var transformMatrix = [a, b, c, d, e, f];\n this.transformMatrix = _util.Util.transform(this.transformMatrix, transformMatrix);\n this.tgrp = null;\n }\n }, {\n key: \"getSVG\",\n value: function getSVG(operatorList, viewport) {\n var _this2 = this;\n\n this.viewport = viewport;\n\n var svgElement = this._initialize(viewport);\n\n return this.loadDependencies(operatorList).then(function () {\n _this2.transformMatrix = _util.IDENTITY_MATRIX;\n\n _this2.executeOpTree(_this2.convertOpList(operatorList));\n\n return svgElement;\n });\n }\n }, {\n key: \"convertOpList\",\n value: function convertOpList(operatorList) {\n var operatorIdMapping = this._operatorIdMapping;\n var argsArray = operatorList.argsArray;\n var fnArray = operatorList.fnArray;\n var opList = [];\n\n for (var i = 0, ii = fnArray.length; i < ii; i++) {\n var fnId = fnArray[i];\n opList.push({\n fnId: fnId,\n fn: operatorIdMapping[fnId],\n args: argsArray[i]\n });\n }\n\n return opListToTree(opList);\n }\n }, {\n key: \"executeOpTree\",\n value: function executeOpTree(opTree) {\n var _iterator3 = _createForOfIteratorHelper(opTree),\n _step3;\n\n try {\n for (_iterator3.s(); !(_step3 = _iterator3.n()).done;) {\n var opTreeElement = _step3.value;\n var fn = opTreeElement.fn;\n var fnId = opTreeElement.fnId;\n var args = opTreeElement.args;\n\n switch (fnId | 0) {\n case _util.OPS.beginText:\n this.beginText();\n break;\n\n case _util.OPS.dependency:\n break;\n\n case _util.OPS.setLeading:\n this.setLeading(args);\n break;\n\n case _util.OPS.setLeadingMoveText:\n this.setLeadingMoveText(args[0], args[1]);\n break;\n\n case _util.OPS.setFont:\n this.setFont(args);\n break;\n\n case _util.OPS.showText:\n this.showText(args[0]);\n break;\n\n case _util.OPS.showSpacedText:\n this.showText(args[0]);\n break;\n\n case _util.OPS.endText:\n this.endText();\n break;\n\n case _util.OPS.moveText:\n this.moveText(args[0], args[1]);\n break;\n\n case _util.OPS.setCharSpacing:\n this.setCharSpacing(args[0]);\n break;\n\n case _util.OPS.setWordSpacing:\n this.setWordSpacing(args[0]);\n break;\n\n case _util.OPS.setHScale:\n this.setHScale(args[0]);\n break;\n\n case _util.OPS.setTextMatrix:\n this.setTextMatrix(args[0], args[1], args[2], args[3], args[4], args[5]);\n break;\n\n case _util.OPS.setTextRise:\n this.setTextRise(args[0]);\n break;\n\n case _util.OPS.setTextRenderingMode:\n this.setTextRenderingMode(args[0]);\n break;\n\n case _util.OPS.setLineWidth:\n this.setLineWidth(args[0]);\n break;\n\n case _util.OPS.setLineJoin:\n this.setLineJoin(args[0]);\n break;\n\n case _util.OPS.setLineCap:\n this.setLineCap(args[0]);\n break;\n\n case _util.OPS.setMiterLimit:\n this.setMiterLimit(args[0]);\n break;\n\n case _util.OPS.setFillRGBColor:\n this.setFillRGBColor(args[0], args[1], args[2]);\n break;\n\n case _util.OPS.setStrokeRGBColor:\n this.setStrokeRGBColor(args[0], args[1], args[2]);\n break;\n\n case _util.OPS.setStrokeColorN:\n this.setStrokeColorN(args);\n break;\n\n case _util.OPS.setFillColorN:\n this.setFillColorN(args);\n break;\n\n case _util.OPS.shadingFill:\n this.shadingFill(args[0]);\n break;\n\n case _util.OPS.setDash:\n this.setDash(args[0], args[1]);\n break;\n\n case _util.OPS.setRenderingIntent:\n this.setRenderingIntent(args[0]);\n break;\n\n case _util.OPS.setFlatness:\n this.setFlatness(args[0]);\n break;\n\n case _util.OPS.setGState:\n this.setGState(args[0]);\n break;\n\n case _util.OPS.fill:\n this.fill();\n break;\n\n case _util.OPS.eoFill:\n this.eoFill();\n break;\n\n case _util.OPS.stroke:\n this.stroke();\n break;\n\n case _util.OPS.fillStroke:\n this.fillStroke();\n break;\n\n case _util.OPS.eoFillStroke:\n this.eoFillStroke();\n break;\n\n case _util.OPS.clip:\n this.clip(\"nonzero\");\n break;\n\n case _util.OPS.eoClip:\n this.clip(\"evenodd\");\n break;\n\n case _util.OPS.paintSolidColorImageMask:\n this.paintSolidColorImageMask();\n break;\n\n case _util.OPS.paintImageXObject:\n this.paintImageXObject(args[0]);\n break;\n\n case _util.OPS.paintInlineImageXObject:\n this.paintInlineImageXObject(args[0]);\n break;\n\n case _util.OPS.paintImageMaskXObject:\n this.paintImageMaskXObject(args[0]);\n break;\n\n case _util.OPS.paintFormXObjectBegin:\n this.paintFormXObjectBegin(args[0], args[1]);\n break;\n\n case _util.OPS.paintFormXObjectEnd:\n this.paintFormXObjectEnd();\n break;\n\n case _util.OPS.closePath:\n this.closePath();\n break;\n\n case _util.OPS.closeStroke:\n this.closeStroke();\n break;\n\n case _util.OPS.closeFillStroke:\n this.closeFillStroke();\n break;\n\n case _util.OPS.closeEOFillStroke:\n this.closeEOFillStroke();\n break;\n\n case _util.OPS.nextLine:\n this.nextLine();\n break;\n\n case _util.OPS.transform:\n this.transform(args[0], args[1], args[2], args[3], args[4], args[5]);\n break;\n\n case _util.OPS.constructPath:\n this.constructPath(args[0], args[1]);\n break;\n\n case _util.OPS.endPath:\n this.endPath();\n break;\n\n case 92:\n this.group(opTreeElement.items);\n break;\n\n default:\n (0, _util.warn)(\"Unimplemented operator \".concat(fn));\n break;\n }\n }\n } catch (err) {\n _iterator3.e(err);\n } finally {\n _iterator3.f();\n }\n }\n }, {\n key: \"setWordSpacing\",\n value: function setWordSpacing(wordSpacing) {\n this.current.wordSpacing = wordSpacing;\n }\n }, {\n key: \"setCharSpacing\",\n value: function setCharSpacing(charSpacing) {\n this.current.charSpacing = charSpacing;\n }\n }, {\n key: \"nextLine\",\n value: function nextLine() {\n this.moveText(0, this.current.leading);\n }\n }, {\n key: \"setTextMatrix\",\n value: function setTextMatrix(a, b, c, d, e, f) {\n var current = this.current;\n current.textMatrix = current.lineMatrix = [a, b, c, d, e, f];\n current.textMatrixScale = Math.hypot(a, b);\n current.x = current.lineX = 0;\n current.y = current.lineY = 0;\n current.xcoords = [];\n current.ycoords = [];\n current.tspan = this.svgFactory.createElement(\"svg:tspan\");\n current.tspan.setAttributeNS(null, \"font-family\", current.fontFamily);\n current.tspan.setAttributeNS(null, \"font-size\", \"\".concat(pf(current.fontSize), \"px\"));\n current.tspan.setAttributeNS(null, \"y\", pf(-current.y));\n current.txtElement = this.svgFactory.createElement(\"svg:text\");\n current.txtElement.appendChild(current.tspan);\n }\n }, {\n key: \"beginText\",\n value: function beginText() {\n var current = this.current;\n current.x = current.lineX = 0;\n current.y = current.lineY = 0;\n current.textMatrix = _util.IDENTITY_MATRIX;\n current.lineMatrix = _util.IDENTITY_MATRIX;\n current.textMatrixScale = 1;\n current.tspan = this.svgFactory.createElement(\"svg:tspan\");\n current.txtElement = this.svgFactory.createElement(\"svg:text\");\n current.txtgrp = this.svgFactory.createElement(\"svg:g\");\n current.xcoords = [];\n current.ycoords = [];\n }\n }, {\n key: \"moveText\",\n value: function moveText(x, y) {\n var current = this.current;\n current.x = current.lineX += x;\n current.y = current.lineY += y;\n current.xcoords = [];\n current.ycoords = [];\n current.tspan = this.svgFactory.createElement(\"svg:tspan\");\n current.tspan.setAttributeNS(null, \"font-family\", current.fontFamily);\n current.tspan.setAttributeNS(null, \"font-size\", \"\".concat(pf(current.fontSize), \"px\"));\n current.tspan.setAttributeNS(null, \"y\", pf(-current.y));\n }\n }, {\n key: \"showText\",\n value: function showText(glyphs) {\n var current = this.current;\n var font = current.font;\n var fontSize = current.fontSize;\n\n if (fontSize === 0) {\n return;\n }\n\n var fontSizeScale = current.fontSizeScale;\n var charSpacing = current.charSpacing;\n var wordSpacing = current.wordSpacing;\n var fontDirection = current.fontDirection;\n var textHScale = current.textHScale * fontDirection;\n var vertical = font.vertical;\n var spacingDir = vertical ? 1 : -1;\n var defaultVMetrics = font.defaultVMetrics;\n var widthAdvanceScale = fontSize * current.fontMatrix[0];\n var x = 0;\n\n var _iterator4 = _createForOfIteratorHelper(glyphs),\n _step4;\n\n try {\n for (_iterator4.s(); !(_step4 = _iterator4.n()).done;) {\n var glyph = _step4.value;\n\n if (glyph === null) {\n x += fontDirection * wordSpacing;\n continue;\n } else if ((0, _util.isNum)(glyph)) {\n x += spacingDir * glyph * fontSize / 1000;\n continue;\n }\n\n var spacing = (glyph.isSpace ? wordSpacing : 0) + charSpacing;\n var character = glyph.fontChar;\n var scaledX = void 0,\n scaledY = void 0;\n var width = glyph.width;\n\n if (vertical) {\n var vx = void 0;\n var vmetric = glyph.vmetric || defaultVMetrics;\n vx = glyph.vmetric ? vmetric[1] : width * 0.5;\n vx = -vx * widthAdvanceScale;\n var vy = vmetric[2] * widthAdvanceScale;\n width = vmetric ? -vmetric[0] : width;\n scaledX = vx / fontSizeScale;\n scaledY = (x + vy) / fontSizeScale;\n } else {\n scaledX = x / fontSizeScale;\n scaledY = 0;\n }\n\n if (glyph.isInFont || font.missingFile) {\n current.xcoords.push(current.x + scaledX);\n\n if (vertical) {\n current.ycoords.push(-current.y + scaledY);\n }\n\n current.tspan.textContent += character;\n } else {}\n\n var charWidth = void 0;\n\n if (vertical) {\n charWidth = width * widthAdvanceScale - spacing * fontDirection;\n } else {\n charWidth = width * widthAdvanceScale + spacing * fontDirection;\n }\n\n x += charWidth;\n }\n } catch (err) {\n _iterator4.e(err);\n } finally {\n _iterator4.f();\n }\n\n current.tspan.setAttributeNS(null, \"x\", current.xcoords.map(pf).join(\" \"));\n\n if (vertical) {\n current.tspan.setAttributeNS(null, \"y\", current.ycoords.map(pf).join(\" \"));\n } else {\n current.tspan.setAttributeNS(null, \"y\", pf(-current.y));\n }\n\n if (vertical) {\n current.y -= x;\n } else {\n current.x += x * textHScale;\n }\n\n current.tspan.setAttributeNS(null, \"font-family\", current.fontFamily);\n current.tspan.setAttributeNS(null, \"font-size\", \"\".concat(pf(current.fontSize), \"px\"));\n\n if (current.fontStyle !== SVG_DEFAULTS.fontStyle) {\n current.tspan.setAttributeNS(null, \"font-style\", current.fontStyle);\n }\n\n if (current.fontWeight !== SVG_DEFAULTS.fontWeight) {\n current.tspan.setAttributeNS(null, \"font-weight\", current.fontWeight);\n }\n\n var fillStrokeMode = current.textRenderingMode & _util.TextRenderingMode.FILL_STROKE_MASK;\n\n if (fillStrokeMode === _util.TextRenderingMode.FILL || fillStrokeMode === _util.TextRenderingMode.FILL_STROKE) {\n if (current.fillColor !== SVG_DEFAULTS.fillColor) {\n current.tspan.setAttributeNS(null, \"fill\", current.fillColor);\n }\n\n if (current.fillAlpha < 1) {\n current.tspan.setAttributeNS(null, \"fill-opacity\", current.fillAlpha);\n }\n } else if (current.textRenderingMode === _util.TextRenderingMode.ADD_TO_PATH) {\n current.tspan.setAttributeNS(null, \"fill\", \"transparent\");\n } else {\n current.tspan.setAttributeNS(null, \"fill\", \"none\");\n }\n\n if (fillStrokeMode === _util.TextRenderingMode.STROKE || fillStrokeMode === _util.TextRenderingMode.FILL_STROKE) {\n var lineWidthScale = 1 / (current.textMatrixScale || 1);\n\n this._setStrokeAttributes(current.tspan, lineWidthScale);\n }\n\n var textMatrix = current.textMatrix;\n\n if (current.textRise !== 0) {\n textMatrix = textMatrix.slice();\n textMatrix[5] += current.textRise;\n }\n\n current.txtElement.setAttributeNS(null, \"transform\", \"\".concat(pm(textMatrix), \" scale(\").concat(pf(textHScale), \", -1)\"));\n current.txtElement.setAttributeNS(XML_NS, \"xml:space\", \"preserve\");\n current.txtElement.appendChild(current.tspan);\n current.txtgrp.appendChild(current.txtElement);\n\n this._ensureTransformGroup().appendChild(current.txtElement);\n }\n }, {\n key: \"setLeadingMoveText\",\n value: function setLeadingMoveText(x, y) {\n this.setLeading(-y);\n this.moveText(x, y);\n }\n }, {\n key: \"addFontStyle\",\n value: function addFontStyle(fontObj) {\n if (!fontObj.data) {\n throw new Error(\"addFontStyle: No font data available, \" + 'ensure that the \"fontExtraProperties\" API parameter is set.');\n }\n\n if (!this.cssStyle) {\n this.cssStyle = this.svgFactory.createElement(\"svg:style\");\n this.cssStyle.setAttributeNS(null, \"type\", \"text/css\");\n this.defs.appendChild(this.cssStyle);\n }\n\n var url = (0, _util.createObjectURL)(fontObj.data, fontObj.mimetype, this.forceDataSchema);\n this.cssStyle.textContent += \"@font-face { font-family: \\\"\".concat(fontObj.loadedName, \"\\\";\") + \" src: url(\".concat(url, \"); }\\n\");\n }\n }, {\n key: \"setFont\",\n value: function setFont(details) {\n var current = this.current;\n var fontObj = this.commonObjs.get(details[0]);\n var size = details[1];\n current.font = fontObj;\n\n if (this.embedFonts && !fontObj.missingFile && !this.embeddedFonts[fontObj.loadedName]) {\n this.addFontStyle(fontObj);\n this.embeddedFonts[fontObj.loadedName] = fontObj;\n }\n\n current.fontMatrix = fontObj.fontMatrix || _util.FONT_IDENTITY_MATRIX;\n var bold = \"normal\";\n\n if (fontObj.black) {\n bold = \"900\";\n } else if (fontObj.bold) {\n bold = \"bold\";\n }\n\n var italic = fontObj.italic ? \"italic\" : \"normal\";\n\n if (size < 0) {\n size = -size;\n current.fontDirection = -1;\n } else {\n current.fontDirection = 1;\n }\n\n current.fontSize = size;\n current.fontFamily = fontObj.loadedName;\n current.fontWeight = bold;\n current.fontStyle = italic;\n current.tspan = this.svgFactory.createElement(\"svg:tspan\");\n current.tspan.setAttributeNS(null, \"y\", pf(-current.y));\n current.xcoords = [];\n current.ycoords = [];\n }\n }, {\n key: \"endText\",\n value: function endText() {\n var _current$txtElement;\n\n var current = this.current;\n\n if (current.textRenderingMode & _util.TextRenderingMode.ADD_TO_PATH_FLAG && (_current$txtElement = current.txtElement) !== null && _current$txtElement !== void 0 && _current$txtElement.hasChildNodes()) {\n current.element = current.txtElement;\n this.clip(\"nonzero\");\n this.endPath();\n }\n }\n }, {\n key: \"setLineWidth\",\n value: function setLineWidth(width) {\n if (width > 0) {\n this.current.lineWidth = width;\n }\n }\n }, {\n key: \"setLineCap\",\n value: function setLineCap(style) {\n this.current.lineCap = LINE_CAP_STYLES[style];\n }\n }, {\n key: \"setLineJoin\",\n value: function setLineJoin(style) {\n this.current.lineJoin = LINE_JOIN_STYLES[style];\n }\n }, {\n key: \"setMiterLimit\",\n value: function setMiterLimit(limit) {\n this.current.miterLimit = limit;\n }\n }, {\n key: \"setStrokeAlpha\",\n value: function setStrokeAlpha(strokeAlpha) {\n this.current.strokeAlpha = strokeAlpha;\n }\n }, {\n key: \"setStrokeRGBColor\",\n value: function setStrokeRGBColor(r, g, b) {\n this.current.strokeColor = _util.Util.makeHexColor(r, g, b);\n }\n }, {\n key: \"setFillAlpha\",\n value: function setFillAlpha(fillAlpha) {\n this.current.fillAlpha = fillAlpha;\n }\n }, {\n key: \"setFillRGBColor\",\n value: function setFillRGBColor(r, g, b) {\n this.current.fillColor = _util.Util.makeHexColor(r, g, b);\n this.current.tspan = this.svgFactory.createElement(\"svg:tspan\");\n this.current.xcoords = [];\n this.current.ycoords = [];\n }\n }, {\n key: \"setStrokeColorN\",\n value: function setStrokeColorN(args) {\n this.current.strokeColor = this._makeColorN_Pattern(args);\n }\n }, {\n key: \"setFillColorN\",\n value: function setFillColorN(args) {\n this.current.fillColor = this._makeColorN_Pattern(args);\n }\n }, {\n key: \"shadingFill\",\n value: function shadingFill(args) {\n var width = this.viewport.width;\n var height = this.viewport.height;\n\n var inv = _util.Util.inverseTransform(this.transformMatrix);\n\n var bl = _util.Util.applyTransform([0, 0], inv);\n\n var br = _util.Util.applyTransform([0, height], inv);\n\n var ul = _util.Util.applyTransform([width, 0], inv);\n\n var ur = _util.Util.applyTransform([width, height], inv);\n\n var x0 = Math.min(bl[0], br[0], ul[0], ur[0]);\n var y0 = Math.min(bl[1], br[1], ul[1], ur[1]);\n var x1 = Math.max(bl[0], br[0], ul[0], ur[0]);\n var y1 = Math.max(bl[1], br[1], ul[1], ur[1]);\n var rect = this.svgFactory.createElement(\"svg:rect\");\n rect.setAttributeNS(null, \"x\", x0);\n rect.setAttributeNS(null, \"y\", y0);\n rect.setAttributeNS(null, \"width\", x1 - x0);\n rect.setAttributeNS(null, \"height\", y1 - y0);\n rect.setAttributeNS(null, \"fill\", this._makeShadingPattern(args));\n\n if (this.current.fillAlpha < 1) {\n rect.setAttributeNS(null, \"fill-opacity\", this.current.fillAlpha);\n }\n\n this._ensureTransformGroup().appendChild(rect);\n }\n }, {\n key: \"_makeColorN_Pattern\",\n value: function _makeColorN_Pattern(args) {\n if (args[0] === \"TilingPattern\") {\n return this._makeTilingPattern(args);\n }\n\n return this._makeShadingPattern(args);\n }\n }, {\n key: \"_makeTilingPattern\",\n value: function _makeTilingPattern(args) {\n var color = args[1];\n var operatorList = args[2];\n var matrix = args[3] || _util.IDENTITY_MATRIX;\n\n var _args$ = _slicedToArray(args[4], 4),\n x0 = _args$[0],\n y0 = _args$[1],\n x1 = _args$[2],\n y1 = _args$[3];\n\n var xstep = args[5];\n var ystep = args[6];\n var paintType = args[7];\n var tilingId = \"shading\".concat(shadingCount++);\n\n var _Util$normalizeRect = _util.Util.normalizeRect([].concat(_toConsumableArray(_util.Util.applyTransform([x0, y0], matrix)), _toConsumableArray(_util.Util.applyTransform([x1, y1], matrix)))),\n _Util$normalizeRect2 = _slicedToArray(_Util$normalizeRect, 4),\n tx0 = _Util$normalizeRect2[0],\n ty0 = _Util$normalizeRect2[1],\n tx1 = _Util$normalizeRect2[2],\n ty1 = _Util$normalizeRect2[3];\n\n var _Util$singularValueDe = _util.Util.singularValueDecompose2dScale(matrix),\n _Util$singularValueDe2 = _slicedToArray(_Util$singularValueDe, 2),\n xscale = _Util$singularValueDe2[0],\n yscale = _Util$singularValueDe2[1];\n\n var txstep = xstep * xscale;\n var tystep = ystep * yscale;\n var tiling = this.svgFactory.createElement(\"svg:pattern\");\n tiling.setAttributeNS(null, \"id\", tilingId);\n tiling.setAttributeNS(null, \"patternUnits\", \"userSpaceOnUse\");\n tiling.setAttributeNS(null, \"width\", txstep);\n tiling.setAttributeNS(null, \"height\", tystep);\n tiling.setAttributeNS(null, \"x\", \"\".concat(tx0));\n tiling.setAttributeNS(null, \"y\", \"\".concat(ty0));\n var svg = this.svg;\n var transformMatrix = this.transformMatrix;\n var fillColor = this.current.fillColor;\n var strokeColor = this.current.strokeColor;\n var bbox = this.svgFactory.create(tx1 - tx0, ty1 - ty0);\n this.svg = bbox;\n this.transformMatrix = matrix;\n\n if (paintType === 2) {\n var cssColor = _util.Util.makeHexColor.apply(_util.Util, _toConsumableArray(color));\n\n this.current.fillColor = cssColor;\n this.current.strokeColor = cssColor;\n }\n\n this.executeOpTree(this.convertOpList(operatorList));\n this.svg = svg;\n this.transformMatrix = transformMatrix;\n this.current.fillColor = fillColor;\n this.current.strokeColor = strokeColor;\n tiling.appendChild(bbox.childNodes[0]);\n this.defs.appendChild(tiling);\n return \"url(#\".concat(tilingId, \")\");\n }\n }, {\n key: \"_makeShadingPattern\",\n value: function _makeShadingPattern(args) {\n switch (args[0]) {\n case \"RadialAxial\":\n var shadingId = \"shading\".concat(shadingCount++);\n var colorStops = args[3];\n var gradient;\n\n switch (args[1]) {\n case \"axial\":\n var point0 = args[4];\n var point1 = args[5];\n gradient = this.svgFactory.createElement(\"svg:linearGradient\");\n gradient.setAttributeNS(null, \"id\", shadingId);\n gradient.setAttributeNS(null, \"gradientUnits\", \"userSpaceOnUse\");\n gradient.setAttributeNS(null, \"x1\", point0[0]);\n gradient.setAttributeNS(null, \"y1\", point0[1]);\n gradient.setAttributeNS(null, \"x2\", point1[0]);\n gradient.setAttributeNS(null, \"y2\", point1[1]);\n break;\n\n case \"radial\":\n var focalPoint = args[4];\n var circlePoint = args[5];\n var focalRadius = args[6];\n var circleRadius = args[7];\n gradient = this.svgFactory.createElement(\"svg:radialGradient\");\n gradient.setAttributeNS(null, \"id\", shadingId);\n gradient.setAttributeNS(null, \"gradientUnits\", \"userSpaceOnUse\");\n gradient.setAttributeNS(null, \"cx\", circlePoint[0]);\n gradient.setAttributeNS(null, \"cy\", circlePoint[1]);\n gradient.setAttributeNS(null, \"r\", circleRadius);\n gradient.setAttributeNS(null, \"fx\", focalPoint[0]);\n gradient.setAttributeNS(null, \"fy\", focalPoint[1]);\n gradient.setAttributeNS(null, \"fr\", focalRadius);\n break;\n\n default:\n throw new Error(\"Unknown RadialAxial type: \".concat(args[1]));\n }\n\n var _iterator5 = _createForOfIteratorHelper(colorStops),\n _step5;\n\n try {\n for (_iterator5.s(); !(_step5 = _iterator5.n()).done;) {\n var colorStop = _step5.value;\n var stop = this.svgFactory.createElement(\"svg:stop\");\n stop.setAttributeNS(null, \"offset\", colorStop[0]);\n stop.setAttributeNS(null, \"stop-color\", colorStop[1]);\n gradient.appendChild(stop);\n }\n } catch (err) {\n _iterator5.e(err);\n } finally {\n _iterator5.f();\n }\n\n this.defs.appendChild(gradient);\n return \"url(#\".concat(shadingId, \")\");\n\n case \"Mesh\":\n (0, _util.warn)(\"Unimplemented pattern Mesh\");\n return null;\n\n case \"Dummy\":\n return \"hotpink\";\n\n default:\n throw new Error(\"Unknown IR type: \".concat(args[0]));\n }\n }\n }, {\n key: \"setDash\",\n value: function setDash(dashArray, dashPhase) {\n this.current.dashArray = dashArray;\n this.current.dashPhase = dashPhase;\n }\n }, {\n key: \"constructPath\",\n value: function constructPath(ops, args) {\n var current = this.current;\n var x = current.x,\n y = current.y;\n var d = [];\n var j = 0;\n\n var _iterator6 = _createForOfIteratorHelper(ops),\n _step6;\n\n try {\n for (_iterator6.s(); !(_step6 = _iterator6.n()).done;) {\n var op = _step6.value;\n\n switch (op | 0) {\n case _util.OPS.rectangle:\n x = args[j++];\n y = args[j++];\n var width = args[j++];\n var height = args[j++];\n var xw = x + width;\n var yh = y + height;\n d.push(\"M\", pf(x), pf(y), \"L\", pf(xw), pf(y), \"L\", pf(xw), pf(yh), \"L\", pf(x), pf(yh), \"Z\");\n break;\n\n case _util.OPS.moveTo:\n x = args[j++];\n y = args[j++];\n d.push(\"M\", pf(x), pf(y));\n break;\n\n case _util.OPS.lineTo:\n x = args[j++];\n y = args[j++];\n d.push(\"L\", pf(x), pf(y));\n break;\n\n case _util.OPS.curveTo:\n x = args[j + 4];\n y = args[j + 5];\n d.push(\"C\", pf(args[j]), pf(args[j + 1]), pf(args[j + 2]), pf(args[j + 3]), pf(x), pf(y));\n j += 6;\n break;\n\n case _util.OPS.curveTo2:\n d.push(\"C\", pf(x), pf(y), pf(args[j]), pf(args[j + 1]), pf(args[j + 2]), pf(args[j + 3]));\n x = args[j + 2];\n y = args[j + 3];\n j += 4;\n break;\n\n case _util.OPS.curveTo3:\n x = args[j + 2];\n y = args[j + 3];\n d.push(\"C\", pf(args[j]), pf(args[j + 1]), pf(x), pf(y), pf(x), pf(y));\n j += 4;\n break;\n\n case _util.OPS.closePath:\n d.push(\"Z\");\n break;\n }\n }\n } catch (err) {\n _iterator6.e(err);\n } finally {\n _iterator6.f();\n }\n\n d = d.join(\" \");\n\n if (current.path && ops.length > 0 && ops[0] !== _util.OPS.rectangle && ops[0] !== _util.OPS.moveTo) {\n d = current.path.getAttributeNS(null, \"d\") + d;\n } else {\n current.path = this.svgFactory.createElement(\"svg:path\");\n\n this._ensureTransformGroup().appendChild(current.path);\n }\n\n current.path.setAttributeNS(null, \"d\", d);\n current.path.setAttributeNS(null, \"fill\", \"none\");\n current.element = current.path;\n current.setCurrentPoint(x, y);\n }\n }, {\n key: \"endPath\",\n value: function endPath() {\n var current = this.current;\n current.path = null;\n\n if (!this.pendingClip) {\n return;\n }\n\n if (!current.element) {\n this.pendingClip = null;\n return;\n }\n\n var clipId = \"clippath\".concat(clipCount++);\n var clipPath = this.svgFactory.createElement(\"svg:clipPath\");\n clipPath.setAttributeNS(null, \"id\", clipId);\n clipPath.setAttributeNS(null, \"transform\", pm(this.transformMatrix));\n var clipElement = current.element.cloneNode(true);\n\n if (this.pendingClip === \"evenodd\") {\n clipElement.setAttributeNS(null, \"clip-rule\", \"evenodd\");\n } else {\n clipElement.setAttributeNS(null, \"clip-rule\", \"nonzero\");\n }\n\n this.pendingClip = null;\n clipPath.appendChild(clipElement);\n this.defs.appendChild(clipPath);\n\n if (current.activeClipUrl) {\n current.clipGroup = null;\n\n var _iterator7 = _createForOfIteratorHelper(this.extraStack),\n _step7;\n\n try {\n for (_iterator7.s(); !(_step7 = _iterator7.n()).done;) {\n var prev = _step7.value;\n prev.clipGroup = null;\n }\n } catch (err) {\n _iterator7.e(err);\n } finally {\n _iterator7.f();\n }\n\n clipPath.setAttributeNS(null, \"clip-path\", current.activeClipUrl);\n }\n\n current.activeClipUrl = \"url(#\".concat(clipId, \")\");\n this.tgrp = null;\n }\n }, {\n key: \"clip\",\n value: function clip(type) {\n this.pendingClip = type;\n }\n }, {\n key: \"closePath\",\n value: function closePath() {\n var current = this.current;\n\n if (current.path) {\n var d = \"\".concat(current.path.getAttributeNS(null, \"d\"), \"Z\");\n current.path.setAttributeNS(null, \"d\", d);\n }\n }\n }, {\n key: \"setLeading\",\n value: function setLeading(leading) {\n this.current.leading = -leading;\n }\n }, {\n key: \"setTextRise\",\n value: function setTextRise(textRise) {\n this.current.textRise = textRise;\n }\n }, {\n key: \"setTextRenderingMode\",\n value: function setTextRenderingMode(textRenderingMode) {\n this.current.textRenderingMode = textRenderingMode;\n }\n }, {\n key: \"setHScale\",\n value: function setHScale(scale) {\n this.current.textHScale = scale / 100;\n }\n }, {\n key: \"setRenderingIntent\",\n value: function setRenderingIntent(intent) {}\n }, {\n key: \"setFlatness\",\n value: function setFlatness(flatness) {}\n }, {\n key: \"setGState\",\n value: function setGState(states) {\n var _iterator8 = _createForOfIteratorHelper(states),\n _step8;\n\n try {\n for (_iterator8.s(); !(_step8 = _iterator8.n()).done;) {\n var _step8$value = _slicedToArray(_step8.value, 2),\n key = _step8$value[0],\n value = _step8$value[1];\n\n switch (key) {\n case \"LW\":\n this.setLineWidth(value);\n break;\n\n case \"LC\":\n this.setLineCap(value);\n break;\n\n case \"LJ\":\n this.setLineJoin(value);\n break;\n\n case \"ML\":\n this.setMiterLimit(value);\n break;\n\n case \"D\":\n this.setDash(value[0], value[1]);\n break;\n\n case \"RI\":\n this.setRenderingIntent(value);\n break;\n\n case \"FL\":\n this.setFlatness(value);\n break;\n\n case \"Font\":\n this.setFont(value);\n break;\n\n case \"CA\":\n this.setStrokeAlpha(value);\n break;\n\n case \"ca\":\n this.setFillAlpha(value);\n break;\n\n default:\n (0, _util.warn)(\"Unimplemented graphic state operator \".concat(key));\n break;\n }\n }\n } catch (err) {\n _iterator8.e(err);\n } finally {\n _iterator8.f();\n }\n }\n }, {\n key: \"fill\",\n value: function fill() {\n var current = this.current;\n\n if (current.element) {\n current.element.setAttributeNS(null, \"fill\", current.fillColor);\n current.element.setAttributeNS(null, \"fill-opacity\", current.fillAlpha);\n this.endPath();\n }\n }\n }, {\n key: \"stroke\",\n value: function stroke() {\n var current = this.current;\n\n if (current.element) {\n this._setStrokeAttributes(current.element);\n\n current.element.setAttributeNS(null, \"fill\", \"none\");\n this.endPath();\n }\n }\n }, {\n key: \"_setStrokeAttributes\",\n value: function _setStrokeAttributes(element) {\n var lineWidthScale = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 1;\n var current = this.current;\n var dashArray = current.dashArray;\n\n if (lineWidthScale !== 1 && dashArray.length > 0) {\n dashArray = dashArray.map(function (value) {\n return lineWidthScale * value;\n });\n }\n\n element.setAttributeNS(null, \"stroke\", current.strokeColor);\n element.setAttributeNS(null, \"stroke-opacity\", current.strokeAlpha);\n element.setAttributeNS(null, \"stroke-miterlimit\", pf(current.miterLimit));\n element.setAttributeNS(null, \"stroke-linecap\", current.lineCap);\n element.setAttributeNS(null, \"stroke-linejoin\", current.lineJoin);\n element.setAttributeNS(null, \"stroke-width\", pf(lineWidthScale * current.lineWidth) + \"px\");\n element.setAttributeNS(null, \"stroke-dasharray\", dashArray.map(pf).join(\" \"));\n element.setAttributeNS(null, \"stroke-dashoffset\", pf(lineWidthScale * current.dashPhase) + \"px\");\n }\n }, {\n key: \"eoFill\",\n value: function eoFill() {\n if (this.current.element) {\n this.current.element.setAttributeNS(null, \"fill-rule\", \"evenodd\");\n }\n\n this.fill();\n }\n }, {\n key: \"fillStroke\",\n value: function fillStroke() {\n this.stroke();\n this.fill();\n }\n }, {\n key: \"eoFillStroke\",\n value: function eoFillStroke() {\n if (this.current.element) {\n this.current.element.setAttributeNS(null, \"fill-rule\", \"evenodd\");\n }\n\n this.fillStroke();\n }\n }, {\n key: \"closeStroke\",\n value: function closeStroke() {\n this.closePath();\n this.stroke();\n }\n }, {\n key: \"closeFillStroke\",\n value: function closeFillStroke() {\n this.closePath();\n this.fillStroke();\n }\n }, {\n key: \"closeEOFillStroke\",\n value: function closeEOFillStroke() {\n this.closePath();\n this.eoFillStroke();\n }\n }, {\n key: \"paintSolidColorImageMask\",\n value: function paintSolidColorImageMask() {\n var rect = this.svgFactory.createElement(\"svg:rect\");\n rect.setAttributeNS(null, \"x\", \"0\");\n rect.setAttributeNS(null, \"y\", \"0\");\n rect.setAttributeNS(null, \"width\", \"1px\");\n rect.setAttributeNS(null, \"height\", \"1px\");\n rect.setAttributeNS(null, \"fill\", this.current.fillColor);\n\n this._ensureTransformGroup().appendChild(rect);\n }\n }, {\n key: \"paintImageXObject\",\n value: function paintImageXObject(objId) {\n var imgData = objId.startsWith(\"g_\") ? this.commonObjs.get(objId) : this.objs.get(objId);\n\n if (!imgData) {\n (0, _util.warn)(\"Dependent image with object ID \".concat(objId, \" is not ready yet\"));\n return;\n }\n\n this.paintInlineImageXObject(imgData);\n }\n }, {\n key: \"paintInlineImageXObject\",\n value: function paintInlineImageXObject(imgData, mask) {\n var width = imgData.width;\n var height = imgData.height;\n var imgSrc = convertImgDataToPng(imgData, this.forceDataSchema, !!mask);\n var cliprect = this.svgFactory.createElement(\"svg:rect\");\n cliprect.setAttributeNS(null, \"x\", \"0\");\n cliprect.setAttributeNS(null, \"y\", \"0\");\n cliprect.setAttributeNS(null, \"width\", pf(width));\n cliprect.setAttributeNS(null, \"height\", pf(height));\n this.current.element = cliprect;\n this.clip(\"nonzero\");\n var imgEl = this.svgFactory.createElement(\"svg:image\");\n imgEl.setAttributeNS(XLINK_NS, \"xlink:href\", imgSrc);\n imgEl.setAttributeNS(null, \"x\", \"0\");\n imgEl.setAttributeNS(null, \"y\", pf(-height));\n imgEl.setAttributeNS(null, \"width\", pf(width) + \"px\");\n imgEl.setAttributeNS(null, \"height\", pf(height) + \"px\");\n imgEl.setAttributeNS(null, \"transform\", \"scale(\".concat(pf(1 / width), \" \").concat(pf(-1 / height), \")\"));\n\n if (mask) {\n mask.appendChild(imgEl);\n } else {\n this._ensureTransformGroup().appendChild(imgEl);\n }\n }\n }, {\n key: \"paintImageMaskXObject\",\n value: function paintImageMaskXObject(imgData) {\n var current = this.current;\n var width = imgData.width;\n var height = imgData.height;\n var fillColor = current.fillColor;\n current.maskId = \"mask\".concat(maskCount++);\n var mask = this.svgFactory.createElement(\"svg:mask\");\n mask.setAttributeNS(null, \"id\", current.maskId);\n var rect = this.svgFactory.createElement(\"svg:rect\");\n rect.setAttributeNS(null, \"x\", \"0\");\n rect.setAttributeNS(null, \"y\", \"0\");\n rect.setAttributeNS(null, \"width\", pf(width));\n rect.setAttributeNS(null, \"height\", pf(height));\n rect.setAttributeNS(null, \"fill\", fillColor);\n rect.setAttributeNS(null, \"mask\", \"url(#\".concat(current.maskId, \")\"));\n this.defs.appendChild(mask);\n\n this._ensureTransformGroup().appendChild(rect);\n\n this.paintInlineImageXObject(imgData, mask);\n }\n }, {\n key: \"paintFormXObjectBegin\",\n value: function paintFormXObjectBegin(matrix, bbox) {\n if (Array.isArray(matrix) && matrix.length === 6) {\n this.transform(matrix[0], matrix[1], matrix[2], matrix[3], matrix[4], matrix[5]);\n }\n\n if (bbox) {\n var width = bbox[2] - bbox[0];\n var height = bbox[3] - bbox[1];\n var cliprect = this.svgFactory.createElement(\"svg:rect\");\n cliprect.setAttributeNS(null, \"x\", bbox[0]);\n cliprect.setAttributeNS(null, \"y\", bbox[1]);\n cliprect.setAttributeNS(null, \"width\", pf(width));\n cliprect.setAttributeNS(null, \"height\", pf(height));\n this.current.element = cliprect;\n this.clip(\"nonzero\");\n this.endPath();\n }\n }\n }, {\n key: \"paintFormXObjectEnd\",\n value: function paintFormXObjectEnd() {}\n }, {\n key: \"_initialize\",\n value: function _initialize(viewport) {\n var svg = this.svgFactory.create(viewport.width, viewport.height);\n var definitions = this.svgFactory.createElement(\"svg:defs\");\n svg.appendChild(definitions);\n this.defs = definitions;\n var rootGroup = this.svgFactory.createElement(\"svg:g\");\n rootGroup.setAttributeNS(null, \"transform\", pm(viewport.transform));\n svg.appendChild(rootGroup);\n this.svg = rootGroup;\n return svg;\n }\n }, {\n key: \"_ensureClipGroup\",\n value: function _ensureClipGroup() {\n if (!this.current.clipGroup) {\n var clipGroup = this.svgFactory.createElement(\"svg:g\");\n clipGroup.setAttributeNS(null, \"clip-path\", this.current.activeClipUrl);\n this.svg.appendChild(clipGroup);\n this.current.clipGroup = clipGroup;\n }\n\n return this.current.clipGroup;\n }\n }, {\n key: \"_ensureTransformGroup\",\n value: function _ensureTransformGroup() {\n if (!this.tgrp) {\n this.tgrp = this.svgFactory.createElement(\"svg:g\");\n this.tgrp.setAttributeNS(null, \"transform\", pm(this.transformMatrix));\n\n if (this.current.activeClipUrl) {\n this._ensureClipGroup().appendChild(this.tgrp);\n } else {\n this.svg.appendChild(this.tgrp);\n }\n }\n\n return this.tgrp;\n }\n }]);\n\n return SVGGraphics;\n }();\n}\n\n/***/ }),\n/* 135 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.XfaLayer = void 0;\n\nvar _util = __w_pdfjs_require__(4);\n\nvar _xfa_text = __w_pdfjs_require__(130);\n\nfunction _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }\n\nfunction _nonIterableRest() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\nfunction _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== \"undefined\" && arr[Symbol.iterator] || arr[\"@@iterator\"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"] != null) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; }\n\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\n\nfunction _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e2) { throw _e2; }, f: F }; } throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e3) { didErr = true; err = _e3; }, f: function f() { try { if (!normalCompletion && it[\"return\"] != null) it[\"return\"](); } finally { if (didErr) throw err; } } }; }\n\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nvar XfaLayer = /*#__PURE__*/function () {\n function XfaLayer() {\n _classCallCheck(this, XfaLayer);\n }\n\n _createClass(XfaLayer, null, [{\n key: \"setupStorage\",\n value: function setupStorage(html, id, element, storage, intent) {\n var storedData = storage.getValue(id, {\n value: null\n });\n\n switch (element.name) {\n case \"textarea\":\n if (storedData.value !== null) {\n html.textContent = storedData.value;\n }\n\n if (intent === \"print\") {\n break;\n }\n\n html.addEventListener(\"input\", function (event) {\n storage.setValue(id, {\n value: event.target.value\n });\n });\n break;\n\n case \"input\":\n if (element.attributes.type === \"radio\" || element.attributes.type === \"checkbox\") {\n if (storedData.value === element.attributes.xfaOn) {\n html.setAttribute(\"checked\", true);\n } else if (storedData.value === element.attributes.xfaOff) {\n html.removeAttribute(\"checked\");\n }\n\n if (intent === \"print\") {\n break;\n }\n\n html.addEventListener(\"change\", function (event) {\n storage.setValue(id, {\n value: event.target.checked ? event.target.getAttribute(\"xfaOn\") : event.target.getAttribute(\"xfaOff\")\n });\n });\n } else {\n if (storedData.value !== null) {\n html.setAttribute(\"value\", storedData.value);\n }\n\n if (intent === \"print\") {\n break;\n }\n\n html.addEventListener(\"input\", function (event) {\n storage.setValue(id, {\n value: event.target.value\n });\n });\n }\n\n break;\n\n case \"select\":\n if (storedData.value !== null) {\n var _iterator = _createForOfIteratorHelper(element.children),\n _step;\n\n try {\n for (_iterator.s(); !(_step = _iterator.n()).done;) {\n var option = _step.value;\n\n if (option.attributes.value === storedData.value) {\n option.attributes.selected = true;\n }\n }\n } catch (err) {\n _iterator.e(err);\n } finally {\n _iterator.f();\n }\n }\n\n html.addEventListener(\"input\", function (event) {\n var options = event.target.options;\n var value = options.selectedIndex === -1 ? \"\" : options[options.selectedIndex].value;\n storage.setValue(id, {\n value: value\n });\n });\n break;\n }\n }\n }, {\n key: \"setAttributes\",\n value: function setAttributes(_ref) {\n var html = _ref.html,\n element = _ref.element,\n _ref$storage = _ref.storage,\n storage = _ref$storage === void 0 ? null : _ref$storage,\n intent = _ref.intent,\n linkService = _ref.linkService;\n var attributes = element.attributes;\n var isHTMLAnchorElement = html instanceof HTMLAnchorElement;\n\n if (attributes.type === \"radio\") {\n attributes.name = \"\".concat(attributes.name, \"-\").concat(intent);\n }\n\n for (var _i = 0, _Object$entries = Object.entries(attributes); _i < _Object$entries.length; _i++) {\n var _Object$entries$_i = _slicedToArray(_Object$entries[_i], 2),\n key = _Object$entries$_i[0],\n value = _Object$entries$_i[1];\n\n if (value === null || value === undefined || key === \"dataId\") {\n continue;\n }\n\n if (key !== \"style\") {\n if (key === \"textContent\") {\n html.textContent = value;\n } else if (key === \"class\") {\n html.setAttribute(key, value.join(\" \"));\n } else {\n if (isHTMLAnchorElement && (key === \"href\" || key === \"newWindow\")) {\n continue;\n }\n\n html.setAttribute(key, value);\n }\n } else {\n Object.assign(html.style, value);\n }\n }\n\n if (isHTMLAnchorElement) {\n var _linkService$addLinkA;\n\n if (!linkService.addLinkAttributes) {\n (0, _util.warn)(\"XfaLayer.setAttribute - missing `addLinkAttributes`-method on the `linkService`-instance.\");\n }\n\n (_linkService$addLinkA = linkService.addLinkAttributes) === null || _linkService$addLinkA === void 0 ? void 0 : _linkService$addLinkA.call(linkService, html, attributes.href, attributes.newWindow);\n }\n\n if (storage && attributes.dataId) {\n this.setupStorage(html, attributes.dataId, element, storage);\n }\n }\n }, {\n key: \"render\",\n value: function render(parameters) {\n var storage = parameters.annotationStorage;\n var linkService = parameters.linkService;\n var root = parameters.xfa;\n var intent = parameters.intent || \"display\";\n var rootHtml = document.createElement(root.name);\n\n if (root.attributes) {\n this.setAttributes({\n html: rootHtml,\n element: root,\n intent: intent,\n linkService: linkService\n });\n }\n\n var stack = [[root, -1, rootHtml]];\n var rootDiv = parameters.div;\n rootDiv.appendChild(rootHtml);\n var transform = \"matrix(\".concat(parameters.viewport.transform.join(\",\"), \")\");\n rootDiv.style.transform = transform;\n rootDiv.setAttribute(\"class\", \"xfaLayer xfaFont\");\n var textDivs = [];\n\n while (stack.length > 0) {\n var _child$attributes;\n\n var _stack = _slicedToArray(stack[stack.length - 1], 3),\n parent = _stack[0],\n i = _stack[1],\n html = _stack[2];\n\n if (i + 1 === parent.children.length) {\n stack.pop();\n continue;\n }\n\n var child = parent.children[++stack[stack.length - 1][1]];\n\n if (child === null) {\n continue;\n }\n\n var name = child.name;\n\n if (name === \"#text\") {\n var node = document.createTextNode(child.value);\n textDivs.push(node);\n html.appendChild(node);\n continue;\n }\n\n var childHtml = void 0;\n\n if (child !== null && child !== void 0 && (_child$attributes = child.attributes) !== null && _child$attributes !== void 0 && _child$attributes.xmlns) {\n childHtml = document.createElementNS(child.attributes.xmlns, name);\n } else {\n childHtml = document.createElement(name);\n }\n\n html.appendChild(childHtml);\n\n if (child.attributes) {\n this.setAttributes({\n html: childHtml,\n element: child,\n storage: storage,\n intent: intent,\n linkService: linkService\n });\n }\n\n if (child.children && child.children.length > 0) {\n stack.push([child, -1, childHtml]);\n } else if (child.value) {\n var _node = document.createTextNode(child.value);\n\n if (_xfa_text.XfaText.shouldBuildText(name)) {\n textDivs.push(_node);\n }\n\n childHtml.appendChild(_node);\n }\n }\n\n var _iterator2 = _createForOfIteratorHelper(rootDiv.querySelectorAll(\".xfaNonInteractive input, .xfaNonInteractive textarea\")),\n _step2;\n\n try {\n for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {\n var el = _step2.value;\n el.setAttribute(\"readOnly\", true);\n }\n } catch (err) {\n _iterator2.e(err);\n } finally {\n _iterator2.f();\n }\n\n return {\n textDivs: textDivs\n };\n }\n }, {\n key: \"update\",\n value: function update(parameters) {\n var transform = \"matrix(\".concat(parameters.viewport.transform.join(\",\"), \")\");\n parameters.div.style.transform = transform;\n parameters.div.hidden = false;\n }\n }]);\n\n return XfaLayer;\n}();\n\nexports.XfaLayer = XfaLayer;\n\n/***/ }),\n/* 136 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\"use strict\";\n\n\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.PDFNodeStream = void 0;\n\nvar _regenerator = _interopRequireDefault(__w_pdfjs_require__(2));\n\nvar _util = __w_pdfjs_require__(4);\n\nvar _network_utils = __w_pdfjs_require__(137);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } else if (call !== void 0) { throw new TypeError(\"Derived constructors may only return object or undefined\"); } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\nfunction asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }\n\nfunction _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err); } _next(undefined); }); }; }\n\nfunction _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it[\"return\"] != null) it[\"return\"](); } finally { if (didErr) throw err; } } }; }\n\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n;\n\nvar fs = require(\"fs\");\n\nvar http = require(\"http\");\n\nvar https = require(\"https\");\n\nvar url = require(\"url\");\n\nvar fileUriRegex = /^file:\\/\\/\\/[a-zA-Z]:\\//;\n\nfunction parseUrl(sourceUrl) {\n var parsedUrl = url.parse(sourceUrl);\n\n if (parsedUrl.protocol === \"file:\" || parsedUrl.host) {\n return parsedUrl;\n }\n\n if (/^[a-z]:[/\\\\]/i.test(sourceUrl)) {\n return url.parse(\"file:///\".concat(sourceUrl));\n }\n\n if (!parsedUrl.host) {\n parsedUrl.protocol = \"file:\";\n }\n\n return parsedUrl;\n}\n\nvar PDFNodeStream = /*#__PURE__*/function () {\n function PDFNodeStream(source) {\n _classCallCheck(this, PDFNodeStream);\n\n this.source = source;\n this.url = parseUrl(source.url);\n this.isHttp = this.url.protocol === \"http:\" || this.url.protocol === \"https:\";\n this.isFsUrl = this.url.protocol === \"file:\";\n this.httpHeaders = this.isHttp && source.httpHeaders || {};\n this._fullRequestReader = null;\n this._rangeRequestReaders = [];\n }\n\n _createClass(PDFNodeStream, [{\n key: \"_progressiveDataLength\",\n get: function get() {\n var _this$_fullRequestRea, _this$_fullRequestRea2;\n\n return (_this$_fullRequestRea = (_this$_fullRequestRea2 = this._fullRequestReader) === null || _this$_fullRequestRea2 === void 0 ? void 0 : _this$_fullRequestRea2._loaded) !== null && _this$_fullRequestRea !== void 0 ? _this$_fullRequestRea : 0;\n }\n }, {\n key: \"getFullReader\",\n value: function getFullReader() {\n (0, _util.assert)(!this._fullRequestReader, \"PDFNodeStream.getFullReader can only be called once.\");\n this._fullRequestReader = this.isFsUrl ? new PDFNodeStreamFsFullReader(this) : new PDFNodeStreamFullReader(this);\n return this._fullRequestReader;\n }\n }, {\n key: \"getRangeReader\",\n value: function getRangeReader(start, end) {\n if (end <= this._progressiveDataLength) {\n return null;\n }\n\n var rangeReader = this.isFsUrl ? new PDFNodeStreamFsRangeReader(this, start, end) : new PDFNodeStreamRangeReader(this, start, end);\n\n this._rangeRequestReaders.push(rangeReader);\n\n return rangeReader;\n }\n }, {\n key: \"cancelAllRequests\",\n value: function cancelAllRequests(reason) {\n if (this._fullRequestReader) {\n this._fullRequestReader.cancel(reason);\n }\n\n var _iterator = _createForOfIteratorHelper(this._rangeRequestReaders.slice(0)),\n _step;\n\n try {\n for (_iterator.s(); !(_step = _iterator.n()).done;) {\n var reader = _step.value;\n reader.cancel(reason);\n }\n } catch (err) {\n _iterator.e(err);\n } finally {\n _iterator.f();\n }\n }\n }]);\n\n return PDFNodeStream;\n}();\n\nexports.PDFNodeStream = PDFNodeStream;\n\nvar BaseFullReader = /*#__PURE__*/function () {\n function BaseFullReader(stream) {\n _classCallCheck(this, BaseFullReader);\n\n this._url = stream.url;\n this._done = false;\n this._storedError = null;\n this.onProgress = null;\n var source = stream.source;\n this._contentLength = source.length;\n this._loaded = 0;\n this._filename = null;\n this._disableRange = source.disableRange || false;\n this._rangeChunkSize = source.rangeChunkSize;\n\n if (!this._rangeChunkSize && !this._disableRange) {\n this._disableRange = true;\n }\n\n this._isStreamingSupported = !source.disableStream;\n this._isRangeSupported = !source.disableRange;\n this._readableStream = null;\n this._readCapability = (0, _util.createPromiseCapability)();\n this._headersCapability = (0, _util.createPromiseCapability)();\n }\n\n _createClass(BaseFullReader, [{\n key: \"headersReady\",\n get: function get() {\n return this._headersCapability.promise;\n }\n }, {\n key: \"filename\",\n get: function get() {\n return this._filename;\n }\n }, {\n key: \"contentLength\",\n get: function get() {\n return this._contentLength;\n }\n }, {\n key: \"isRangeSupported\",\n get: function get() {\n return this._isRangeSupported;\n }\n }, {\n key: \"isStreamingSupported\",\n get: function get() {\n return this._isStreamingSupported;\n }\n }, {\n key: \"read\",\n value: function () {\n var _read = _asyncToGenerator( /*#__PURE__*/_regenerator[\"default\"].mark(function _callee() {\n var chunk, buffer;\n return _regenerator[\"default\"].wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n _context.next = 2;\n return this._readCapability.promise;\n\n case 2:\n if (!this._done) {\n _context.next = 4;\n break;\n }\n\n return _context.abrupt(\"return\", {\n value: undefined,\n done: true\n });\n\n case 4:\n if (!this._storedError) {\n _context.next = 6;\n break;\n }\n\n throw this._storedError;\n\n case 6:\n chunk = this._readableStream.read();\n\n if (!(chunk === null)) {\n _context.next = 10;\n break;\n }\n\n this._readCapability = (0, _util.createPromiseCapability)();\n return _context.abrupt(\"return\", this.read());\n\n case 10:\n this._loaded += chunk.length;\n\n if (this.onProgress) {\n this.onProgress({\n loaded: this._loaded,\n total: this._contentLength\n });\n }\n\n buffer = new Uint8Array(chunk).buffer;\n return _context.abrupt(\"return\", {\n value: buffer,\n done: false\n });\n\n case 14:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee, this);\n }));\n\n function read() {\n return _read.apply(this, arguments);\n }\n\n return read;\n }()\n }, {\n key: \"cancel\",\n value: function cancel(reason) {\n if (!this._readableStream) {\n this._error(reason);\n\n return;\n }\n\n this._readableStream.destroy(reason);\n }\n }, {\n key: \"_error\",\n value: function _error(reason) {\n this._storedError = reason;\n\n this._readCapability.resolve();\n }\n }, {\n key: \"_setReadableStream\",\n value: function _setReadableStream(readableStream) {\n var _this = this;\n\n this._readableStream = readableStream;\n readableStream.on(\"readable\", function () {\n _this._readCapability.resolve();\n });\n readableStream.on(\"end\", function () {\n readableStream.destroy();\n _this._done = true;\n\n _this._readCapability.resolve();\n });\n readableStream.on(\"error\", function (reason) {\n _this._error(reason);\n });\n\n if (!this._isStreamingSupported && this._isRangeSupported) {\n this._error(new _util.AbortException(\"streaming is disabled\"));\n }\n\n if (this._storedError) {\n this._readableStream.destroy(this._storedError);\n }\n }\n }]);\n\n return BaseFullReader;\n}();\n\nvar BaseRangeReader = /*#__PURE__*/function () {\n function BaseRangeReader(stream) {\n _classCallCheck(this, BaseRangeReader);\n\n this._url = stream.url;\n this._done = false;\n this._storedError = null;\n this.onProgress = null;\n this._loaded = 0;\n this._readableStream = null;\n this._readCapability = (0, _util.createPromiseCapability)();\n var source = stream.source;\n this._isStreamingSupported = !source.disableStream;\n }\n\n _createClass(BaseRangeReader, [{\n key: \"isStreamingSupported\",\n get: function get() {\n return this._isStreamingSupported;\n }\n }, {\n key: \"read\",\n value: function () {\n var _read2 = _asyncToGenerator( /*#__PURE__*/_regenerator[\"default\"].mark(function _callee2() {\n var chunk, buffer;\n return _regenerator[\"default\"].wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n _context2.next = 2;\n return this._readCapability.promise;\n\n case 2:\n if (!this._done) {\n _context2.next = 4;\n break;\n }\n\n return _context2.abrupt(\"return\", {\n value: undefined,\n done: true\n });\n\n case 4:\n if (!this._storedError) {\n _context2.next = 6;\n break;\n }\n\n throw this._storedError;\n\n case 6:\n chunk = this._readableStream.read();\n\n if (!(chunk === null)) {\n _context2.next = 10;\n break;\n }\n\n this._readCapability = (0, _util.createPromiseCapability)();\n return _context2.abrupt(\"return\", this.read());\n\n case 10:\n this._loaded += chunk.length;\n\n if (this.onProgress) {\n this.onProgress({\n loaded: this._loaded\n });\n }\n\n buffer = new Uint8Array(chunk).buffer;\n return _context2.abrupt(\"return\", {\n value: buffer,\n done: false\n });\n\n case 14:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2, this);\n }));\n\n function read() {\n return _read2.apply(this, arguments);\n }\n\n return read;\n }()\n }, {\n key: \"cancel\",\n value: function cancel(reason) {\n if (!this._readableStream) {\n this._error(reason);\n\n return;\n }\n\n this._readableStream.destroy(reason);\n }\n }, {\n key: \"_error\",\n value: function _error(reason) {\n this._storedError = reason;\n\n this._readCapability.resolve();\n }\n }, {\n key: \"_setReadableStream\",\n value: function _setReadableStream(readableStream) {\n var _this2 = this;\n\n this._readableStream = readableStream;\n readableStream.on(\"readable\", function () {\n _this2._readCapability.resolve();\n });\n readableStream.on(\"end\", function () {\n readableStream.destroy();\n _this2._done = true;\n\n _this2._readCapability.resolve();\n });\n readableStream.on(\"error\", function (reason) {\n _this2._error(reason);\n });\n\n if (this._storedError) {\n this._readableStream.destroy(this._storedError);\n }\n }\n }]);\n\n return BaseRangeReader;\n}();\n\nfunction createRequestOptions(parsedUrl, headers) {\n return {\n protocol: parsedUrl.protocol,\n auth: parsedUrl.auth,\n host: parsedUrl.hostname,\n port: parsedUrl.port,\n path: parsedUrl.path,\n method: \"GET\",\n headers: headers\n };\n}\n\nvar PDFNodeStreamFullReader = /*#__PURE__*/function (_BaseFullReader) {\n _inherits(PDFNodeStreamFullReader, _BaseFullReader);\n\n var _super = _createSuper(PDFNodeStreamFullReader);\n\n function PDFNodeStreamFullReader(stream) {\n var _this3;\n\n _classCallCheck(this, PDFNodeStreamFullReader);\n\n _this3 = _super.call(this, stream);\n\n var handleResponse = function handleResponse(response) {\n if (response.statusCode === 404) {\n var error = new _util.MissingPDFException(\"Missing PDF \\\"\".concat(_this3._url, \"\\\".\"));\n _this3._storedError = error;\n\n _this3._headersCapability.reject(error);\n\n return;\n }\n\n _this3._headersCapability.resolve();\n\n _this3._setReadableStream(response);\n\n var getResponseHeader = function getResponseHeader(name) {\n return _this3._readableStream.headers[name.toLowerCase()];\n };\n\n var _validateRangeRequest = (0, _network_utils.validateRangeRequestCapabilities)({\n getResponseHeader: getResponseHeader,\n isHttp: stream.isHttp,\n rangeChunkSize: _this3._rangeChunkSize,\n disableRange: _this3._disableRange\n }),\n allowRangeRequests = _validateRangeRequest.allowRangeRequests,\n suggestedLength = _validateRangeRequest.suggestedLength;\n\n _this3._isRangeSupported = allowRangeRequests;\n _this3._contentLength = suggestedLength || _this3._contentLength;\n _this3._filename = (0, _network_utils.extractFilenameFromHeader)(getResponseHeader);\n };\n\n _this3._request = null;\n\n if (_this3._url.protocol === \"http:\") {\n _this3._request = http.request(createRequestOptions(_this3._url, stream.httpHeaders), handleResponse);\n } else {\n _this3._request = https.request(createRequestOptions(_this3._url, stream.httpHeaders), handleResponse);\n }\n\n _this3._request.on(\"error\", function (reason) {\n _this3._storedError = reason;\n\n _this3._headersCapability.reject(reason);\n });\n\n _this3._request.end();\n\n return _this3;\n }\n\n return PDFNodeStreamFullReader;\n}(BaseFullReader);\n\nvar PDFNodeStreamRangeReader = /*#__PURE__*/function (_BaseRangeReader) {\n _inherits(PDFNodeStreamRangeReader, _BaseRangeReader);\n\n var _super2 = _createSuper(PDFNodeStreamRangeReader);\n\n function PDFNodeStreamRangeReader(stream, start, end) {\n var _this4;\n\n _classCallCheck(this, PDFNodeStreamRangeReader);\n\n _this4 = _super2.call(this, stream);\n _this4._httpHeaders = {};\n\n for (var property in stream.httpHeaders) {\n var value = stream.httpHeaders[property];\n\n if (typeof value === \"undefined\") {\n continue;\n }\n\n _this4._httpHeaders[property] = value;\n }\n\n _this4._httpHeaders.Range = \"bytes=\".concat(start, \"-\").concat(end - 1);\n\n var handleResponse = function handleResponse(response) {\n if (response.statusCode === 404) {\n var error = new _util.MissingPDFException(\"Missing PDF \\\"\".concat(_this4._url, \"\\\".\"));\n _this4._storedError = error;\n return;\n }\n\n _this4._setReadableStream(response);\n };\n\n _this4._request = null;\n\n if (_this4._url.protocol === \"http:\") {\n _this4._request = http.request(createRequestOptions(_this4._url, _this4._httpHeaders), handleResponse);\n } else {\n _this4._request = https.request(createRequestOptions(_this4._url, _this4._httpHeaders), handleResponse);\n }\n\n _this4._request.on(\"error\", function (reason) {\n _this4._storedError = reason;\n });\n\n _this4._request.end();\n\n return _this4;\n }\n\n return PDFNodeStreamRangeReader;\n}(BaseRangeReader);\n\nvar PDFNodeStreamFsFullReader = /*#__PURE__*/function (_BaseFullReader2) {\n _inherits(PDFNodeStreamFsFullReader, _BaseFullReader2);\n\n var _super3 = _createSuper(PDFNodeStreamFsFullReader);\n\n function PDFNodeStreamFsFullReader(stream) {\n var _this5;\n\n _classCallCheck(this, PDFNodeStreamFsFullReader);\n\n _this5 = _super3.call(this, stream);\n var path = decodeURIComponent(_this5._url.path);\n\n if (fileUriRegex.test(_this5._url.href)) {\n path = path.replace(/^\\//, \"\");\n }\n\n fs.lstat(path, function (error, stat) {\n if (error) {\n if (error.code === \"ENOENT\") {\n error = new _util.MissingPDFException(\"Missing PDF \\\"\".concat(path, \"\\\".\"));\n }\n\n _this5._storedError = error;\n\n _this5._headersCapability.reject(error);\n\n return;\n }\n\n _this5._contentLength = stat.size;\n\n _this5._setReadableStream(fs.createReadStream(path));\n\n _this5._headersCapability.resolve();\n });\n return _this5;\n }\n\n return PDFNodeStreamFsFullReader;\n}(BaseFullReader);\n\nvar PDFNodeStreamFsRangeReader = /*#__PURE__*/function (_BaseRangeReader2) {\n _inherits(PDFNodeStreamFsRangeReader, _BaseRangeReader2);\n\n var _super4 = _createSuper(PDFNodeStreamFsRangeReader);\n\n function PDFNodeStreamFsRangeReader(stream, start, end) {\n var _this6;\n\n _classCallCheck(this, PDFNodeStreamFsRangeReader);\n\n _this6 = _super4.call(this, stream);\n var path = decodeURIComponent(_this6._url.path);\n\n if (fileUriRegex.test(_this6._url.href)) {\n path = path.replace(/^\\//, \"\");\n }\n\n _this6._setReadableStream(fs.createReadStream(path, {\n start: start,\n end: end - 1\n }));\n\n return _this6;\n }\n\n return PDFNodeStreamFsRangeReader;\n}(BaseRangeReader);\n\n/***/ }),\n/* 137 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.createResponseStatusError = createResponseStatusError;\nexports.extractFilenameFromHeader = extractFilenameFromHeader;\nexports.validateRangeRequestCapabilities = validateRangeRequestCapabilities;\nexports.validateResponseStatus = validateResponseStatus;\n\nvar _util = __w_pdfjs_require__(4);\n\nvar _content_disposition = __w_pdfjs_require__(138);\n\nvar _display_utils = __w_pdfjs_require__(1);\n\nfunction validateRangeRequestCapabilities(_ref) {\n var getResponseHeader = _ref.getResponseHeader,\n isHttp = _ref.isHttp,\n rangeChunkSize = _ref.rangeChunkSize,\n disableRange = _ref.disableRange;\n (0, _util.assert)(rangeChunkSize > 0, \"Range chunk size must be larger than zero\");\n var returnValues = {\n allowRangeRequests: false,\n suggestedLength: undefined\n };\n var length = parseInt(getResponseHeader(\"Content-Length\"), 10);\n\n if (!Number.isInteger(length)) {\n return returnValues;\n }\n\n returnValues.suggestedLength = length;\n\n if (length <= 2 * rangeChunkSize) {\n return returnValues;\n }\n\n if (disableRange || !isHttp) {\n return returnValues;\n }\n\n if (getResponseHeader(\"Accept-Ranges\") !== \"bytes\") {\n return returnValues;\n }\n\n var contentEncoding = getResponseHeader(\"Content-Encoding\") || \"identity\";\n\n if (contentEncoding !== \"identity\") {\n return returnValues;\n }\n\n returnValues.allowRangeRequests = true;\n return returnValues;\n}\n\nfunction extractFilenameFromHeader(getResponseHeader) {\n var contentDisposition = getResponseHeader(\"Content-Disposition\");\n\n if (contentDisposition) {\n var filename = (0, _content_disposition.getFilenameFromContentDispositionHeader)(contentDisposition);\n\n if (filename.includes(\"%\")) {\n try {\n filename = decodeURIComponent(filename);\n } catch (ex) {}\n }\n\n if ((0, _display_utils.isPdfFile)(filename)) {\n return filename;\n }\n }\n\n return null;\n}\n\nfunction createResponseStatusError(status, url) {\n if (status === 404 || status === 0 && url.startsWith(\"file:\")) {\n return new _util.MissingPDFException('Missing PDF \"' + url + '\".');\n }\n\n return new _util.UnexpectedResponseException(\"Unexpected server response (\".concat(status, \") while retrieving PDF \\\"\").concat(url, \"\\\".\"), status);\n}\n\nfunction validateResponseStatus(status) {\n return status === 200 || status === 206;\n}\n\n/***/ }),\n/* 138 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.getFilenameFromContentDispositionHeader = getFilenameFromContentDispositionHeader;\n\nvar _util = __w_pdfjs_require__(4);\n\nfunction _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }\n\nfunction _nonIterableRest() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\nfunction _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== \"undefined\" && arr[Symbol.iterator] || arr[\"@@iterator\"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"] != null) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; }\n\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\n\nfunction getFilenameFromContentDispositionHeader(contentDisposition) {\n var needsEncodingFixup = true;\n var tmp = toParamRegExp(\"filename\\\\*\", \"i\").exec(contentDisposition);\n\n if (tmp) {\n tmp = tmp[1];\n var filename = rfc2616unquote(tmp);\n filename = unescape(filename);\n filename = rfc5987decode(filename);\n filename = rfc2047decode(filename);\n return fixupEncoding(filename);\n }\n\n tmp = rfc2231getparam(contentDisposition);\n\n if (tmp) {\n var _filename = rfc2047decode(tmp);\n\n return fixupEncoding(_filename);\n }\n\n tmp = toParamRegExp(\"filename\", \"i\").exec(contentDisposition);\n\n if (tmp) {\n tmp = tmp[1];\n\n var _filename2 = rfc2616unquote(tmp);\n\n _filename2 = rfc2047decode(_filename2);\n return fixupEncoding(_filename2);\n }\n\n function toParamRegExp(attributePattern, flags) {\n return new RegExp(\"(?:^|;)\\\\s*\" + attributePattern + \"\\\\s*=\\\\s*\" + \"(\" + '[^\";\\\\s][^;\\\\s]*' + \"|\" + '\"(?:[^\"\\\\\\\\]|\\\\\\\\\"?)+\"?' + \")\", flags);\n }\n\n function textdecode(encoding, value) {\n if (encoding) {\n if (!/^[\\x00-\\xFF]+$/.test(value)) {\n return value;\n }\n\n try {\n var decoder = new TextDecoder(encoding, {\n fatal: true\n });\n var buffer = (0, _util.stringToBytes)(value);\n value = decoder.decode(buffer);\n needsEncodingFixup = false;\n } catch (e) {\n if (/^utf-?8$/i.test(encoding)) {\n try {\n value = decodeURIComponent(escape(value));\n needsEncodingFixup = false;\n } catch (err) {}\n }\n }\n }\n\n return value;\n }\n\n function fixupEncoding(value) {\n if (needsEncodingFixup && /[\\x80-\\xff]/.test(value)) {\n value = textdecode(\"utf-8\", value);\n\n if (needsEncodingFixup) {\n value = textdecode(\"iso-8859-1\", value);\n }\n }\n\n return value;\n }\n\n function rfc2231getparam(contentDispositionStr) {\n var matches = [];\n var match;\n var iter = toParamRegExp(\"filename\\\\*((?!0\\\\d)\\\\d+)(\\\\*?)\", \"ig\");\n\n while ((match = iter.exec(contentDispositionStr)) !== null) {\n var _match = match,\n _match2 = _slicedToArray(_match, 4),\n n = _match2[1],\n quot = _match2[2],\n part = _match2[3];\n\n n = parseInt(n, 10);\n\n if (n in matches) {\n if (n === 0) {\n break;\n }\n\n continue;\n }\n\n matches[n] = [quot, part];\n }\n\n var parts = [];\n\n for (var _n2 = 0; _n2 < matches.length; ++_n2) {\n if (!(_n2 in matches)) {\n break;\n }\n\n var _matches$_n = _slicedToArray(matches[_n2], 2),\n _quot = _matches$_n[0],\n _part = _matches$_n[1];\n\n _part = rfc2616unquote(_part);\n\n if (_quot) {\n _part = unescape(_part);\n\n if (_n2 === 0) {\n _part = rfc5987decode(_part);\n }\n }\n\n parts.push(_part);\n }\n\n return parts.join(\"\");\n }\n\n function rfc2616unquote(value) {\n if (value.startsWith('\"')) {\n var parts = value.slice(1).split('\\\\\"');\n\n for (var i = 0; i < parts.length; ++i) {\n var quotindex = parts[i].indexOf('\"');\n\n if (quotindex !== -1) {\n parts[i] = parts[i].slice(0, quotindex);\n parts.length = i + 1;\n }\n\n parts[i] = parts[i].replace(/\\\\(.)/g, \"$1\");\n }\n\n value = parts.join('\"');\n }\n\n return value;\n }\n\n function rfc5987decode(extvalue) {\n var encodingend = extvalue.indexOf(\"'\");\n\n if (encodingend === -1) {\n return extvalue;\n }\n\n var encoding = extvalue.slice(0, encodingend);\n var langvalue = extvalue.slice(encodingend + 1);\n var value = langvalue.replace(/^[^']*'/, \"\");\n return textdecode(encoding, value);\n }\n\n function rfc2047decode(value) {\n if (!value.startsWith(\"=?\") || /[\\x00-\\x19\\x80-\\xff]/.test(value)) {\n return value;\n }\n\n return value.replace(/=\\?([\\w-]*)\\?([QqBb])\\?((?:[^?]|\\?(?!=))*)\\?=/g, function (matches, charset, encoding, text) {\n if (encoding === \"q\" || encoding === \"Q\") {\n text = text.replace(/_/g, \" \");\n text = text.replace(/=([0-9a-fA-F]{2})/g, function (match, hex) {\n return String.fromCharCode(parseInt(hex, 16));\n });\n return textdecode(charset, text);\n }\n\n try {\n text = atob(text);\n } catch (e) {}\n\n return textdecode(charset, text);\n });\n }\n\n return \"\";\n}\n\n/***/ }),\n/* 139 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.PDFNetworkStream = void 0;\n\nvar _regenerator = _interopRequireDefault(__w_pdfjs_require__(2));\n\nvar _util = __w_pdfjs_require__(4);\n\nvar _network_utils = __w_pdfjs_require__(137);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }\n\nfunction _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err); } _next(undefined); }); }; }\n\nfunction _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it[\"return\"] != null) it[\"return\"](); } finally { if (didErr) throw err; } } }; }\n\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n;\nvar OK_RESPONSE = 200;\nvar PARTIAL_CONTENT_RESPONSE = 206;\n\nfunction getArrayBuffer(xhr) {\n var data = xhr.response;\n\n if (typeof data !== \"string\") {\n return data;\n }\n\n var array = (0, _util.stringToBytes)(data);\n return array.buffer;\n}\n\nvar NetworkManager = /*#__PURE__*/function () {\n function NetworkManager(url) {\n var args = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n _classCallCheck(this, NetworkManager);\n\n this.url = url;\n this.isHttp = /^https?:/i.test(url);\n this.httpHeaders = this.isHttp && args.httpHeaders || Object.create(null);\n this.withCredentials = args.withCredentials || false;\n\n this.getXhr = args.getXhr || function NetworkManager_getXhr() {\n return new XMLHttpRequest();\n };\n\n this.currXhrId = 0;\n this.pendingRequests = Object.create(null);\n }\n\n _createClass(NetworkManager, [{\n key: \"requestRange\",\n value: function requestRange(begin, end, listeners) {\n var args = {\n begin: begin,\n end: end\n };\n\n for (var prop in listeners) {\n args[prop] = listeners[prop];\n }\n\n return this.request(args);\n }\n }, {\n key: \"requestFull\",\n value: function requestFull(listeners) {\n return this.request(listeners);\n }\n }, {\n key: \"request\",\n value: function request(args) {\n var xhr = this.getXhr();\n var xhrId = this.currXhrId++;\n var pendingRequest = this.pendingRequests[xhrId] = {\n xhr: xhr\n };\n xhr.open(\"GET\", this.url);\n xhr.withCredentials = this.withCredentials;\n\n for (var property in this.httpHeaders) {\n var value = this.httpHeaders[property];\n\n if (typeof value === \"undefined\") {\n continue;\n }\n\n xhr.setRequestHeader(property, value);\n }\n\n if (this.isHttp && \"begin\" in args && \"end\" in args) {\n xhr.setRequestHeader(\"Range\", \"bytes=\".concat(args.begin, \"-\").concat(args.end - 1));\n pendingRequest.expectedStatus = PARTIAL_CONTENT_RESPONSE;\n } else {\n pendingRequest.expectedStatus = OK_RESPONSE;\n }\n\n xhr.responseType = \"arraybuffer\";\n\n if (args.onError) {\n xhr.onerror = function (evt) {\n args.onError(xhr.status);\n };\n }\n\n xhr.onreadystatechange = this.onStateChange.bind(this, xhrId);\n xhr.onprogress = this.onProgress.bind(this, xhrId);\n pendingRequest.onHeadersReceived = args.onHeadersReceived;\n pendingRequest.onDone = args.onDone;\n pendingRequest.onError = args.onError;\n pendingRequest.onProgress = args.onProgress;\n xhr.send(null);\n return xhrId;\n }\n }, {\n key: \"onProgress\",\n value: function onProgress(xhrId, evt) {\n var _pendingRequest$onPro;\n\n var pendingRequest = this.pendingRequests[xhrId];\n\n if (!pendingRequest) {\n return;\n }\n\n (_pendingRequest$onPro = pendingRequest.onProgress) === null || _pendingRequest$onPro === void 0 ? void 0 : _pendingRequest$onPro.call(pendingRequest, evt);\n }\n }, {\n key: \"onStateChange\",\n value: function onStateChange(xhrId, evt) {\n var pendingRequest = this.pendingRequests[xhrId];\n\n if (!pendingRequest) {\n return;\n }\n\n var xhr = pendingRequest.xhr;\n\n if (xhr.readyState >= 2 && pendingRequest.onHeadersReceived) {\n pendingRequest.onHeadersReceived();\n delete pendingRequest.onHeadersReceived;\n }\n\n if (xhr.readyState !== 4) {\n return;\n }\n\n if (!(xhrId in this.pendingRequests)) {\n return;\n }\n\n delete this.pendingRequests[xhrId];\n\n if (xhr.status === 0 && this.isHttp) {\n var _pendingRequest$onErr;\n\n (_pendingRequest$onErr = pendingRequest.onError) === null || _pendingRequest$onErr === void 0 ? void 0 : _pendingRequest$onErr.call(pendingRequest, xhr.status);\n return;\n }\n\n var xhrStatus = xhr.status || OK_RESPONSE;\n var ok_response_on_range_request = xhrStatus === OK_RESPONSE && pendingRequest.expectedStatus === PARTIAL_CONTENT_RESPONSE;\n\n if (!ok_response_on_range_request && xhrStatus !== pendingRequest.expectedStatus) {\n var _pendingRequest$onErr2;\n\n (_pendingRequest$onErr2 = pendingRequest.onError) === null || _pendingRequest$onErr2 === void 0 ? void 0 : _pendingRequest$onErr2.call(pendingRequest, xhr.status);\n return;\n }\n\n var chunk = getArrayBuffer(xhr);\n\n if (xhrStatus === PARTIAL_CONTENT_RESPONSE) {\n var rangeHeader = xhr.getResponseHeader(\"Content-Range\");\n var matches = /bytes (\\d+)-(\\d+)\\/(\\d+)/.exec(rangeHeader);\n pendingRequest.onDone({\n begin: parseInt(matches[1], 10),\n chunk: chunk\n });\n } else if (chunk) {\n pendingRequest.onDone({\n begin: 0,\n chunk: chunk\n });\n } else {\n var _pendingRequest$onErr3;\n\n (_pendingRequest$onErr3 = pendingRequest.onError) === null || _pendingRequest$onErr3 === void 0 ? void 0 : _pendingRequest$onErr3.call(pendingRequest, xhr.status);\n }\n }\n }, {\n key: \"getRequestXhr\",\n value: function getRequestXhr(xhrId) {\n return this.pendingRequests[xhrId].xhr;\n }\n }, {\n key: \"isPendingRequest\",\n value: function isPendingRequest(xhrId) {\n return xhrId in this.pendingRequests;\n }\n }, {\n key: \"abortRequest\",\n value: function abortRequest(xhrId) {\n var xhr = this.pendingRequests[xhrId].xhr;\n delete this.pendingRequests[xhrId];\n xhr.abort();\n }\n }]);\n\n return NetworkManager;\n}();\n\nvar PDFNetworkStream = /*#__PURE__*/function () {\n function PDFNetworkStream(source) {\n _classCallCheck(this, PDFNetworkStream);\n\n this._source = source;\n this._manager = new NetworkManager(source.url, {\n httpHeaders: source.httpHeaders,\n withCredentials: source.withCredentials\n });\n this._rangeChunkSize = source.rangeChunkSize;\n this._fullRequestReader = null;\n this._rangeRequestReaders = [];\n }\n\n _createClass(PDFNetworkStream, [{\n key: \"_onRangeRequestReaderClosed\",\n value: function _onRangeRequestReaderClosed(reader) {\n var i = this._rangeRequestReaders.indexOf(reader);\n\n if (i >= 0) {\n this._rangeRequestReaders.splice(i, 1);\n }\n }\n }, {\n key: \"getFullReader\",\n value: function getFullReader() {\n (0, _util.assert)(!this._fullRequestReader, \"PDFNetworkStream.getFullReader can only be called once.\");\n this._fullRequestReader = new PDFNetworkStreamFullRequestReader(this._manager, this._source);\n return this._fullRequestReader;\n }\n }, {\n key: \"getRangeReader\",\n value: function getRangeReader(begin, end) {\n var reader = new PDFNetworkStreamRangeRequestReader(this._manager, begin, end);\n reader.onClosed = this._onRangeRequestReaderClosed.bind(this);\n\n this._rangeRequestReaders.push(reader);\n\n return reader;\n }\n }, {\n key: \"cancelAllRequests\",\n value: function cancelAllRequests(reason) {\n var _this$_fullRequestRea;\n\n (_this$_fullRequestRea = this._fullRequestReader) === null || _this$_fullRequestRea === void 0 ? void 0 : _this$_fullRequestRea.cancel(reason);\n\n var _iterator = _createForOfIteratorHelper(this._rangeRequestReaders.slice(0)),\n _step;\n\n try {\n for (_iterator.s(); !(_step = _iterator.n()).done;) {\n var reader = _step.value;\n reader.cancel(reason);\n }\n } catch (err) {\n _iterator.e(err);\n } finally {\n _iterator.f();\n }\n }\n }]);\n\n return PDFNetworkStream;\n}();\n\nexports.PDFNetworkStream = PDFNetworkStream;\n\nvar PDFNetworkStreamFullRequestReader = /*#__PURE__*/function () {\n function PDFNetworkStreamFullRequestReader(manager, source) {\n _classCallCheck(this, PDFNetworkStreamFullRequestReader);\n\n this._manager = manager;\n var args = {\n onHeadersReceived: this._onHeadersReceived.bind(this),\n onDone: this._onDone.bind(this),\n onError: this._onError.bind(this),\n onProgress: this._onProgress.bind(this)\n };\n this._url = source.url;\n this._fullRequestId = manager.requestFull(args);\n this._headersReceivedCapability = (0, _util.createPromiseCapability)();\n this._disableRange = source.disableRange || false;\n this._contentLength = source.length;\n this._rangeChunkSize = source.rangeChunkSize;\n\n if (!this._rangeChunkSize && !this._disableRange) {\n this._disableRange = true;\n }\n\n this._isStreamingSupported = false;\n this._isRangeSupported = false;\n this._cachedChunks = [];\n this._requests = [];\n this._done = false;\n this._storedError = undefined;\n this._filename = null;\n this.onProgress = null;\n }\n\n _createClass(PDFNetworkStreamFullRequestReader, [{\n key: \"_onHeadersReceived\",\n value: function _onHeadersReceived() {\n var fullRequestXhrId = this._fullRequestId;\n\n var fullRequestXhr = this._manager.getRequestXhr(fullRequestXhrId);\n\n var getResponseHeader = function getResponseHeader(name) {\n return fullRequestXhr.getResponseHeader(name);\n };\n\n var _validateRangeRequest = (0, _network_utils.validateRangeRequestCapabilities)({\n getResponseHeader: getResponseHeader,\n isHttp: this._manager.isHttp,\n rangeChunkSize: this._rangeChunkSize,\n disableRange: this._disableRange\n }),\n allowRangeRequests = _validateRangeRequest.allowRangeRequests,\n suggestedLength = _validateRangeRequest.suggestedLength;\n\n if (allowRangeRequests) {\n this._isRangeSupported = true;\n }\n\n this._contentLength = suggestedLength || this._contentLength;\n this._filename = (0, _network_utils.extractFilenameFromHeader)(getResponseHeader);\n\n if (this._isRangeSupported) {\n this._manager.abortRequest(fullRequestXhrId);\n }\n\n this._headersReceivedCapability.resolve();\n }\n }, {\n key: \"_onDone\",\n value: function _onDone(data) {\n if (data) {\n if (this._requests.length > 0) {\n var requestCapability = this._requests.shift();\n\n requestCapability.resolve({\n value: data.chunk,\n done: false\n });\n } else {\n this._cachedChunks.push(data.chunk);\n }\n }\n\n this._done = true;\n\n if (this._cachedChunks.length > 0) {\n return;\n }\n\n var _iterator2 = _createForOfIteratorHelper(this._requests),\n _step2;\n\n try {\n for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {\n var _requestCapability = _step2.value;\n\n _requestCapability.resolve({\n value: undefined,\n done: true\n });\n }\n } catch (err) {\n _iterator2.e(err);\n } finally {\n _iterator2.f();\n }\n\n this._requests.length = 0;\n }\n }, {\n key: \"_onError\",\n value: function _onError(status) {\n this._storedError = (0, _network_utils.createResponseStatusError)(status, this._url);\n\n this._headersReceivedCapability.reject(this._storedError);\n\n var _iterator3 = _createForOfIteratorHelper(this._requests),\n _step3;\n\n try {\n for (_iterator3.s(); !(_step3 = _iterator3.n()).done;) {\n var requestCapability = _step3.value;\n requestCapability.reject(this._storedError);\n }\n } catch (err) {\n _iterator3.e(err);\n } finally {\n _iterator3.f();\n }\n\n this._requests.length = 0;\n this._cachedChunks.length = 0;\n }\n }, {\n key: \"_onProgress\",\n value: function _onProgress(evt) {\n var _this$onProgress;\n\n (_this$onProgress = this.onProgress) === null || _this$onProgress === void 0 ? void 0 : _this$onProgress.call(this, {\n loaded: evt.loaded,\n total: evt.lengthComputable ? evt.total : this._contentLength\n });\n }\n }, {\n key: \"filename\",\n get: function get() {\n return this._filename;\n }\n }, {\n key: \"isRangeSupported\",\n get: function get() {\n return this._isRangeSupported;\n }\n }, {\n key: \"isStreamingSupported\",\n get: function get() {\n return this._isStreamingSupported;\n }\n }, {\n key: \"contentLength\",\n get: function get() {\n return this._contentLength;\n }\n }, {\n key: \"headersReady\",\n get: function get() {\n return this._headersReceivedCapability.promise;\n }\n }, {\n key: \"read\",\n value: function () {\n var _read = _asyncToGenerator( /*#__PURE__*/_regenerator[\"default\"].mark(function _callee() {\n var chunk, requestCapability;\n return _regenerator[\"default\"].wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n if (!this._storedError) {\n _context.next = 2;\n break;\n }\n\n throw this._storedError;\n\n case 2:\n if (!(this._cachedChunks.length > 0)) {\n _context.next = 5;\n break;\n }\n\n chunk = this._cachedChunks.shift();\n return _context.abrupt(\"return\", {\n value: chunk,\n done: false\n });\n\n case 5:\n if (!this._done) {\n _context.next = 7;\n break;\n }\n\n return _context.abrupt(\"return\", {\n value: undefined,\n done: true\n });\n\n case 7:\n requestCapability = (0, _util.createPromiseCapability)();\n\n this._requests.push(requestCapability);\n\n return _context.abrupt(\"return\", requestCapability.promise);\n\n case 10:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee, this);\n }));\n\n function read() {\n return _read.apply(this, arguments);\n }\n\n return read;\n }()\n }, {\n key: \"cancel\",\n value: function cancel(reason) {\n this._done = true;\n\n this._headersReceivedCapability.reject(reason);\n\n var _iterator4 = _createForOfIteratorHelper(this._requests),\n _step4;\n\n try {\n for (_iterator4.s(); !(_step4 = _iterator4.n()).done;) {\n var requestCapability = _step4.value;\n requestCapability.resolve({\n value: undefined,\n done: true\n });\n }\n } catch (err) {\n _iterator4.e(err);\n } finally {\n _iterator4.f();\n }\n\n this._requests.length = 0;\n\n if (this._manager.isPendingRequest(this._fullRequestId)) {\n this._manager.abortRequest(this._fullRequestId);\n }\n\n this._fullRequestReader = null;\n }\n }]);\n\n return PDFNetworkStreamFullRequestReader;\n}();\n\nvar PDFNetworkStreamRangeRequestReader = /*#__PURE__*/function () {\n function PDFNetworkStreamRangeRequestReader(manager, begin, end) {\n _classCallCheck(this, PDFNetworkStreamRangeRequestReader);\n\n this._manager = manager;\n var args = {\n onDone: this._onDone.bind(this),\n onError: this._onError.bind(this),\n onProgress: this._onProgress.bind(this)\n };\n this._url = manager.url;\n this._requestId = manager.requestRange(begin, end, args);\n this._requests = [];\n this._queuedChunk = null;\n this._done = false;\n this._storedError = undefined;\n this.onProgress = null;\n this.onClosed = null;\n }\n\n _createClass(PDFNetworkStreamRangeRequestReader, [{\n key: \"_close\",\n value: function _close() {\n var _this$onClosed;\n\n (_this$onClosed = this.onClosed) === null || _this$onClosed === void 0 ? void 0 : _this$onClosed.call(this, this);\n }\n }, {\n key: \"_onDone\",\n value: function _onDone(data) {\n var chunk = data.chunk;\n\n if (this._requests.length > 0) {\n var requestCapability = this._requests.shift();\n\n requestCapability.resolve({\n value: chunk,\n done: false\n });\n } else {\n this._queuedChunk = chunk;\n }\n\n this._done = true;\n\n var _iterator5 = _createForOfIteratorHelper(this._requests),\n _step5;\n\n try {\n for (_iterator5.s(); !(_step5 = _iterator5.n()).done;) {\n var _requestCapability2 = _step5.value;\n\n _requestCapability2.resolve({\n value: undefined,\n done: true\n });\n }\n } catch (err) {\n _iterator5.e(err);\n } finally {\n _iterator5.f();\n }\n\n this._requests.length = 0;\n\n this._close();\n }\n }, {\n key: \"_onError\",\n value: function _onError(status) {\n this._storedError = (0, _network_utils.createResponseStatusError)(status, this._url);\n\n var _iterator6 = _createForOfIteratorHelper(this._requests),\n _step6;\n\n try {\n for (_iterator6.s(); !(_step6 = _iterator6.n()).done;) {\n var requestCapability = _step6.value;\n requestCapability.reject(this._storedError);\n }\n } catch (err) {\n _iterator6.e(err);\n } finally {\n _iterator6.f();\n }\n\n this._requests.length = 0;\n this._queuedChunk = null;\n }\n }, {\n key: \"_onProgress\",\n value: function _onProgress(evt) {\n if (!this.isStreamingSupported) {\n var _this$onProgress2;\n\n (_this$onProgress2 = this.onProgress) === null || _this$onProgress2 === void 0 ? void 0 : _this$onProgress2.call(this, {\n loaded: evt.loaded\n });\n }\n }\n }, {\n key: \"isStreamingSupported\",\n get: function get() {\n return false;\n }\n }, {\n key: \"read\",\n value: function () {\n var _read2 = _asyncToGenerator( /*#__PURE__*/_regenerator[\"default\"].mark(function _callee2() {\n var chunk, requestCapability;\n return _regenerator[\"default\"].wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n if (!this._storedError) {\n _context2.next = 2;\n break;\n }\n\n throw this._storedError;\n\n case 2:\n if (!(this._queuedChunk !== null)) {\n _context2.next = 6;\n break;\n }\n\n chunk = this._queuedChunk;\n this._queuedChunk = null;\n return _context2.abrupt(\"return\", {\n value: chunk,\n done: false\n });\n\n case 6:\n if (!this._done) {\n _context2.next = 8;\n break;\n }\n\n return _context2.abrupt(\"return\", {\n value: undefined,\n done: true\n });\n\n case 8:\n requestCapability = (0, _util.createPromiseCapability)();\n\n this._requests.push(requestCapability);\n\n return _context2.abrupt(\"return\", requestCapability.promise);\n\n case 11:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2, this);\n }));\n\n function read() {\n return _read2.apply(this, arguments);\n }\n\n return read;\n }()\n }, {\n key: \"cancel\",\n value: function cancel(reason) {\n this._done = true;\n\n var _iterator7 = _createForOfIteratorHelper(this._requests),\n _step7;\n\n try {\n for (_iterator7.s(); !(_step7 = _iterator7.n()).done;) {\n var requestCapability = _step7.value;\n requestCapability.resolve({\n value: undefined,\n done: true\n });\n }\n } catch (err) {\n _iterator7.e(err);\n } finally {\n _iterator7.f();\n }\n\n this._requests.length = 0;\n\n if (this._manager.isPendingRequest(this._requestId)) {\n this._manager.abortRequest(this._requestId);\n }\n\n this._close();\n }\n }]);\n\n return PDFNetworkStreamRangeRequestReader;\n}();\n\n/***/ }),\n/* 140 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.PDFFetchStream = void 0;\n\nvar _regenerator = _interopRequireDefault(__w_pdfjs_require__(2));\n\nvar _util = __w_pdfjs_require__(4);\n\nvar _network_utils = __w_pdfjs_require__(137);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }\n\nfunction _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err); } _next(undefined); }); }; }\n\nfunction _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it[\"return\"] != null) it[\"return\"](); } finally { if (didErr) throw err; } } }; }\n\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n;\n\nfunction createFetchOptions(headers, withCredentials, abortController) {\n return {\n method: \"GET\",\n headers: headers,\n signal: abortController === null || abortController === void 0 ? void 0 : abortController.signal,\n mode: \"cors\",\n credentials: withCredentials ? \"include\" : \"same-origin\",\n redirect: \"follow\"\n };\n}\n\nfunction createHeaders(httpHeaders) {\n var headers = new Headers();\n\n for (var property in httpHeaders) {\n var value = httpHeaders[property];\n\n if (typeof value === \"undefined\") {\n continue;\n }\n\n headers.append(property, value);\n }\n\n return headers;\n}\n\nvar PDFFetchStream = /*#__PURE__*/function () {\n function PDFFetchStream(source) {\n _classCallCheck(this, PDFFetchStream);\n\n this.source = source;\n this.isHttp = /^https?:/i.test(source.url);\n this.httpHeaders = this.isHttp && source.httpHeaders || {};\n this._fullRequestReader = null;\n this._rangeRequestReaders = [];\n }\n\n _createClass(PDFFetchStream, [{\n key: \"_progressiveDataLength\",\n get: function get() {\n var _this$_fullRequestRea, _this$_fullRequestRea2;\n\n return (_this$_fullRequestRea = (_this$_fullRequestRea2 = this._fullRequestReader) === null || _this$_fullRequestRea2 === void 0 ? void 0 : _this$_fullRequestRea2._loaded) !== null && _this$_fullRequestRea !== void 0 ? _this$_fullRequestRea : 0;\n }\n }, {\n key: \"getFullReader\",\n value: function getFullReader() {\n (0, _util.assert)(!this._fullRequestReader, \"PDFFetchStream.getFullReader can only be called once.\");\n this._fullRequestReader = new PDFFetchStreamReader(this);\n return this._fullRequestReader;\n }\n }, {\n key: \"getRangeReader\",\n value: function getRangeReader(begin, end) {\n if (end <= this._progressiveDataLength) {\n return null;\n }\n\n var reader = new PDFFetchStreamRangeReader(this, begin, end);\n\n this._rangeRequestReaders.push(reader);\n\n return reader;\n }\n }, {\n key: \"cancelAllRequests\",\n value: function cancelAllRequests(reason) {\n if (this._fullRequestReader) {\n this._fullRequestReader.cancel(reason);\n }\n\n var _iterator = _createForOfIteratorHelper(this._rangeRequestReaders.slice(0)),\n _step;\n\n try {\n for (_iterator.s(); !(_step = _iterator.n()).done;) {\n var reader = _step.value;\n reader.cancel(reason);\n }\n } catch (err) {\n _iterator.e(err);\n } finally {\n _iterator.f();\n }\n }\n }]);\n\n return PDFFetchStream;\n}();\n\nexports.PDFFetchStream = PDFFetchStream;\n\nvar PDFFetchStreamReader = /*#__PURE__*/function () {\n function PDFFetchStreamReader(stream) {\n var _this = this;\n\n _classCallCheck(this, PDFFetchStreamReader);\n\n this._stream = stream;\n this._reader = null;\n this._loaded = 0;\n this._filename = null;\n var source = stream.source;\n this._withCredentials = source.withCredentials || false;\n this._contentLength = source.length;\n this._headersCapability = (0, _util.createPromiseCapability)();\n this._disableRange = source.disableRange || false;\n this._rangeChunkSize = source.rangeChunkSize;\n\n if (!this._rangeChunkSize && !this._disableRange) {\n this._disableRange = true;\n }\n\n if (typeof AbortController !== \"undefined\") {\n this._abortController = new AbortController();\n }\n\n this._isStreamingSupported = !source.disableStream;\n this._isRangeSupported = !source.disableRange;\n this._headers = createHeaders(this._stream.httpHeaders);\n var url = source.url;\n fetch(url, createFetchOptions(this._headers, this._withCredentials, this._abortController)).then(function (response) {\n if (!(0, _network_utils.validateResponseStatus)(response.status)) {\n throw (0, _network_utils.createResponseStatusError)(response.status, url);\n }\n\n _this._reader = response.body.getReader();\n\n _this._headersCapability.resolve();\n\n var getResponseHeader = function getResponseHeader(name) {\n return response.headers.get(name);\n };\n\n var _validateRangeRequest = (0, _network_utils.validateRangeRequestCapabilities)({\n getResponseHeader: getResponseHeader,\n isHttp: _this._stream.isHttp,\n rangeChunkSize: _this._rangeChunkSize,\n disableRange: _this._disableRange\n }),\n allowRangeRequests = _validateRangeRequest.allowRangeRequests,\n suggestedLength = _validateRangeRequest.suggestedLength;\n\n _this._isRangeSupported = allowRangeRequests;\n _this._contentLength = suggestedLength || _this._contentLength;\n _this._filename = (0, _network_utils.extractFilenameFromHeader)(getResponseHeader);\n\n if (!_this._isStreamingSupported && _this._isRangeSupported) {\n _this.cancel(new _util.AbortException(\"Streaming is disabled.\"));\n }\n })[\"catch\"](this._headersCapability.reject);\n this.onProgress = null;\n }\n\n _createClass(PDFFetchStreamReader, [{\n key: \"headersReady\",\n get: function get() {\n return this._headersCapability.promise;\n }\n }, {\n key: \"filename\",\n get: function get() {\n return this._filename;\n }\n }, {\n key: \"contentLength\",\n get: function get() {\n return this._contentLength;\n }\n }, {\n key: \"isRangeSupported\",\n get: function get() {\n return this._isRangeSupported;\n }\n }, {\n key: \"isStreamingSupported\",\n get: function get() {\n return this._isStreamingSupported;\n }\n }, {\n key: \"read\",\n value: function () {\n var _read = _asyncToGenerator( /*#__PURE__*/_regenerator[\"default\"].mark(function _callee() {\n var _yield$this$_reader$r, value, done, buffer;\n\n return _regenerator[\"default\"].wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n _context.next = 2;\n return this._headersCapability.promise;\n\n case 2:\n _context.next = 4;\n return this._reader.read();\n\n case 4:\n _yield$this$_reader$r = _context.sent;\n value = _yield$this$_reader$r.value;\n done = _yield$this$_reader$r.done;\n\n if (!done) {\n _context.next = 9;\n break;\n }\n\n return _context.abrupt(\"return\", {\n value: value,\n done: done\n });\n\n case 9:\n this._loaded += value.byteLength;\n\n if (this.onProgress) {\n this.onProgress({\n loaded: this._loaded,\n total: this._contentLength\n });\n }\n\n buffer = new Uint8Array(value).buffer;\n return _context.abrupt(\"return\", {\n value: buffer,\n done: false\n });\n\n case 13:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee, this);\n }));\n\n function read() {\n return _read.apply(this, arguments);\n }\n\n return read;\n }()\n }, {\n key: \"cancel\",\n value: function cancel(reason) {\n if (this._reader) {\n this._reader.cancel(reason);\n }\n\n if (this._abortController) {\n this._abortController.abort();\n }\n }\n }]);\n\n return PDFFetchStreamReader;\n}();\n\nvar PDFFetchStreamRangeReader = /*#__PURE__*/function () {\n function PDFFetchStreamRangeReader(stream, begin, end) {\n var _this2 = this;\n\n _classCallCheck(this, PDFFetchStreamRangeReader);\n\n this._stream = stream;\n this._reader = null;\n this._loaded = 0;\n var source = stream.source;\n this._withCredentials = source.withCredentials || false;\n this._readCapability = (0, _util.createPromiseCapability)();\n this._isStreamingSupported = !source.disableStream;\n\n if (typeof AbortController !== \"undefined\") {\n this._abortController = new AbortController();\n }\n\n this._headers = createHeaders(this._stream.httpHeaders);\n\n this._headers.append(\"Range\", \"bytes=\".concat(begin, \"-\").concat(end - 1));\n\n var url = source.url;\n fetch(url, createFetchOptions(this._headers, this._withCredentials, this._abortController)).then(function (response) {\n if (!(0, _network_utils.validateResponseStatus)(response.status)) {\n throw (0, _network_utils.createResponseStatusError)(response.status, url);\n }\n\n _this2._readCapability.resolve();\n\n _this2._reader = response.body.getReader();\n })[\"catch\"](this._readCapability.reject);\n this.onProgress = null;\n }\n\n _createClass(PDFFetchStreamRangeReader, [{\n key: \"isStreamingSupported\",\n get: function get() {\n return this._isStreamingSupported;\n }\n }, {\n key: \"read\",\n value: function () {\n var _read2 = _asyncToGenerator( /*#__PURE__*/_regenerator[\"default\"].mark(function _callee2() {\n var _yield$this$_reader$r2, value, done, buffer;\n\n return _regenerator[\"default\"].wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n _context2.next = 2;\n return this._readCapability.promise;\n\n case 2:\n _context2.next = 4;\n return this._reader.read();\n\n case 4:\n _yield$this$_reader$r2 = _context2.sent;\n value = _yield$this$_reader$r2.value;\n done = _yield$this$_reader$r2.done;\n\n if (!done) {\n _context2.next = 9;\n break;\n }\n\n return _context2.abrupt(\"return\", {\n value: value,\n done: done\n });\n\n case 9:\n this._loaded += value.byteLength;\n\n if (this.onProgress) {\n this.onProgress({\n loaded: this._loaded\n });\n }\n\n buffer = new Uint8Array(value).buffer;\n return _context2.abrupt(\"return\", {\n value: buffer,\n done: false\n });\n\n case 13:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2, this);\n }));\n\n function read() {\n return _read2.apply(this, arguments);\n }\n\n return read;\n }()\n }, {\n key: \"cancel\",\n value: function cancel(reason) {\n if (this._reader) {\n this._reader.cancel(reason);\n }\n\n if (this._abortController) {\n this._abortController.abort();\n }\n }\n }]);\n\n return PDFFetchStreamRangeReader;\n}();\n\n/***/ })\n/******/ \t]);\n/************************************************************************/\n/******/ \t// The module cache\n/******/ \tvar __webpack_module_cache__ = {};\n/******/ \t\n/******/ \t// The require function\n/******/ \tfunction __w_pdfjs_require__(moduleId) {\n/******/ \t\t// Check if module is in cache\n/******/ \t\tvar cachedModule = __webpack_module_cache__[moduleId];\n/******/ \t\tif (cachedModule !== undefined) {\n/******/ \t\t\treturn cachedModule.exports;\n/******/ \t\t}\n/******/ \t\t// Create a new module (and put it into the cache)\n/******/ \t\tvar module = __webpack_module_cache__[moduleId] = {\n/******/ \t\t\tid: moduleId,\n/******/ \t\t\tloaded: false,\n/******/ \t\t\texports: {}\n/******/ \t\t};\n/******/ \t\n/******/ \t\t// Execute the module function\n/******/ \t\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __w_pdfjs_require__);\n/******/ \t\n/******/ \t\t// Flag the module as loaded\n/******/ \t\tmodule.loaded = true;\n/******/ \t\n/******/ \t\t// Return the exports of the module\n/******/ \t\treturn module.exports;\n/******/ \t}\n/******/ \t\n/************************************************************************/\n/******/ \t/* webpack/runtime/node module decorator */\n/******/ \t(() => {\n/******/ \t\t__w_pdfjs_require__.nmd = (module) => {\n/******/ \t\t\tmodule.paths = [];\n/******/ \t\t\tif (!module.children) module.children = [];\n/******/ \t\t\treturn module;\n/******/ \t\t};\n/******/ \t})();\n/******/ \t\n/************************************************************************/\nvar __webpack_exports__ = {};\n// This entry need to be wrapped in an IIFE because it need to be in strict mode.\n(() => {\n\"use strict\";\nvar exports = __webpack_exports__;\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nObject.defineProperty(exports, \"addLinkAttributes\", ({\n enumerable: true,\n get: function get() {\n return _display_utils.addLinkAttributes;\n }\n}));\nObject.defineProperty(exports, \"getFilenameFromUrl\", ({\n enumerable: true,\n get: function get() {\n return _display_utils.getFilenameFromUrl;\n }\n}));\nObject.defineProperty(exports, \"getPdfFilenameFromUrl\", ({\n enumerable: true,\n get: function get() {\n return _display_utils.getPdfFilenameFromUrl;\n }\n}));\nObject.defineProperty(exports, \"getXfaPageViewport\", ({\n enumerable: true,\n get: function get() {\n return _display_utils.getXfaPageViewport;\n }\n}));\nObject.defineProperty(exports, \"isPdfFile\", ({\n enumerable: true,\n get: function get() {\n return _display_utils.isPdfFile;\n }\n}));\nObject.defineProperty(exports, \"LinkTarget\", ({\n enumerable: true,\n get: function get() {\n return _display_utils.LinkTarget;\n }\n}));\nObject.defineProperty(exports, \"loadScript\", ({\n enumerable: true,\n get: function get() {\n return _display_utils.loadScript;\n }\n}));\nObject.defineProperty(exports, \"PDFDateString\", ({\n enumerable: true,\n get: function get() {\n return _display_utils.PDFDateString;\n }\n}));\nObject.defineProperty(exports, \"PixelsPerInch\", ({\n enumerable: true,\n get: function get() {\n return _display_utils.PixelsPerInch;\n }\n}));\nObject.defineProperty(exports, \"RenderingCancelledException\", ({\n enumerable: true,\n get: function get() {\n return _display_utils.RenderingCancelledException;\n }\n}));\nObject.defineProperty(exports, \"AnnotationMode\", ({\n enumerable: true,\n get: function get() {\n return _util.AnnotationMode;\n }\n}));\nObject.defineProperty(exports, \"CMapCompressionType\", ({\n enumerable: true,\n get: function get() {\n return _util.CMapCompressionType;\n }\n}));\nObject.defineProperty(exports, \"createObjectURL\", ({\n enumerable: true,\n get: function get() {\n return _util.createObjectURL;\n }\n}));\nObject.defineProperty(exports, \"createPromiseCapability\", ({\n enumerable: true,\n get: function get() {\n return _util.createPromiseCapability;\n }\n}));\nObject.defineProperty(exports, \"createValidAbsoluteUrl\", ({\n enumerable: true,\n get: function get() {\n return _util.createValidAbsoluteUrl;\n }\n}));\nObject.defineProperty(exports, \"InvalidPDFException\", ({\n enumerable: true,\n get: function get() {\n return _util.InvalidPDFException;\n }\n}));\nObject.defineProperty(exports, \"MissingPDFException\", ({\n enumerable: true,\n get: function get() {\n return _util.MissingPDFException;\n }\n}));\nObject.defineProperty(exports, \"OPS\", ({\n enumerable: true,\n get: function get() {\n return _util.OPS;\n }\n}));\nObject.defineProperty(exports, \"PasswordResponses\", ({\n enumerable: true,\n get: function get() {\n return _util.PasswordResponses;\n }\n}));\nObject.defineProperty(exports, \"PermissionFlag\", ({\n enumerable: true,\n get: function get() {\n return _util.PermissionFlag;\n }\n}));\nObject.defineProperty(exports, \"removeNullCharacters\", ({\n enumerable: true,\n get: function get() {\n return _util.removeNullCharacters;\n }\n}));\nObject.defineProperty(exports, \"shadow\", ({\n enumerable: true,\n get: function get() {\n return _util.shadow;\n }\n}));\nObject.defineProperty(exports, \"UnexpectedResponseException\", ({\n enumerable: true,\n get: function get() {\n return _util.UnexpectedResponseException;\n }\n}));\nObject.defineProperty(exports, \"UNSUPPORTED_FEATURES\", ({\n enumerable: true,\n get: function get() {\n return _util.UNSUPPORTED_FEATURES;\n }\n}));\nObject.defineProperty(exports, \"Util\", ({\n enumerable: true,\n get: function get() {\n return _util.Util;\n }\n}));\nObject.defineProperty(exports, \"VerbosityLevel\", ({\n enumerable: true,\n get: function get() {\n return _util.VerbosityLevel;\n }\n}));\nObject.defineProperty(exports, \"build\", ({\n enumerable: true,\n get: function get() {\n return _api.build;\n }\n}));\nObject.defineProperty(exports, \"getDocument\", ({\n enumerable: true,\n get: function get() {\n return _api.getDocument;\n }\n}));\nObject.defineProperty(exports, \"LoopbackPort\", ({\n enumerable: true,\n get: function get() {\n return _api.LoopbackPort;\n }\n}));\nObject.defineProperty(exports, \"PDFDataRangeTransport\", ({\n enumerable: true,\n get: function get() {\n return _api.PDFDataRangeTransport;\n }\n}));\nObject.defineProperty(exports, \"PDFWorker\", ({\n enumerable: true,\n get: function get() {\n return _api.PDFWorker;\n }\n}));\nObject.defineProperty(exports, \"version\", ({\n enumerable: true,\n get: function get() {\n return _api.version;\n }\n}));\nObject.defineProperty(exports, \"AnnotationLayer\", ({\n enumerable: true,\n get: function get() {\n return _annotation_layer.AnnotationLayer;\n }\n}));\nObject.defineProperty(exports, \"GlobalWorkerOptions\", ({\n enumerable: true,\n get: function get() {\n return _worker_options.GlobalWorkerOptions;\n }\n}));\nObject.defineProperty(exports, \"renderTextLayer\", ({\n enumerable: true,\n get: function get() {\n return _text_layer.renderTextLayer;\n }\n}));\nObject.defineProperty(exports, \"SVGGraphics\", ({\n enumerable: true,\n get: function get() {\n return _svg.SVGGraphics;\n }\n}));\nObject.defineProperty(exports, \"XfaLayer\", ({\n enumerable: true,\n get: function get() {\n return _xfa_layer.XfaLayer;\n }\n}));\n\nvar _display_utils = __w_pdfjs_require__(1);\n\nvar _util = __w_pdfjs_require__(4);\n\nvar _api = __w_pdfjs_require__(119);\n\nvar _annotation_layer = __w_pdfjs_require__(131);\n\nvar _worker_options = __w_pdfjs_require__(125);\n\nvar _is_node = __w_pdfjs_require__(6);\n\nvar _text_layer = __w_pdfjs_require__(133);\n\nvar _svg = __w_pdfjs_require__(134);\n\nvar _xfa_layer = __w_pdfjs_require__(135);\n\nvar pdfjsVersion = '2.11.338';\nvar pdfjsBuild = 'dedff3c98';\n{\n if (_is_node.isNodeJS) {\n var _require = __w_pdfjs_require__(136),\n PDFNodeStream = _require.PDFNodeStream;\n\n (0, _api.setPDFNetworkStreamFactory)(function (params) {\n return new PDFNodeStream(params);\n });\n } else {\n var _require2 = __w_pdfjs_require__(139),\n PDFNetworkStream = _require2.PDFNetworkStream;\n\n var _require3 = __w_pdfjs_require__(140),\n PDFFetchStream = _require3.PDFFetchStream;\n\n (0, _api.setPDFNetworkStreamFactory)(function (params) {\n if ((0, _display_utils.isValidFetchUrl)(params.url)) {\n return new PDFFetchStream(params);\n }\n\n return new PDFNetworkStream(params);\n });\n }\n}\n})();\n\n/******/ \treturn __webpack_exports__;\n/******/ })()\n;\n});\n","/**\n * @licstart The following is the entire license notice for the\n * Javascript code in this page\n *\n * Copyright 2021 Mozilla Foundation\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * @licend The above is the entire license notice for the\n * Javascript code in this page\n */\n\n(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(\"pdfjs-dist/web/pdf_viewer\", [], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"pdfjs-dist/web/pdf_viewer\"] = factory();\n\telse\n\t\troot[\"pdfjs-dist/web/pdf_viewer\"] = root.pdfjsViewer = factory();\n})(this, function() {\nreturn /******/ (() => { // webpackBootstrap\n/******/ \t\"use strict\";\n/******/ \tvar __webpack_modules__ = ([\n/* 0 */,\n/* 1 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.DefaultAnnotationLayerFactory = exports.AnnotationLayerBuilder = void 0;\n\nvar _regenerator = _interopRequireDefault(__w_pdfjs_require__(2));\n\nvar _pdfjsLib = __w_pdfjs_require__(4);\n\nvar _l10n_utils = __w_pdfjs_require__(5);\n\nvar _pdf_link_service = __w_pdfjs_require__(6);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }\n\nfunction _nonIterableRest() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\nfunction _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== \"undefined\" && arr[Symbol.iterator] || arr[\"@@iterator\"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"] != null) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; }\n\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\n\nfunction asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }\n\nfunction _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err); } _next(undefined); }); }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nvar AnnotationLayerBuilder = /*#__PURE__*/function () {\n function AnnotationLayerBuilder(_ref) {\n var pageDiv = _ref.pageDiv,\n pdfPage = _ref.pdfPage,\n linkService = _ref.linkService,\n downloadManager = _ref.downloadManager,\n _ref$annotationStorag = _ref.annotationStorage,\n annotationStorage = _ref$annotationStorag === void 0 ? null : _ref$annotationStorag,\n _ref$imageResourcesPa = _ref.imageResourcesPath,\n imageResourcesPath = _ref$imageResourcesPa === void 0 ? \"\" : _ref$imageResourcesPa,\n _ref$renderForms = _ref.renderForms,\n renderForms = _ref$renderForms === void 0 ? true : _ref$renderForms,\n _ref$l10n = _ref.l10n,\n l10n = _ref$l10n === void 0 ? _l10n_utils.NullL10n : _ref$l10n,\n _ref$enableScripting = _ref.enableScripting,\n enableScripting = _ref$enableScripting === void 0 ? false : _ref$enableScripting,\n _ref$hasJSActionsProm = _ref.hasJSActionsPromise,\n hasJSActionsPromise = _ref$hasJSActionsProm === void 0 ? null : _ref$hasJSActionsProm,\n _ref$fieldObjectsProm = _ref.fieldObjectsPromise,\n fieldObjectsPromise = _ref$fieldObjectsProm === void 0 ? null : _ref$fieldObjectsProm,\n _ref$mouseState = _ref.mouseState,\n mouseState = _ref$mouseState === void 0 ? null : _ref$mouseState;\n\n _classCallCheck(this, AnnotationLayerBuilder);\n\n this.pageDiv = pageDiv;\n this.pdfPage = pdfPage;\n this.linkService = linkService;\n this.downloadManager = downloadManager;\n this.imageResourcesPath = imageResourcesPath;\n this.renderForms = renderForms;\n this.l10n = l10n;\n this.annotationStorage = annotationStorage;\n this.enableScripting = enableScripting;\n this._hasJSActionsPromise = hasJSActionsPromise;\n this._fieldObjectsPromise = fieldObjectsPromise;\n this._mouseState = mouseState;\n this.div = null;\n this._cancelled = false;\n }\n\n _createClass(AnnotationLayerBuilder, [{\n key: \"render\",\n value: function () {\n var _render = _asyncToGenerator( /*#__PURE__*/_regenerator[\"default\"].mark(function _callee(viewport) {\n var intent,\n _yield$Promise$all,\n _yield$Promise$all2,\n annotations,\n _yield$Promise$all2$,\n hasJSActions,\n _yield$Promise$all2$2,\n fieldObjects,\n parameters,\n _args = arguments;\n\n return _regenerator[\"default\"].wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n intent = _args.length > 1 && _args[1] !== undefined ? _args[1] : \"display\";\n _context.next = 3;\n return Promise.all([this.pdfPage.getAnnotations({\n intent: intent\n }), this._hasJSActionsPromise, this._fieldObjectsPromise]);\n\n case 3:\n _yield$Promise$all = _context.sent;\n _yield$Promise$all2 = _slicedToArray(_yield$Promise$all, 3);\n annotations = _yield$Promise$all2[0];\n _yield$Promise$all2$ = _yield$Promise$all2[1];\n hasJSActions = _yield$Promise$all2$ === void 0 ? false : _yield$Promise$all2$;\n _yield$Promise$all2$2 = _yield$Promise$all2[2];\n fieldObjects = _yield$Promise$all2$2 === void 0 ? null : _yield$Promise$all2$2;\n\n if (!(this._cancelled || annotations.length === 0)) {\n _context.next = 12;\n break;\n }\n\n return _context.abrupt(\"return\");\n\n case 12:\n parameters = {\n viewport: viewport.clone({\n dontFlip: true\n }),\n div: this.div,\n annotations: annotations,\n page: this.pdfPage,\n imageResourcesPath: this.imageResourcesPath,\n renderForms: this.renderForms,\n linkService: this.linkService,\n downloadManager: this.downloadManager,\n annotationStorage: this.annotationStorage,\n enableScripting: this.enableScripting,\n hasJSActions: hasJSActions,\n fieldObjects: fieldObjects,\n mouseState: this._mouseState\n };\n\n if (this.div) {\n _pdfjsLib.AnnotationLayer.update(parameters);\n } else {\n this.div = document.createElement(\"div\");\n this.div.className = \"annotationLayer\";\n this.pageDiv.appendChild(this.div);\n parameters.div = this.div;\n\n _pdfjsLib.AnnotationLayer.render(parameters);\n\n this.l10n.translate(this.div);\n }\n\n case 14:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee, this);\n }));\n\n function render(_x) {\n return _render.apply(this, arguments);\n }\n\n return render;\n }()\n }, {\n key: \"cancel\",\n value: function cancel() {\n this._cancelled = true;\n }\n }, {\n key: \"hide\",\n value: function hide() {\n if (!this.div) {\n return;\n }\n\n this.div.hidden = true;\n }\n }]);\n\n return AnnotationLayerBuilder;\n}();\n\nexports.AnnotationLayerBuilder = AnnotationLayerBuilder;\n\nvar DefaultAnnotationLayerFactory = /*#__PURE__*/function () {\n function DefaultAnnotationLayerFactory() {\n _classCallCheck(this, DefaultAnnotationLayerFactory);\n }\n\n _createClass(DefaultAnnotationLayerFactory, [{\n key: \"createAnnotationLayerBuilder\",\n value: function createAnnotationLayerBuilder(pageDiv, pdfPage) {\n var annotationStorage = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null;\n var imageResourcesPath = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : \"\";\n var renderForms = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : true;\n var l10n = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : _l10n_utils.NullL10n;\n var enableScripting = arguments.length > 6 && arguments[6] !== undefined ? arguments[6] : false;\n var hasJSActionsPromise = arguments.length > 7 && arguments[7] !== undefined ? arguments[7] : null;\n var mouseState = arguments.length > 8 && arguments[8] !== undefined ? arguments[8] : null;\n var fieldObjectsPromise = arguments.length > 9 && arguments[9] !== undefined ? arguments[9] : null;\n return new AnnotationLayerBuilder({\n pageDiv: pageDiv,\n pdfPage: pdfPage,\n imageResourcesPath: imageResourcesPath,\n renderForms: renderForms,\n linkService: new _pdf_link_service.SimpleLinkService(),\n l10n: l10n,\n annotationStorage: annotationStorage,\n enableScripting: enableScripting,\n hasJSActionsPromise: hasJSActionsPromise,\n fieldObjectsPromise: fieldObjectsPromise,\n mouseState: mouseState\n });\n }\n }]);\n\n return DefaultAnnotationLayerFactory;\n}();\n\nexports.DefaultAnnotationLayerFactory = DefaultAnnotationLayerFactory;\n\n/***/ }),\n/* 2 */\n/***/ ((module, __unused_webpack_exports, __w_pdfjs_require__) => {\n\n\n\nmodule.exports = __w_pdfjs_require__(3);\n\n/***/ }),\n/* 3 */\n/***/ ((module, __unused_webpack_exports, __w_pdfjs_require__) => {\n\n/* module decorator */ module = __w_pdfjs_require__.nmd(module);\n\n\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\nvar runtime = function (exports) {\n \"use strict\";\n\n var Op = Object.prototype;\n var hasOwn = Op.hasOwnProperty;\n var undefined;\n var $Symbol = typeof Symbol === \"function\" ? Symbol : {};\n var iteratorSymbol = $Symbol.iterator || \"@@iterator\";\n var asyncIteratorSymbol = $Symbol.asyncIterator || \"@@asyncIterator\";\n var toStringTagSymbol = $Symbol.toStringTag || \"@@toStringTag\";\n\n function define(obj, key, value) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n return obj[key];\n }\n\n try {\n define({}, \"\");\n } catch (err) {\n define = function define(obj, key, value) {\n return obj[key] = value;\n };\n }\n\n function wrap(innerFn, outerFn, self, tryLocsList) {\n var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator;\n var generator = Object.create(protoGenerator.prototype);\n var context = new Context(tryLocsList || []);\n generator._invoke = makeInvokeMethod(innerFn, self, context);\n return generator;\n }\n\n exports.wrap = wrap;\n\n function tryCatch(fn, obj, arg) {\n try {\n return {\n type: \"normal\",\n arg: fn.call(obj, arg)\n };\n } catch (err) {\n return {\n type: \"throw\",\n arg: err\n };\n }\n }\n\n var GenStateSuspendedStart = \"suspendedStart\";\n var GenStateSuspendedYield = \"suspendedYield\";\n var GenStateExecuting = \"executing\";\n var GenStateCompleted = \"completed\";\n var ContinueSentinel = {};\n\n function Generator() {}\n\n function GeneratorFunction() {}\n\n function GeneratorFunctionPrototype() {}\n\n var IteratorPrototype = {};\n define(IteratorPrototype, iteratorSymbol, function () {\n return this;\n });\n var getProto = Object.getPrototypeOf;\n var NativeIteratorPrototype = getProto && getProto(getProto(values([])));\n\n if (NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol)) {\n IteratorPrototype = NativeIteratorPrototype;\n }\n\n var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype);\n GeneratorFunction.prototype = GeneratorFunctionPrototype;\n define(Gp, \"constructor\", GeneratorFunctionPrototype);\n define(GeneratorFunctionPrototype, \"constructor\", GeneratorFunction);\n GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, \"GeneratorFunction\");\n\n function defineIteratorMethods(prototype) {\n [\"next\", \"throw\", \"return\"].forEach(function (method) {\n define(prototype, method, function (arg) {\n return this._invoke(method, arg);\n });\n });\n }\n\n exports.isGeneratorFunction = function (genFun) {\n var ctor = typeof genFun === \"function\" && genFun.constructor;\n return ctor ? ctor === GeneratorFunction || (ctor.displayName || ctor.name) === \"GeneratorFunction\" : false;\n };\n\n exports.mark = function (genFun) {\n if (Object.setPrototypeOf) {\n Object.setPrototypeOf(genFun, GeneratorFunctionPrototype);\n } else {\n genFun.__proto__ = GeneratorFunctionPrototype;\n define(genFun, toStringTagSymbol, \"GeneratorFunction\");\n }\n\n genFun.prototype = Object.create(Gp);\n return genFun;\n };\n\n exports.awrap = function (arg) {\n return {\n __await: arg\n };\n };\n\n function AsyncIterator(generator, PromiseImpl) {\n function invoke(method, arg, resolve, reject) {\n var record = tryCatch(generator[method], generator, arg);\n\n if (record.type === \"throw\") {\n reject(record.arg);\n } else {\n var result = record.arg;\n var value = result.value;\n\n if (value && _typeof(value) === \"object\" && hasOwn.call(value, \"__await\")) {\n return PromiseImpl.resolve(value.__await).then(function (value) {\n invoke(\"next\", value, resolve, reject);\n }, function (err) {\n invoke(\"throw\", err, resolve, reject);\n });\n }\n\n return PromiseImpl.resolve(value).then(function (unwrapped) {\n result.value = unwrapped;\n resolve(result);\n }, function (error) {\n return invoke(\"throw\", error, resolve, reject);\n });\n }\n }\n\n var previousPromise;\n\n function enqueue(method, arg) {\n function callInvokeWithMethodAndArg() {\n return new PromiseImpl(function (resolve, reject) {\n invoke(method, arg, resolve, reject);\n });\n }\n\n return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg();\n }\n\n this._invoke = enqueue;\n }\n\n defineIteratorMethods(AsyncIterator.prototype);\n define(AsyncIterator.prototype, asyncIteratorSymbol, function () {\n return this;\n });\n exports.AsyncIterator = AsyncIterator;\n\n exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) {\n if (PromiseImpl === void 0) PromiseImpl = Promise;\n var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl);\n return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) {\n return result.done ? result.value : iter.next();\n });\n };\n\n function makeInvokeMethod(innerFn, self, context) {\n var state = GenStateSuspendedStart;\n return function invoke(method, arg) {\n if (state === GenStateExecuting) {\n throw new Error(\"Generator is already running\");\n }\n\n if (state === GenStateCompleted) {\n if (method === \"throw\") {\n throw arg;\n }\n\n return doneResult();\n }\n\n context.method = method;\n context.arg = arg;\n\n while (true) {\n var delegate = context.delegate;\n\n if (delegate) {\n var delegateResult = maybeInvokeDelegate(delegate, context);\n\n if (delegateResult) {\n if (delegateResult === ContinueSentinel) continue;\n return delegateResult;\n }\n }\n\n if (context.method === \"next\") {\n context.sent = context._sent = context.arg;\n } else if (context.method === \"throw\") {\n if (state === GenStateSuspendedStart) {\n state = GenStateCompleted;\n throw context.arg;\n }\n\n context.dispatchException(context.arg);\n } else if (context.method === \"return\") {\n context.abrupt(\"return\", context.arg);\n }\n\n state = GenStateExecuting;\n var record = tryCatch(innerFn, self, context);\n\n if (record.type === \"normal\") {\n state = context.done ? GenStateCompleted : GenStateSuspendedYield;\n\n if (record.arg === ContinueSentinel) {\n continue;\n }\n\n return {\n value: record.arg,\n done: context.done\n };\n } else if (record.type === \"throw\") {\n state = GenStateCompleted;\n context.method = \"throw\";\n context.arg = record.arg;\n }\n }\n };\n }\n\n function maybeInvokeDelegate(delegate, context) {\n var method = delegate.iterator[context.method];\n\n if (method === undefined) {\n context.delegate = null;\n\n if (context.method === \"throw\") {\n if (delegate.iterator[\"return\"]) {\n context.method = \"return\";\n context.arg = undefined;\n maybeInvokeDelegate(delegate, context);\n\n if (context.method === \"throw\") {\n return ContinueSentinel;\n }\n }\n\n context.method = \"throw\";\n context.arg = new TypeError(\"The iterator does not provide a 'throw' method\");\n }\n\n return ContinueSentinel;\n }\n\n var record = tryCatch(method, delegate.iterator, context.arg);\n\n if (record.type === \"throw\") {\n context.method = \"throw\";\n context.arg = record.arg;\n context.delegate = null;\n return ContinueSentinel;\n }\n\n var info = record.arg;\n\n if (!info) {\n context.method = \"throw\";\n context.arg = new TypeError(\"iterator result is not an object\");\n context.delegate = null;\n return ContinueSentinel;\n }\n\n if (info.done) {\n context[delegate.resultName] = info.value;\n context.next = delegate.nextLoc;\n\n if (context.method !== \"return\") {\n context.method = \"next\";\n context.arg = undefined;\n }\n } else {\n return info;\n }\n\n context.delegate = null;\n return ContinueSentinel;\n }\n\n defineIteratorMethods(Gp);\n define(Gp, toStringTagSymbol, \"Generator\");\n define(Gp, iteratorSymbol, function () {\n return this;\n });\n define(Gp, \"toString\", function () {\n return \"[object Generator]\";\n });\n\n function pushTryEntry(locs) {\n var entry = {\n tryLoc: locs[0]\n };\n\n if (1 in locs) {\n entry.catchLoc = locs[1];\n }\n\n if (2 in locs) {\n entry.finallyLoc = locs[2];\n entry.afterLoc = locs[3];\n }\n\n this.tryEntries.push(entry);\n }\n\n function resetTryEntry(entry) {\n var record = entry.completion || {};\n record.type = \"normal\";\n delete record.arg;\n entry.completion = record;\n }\n\n function Context(tryLocsList) {\n this.tryEntries = [{\n tryLoc: \"root\"\n }];\n tryLocsList.forEach(pushTryEntry, this);\n this.reset(true);\n }\n\n exports.keys = function (object) {\n var keys = [];\n\n for (var key in object) {\n keys.push(key);\n }\n\n keys.reverse();\n return function next() {\n while (keys.length) {\n var key = keys.pop();\n\n if (key in object) {\n next.value = key;\n next.done = false;\n return next;\n }\n }\n\n next.done = true;\n return next;\n };\n };\n\n function values(iterable) {\n if (iterable) {\n var iteratorMethod = iterable[iteratorSymbol];\n\n if (iteratorMethod) {\n return iteratorMethod.call(iterable);\n }\n\n if (typeof iterable.next === \"function\") {\n return iterable;\n }\n\n if (!isNaN(iterable.length)) {\n var i = -1,\n next = function next() {\n while (++i < iterable.length) {\n if (hasOwn.call(iterable, i)) {\n next.value = iterable[i];\n next.done = false;\n return next;\n }\n }\n\n next.value = undefined;\n next.done = true;\n return next;\n };\n\n return next.next = next;\n }\n }\n\n return {\n next: doneResult\n };\n }\n\n exports.values = values;\n\n function doneResult() {\n return {\n value: undefined,\n done: true\n };\n }\n\n Context.prototype = {\n constructor: Context,\n reset: function reset(skipTempReset) {\n this.prev = 0;\n this.next = 0;\n this.sent = this._sent = undefined;\n this.done = false;\n this.delegate = null;\n this.method = \"next\";\n this.arg = undefined;\n this.tryEntries.forEach(resetTryEntry);\n\n if (!skipTempReset) {\n for (var name in this) {\n if (name.charAt(0) === \"t\" && hasOwn.call(this, name) && !isNaN(+name.slice(1))) {\n this[name] = undefined;\n }\n }\n }\n },\n stop: function stop() {\n this.done = true;\n var rootEntry = this.tryEntries[0];\n var rootRecord = rootEntry.completion;\n\n if (rootRecord.type === \"throw\") {\n throw rootRecord.arg;\n }\n\n return this.rval;\n },\n dispatchException: function dispatchException(exception) {\n if (this.done) {\n throw exception;\n }\n\n var context = this;\n\n function handle(loc, caught) {\n record.type = \"throw\";\n record.arg = exception;\n context.next = loc;\n\n if (caught) {\n context.method = \"next\";\n context.arg = undefined;\n }\n\n return !!caught;\n }\n\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n var record = entry.completion;\n\n if (entry.tryLoc === \"root\") {\n return handle(\"end\");\n }\n\n if (entry.tryLoc <= this.prev) {\n var hasCatch = hasOwn.call(entry, \"catchLoc\");\n var hasFinally = hasOwn.call(entry, \"finallyLoc\");\n\n if (hasCatch && hasFinally) {\n if (this.prev < entry.catchLoc) {\n return handle(entry.catchLoc, true);\n } else if (this.prev < entry.finallyLoc) {\n return handle(entry.finallyLoc);\n }\n } else if (hasCatch) {\n if (this.prev < entry.catchLoc) {\n return handle(entry.catchLoc, true);\n }\n } else if (hasFinally) {\n if (this.prev < entry.finallyLoc) {\n return handle(entry.finallyLoc);\n }\n } else {\n throw new Error(\"try statement without catch or finally\");\n }\n }\n }\n },\n abrupt: function abrupt(type, arg) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n\n if (entry.tryLoc <= this.prev && hasOwn.call(entry, \"finallyLoc\") && this.prev < entry.finallyLoc) {\n var finallyEntry = entry;\n break;\n }\n }\n\n if (finallyEntry && (type === \"break\" || type === \"continue\") && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc) {\n finallyEntry = null;\n }\n\n var record = finallyEntry ? finallyEntry.completion : {};\n record.type = type;\n record.arg = arg;\n\n if (finallyEntry) {\n this.method = \"next\";\n this.next = finallyEntry.finallyLoc;\n return ContinueSentinel;\n }\n\n return this.complete(record);\n },\n complete: function complete(record, afterLoc) {\n if (record.type === \"throw\") {\n throw record.arg;\n }\n\n if (record.type === \"break\" || record.type === \"continue\") {\n this.next = record.arg;\n } else if (record.type === \"return\") {\n this.rval = this.arg = record.arg;\n this.method = \"return\";\n this.next = \"end\";\n } else if (record.type === \"normal\" && afterLoc) {\n this.next = afterLoc;\n }\n\n return ContinueSentinel;\n },\n finish: function finish(finallyLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n\n if (entry.finallyLoc === finallyLoc) {\n this.complete(entry.completion, entry.afterLoc);\n resetTryEntry(entry);\n return ContinueSentinel;\n }\n }\n },\n \"catch\": function _catch(tryLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n\n if (entry.tryLoc === tryLoc) {\n var record = entry.completion;\n\n if (record.type === \"throw\") {\n var thrown = record.arg;\n resetTryEntry(entry);\n }\n\n return thrown;\n }\n }\n\n throw new Error(\"illegal catch attempt\");\n },\n delegateYield: function delegateYield(iterable, resultName, nextLoc) {\n this.delegate = {\n iterator: values(iterable),\n resultName: resultName,\n nextLoc: nextLoc\n };\n\n if (this.method === \"next\") {\n this.arg = undefined;\n }\n\n return ContinueSentinel;\n }\n };\n return exports;\n}(( false ? 0 : _typeof(module)) === \"object\" ? module.exports : {});\n\ntry {\n regeneratorRuntime = runtime;\n} catch (accidentalStrictMode) {\n if ((typeof globalThis === \"undefined\" ? \"undefined\" : _typeof(globalThis)) === \"object\") {\n globalThis.regeneratorRuntime = runtime;\n } else {\n Function(\"r\", \"regeneratorRuntime = r\")(runtime);\n }\n}\n\n/***/ }),\n/* 4 */\n/***/ ((module) => {\n\n\n\nvar pdfjsLib;\n\nif (typeof window !== \"undefined\" && window[\"pdfjs-dist/build/pdf\"]) {\n pdfjsLib = window[\"pdfjs-dist/build/pdf\"];\n} else {\n pdfjsLib = require(\"../build/pdf.js\");\n}\n\nmodule.exports = pdfjsLib;\n\n/***/ }),\n/* 5 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.fixupLangCode = fixupLangCode;\nexports.getL10nFallback = getL10nFallback;\nexports.NullL10n = void 0;\n\nvar _regenerator = _interopRequireDefault(__w_pdfjs_require__(2));\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }\n\nfunction _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err); } _next(undefined); }); }; }\n\nvar DEFAULT_L10N_STRINGS = {\n of_pages: \"of {{pagesCount}}\",\n page_of_pages: \"({{pageNumber}} of {{pagesCount}})\",\n document_properties_kb: \"{{size_kb}} KB ({{size_b}} bytes)\",\n document_properties_mb: \"{{size_mb}} MB ({{size_b}} bytes)\",\n document_properties_date_string: \"{{date}}, {{time}}\",\n document_properties_page_size_unit_inches: \"in\",\n document_properties_page_size_unit_millimeters: \"mm\",\n document_properties_page_size_orientation_portrait: \"portrait\",\n document_properties_page_size_orientation_landscape: \"landscape\",\n document_properties_page_size_name_a3: \"A3\",\n document_properties_page_size_name_a4: \"A4\",\n document_properties_page_size_name_letter: \"Letter\",\n document_properties_page_size_name_legal: \"Legal\",\n document_properties_page_size_dimension_string: \"{{width}} × {{height}} {{unit}} ({{orientation}})\",\n document_properties_page_size_dimension_name_string: \"{{width}} × {{height}} {{unit}} ({{name}}, {{orientation}})\",\n document_properties_linearized_yes: \"Yes\",\n document_properties_linearized_no: \"No\",\n print_progress_percent: \"{{progress}}%\",\n \"toggle_sidebar.title\": \"Toggle Sidebar\",\n \"toggle_sidebar_notification2.title\": \"Toggle Sidebar (document contains outline/attachments/layers)\",\n additional_layers: \"Additional Layers\",\n page_landmark: \"Page {{page}}\",\n thumb_page_title: \"Page {{page}}\",\n thumb_page_canvas: \"Thumbnail of Page {{page}}\",\n find_reached_top: \"Reached top of document, continued from bottom\",\n find_reached_bottom: \"Reached end of document, continued from top\",\n \"find_match_count[one]\": \"{{current}} of {{total}} match\",\n \"find_match_count[other]\": \"{{current}} of {{total}} matches\",\n \"find_match_count_limit[one]\": \"More than {{limit}} match\",\n \"find_match_count_limit[other]\": \"More than {{limit}} matches\",\n find_not_found: \"Phrase not found\",\n error_version_info: \"PDF.js v{{version}} (build: {{build}})\",\n error_message: \"Message: {{message}}\",\n error_stack: \"Stack: {{stack}}\",\n error_file: \"File: {{file}}\",\n error_line: \"Line: {{line}}\",\n rendering_error: \"An error occurred while rendering the page.\",\n page_scale_width: \"Page Width\",\n page_scale_fit: \"Page Fit\",\n page_scale_auto: \"Automatic Zoom\",\n page_scale_actual: \"Actual Size\",\n page_scale_percent: \"{{scale}}%\",\n loading: \"Loading…\",\n loading_error: \"An error occurred while loading the PDF.\",\n invalid_file_error: \"Invalid or corrupted PDF file.\",\n missing_file_error: \"Missing PDF file.\",\n unexpected_response_error: \"Unexpected server response.\",\n printing_not_supported: \"Warning: Printing is not fully supported by this browser.\",\n printing_not_ready: \"Warning: The PDF is not fully loaded for printing.\",\n web_fonts_disabled: \"Web fonts are disabled: unable to use embedded PDF fonts.\"\n};\n\nfunction getL10nFallback(key, args) {\n switch (key) {\n case \"find_match_count\":\n key = \"find_match_count[\".concat(args.total === 1 ? \"one\" : \"other\", \"]\");\n break;\n\n case \"find_match_count_limit\":\n key = \"find_match_count_limit[\".concat(args.limit === 1 ? \"one\" : \"other\", \"]\");\n break;\n }\n\n return DEFAULT_L10N_STRINGS[key] || \"\";\n}\n\nvar PARTIAL_LANG_CODES = {\n en: \"en-US\",\n es: \"es-ES\",\n fy: \"fy-NL\",\n ga: \"ga-IE\",\n gu: \"gu-IN\",\n hi: \"hi-IN\",\n hy: \"hy-AM\",\n nb: \"nb-NO\",\n ne: \"ne-NP\",\n nn: \"nn-NO\",\n pa: \"pa-IN\",\n pt: \"pt-PT\",\n sv: \"sv-SE\",\n zh: \"zh-CN\"\n};\n\nfunction fixupLangCode(langCode) {\n return PARTIAL_LANG_CODES[langCode === null || langCode === void 0 ? void 0 : langCode.toLowerCase()] || langCode;\n}\n\nfunction formatL10nValue(text, args) {\n if (!args) {\n return text;\n }\n\n return text.replace(/\\{\\{\\s*(\\w+)\\s*\\}\\}/g, function (all, name) {\n return name in args ? args[name] : \"{{\" + name + \"}}\";\n });\n}\n\nvar NullL10n = {\n getLanguage: function getLanguage() {\n return _asyncToGenerator( /*#__PURE__*/_regenerator[\"default\"].mark(function _callee() {\n return _regenerator[\"default\"].wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n return _context.abrupt(\"return\", \"en-us\");\n\n case 1:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }))();\n },\n getDirection: function getDirection() {\n return _asyncToGenerator( /*#__PURE__*/_regenerator[\"default\"].mark(function _callee2() {\n return _regenerator[\"default\"].wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n return _context2.abrupt(\"return\", \"ltr\");\n\n case 1:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2);\n }))();\n },\n get: function get(key) {\n var _arguments = arguments;\n return _asyncToGenerator( /*#__PURE__*/_regenerator[\"default\"].mark(function _callee3() {\n var args, fallback;\n return _regenerator[\"default\"].wrap(function _callee3$(_context3) {\n while (1) {\n switch (_context3.prev = _context3.next) {\n case 0:\n args = _arguments.length > 1 && _arguments[1] !== undefined ? _arguments[1] : null;\n fallback = _arguments.length > 2 && _arguments[2] !== undefined ? _arguments[2] : getL10nFallback(key, args);\n return _context3.abrupt(\"return\", formatL10nValue(fallback, args));\n\n case 3:\n case \"end\":\n return _context3.stop();\n }\n }\n }, _callee3);\n }))();\n },\n translate: function translate(element) {\n return _asyncToGenerator( /*#__PURE__*/_regenerator[\"default\"].mark(function _callee4() {\n return _regenerator[\"default\"].wrap(function _callee4$(_context4) {\n while (1) {\n switch (_context4.prev = _context4.next) {\n case 0:\n case \"end\":\n return _context4.stop();\n }\n }\n }, _callee4);\n }))();\n }\n};\nexports.NullL10n = NullL10n;\n\n/***/ }),\n/* 6 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.SimpleLinkService = exports.PDFLinkService = void 0;\n\nvar _regenerator = _interopRequireDefault(__w_pdfjs_require__(2));\n\nvar _pdfjsLib = __w_pdfjs_require__(4);\n\nvar _ui_utils = __w_pdfjs_require__(7);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }\n\nfunction _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err); } _next(undefined); }); }; }\n\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nvar PDFLinkService = /*#__PURE__*/function () {\n function PDFLinkService() {\n var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},\n eventBus = _ref.eventBus,\n _ref$externalLinkTarg = _ref.externalLinkTarget,\n externalLinkTarget = _ref$externalLinkTarg === void 0 ? null : _ref$externalLinkTarg,\n _ref$externalLinkRel = _ref.externalLinkRel,\n externalLinkRel = _ref$externalLinkRel === void 0 ? null : _ref$externalLinkRel,\n _ref$ignoreDestinatio = _ref.ignoreDestinationZoom,\n ignoreDestinationZoom = _ref$ignoreDestinatio === void 0 ? false : _ref$ignoreDestinatio;\n\n _classCallCheck(this, PDFLinkService);\n\n this.eventBus = eventBus;\n this.externalLinkTarget = externalLinkTarget;\n this.externalLinkRel = externalLinkRel;\n this.externalLinkEnabled = true;\n this._ignoreDestinationZoom = ignoreDestinationZoom;\n this.baseUrl = null;\n this.pdfDocument = null;\n this.pdfViewer = null;\n this.pdfHistory = null;\n this._pagesRefCache = null;\n }\n\n _createClass(PDFLinkService, [{\n key: \"setDocument\",\n value: function setDocument(pdfDocument) {\n var baseUrl = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;\n this.baseUrl = baseUrl;\n this.pdfDocument = pdfDocument;\n this._pagesRefCache = Object.create(null);\n }\n }, {\n key: \"setViewer\",\n value: function setViewer(pdfViewer) {\n this.pdfViewer = pdfViewer;\n }\n }, {\n key: \"setHistory\",\n value: function setHistory(pdfHistory) {\n this.pdfHistory = pdfHistory;\n }\n }, {\n key: \"pagesCount\",\n get: function get() {\n return this.pdfDocument ? this.pdfDocument.numPages : 0;\n }\n }, {\n key: \"page\",\n get: function get() {\n return this.pdfViewer.currentPageNumber;\n },\n set: function set(value) {\n this.pdfViewer.currentPageNumber = value;\n }\n }, {\n key: \"rotation\",\n get: function get() {\n return this.pdfViewer.pagesRotation;\n },\n set: function set(value) {\n this.pdfViewer.pagesRotation = value;\n }\n }, {\n key: \"_goToDestinationHelper\",\n value: function _goToDestinationHelper(rawDest) {\n var _this = this;\n\n var namedDest = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;\n var explicitDest = arguments.length > 2 ? arguments[2] : undefined;\n var destRef = explicitDest[0];\n var pageNumber;\n\n if (_typeof(destRef) === \"object\" && destRef !== null) {\n pageNumber = this._cachedPageNumber(destRef);\n\n if (pageNumber === null) {\n this.pdfDocument.getPageIndex(destRef).then(function (pageIndex) {\n _this.cachePageRef(pageIndex + 1, destRef);\n\n _this._goToDestinationHelper(rawDest, namedDest, explicitDest);\n })[\"catch\"](function () {\n console.error(\"PDFLinkService._goToDestinationHelper: \\\"\".concat(destRef, \"\\\" is not \") + \"a valid page reference, for dest=\\\"\".concat(rawDest, \"\\\".\"));\n });\n return;\n }\n } else if (Number.isInteger(destRef)) {\n pageNumber = destRef + 1;\n } else {\n console.error(\"PDFLinkService._goToDestinationHelper: \\\"\".concat(destRef, \"\\\" is not \") + \"a valid destination reference, for dest=\\\"\".concat(rawDest, \"\\\".\"));\n return;\n }\n\n if (!pageNumber || pageNumber < 1 || pageNumber > this.pagesCount) {\n console.error(\"PDFLinkService._goToDestinationHelper: \\\"\".concat(pageNumber, \"\\\" is not \") + \"a valid page number, for dest=\\\"\".concat(rawDest, \"\\\".\"));\n return;\n }\n\n if (this.pdfHistory) {\n this.pdfHistory.pushCurrentPosition();\n this.pdfHistory.push({\n namedDest: namedDest,\n explicitDest: explicitDest,\n pageNumber: pageNumber\n });\n }\n\n this.pdfViewer.scrollPageIntoView({\n pageNumber: pageNumber,\n destArray: explicitDest,\n ignoreDestinationZoom: this._ignoreDestinationZoom\n });\n }\n }, {\n key: \"goToDestination\",\n value: function () {\n var _goToDestination = _asyncToGenerator( /*#__PURE__*/_regenerator[\"default\"].mark(function _callee(dest) {\n var namedDest, explicitDest;\n return _regenerator[\"default\"].wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n if (this.pdfDocument) {\n _context.next = 2;\n break;\n }\n\n return _context.abrupt(\"return\");\n\n case 2:\n if (!(typeof dest === \"string\")) {\n _context.next = 9;\n break;\n }\n\n namedDest = dest;\n _context.next = 6;\n return this.pdfDocument.getDestination(dest);\n\n case 6:\n explicitDest = _context.sent;\n _context.next = 13;\n break;\n\n case 9:\n namedDest = null;\n _context.next = 12;\n return dest;\n\n case 12:\n explicitDest = _context.sent;\n\n case 13:\n if (Array.isArray(explicitDest)) {\n _context.next = 16;\n break;\n }\n\n console.error(\"PDFLinkService.goToDestination: \\\"\".concat(explicitDest, \"\\\" is not \") + \"a valid destination array, for dest=\\\"\".concat(dest, \"\\\".\"));\n return _context.abrupt(\"return\");\n\n case 16:\n this._goToDestinationHelper(dest, namedDest, explicitDest);\n\n case 17:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee, this);\n }));\n\n function goToDestination(_x) {\n return _goToDestination.apply(this, arguments);\n }\n\n return goToDestination;\n }()\n }, {\n key: \"goToPage\",\n value: function goToPage(val) {\n if (!this.pdfDocument) {\n return;\n }\n\n var pageNumber = typeof val === \"string\" && this.pdfViewer.pageLabelToPageNumber(val) || val | 0;\n\n if (!(Number.isInteger(pageNumber) && pageNumber > 0 && pageNumber <= this.pagesCount)) {\n console.error(\"PDFLinkService.goToPage: \\\"\".concat(val, \"\\\" is not a valid page.\"));\n return;\n }\n\n if (this.pdfHistory) {\n this.pdfHistory.pushCurrentPosition();\n this.pdfHistory.pushPage(pageNumber);\n }\n\n this.pdfViewer.scrollPageIntoView({\n pageNumber: pageNumber\n });\n }\n }, {\n key: \"addLinkAttributes\",\n value: function addLinkAttributes(link, url) {\n var newWindow = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n (0, _pdfjsLib.addLinkAttributes)(link, {\n url: url,\n target: newWindow ? _pdfjsLib.LinkTarget.BLANK : this.externalLinkTarget,\n rel: this.externalLinkRel,\n enabled: this.externalLinkEnabled\n });\n }\n }, {\n key: \"getDestinationHash\",\n value: function getDestinationHash(dest) {\n if (typeof dest === \"string\") {\n if (dest.length > 0) {\n return this.getAnchorUrl(\"#\" + escape(dest));\n }\n } else if (Array.isArray(dest)) {\n var str = JSON.stringify(dest);\n\n if (str.length > 0) {\n return this.getAnchorUrl(\"#\" + escape(str));\n }\n }\n\n return this.getAnchorUrl(\"\");\n }\n }, {\n key: \"getAnchorUrl\",\n value: function getAnchorUrl(anchor) {\n return (this.baseUrl || \"\") + anchor;\n }\n }, {\n key: \"setHash\",\n value: function setHash(hash) {\n if (!this.pdfDocument) {\n return;\n }\n\n var pageNumber, dest;\n\n if (hash.includes(\"=\")) {\n var params = (0, _ui_utils.parseQueryString)(hash);\n\n if (params.has(\"search\")) {\n this.eventBus.dispatch(\"findfromurlhash\", {\n source: this,\n query: params.get(\"search\").replace(/\"/g, \"\"),\n phraseSearch: params.get(\"phrase\") === \"true\"\n });\n }\n\n if (params.has(\"page\")) {\n pageNumber = params.get(\"page\") | 0 || 1;\n }\n\n if (params.has(\"zoom\")) {\n var zoomArgs = params.get(\"zoom\").split(\",\");\n var zoomArg = zoomArgs[0];\n var zoomArgNumber = parseFloat(zoomArg);\n\n if (!zoomArg.includes(\"Fit\")) {\n dest = [null, {\n name: \"XYZ\"\n }, zoomArgs.length > 1 ? zoomArgs[1] | 0 : null, zoomArgs.length > 2 ? zoomArgs[2] | 0 : null, zoomArgNumber ? zoomArgNumber / 100 : zoomArg];\n } else {\n if (zoomArg === \"Fit\" || zoomArg === \"FitB\") {\n dest = [null, {\n name: zoomArg\n }];\n } else if (zoomArg === \"FitH\" || zoomArg === \"FitBH\" || zoomArg === \"FitV\" || zoomArg === \"FitBV\") {\n dest = [null, {\n name: zoomArg\n }, zoomArgs.length > 1 ? zoomArgs[1] | 0 : null];\n } else if (zoomArg === \"FitR\") {\n if (zoomArgs.length !== 5) {\n console.error('PDFLinkService.setHash: Not enough parameters for \"FitR\".');\n } else {\n dest = [null, {\n name: zoomArg\n }, zoomArgs[1] | 0, zoomArgs[2] | 0, zoomArgs[3] | 0, zoomArgs[4] | 0];\n }\n } else {\n console.error(\"PDFLinkService.setHash: \\\"\".concat(zoomArg, \"\\\" is not \") + \"a valid zoom value.\");\n }\n }\n }\n\n if (dest) {\n this.pdfViewer.scrollPageIntoView({\n pageNumber: pageNumber || this.page,\n destArray: dest,\n allowNegativeOffset: true\n });\n } else if (pageNumber) {\n this.page = pageNumber;\n }\n\n if (params.has(\"pagemode\")) {\n this.eventBus.dispatch(\"pagemode\", {\n source: this,\n mode: params.get(\"pagemode\")\n });\n }\n\n if (params.has(\"nameddest\")) {\n this.goToDestination(params.get(\"nameddest\"));\n }\n } else {\n dest = unescape(hash);\n\n try {\n dest = JSON.parse(dest);\n\n if (!Array.isArray(dest)) {\n dest = dest.toString();\n }\n } catch (ex) {}\n\n if (typeof dest === \"string\" || isValidExplicitDestination(dest)) {\n this.goToDestination(dest);\n return;\n }\n\n console.error(\"PDFLinkService.setHash: \\\"\".concat(unescape(hash), \"\\\" is not \") + \"a valid destination.\");\n }\n }\n }, {\n key: \"executeNamedAction\",\n value: function executeNamedAction(action) {\n var _this$pdfHistory, _this$pdfHistory2;\n\n switch (action) {\n case \"GoBack\":\n (_this$pdfHistory = this.pdfHistory) === null || _this$pdfHistory === void 0 ? void 0 : _this$pdfHistory.back();\n break;\n\n case \"GoForward\":\n (_this$pdfHistory2 = this.pdfHistory) === null || _this$pdfHistory2 === void 0 ? void 0 : _this$pdfHistory2.forward();\n break;\n\n case \"NextPage\":\n this.pdfViewer.nextPage();\n break;\n\n case \"PrevPage\":\n this.pdfViewer.previousPage();\n break;\n\n case \"LastPage\":\n this.page = this.pagesCount;\n break;\n\n case \"FirstPage\":\n this.page = 1;\n break;\n\n default:\n break;\n }\n\n this.eventBus.dispatch(\"namedaction\", {\n source: this,\n action: action\n });\n }\n }, {\n key: \"cachePageRef\",\n value: function cachePageRef(pageNum, pageRef) {\n if (!pageRef) {\n return;\n }\n\n var refStr = pageRef.gen === 0 ? \"\".concat(pageRef.num, \"R\") : \"\".concat(pageRef.num, \"R\").concat(pageRef.gen);\n this._pagesRefCache[refStr] = pageNum;\n }\n }, {\n key: \"_cachedPageNumber\",\n value: function _cachedPageNumber(pageRef) {\n var _this$_pagesRefCache;\n\n var refStr = pageRef.gen === 0 ? \"\".concat(pageRef.num, \"R\") : \"\".concat(pageRef.num, \"R\").concat(pageRef.gen);\n return ((_this$_pagesRefCache = this._pagesRefCache) === null || _this$_pagesRefCache === void 0 ? void 0 : _this$_pagesRefCache[refStr]) || null;\n }\n }, {\n key: \"isPageVisible\",\n value: function isPageVisible(pageNumber) {\n return this.pdfViewer.isPageVisible(pageNumber);\n }\n }, {\n key: \"isPageCached\",\n value: function isPageCached(pageNumber) {\n return this.pdfViewer.isPageCached(pageNumber);\n }\n }]);\n\n return PDFLinkService;\n}();\n\nexports.PDFLinkService = PDFLinkService;\n\nfunction isValidExplicitDestination(dest) {\n if (!Array.isArray(dest)) {\n return false;\n }\n\n var destLength = dest.length;\n\n if (destLength < 2) {\n return false;\n }\n\n var page = dest[0];\n\n if (!(_typeof(page) === \"object\" && Number.isInteger(page.num) && Number.isInteger(page.gen)) && !(Number.isInteger(page) && page >= 0)) {\n return false;\n }\n\n var zoom = dest[1];\n\n if (!(_typeof(zoom) === \"object\" && typeof zoom.name === \"string\")) {\n return false;\n }\n\n var allowNull = true;\n\n switch (zoom.name) {\n case \"XYZ\":\n if (destLength !== 5) {\n return false;\n }\n\n break;\n\n case \"Fit\":\n case \"FitB\":\n return destLength === 2;\n\n case \"FitH\":\n case \"FitBH\":\n case \"FitV\":\n case \"FitBV\":\n if (destLength !== 3) {\n return false;\n }\n\n break;\n\n case \"FitR\":\n if (destLength !== 6) {\n return false;\n }\n\n allowNull = false;\n break;\n\n default:\n return false;\n }\n\n for (var i = 2; i < destLength; i++) {\n var param = dest[i];\n\n if (!(typeof param === \"number\" || allowNull && param === null)) {\n return false;\n }\n }\n\n return true;\n}\n\nvar SimpleLinkService = /*#__PURE__*/function () {\n function SimpleLinkService() {\n _classCallCheck(this, SimpleLinkService);\n\n this.externalLinkEnabled = true;\n }\n\n _createClass(SimpleLinkService, [{\n key: \"pagesCount\",\n get: function get() {\n return 0;\n }\n }, {\n key: \"page\",\n get: function get() {\n return 0;\n },\n set: function set(value) {}\n }, {\n key: \"rotation\",\n get: function get() {\n return 0;\n },\n set: function set(value) {}\n }, {\n key: \"goToDestination\",\n value: function () {\n var _goToDestination2 = _asyncToGenerator( /*#__PURE__*/_regenerator[\"default\"].mark(function _callee2(dest) {\n return _regenerator[\"default\"].wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2);\n }));\n\n function goToDestination(_x2) {\n return _goToDestination2.apply(this, arguments);\n }\n\n return goToDestination;\n }()\n }, {\n key: \"goToPage\",\n value: function goToPage(val) {}\n }, {\n key: \"addLinkAttributes\",\n value: function addLinkAttributes(link, url) {\n var newWindow = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n (0, _pdfjsLib.addLinkAttributes)(link, {\n url: url,\n enabled: this.externalLinkEnabled\n });\n }\n }, {\n key: \"getDestinationHash\",\n value: function getDestinationHash(dest) {\n return \"#\";\n }\n }, {\n key: \"getAnchorUrl\",\n value: function getAnchorUrl(hash) {\n return \"#\";\n }\n }, {\n key: \"setHash\",\n value: function setHash(hash) {}\n }, {\n key: \"executeNamedAction\",\n value: function executeNamedAction(action) {}\n }, {\n key: \"cachePageRef\",\n value: function cachePageRef(pageNum, pageRef) {}\n }, {\n key: \"isPageVisible\",\n value: function isPageVisible(pageNumber) {\n return true;\n }\n }, {\n key: \"isPageCached\",\n value: function isPageCached(pageNumber) {\n return true;\n }\n }]);\n\n return SimpleLinkService;\n}();\n\nexports.SimpleLinkService = SimpleLinkService;\n\n/***/ }),\n/* 7 */\n/***/ ((__unused_webpack_module, exports) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.apiPageLayoutToSpreadMode = apiPageLayoutToSpreadMode;\nexports.apiPageModeToSidebarView = apiPageModeToSidebarView;\nexports.approximateFraction = approximateFraction;\nexports.backtrackBeforeAllVisibleElements = backtrackBeforeAllVisibleElements;\nexports.binarySearchFirstItem = binarySearchFirstItem;\nexports.getActiveOrFocusedElement = getActiveOrFocusedElement;\nexports.getOutputScale = getOutputScale;\nexports.getPageSizeInches = getPageSizeInches;\nexports.getVisibleElements = getVisibleElements;\nexports.isPortraitOrientation = isPortraitOrientation;\nexports.isValidRotation = isValidRotation;\nexports.isValidScrollMode = isValidScrollMode;\nexports.isValidSpreadMode = isValidSpreadMode;\nexports.moveToEndOfArray = moveToEndOfArray;\nexports.noContextMenuHandler = noContextMenuHandler;\nexports.normalizeWheelEventDelta = normalizeWheelEventDelta;\nexports.normalizeWheelEventDirection = normalizeWheelEventDirection;\nexports.parseQueryString = parseQueryString;\nexports.roundToDivide = roundToDivide;\nexports.scrollIntoView = scrollIntoView;\nexports.waitOnEventOrTimeout = waitOnEventOrTimeout;\nexports.watchScroll = watchScroll;\nexports.WaitOnType = exports.VERTICAL_PADDING = exports.UNKNOWN_SCALE = exports.TextLayerMode = exports.SpreadMode = exports.SidebarView = exports.ScrollMode = exports.SCROLLBAR_PADDING = exports.RendererType = exports.ProgressBar = exports.PresentationModeState = exports.MIN_SCALE = exports.MAX_SCALE = exports.MAX_AUTO_SCALE = exports.EventBus = exports.DEFAULT_SCALE_VALUE = exports.DEFAULT_SCALE_DELTA = exports.DEFAULT_SCALE = exports.AutoPrintRegExp = exports.AutomationEventBus = exports.animationStarted = void 0;\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } else if (call !== void 0) { throw new TypeError(\"Derived constructors may only return object or undefined\"); } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\nfunction _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }\n\nfunction _nonIterableRest() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\nfunction _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== \"undefined\" && arr[Symbol.iterator] || arr[\"@@iterator\"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"] != null) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; }\n\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\n\nfunction _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e2) { throw _e2; }, f: F }; } throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e3) { didErr = true; err = _e3; }, f: function f() { try { if (!normalCompletion && it[\"return\"] != null) it[\"return\"](); } finally { if (didErr) throw err; } } }; }\n\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\nvar DEFAULT_SCALE_VALUE = \"auto\";\nexports.DEFAULT_SCALE_VALUE = DEFAULT_SCALE_VALUE;\nvar DEFAULT_SCALE = 1.0;\nexports.DEFAULT_SCALE = DEFAULT_SCALE;\nvar DEFAULT_SCALE_DELTA = 1.1;\nexports.DEFAULT_SCALE_DELTA = DEFAULT_SCALE_DELTA;\nvar MIN_SCALE = 0.1;\nexports.MIN_SCALE = MIN_SCALE;\nvar MAX_SCALE = 10.0;\nexports.MAX_SCALE = MAX_SCALE;\nvar UNKNOWN_SCALE = 0;\nexports.UNKNOWN_SCALE = UNKNOWN_SCALE;\nvar MAX_AUTO_SCALE = 1.25;\nexports.MAX_AUTO_SCALE = MAX_AUTO_SCALE;\nvar SCROLLBAR_PADDING = 40;\nexports.SCROLLBAR_PADDING = SCROLLBAR_PADDING;\nvar VERTICAL_PADDING = 5;\nexports.VERTICAL_PADDING = VERTICAL_PADDING;\nvar LOADINGBAR_END_OFFSET_VAR = \"--loadingBar-end-offset\";\nvar PresentationModeState = {\n UNKNOWN: 0,\n NORMAL: 1,\n CHANGING: 2,\n FULLSCREEN: 3\n};\nexports.PresentationModeState = PresentationModeState;\nvar SidebarView = {\n UNKNOWN: -1,\n NONE: 0,\n THUMBS: 1,\n OUTLINE: 2,\n ATTACHMENTS: 3,\n LAYERS: 4\n};\nexports.SidebarView = SidebarView;\nvar RendererType = {\n CANVAS: \"canvas\",\n SVG: \"svg\"\n};\nexports.RendererType = RendererType;\nvar TextLayerMode = {\n DISABLE: 0,\n ENABLE: 1,\n ENABLE_ENHANCE: 2\n};\nexports.TextLayerMode = TextLayerMode;\nvar ScrollMode = {\n UNKNOWN: -1,\n VERTICAL: 0,\n HORIZONTAL: 1,\n WRAPPED: 2\n};\nexports.ScrollMode = ScrollMode;\nvar SpreadMode = {\n UNKNOWN: -1,\n NONE: 0,\n ODD: 1,\n EVEN: 2\n};\nexports.SpreadMode = SpreadMode;\nvar AutoPrintRegExp = /\\bprint\\s*\\(/;\nexports.AutoPrintRegExp = AutoPrintRegExp;\n\nfunction getOutputScale(ctx) {\n var devicePixelRatio = window.devicePixelRatio || 1;\n var backingStoreRatio = ctx.webkitBackingStorePixelRatio || ctx.mozBackingStorePixelRatio || ctx.backingStorePixelRatio || 1;\n var pixelRatio = devicePixelRatio / backingStoreRatio;\n return {\n sx: pixelRatio,\n sy: pixelRatio,\n scaled: pixelRatio !== 1\n };\n}\n\nfunction scrollIntoView(element, spot) {\n var scrollMatches = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n var parent = element.offsetParent;\n\n if (!parent) {\n console.error(\"offsetParent is not set -- cannot scroll\");\n return;\n }\n\n var offsetY = element.offsetTop + element.clientTop;\n var offsetX = element.offsetLeft + element.clientLeft;\n\n while (parent.clientHeight === parent.scrollHeight && parent.clientWidth === parent.scrollWidth || scrollMatches && (parent.classList.contains(\"markedContent\") || getComputedStyle(parent).overflow === \"hidden\")) {\n offsetY += parent.offsetTop;\n offsetX += parent.offsetLeft;\n parent = parent.offsetParent;\n\n if (!parent) {\n return;\n }\n }\n\n if (spot) {\n if (spot.top !== undefined) {\n offsetY += spot.top;\n }\n\n if (spot.left !== undefined) {\n offsetX += spot.left;\n parent.scrollLeft = offsetX;\n }\n }\n\n parent.scrollTop = offsetY;\n}\n\nfunction watchScroll(viewAreaElement, callback) {\n var debounceScroll = function debounceScroll(evt) {\n if (rAF) {\n return;\n }\n\n rAF = window.requestAnimationFrame(function viewAreaElementScrolled() {\n rAF = null;\n var currentX = viewAreaElement.scrollLeft;\n var lastX = state.lastX;\n\n if (currentX !== lastX) {\n state.right = currentX > lastX;\n }\n\n state.lastX = currentX;\n var currentY = viewAreaElement.scrollTop;\n var lastY = state.lastY;\n\n if (currentY !== lastY) {\n state.down = currentY > lastY;\n }\n\n state.lastY = currentY;\n callback(state);\n });\n };\n\n var state = {\n right: true,\n down: true,\n lastX: viewAreaElement.scrollLeft,\n lastY: viewAreaElement.scrollTop,\n _eventHandler: debounceScroll\n };\n var rAF = null;\n viewAreaElement.addEventListener(\"scroll\", debounceScroll, true);\n return state;\n}\n\nfunction parseQueryString(query) {\n var params = new Map();\n\n var _iterator = _createForOfIteratorHelper(query.split(\"&\")),\n _step;\n\n try {\n for (_iterator.s(); !(_step = _iterator.n()).done;) {\n var part = _step.value;\n var param = part.split(\"=\"),\n key = param[0].toLowerCase(),\n value = param.length > 1 ? param[1] : \"\";\n params.set(decodeURIComponent(key), decodeURIComponent(value));\n }\n } catch (err) {\n _iterator.e(err);\n } finally {\n _iterator.f();\n }\n\n return params;\n}\n\nfunction binarySearchFirstItem(items, condition) {\n var minIndex = 0;\n var maxIndex = items.length - 1;\n\n if (maxIndex < 0 || !condition(items[maxIndex])) {\n return items.length;\n }\n\n if (condition(items[minIndex])) {\n return minIndex;\n }\n\n while (minIndex < maxIndex) {\n var currentIndex = minIndex + maxIndex >> 1;\n var currentItem = items[currentIndex];\n\n if (condition(currentItem)) {\n maxIndex = currentIndex;\n } else {\n minIndex = currentIndex + 1;\n }\n }\n\n return minIndex;\n}\n\nfunction approximateFraction(x) {\n if (Math.floor(x) === x) {\n return [x, 1];\n }\n\n var xinv = 1 / x;\n var limit = 8;\n\n if (xinv > limit) {\n return [1, limit];\n } else if (Math.floor(xinv) === xinv) {\n return [1, xinv];\n }\n\n var x_ = x > 1 ? xinv : x;\n var a = 0,\n b = 1,\n c = 1,\n d = 1;\n\n while (true) {\n var p = a + c,\n q = b + d;\n\n if (q > limit) {\n break;\n }\n\n if (x_ <= p / q) {\n c = p;\n d = q;\n } else {\n a = p;\n b = q;\n }\n }\n\n var result;\n\n if (x_ - a / b < c / d - x_) {\n result = x_ === x ? [a, b] : [b, a];\n } else {\n result = x_ === x ? [c, d] : [d, c];\n }\n\n return result;\n}\n\nfunction roundToDivide(x, div) {\n var r = x % div;\n return r === 0 ? x : Math.round(x - r + div);\n}\n\nfunction getPageSizeInches(_ref) {\n var view = _ref.view,\n userUnit = _ref.userUnit,\n rotate = _ref.rotate;\n\n var _view = _slicedToArray(view, 4),\n x1 = _view[0],\n y1 = _view[1],\n x2 = _view[2],\n y2 = _view[3];\n\n var changeOrientation = rotate % 180 !== 0;\n var width = (x2 - x1) / 72 * userUnit;\n var height = (y2 - y1) / 72 * userUnit;\n return {\n width: changeOrientation ? height : width,\n height: changeOrientation ? width : height\n };\n}\n\nfunction backtrackBeforeAllVisibleElements(index, views, top) {\n if (index < 2) {\n return index;\n }\n\n var elt = views[index].div;\n var pageTop = elt.offsetTop + elt.clientTop;\n\n if (pageTop >= top) {\n elt = views[index - 1].div;\n pageTop = elt.offsetTop + elt.clientTop;\n }\n\n for (var i = index - 2; i >= 0; --i) {\n elt = views[i].div;\n\n if (elt.offsetTop + elt.clientTop + elt.clientHeight <= pageTop) {\n break;\n }\n\n index = i;\n }\n\n return index;\n}\n\nfunction getVisibleElements(_ref2) {\n var scrollEl = _ref2.scrollEl,\n views = _ref2.views,\n _ref2$sortByVisibilit = _ref2.sortByVisibility,\n sortByVisibility = _ref2$sortByVisibilit === void 0 ? false : _ref2$sortByVisibilit,\n _ref2$horizontal = _ref2.horizontal,\n horizontal = _ref2$horizontal === void 0 ? false : _ref2$horizontal,\n _ref2$rtl = _ref2.rtl,\n rtl = _ref2$rtl === void 0 ? false : _ref2$rtl;\n var top = scrollEl.scrollTop,\n bottom = top + scrollEl.clientHeight;\n var left = scrollEl.scrollLeft,\n right = left + scrollEl.clientWidth;\n\n function isElementBottomAfterViewTop(view) {\n var element = view.div;\n var elementBottom = element.offsetTop + element.clientTop + element.clientHeight;\n return elementBottom > top;\n }\n\n function isElementNextAfterViewHorizontally(view) {\n var element = view.div;\n var elementLeft = element.offsetLeft + element.clientLeft;\n var elementRight = elementLeft + element.clientWidth;\n return rtl ? elementLeft < right : elementRight > left;\n }\n\n var visible = [],\n numViews = views.length;\n var firstVisibleElementInd = binarySearchFirstItem(views, horizontal ? isElementNextAfterViewHorizontally : isElementBottomAfterViewTop);\n\n if (firstVisibleElementInd > 0 && firstVisibleElementInd < numViews && !horizontal) {\n firstVisibleElementInd = backtrackBeforeAllVisibleElements(firstVisibleElementInd, views, top);\n }\n\n var lastEdge = horizontal ? right : -1;\n\n for (var i = firstVisibleElementInd; i < numViews; i++) {\n var view = views[i],\n element = view.div;\n var currentWidth = element.offsetLeft + element.clientLeft;\n var currentHeight = element.offsetTop + element.clientTop;\n var viewWidth = element.clientWidth,\n viewHeight = element.clientHeight;\n var viewRight = currentWidth + viewWidth;\n var viewBottom = currentHeight + viewHeight;\n\n if (lastEdge === -1) {\n if (viewBottom >= bottom) {\n lastEdge = viewBottom;\n }\n } else if ((horizontal ? currentWidth : currentHeight) > lastEdge) {\n break;\n }\n\n if (viewBottom <= top || currentHeight >= bottom || viewRight <= left || currentWidth >= right) {\n continue;\n }\n\n var hiddenHeight = Math.max(0, top - currentHeight) + Math.max(0, viewBottom - bottom);\n var hiddenWidth = Math.max(0, left - currentWidth) + Math.max(0, viewRight - right);\n var fractionHeight = (viewHeight - hiddenHeight) / viewHeight,\n fractionWidth = (viewWidth - hiddenWidth) / viewWidth;\n var percent = fractionHeight * fractionWidth * 100 | 0;\n visible.push({\n id: view.id,\n x: currentWidth,\n y: currentHeight,\n view: view,\n percent: percent,\n widthPercent: fractionWidth * 100 | 0\n });\n }\n\n var first = visible[0],\n last = visible[visible.length - 1];\n\n if (sortByVisibility) {\n visible.sort(function (a, b) {\n var pc = a.percent - b.percent;\n\n if (Math.abs(pc) > 0.001) {\n return -pc;\n }\n\n return a.id - b.id;\n });\n }\n\n return {\n first: first,\n last: last,\n views: visible\n };\n}\n\nfunction noContextMenuHandler(evt) {\n evt.preventDefault();\n}\n\nfunction normalizeWheelEventDirection(evt) {\n var delta = Math.hypot(evt.deltaX, evt.deltaY);\n var angle = Math.atan2(evt.deltaY, evt.deltaX);\n\n if (-0.25 * Math.PI < angle && angle < 0.75 * Math.PI) {\n delta = -delta;\n }\n\n return delta;\n}\n\nfunction normalizeWheelEventDelta(evt) {\n var delta = normalizeWheelEventDirection(evt);\n var MOUSE_DOM_DELTA_PIXEL_MODE = 0;\n var MOUSE_DOM_DELTA_LINE_MODE = 1;\n var MOUSE_PIXELS_PER_LINE = 30;\n var MOUSE_LINES_PER_PAGE = 30;\n\n if (evt.deltaMode === MOUSE_DOM_DELTA_PIXEL_MODE) {\n delta /= MOUSE_PIXELS_PER_LINE * MOUSE_LINES_PER_PAGE;\n } else if (evt.deltaMode === MOUSE_DOM_DELTA_LINE_MODE) {\n delta /= MOUSE_LINES_PER_PAGE;\n }\n\n return delta;\n}\n\nfunction isValidRotation(angle) {\n return Number.isInteger(angle) && angle % 90 === 0;\n}\n\nfunction isValidScrollMode(mode) {\n return Number.isInteger(mode) && Object.values(ScrollMode).includes(mode) && mode !== ScrollMode.UNKNOWN;\n}\n\nfunction isValidSpreadMode(mode) {\n return Number.isInteger(mode) && Object.values(SpreadMode).includes(mode) && mode !== SpreadMode.UNKNOWN;\n}\n\nfunction isPortraitOrientation(size) {\n return size.width <= size.height;\n}\n\nvar WaitOnType = {\n EVENT: \"event\",\n TIMEOUT: \"timeout\"\n};\nexports.WaitOnType = WaitOnType;\n\nfunction waitOnEventOrTimeout(_ref3) {\n var target = _ref3.target,\n name = _ref3.name,\n _ref3$delay = _ref3.delay,\n delay = _ref3$delay === void 0 ? 0 : _ref3$delay;\n return new Promise(function (resolve, reject) {\n if (_typeof(target) !== \"object\" || !(name && typeof name === \"string\") || !(Number.isInteger(delay) && delay >= 0)) {\n throw new Error(\"waitOnEventOrTimeout - invalid parameters.\");\n }\n\n function handler(type) {\n if (target instanceof EventBus) {\n target._off(name, eventHandler);\n } else {\n target.removeEventListener(name, eventHandler);\n }\n\n if (timeout) {\n clearTimeout(timeout);\n }\n\n resolve(type);\n }\n\n var eventHandler = handler.bind(null, WaitOnType.EVENT);\n\n if (target instanceof EventBus) {\n target._on(name, eventHandler);\n } else {\n target.addEventListener(name, eventHandler);\n }\n\n var timeoutHandler = handler.bind(null, WaitOnType.TIMEOUT);\n var timeout = setTimeout(timeoutHandler, delay);\n });\n}\n\nvar animationStarted = new Promise(function (resolve) {\n window.requestAnimationFrame(resolve);\n});\nexports.animationStarted = animationStarted;\n\nvar EventBus = /*#__PURE__*/function () {\n function EventBus() {\n _classCallCheck(this, EventBus);\n\n this._listeners = Object.create(null);\n }\n\n _createClass(EventBus, [{\n key: \"on\",\n value: function on(eventName, listener) {\n var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null;\n\n this._on(eventName, listener, {\n external: true,\n once: options === null || options === void 0 ? void 0 : options.once\n });\n }\n }, {\n key: \"off\",\n value: function off(eventName, listener) {\n var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null;\n\n this._off(eventName, listener, {\n external: true,\n once: options === null || options === void 0 ? void 0 : options.once\n });\n }\n }, {\n key: \"dispatch\",\n value: function dispatch(eventName, data) {\n var eventListeners = this._listeners[eventName];\n\n if (!eventListeners || eventListeners.length === 0) {\n return;\n }\n\n var externalListeners;\n\n var _iterator2 = _createForOfIteratorHelper(eventListeners.slice(0)),\n _step2;\n\n try {\n for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {\n var _step2$value = _step2.value,\n _listener = _step2$value.listener,\n external = _step2$value.external,\n once = _step2$value.once;\n\n if (once) {\n this._off(eventName, _listener);\n }\n\n if (external) {\n (externalListeners || (externalListeners = [])).push(_listener);\n continue;\n }\n\n _listener(data);\n }\n } catch (err) {\n _iterator2.e(err);\n } finally {\n _iterator2.f();\n }\n\n if (externalListeners) {\n var _iterator3 = _createForOfIteratorHelper(externalListeners),\n _step3;\n\n try {\n for (_iterator3.s(); !(_step3 = _iterator3.n()).done;) {\n var listener = _step3.value;\n listener(data);\n }\n } catch (err) {\n _iterator3.e(err);\n } finally {\n _iterator3.f();\n }\n\n externalListeners = null;\n }\n }\n }, {\n key: \"_on\",\n value: function _on(eventName, listener) {\n var _this$_listeners;\n\n var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null;\n var eventListeners = (_this$_listeners = this._listeners)[eventName] || (_this$_listeners[eventName] = []);\n eventListeners.push({\n listener: listener,\n external: (options === null || options === void 0 ? void 0 : options.external) === true,\n once: (options === null || options === void 0 ? void 0 : options.once) === true\n });\n }\n }, {\n key: \"_off\",\n value: function _off(eventName, listener) {\n var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null;\n var eventListeners = this._listeners[eventName];\n\n if (!eventListeners) {\n return;\n }\n\n for (var i = 0, ii = eventListeners.length; i < ii; i++) {\n if (eventListeners[i].listener === listener) {\n eventListeners.splice(i, 1);\n return;\n }\n }\n }\n }]);\n\n return EventBus;\n}();\n\nexports.EventBus = EventBus;\n\nvar AutomationEventBus = /*#__PURE__*/function (_EventBus) {\n _inherits(AutomationEventBus, _EventBus);\n\n var _super = _createSuper(AutomationEventBus);\n\n function AutomationEventBus() {\n _classCallCheck(this, AutomationEventBus);\n\n return _super.apply(this, arguments);\n }\n\n _createClass(AutomationEventBus, [{\n key: \"dispatch\",\n value: function dispatch(eventName, data) {\n throw new Error(\"Not implemented: AutomationEventBus.dispatch\");\n }\n }]);\n\n return AutomationEventBus;\n}(EventBus);\n\nexports.AutomationEventBus = AutomationEventBus;\n\nfunction clamp(v, min, max) {\n return Math.min(Math.max(v, min), max);\n}\n\nvar ProgressBar = /*#__PURE__*/function () {\n function ProgressBar(id) {\n var _ref4 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},\n height = _ref4.height,\n width = _ref4.width,\n units = _ref4.units;\n\n _classCallCheck(this, ProgressBar);\n\n this.visible = true;\n this.div = document.querySelector(id + \" .progress\");\n this.bar = this.div.parentNode;\n this.height = height || 100;\n this.width = width || 100;\n this.units = units || \"%\";\n this.div.style.height = this.height + this.units;\n this.percent = 0;\n }\n\n _createClass(ProgressBar, [{\n key: \"_updateBar\",\n value: function _updateBar() {\n if (this._indeterminate) {\n this.div.classList.add(\"indeterminate\");\n this.div.style.width = this.width + this.units;\n return;\n }\n\n this.div.classList.remove(\"indeterminate\");\n var progressSize = this.width * this._percent / 100;\n this.div.style.width = progressSize + this.units;\n }\n }, {\n key: \"percent\",\n get: function get() {\n return this._percent;\n },\n set: function set(val) {\n this._indeterminate = isNaN(val);\n this._percent = clamp(val, 0, 100);\n\n this._updateBar();\n }\n }, {\n key: \"setWidth\",\n value: function setWidth(viewer) {\n if (!viewer) {\n return;\n }\n\n var container = viewer.parentNode;\n var scrollbarWidth = container.offsetWidth - viewer.offsetWidth;\n\n if (scrollbarWidth > 0) {\n var doc = document.documentElement;\n doc.style.setProperty(LOADINGBAR_END_OFFSET_VAR, \"\".concat(scrollbarWidth, \"px\"));\n }\n }\n }, {\n key: \"hide\",\n value: function hide() {\n if (!this.visible) {\n return;\n }\n\n this.visible = false;\n this.bar.classList.add(\"hidden\");\n }\n }, {\n key: \"show\",\n value: function show() {\n if (this.visible) {\n return;\n }\n\n this.visible = true;\n this.bar.classList.remove(\"hidden\");\n }\n }]);\n\n return ProgressBar;\n}();\n\nexports.ProgressBar = ProgressBar;\n\nfunction moveToEndOfArray(arr, condition) {\n var moved = [],\n len = arr.length;\n var write = 0;\n\n for (var read = 0; read < len; ++read) {\n if (condition(arr[read])) {\n moved.push(arr[read]);\n } else {\n arr[write] = arr[read];\n ++write;\n }\n }\n\n for (var _read = 0; write < len; ++_read, ++write) {\n arr[write] = moved[_read];\n }\n}\n\nfunction getActiveOrFocusedElement() {\n var curRoot = document;\n var curActiveOrFocused = curRoot.activeElement || curRoot.querySelector(\":focus\");\n\n while ((_curActiveOrFocused = curActiveOrFocused) !== null && _curActiveOrFocused !== void 0 && _curActiveOrFocused.shadowRoot) {\n var _curActiveOrFocused;\n\n curRoot = curActiveOrFocused.shadowRoot;\n curActiveOrFocused = curRoot.activeElement || curRoot.querySelector(\":focus\");\n }\n\n return curActiveOrFocused;\n}\n\nfunction apiPageLayoutToSpreadMode(layout) {\n switch (layout) {\n case \"SinglePage\":\n case \"OneColumn\":\n return SpreadMode.NONE;\n\n case \"TwoColumnLeft\":\n case \"TwoPageLeft\":\n return SpreadMode.ODD;\n\n case \"TwoColumnRight\":\n case \"TwoPageRight\":\n return SpreadMode.EVEN;\n }\n\n return SpreadMode.NONE;\n}\n\nfunction apiPageModeToSidebarView(mode) {\n switch (mode) {\n case \"UseNone\":\n return SidebarView.NONE;\n\n case \"UseThumbs\":\n return SidebarView.THUMBS;\n\n case \"UseOutlines\":\n return SidebarView.OUTLINE;\n\n case \"UseAttachments\":\n return SidebarView.ATTACHMENTS;\n\n case \"UseOC\":\n return SidebarView.LAYERS;\n }\n\n return SidebarView.NONE;\n}\n\n/***/ }),\n/* 8 */\n/***/ ((__unused_webpack_module, exports) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.StructTreeLayerBuilder = exports.DefaultStructTreeLayerFactory = void 0;\n\nfunction _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it[\"return\"] != null) it[\"return\"](); } finally { if (didErr) throw err; } } }; }\n\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nvar PDF_ROLE_TO_HTML_ROLE = {\n Document: null,\n DocumentFragment: null,\n Part: \"group\",\n Sect: \"group\",\n Div: \"group\",\n Aside: \"note\",\n NonStruct: \"none\",\n P: null,\n H: \"heading\",\n Title: null,\n FENote: \"note\",\n Sub: \"group\",\n Lbl: null,\n Span: null,\n Em: null,\n Strong: null,\n Link: \"link\",\n Annot: \"note\",\n Form: \"form\",\n Ruby: null,\n RB: null,\n RT: null,\n RP: null,\n Warichu: null,\n WT: null,\n WP: null,\n L: \"list\",\n LI: \"listitem\",\n LBody: null,\n Table: \"table\",\n TR: \"row\",\n TH: \"columnheader\",\n TD: \"cell\",\n THead: \"columnheader\",\n TBody: null,\n TFoot: null,\n Caption: null,\n Figure: \"figure\",\n Formula: null,\n Artifact: null\n};\nvar HEADING_PATTERN = /^H(\\d+)$/;\n\nvar StructTreeLayerBuilder = /*#__PURE__*/function () {\n function StructTreeLayerBuilder(_ref) {\n var pdfPage = _ref.pdfPage;\n\n _classCallCheck(this, StructTreeLayerBuilder);\n\n this.pdfPage = pdfPage;\n }\n\n _createClass(StructTreeLayerBuilder, [{\n key: \"render\",\n value: function render(structTree) {\n return this._walk(structTree);\n }\n }, {\n key: \"_setAttributes\",\n value: function _setAttributes(structElement, htmlElement) {\n if (structElement.alt !== undefined) {\n htmlElement.setAttribute(\"aria-label\", structElement.alt);\n }\n\n if (structElement.id !== undefined) {\n htmlElement.setAttribute(\"aria-owns\", structElement.id);\n }\n }\n }, {\n key: \"_walk\",\n value: function _walk(node) {\n if (!node) {\n return null;\n }\n\n var element = document.createElement(\"span\");\n\n if (\"role\" in node) {\n var role = node.role;\n var match = role.match(HEADING_PATTERN);\n\n if (match) {\n element.setAttribute(\"role\", \"heading\");\n element.setAttribute(\"aria-level\", match[1]);\n } else if (PDF_ROLE_TO_HTML_ROLE[role]) {\n element.setAttribute(\"role\", PDF_ROLE_TO_HTML_ROLE[role]);\n }\n }\n\n this._setAttributes(node, element);\n\n if (node.children) {\n if (node.children.length === 1 && \"id\" in node.children[0]) {\n this._setAttributes(node.children[0], element);\n } else {\n var _iterator = _createForOfIteratorHelper(node.children),\n _step;\n\n try {\n for (_iterator.s(); !(_step = _iterator.n()).done;) {\n var kid = _step.value;\n element.appendChild(this._walk(kid));\n }\n } catch (err) {\n _iterator.e(err);\n } finally {\n _iterator.f();\n }\n }\n }\n\n return element;\n }\n }]);\n\n return StructTreeLayerBuilder;\n}();\n\nexports.StructTreeLayerBuilder = StructTreeLayerBuilder;\n\nvar DefaultStructTreeLayerFactory = /*#__PURE__*/function () {\n function DefaultStructTreeLayerFactory() {\n _classCallCheck(this, DefaultStructTreeLayerFactory);\n }\n\n _createClass(DefaultStructTreeLayerFactory, [{\n key: \"createStructTreeLayerBuilder\",\n value: function createStructTreeLayerBuilder(pdfPage) {\n return new StructTreeLayerBuilder({\n pdfPage: pdfPage\n });\n }\n }]);\n\n return DefaultStructTreeLayerFactory;\n}();\n\nexports.DefaultStructTreeLayerFactory = DefaultStructTreeLayerFactory;\n\n/***/ }),\n/* 9 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.TextLayerBuilder = exports.DefaultTextLayerFactory = void 0;\n\nvar _pdfjsLib = __w_pdfjs_require__(4);\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nvar EXPAND_DIVS_TIMEOUT = 300;\n\nvar TextLayerBuilder = /*#__PURE__*/function () {\n function TextLayerBuilder(_ref) {\n var textLayerDiv = _ref.textLayerDiv,\n eventBus = _ref.eventBus,\n pageIndex = _ref.pageIndex,\n viewport = _ref.viewport,\n _ref$highlighter = _ref.highlighter,\n highlighter = _ref$highlighter === void 0 ? null : _ref$highlighter,\n _ref$enhanceTextSelec = _ref.enhanceTextSelection,\n enhanceTextSelection = _ref$enhanceTextSelec === void 0 ? false : _ref$enhanceTextSelec;\n\n _classCallCheck(this, TextLayerBuilder);\n\n this.textLayerDiv = textLayerDiv;\n this.eventBus = eventBus;\n this.textContent = null;\n this.textContentItemsStr = [];\n this.textContentStream = null;\n this.renderingDone = false;\n this.pageNumber = pageIndex + 1;\n this.viewport = viewport;\n this.textDivs = [];\n this.textLayerRenderTask = null;\n this.highlighter = highlighter;\n this.enhanceTextSelection = enhanceTextSelection;\n\n this._bindMouse();\n }\n\n _createClass(TextLayerBuilder, [{\n key: \"_finishRendering\",\n value: function _finishRendering() {\n this.renderingDone = true;\n\n if (!this.enhanceTextSelection) {\n var endOfContent = document.createElement(\"div\");\n endOfContent.className = \"endOfContent\";\n this.textLayerDiv.appendChild(endOfContent);\n }\n\n this.eventBus.dispatch(\"textlayerrendered\", {\n source: this,\n pageNumber: this.pageNumber,\n numTextDivs: this.textDivs.length\n });\n }\n }, {\n key: \"render\",\n value: function render() {\n var _this$highlighter,\n _this = this;\n\n var timeout = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;\n\n if (!(this.textContent || this.textContentStream) || this.renderingDone) {\n return;\n }\n\n this.cancel();\n this.textDivs.length = 0;\n (_this$highlighter = this.highlighter) === null || _this$highlighter === void 0 ? void 0 : _this$highlighter.setTextMapping(this.textDivs, this.textContentItemsStr);\n var textLayerFrag = document.createDocumentFragment();\n this.textLayerRenderTask = (0, _pdfjsLib.renderTextLayer)({\n textContent: this.textContent,\n textContentStream: this.textContentStream,\n container: textLayerFrag,\n viewport: this.viewport,\n textDivs: this.textDivs,\n textContentItemsStr: this.textContentItemsStr,\n timeout: timeout,\n enhanceTextSelection: this.enhanceTextSelection\n });\n this.textLayerRenderTask.promise.then(function () {\n var _this$highlighter2;\n\n _this.textLayerDiv.appendChild(textLayerFrag);\n\n _this._finishRendering();\n\n (_this$highlighter2 = _this.highlighter) === null || _this$highlighter2 === void 0 ? void 0 : _this$highlighter2.enable();\n }, function (reason) {});\n }\n }, {\n key: \"cancel\",\n value: function cancel() {\n var _this$highlighter3;\n\n if (this.textLayerRenderTask) {\n this.textLayerRenderTask.cancel();\n this.textLayerRenderTask = null;\n }\n\n (_this$highlighter3 = this.highlighter) === null || _this$highlighter3 === void 0 ? void 0 : _this$highlighter3.disable();\n }\n }, {\n key: \"setTextContentStream\",\n value: function setTextContentStream(readableStream) {\n this.cancel();\n this.textContentStream = readableStream;\n }\n }, {\n key: \"setTextContent\",\n value: function setTextContent(textContent) {\n this.cancel();\n this.textContent = textContent;\n }\n }, {\n key: \"_bindMouse\",\n value: function _bindMouse() {\n var _this2 = this;\n\n var div = this.textLayerDiv;\n var expandDivsTimer = null;\n div.addEventListener(\"mousedown\", function (evt) {\n if (_this2.enhanceTextSelection && _this2.textLayerRenderTask) {\n _this2.textLayerRenderTask.expandTextDivs(true);\n\n if (expandDivsTimer) {\n clearTimeout(expandDivsTimer);\n expandDivsTimer = null;\n }\n\n return;\n }\n\n var end = div.querySelector(\".endOfContent\");\n\n if (!end) {\n return;\n }\n\n var adjustTop = evt.target !== div;\n adjustTop = adjustTop && window.getComputedStyle(end).getPropertyValue(\"-moz-user-select\") !== \"none\";\n\n if (adjustTop) {\n var divBounds = div.getBoundingClientRect();\n var r = Math.max(0, (evt.pageY - divBounds.top) / divBounds.height);\n end.style.top = (r * 100).toFixed(2) + \"%\";\n }\n\n end.classList.add(\"active\");\n });\n div.addEventListener(\"mouseup\", function () {\n if (_this2.enhanceTextSelection && _this2.textLayerRenderTask) {\n expandDivsTimer = setTimeout(function () {\n if (_this2.textLayerRenderTask) {\n _this2.textLayerRenderTask.expandTextDivs(false);\n }\n\n expandDivsTimer = null;\n }, EXPAND_DIVS_TIMEOUT);\n return;\n }\n\n var end = div.querySelector(\".endOfContent\");\n\n if (!end) {\n return;\n }\n\n end.style.top = \"\";\n end.classList.remove(\"active\");\n });\n }\n }]);\n\n return TextLayerBuilder;\n}();\n\nexports.TextLayerBuilder = TextLayerBuilder;\n\nvar DefaultTextLayerFactory = /*#__PURE__*/function () {\n function DefaultTextLayerFactory() {\n _classCallCheck(this, DefaultTextLayerFactory);\n }\n\n _createClass(DefaultTextLayerFactory, [{\n key: \"createTextLayerBuilder\",\n value: function createTextLayerBuilder(textLayerDiv, pageIndex, viewport) {\n var enhanceTextSelection = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false;\n var eventBus = arguments.length > 4 ? arguments[4] : undefined;\n var highlighter = arguments.length > 5 ? arguments[5] : undefined;\n return new TextLayerBuilder({\n textLayerDiv: textLayerDiv,\n pageIndex: pageIndex,\n viewport: viewport,\n enhanceTextSelection: enhanceTextSelection,\n eventBus: eventBus,\n highlighter: highlighter\n });\n }\n }]);\n\n return DefaultTextLayerFactory;\n}();\n\nexports.DefaultTextLayerFactory = DefaultTextLayerFactory;\n\n/***/ }),\n/* 10 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.XfaLayerBuilder = exports.DefaultXfaLayerFactory = void 0;\n\nvar _pdf_link_service = __w_pdfjs_require__(6);\n\nvar _pdfjsLib = __w_pdfjs_require__(4);\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nvar XfaLayerBuilder = /*#__PURE__*/function () {\n function XfaLayerBuilder(_ref) {\n var pageDiv = _ref.pageDiv,\n pdfPage = _ref.pdfPage,\n annotationStorage = _ref.annotationStorage,\n linkService = _ref.linkService,\n xfaHtml = _ref.xfaHtml;\n\n _classCallCheck(this, XfaLayerBuilder);\n\n this.pageDiv = pageDiv;\n this.pdfPage = pdfPage;\n this.annotationStorage = annotationStorage;\n this.linkService = linkService;\n this.xfaHtml = xfaHtml;\n this.div = null;\n this._cancelled = false;\n }\n\n _createClass(XfaLayerBuilder, [{\n key: \"render\",\n value: function render(viewport) {\n var _this = this;\n\n var intent = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : \"display\";\n\n if (intent === \"print\") {\n var parameters = {\n viewport: viewport.clone({\n dontFlip: true\n }),\n div: this.div,\n xfa: this.xfaHtml,\n page: null,\n annotationStorage: this.annotationStorage,\n linkService: this.linkService,\n intent: intent\n };\n var div = document.createElement(\"div\");\n this.pageDiv.appendChild(div);\n parameters.div = div;\n\n var result = _pdfjsLib.XfaLayer.render(parameters);\n\n return Promise.resolve(result);\n }\n\n return this.pdfPage.getXfa().then(function (xfa) {\n if (_this._cancelled || !xfa) {\n return {\n textDivs: []\n };\n }\n\n var parameters = {\n viewport: viewport.clone({\n dontFlip: true\n }),\n div: _this.div,\n xfa: xfa,\n page: _this.pdfPage,\n annotationStorage: _this.annotationStorage,\n linkService: _this.linkService,\n intent: intent\n };\n\n if (_this.div) {\n return _pdfjsLib.XfaLayer.update(parameters);\n }\n\n _this.div = document.createElement(\"div\");\n\n _this.pageDiv.appendChild(_this.div);\n\n parameters.div = _this.div;\n return _pdfjsLib.XfaLayer.render(parameters);\n })[\"catch\"](function (error) {\n console.error(error);\n });\n }\n }, {\n key: \"cancel\",\n value: function cancel() {\n this._cancelled = true;\n }\n }, {\n key: \"hide\",\n value: function hide() {\n if (!this.div) {\n return;\n }\n\n this.div.hidden = true;\n }\n }]);\n\n return XfaLayerBuilder;\n}();\n\nexports.XfaLayerBuilder = XfaLayerBuilder;\n\nvar DefaultXfaLayerFactory = /*#__PURE__*/function () {\n function DefaultXfaLayerFactory() {\n _classCallCheck(this, DefaultXfaLayerFactory);\n }\n\n _createClass(DefaultXfaLayerFactory, [{\n key: \"createXfaLayerBuilder\",\n value: function createXfaLayerBuilder(pageDiv, pdfPage) {\n var annotationStorage = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null;\n var xfaHtml = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : null;\n return new XfaLayerBuilder({\n pageDiv: pageDiv,\n pdfPage: pdfPage,\n annotationStorage: annotationStorage,\n linkService: new _pdf_link_service.SimpleLinkService(),\n xfaHtml: xfaHtml\n });\n }\n }]);\n\n return DefaultXfaLayerFactory;\n}();\n\nexports.DefaultXfaLayerFactory = DefaultXfaLayerFactory;\n\n/***/ }),\n/* 11 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.DownloadManager = void 0;\n\nvar _pdfjsLib = __w_pdfjs_require__(4);\n\nvar _app_options = __w_pdfjs_require__(12);\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n;\n\nfunction _download(blobUrl, filename) {\n var a = document.createElement(\"a\");\n\n if (!a.click) {\n throw new Error('DownloadManager: \"a.click()\" is not supported.');\n }\n\n a.href = blobUrl;\n a.target = \"_parent\";\n\n if (\"download\" in a) {\n a.download = filename;\n }\n\n (document.body || document.documentElement).appendChild(a);\n a.click();\n a.remove();\n}\n\nvar DownloadManager = /*#__PURE__*/function () {\n function DownloadManager() {\n _classCallCheck(this, DownloadManager);\n\n this._openBlobUrls = new WeakMap();\n }\n\n _createClass(DownloadManager, [{\n key: \"downloadUrl\",\n value: function downloadUrl(url, filename) {\n if (!(0, _pdfjsLib.createValidAbsoluteUrl)(url, \"http://example.com\")) {\n console.error(\"downloadUrl - not a valid URL: \".concat(url));\n return;\n }\n\n _download(url + \"#pdfjs.action=download\", filename);\n }\n }, {\n key: \"downloadData\",\n value: function downloadData(data, filename, contentType) {\n var blobUrl = (0, _pdfjsLib.createObjectURL)(data, contentType, _app_options.compatibilityParams.disableCreateObjectURL);\n\n _download(blobUrl, filename);\n }\n }, {\n key: \"openOrDownloadData\",\n value: function openOrDownloadData(element, data, filename) {\n var isPdfData = (0, _pdfjsLib.isPdfFile)(filename);\n var contentType = isPdfData ? \"application/pdf\" : \"\";\n\n if (isPdfData && !_app_options.compatibilityParams.disableCreateObjectURL) {\n var blobUrl = this._openBlobUrls.get(element);\n\n if (!blobUrl) {\n blobUrl = URL.createObjectURL(new Blob([data], {\n type: contentType\n }));\n\n this._openBlobUrls.set(element, blobUrl);\n }\n\n var viewerUrl;\n viewerUrl = \"?file=\" + encodeURIComponent(blobUrl + \"#\" + filename);\n\n try {\n window.open(viewerUrl);\n return true;\n } catch (ex) {\n console.error(\"openOrDownloadData: \".concat(ex));\n URL.revokeObjectURL(blobUrl);\n\n this._openBlobUrls[\"delete\"](element);\n }\n }\n\n this.downloadData(data, filename, contentType);\n return false;\n }\n }, {\n key: \"download\",\n value: function download(blob, url, filename) {\n var sourceEventType = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : \"download\";\n\n if (_app_options.compatibilityParams.disableCreateObjectURL) {\n this.downloadUrl(url, filename);\n return;\n }\n\n var blobUrl = URL.createObjectURL(blob);\n\n _download(blobUrl, filename);\n }\n }]);\n\n return DownloadManager;\n}();\n\nexports.DownloadManager = DownloadManager;\n\n/***/ }),\n/* 12 */\n/***/ ((__unused_webpack_module, exports) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.OptionKind = exports.compatibilityParams = exports.AppOptions = void 0;\n\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nvar compatibilityParams = Object.create(null);\nexports.compatibilityParams = compatibilityParams;\n{\n var userAgent = typeof navigator !== \"undefined\" && navigator.userAgent || \"\";\n var platform = typeof navigator !== \"undefined\" && navigator.platform || \"\";\n var maxTouchPoints = typeof navigator !== \"undefined\" && navigator.maxTouchPoints || 1;\n var isAndroid = /Android/.test(userAgent);\n var isIOS = /\\b(iPad|iPhone|iPod)(?=;)/.test(userAgent) || platform === \"MacIntel\" && maxTouchPoints > 1;\n var isIOSChrome = /CriOS/.test(userAgent);\n\n (function checkOnBlobSupport() {\n if (isIOSChrome) {\n compatibilityParams.disableCreateObjectURL = true;\n }\n })();\n\n (function checkCanvasSizeLimitation() {\n if (isIOS || isAndroid) {\n compatibilityParams.maxCanvasPixels = 5242880;\n }\n })();\n}\nvar OptionKind = {\n VIEWER: 0x02,\n API: 0x04,\n WORKER: 0x08,\n PREFERENCE: 0x80\n};\nexports.OptionKind = OptionKind;\nvar defaultOptions = {\n annotationMode: {\n value: 2,\n kind: OptionKind.VIEWER + OptionKind.PREFERENCE\n },\n cursorToolOnLoad: {\n value: 0,\n kind: OptionKind.VIEWER + OptionKind.PREFERENCE\n },\n defaultUrl: {\n value: \"compressed.tracemonkey-pldi-09.pdf\",\n kind: OptionKind.VIEWER\n },\n defaultZoomValue: {\n value: \"\",\n kind: OptionKind.VIEWER + OptionKind.PREFERENCE\n },\n disableHistory: {\n value: false,\n kind: OptionKind.VIEWER\n },\n disablePageLabels: {\n value: false,\n kind: OptionKind.VIEWER + OptionKind.PREFERENCE\n },\n enablePermissions: {\n value: false,\n kind: OptionKind.VIEWER + OptionKind.PREFERENCE\n },\n enablePrintAutoRotate: {\n value: true,\n kind: OptionKind.VIEWER + OptionKind.PREFERENCE\n },\n enableScripting: {\n value: true,\n kind: OptionKind.VIEWER + OptionKind.PREFERENCE\n },\n externalLinkRel: {\n value: \"noopener noreferrer nofollow\",\n kind: OptionKind.VIEWER\n },\n externalLinkTarget: {\n value: 0,\n kind: OptionKind.VIEWER + OptionKind.PREFERENCE\n },\n historyUpdateUrl: {\n value: false,\n kind: OptionKind.VIEWER + OptionKind.PREFERENCE\n },\n ignoreDestinationZoom: {\n value: false,\n kind: OptionKind.VIEWER + OptionKind.PREFERENCE\n },\n imageResourcesPath: {\n value: \"./images/\",\n kind: OptionKind.VIEWER\n },\n maxCanvasPixels: {\n value: 16777216,\n compatibility: compatibilityParams.maxCanvasPixels,\n kind: OptionKind.VIEWER\n },\n pdfBugEnabled: {\n value: false,\n kind: OptionKind.VIEWER + OptionKind.PREFERENCE\n },\n printResolution: {\n value: 150,\n kind: OptionKind.VIEWER\n },\n renderer: {\n value: \"canvas\",\n kind: OptionKind.VIEWER\n },\n sidebarViewOnLoad: {\n value: -1,\n kind: OptionKind.VIEWER + OptionKind.PREFERENCE\n },\n scrollModeOnLoad: {\n value: -1,\n kind: OptionKind.VIEWER + OptionKind.PREFERENCE\n },\n spreadModeOnLoad: {\n value: -1,\n kind: OptionKind.VIEWER + OptionKind.PREFERENCE\n },\n textLayerMode: {\n value: 1,\n kind: OptionKind.VIEWER + OptionKind.PREFERENCE\n },\n useOnlyCssZoom: {\n value: false,\n kind: OptionKind.VIEWER + OptionKind.PREFERENCE\n },\n viewerCssTheme: {\n value: 0,\n kind: OptionKind.VIEWER + OptionKind.PREFERENCE\n },\n viewOnLoad: {\n value: 0,\n kind: OptionKind.VIEWER + OptionKind.PREFERENCE\n },\n cMapPacked: {\n value: true,\n kind: OptionKind.API\n },\n cMapUrl: {\n value: \"../web/cmaps/\",\n kind: OptionKind.API\n },\n disableAutoFetch: {\n value: false,\n kind: OptionKind.API + OptionKind.PREFERENCE\n },\n disableFontFace: {\n value: false,\n kind: OptionKind.API + OptionKind.PREFERENCE\n },\n disableRange: {\n value: false,\n kind: OptionKind.API + OptionKind.PREFERENCE\n },\n disableStream: {\n value: false,\n kind: OptionKind.API + OptionKind.PREFERENCE\n },\n docBaseUrl: {\n value: \"\",\n kind: OptionKind.API\n },\n enableXfa: {\n value: true,\n kind: OptionKind.API + OptionKind.PREFERENCE\n },\n fontExtraProperties: {\n value: false,\n kind: OptionKind.API\n },\n isEvalSupported: {\n value: true,\n kind: OptionKind.API\n },\n maxImageSize: {\n value: -1,\n kind: OptionKind.API\n },\n pdfBug: {\n value: false,\n kind: OptionKind.API\n },\n standardFontDataUrl: {\n value: \"../web/standard_fonts/\",\n kind: OptionKind.API\n },\n verbosity: {\n value: 1,\n kind: OptionKind.API\n },\n workerPort: {\n value: null,\n kind: OptionKind.WORKER\n },\n workerSrc: {\n value: \"../build/pdf.worker.js\",\n kind: OptionKind.WORKER\n }\n};\n{\n defaultOptions.disablePreferences = {\n value: false,\n kind: OptionKind.VIEWER\n };\n defaultOptions.locale = {\n value: typeof navigator !== \"undefined\" ? navigator.language : \"en-US\",\n kind: OptionKind.VIEWER\n };\n defaultOptions.sandboxBundleSrc = {\n value: \"../build/pdf.sandbox.js\",\n kind: OptionKind.VIEWER\n };\n defaultOptions.renderer.kind += OptionKind.PREFERENCE;\n}\nvar userOptions = Object.create(null);\n\nvar AppOptions = /*#__PURE__*/function () {\n function AppOptions() {\n _classCallCheck(this, AppOptions);\n\n throw new Error(\"Cannot initialize AppOptions.\");\n }\n\n _createClass(AppOptions, null, [{\n key: \"get\",\n value: function get(name) {\n var userOption = userOptions[name];\n\n if (userOption !== undefined) {\n return userOption;\n }\n\n var defaultOption = defaultOptions[name];\n\n if (defaultOption !== undefined) {\n var _defaultOption$compat;\n\n return (_defaultOption$compat = defaultOption.compatibility) !== null && _defaultOption$compat !== void 0 ? _defaultOption$compat : defaultOption.value;\n }\n\n return undefined;\n }\n }, {\n key: \"getAll\",\n value: function getAll() {\n var kind = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;\n var options = Object.create(null);\n\n for (var name in defaultOptions) {\n var _defaultOption$compat2;\n\n var defaultOption = defaultOptions[name];\n\n if (kind) {\n if ((kind & defaultOption.kind) === 0) {\n continue;\n }\n\n if (kind === OptionKind.PREFERENCE) {\n var value = defaultOption.value,\n valueType = _typeof(value);\n\n if (valueType === \"boolean\" || valueType === \"string\" || valueType === \"number\" && Number.isInteger(value)) {\n options[name] = value;\n continue;\n }\n\n throw new Error(\"Invalid type for preference: \".concat(name));\n }\n }\n\n var userOption = userOptions[name];\n options[name] = userOption !== undefined ? userOption : (_defaultOption$compat2 = defaultOption.compatibility) !== null && _defaultOption$compat2 !== void 0 ? _defaultOption$compat2 : defaultOption.value;\n }\n\n return options;\n }\n }, {\n key: \"set\",\n value: function set(name, value) {\n userOptions[name] = value;\n }\n }, {\n key: \"setAll\",\n value: function setAll(options) {\n for (var name in options) {\n userOptions[name] = options[name];\n }\n }\n }, {\n key: \"remove\",\n value: function remove(name) {\n delete userOptions[name];\n }\n }, {\n key: \"_hasUserOptions\",\n value: function _hasUserOptions() {\n return Object.keys(userOptions).length > 0;\n }\n }]);\n\n return AppOptions;\n}();\n\nexports.AppOptions = AppOptions;\n\n/***/ }),\n/* 13 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.GenericL10n = void 0;\n\nvar _regenerator = _interopRequireDefault(__w_pdfjs_require__(2));\n\n__w_pdfjs_require__(14);\n\nvar _l10n_utils = __w_pdfjs_require__(5);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }\n\nfunction _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err); } _next(undefined); }); }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nvar webL10n = document.webL10n;\n\nvar GenericL10n = /*#__PURE__*/function () {\n function GenericL10n(lang) {\n _classCallCheck(this, GenericL10n);\n\n this._lang = lang;\n this._ready = new Promise(function (resolve, reject) {\n webL10n.setLanguage((0, _l10n_utils.fixupLangCode)(lang), function () {\n resolve(webL10n);\n });\n });\n }\n\n _createClass(GenericL10n, [{\n key: \"getLanguage\",\n value: function () {\n var _getLanguage = _asyncToGenerator( /*#__PURE__*/_regenerator[\"default\"].mark(function _callee() {\n var l10n;\n return _regenerator[\"default\"].wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n _context.next = 2;\n return this._ready;\n\n case 2:\n l10n = _context.sent;\n return _context.abrupt(\"return\", l10n.getLanguage());\n\n case 4:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee, this);\n }));\n\n function getLanguage() {\n return _getLanguage.apply(this, arguments);\n }\n\n return getLanguage;\n }()\n }, {\n key: \"getDirection\",\n value: function () {\n var _getDirection = _asyncToGenerator( /*#__PURE__*/_regenerator[\"default\"].mark(function _callee2() {\n var l10n;\n return _regenerator[\"default\"].wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n _context2.next = 2;\n return this._ready;\n\n case 2:\n l10n = _context2.sent;\n return _context2.abrupt(\"return\", l10n.getDirection());\n\n case 4:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2, this);\n }));\n\n function getDirection() {\n return _getDirection.apply(this, arguments);\n }\n\n return getDirection;\n }()\n }, {\n key: \"get\",\n value: function () {\n var _get = _asyncToGenerator( /*#__PURE__*/_regenerator[\"default\"].mark(function _callee3(key) {\n var args,\n fallback,\n l10n,\n _args3 = arguments;\n return _regenerator[\"default\"].wrap(function _callee3$(_context3) {\n while (1) {\n switch (_context3.prev = _context3.next) {\n case 0:\n args = _args3.length > 1 && _args3[1] !== undefined ? _args3[1] : null;\n fallback = _args3.length > 2 && _args3[2] !== undefined ? _args3[2] : (0, _l10n_utils.getL10nFallback)(key, args);\n _context3.next = 4;\n return this._ready;\n\n case 4:\n l10n = _context3.sent;\n return _context3.abrupt(\"return\", l10n.get(key, args, fallback));\n\n case 6:\n case \"end\":\n return _context3.stop();\n }\n }\n }, _callee3, this);\n }));\n\n function get(_x) {\n return _get.apply(this, arguments);\n }\n\n return get;\n }()\n }, {\n key: \"translate\",\n value: function () {\n var _translate = _asyncToGenerator( /*#__PURE__*/_regenerator[\"default\"].mark(function _callee4(element) {\n var l10n;\n return _regenerator[\"default\"].wrap(function _callee4$(_context4) {\n while (1) {\n switch (_context4.prev = _context4.next) {\n case 0:\n _context4.next = 2;\n return this._ready;\n\n case 2:\n l10n = _context4.sent;\n return _context4.abrupt(\"return\", l10n.translate(element));\n\n case 4:\n case \"end\":\n return _context4.stop();\n }\n }\n }, _callee4, this);\n }));\n\n function translate(_x2) {\n return _translate.apply(this, arguments);\n }\n\n return translate;\n }()\n }]);\n\n return GenericL10n;\n}();\n\nexports.GenericL10n = GenericL10n;\n\n/***/ }),\n/* 14 */\n/***/ (() => {\n\n\n\ndocument.webL10n = function (window, document, undefined) {\n var gL10nData = {};\n var gTextData = '';\n var gTextProp = 'textContent';\n var gLanguage = '';\n var gMacros = {};\n var gReadyState = 'loading';\n var gAsyncResourceLoading = true;\n\n function getL10nResourceLinks() {\n return document.querySelectorAll('link[type=\"application/l10n\"]');\n }\n\n function getL10nDictionary() {\n var script = document.querySelector('script[type=\"application/l10n\"]');\n return script ? JSON.parse(script.innerHTML) : null;\n }\n\n function getTranslatableChildren(element) {\n return element ? element.querySelectorAll('*[data-l10n-id]') : [];\n }\n\n function getL10nAttributes(element) {\n if (!element) return {};\n var l10nId = element.getAttribute('data-l10n-id');\n var l10nArgs = element.getAttribute('data-l10n-args');\n var args = {};\n\n if (l10nArgs) {\n try {\n args = JSON.parse(l10nArgs);\n } catch (e) {\n console.warn('could not parse arguments for #' + l10nId);\n }\n }\n\n return {\n id: l10nId,\n args: args\n };\n }\n\n function xhrLoadText(url, onSuccess, onFailure) {\n onSuccess = onSuccess || function _onSuccess(data) {};\n\n onFailure = onFailure || function _onFailure() {};\n\n var xhr = new XMLHttpRequest();\n xhr.open('GET', url, gAsyncResourceLoading);\n\n if (xhr.overrideMimeType) {\n xhr.overrideMimeType('text/plain; charset=utf-8');\n }\n\n xhr.onreadystatechange = function () {\n if (xhr.readyState == 4) {\n if (xhr.status == 200 || xhr.status === 0) {\n onSuccess(xhr.responseText);\n } else {\n onFailure();\n }\n }\n };\n\n xhr.onerror = onFailure;\n xhr.ontimeout = onFailure;\n\n try {\n xhr.send(null);\n } catch (e) {\n onFailure();\n }\n }\n\n function parseResource(href, lang, successCallback, failureCallback) {\n var baseURL = href.replace(/[^\\/]*$/, '') || './';\n\n function evalString(text) {\n if (text.lastIndexOf('\\\\') < 0) return text;\n return text.replace(/\\\\\\\\/g, '\\\\').replace(/\\\\n/g, '\\n').replace(/\\\\r/g, '\\r').replace(/\\\\t/g, '\\t').replace(/\\\\b/g, '\\b').replace(/\\\\f/g, '\\f').replace(/\\\\{/g, '{').replace(/\\\\}/g, '}').replace(/\\\\\"/g, '\"').replace(/\\\\'/g, \"'\");\n }\n\n function parseProperties(text, parsedPropertiesCallback) {\n var dictionary = {};\n var reBlank = /^\\s*|\\s*$/;\n var reComment = /^\\s*#|^\\s*$/;\n var reSection = /^\\s*\\[(.*)\\]\\s*$/;\n var reImport = /^\\s*@import\\s+url\\((.*)\\)\\s*$/i;\n var reSplit = /^([^=\\s]*)\\s*=\\s*(.+)$/;\n\n function parseRawLines(rawText, extendedSyntax, parsedRawLinesCallback) {\n var entries = rawText.replace(reBlank, '').split(/[\\r\\n]+/);\n var currentLang = '*';\n var genericLang = lang.split('-', 1)[0];\n var skipLang = false;\n var match = '';\n\n function nextEntry() {\n while (true) {\n if (!entries.length) {\n parsedRawLinesCallback();\n return;\n }\n\n var line = entries.shift();\n if (reComment.test(line)) continue;\n\n if (extendedSyntax) {\n match = reSection.exec(line);\n\n if (match) {\n currentLang = match[1].toLowerCase();\n skipLang = currentLang !== '*' && currentLang !== lang && currentLang !== genericLang;\n continue;\n } else if (skipLang) {\n continue;\n }\n\n match = reImport.exec(line);\n\n if (match) {\n loadImport(baseURL + match[1], nextEntry);\n return;\n }\n }\n\n var tmp = line.match(reSplit);\n\n if (tmp && tmp.length == 3) {\n dictionary[tmp[1]] = evalString(tmp[2]);\n }\n }\n }\n\n nextEntry();\n }\n\n function loadImport(url, callback) {\n xhrLoadText(url, function (content) {\n parseRawLines(content, false, callback);\n }, function () {\n console.warn(url + ' not found.');\n callback();\n });\n }\n\n parseRawLines(text, true, function () {\n parsedPropertiesCallback(dictionary);\n });\n }\n\n xhrLoadText(href, function (response) {\n gTextData += response;\n parseProperties(response, function (data) {\n for (var key in data) {\n var id,\n prop,\n index = key.lastIndexOf('.');\n\n if (index > 0) {\n id = key.substring(0, index);\n prop = key.substring(index + 1);\n } else {\n id = key;\n prop = gTextProp;\n }\n\n if (!gL10nData[id]) {\n gL10nData[id] = {};\n }\n\n gL10nData[id][prop] = data[key];\n }\n\n if (successCallback) {\n successCallback();\n }\n });\n }, failureCallback);\n }\n\n function loadLocale(lang, callback) {\n if (lang) {\n lang = lang.toLowerCase();\n }\n\n callback = callback || function _callback() {};\n\n clear();\n gLanguage = lang;\n var langLinks = getL10nResourceLinks();\n var langCount = langLinks.length;\n\n if (langCount === 0) {\n var dict = getL10nDictionary();\n\n if (dict && dict.locales && dict.default_locale) {\n console.log('using the embedded JSON directory, early way out');\n gL10nData = dict.locales[lang];\n\n if (!gL10nData) {\n var defaultLocale = dict.default_locale.toLowerCase();\n\n for (var anyCaseLang in dict.locales) {\n anyCaseLang = anyCaseLang.toLowerCase();\n\n if (anyCaseLang === lang) {\n gL10nData = dict.locales[lang];\n break;\n } else if (anyCaseLang === defaultLocale) {\n gL10nData = dict.locales[defaultLocale];\n }\n }\n }\n\n callback();\n } else {\n console.log('no resource to load, early way out');\n }\n\n gReadyState = 'complete';\n return;\n }\n\n var onResourceLoaded = null;\n var gResourceCount = 0;\n\n onResourceLoaded = function onResourceLoaded() {\n gResourceCount++;\n\n if (gResourceCount >= langCount) {\n callback();\n gReadyState = 'complete';\n }\n };\n\n function L10nResourceLink(link) {\n var href = link.href;\n\n this.load = function (lang, callback) {\n parseResource(href, lang, callback, function () {\n console.warn(href + ' not found.');\n console.warn('\"' + lang + '\" resource not found');\n gLanguage = '';\n callback();\n });\n };\n }\n\n for (var i = 0; i < langCount; i++) {\n var resource = new L10nResourceLink(langLinks[i]);\n resource.load(lang, onResourceLoaded);\n }\n }\n\n function clear() {\n gL10nData = {};\n gTextData = '';\n gLanguage = '';\n }\n\n function getPluralRules(lang) {\n var locales2rules = {\n 'af': 3,\n 'ak': 4,\n 'am': 4,\n 'ar': 1,\n 'asa': 3,\n 'az': 0,\n 'be': 11,\n 'bem': 3,\n 'bez': 3,\n 'bg': 3,\n 'bh': 4,\n 'bm': 0,\n 'bn': 3,\n 'bo': 0,\n 'br': 20,\n 'brx': 3,\n 'bs': 11,\n 'ca': 3,\n 'cgg': 3,\n 'chr': 3,\n 'cs': 12,\n 'cy': 17,\n 'da': 3,\n 'de': 3,\n 'dv': 3,\n 'dz': 0,\n 'ee': 3,\n 'el': 3,\n 'en': 3,\n 'eo': 3,\n 'es': 3,\n 'et': 3,\n 'eu': 3,\n 'fa': 0,\n 'ff': 5,\n 'fi': 3,\n 'fil': 4,\n 'fo': 3,\n 'fr': 5,\n 'fur': 3,\n 'fy': 3,\n 'ga': 8,\n 'gd': 24,\n 'gl': 3,\n 'gsw': 3,\n 'gu': 3,\n 'guw': 4,\n 'gv': 23,\n 'ha': 3,\n 'haw': 3,\n 'he': 2,\n 'hi': 4,\n 'hr': 11,\n 'hu': 0,\n 'id': 0,\n 'ig': 0,\n 'ii': 0,\n 'is': 3,\n 'it': 3,\n 'iu': 7,\n 'ja': 0,\n 'jmc': 3,\n 'jv': 0,\n 'ka': 0,\n 'kab': 5,\n 'kaj': 3,\n 'kcg': 3,\n 'kde': 0,\n 'kea': 0,\n 'kk': 3,\n 'kl': 3,\n 'km': 0,\n 'kn': 0,\n 'ko': 0,\n 'ksb': 3,\n 'ksh': 21,\n 'ku': 3,\n 'kw': 7,\n 'lag': 18,\n 'lb': 3,\n 'lg': 3,\n 'ln': 4,\n 'lo': 0,\n 'lt': 10,\n 'lv': 6,\n 'mas': 3,\n 'mg': 4,\n 'mk': 16,\n 'ml': 3,\n 'mn': 3,\n 'mo': 9,\n 'mr': 3,\n 'ms': 0,\n 'mt': 15,\n 'my': 0,\n 'nah': 3,\n 'naq': 7,\n 'nb': 3,\n 'nd': 3,\n 'ne': 3,\n 'nl': 3,\n 'nn': 3,\n 'no': 3,\n 'nr': 3,\n 'nso': 4,\n 'ny': 3,\n 'nyn': 3,\n 'om': 3,\n 'or': 3,\n 'pa': 3,\n 'pap': 3,\n 'pl': 13,\n 'ps': 3,\n 'pt': 3,\n 'rm': 3,\n 'ro': 9,\n 'rof': 3,\n 'ru': 11,\n 'rwk': 3,\n 'sah': 0,\n 'saq': 3,\n 'se': 7,\n 'seh': 3,\n 'ses': 0,\n 'sg': 0,\n 'sh': 11,\n 'shi': 19,\n 'sk': 12,\n 'sl': 14,\n 'sma': 7,\n 'smi': 7,\n 'smj': 7,\n 'smn': 7,\n 'sms': 7,\n 'sn': 3,\n 'so': 3,\n 'sq': 3,\n 'sr': 11,\n 'ss': 3,\n 'ssy': 3,\n 'st': 3,\n 'sv': 3,\n 'sw': 3,\n 'syr': 3,\n 'ta': 3,\n 'te': 3,\n 'teo': 3,\n 'th': 0,\n 'ti': 4,\n 'tig': 3,\n 'tk': 3,\n 'tl': 4,\n 'tn': 3,\n 'to': 0,\n 'tr': 0,\n 'ts': 3,\n 'tzm': 22,\n 'uk': 11,\n 'ur': 3,\n 've': 3,\n 'vi': 0,\n 'vun': 3,\n 'wa': 4,\n 'wae': 3,\n 'wo': 0,\n 'xh': 3,\n 'xog': 3,\n 'yo': 0,\n 'zh': 0,\n 'zu': 3\n };\n\n function isIn(n, list) {\n return list.indexOf(n) !== -1;\n }\n\n function isBetween(n, start, end) {\n return start <= n && n <= end;\n }\n\n var pluralRules = {\n '0': function _(n) {\n return 'other';\n },\n '1': function _(n) {\n if (isBetween(n % 100, 3, 10)) return 'few';\n if (n === 0) return 'zero';\n if (isBetween(n % 100, 11, 99)) return 'many';\n if (n == 2) return 'two';\n if (n == 1) return 'one';\n return 'other';\n },\n '2': function _(n) {\n if (n !== 0 && n % 10 === 0) return 'many';\n if (n == 2) return 'two';\n if (n == 1) return 'one';\n return 'other';\n },\n '3': function _(n) {\n if (n == 1) return 'one';\n return 'other';\n },\n '4': function _(n) {\n if (isBetween(n, 0, 1)) return 'one';\n return 'other';\n },\n '5': function _(n) {\n if (isBetween(n, 0, 2) && n != 2) return 'one';\n return 'other';\n },\n '6': function _(n) {\n if (n === 0) return 'zero';\n if (n % 10 == 1 && n % 100 != 11) return 'one';\n return 'other';\n },\n '7': function _(n) {\n if (n == 2) return 'two';\n if (n == 1) return 'one';\n return 'other';\n },\n '8': function _(n) {\n if (isBetween(n, 3, 6)) return 'few';\n if (isBetween(n, 7, 10)) return 'many';\n if (n == 2) return 'two';\n if (n == 1) return 'one';\n return 'other';\n },\n '9': function _(n) {\n if (n === 0 || n != 1 && isBetween(n % 100, 1, 19)) return 'few';\n if (n == 1) return 'one';\n return 'other';\n },\n '10': function _(n) {\n if (isBetween(n % 10, 2, 9) && !isBetween(n % 100, 11, 19)) return 'few';\n if (n % 10 == 1 && !isBetween(n % 100, 11, 19)) return 'one';\n return 'other';\n },\n '11': function _(n) {\n if (isBetween(n % 10, 2, 4) && !isBetween(n % 100, 12, 14)) return 'few';\n if (n % 10 === 0 || isBetween(n % 10, 5, 9) || isBetween(n % 100, 11, 14)) return 'many';\n if (n % 10 == 1 && n % 100 != 11) return 'one';\n return 'other';\n },\n '12': function _(n) {\n if (isBetween(n, 2, 4)) return 'few';\n if (n == 1) return 'one';\n return 'other';\n },\n '13': function _(n) {\n if (isBetween(n % 10, 2, 4) && !isBetween(n % 100, 12, 14)) return 'few';\n if (n != 1 && isBetween(n % 10, 0, 1) || isBetween(n % 10, 5, 9) || isBetween(n % 100, 12, 14)) return 'many';\n if (n == 1) return 'one';\n return 'other';\n },\n '14': function _(n) {\n if (isBetween(n % 100, 3, 4)) return 'few';\n if (n % 100 == 2) return 'two';\n if (n % 100 == 1) return 'one';\n return 'other';\n },\n '15': function _(n) {\n if (n === 0 || isBetween(n % 100, 2, 10)) return 'few';\n if (isBetween(n % 100, 11, 19)) return 'many';\n if (n == 1) return 'one';\n return 'other';\n },\n '16': function _(n) {\n if (n % 10 == 1 && n != 11) return 'one';\n return 'other';\n },\n '17': function _(n) {\n if (n == 3) return 'few';\n if (n === 0) return 'zero';\n if (n == 6) return 'many';\n if (n == 2) return 'two';\n if (n == 1) return 'one';\n return 'other';\n },\n '18': function _(n) {\n if (n === 0) return 'zero';\n if (isBetween(n, 0, 2) && n !== 0 && n != 2) return 'one';\n return 'other';\n },\n '19': function _(n) {\n if (isBetween(n, 2, 10)) return 'few';\n if (isBetween(n, 0, 1)) return 'one';\n return 'other';\n },\n '20': function _(n) {\n if ((isBetween(n % 10, 3, 4) || n % 10 == 9) && !(isBetween(n % 100, 10, 19) || isBetween(n % 100, 70, 79) || isBetween(n % 100, 90, 99))) return 'few';\n if (n % 1000000 === 0 && n !== 0) return 'many';\n if (n % 10 == 2 && !isIn(n % 100, [12, 72, 92])) return 'two';\n if (n % 10 == 1 && !isIn(n % 100, [11, 71, 91])) return 'one';\n return 'other';\n },\n '21': function _(n) {\n if (n === 0) return 'zero';\n if (n == 1) return 'one';\n return 'other';\n },\n '22': function _(n) {\n if (isBetween(n, 0, 1) || isBetween(n, 11, 99)) return 'one';\n return 'other';\n },\n '23': function _(n) {\n if (isBetween(n % 10, 1, 2) || n % 20 === 0) return 'one';\n return 'other';\n },\n '24': function _(n) {\n if (isBetween(n, 3, 10) || isBetween(n, 13, 19)) return 'few';\n if (isIn(n, [2, 12])) return 'two';\n if (isIn(n, [1, 11])) return 'one';\n return 'other';\n }\n };\n var index = locales2rules[lang.replace(/-.*$/, '')];\n\n if (!(index in pluralRules)) {\n console.warn('plural form unknown for [' + lang + ']');\n return function () {\n return 'other';\n };\n }\n\n return pluralRules[index];\n }\n\n gMacros.plural = function (str, param, key, prop) {\n var n = parseFloat(param);\n if (isNaN(n)) return str;\n if (prop != gTextProp) return str;\n\n if (!gMacros._pluralRules) {\n gMacros._pluralRules = getPluralRules(gLanguage);\n }\n\n var index = '[' + gMacros._pluralRules(n) + ']';\n\n if (n === 0 && key + '[zero]' in gL10nData) {\n str = gL10nData[key + '[zero]'][prop];\n } else if (n == 1 && key + '[one]' in gL10nData) {\n str = gL10nData[key + '[one]'][prop];\n } else if (n == 2 && key + '[two]' in gL10nData) {\n str = gL10nData[key + '[two]'][prop];\n } else if (key + index in gL10nData) {\n str = gL10nData[key + index][prop];\n } else if (key + '[other]' in gL10nData) {\n str = gL10nData[key + '[other]'][prop];\n }\n\n return str;\n };\n\n function getL10nData(key, args, fallback) {\n var data = gL10nData[key];\n\n if (!data) {\n console.warn('#' + key + ' is undefined.');\n\n if (!fallback) {\n return null;\n }\n\n data = fallback;\n }\n\n var rv = {};\n\n for (var prop in data) {\n var str = data[prop];\n str = substIndexes(str, args, key, prop);\n str = substArguments(str, args, key);\n rv[prop] = str;\n }\n\n return rv;\n }\n\n function substIndexes(str, args, key, prop) {\n var reIndex = /\\{\\[\\s*([a-zA-Z]+)\\(([a-zA-Z]+)\\)\\s*\\]\\}/;\n var reMatch = reIndex.exec(str);\n if (!reMatch || !reMatch.length) return str;\n var macroName = reMatch[1];\n var paramName = reMatch[2];\n var param;\n\n if (args && paramName in args) {\n param = args[paramName];\n } else if (paramName in gL10nData) {\n param = gL10nData[paramName];\n }\n\n if (macroName in gMacros) {\n var macro = gMacros[macroName];\n str = macro(str, param, key, prop);\n }\n\n return str;\n }\n\n function substArguments(str, args, key) {\n var reArgs = /\\{\\{\\s*(.+?)\\s*\\}\\}/g;\n return str.replace(reArgs, function (matched_text, arg) {\n if (args && arg in args) {\n return args[arg];\n }\n\n if (arg in gL10nData) {\n return gL10nData[arg];\n }\n\n console.log('argument {{' + arg + '}} for #' + key + ' is undefined.');\n return matched_text;\n });\n }\n\n function translateElement(element) {\n var l10n = getL10nAttributes(element);\n if (!l10n.id) return;\n var data = getL10nData(l10n.id, l10n.args);\n\n if (!data) {\n console.warn('#' + l10n.id + ' is undefined.');\n return;\n }\n\n if (data[gTextProp]) {\n if (getChildElementCount(element) === 0) {\n element[gTextProp] = data[gTextProp];\n } else {\n var children = element.childNodes;\n var found = false;\n\n for (var i = 0, l = children.length; i < l; i++) {\n if (children[i].nodeType === 3 && /\\S/.test(children[i].nodeValue)) {\n if (found) {\n children[i].nodeValue = '';\n } else {\n children[i].nodeValue = data[gTextProp];\n found = true;\n }\n }\n }\n\n if (!found) {\n var textNode = document.createTextNode(data[gTextProp]);\n element.insertBefore(textNode, element.firstChild);\n }\n }\n\n delete data[gTextProp];\n }\n\n for (var k in data) {\n element[k] = data[k];\n }\n }\n\n function getChildElementCount(element) {\n if (element.children) {\n return element.children.length;\n }\n\n if (typeof element.childElementCount !== 'undefined') {\n return element.childElementCount;\n }\n\n var count = 0;\n\n for (var i = 0; i < element.childNodes.length; i++) {\n count += element.nodeType === 1 ? 1 : 0;\n }\n\n return count;\n }\n\n function translateFragment(element) {\n element = element || document.documentElement;\n var children = getTranslatableChildren(element);\n var elementCount = children.length;\n\n for (var i = 0; i < elementCount; i++) {\n translateElement(children[i]);\n }\n\n translateElement(element);\n }\n\n return {\n get: function get(key, args, fallbackString) {\n var index = key.lastIndexOf('.');\n var prop = gTextProp;\n\n if (index > 0) {\n prop = key.substring(index + 1);\n key = key.substring(0, index);\n }\n\n var fallback;\n\n if (fallbackString) {\n fallback = {};\n fallback[prop] = fallbackString;\n }\n\n var data = getL10nData(key, args, fallback);\n\n if (data && prop in data) {\n return data[prop];\n }\n\n return '{{' + key + '}}';\n },\n getData: function getData() {\n return gL10nData;\n },\n getText: function getText() {\n return gTextData;\n },\n getLanguage: function getLanguage() {\n return gLanguage;\n },\n setLanguage: function setLanguage(lang, callback) {\n loadLocale(lang, function () {\n if (callback) callback();\n });\n },\n getDirection: function getDirection() {\n var rtlList = ['ar', 'he', 'fa', 'ps', 'ur'];\n var shortCode = gLanguage.split('-', 1)[0];\n return rtlList.indexOf(shortCode) >= 0 ? 'rtl' : 'ltr';\n },\n translate: translateFragment,\n getReadyState: function getReadyState() {\n return gReadyState;\n },\n ready: function ready(callback) {\n if (!callback) {\n return;\n } else if (gReadyState == 'complete' || gReadyState == 'interactive') {\n window.setTimeout(function () {\n callback();\n });\n } else if (document.addEventListener) {\n document.addEventListener('localized', function once() {\n document.removeEventListener('localized', once);\n callback();\n });\n }\n }\n };\n}(window, document);\n\n/***/ }),\n/* 15 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.PDFFindController = exports.FindState = void 0;\n\nvar _pdfjsLib = __w_pdfjs_require__(4);\n\nvar _pdf_find_utils = __w_pdfjs_require__(16);\n\nvar _ui_utils = __w_pdfjs_require__(7);\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }\n\nfunction _nonIterableRest() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\nfunction _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== \"undefined\" && arr[Symbol.iterator] || arr[\"@@iterator\"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"] != null) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; }\n\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\n\nfunction _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e2) { throw _e2; }, f: F }; } throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e3) { didErr = true; err = _e3; }, f: function f() { try { if (!normalCompletion && it[\"return\"] != null) it[\"return\"](); } finally { if (didErr) throw err; } } }; }\n\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\nvar FindState = {\n FOUND: 0,\n NOT_FOUND: 1,\n WRAPPED: 2,\n PENDING: 3\n};\nexports.FindState = FindState;\nvar FIND_TIMEOUT = 250;\nvar MATCH_SCROLL_OFFSET_TOP = -50;\nvar MATCH_SCROLL_OFFSET_LEFT = -400;\nvar CHARACTERS_TO_NORMALIZE = {\n \"\\u2010\": \"-\",\n \"\\u2018\": \"'\",\n \"\\u2019\": \"'\",\n \"\\u201A\": \"'\",\n \"\\u201B\": \"'\",\n \"\\u201C\": '\"',\n \"\\u201D\": '\"',\n \"\\u201E\": '\"',\n \"\\u201F\": '\"',\n \"\\xBC\": \"1/4\",\n \"\\xBD\": \"1/2\",\n \"\\xBE\": \"3/4\"\n};\nvar normalizationRegex = null;\n\nfunction normalize(text) {\n if (!normalizationRegex) {\n var replace = Object.keys(CHARACTERS_TO_NORMALIZE).join(\"\");\n normalizationRegex = new RegExp(\"[\".concat(replace, \"]\"), \"g\");\n }\n\n var diffs = null;\n var normalizedText = text.replace(normalizationRegex, function (ch, index) {\n var normalizedCh = CHARACTERS_TO_NORMALIZE[ch],\n diff = normalizedCh.length - ch.length;\n\n if (diff !== 0) {\n (diffs || (diffs = [])).push([index, diff]);\n }\n\n return normalizedCh;\n });\n return [normalizedText, diffs];\n}\n\nfunction getOriginalIndex(matchIndex) {\n var diffs = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;\n\n if (!diffs) {\n return matchIndex;\n }\n\n var totalDiff = 0;\n\n var _iterator = _createForOfIteratorHelper(diffs),\n _step;\n\n try {\n for (_iterator.s(); !(_step = _iterator.n()).done;) {\n var _step$value = _slicedToArray(_step.value, 2),\n index = _step$value[0],\n diff = _step$value[1];\n\n var currentIndex = index + totalDiff;\n\n if (currentIndex >= matchIndex) {\n break;\n }\n\n if (currentIndex + diff > matchIndex) {\n totalDiff += matchIndex - currentIndex;\n break;\n }\n\n totalDiff += diff;\n }\n } catch (err) {\n _iterator.e(err);\n } finally {\n _iterator.f();\n }\n\n return matchIndex - totalDiff;\n}\n\nvar PDFFindController = /*#__PURE__*/function () {\n function PDFFindController(_ref) {\n var linkService = _ref.linkService,\n eventBus = _ref.eventBus;\n\n _classCallCheck(this, PDFFindController);\n\n this._linkService = linkService;\n this._eventBus = eventBus;\n\n this._reset();\n\n eventBus._on(\"findbarclose\", this._onFindBarClose.bind(this));\n }\n\n _createClass(PDFFindController, [{\n key: \"highlightMatches\",\n get: function get() {\n return this._highlightMatches;\n }\n }, {\n key: \"pageMatches\",\n get: function get() {\n return this._pageMatches;\n }\n }, {\n key: \"pageMatchesLength\",\n get: function get() {\n return this._pageMatchesLength;\n }\n }, {\n key: \"selected\",\n get: function get() {\n return this._selected;\n }\n }, {\n key: \"state\",\n get: function get() {\n return this._state;\n }\n }, {\n key: \"setDocument\",\n value: function setDocument(pdfDocument) {\n if (this._pdfDocument) {\n this._reset();\n }\n\n if (!pdfDocument) {\n return;\n }\n\n this._pdfDocument = pdfDocument;\n\n this._firstPageCapability.resolve();\n }\n }, {\n key: \"executeCommand\",\n value: function executeCommand(cmd, state) {\n var _this = this;\n\n if (!state) {\n return;\n }\n\n var pdfDocument = this._pdfDocument;\n\n if (this._state === null || this._shouldDirtyMatch(cmd, state)) {\n this._dirtyMatch = true;\n }\n\n this._state = state;\n\n if (cmd !== \"findhighlightallchange\") {\n this._updateUIState(FindState.PENDING);\n }\n\n this._firstPageCapability.promise.then(function () {\n if (!_this._pdfDocument || pdfDocument && _this._pdfDocument !== pdfDocument) {\n return;\n }\n\n _this._extractText();\n\n var findbarClosed = !_this._highlightMatches;\n var pendingTimeout = !!_this._findTimeout;\n\n if (_this._findTimeout) {\n clearTimeout(_this._findTimeout);\n _this._findTimeout = null;\n }\n\n if (cmd === \"find\") {\n _this._findTimeout = setTimeout(function () {\n _this._nextMatch();\n\n _this._findTimeout = null;\n }, FIND_TIMEOUT);\n } else if (_this._dirtyMatch) {\n _this._nextMatch();\n } else if (cmd === \"findagain\") {\n _this._nextMatch();\n\n if (findbarClosed && _this._state.highlightAll) {\n _this._updateAllPages();\n }\n } else if (cmd === \"findhighlightallchange\") {\n if (pendingTimeout) {\n _this._nextMatch();\n } else {\n _this._highlightMatches = true;\n }\n\n _this._updateAllPages();\n } else {\n _this._nextMatch();\n }\n });\n }\n }, {\n key: \"scrollMatchIntoView\",\n value: function scrollMatchIntoView(_ref2) {\n var _ref2$element = _ref2.element,\n element = _ref2$element === void 0 ? null : _ref2$element,\n _ref2$selectedLeft = _ref2.selectedLeft,\n selectedLeft = _ref2$selectedLeft === void 0 ? 0 : _ref2$selectedLeft,\n _ref2$pageIndex = _ref2.pageIndex,\n pageIndex = _ref2$pageIndex === void 0 ? -1 : _ref2$pageIndex,\n _ref2$matchIndex = _ref2.matchIndex,\n matchIndex = _ref2$matchIndex === void 0 ? -1 : _ref2$matchIndex;\n\n if (!this._scrollMatches || !element) {\n return;\n } else if (matchIndex === -1 || matchIndex !== this._selected.matchIdx) {\n return;\n } else if (pageIndex === -1 || pageIndex !== this._selected.pageIdx) {\n return;\n }\n\n this._scrollMatches = false;\n var spot = {\n top: MATCH_SCROLL_OFFSET_TOP,\n left: selectedLeft + MATCH_SCROLL_OFFSET_LEFT\n };\n (0, _ui_utils.scrollIntoView)(element, spot, true);\n }\n }, {\n key: \"_reset\",\n value: function _reset() {\n this._highlightMatches = false;\n this._scrollMatches = false;\n this._pdfDocument = null;\n this._pageMatches = [];\n this._pageMatchesLength = [];\n this._state = null;\n this._selected = {\n pageIdx: -1,\n matchIdx: -1\n };\n this._offset = {\n pageIdx: null,\n matchIdx: null,\n wrapped: false\n };\n this._extractTextPromises = [];\n this._pageContents = [];\n this._pageDiffs = [];\n this._matchesCountTotal = 0;\n this._pagesToSearch = null;\n this._pendingFindMatches = new Set();\n this._resumePageIdx = null;\n this._dirtyMatch = false;\n clearTimeout(this._findTimeout);\n this._findTimeout = null;\n this._firstPageCapability = (0, _pdfjsLib.createPromiseCapability)();\n }\n }, {\n key: \"_query\",\n get: function get() {\n if (this._state.query !== this._rawQuery) {\n this._rawQuery = this._state.query;\n\n var _normalize = normalize(this._state.query);\n\n var _normalize2 = _slicedToArray(_normalize, 1);\n\n this._normalizedQuery = _normalize2[0];\n }\n\n return this._normalizedQuery;\n }\n }, {\n key: \"_shouldDirtyMatch\",\n value: function _shouldDirtyMatch(cmd, state) {\n if (state.query !== this._state.query) {\n return true;\n }\n\n switch (cmd) {\n case \"findagain\":\n var pageNumber = this._selected.pageIdx + 1;\n var linkService = this._linkService;\n\n if (pageNumber >= 1 && pageNumber <= linkService.pagesCount && pageNumber !== linkService.page && !linkService.isPageVisible(pageNumber)) {\n return true;\n }\n\n return false;\n\n case \"findhighlightallchange\":\n return false;\n }\n\n return true;\n }\n }, {\n key: \"_prepareMatches\",\n value: function _prepareMatches(matchesWithLength, matches, matchesLength) {\n function isSubTerm(currentIndex) {\n var currentElem = matchesWithLength[currentIndex];\n var nextElem = matchesWithLength[currentIndex + 1];\n\n if (currentIndex < matchesWithLength.length - 1 && currentElem.match === nextElem.match) {\n currentElem.skipped = true;\n return true;\n }\n\n for (var i = currentIndex - 1; i >= 0; i--) {\n var prevElem = matchesWithLength[i];\n\n if (prevElem.skipped) {\n continue;\n }\n\n if (prevElem.match + prevElem.matchLength < currentElem.match) {\n break;\n }\n\n if (prevElem.match + prevElem.matchLength >= currentElem.match + currentElem.matchLength) {\n currentElem.skipped = true;\n return true;\n }\n }\n\n return false;\n }\n\n matchesWithLength.sort(function (a, b) {\n return a.match === b.match ? a.matchLength - b.matchLength : a.match - b.match;\n });\n\n for (var i = 0, len = matchesWithLength.length; i < len; i++) {\n if (isSubTerm(i)) {\n continue;\n }\n\n matches.push(matchesWithLength[i].match);\n matchesLength.push(matchesWithLength[i].matchLength);\n }\n }\n }, {\n key: \"_isEntireWord\",\n value: function _isEntireWord(content, startIdx, length) {\n if (startIdx > 0) {\n var first = content.charCodeAt(startIdx);\n var limit = content.charCodeAt(startIdx - 1);\n\n if ((0, _pdf_find_utils.getCharacterType)(first) === (0, _pdf_find_utils.getCharacterType)(limit)) {\n return false;\n }\n }\n\n var endIdx = startIdx + length - 1;\n\n if (endIdx < content.length - 1) {\n var last = content.charCodeAt(endIdx);\n\n var _limit = content.charCodeAt(endIdx + 1);\n\n if ((0, _pdf_find_utils.getCharacterType)(last) === (0, _pdf_find_utils.getCharacterType)(_limit)) {\n return false;\n }\n }\n\n return true;\n }\n }, {\n key: \"_calculatePhraseMatch\",\n value: function _calculatePhraseMatch(query, pageIndex, pageContent, pageDiffs, entireWord) {\n var matches = [],\n matchesLength = [];\n var queryLen = query.length;\n var matchIdx = -queryLen;\n\n while (true) {\n matchIdx = pageContent.indexOf(query, matchIdx + queryLen);\n\n if (matchIdx === -1) {\n break;\n }\n\n if (entireWord && !this._isEntireWord(pageContent, matchIdx, queryLen)) {\n continue;\n }\n\n var originalMatchIdx = getOriginalIndex(matchIdx, pageDiffs),\n matchEnd = matchIdx + queryLen - 1,\n originalQueryLen = getOriginalIndex(matchEnd, pageDiffs) - originalMatchIdx + 1;\n matches.push(originalMatchIdx);\n matchesLength.push(originalQueryLen);\n }\n\n this._pageMatches[pageIndex] = matches;\n this._pageMatchesLength[pageIndex] = matchesLength;\n }\n }, {\n key: \"_calculateWordMatch\",\n value: function _calculateWordMatch(query, pageIndex, pageContent, pageDiffs, entireWord) {\n var matchesWithLength = [];\n var queryArray = query.match(/\\S+/g);\n\n for (var i = 0, len = queryArray.length; i < len; i++) {\n var subquery = queryArray[i];\n var subqueryLen = subquery.length;\n var matchIdx = -subqueryLen;\n\n while (true) {\n matchIdx = pageContent.indexOf(subquery, matchIdx + subqueryLen);\n\n if (matchIdx === -1) {\n break;\n }\n\n if (entireWord && !this._isEntireWord(pageContent, matchIdx, subqueryLen)) {\n continue;\n }\n\n var originalMatchIdx = getOriginalIndex(matchIdx, pageDiffs),\n matchEnd = matchIdx + subqueryLen - 1,\n originalQueryLen = getOriginalIndex(matchEnd, pageDiffs) - originalMatchIdx + 1;\n matchesWithLength.push({\n match: originalMatchIdx,\n matchLength: originalQueryLen,\n skipped: false\n });\n }\n }\n\n this._pageMatchesLength[pageIndex] = [];\n this._pageMatches[pageIndex] = [];\n\n this._prepareMatches(matchesWithLength, this._pageMatches[pageIndex], this._pageMatchesLength[pageIndex]);\n }\n }, {\n key: \"_calculateMatch\",\n value: function _calculateMatch(pageIndex) {\n var pageContent = this._pageContents[pageIndex];\n var pageDiffs = this._pageDiffs[pageIndex];\n var query = this._query;\n var _this$_state = this._state,\n caseSensitive = _this$_state.caseSensitive,\n entireWord = _this$_state.entireWord,\n phraseSearch = _this$_state.phraseSearch;\n\n if (query.length === 0) {\n return;\n }\n\n if (!caseSensitive) {\n pageContent = pageContent.toLowerCase();\n query = query.toLowerCase();\n }\n\n if (phraseSearch) {\n this._calculatePhraseMatch(query, pageIndex, pageContent, pageDiffs, entireWord);\n } else {\n this._calculateWordMatch(query, pageIndex, pageContent, pageDiffs, entireWord);\n }\n\n if (this._state.highlightAll) {\n this._updatePage(pageIndex);\n }\n\n if (this._resumePageIdx === pageIndex) {\n this._resumePageIdx = null;\n\n this._nextPageMatch();\n }\n\n var pageMatchesCount = this._pageMatches[pageIndex].length;\n\n if (pageMatchesCount > 0) {\n this._matchesCountTotal += pageMatchesCount;\n\n this._updateUIResultsCount();\n }\n }\n }, {\n key: \"_extractText\",\n value: function _extractText() {\n var _this2 = this;\n\n if (this._extractTextPromises.length > 0) {\n return;\n }\n\n var promise = Promise.resolve();\n\n var _loop = function _loop(i, ii) {\n var extractTextCapability = (0, _pdfjsLib.createPromiseCapability)();\n _this2._extractTextPromises[i] = extractTextCapability.promise;\n promise = promise.then(function () {\n return _this2._pdfDocument.getPage(i + 1).then(function (pdfPage) {\n return pdfPage.getTextContent({\n normalizeWhitespace: true\n });\n }).then(function (textContent) {\n var textItems = textContent.items;\n var strBuf = [];\n\n for (var j = 0, jj = textItems.length; j < jj; j++) {\n strBuf.push(textItems[j].str);\n }\n\n var _normalize3 = normalize(strBuf.join(\"\"));\n\n var _normalize4 = _slicedToArray(_normalize3, 2);\n\n _this2._pageContents[i] = _normalize4[0];\n _this2._pageDiffs[i] = _normalize4[1];\n extractTextCapability.resolve(i);\n }, function (reason) {\n console.error(\"Unable to get text content for page \".concat(i + 1), reason);\n _this2._pageContents[i] = \"\";\n _this2._pageDiffs[i] = null;\n extractTextCapability.resolve(i);\n });\n });\n };\n\n for (var i = 0, ii = this._linkService.pagesCount; i < ii; i++) {\n _loop(i, ii);\n }\n }\n }, {\n key: \"_updatePage\",\n value: function _updatePage(index) {\n if (this._scrollMatches && this._selected.pageIdx === index) {\n this._linkService.page = index + 1;\n }\n\n this._eventBus.dispatch(\"updatetextlayermatches\", {\n source: this,\n pageIndex: index\n });\n }\n }, {\n key: \"_updateAllPages\",\n value: function _updateAllPages() {\n this._eventBus.dispatch(\"updatetextlayermatches\", {\n source: this,\n pageIndex: -1\n });\n }\n }, {\n key: \"_nextMatch\",\n value: function _nextMatch() {\n var _this3 = this;\n\n var previous = this._state.findPrevious;\n var currentPageIndex = this._linkService.page - 1;\n var numPages = this._linkService.pagesCount;\n this._highlightMatches = true;\n\n if (this._dirtyMatch) {\n this._dirtyMatch = false;\n this._selected.pageIdx = this._selected.matchIdx = -1;\n this._offset.pageIdx = currentPageIndex;\n this._offset.matchIdx = null;\n this._offset.wrapped = false;\n this._resumePageIdx = null;\n this._pageMatches.length = 0;\n this._pageMatchesLength.length = 0;\n this._matchesCountTotal = 0;\n\n this._updateAllPages();\n\n for (var i = 0; i < numPages; i++) {\n if (this._pendingFindMatches.has(i)) {\n continue;\n }\n\n this._pendingFindMatches.add(i);\n\n this._extractTextPromises[i].then(function (pageIdx) {\n _this3._pendingFindMatches[\"delete\"](pageIdx);\n\n _this3._calculateMatch(pageIdx);\n });\n }\n }\n\n if (this._query === \"\") {\n this._updateUIState(FindState.FOUND);\n\n return;\n }\n\n if (this._resumePageIdx) {\n return;\n }\n\n var offset = this._offset;\n this._pagesToSearch = numPages;\n\n if (offset.matchIdx !== null) {\n var numPageMatches = this._pageMatches[offset.pageIdx].length;\n\n if (!previous && offset.matchIdx + 1 < numPageMatches || previous && offset.matchIdx > 0) {\n offset.matchIdx = previous ? offset.matchIdx - 1 : offset.matchIdx + 1;\n\n this._updateMatch(true);\n\n return;\n }\n\n this._advanceOffsetPage(previous);\n }\n\n this._nextPageMatch();\n }\n }, {\n key: \"_matchesReady\",\n value: function _matchesReady(matches) {\n var offset = this._offset;\n var numMatches = matches.length;\n var previous = this._state.findPrevious;\n\n if (numMatches) {\n offset.matchIdx = previous ? numMatches - 1 : 0;\n\n this._updateMatch(true);\n\n return true;\n }\n\n this._advanceOffsetPage(previous);\n\n if (offset.wrapped) {\n offset.matchIdx = null;\n\n if (this._pagesToSearch < 0) {\n this._updateMatch(false);\n\n return true;\n }\n }\n\n return false;\n }\n }, {\n key: \"_nextPageMatch\",\n value: function _nextPageMatch() {\n if (this._resumePageIdx !== null) {\n console.error(\"There can only be one pending page.\");\n }\n\n var matches = null;\n\n do {\n var pageIdx = this._offset.pageIdx;\n matches = this._pageMatches[pageIdx];\n\n if (!matches) {\n this._resumePageIdx = pageIdx;\n break;\n }\n } while (!this._matchesReady(matches));\n }\n }, {\n key: \"_advanceOffsetPage\",\n value: function _advanceOffsetPage(previous) {\n var offset = this._offset;\n var numPages = this._linkService.pagesCount;\n offset.pageIdx = previous ? offset.pageIdx - 1 : offset.pageIdx + 1;\n offset.matchIdx = null;\n this._pagesToSearch--;\n\n if (offset.pageIdx >= numPages || offset.pageIdx < 0) {\n offset.pageIdx = previous ? numPages - 1 : 0;\n offset.wrapped = true;\n }\n }\n }, {\n key: \"_updateMatch\",\n value: function _updateMatch() {\n var found = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;\n var state = FindState.NOT_FOUND;\n var wrapped = this._offset.wrapped;\n this._offset.wrapped = false;\n\n if (found) {\n var previousPage = this._selected.pageIdx;\n this._selected.pageIdx = this._offset.pageIdx;\n this._selected.matchIdx = this._offset.matchIdx;\n state = wrapped ? FindState.WRAPPED : FindState.FOUND;\n\n if (previousPage !== -1 && previousPage !== this._selected.pageIdx) {\n this._updatePage(previousPage);\n }\n }\n\n this._updateUIState(state, this._state.findPrevious);\n\n if (this._selected.pageIdx !== -1) {\n this._scrollMatches = true;\n\n this._updatePage(this._selected.pageIdx);\n }\n }\n }, {\n key: \"_onFindBarClose\",\n value: function _onFindBarClose(evt) {\n var _this4 = this;\n\n var pdfDocument = this._pdfDocument;\n\n this._firstPageCapability.promise.then(function () {\n if (!_this4._pdfDocument || pdfDocument && _this4._pdfDocument !== pdfDocument) {\n return;\n }\n\n if (_this4._findTimeout) {\n clearTimeout(_this4._findTimeout);\n _this4._findTimeout = null;\n }\n\n if (_this4._resumePageIdx) {\n _this4._resumePageIdx = null;\n _this4._dirtyMatch = true;\n }\n\n _this4._updateUIState(FindState.FOUND);\n\n _this4._highlightMatches = false;\n\n _this4._updateAllPages();\n });\n }\n }, {\n key: \"_requestMatchesCount\",\n value: function _requestMatchesCount() {\n var _this$_selected = this._selected,\n pageIdx = _this$_selected.pageIdx,\n matchIdx = _this$_selected.matchIdx;\n var current = 0,\n total = this._matchesCountTotal;\n\n if (matchIdx !== -1) {\n for (var i = 0; i < pageIdx; i++) {\n var _this$_pageMatches$i;\n\n current += ((_this$_pageMatches$i = this._pageMatches[i]) === null || _this$_pageMatches$i === void 0 ? void 0 : _this$_pageMatches$i.length) || 0;\n }\n\n current += matchIdx + 1;\n }\n\n if (current < 1 || current > total) {\n current = total = 0;\n }\n\n return {\n current: current,\n total: total\n };\n }\n }, {\n key: \"_updateUIResultsCount\",\n value: function _updateUIResultsCount() {\n this._eventBus.dispatch(\"updatefindmatchescount\", {\n source: this,\n matchesCount: this._requestMatchesCount()\n });\n }\n }, {\n key: \"_updateUIState\",\n value: function _updateUIState(state, previous) {\n var _this$_state$query, _this$_state2;\n\n this._eventBus.dispatch(\"updatefindcontrolstate\", {\n source: this,\n state: state,\n previous: previous,\n matchesCount: this._requestMatchesCount(),\n rawQuery: (_this$_state$query = (_this$_state2 = this._state) === null || _this$_state2 === void 0 ? void 0 : _this$_state2.query) !== null && _this$_state$query !== void 0 ? _this$_state$query : null\n });\n }\n }]);\n\n return PDFFindController;\n}();\n\nexports.PDFFindController = PDFFindController;\n\n/***/ }),\n/* 16 */\n/***/ ((__unused_webpack_module, exports) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.getCharacterType = getCharacterType;\nexports.CharacterType = void 0;\nvar CharacterType = {\n SPACE: 0,\n ALPHA_LETTER: 1,\n PUNCT: 2,\n HAN_LETTER: 3,\n KATAKANA_LETTER: 4,\n HIRAGANA_LETTER: 5,\n HALFWIDTH_KATAKANA_LETTER: 6,\n THAI_LETTER: 7\n};\nexports.CharacterType = CharacterType;\n\nfunction isAlphabeticalScript(charCode) {\n return charCode < 0x2e80;\n}\n\nfunction isAscii(charCode) {\n return (charCode & 0xff80) === 0;\n}\n\nfunction isAsciiAlpha(charCode) {\n return charCode >= 0x61 && charCode <= 0x7a || charCode >= 0x41 && charCode <= 0x5a;\n}\n\nfunction isAsciiDigit(charCode) {\n return charCode >= 0x30 && charCode <= 0x39;\n}\n\nfunction isAsciiSpace(charCode) {\n return charCode === 0x20 || charCode === 0x09 || charCode === 0x0d || charCode === 0x0a;\n}\n\nfunction isHan(charCode) {\n return charCode >= 0x3400 && charCode <= 0x9fff || charCode >= 0xf900 && charCode <= 0xfaff;\n}\n\nfunction isKatakana(charCode) {\n return charCode >= 0x30a0 && charCode <= 0x30ff;\n}\n\nfunction isHiragana(charCode) {\n return charCode >= 0x3040 && charCode <= 0x309f;\n}\n\nfunction isHalfwidthKatakana(charCode) {\n return charCode >= 0xff60 && charCode <= 0xff9f;\n}\n\nfunction isThai(charCode) {\n return (charCode & 0xff80) === 0x0e00;\n}\n\nfunction getCharacterType(charCode) {\n if (isAlphabeticalScript(charCode)) {\n if (isAscii(charCode)) {\n if (isAsciiSpace(charCode)) {\n return CharacterType.SPACE;\n } else if (isAsciiAlpha(charCode) || isAsciiDigit(charCode) || charCode === 0x5f) {\n return CharacterType.ALPHA_LETTER;\n }\n\n return CharacterType.PUNCT;\n } else if (isThai(charCode)) {\n return CharacterType.THAI_LETTER;\n } else if (charCode === 0xa0) {\n return CharacterType.SPACE;\n }\n\n return CharacterType.ALPHA_LETTER;\n }\n\n if (isHan(charCode)) {\n return CharacterType.HAN_LETTER;\n } else if (isKatakana(charCode)) {\n return CharacterType.KATAKANA_LETTER;\n } else if (isHiragana(charCode)) {\n return CharacterType.HIRAGANA_LETTER;\n } else if (isHalfwidthKatakana(charCode)) {\n return CharacterType.HALFWIDTH_KATAKANA_LETTER;\n }\n\n return CharacterType.ALPHA_LETTER;\n}\n\n/***/ }),\n/* 17 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.isDestArraysEqual = isDestArraysEqual;\nexports.isDestHashesEqual = isDestHashesEqual;\nexports.PDFHistory = void 0;\n\nvar _ui_utils = __w_pdfjs_require__(7);\n\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\nfunction _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }\n\nfunction _nonIterableRest() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\nfunction _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== \"undefined\" && arr[Symbol.iterator] || arr[\"@@iterator\"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"] != null) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; }\n\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nvar HASH_CHANGE_TIMEOUT = 1000;\nvar POSITION_UPDATED_THRESHOLD = 50;\nvar UPDATE_VIEWAREA_TIMEOUT = 1000;\n\nfunction getCurrentHash() {\n return document.location.hash;\n}\n\nvar PDFHistory = /*#__PURE__*/function () {\n function PDFHistory(_ref) {\n var _this = this;\n\n var linkService = _ref.linkService,\n eventBus = _ref.eventBus;\n\n _classCallCheck(this, PDFHistory);\n\n this.linkService = linkService;\n this.eventBus = eventBus;\n this._initialized = false;\n this._fingerprint = \"\";\n this.reset();\n this._boundEvents = null;\n this._isViewerInPresentationMode = false;\n\n this.eventBus._on(\"presentationmodechanged\", function (evt) {\n _this._isViewerInPresentationMode = evt.state !== _ui_utils.PresentationModeState.NORMAL;\n });\n\n this.eventBus._on(\"pagesinit\", function () {\n _this._isPagesLoaded = false;\n\n _this.eventBus._on(\"pagesloaded\", function (evt) {\n _this._isPagesLoaded = !!evt.pagesCount;\n }, {\n once: true\n });\n });\n }\n\n _createClass(PDFHistory, [{\n key: \"initialize\",\n value: function initialize(_ref2) {\n var fingerprint = _ref2.fingerprint,\n _ref2$resetHistory = _ref2.resetHistory,\n resetHistory = _ref2$resetHistory === void 0 ? false : _ref2$resetHistory,\n _ref2$updateUrl = _ref2.updateUrl,\n updateUrl = _ref2$updateUrl === void 0 ? false : _ref2$updateUrl;\n\n if (!fingerprint || typeof fingerprint !== \"string\") {\n console.error('PDFHistory.initialize: The \"fingerprint\" must be a non-empty string.');\n return;\n }\n\n if (this._initialized) {\n this.reset();\n }\n\n var reInitialized = this._fingerprint !== \"\" && this._fingerprint !== fingerprint;\n this._fingerprint = fingerprint;\n this._updateUrl = updateUrl === true;\n this._initialized = true;\n\n this._bindEvents();\n\n var state = window.history.state;\n this._popStateInProgress = false;\n this._blockHashChange = 0;\n this._currentHash = getCurrentHash();\n this._numPositionUpdates = 0;\n this._uid = this._maxUid = 0;\n this._destination = null;\n this._position = null;\n\n if (!this._isValidState(state, true) || resetHistory) {\n var _this$_parseCurrentHa = this._parseCurrentHash(true),\n hash = _this$_parseCurrentHa.hash,\n page = _this$_parseCurrentHa.page,\n rotation = _this$_parseCurrentHa.rotation;\n\n if (!hash || reInitialized || resetHistory) {\n this._pushOrReplaceState(null, true);\n\n return;\n }\n\n this._pushOrReplaceState({\n hash: hash,\n page: page,\n rotation: rotation\n }, true);\n\n return;\n }\n\n var destination = state.destination;\n\n this._updateInternalState(destination, state.uid, true);\n\n if (destination.rotation !== undefined) {\n this._initialRotation = destination.rotation;\n }\n\n if (destination.dest) {\n this._initialBookmark = JSON.stringify(destination.dest);\n this._destination.page = null;\n } else if (destination.hash) {\n this._initialBookmark = destination.hash;\n } else if (destination.page) {\n this._initialBookmark = \"page=\".concat(destination.page);\n }\n }\n }, {\n key: \"reset\",\n value: function reset() {\n if (this._initialized) {\n this._pageHide();\n\n this._initialized = false;\n\n this._unbindEvents();\n }\n\n if (this._updateViewareaTimeout) {\n clearTimeout(this._updateViewareaTimeout);\n this._updateViewareaTimeout = null;\n }\n\n this._initialBookmark = null;\n this._initialRotation = null;\n }\n }, {\n key: \"push\",\n value: function push(_ref3) {\n var _this2 = this;\n\n var _ref3$namedDest = _ref3.namedDest,\n namedDest = _ref3$namedDest === void 0 ? null : _ref3$namedDest,\n explicitDest = _ref3.explicitDest,\n pageNumber = _ref3.pageNumber;\n\n if (!this._initialized) {\n return;\n }\n\n if (namedDest && typeof namedDest !== \"string\") {\n console.error(\"PDFHistory.push: \" + \"\\\"\".concat(namedDest, \"\\\" is not a valid namedDest parameter.\"));\n return;\n } else if (!Array.isArray(explicitDest)) {\n console.error(\"PDFHistory.push: \" + \"\\\"\".concat(explicitDest, \"\\\" is not a valid explicitDest parameter.\"));\n return;\n } else if (!this._isValidPage(pageNumber)) {\n if (pageNumber !== null || this._destination) {\n console.error(\"PDFHistory.push: \" + \"\\\"\".concat(pageNumber, \"\\\" is not a valid pageNumber parameter.\"));\n return;\n }\n }\n\n var hash = namedDest || JSON.stringify(explicitDest);\n\n if (!hash) {\n return;\n }\n\n var forceReplace = false;\n\n if (this._destination && (isDestHashesEqual(this._destination.hash, hash) || isDestArraysEqual(this._destination.dest, explicitDest))) {\n if (this._destination.page) {\n return;\n }\n\n forceReplace = true;\n }\n\n if (this._popStateInProgress && !forceReplace) {\n return;\n }\n\n this._pushOrReplaceState({\n dest: explicitDest,\n hash: hash,\n page: pageNumber,\n rotation: this.linkService.rotation\n }, forceReplace);\n\n if (!this._popStateInProgress) {\n this._popStateInProgress = true;\n Promise.resolve().then(function () {\n _this2._popStateInProgress = false;\n });\n }\n }\n }, {\n key: \"pushPage\",\n value: function pushPage(pageNumber) {\n var _this$_destination,\n _this3 = this;\n\n if (!this._initialized) {\n return;\n }\n\n if (!this._isValidPage(pageNumber)) {\n console.error(\"PDFHistory.pushPage: \\\"\".concat(pageNumber, \"\\\" is not a valid page number.\"));\n return;\n }\n\n if (((_this$_destination = this._destination) === null || _this$_destination === void 0 ? void 0 : _this$_destination.page) === pageNumber) {\n return;\n }\n\n if (this._popStateInProgress) {\n return;\n }\n\n this._pushOrReplaceState({\n dest: null,\n hash: \"page=\".concat(pageNumber),\n page: pageNumber,\n rotation: this.linkService.rotation\n });\n\n if (!this._popStateInProgress) {\n this._popStateInProgress = true;\n Promise.resolve().then(function () {\n _this3._popStateInProgress = false;\n });\n }\n }\n }, {\n key: \"pushCurrentPosition\",\n value: function pushCurrentPosition() {\n if (!this._initialized || this._popStateInProgress) {\n return;\n }\n\n this._tryPushCurrentPosition();\n }\n }, {\n key: \"back\",\n value: function back() {\n if (!this._initialized || this._popStateInProgress) {\n return;\n }\n\n var state = window.history.state;\n\n if (this._isValidState(state) && state.uid > 0) {\n window.history.back();\n }\n }\n }, {\n key: \"forward\",\n value: function forward() {\n if (!this._initialized || this._popStateInProgress) {\n return;\n }\n\n var state = window.history.state;\n\n if (this._isValidState(state) && state.uid < this._maxUid) {\n window.history.forward();\n }\n }\n }, {\n key: \"popStateInProgress\",\n get: function get() {\n return this._initialized && (this._popStateInProgress || this._blockHashChange > 0);\n }\n }, {\n key: \"initialBookmark\",\n get: function get() {\n return this._initialized ? this._initialBookmark : null;\n }\n }, {\n key: \"initialRotation\",\n get: function get() {\n return this._initialized ? this._initialRotation : null;\n }\n }, {\n key: \"_pushOrReplaceState\",\n value: function _pushOrReplaceState(destination) {\n var forceReplace = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n var shouldReplace = forceReplace || !this._destination;\n var newState = {\n fingerprint: this._fingerprint,\n uid: shouldReplace ? this._uid : this._uid + 1,\n destination: destination\n };\n\n this._updateInternalState(destination, newState.uid);\n\n var newUrl;\n\n if (this._updateUrl && destination !== null && destination !== void 0 && destination.hash) {\n var baseUrl = document.location.href.split(\"#\")[0];\n\n if (!baseUrl.startsWith(\"file://\")) {\n newUrl = \"\".concat(baseUrl, \"#\").concat(destination.hash);\n }\n }\n\n if (shouldReplace) {\n window.history.replaceState(newState, \"\", newUrl);\n } else {\n window.history.pushState(newState, \"\", newUrl);\n }\n }\n }, {\n key: \"_tryPushCurrentPosition\",\n value: function _tryPushCurrentPosition() {\n var temporary = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;\n\n if (!this._position) {\n return;\n }\n\n var position = this._position;\n\n if (temporary) {\n position = Object.assign(Object.create(null), this._position);\n position.temporary = true;\n }\n\n if (!this._destination) {\n this._pushOrReplaceState(position);\n\n return;\n }\n\n if (this._destination.temporary) {\n this._pushOrReplaceState(position, true);\n\n return;\n }\n\n if (this._destination.hash === position.hash) {\n return;\n }\n\n if (!this._destination.page && (POSITION_UPDATED_THRESHOLD <= 0 || this._numPositionUpdates <= POSITION_UPDATED_THRESHOLD)) {\n return;\n }\n\n var forceReplace = false;\n\n if (this._destination.page >= position.first && this._destination.page <= position.page) {\n if (this._destination.dest !== undefined || !this._destination.first) {\n return;\n }\n\n forceReplace = true;\n }\n\n this._pushOrReplaceState(position, forceReplace);\n }\n }, {\n key: \"_isValidPage\",\n value: function _isValidPage(val) {\n return Number.isInteger(val) && val > 0 && val <= this.linkService.pagesCount;\n }\n }, {\n key: \"_isValidState\",\n value: function _isValidState(state) {\n var checkReload = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n\n if (!state) {\n return false;\n }\n\n if (state.fingerprint !== this._fingerprint) {\n if (checkReload) {\n if (typeof state.fingerprint !== \"string\" || state.fingerprint.length !== this._fingerprint.length) {\n return false;\n }\n\n var _performance$getEntri = performance.getEntriesByType(\"navigation\"),\n _performance$getEntri2 = _slicedToArray(_performance$getEntri, 1),\n perfEntry = _performance$getEntri2[0];\n\n if ((perfEntry === null || perfEntry === void 0 ? void 0 : perfEntry.type) !== \"reload\") {\n return false;\n }\n } else {\n return false;\n }\n }\n\n if (!Number.isInteger(state.uid) || state.uid < 0) {\n return false;\n }\n\n if (state.destination === null || _typeof(state.destination) !== \"object\") {\n return false;\n }\n\n return true;\n }\n }, {\n key: \"_updateInternalState\",\n value: function _updateInternalState(destination, uid) {\n var removeTemporary = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n\n if (this._updateViewareaTimeout) {\n clearTimeout(this._updateViewareaTimeout);\n this._updateViewareaTimeout = null;\n }\n\n if (removeTemporary && destination !== null && destination !== void 0 && destination.temporary) {\n delete destination.temporary;\n }\n\n this._destination = destination;\n this._uid = uid;\n this._maxUid = Math.max(this._maxUid, uid);\n this._numPositionUpdates = 0;\n }\n }, {\n key: \"_parseCurrentHash\",\n value: function _parseCurrentHash() {\n var checkNameddest = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;\n var hash = unescape(getCurrentHash()).substring(1);\n var params = (0, _ui_utils.parseQueryString)(hash);\n var nameddest = params.get(\"nameddest\") || \"\";\n var page = params.get(\"page\") | 0;\n\n if (!this._isValidPage(page) || checkNameddest && nameddest.length > 0) {\n page = null;\n }\n\n return {\n hash: hash,\n page: page,\n rotation: this.linkService.rotation\n };\n }\n }, {\n key: \"_updateViewarea\",\n value: function _updateViewarea(_ref4) {\n var _this4 = this;\n\n var location = _ref4.location;\n\n if (this._updateViewareaTimeout) {\n clearTimeout(this._updateViewareaTimeout);\n this._updateViewareaTimeout = null;\n }\n\n this._position = {\n hash: this._isViewerInPresentationMode ? \"page=\".concat(location.pageNumber) : location.pdfOpenParams.substring(1),\n page: this.linkService.page,\n first: location.pageNumber,\n rotation: location.rotation\n };\n\n if (this._popStateInProgress) {\n return;\n }\n\n if (POSITION_UPDATED_THRESHOLD > 0 && this._isPagesLoaded && this._destination && !this._destination.page) {\n this._numPositionUpdates++;\n }\n\n if (UPDATE_VIEWAREA_TIMEOUT > 0) {\n this._updateViewareaTimeout = setTimeout(function () {\n if (!_this4._popStateInProgress) {\n _this4._tryPushCurrentPosition(true);\n }\n\n _this4._updateViewareaTimeout = null;\n }, UPDATE_VIEWAREA_TIMEOUT);\n }\n }\n }, {\n key: \"_popState\",\n value: function _popState(_ref5) {\n var _this5 = this;\n\n var state = _ref5.state;\n var newHash = getCurrentHash(),\n hashChanged = this._currentHash !== newHash;\n this._currentHash = newHash;\n\n if (!state) {\n this._uid++;\n\n var _this$_parseCurrentHa2 = this._parseCurrentHash(),\n hash = _this$_parseCurrentHa2.hash,\n page = _this$_parseCurrentHa2.page,\n rotation = _this$_parseCurrentHa2.rotation;\n\n this._pushOrReplaceState({\n hash: hash,\n page: page,\n rotation: rotation\n }, true);\n\n return;\n }\n\n if (!this._isValidState(state)) {\n return;\n }\n\n this._popStateInProgress = true;\n\n if (hashChanged) {\n this._blockHashChange++;\n (0, _ui_utils.waitOnEventOrTimeout)({\n target: window,\n name: \"hashchange\",\n delay: HASH_CHANGE_TIMEOUT\n }).then(function () {\n _this5._blockHashChange--;\n });\n }\n\n var destination = state.destination;\n\n this._updateInternalState(destination, state.uid, true);\n\n if ((0, _ui_utils.isValidRotation)(destination.rotation)) {\n this.linkService.rotation = destination.rotation;\n }\n\n if (destination.dest) {\n this.linkService.goToDestination(destination.dest);\n } else if (destination.hash) {\n this.linkService.setHash(destination.hash);\n } else if (destination.page) {\n this.linkService.page = destination.page;\n }\n\n Promise.resolve().then(function () {\n _this5._popStateInProgress = false;\n });\n }\n }, {\n key: \"_pageHide\",\n value: function _pageHide() {\n if (!this._destination || this._destination.temporary) {\n this._tryPushCurrentPosition();\n }\n }\n }, {\n key: \"_bindEvents\",\n value: function _bindEvents() {\n if (this._boundEvents) {\n return;\n }\n\n this._boundEvents = {\n updateViewarea: this._updateViewarea.bind(this),\n popState: this._popState.bind(this),\n pageHide: this._pageHide.bind(this)\n };\n\n this.eventBus._on(\"updateviewarea\", this._boundEvents.updateViewarea);\n\n window.addEventListener(\"popstate\", this._boundEvents.popState);\n window.addEventListener(\"pagehide\", this._boundEvents.pageHide);\n }\n }, {\n key: \"_unbindEvents\",\n value: function _unbindEvents() {\n if (!this._boundEvents) {\n return;\n }\n\n this.eventBus._off(\"updateviewarea\", this._boundEvents.updateViewarea);\n\n window.removeEventListener(\"popstate\", this._boundEvents.popState);\n window.removeEventListener(\"pagehide\", this._boundEvents.pageHide);\n this._boundEvents = null;\n }\n }]);\n\n return PDFHistory;\n}();\n\nexports.PDFHistory = PDFHistory;\n\nfunction isDestHashesEqual(destHash, pushHash) {\n if (typeof destHash !== \"string\" || typeof pushHash !== \"string\") {\n return false;\n }\n\n if (destHash === pushHash) {\n return true;\n }\n\n var nameddest = (0, _ui_utils.parseQueryString)(destHash).get(\"nameddest\");\n\n if (nameddest === pushHash) {\n return true;\n }\n\n return false;\n}\n\nfunction isDestArraysEqual(firstDest, secondDest) {\n function isEntryEqual(first, second) {\n if (_typeof(first) !== _typeof(second)) {\n return false;\n }\n\n if (Array.isArray(first) || Array.isArray(second)) {\n return false;\n }\n\n if (first !== null && _typeof(first) === \"object\" && second !== null) {\n if (Object.keys(first).length !== Object.keys(second).length) {\n return false;\n }\n\n for (var key in first) {\n if (!isEntryEqual(first[key], second[key])) {\n return false;\n }\n }\n\n return true;\n }\n\n return first === second || Number.isNaN(first) && Number.isNaN(second);\n }\n\n if (!(Array.isArray(firstDest) && Array.isArray(secondDest))) {\n return false;\n }\n\n if (firstDest.length !== secondDest.length) {\n return false;\n }\n\n for (var i = 0, ii = firstDest.length; i < ii; i++) {\n if (!isEntryEqual(firstDest[i], secondDest[i])) {\n return false;\n }\n }\n\n return true;\n}\n\n/***/ }),\n/* 18 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.PDFPageView = void 0;\n\nvar _regenerator = _interopRequireDefault(__w_pdfjs_require__(2));\n\nvar _pdfjsLib = __w_pdfjs_require__(4);\n\nvar _ui_utils = __w_pdfjs_require__(7);\n\nvar _app_options = __w_pdfjs_require__(12);\n\nvar _l10n_utils = __w_pdfjs_require__(5);\n\nvar _pdf_rendering_queue = __w_pdfjs_require__(19);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\nfunction _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it[\"return\"] != null) it[\"return\"](); } finally { if (didErr) throw err; } } }; }\n\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\nfunction asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }\n\nfunction _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err); } _next(undefined); }); }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nvar MAX_CANVAS_PIXELS = _app_options.compatibilityParams.maxCanvasPixels || 16777216;\n\nvar PDFPageView = /*#__PURE__*/function () {\n function PDFPageView(options) {\n var _options$textLayerMod, _options$annotationMo, _options$textHighligh, _this$renderingQueue;\n\n _classCallCheck(this, PDFPageView);\n\n var container = options.container;\n var defaultViewport = options.defaultViewport;\n this.id = options.id;\n this.renderingId = \"page\" + this.id;\n this.pdfPage = null;\n this.pageLabel = null;\n this.rotation = 0;\n this.scale = options.scale || _ui_utils.DEFAULT_SCALE;\n this.viewport = defaultViewport;\n this.pdfPageRotate = defaultViewport.rotation;\n this._optionalContentConfigPromise = options.optionalContentConfigPromise || null;\n this.hasRestrictedScaling = false;\n this.textLayerMode = (_options$textLayerMod = options.textLayerMode) !== null && _options$textLayerMod !== void 0 ? _options$textLayerMod : _ui_utils.TextLayerMode.ENABLE;\n this._annotationMode = (_options$annotationMo = options.annotationMode) !== null && _options$annotationMo !== void 0 ? _options$annotationMo : _pdfjsLib.AnnotationMode.ENABLE_FORMS;\n this.imageResourcesPath = options.imageResourcesPath || \"\";\n this.useOnlyCssZoom = options.useOnlyCssZoom || false;\n this.maxCanvasPixels = options.maxCanvasPixels || MAX_CANVAS_PIXELS;\n this.eventBus = options.eventBus;\n this.renderingQueue = options.renderingQueue;\n this.textLayerFactory = options.textLayerFactory;\n this.annotationLayerFactory = options.annotationLayerFactory;\n this.xfaLayerFactory = options.xfaLayerFactory;\n this.textHighlighter = (_options$textHighligh = options.textHighlighterFactory) === null || _options$textHighligh === void 0 ? void 0 : _options$textHighligh.createTextHighlighter(this.id - 1, this.eventBus);\n this.structTreeLayerFactory = options.structTreeLayerFactory;\n this.renderer = options.renderer || _ui_utils.RendererType.CANVAS;\n this.l10n = options.l10n || _l10n_utils.NullL10n;\n this.paintTask = null;\n this.paintedViewportMap = new WeakMap();\n this.renderingState = _pdf_rendering_queue.RenderingStates.INITIAL;\n this.resume = null;\n this._renderError = null;\n this._isStandalone = !((_this$renderingQueue = this.renderingQueue) !== null && _this$renderingQueue !== void 0 && _this$renderingQueue.hasViewer());\n this.annotationLayer = null;\n this.textLayer = null;\n this.zoomLayer = null;\n this.xfaLayer = null;\n this.structTreeLayer = null;\n var div = document.createElement(\"div\");\n div.className = \"page\";\n div.style.width = Math.floor(this.viewport.width) + \"px\";\n div.style.height = Math.floor(this.viewport.height) + \"px\";\n div.setAttribute(\"data-page-number\", this.id);\n div.setAttribute(\"role\", \"region\");\n this.l10n.get(\"page_landmark\", {\n page: this.id\n }).then(function (msg) {\n div.setAttribute(\"aria-label\", msg);\n });\n this.div = div;\n container.appendChild(div);\n }\n\n _createClass(PDFPageView, [{\n key: \"setPdfPage\",\n value: function setPdfPage(pdfPage) {\n this.pdfPage = pdfPage;\n this.pdfPageRotate = pdfPage.rotate;\n var totalRotation = (this.rotation + this.pdfPageRotate) % 360;\n this.viewport = pdfPage.getViewport({\n scale: this.scale * _pdfjsLib.PixelsPerInch.PDF_TO_CSS_UNITS,\n rotation: totalRotation\n });\n this.reset();\n }\n }, {\n key: \"destroy\",\n value: function destroy() {\n this.reset();\n\n if (this.pdfPage) {\n this.pdfPage.cleanup();\n }\n }\n }, {\n key: \"_renderAnnotationLayer\",\n value: function () {\n var _renderAnnotationLayer2 = _asyncToGenerator( /*#__PURE__*/_regenerator[\"default\"].mark(function _callee() {\n var error;\n return _regenerator[\"default\"].wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n error = null;\n _context.prev = 1;\n _context.next = 4;\n return this.annotationLayer.render(this.viewport, \"display\");\n\n case 4:\n _context.next = 9;\n break;\n\n case 6:\n _context.prev = 6;\n _context.t0 = _context[\"catch\"](1);\n error = _context.t0;\n\n case 9:\n _context.prev = 9;\n this.eventBus.dispatch(\"annotationlayerrendered\", {\n source: this,\n pageNumber: this.id,\n error: error\n });\n return _context.finish(9);\n\n case 12:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee, this, [[1, 6, 9, 12]]);\n }));\n\n function _renderAnnotationLayer() {\n return _renderAnnotationLayer2.apply(this, arguments);\n }\n\n return _renderAnnotationLayer;\n }()\n }, {\n key: \"_renderXfaLayer\",\n value: function () {\n var _renderXfaLayer2 = _asyncToGenerator( /*#__PURE__*/_regenerator[\"default\"].mark(function _callee2() {\n var error, result;\n return _regenerator[\"default\"].wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n error = null;\n _context2.prev = 1;\n _context2.next = 4;\n return this.xfaLayer.render(this.viewport, \"display\");\n\n case 4:\n result = _context2.sent;\n\n if (this.textHighlighter) {\n this._buildXfaTextContentItems(result.textDivs);\n }\n\n _context2.next = 11;\n break;\n\n case 8:\n _context2.prev = 8;\n _context2.t0 = _context2[\"catch\"](1);\n error = _context2.t0;\n\n case 11:\n _context2.prev = 11;\n this.eventBus.dispatch(\"xfalayerrendered\", {\n source: this,\n pageNumber: this.id,\n error: error\n });\n return _context2.finish(11);\n\n case 14:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2, this, [[1, 8, 11, 14]]);\n }));\n\n function _renderXfaLayer() {\n return _renderXfaLayer2.apply(this, arguments);\n }\n\n return _renderXfaLayer;\n }()\n }, {\n key: \"_buildXfaTextContentItems\",\n value: function () {\n var _buildXfaTextContentItems2 = _asyncToGenerator( /*#__PURE__*/_regenerator[\"default\"].mark(function _callee3(textDivs) {\n var text, items, _iterator, _step, item;\n\n return _regenerator[\"default\"].wrap(function _callee3$(_context3) {\n while (1) {\n switch (_context3.prev = _context3.next) {\n case 0:\n _context3.next = 2;\n return this.pdfPage.getTextContent();\n\n case 2:\n text = _context3.sent;\n items = [];\n _iterator = _createForOfIteratorHelper(text.items);\n\n try {\n for (_iterator.s(); !(_step = _iterator.n()).done;) {\n item = _step.value;\n items.push(item.str);\n }\n } catch (err) {\n _iterator.e(err);\n } finally {\n _iterator.f();\n }\n\n this.textHighlighter.setTextMapping(textDivs, items);\n this.textHighlighter.enable();\n\n case 8:\n case \"end\":\n return _context3.stop();\n }\n }\n }, _callee3, this);\n }));\n\n function _buildXfaTextContentItems(_x) {\n return _buildXfaTextContentItems2.apply(this, arguments);\n }\n\n return _buildXfaTextContentItems;\n }()\n }, {\n key: \"_resetZoomLayer\",\n value: function _resetZoomLayer() {\n var removeFromDOM = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;\n\n if (!this.zoomLayer) {\n return;\n }\n\n var zoomLayerCanvas = this.zoomLayer.firstChild;\n this.paintedViewportMap[\"delete\"](zoomLayerCanvas);\n zoomLayerCanvas.width = 0;\n zoomLayerCanvas.height = 0;\n\n if (removeFromDOM) {\n this.zoomLayer.remove();\n }\n\n this.zoomLayer = null;\n }\n }, {\n key: \"reset\",\n value: function reset() {\n var _this$annotationLayer,\n _this$xfaLayer,\n _this = this;\n\n var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},\n _ref$keepZoomLayer = _ref.keepZoomLayer,\n keepZoomLayer = _ref$keepZoomLayer === void 0 ? false : _ref$keepZoomLayer,\n _ref$keepAnnotationLa = _ref.keepAnnotationLayer,\n keepAnnotationLayer = _ref$keepAnnotationLa === void 0 ? false : _ref$keepAnnotationLa,\n _ref$keepXfaLayer = _ref.keepXfaLayer,\n keepXfaLayer = _ref$keepXfaLayer === void 0 ? false : _ref$keepXfaLayer;\n\n this.cancelRendering({\n keepAnnotationLayer: keepAnnotationLayer,\n keepXfaLayer: keepXfaLayer\n });\n this.renderingState = _pdf_rendering_queue.RenderingStates.INITIAL;\n var div = this.div;\n div.style.width = Math.floor(this.viewport.width) + \"px\";\n div.style.height = Math.floor(this.viewport.height) + \"px\";\n var childNodes = div.childNodes,\n zoomLayerNode = keepZoomLayer && this.zoomLayer || null,\n annotationLayerNode = keepAnnotationLayer && ((_this$annotationLayer = this.annotationLayer) === null || _this$annotationLayer === void 0 ? void 0 : _this$annotationLayer.div) || null,\n xfaLayerNode = keepXfaLayer && ((_this$xfaLayer = this.xfaLayer) === null || _this$xfaLayer === void 0 ? void 0 : _this$xfaLayer.div) || null;\n\n for (var i = childNodes.length - 1; i >= 0; i--) {\n var node = childNodes[i];\n\n switch (node) {\n case zoomLayerNode:\n case annotationLayerNode:\n case xfaLayerNode:\n continue;\n }\n\n div.removeChild(node);\n }\n\n div.removeAttribute(\"data-loaded\");\n\n if (annotationLayerNode) {\n this.annotationLayer.hide();\n }\n\n if (xfaLayerNode) {\n this.xfaLayer.hide();\n }\n\n if (!zoomLayerNode) {\n if (this.canvas) {\n this.paintedViewportMap[\"delete\"](this.canvas);\n this.canvas.width = 0;\n this.canvas.height = 0;\n delete this.canvas;\n }\n\n this._resetZoomLayer();\n }\n\n if (this.svg) {\n this.paintedViewportMap[\"delete\"](this.svg);\n delete this.svg;\n }\n\n this.loadingIconDiv = document.createElement(\"div\");\n this.loadingIconDiv.className = \"loadingIcon\";\n this.loadingIconDiv.setAttribute(\"role\", \"img\");\n this.l10n.get(\"loading\").then(function (msg) {\n var _this$loadingIconDiv;\n\n (_this$loadingIconDiv = _this.loadingIconDiv) === null || _this$loadingIconDiv === void 0 ? void 0 : _this$loadingIconDiv.setAttribute(\"aria-label\", msg);\n });\n div.appendChild(this.loadingIconDiv);\n }\n }, {\n key: \"update\",\n value: function update(_ref2) {\n var _ref2$scale = _ref2.scale,\n scale = _ref2$scale === void 0 ? 0 : _ref2$scale,\n _ref2$rotation = _ref2.rotation,\n rotation = _ref2$rotation === void 0 ? null : _ref2$rotation,\n _ref2$optionalContent = _ref2.optionalContentConfigPromise,\n optionalContentConfigPromise = _ref2$optionalContent === void 0 ? null : _ref2$optionalContent;\n\n if (_typeof(arguments[0]) !== \"object\") {\n console.error(\"PDFPageView.update called with separate parameters, please use an object instead.\");\n this.update({\n scale: arguments[0],\n rotation: arguments[1],\n optionalContentConfigPromise: arguments[2]\n });\n return;\n }\n\n this.scale = scale || this.scale;\n\n if (typeof rotation === \"number\") {\n this.rotation = rotation;\n }\n\n if (optionalContentConfigPromise instanceof Promise) {\n this._optionalContentConfigPromise = optionalContentConfigPromise;\n }\n\n if (this._isStandalone) {\n var doc = document.documentElement;\n doc.style.setProperty(\"--zoom-factor\", this.scale);\n }\n\n var totalRotation = (this.rotation + this.pdfPageRotate) % 360;\n this.viewport = this.viewport.clone({\n scale: this.scale * _pdfjsLib.PixelsPerInch.PDF_TO_CSS_UNITS,\n rotation: totalRotation\n });\n\n if (this.svg) {\n this.cssTransform({\n target: this.svg,\n redrawAnnotationLayer: true,\n redrawXfaLayer: true\n });\n this.eventBus.dispatch(\"pagerendered\", {\n source: this,\n pageNumber: this.id,\n cssTransform: true,\n timestamp: performance.now(),\n error: this._renderError\n });\n return;\n }\n\n var isScalingRestricted = false;\n\n if (this.canvas && this.maxCanvasPixels > 0) {\n var outputScale = this.outputScale;\n\n if ((Math.floor(this.viewport.width) * outputScale.sx | 0) * (Math.floor(this.viewport.height) * outputScale.sy | 0) > this.maxCanvasPixels) {\n isScalingRestricted = true;\n }\n }\n\n if (this.canvas) {\n if (this.useOnlyCssZoom || this.hasRestrictedScaling && isScalingRestricted) {\n this.cssTransform({\n target: this.canvas,\n redrawAnnotationLayer: true,\n redrawXfaLayer: true\n });\n this.eventBus.dispatch(\"pagerendered\", {\n source: this,\n pageNumber: this.id,\n cssTransform: true,\n timestamp: performance.now(),\n error: this._renderError\n });\n return;\n }\n\n if (!this.zoomLayer && !this.canvas.hidden) {\n this.zoomLayer = this.canvas.parentNode;\n this.zoomLayer.style.position = \"absolute\";\n }\n }\n\n if (this.zoomLayer) {\n this.cssTransform({\n target: this.zoomLayer.firstChild\n });\n }\n\n this.reset({\n keepZoomLayer: true,\n keepAnnotationLayer: true,\n keepXfaLayer: true\n });\n }\n }, {\n key: \"cancelRendering\",\n value: function cancelRendering() {\n var _ref3 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},\n _ref3$keepAnnotationL = _ref3.keepAnnotationLayer,\n keepAnnotationLayer = _ref3$keepAnnotationL === void 0 ? false : _ref3$keepAnnotationL,\n _ref3$keepXfaLayer = _ref3.keepXfaLayer,\n keepXfaLayer = _ref3$keepXfaLayer === void 0 ? false : _ref3$keepXfaLayer;\n\n if (this.paintTask) {\n this.paintTask.cancel();\n this.paintTask = null;\n }\n\n this.resume = null;\n\n if (this.textLayer) {\n this.textLayer.cancel();\n this.textLayer = null;\n }\n\n if (this.annotationLayer && (!keepAnnotationLayer || !this.annotationLayer.div)) {\n this.annotationLayer.cancel();\n this.annotationLayer = null;\n }\n\n if (this.xfaLayer && (!keepXfaLayer || !this.xfaLayer.div)) {\n var _this$textHighlighter;\n\n this.xfaLayer.cancel();\n this.xfaLayer = null;\n (_this$textHighlighter = this.textHighlighter) === null || _this$textHighlighter === void 0 ? void 0 : _this$textHighlighter.disable();\n }\n\n if (this._onTextLayerRendered) {\n this.eventBus._off(\"textlayerrendered\", this._onTextLayerRendered);\n\n this._onTextLayerRendered = null;\n }\n }\n }, {\n key: \"cssTransform\",\n value: function cssTransform(_ref4) {\n var target = _ref4.target,\n _ref4$redrawAnnotatio = _ref4.redrawAnnotationLayer,\n redrawAnnotationLayer = _ref4$redrawAnnotatio === void 0 ? false : _ref4$redrawAnnotatio,\n _ref4$redrawXfaLayer = _ref4.redrawXfaLayer,\n redrawXfaLayer = _ref4$redrawXfaLayer === void 0 ? false : _ref4$redrawXfaLayer;\n var width = this.viewport.width;\n var height = this.viewport.height;\n var div = this.div;\n target.style.width = target.parentNode.style.width = div.style.width = Math.floor(width) + \"px\";\n target.style.height = target.parentNode.style.height = div.style.height = Math.floor(height) + \"px\";\n var relativeRotation = this.viewport.rotation - this.paintedViewportMap.get(target).rotation;\n var absRotation = Math.abs(relativeRotation);\n var scaleX = 1,\n scaleY = 1;\n\n if (absRotation === 90 || absRotation === 270) {\n scaleX = height / width;\n scaleY = width / height;\n }\n\n target.style.transform = \"rotate(\".concat(relativeRotation, \"deg) scale(\").concat(scaleX, \", \").concat(scaleY, \")\");\n\n if (this.textLayer) {\n var textLayerViewport = this.textLayer.viewport;\n var textRelativeRotation = this.viewport.rotation - textLayerViewport.rotation;\n var textAbsRotation = Math.abs(textRelativeRotation);\n var scale = width / textLayerViewport.width;\n\n if (textAbsRotation === 90 || textAbsRotation === 270) {\n scale = width / textLayerViewport.height;\n }\n\n var textLayerDiv = this.textLayer.textLayerDiv;\n var transX, transY;\n\n switch (textAbsRotation) {\n case 0:\n transX = transY = 0;\n break;\n\n case 90:\n transX = 0;\n transY = \"-\" + textLayerDiv.style.height;\n break;\n\n case 180:\n transX = \"-\" + textLayerDiv.style.width;\n transY = \"-\" + textLayerDiv.style.height;\n break;\n\n case 270:\n transX = \"-\" + textLayerDiv.style.width;\n transY = 0;\n break;\n\n default:\n console.error(\"Bad rotation value.\");\n break;\n }\n\n textLayerDiv.style.transform = \"rotate(\".concat(textAbsRotation, \"deg) \") + \"scale(\".concat(scale, \") \") + \"translate(\".concat(transX, \", \").concat(transY, \")\");\n textLayerDiv.style.transformOrigin = \"0% 0%\";\n }\n\n if (redrawAnnotationLayer && this.annotationLayer) {\n this._renderAnnotationLayer();\n }\n\n if (redrawXfaLayer && this.xfaLayer) {\n this._renderXfaLayer();\n }\n }\n }, {\n key: \"width\",\n get: function get() {\n return this.viewport.width;\n }\n }, {\n key: \"height\",\n get: function get() {\n return this.viewport.height;\n }\n }, {\n key: \"getPagePoint\",\n value: function getPagePoint(x, y) {\n return this.viewport.convertToPdfPoint(x, y);\n }\n }, {\n key: \"draw\",\n value: function draw() {\n var _this$annotationLayer2,\n _this$xfaLayer2,\n _this2 = this;\n\n if (this.renderingState !== _pdf_rendering_queue.RenderingStates.INITIAL) {\n console.error(\"Must be in new state before drawing\");\n this.reset();\n }\n\n var div = this.div,\n pdfPage = this.pdfPage;\n\n if (!pdfPage) {\n this.renderingState = _pdf_rendering_queue.RenderingStates.FINISHED;\n\n if (this.loadingIconDiv) {\n div.removeChild(this.loadingIconDiv);\n delete this.loadingIconDiv;\n }\n\n return Promise.reject(new Error(\"pdfPage is not loaded\"));\n }\n\n this.renderingState = _pdf_rendering_queue.RenderingStates.RUNNING;\n var canvasWrapper = document.createElement(\"div\");\n canvasWrapper.style.width = div.style.width;\n canvasWrapper.style.height = div.style.height;\n canvasWrapper.classList.add(\"canvasWrapper\");\n\n if ((_this$annotationLayer2 = this.annotationLayer) !== null && _this$annotationLayer2 !== void 0 && _this$annotationLayer2.div) {\n div.insertBefore(canvasWrapper, this.annotationLayer.div);\n } else {\n div.appendChild(canvasWrapper);\n }\n\n var textLayer = null;\n\n if (this.textLayerMode !== _ui_utils.TextLayerMode.DISABLE && this.textLayerFactory) {\n var _this$annotationLayer3;\n\n var textLayerDiv = document.createElement(\"div\");\n textLayerDiv.className = \"textLayer\";\n textLayerDiv.style.width = canvasWrapper.style.width;\n textLayerDiv.style.height = canvasWrapper.style.height;\n\n if ((_this$annotationLayer3 = this.annotationLayer) !== null && _this$annotationLayer3 !== void 0 && _this$annotationLayer3.div) {\n div.insertBefore(textLayerDiv, this.annotationLayer.div);\n } else {\n div.appendChild(textLayerDiv);\n }\n\n textLayer = this.textLayerFactory.createTextLayerBuilder(textLayerDiv, this.id - 1, this.viewport, this.textLayerMode === _ui_utils.TextLayerMode.ENABLE_ENHANCE, this.eventBus, this.textHighlighter);\n }\n\n this.textLayer = textLayer;\n\n if ((_this$xfaLayer2 = this.xfaLayer) !== null && _this$xfaLayer2 !== void 0 && _this$xfaLayer2.div) {\n div.appendChild(this.xfaLayer.div);\n }\n\n var renderContinueCallback = null;\n\n if (this.renderingQueue) {\n renderContinueCallback = function renderContinueCallback(cont) {\n if (!_this2.renderingQueue.isHighestPriority(_this2)) {\n _this2.renderingState = _pdf_rendering_queue.RenderingStates.PAUSED;\n\n _this2.resume = function () {\n _this2.renderingState = _pdf_rendering_queue.RenderingStates.RUNNING;\n cont();\n };\n\n return;\n }\n\n cont();\n };\n }\n\n var finishPaintTask = /*#__PURE__*/function () {\n var _ref5 = _asyncToGenerator( /*#__PURE__*/_regenerator[\"default\"].mark(function _callee4() {\n var error,\n _args4 = arguments;\n return _regenerator[\"default\"].wrap(function _callee4$(_context4) {\n while (1) {\n switch (_context4.prev = _context4.next) {\n case 0:\n error = _args4.length > 0 && _args4[0] !== undefined ? _args4[0] : null;\n\n if (paintTask === _this2.paintTask) {\n _this2.paintTask = null;\n }\n\n if (!(error instanceof _pdfjsLib.RenderingCancelledException)) {\n _context4.next = 5;\n break;\n }\n\n _this2._renderError = null;\n return _context4.abrupt(\"return\");\n\n case 5:\n _this2._renderError = error;\n _this2.renderingState = _pdf_rendering_queue.RenderingStates.FINISHED;\n\n if (_this2.loadingIconDiv) {\n div.removeChild(_this2.loadingIconDiv);\n delete _this2.loadingIconDiv;\n }\n\n _this2._resetZoomLayer(true);\n\n _this2.eventBus.dispatch(\"pagerendered\", {\n source: _this2,\n pageNumber: _this2.id,\n cssTransform: false,\n timestamp: performance.now(),\n error: _this2._renderError\n });\n\n if (!error) {\n _context4.next = 12;\n break;\n }\n\n throw error;\n\n case 12:\n case \"end\":\n return _context4.stop();\n }\n }\n }, _callee4);\n }));\n\n return function finishPaintTask() {\n return _ref5.apply(this, arguments);\n };\n }();\n\n var paintTask = this.renderer === _ui_utils.RendererType.SVG ? this.paintOnSvg(canvasWrapper) : this.paintOnCanvas(canvasWrapper);\n paintTask.onRenderContinue = renderContinueCallback;\n this.paintTask = paintTask;\n var resultPromise = paintTask.promise.then(function () {\n return finishPaintTask(null).then(function () {\n if (textLayer) {\n var readableStream = pdfPage.streamTextContent({\n normalizeWhitespace: true,\n includeMarkedContent: true\n });\n textLayer.setTextContentStream(readableStream);\n textLayer.render();\n }\n });\n }, function (reason) {\n return finishPaintTask(reason);\n });\n\n if (this._annotationMode !== _pdfjsLib.AnnotationMode.DISABLE && this.annotationLayerFactory) {\n if (!this.annotationLayer) {\n this.annotationLayer = this.annotationLayerFactory.createAnnotationLayerBuilder(div, pdfPage, null, this.imageResourcesPath, this._annotationMode === _pdfjsLib.AnnotationMode.ENABLE_FORMS, this.l10n, null, null, null, null);\n }\n\n this._renderAnnotationLayer();\n }\n\n if (this.xfaLayerFactory) {\n if (!this.xfaLayer) {\n this.xfaLayer = this.xfaLayerFactory.createXfaLayerBuilder(div, pdfPage, null);\n }\n\n this._renderXfaLayer();\n }\n\n if (this.structTreeLayerFactory && this.textLayer && this.canvas) {\n this._onTextLayerRendered = function (event) {\n if (event.pageNumber !== _this2.id) {\n return;\n }\n\n _this2.eventBus._off(\"textlayerrendered\", _this2._onTextLayerRendered);\n\n _this2._onTextLayerRendered = null;\n\n if (!_this2.canvas) {\n return;\n }\n\n _this2.pdfPage.getStructTree().then(function (tree) {\n if (!tree) {\n return;\n }\n\n if (!_this2.canvas) {\n return;\n }\n\n var treeDom = _this2.structTreeLayer.render(tree);\n\n treeDom.classList.add(\"structTree\");\n\n _this2.canvas.appendChild(treeDom);\n });\n };\n\n this.eventBus._on(\"textlayerrendered\", this._onTextLayerRendered);\n\n this.structTreeLayer = this.structTreeLayerFactory.createStructTreeLayerBuilder(pdfPage);\n }\n\n div.setAttribute(\"data-loaded\", true);\n this.eventBus.dispatch(\"pagerender\", {\n source: this,\n pageNumber: this.id\n });\n return resultPromise;\n }\n }, {\n key: \"paintOnCanvas\",\n value: function paintOnCanvas(canvasWrapper) {\n var renderCapability = (0, _pdfjsLib.createPromiseCapability)();\n var result = {\n promise: renderCapability.promise,\n onRenderContinue: function onRenderContinue(cont) {\n cont();\n },\n cancel: function cancel() {\n renderTask.cancel();\n }\n };\n var viewport = this.viewport;\n var canvas = document.createElement(\"canvas\");\n canvas.hidden = true;\n var isCanvasHidden = true;\n\n var showCanvas = function showCanvas() {\n if (isCanvasHidden) {\n canvas.hidden = false;\n isCanvasHidden = false;\n }\n };\n\n canvasWrapper.appendChild(canvas);\n this.canvas = canvas;\n canvas.mozOpaque = true;\n var ctx = canvas.getContext(\"2d\", {\n alpha: false\n });\n var outputScale = (0, _ui_utils.getOutputScale)(ctx);\n this.outputScale = outputScale;\n\n if (this.useOnlyCssZoom) {\n var actualSizeViewport = viewport.clone({\n scale: _pdfjsLib.PixelsPerInch.PDF_TO_CSS_UNITS\n });\n outputScale.sx *= actualSizeViewport.width / viewport.width;\n outputScale.sy *= actualSizeViewport.height / viewport.height;\n outputScale.scaled = true;\n }\n\n if (this.maxCanvasPixels > 0) {\n var pixelsInViewport = viewport.width * viewport.height;\n var maxScale = Math.sqrt(this.maxCanvasPixels / pixelsInViewport);\n\n if (outputScale.sx > maxScale || outputScale.sy > maxScale) {\n outputScale.sx = maxScale;\n outputScale.sy = maxScale;\n outputScale.scaled = true;\n this.hasRestrictedScaling = true;\n } else {\n this.hasRestrictedScaling = false;\n }\n }\n\n var sfx = (0, _ui_utils.approximateFraction)(outputScale.sx);\n var sfy = (0, _ui_utils.approximateFraction)(outputScale.sy);\n canvas.width = (0, _ui_utils.roundToDivide)(viewport.width * outputScale.sx, sfx[0]);\n canvas.height = (0, _ui_utils.roundToDivide)(viewport.height * outputScale.sy, sfy[0]);\n canvas.style.width = (0, _ui_utils.roundToDivide)(viewport.width, sfx[1]) + \"px\";\n canvas.style.height = (0, _ui_utils.roundToDivide)(viewport.height, sfy[1]) + \"px\";\n this.paintedViewportMap.set(canvas, viewport);\n var transform = !outputScale.scaled ? null : [outputScale.sx, 0, 0, outputScale.sy, 0, 0];\n var renderContext = {\n canvasContext: ctx,\n transform: transform,\n viewport: this.viewport,\n annotationMode: this._annotationMode,\n optionalContentConfigPromise: this._optionalContentConfigPromise\n };\n var renderTask = this.pdfPage.render(renderContext);\n\n renderTask.onContinue = function (cont) {\n showCanvas();\n\n if (result.onRenderContinue) {\n result.onRenderContinue(cont);\n } else {\n cont();\n }\n };\n\n renderTask.promise.then(function () {\n showCanvas();\n renderCapability.resolve(undefined);\n }, function (error) {\n showCanvas();\n renderCapability.reject(error);\n });\n return result;\n }\n }, {\n key: \"paintOnSvg\",\n value: function paintOnSvg(wrapper) {\n var _this3 = this;\n\n var cancelled = false;\n\n var ensureNotCancelled = function ensureNotCancelled() {\n if (cancelled) {\n throw new _pdfjsLib.RenderingCancelledException(\"Rendering cancelled, page \".concat(_this3.id), \"svg\");\n }\n };\n\n var pdfPage = this.pdfPage;\n var actualSizeViewport = this.viewport.clone({\n scale: _pdfjsLib.PixelsPerInch.PDF_TO_CSS_UNITS\n });\n var promise = pdfPage.getOperatorList({\n annotationMode: this._annotationMode\n }).then(function (opList) {\n ensureNotCancelled();\n var svgGfx = new _pdfjsLib.SVGGraphics(pdfPage.commonObjs, pdfPage.objs, _app_options.compatibilityParams.disableCreateObjectURL);\n return svgGfx.getSVG(opList, actualSizeViewport).then(function (svg) {\n ensureNotCancelled();\n _this3.svg = svg;\n\n _this3.paintedViewportMap.set(svg, actualSizeViewport);\n\n svg.style.width = wrapper.style.width;\n svg.style.height = wrapper.style.height;\n _this3.renderingState = _pdf_rendering_queue.RenderingStates.FINISHED;\n wrapper.appendChild(svg);\n });\n });\n return {\n promise: promise,\n onRenderContinue: function onRenderContinue(cont) {\n cont();\n },\n cancel: function cancel() {\n cancelled = true;\n }\n };\n }\n }, {\n key: \"setPageLabel\",\n value: function setPageLabel(label) {\n this.pageLabel = typeof label === \"string\" ? label : null;\n\n if (this.pageLabel !== null) {\n this.div.setAttribute(\"data-page-label\", this.pageLabel);\n } else {\n this.div.removeAttribute(\"data-page-label\");\n }\n }\n }]);\n\n return PDFPageView;\n}();\n\nexports.PDFPageView = PDFPageView;\n\n/***/ }),\n/* 19 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.RenderingStates = exports.PDFRenderingQueue = void 0;\n\nvar _pdfjsLib = __w_pdfjs_require__(4);\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nvar CLEANUP_TIMEOUT = 30000;\nvar RenderingStates = {\n INITIAL: 0,\n RUNNING: 1,\n PAUSED: 2,\n FINISHED: 3\n};\nexports.RenderingStates = RenderingStates;\n\nvar PDFRenderingQueue = /*#__PURE__*/function () {\n function PDFRenderingQueue() {\n _classCallCheck(this, PDFRenderingQueue);\n\n this.pdfViewer = null;\n this.pdfThumbnailViewer = null;\n this.onIdle = null;\n this.highestPriorityPage = null;\n this.idleTimeout = null;\n this.printing = false;\n this.isThumbnailViewEnabled = false;\n }\n\n _createClass(PDFRenderingQueue, [{\n key: \"setViewer\",\n value: function setViewer(pdfViewer) {\n this.pdfViewer = pdfViewer;\n }\n }, {\n key: \"setThumbnailViewer\",\n value: function setThumbnailViewer(pdfThumbnailViewer) {\n this.pdfThumbnailViewer = pdfThumbnailViewer;\n }\n }, {\n key: \"isHighestPriority\",\n value: function isHighestPriority(view) {\n return this.highestPriorityPage === view.renderingId;\n }\n }, {\n key: \"hasViewer\",\n value: function hasViewer() {\n return !!this.pdfViewer;\n }\n }, {\n key: \"renderHighestPriority\",\n value: function renderHighestPriority(currentlyVisiblePages) {\n if (this.idleTimeout) {\n clearTimeout(this.idleTimeout);\n this.idleTimeout = null;\n }\n\n if (this.pdfViewer.forceRendering(currentlyVisiblePages)) {\n return;\n }\n\n if (this.pdfThumbnailViewer && this.isThumbnailViewEnabled) {\n if (this.pdfThumbnailViewer.forceRendering()) {\n return;\n }\n }\n\n if (this.printing) {\n return;\n }\n\n if (this.onIdle) {\n this.idleTimeout = setTimeout(this.onIdle.bind(this), CLEANUP_TIMEOUT);\n }\n }\n }, {\n key: \"getHighestPriority\",\n value: function getHighestPriority(visible, views, scrolledDown) {\n var preRenderExtra = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false;\n var visibleViews = visible.views;\n var numVisible = visibleViews.length;\n\n if (numVisible === 0) {\n return null;\n }\n\n for (var i = 0; i < numVisible; ++i) {\n var view = visibleViews[i].view;\n\n if (!this.isViewFinished(view)) {\n return view;\n }\n }\n\n var preRenderIndex = scrolledDown ? visible.last.id : visible.first.id - 2;\n var preRenderView = views[preRenderIndex];\n\n if (preRenderView && !this.isViewFinished(preRenderView)) {\n return preRenderView;\n }\n\n if (preRenderExtra) {\n preRenderIndex += scrolledDown ? 1 : -1;\n preRenderView = views[preRenderIndex];\n\n if (preRenderView && !this.isViewFinished(preRenderView)) {\n return preRenderView;\n }\n }\n\n return null;\n }\n }, {\n key: \"isViewFinished\",\n value: function isViewFinished(view) {\n return view.renderingState === RenderingStates.FINISHED;\n }\n }, {\n key: \"renderView\",\n value: function renderView(view) {\n var _this = this;\n\n switch (view.renderingState) {\n case RenderingStates.FINISHED:\n return false;\n\n case RenderingStates.PAUSED:\n this.highestPriorityPage = view.renderingId;\n view.resume();\n break;\n\n case RenderingStates.RUNNING:\n this.highestPriorityPage = view.renderingId;\n break;\n\n case RenderingStates.INITIAL:\n this.highestPriorityPage = view.renderingId;\n view.draw()[\"finally\"](function () {\n _this.renderHighestPriority();\n })[\"catch\"](function (reason) {\n if (reason instanceof _pdfjsLib.RenderingCancelledException) {\n return;\n }\n\n console.error(\"renderView: \\\"\".concat(reason, \"\\\"\"));\n });\n break;\n }\n\n return true;\n }\n }]);\n\n return PDFRenderingQueue;\n}();\n\nexports.PDFRenderingQueue = PDFRenderingQueue;\n\n/***/ }),\n/* 20 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.PDFScriptingManager = void 0;\n\nvar _regenerator = _interopRequireDefault(__w_pdfjs_require__(2));\n\nvar _pdfjsLib = __w_pdfjs_require__(4);\n\nvar _ui_utils = __w_pdfjs_require__(7);\n\nvar _pdf_rendering_queue = __w_pdfjs_require__(19);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }\n\nfunction _nonIterableSpread() { throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\nfunction _iterableToArray(iter) { if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter); }\n\nfunction _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nfunction _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e2) { throw _e2; }, f: F }; } throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e3) { didErr = true; err = _e3; }, f: function f() { try { if (!normalCompletion && it[\"return\"] != null) it[\"return\"](); } finally { if (didErr) throw err; } } }; }\n\nfunction _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }\n\nfunction _nonIterableRest() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\nfunction _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== \"undefined\" && arr[Symbol.iterator] || arr[\"@@iterator\"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"] != null) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; }\n\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\n\nfunction asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }\n\nfunction _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err); } _next(undefined); }); }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nvar PDFScriptingManager = /*#__PURE__*/function () {\n function PDFScriptingManager(_ref) {\n var _this = this;\n\n var eventBus = _ref.eventBus,\n _ref$sandboxBundleSrc = _ref.sandboxBundleSrc,\n sandboxBundleSrc = _ref$sandboxBundleSrc === void 0 ? null : _ref$sandboxBundleSrc,\n _ref$scriptingFactory = _ref.scriptingFactory,\n scriptingFactory = _ref$scriptingFactory === void 0 ? null : _ref$scriptingFactory,\n _ref$docPropertiesLoo = _ref.docPropertiesLookup,\n docPropertiesLookup = _ref$docPropertiesLoo === void 0 ? null : _ref$docPropertiesLoo;\n\n _classCallCheck(this, PDFScriptingManager);\n\n this._pdfDocument = null;\n this._pdfViewer = null;\n this._closeCapability = null;\n this._destroyCapability = null;\n this._scripting = null;\n this._mouseState = Object.create(null);\n this._ready = false;\n this._eventBus = eventBus;\n this._sandboxBundleSrc = sandboxBundleSrc;\n this._scriptingFactory = scriptingFactory;\n this._docPropertiesLookup = docPropertiesLookup;\n\n if (!this._scriptingFactory) {\n window.addEventListener(\"updatefromsandbox\", function (event) {\n _this._eventBus.dispatch(\"updatefromsandbox\", {\n source: window,\n detail: event.detail\n });\n });\n }\n }\n\n _createClass(PDFScriptingManager, [{\n key: \"setViewer\",\n value: function setViewer(pdfViewer) {\n this._pdfViewer = pdfViewer;\n }\n }, {\n key: \"setDocument\",\n value: function () {\n var _setDocument = _asyncToGenerator( /*#__PURE__*/_regenerator[\"default\"].mark(function _callee2(pdfDocument) {\n var _this2 = this,\n _this$_scripting;\n\n var _yield$Promise$all, _yield$Promise$all2, objects, calculationOrder, docActions, _iterator, _step, _step$value, name, listener, _iterator2, _step2, _step2$value, _name, _listener, docProperties;\n\n return _regenerator[\"default\"].wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n if (!this._pdfDocument) {\n _context2.next = 3;\n break;\n }\n\n _context2.next = 3;\n return this._destroyScripting();\n\n case 3:\n this._pdfDocument = pdfDocument;\n\n if (pdfDocument) {\n _context2.next = 6;\n break;\n }\n\n return _context2.abrupt(\"return\");\n\n case 6:\n _context2.next = 8;\n return Promise.all([pdfDocument.getFieldObjects(), pdfDocument.getCalculationOrderIds(), pdfDocument.getJSActions()]);\n\n case 8:\n _yield$Promise$all = _context2.sent;\n _yield$Promise$all2 = _slicedToArray(_yield$Promise$all, 3);\n objects = _yield$Promise$all2[0];\n calculationOrder = _yield$Promise$all2[1];\n docActions = _yield$Promise$all2[2];\n\n if (!(!objects && !docActions)) {\n _context2.next = 17;\n break;\n }\n\n _context2.next = 16;\n return this._destroyScripting();\n\n case 16:\n return _context2.abrupt(\"return\");\n\n case 17:\n if (!(pdfDocument !== this._pdfDocument)) {\n _context2.next = 19;\n break;\n }\n\n return _context2.abrupt(\"return\");\n\n case 19:\n _context2.prev = 19;\n this._scripting = this._createScripting();\n _context2.next = 29;\n break;\n\n case 23:\n _context2.prev = 23;\n _context2.t0 = _context2[\"catch\"](19);\n console.error(\"PDFScriptingManager.setDocument: \\\"\".concat(_context2.t0 === null || _context2.t0 === void 0 ? void 0 : _context2.t0.message, \"\\\".\"));\n _context2.next = 28;\n return this._destroyScripting();\n\n case 28:\n return _context2.abrupt(\"return\");\n\n case 29:\n this._internalEvents.set(\"updatefromsandbox\", function (event) {\n if ((event === null || event === void 0 ? void 0 : event.source) !== window) {\n return;\n }\n\n _this2._updateFromSandbox(event.detail);\n });\n\n this._internalEvents.set(\"dispatcheventinsandbox\", function (event) {\n var _this2$_scripting;\n\n (_this2$_scripting = _this2._scripting) === null || _this2$_scripting === void 0 ? void 0 : _this2$_scripting.dispatchEventInSandbox(event.detail);\n });\n\n this._internalEvents.set(\"pagechanging\", function (_ref2) {\n var pageNumber = _ref2.pageNumber,\n previous = _ref2.previous;\n\n if (pageNumber === previous) {\n return;\n }\n\n _this2._dispatchPageClose(previous);\n\n _this2._dispatchPageOpen(pageNumber);\n });\n\n this._internalEvents.set(\"pagerendered\", function (_ref3) {\n var pageNumber = _ref3.pageNumber;\n\n if (!_this2._pageOpenPending.has(pageNumber)) {\n return;\n }\n\n if (pageNumber !== _this2._pdfViewer.currentPageNumber) {\n return;\n }\n\n _this2._dispatchPageOpen(pageNumber);\n });\n\n this._internalEvents.set(\"pagesdestroy\", /*#__PURE__*/function () {\n var _ref4 = _asyncToGenerator( /*#__PURE__*/_regenerator[\"default\"].mark(function _callee(event) {\n var _this2$_scripting2, _this2$_closeCapabili;\n\n return _regenerator[\"default\"].wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n _context.next = 2;\n return _this2._dispatchPageClose(_this2._pdfViewer.currentPageNumber);\n\n case 2:\n _context.next = 4;\n return (_this2$_scripting2 = _this2._scripting) === null || _this2$_scripting2 === void 0 ? void 0 : _this2$_scripting2.dispatchEventInSandbox({\n id: \"doc\",\n name: \"WillClose\"\n });\n\n case 4:\n (_this2$_closeCapabili = _this2._closeCapability) === null || _this2$_closeCapabili === void 0 ? void 0 : _this2$_closeCapabili.resolve();\n\n case 5:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }));\n\n return function (_x2) {\n return _ref4.apply(this, arguments);\n };\n }());\n\n this._domEvents.set(\"mousedown\", function (event) {\n _this2._mouseState.isDown = true;\n });\n\n this._domEvents.set(\"mouseup\", function (event) {\n _this2._mouseState.isDown = false;\n });\n\n _iterator = _createForOfIteratorHelper(this._internalEvents);\n\n try {\n for (_iterator.s(); !(_step = _iterator.n()).done;) {\n _step$value = _slicedToArray(_step.value, 2), name = _step$value[0], listener = _step$value[1];\n\n this._eventBus._on(name, listener);\n }\n } catch (err) {\n _iterator.e(err);\n } finally {\n _iterator.f();\n }\n\n _iterator2 = _createForOfIteratorHelper(this._domEvents);\n\n try {\n for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {\n _step2$value = _slicedToArray(_step2.value, 2), _name = _step2$value[0], _listener = _step2$value[1];\n window.addEventListener(_name, _listener);\n }\n } catch (err) {\n _iterator2.e(err);\n } finally {\n _iterator2.f();\n }\n\n _context2.prev = 40;\n _context2.next = 43;\n return this._getDocProperties();\n\n case 43:\n docProperties = _context2.sent;\n\n if (!(pdfDocument !== this._pdfDocument)) {\n _context2.next = 46;\n break;\n }\n\n return _context2.abrupt(\"return\");\n\n case 46:\n _context2.next = 48;\n return this._scripting.createSandbox({\n objects: objects,\n calculationOrder: calculationOrder,\n appInfo: {\n platform: navigator.platform,\n language: navigator.language\n },\n docInfo: _objectSpread(_objectSpread({}, docProperties), {}, {\n actions: docActions\n })\n });\n\n case 48:\n this._eventBus.dispatch(\"sandboxcreated\", {\n source: this\n });\n\n _context2.next = 57;\n break;\n\n case 51:\n _context2.prev = 51;\n _context2.t1 = _context2[\"catch\"](40);\n console.error(\"PDFScriptingManager.setDocument: \\\"\".concat(_context2.t1 === null || _context2.t1 === void 0 ? void 0 : _context2.t1.message, \"\\\".\"));\n _context2.next = 56;\n return this._destroyScripting();\n\n case 56:\n return _context2.abrupt(\"return\");\n\n case 57:\n _context2.next = 59;\n return (_this$_scripting = this._scripting) === null || _this$_scripting === void 0 ? void 0 : _this$_scripting.dispatchEventInSandbox({\n id: \"doc\",\n name: \"Open\"\n });\n\n case 59:\n _context2.next = 61;\n return this._dispatchPageOpen(this._pdfViewer.currentPageNumber, true);\n\n case 61:\n Promise.resolve().then(function () {\n if (pdfDocument === _this2._pdfDocument) {\n _this2._ready = true;\n }\n });\n\n case 62:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2, this, [[19, 23], [40, 51]]);\n }));\n\n function setDocument(_x) {\n return _setDocument.apply(this, arguments);\n }\n\n return setDocument;\n }()\n }, {\n key: \"dispatchWillSave\",\n value: function () {\n var _dispatchWillSave = _asyncToGenerator( /*#__PURE__*/_regenerator[\"default\"].mark(function _callee3(detail) {\n var _this$_scripting2;\n\n return _regenerator[\"default\"].wrap(function _callee3$(_context3) {\n while (1) {\n switch (_context3.prev = _context3.next) {\n case 0:\n return _context3.abrupt(\"return\", (_this$_scripting2 = this._scripting) === null || _this$_scripting2 === void 0 ? void 0 : _this$_scripting2.dispatchEventInSandbox({\n id: \"doc\",\n name: \"WillSave\"\n }));\n\n case 1:\n case \"end\":\n return _context3.stop();\n }\n }\n }, _callee3, this);\n }));\n\n function dispatchWillSave(_x3) {\n return _dispatchWillSave.apply(this, arguments);\n }\n\n return dispatchWillSave;\n }()\n }, {\n key: \"dispatchDidSave\",\n value: function () {\n var _dispatchDidSave = _asyncToGenerator( /*#__PURE__*/_regenerator[\"default\"].mark(function _callee4(detail) {\n var _this$_scripting3;\n\n return _regenerator[\"default\"].wrap(function _callee4$(_context4) {\n while (1) {\n switch (_context4.prev = _context4.next) {\n case 0:\n return _context4.abrupt(\"return\", (_this$_scripting3 = this._scripting) === null || _this$_scripting3 === void 0 ? void 0 : _this$_scripting3.dispatchEventInSandbox({\n id: \"doc\",\n name: \"DidSave\"\n }));\n\n case 1:\n case \"end\":\n return _context4.stop();\n }\n }\n }, _callee4, this);\n }));\n\n function dispatchDidSave(_x4) {\n return _dispatchDidSave.apply(this, arguments);\n }\n\n return dispatchDidSave;\n }()\n }, {\n key: \"dispatchWillPrint\",\n value: function () {\n var _dispatchWillPrint = _asyncToGenerator( /*#__PURE__*/_regenerator[\"default\"].mark(function _callee5(detail) {\n var _this$_scripting4;\n\n return _regenerator[\"default\"].wrap(function _callee5$(_context5) {\n while (1) {\n switch (_context5.prev = _context5.next) {\n case 0:\n return _context5.abrupt(\"return\", (_this$_scripting4 = this._scripting) === null || _this$_scripting4 === void 0 ? void 0 : _this$_scripting4.dispatchEventInSandbox({\n id: \"doc\",\n name: \"WillPrint\"\n }));\n\n case 1:\n case \"end\":\n return _context5.stop();\n }\n }\n }, _callee5, this);\n }));\n\n function dispatchWillPrint(_x5) {\n return _dispatchWillPrint.apply(this, arguments);\n }\n\n return dispatchWillPrint;\n }()\n }, {\n key: \"dispatchDidPrint\",\n value: function () {\n var _dispatchDidPrint = _asyncToGenerator( /*#__PURE__*/_regenerator[\"default\"].mark(function _callee6(detail) {\n var _this$_scripting5;\n\n return _regenerator[\"default\"].wrap(function _callee6$(_context6) {\n while (1) {\n switch (_context6.prev = _context6.next) {\n case 0:\n return _context6.abrupt(\"return\", (_this$_scripting5 = this._scripting) === null || _this$_scripting5 === void 0 ? void 0 : _this$_scripting5.dispatchEventInSandbox({\n id: \"doc\",\n name: \"DidPrint\"\n }));\n\n case 1:\n case \"end\":\n return _context6.stop();\n }\n }\n }, _callee6, this);\n }));\n\n function dispatchDidPrint(_x6) {\n return _dispatchDidPrint.apply(this, arguments);\n }\n\n return dispatchDidPrint;\n }()\n }, {\n key: \"mouseState\",\n get: function get() {\n return this._mouseState;\n }\n }, {\n key: \"destroyPromise\",\n get: function get() {\n var _this$_destroyCapabil;\n\n return ((_this$_destroyCapabil = this._destroyCapability) === null || _this$_destroyCapabil === void 0 ? void 0 : _this$_destroyCapabil.promise) || null;\n }\n }, {\n key: \"ready\",\n get: function get() {\n return this._ready;\n }\n }, {\n key: \"_internalEvents\",\n get: function get() {\n return (0, _pdfjsLib.shadow)(this, \"_internalEvents\", new Map());\n }\n }, {\n key: \"_domEvents\",\n get: function get() {\n return (0, _pdfjsLib.shadow)(this, \"_domEvents\", new Map());\n }\n }, {\n key: \"_pageOpenPending\",\n get: function get() {\n return (0, _pdfjsLib.shadow)(this, \"_pageOpenPending\", new Set());\n }\n }, {\n key: \"_visitedPages\",\n get: function get() {\n return (0, _pdfjsLib.shadow)(this, \"_visitedPages\", new Map());\n }\n }, {\n key: \"_updateFromSandbox\",\n value: function () {\n var _updateFromSandbox2 = _asyncToGenerator( /*#__PURE__*/_regenerator[\"default\"].mark(function _callee7(detail) {\n var isInPresentationMode, id, siblings, command, value, ids, _iterator3, _step3, elementId, element, _this$_pdfDocument;\n\n return _regenerator[\"default\"].wrap(function _callee7$(_context7) {\n while (1) {\n switch (_context7.prev = _context7.next) {\n case 0:\n isInPresentationMode = this._pdfViewer.isInPresentationMode || this._pdfViewer.isChangingPresentationMode;\n id = detail.id, siblings = detail.siblings, command = detail.command, value = detail.value;\n\n if (id) {\n _context7.next = 43;\n break;\n }\n\n _context7.t0 = command;\n _context7.next = _context7.t0 === \"clear\" ? 6 : _context7.t0 === \"error\" ? 8 : _context7.t0 === \"layout\" ? 10 : _context7.t0 === \"page-num\" ? 12 : _context7.t0 === \"print\" ? 14 : _context7.t0 === \"println\" ? 18 : _context7.t0 === \"zoom\" ? 20 : _context7.t0 === \"SaveAs\" ? 24 : _context7.t0 === \"FirstPage\" ? 26 : _context7.t0 === \"LastPage\" ? 28 : _context7.t0 === \"NextPage\" ? 30 : _context7.t0 === \"PrevPage\" ? 32 : _context7.t0 === \"ZoomViewIn\" ? 34 : _context7.t0 === \"ZoomViewOut\" ? 38 : 42;\n break;\n\n case 6:\n console.clear();\n return _context7.abrupt(\"break\", 42);\n\n case 8:\n console.error(value);\n return _context7.abrupt(\"break\", 42);\n\n case 10:\n this._pdfViewer.spreadMode = (0, _ui_utils.apiPageLayoutToSpreadMode)(value);\n return _context7.abrupt(\"break\", 42);\n\n case 12:\n this._pdfViewer.currentPageNumber = value + 1;\n return _context7.abrupt(\"break\", 42);\n\n case 14:\n _context7.next = 16;\n return this._pdfViewer.pagesPromise;\n\n case 16:\n this._eventBus.dispatch(\"print\", {\n source: this\n });\n\n return _context7.abrupt(\"break\", 42);\n\n case 18:\n console.log(value);\n return _context7.abrupt(\"break\", 42);\n\n case 20:\n if (!isInPresentationMode) {\n _context7.next = 22;\n break;\n }\n\n return _context7.abrupt(\"return\");\n\n case 22:\n this._pdfViewer.currentScaleValue = value;\n return _context7.abrupt(\"break\", 42);\n\n case 24:\n this._eventBus.dispatch(\"save\", {\n source: this\n });\n\n return _context7.abrupt(\"break\", 42);\n\n case 26:\n this._pdfViewer.currentPageNumber = 1;\n return _context7.abrupt(\"break\", 42);\n\n case 28:\n this._pdfViewer.currentPageNumber = this._pdfViewer.pagesCount;\n return _context7.abrupt(\"break\", 42);\n\n case 30:\n this._pdfViewer.nextPage();\n\n return _context7.abrupt(\"break\", 42);\n\n case 32:\n this._pdfViewer.previousPage();\n\n return _context7.abrupt(\"break\", 42);\n\n case 34:\n if (!isInPresentationMode) {\n _context7.next = 36;\n break;\n }\n\n return _context7.abrupt(\"return\");\n\n case 36:\n this._pdfViewer.increaseScale();\n\n return _context7.abrupt(\"break\", 42);\n\n case 38:\n if (!isInPresentationMode) {\n _context7.next = 40;\n break;\n }\n\n return _context7.abrupt(\"return\");\n\n case 40:\n this._pdfViewer.decreaseScale();\n\n return _context7.abrupt(\"break\", 42);\n\n case 42:\n return _context7.abrupt(\"return\");\n\n case 43:\n if (!isInPresentationMode) {\n _context7.next = 46;\n break;\n }\n\n if (!detail.focus) {\n _context7.next = 46;\n break;\n }\n\n return _context7.abrupt(\"return\");\n\n case 46:\n delete detail.id;\n delete detail.siblings;\n ids = siblings ? [id].concat(_toConsumableArray(siblings)) : [id];\n _iterator3 = _createForOfIteratorHelper(ids);\n\n try {\n for (_iterator3.s(); !(_step3 = _iterator3.n()).done;) {\n elementId = _step3.value;\n element = document.getElementById(elementId);\n\n if (element) {\n element.dispatchEvent(new CustomEvent(\"updatefromsandbox\", {\n detail: detail\n }));\n } else {\n (_this$_pdfDocument = this._pdfDocument) === null || _this$_pdfDocument === void 0 ? void 0 : _this$_pdfDocument.annotationStorage.setValue(elementId, detail);\n }\n }\n } catch (err) {\n _iterator3.e(err);\n } finally {\n _iterator3.f();\n }\n\n case 51:\n case \"end\":\n return _context7.stop();\n }\n }\n }, _callee7, this);\n }));\n\n function _updateFromSandbox(_x7) {\n return _updateFromSandbox2.apply(this, arguments);\n }\n\n return _updateFromSandbox;\n }()\n }, {\n key: \"_dispatchPageOpen\",\n value: function () {\n var _dispatchPageOpen2 = _asyncToGenerator( /*#__PURE__*/_regenerator[\"default\"].mark(function _callee9(pageNumber) {\n var _this3 = this;\n\n var initialize,\n pdfDocument,\n visitedPages,\n pageView,\n actionsPromise,\n _args9 = arguments;\n return _regenerator[\"default\"].wrap(function _callee9$(_context9) {\n while (1) {\n switch (_context9.prev = _context9.next) {\n case 0:\n initialize = _args9.length > 1 && _args9[1] !== undefined ? _args9[1] : false;\n pdfDocument = this._pdfDocument, visitedPages = this._visitedPages;\n\n if (initialize) {\n this._closeCapability = (0, _pdfjsLib.createPromiseCapability)();\n }\n\n if (this._closeCapability) {\n _context9.next = 5;\n break;\n }\n\n return _context9.abrupt(\"return\");\n\n case 5:\n pageView = this._pdfViewer.getPageView(pageNumber - 1);\n\n if (!((pageView === null || pageView === void 0 ? void 0 : pageView.renderingState) !== _pdf_rendering_queue.RenderingStates.FINISHED)) {\n _context9.next = 9;\n break;\n }\n\n this._pageOpenPending.add(pageNumber);\n\n return _context9.abrupt(\"return\");\n\n case 9:\n this._pageOpenPending[\"delete\"](pageNumber);\n\n actionsPromise = _asyncToGenerator( /*#__PURE__*/_regenerator[\"default\"].mark(function _callee8() {\n var _pageView$pdfPage, _this3$_scripting;\n\n var actions;\n return _regenerator[\"default\"].wrap(function _callee8$(_context8) {\n while (1) {\n switch (_context8.prev = _context8.next) {\n case 0:\n _context8.next = 2;\n return !visitedPages.has(pageNumber) ? (_pageView$pdfPage = pageView.pdfPage) === null || _pageView$pdfPage === void 0 ? void 0 : _pageView$pdfPage.getJSActions() : null;\n\n case 2:\n actions = _context8.sent;\n\n if (!(pdfDocument !== _this3._pdfDocument)) {\n _context8.next = 5;\n break;\n }\n\n return _context8.abrupt(\"return\");\n\n case 5:\n _context8.next = 7;\n return (_this3$_scripting = _this3._scripting) === null || _this3$_scripting === void 0 ? void 0 : _this3$_scripting.dispatchEventInSandbox({\n id: \"page\",\n name: \"PageOpen\",\n pageNumber: pageNumber,\n actions: actions\n });\n\n case 7:\n case \"end\":\n return _context8.stop();\n }\n }\n }, _callee8);\n }))();\n visitedPages.set(pageNumber, actionsPromise);\n\n case 12:\n case \"end\":\n return _context9.stop();\n }\n }\n }, _callee9, this);\n }));\n\n function _dispatchPageOpen(_x8) {\n return _dispatchPageOpen2.apply(this, arguments);\n }\n\n return _dispatchPageOpen;\n }()\n }, {\n key: \"_dispatchPageClose\",\n value: function () {\n var _dispatchPageClose2 = _asyncToGenerator( /*#__PURE__*/_regenerator[\"default\"].mark(function _callee10(pageNumber) {\n var _this$_scripting6;\n\n var pdfDocument, visitedPages, actionsPromise;\n return _regenerator[\"default\"].wrap(function _callee10$(_context10) {\n while (1) {\n switch (_context10.prev = _context10.next) {\n case 0:\n pdfDocument = this._pdfDocument, visitedPages = this._visitedPages;\n\n if (this._closeCapability) {\n _context10.next = 3;\n break;\n }\n\n return _context10.abrupt(\"return\");\n\n case 3:\n if (!this._pageOpenPending.has(pageNumber)) {\n _context10.next = 5;\n break;\n }\n\n return _context10.abrupt(\"return\");\n\n case 5:\n actionsPromise = visitedPages.get(pageNumber);\n\n if (actionsPromise) {\n _context10.next = 8;\n break;\n }\n\n return _context10.abrupt(\"return\");\n\n case 8:\n visitedPages.set(pageNumber, null);\n _context10.next = 11;\n return actionsPromise;\n\n case 11:\n if (!(pdfDocument !== this._pdfDocument)) {\n _context10.next = 13;\n break;\n }\n\n return _context10.abrupt(\"return\");\n\n case 13:\n _context10.next = 15;\n return (_this$_scripting6 = this._scripting) === null || _this$_scripting6 === void 0 ? void 0 : _this$_scripting6.dispatchEventInSandbox({\n id: \"page\",\n name: \"PageClose\",\n pageNumber: pageNumber\n });\n\n case 15:\n case \"end\":\n return _context10.stop();\n }\n }\n }, _callee10, this);\n }));\n\n function _dispatchPageClose(_x9) {\n return _dispatchPageClose2.apply(this, arguments);\n }\n\n return _dispatchPageClose;\n }()\n }, {\n key: \"_getDocProperties\",\n value: function () {\n var _getDocProperties2 = _asyncToGenerator( /*#__PURE__*/_regenerator[\"default\"].mark(function _callee11() {\n var _require, docPropertiesLookup;\n\n return _regenerator[\"default\"].wrap(function _callee11$(_context11) {\n while (1) {\n switch (_context11.prev = _context11.next) {\n case 0:\n if (!this._docPropertiesLookup) {\n _context11.next = 2;\n break;\n }\n\n return _context11.abrupt(\"return\", this._docPropertiesLookup(this._pdfDocument));\n\n case 2:\n _require = __w_pdfjs_require__(21), docPropertiesLookup = _require.docPropertiesLookup;\n return _context11.abrupt(\"return\", docPropertiesLookup(this._pdfDocument));\n\n case 4:\n case \"end\":\n return _context11.stop();\n }\n }\n }, _callee11, this);\n }));\n\n function _getDocProperties() {\n return _getDocProperties2.apply(this, arguments);\n }\n\n return _getDocProperties;\n }()\n }, {\n key: \"_createScripting\",\n value: function _createScripting() {\n this._destroyCapability = (0, _pdfjsLib.createPromiseCapability)();\n\n if (this._scripting) {\n throw new Error(\"_createScripting: Scripting already exists.\");\n }\n\n if (this._scriptingFactory) {\n return this._scriptingFactory.createScripting({\n sandboxBundleSrc: this._sandboxBundleSrc\n });\n }\n\n var _require2 = __w_pdfjs_require__(21),\n GenericScripting = _require2.GenericScripting;\n\n return new GenericScripting(this._sandboxBundleSrc);\n }\n }, {\n key: \"_destroyScripting\",\n value: function () {\n var _destroyScripting2 = _asyncToGenerator( /*#__PURE__*/_regenerator[\"default\"].mark(function _callee12() {\n var _this$_destroyCapabil3;\n\n var _this$_destroyCapabil2, _iterator4, _step4, _step4$value, name, listener, _iterator5, _step5, _step5$value, _name2, _listener2;\n\n return _regenerator[\"default\"].wrap(function _callee12$(_context12) {\n while (1) {\n switch (_context12.prev = _context12.next) {\n case 0:\n if (this._scripting) {\n _context12.next = 4;\n break;\n }\n\n this._pdfDocument = null;\n (_this$_destroyCapabil2 = this._destroyCapability) === null || _this$_destroyCapabil2 === void 0 ? void 0 : _this$_destroyCapabil2.resolve();\n return _context12.abrupt(\"return\");\n\n case 4:\n if (!this._closeCapability) {\n _context12.next = 8;\n break;\n }\n\n _context12.next = 7;\n return Promise.race([this._closeCapability.promise, new Promise(function (resolve) {\n setTimeout(resolve, 1000);\n })])[\"catch\"](function (reason) {});\n\n case 7:\n this._closeCapability = null;\n\n case 8:\n this._pdfDocument = null;\n _context12.prev = 9;\n _context12.next = 12;\n return this._scripting.destroySandbox();\n\n case 12:\n _context12.next = 16;\n break;\n\n case 14:\n _context12.prev = 14;\n _context12.t0 = _context12[\"catch\"](9);\n\n case 16:\n _iterator4 = _createForOfIteratorHelper(this._internalEvents);\n\n try {\n for (_iterator4.s(); !(_step4 = _iterator4.n()).done;) {\n _step4$value = _slicedToArray(_step4.value, 2), name = _step4$value[0], listener = _step4$value[1];\n\n this._eventBus._off(name, listener);\n }\n } catch (err) {\n _iterator4.e(err);\n } finally {\n _iterator4.f();\n }\n\n this._internalEvents.clear();\n\n _iterator5 = _createForOfIteratorHelper(this._domEvents);\n\n try {\n for (_iterator5.s(); !(_step5 = _iterator5.n()).done;) {\n _step5$value = _slicedToArray(_step5.value, 2), _name2 = _step5$value[0], _listener2 = _step5$value[1];\n window.removeEventListener(_name2, _listener2);\n }\n } catch (err) {\n _iterator5.e(err);\n } finally {\n _iterator5.f();\n }\n\n this._domEvents.clear();\n\n this._pageOpenPending.clear();\n\n this._visitedPages.clear();\n\n this._scripting = null;\n delete this._mouseState.isDown;\n this._ready = false;\n (_this$_destroyCapabil3 = this._destroyCapability) === null || _this$_destroyCapabil3 === void 0 ? void 0 : _this$_destroyCapabil3.resolve();\n\n case 28:\n case \"end\":\n return _context12.stop();\n }\n }\n }, _callee12, this, [[9, 14]]);\n }));\n\n function _destroyScripting() {\n return _destroyScripting2.apply(this, arguments);\n }\n\n return _destroyScripting;\n }()\n }]);\n\n return PDFScriptingManager;\n}();\n\nexports.PDFScriptingManager = PDFScriptingManager;\n\n/***/ }),\n/* 21 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.docPropertiesLookup = docPropertiesLookup;\nexports.GenericScripting = void 0;\n\nvar _regenerator = _interopRequireDefault(__w_pdfjs_require__(2));\n\nvar _pdfjsLib = __w_pdfjs_require__(4);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }\n\nfunction _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err); } _next(undefined); }); }; }\n\nfunction docPropertiesLookup(_x) {\n return _docPropertiesLookup.apply(this, arguments);\n}\n\nfunction _docPropertiesLookup() {\n _docPropertiesLookup = _asyncToGenerator( /*#__PURE__*/_regenerator[\"default\"].mark(function _callee4(pdfDocument) {\n var url, baseUrl, _yield$pdfDocument$ge, info, metadata, contentDispositionFilename, contentLength, _yield$pdfDocument$ge2, length;\n\n return _regenerator[\"default\"].wrap(function _callee4$(_context4) {\n while (1) {\n switch (_context4.prev = _context4.next) {\n case 0:\n url = \"\", baseUrl = url.split(\"#\")[0];\n _context4.next = 3;\n return pdfDocument.getMetadata();\n\n case 3:\n _yield$pdfDocument$ge = _context4.sent;\n info = _yield$pdfDocument$ge.info;\n metadata = _yield$pdfDocument$ge.metadata;\n contentDispositionFilename = _yield$pdfDocument$ge.contentDispositionFilename;\n contentLength = _yield$pdfDocument$ge.contentLength;\n\n if (contentLength) {\n _context4.next = 14;\n break;\n }\n\n _context4.next = 11;\n return pdfDocument.getDownloadInfo();\n\n case 11:\n _yield$pdfDocument$ge2 = _context4.sent;\n length = _yield$pdfDocument$ge2.length;\n contentLength = length;\n\n case 14:\n return _context4.abrupt(\"return\", _objectSpread(_objectSpread({}, info), {}, {\n baseURL: baseUrl,\n filesize: contentLength,\n filename: contentDispositionFilename || (0, _pdfjsLib.getPdfFilenameFromUrl)(url),\n metadata: metadata === null || metadata === void 0 ? void 0 : metadata.getRaw(),\n authors: metadata === null || metadata === void 0 ? void 0 : metadata.get(\"dc:creator\"),\n numPages: pdfDocument.numPages,\n URL: url\n }));\n\n case 15:\n case \"end\":\n return _context4.stop();\n }\n }\n }, _callee4);\n }));\n return _docPropertiesLookup.apply(this, arguments);\n}\n\nvar GenericScripting = /*#__PURE__*/function () {\n function GenericScripting(sandboxBundleSrc) {\n _classCallCheck(this, GenericScripting);\n\n this._ready = (0, _pdfjsLib.loadScript)(sandboxBundleSrc, true).then(function () {\n return window.pdfjsSandbox.QuickJSSandbox();\n });\n }\n\n _createClass(GenericScripting, [{\n key: \"createSandbox\",\n value: function () {\n var _createSandbox = _asyncToGenerator( /*#__PURE__*/_regenerator[\"default\"].mark(function _callee(data) {\n var sandbox;\n return _regenerator[\"default\"].wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n _context.next = 2;\n return this._ready;\n\n case 2:\n sandbox = _context.sent;\n sandbox.create(data);\n\n case 4:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee, this);\n }));\n\n function createSandbox(_x2) {\n return _createSandbox.apply(this, arguments);\n }\n\n return createSandbox;\n }()\n }, {\n key: \"dispatchEventInSandbox\",\n value: function () {\n var _dispatchEventInSandbox = _asyncToGenerator( /*#__PURE__*/_regenerator[\"default\"].mark(function _callee2(event) {\n var sandbox;\n return _regenerator[\"default\"].wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n _context2.next = 2;\n return this._ready;\n\n case 2:\n sandbox = _context2.sent;\n sandbox.dispatchEvent(event);\n\n case 4:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2, this);\n }));\n\n function dispatchEventInSandbox(_x3) {\n return _dispatchEventInSandbox.apply(this, arguments);\n }\n\n return dispatchEventInSandbox;\n }()\n }, {\n key: \"destroySandbox\",\n value: function () {\n var _destroySandbox = _asyncToGenerator( /*#__PURE__*/_regenerator[\"default\"].mark(function _callee3() {\n var sandbox;\n return _regenerator[\"default\"].wrap(function _callee3$(_context3) {\n while (1) {\n switch (_context3.prev = _context3.next) {\n case 0:\n _context3.next = 2;\n return this._ready;\n\n case 2:\n sandbox = _context3.sent;\n sandbox.nukeSandbox();\n\n case 4:\n case \"end\":\n return _context3.stop();\n }\n }\n }, _callee3, this);\n }));\n\n function destroySandbox() {\n return _destroySandbox.apply(this, arguments);\n }\n\n return destroySandbox;\n }()\n }]);\n\n return GenericScripting;\n}();\n\nexports.GenericScripting = GenericScripting;\n\n/***/ }),\n/* 22 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.PDFSinglePageViewer = void 0;\n\nvar _base_viewer = __w_pdfjs_require__(23);\n\nvar _pdfjsLib = __w_pdfjs_require__(4);\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction _get(target, property, receiver) { if (typeof Reflect !== \"undefined\" && Reflect.get) { _get = Reflect.get; } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(receiver); } return desc.value; }; } return _get(target, property, receiver || target); }\n\nfunction _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } else if (call !== void 0) { throw new TypeError(\"Derived constructors may only return object or undefined\"); } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\nvar PDFSinglePageViewer = /*#__PURE__*/function (_BaseViewer) {\n _inherits(PDFSinglePageViewer, _BaseViewer);\n\n var _super = _createSuper(PDFSinglePageViewer);\n\n function PDFSinglePageViewer(options) {\n var _this;\n\n _classCallCheck(this, PDFSinglePageViewer);\n\n _this = _super.call(this, options);\n\n _this.eventBus._on(\"pagesinit\", function (evt) {\n _this._ensurePageViewVisible();\n });\n\n return _this;\n }\n\n _createClass(PDFSinglePageViewer, [{\n key: \"_viewerElement\",\n get: function get() {\n return (0, _pdfjsLib.shadow)(this, \"_viewerElement\", this._shadowViewer);\n }\n }, {\n key: \"_pageWidthScaleFactor\",\n get: function get() {\n return 1;\n }\n }, {\n key: \"_resetView\",\n value: function _resetView() {\n _get(_getPrototypeOf(PDFSinglePageViewer.prototype), \"_resetView\", this).call(this);\n\n this._previousPageNumber = 1;\n this._shadowViewer = document.createDocumentFragment();\n this._updateScrollDown = null;\n }\n }, {\n key: \"_ensurePageViewVisible\",\n value: function _ensurePageViewVisible() {\n var pageView = this._pages[this._currentPageNumber - 1];\n var previousPageView = this._pages[this._previousPageNumber - 1];\n var viewerNodes = this.viewer.childNodes;\n\n switch (viewerNodes.length) {\n case 0:\n this.viewer.appendChild(pageView.div);\n break;\n\n case 1:\n if (viewerNodes[0] !== previousPageView.div) {\n throw new Error(\"_ensurePageViewVisible: Unexpected previously visible page.\");\n }\n\n if (pageView === previousPageView) {\n break;\n }\n\n this._shadowViewer.appendChild(previousPageView.div);\n\n this.viewer.appendChild(pageView.div);\n this.container.scrollTop = 0;\n break;\n\n default:\n throw new Error(\"_ensurePageViewVisible: Only one page should be visible at a time.\");\n }\n\n this._previousPageNumber = this._currentPageNumber;\n }\n }, {\n key: \"_scrollUpdate\",\n value: function _scrollUpdate() {\n if (this._updateScrollDown) {\n this._updateScrollDown();\n }\n\n _get(_getPrototypeOf(PDFSinglePageViewer.prototype), \"_scrollUpdate\", this).call(this);\n }\n }, {\n key: \"_scrollIntoView\",\n value: function _scrollIntoView(_ref) {\n var _this2 = this;\n\n var pageDiv = _ref.pageDiv,\n _ref$pageSpot = _ref.pageSpot,\n pageSpot = _ref$pageSpot === void 0 ? null : _ref$pageSpot,\n _ref$pageNumber = _ref.pageNumber,\n pageNumber = _ref$pageNumber === void 0 ? null : _ref$pageNumber;\n\n if (pageNumber) {\n this._setCurrentPageNumber(pageNumber);\n }\n\n var scrolledDown = this._currentPageNumber >= this._previousPageNumber;\n\n this._ensurePageViewVisible();\n\n this.update();\n\n _get(_getPrototypeOf(PDFSinglePageViewer.prototype), \"_scrollIntoView\", this).call(this, {\n pageDiv: pageDiv,\n pageSpot: pageSpot,\n pageNumber: pageNumber\n });\n\n this._updateScrollDown = function () {\n _this2.scroll.down = scrolledDown;\n _this2._updateScrollDown = null;\n };\n }\n }, {\n key: \"_getVisiblePages\",\n value: function _getVisiblePages() {\n return this._getCurrentVisiblePage();\n }\n }, {\n key: \"_updateHelper\",\n value: function _updateHelper(visiblePages) {}\n }, {\n key: \"_isScrollModeHorizontal\",\n get: function get() {\n return (0, _pdfjsLib.shadow)(this, \"_isScrollModeHorizontal\", false);\n }\n }, {\n key: \"_updateScrollMode\",\n value: function _updateScrollMode() {}\n }, {\n key: \"_updateSpreadMode\",\n value: function _updateSpreadMode() {}\n }, {\n key: \"_getPageAdvance\",\n value: function _getPageAdvance() {\n return 1;\n }\n }]);\n\n return PDFSinglePageViewer;\n}(_base_viewer.BaseViewer);\n\nexports.PDFSinglePageViewer = PDFSinglePageViewer;\n\n/***/ }),\n/* 23 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.BaseViewer = void 0;\n\nvar _pdfjsLib = __w_pdfjs_require__(4);\n\nvar _ui_utils = __w_pdfjs_require__(7);\n\nvar _pdf_rendering_queue = __w_pdfjs_require__(19);\n\nvar _annotation_layer_builder = __w_pdfjs_require__(1);\n\nvar _l10n_utils = __w_pdfjs_require__(5);\n\nvar _pdf_page_view = __w_pdfjs_require__(18);\n\nvar _pdf_link_service = __w_pdfjs_require__(6);\n\nvar _struct_tree_layer_builder = __w_pdfjs_require__(8);\n\nvar _text_highlighter = __w_pdfjs_require__(24);\n\nvar _text_layer_builder = __w_pdfjs_require__(9);\n\nvar _xfa_layer_builder = __w_pdfjs_require__(10);\n\nfunction _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it[\"return\"] != null) it[\"return\"](); } finally { if (didErr) throw err; } } }; }\n\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nvar DEFAULT_CACHE_SIZE = 10;\n\nfunction PDFPageViewBuffer(size) {\n var data = [];\n\n this.push = function (view) {\n var i = data.indexOf(view);\n\n if (i >= 0) {\n data.splice(i, 1);\n }\n\n data.push(view);\n\n if (data.length > size) {\n data.shift().destroy();\n }\n };\n\n this.resize = function (newSize, pagesToKeep) {\n size = newSize;\n\n if (pagesToKeep) {\n var pageIdsToKeep = new Set();\n\n for (var i = 0, iMax = pagesToKeep.length; i < iMax; ++i) {\n pageIdsToKeep.add(pagesToKeep[i].id);\n }\n\n (0, _ui_utils.moveToEndOfArray)(data, function (page) {\n return pageIdsToKeep.has(page.id);\n });\n }\n\n while (data.length > size) {\n data.shift().destroy();\n }\n };\n\n this.has = function (view) {\n return data.includes(view);\n };\n}\n\nfunction isSameScale(oldScale, newScale) {\n if (newScale === oldScale) {\n return true;\n }\n\n if (Math.abs(newScale - oldScale) < 1e-15) {\n return true;\n }\n\n return false;\n}\n\nvar BaseViewer = /*#__PURE__*/function () {\n function BaseViewer(options) {\n var _this$container,\n _this$viewer,\n _options$textLayerMod,\n _options$annotationMo,\n _this = this;\n\n _classCallCheck(this, BaseViewer);\n\n if (this.constructor === BaseViewer) {\n throw new Error(\"Cannot initialize BaseViewer.\");\n }\n\n var viewerVersion = '2.11.338';\n\n if (_pdfjsLib.version !== viewerVersion) {\n throw new Error(\"The API version \\\"\".concat(_pdfjsLib.version, \"\\\" does not match the Viewer version \\\"\").concat(viewerVersion, \"\\\".\"));\n }\n\n this.container = options.container;\n this.viewer = options.viewer || options.container.firstElementChild;\n\n if (!(((_this$container = this.container) === null || _this$container === void 0 ? void 0 : _this$container.tagName.toUpperCase()) === \"DIV\" && ((_this$viewer = this.viewer) === null || _this$viewer === void 0 ? void 0 : _this$viewer.tagName.toUpperCase()) === \"DIV\")) {\n throw new Error(\"Invalid `container` and/or `viewer` option.\");\n }\n\n if (this.container.offsetParent && getComputedStyle(this.container).position !== \"absolute\") {\n throw new Error(\"The `container` must be absolutely positioned.\");\n }\n\n this.eventBus = options.eventBus;\n this.linkService = options.linkService || new _pdf_link_service.SimpleLinkService();\n this.downloadManager = options.downloadManager || null;\n this.findController = options.findController || null;\n this._scriptingManager = options.scriptingManager || null;\n this.removePageBorders = options.removePageBorders || false;\n this.textLayerMode = (_options$textLayerMod = options.textLayerMode) !== null && _options$textLayerMod !== void 0 ? _options$textLayerMod : _ui_utils.TextLayerMode.ENABLE;\n this._annotationMode = (_options$annotationMo = options.annotationMode) !== null && _options$annotationMo !== void 0 ? _options$annotationMo : _pdfjsLib.AnnotationMode.ENABLE_FORMS;\n this.imageResourcesPath = options.imageResourcesPath || \"\";\n this.enablePrintAutoRotate = options.enablePrintAutoRotate || false;\n this.renderer = options.renderer || _ui_utils.RendererType.CANVAS;\n this.useOnlyCssZoom = options.useOnlyCssZoom || false;\n this.maxCanvasPixels = options.maxCanvasPixels;\n this.l10n = options.l10n || _l10n_utils.NullL10n;\n this.defaultRenderingQueue = !options.renderingQueue;\n\n if (this.defaultRenderingQueue) {\n this.renderingQueue = new _pdf_rendering_queue.PDFRenderingQueue();\n this.renderingQueue.setViewer(this);\n } else {\n this.renderingQueue = options.renderingQueue;\n }\n\n this._doc = document.documentElement;\n this.scroll = (0, _ui_utils.watchScroll)(this.container, this._scrollUpdate.bind(this));\n this.presentationModeState = _ui_utils.PresentationModeState.UNKNOWN;\n this._onBeforeDraw = this._onAfterDraw = null;\n\n this._resetView();\n\n if (this.removePageBorders) {\n this.viewer.classList.add(\"removePageBorders\");\n }\n\n Promise.resolve().then(function () {\n _this.eventBus.dispatch(\"baseviewerinit\", {\n source: _this\n });\n });\n }\n\n _createClass(BaseViewer, [{\n key: \"pagesCount\",\n get: function get() {\n return this._pages.length;\n }\n }, {\n key: \"getPageView\",\n value: function getPageView(index) {\n return this._pages[index];\n }\n }, {\n key: \"pageViewsReady\",\n get: function get() {\n if (!this._pagesCapability.settled) {\n return false;\n }\n\n return this._pages.every(function (pageView) {\n return pageView === null || pageView === void 0 ? void 0 : pageView.pdfPage;\n });\n }\n }, {\n key: \"renderForms\",\n get: function get() {\n return this._annotationMode === _pdfjsLib.AnnotationMode.ENABLE_FORMS;\n }\n }, {\n key: \"enableScripting\",\n get: function get() {\n return !!this._scriptingManager;\n }\n }, {\n key: \"currentPageNumber\",\n get: function get() {\n return this._currentPageNumber;\n },\n set: function set(val) {\n if (!Number.isInteger(val)) {\n throw new Error(\"Invalid page number.\");\n }\n\n if (!this.pdfDocument) {\n return;\n }\n\n if (!this._setCurrentPageNumber(val, true)) {\n console.error(\"currentPageNumber: \\\"\".concat(val, \"\\\" is not a valid page.\"));\n }\n }\n }, {\n key: \"_setCurrentPageNumber\",\n value: function _setCurrentPageNumber(val) {\n var _this$_pageLabels, _this$_pageLabels2;\n\n var resetCurrentPageView = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n\n if (this._currentPageNumber === val) {\n if (resetCurrentPageView) {\n this._resetCurrentPageView();\n }\n\n return true;\n }\n\n if (!(0 < val && val <= this.pagesCount)) {\n return false;\n }\n\n var previous = this._currentPageNumber;\n this._currentPageNumber = val;\n this.eventBus.dispatch(\"pagechanging\", {\n source: this,\n pageNumber: val,\n pageLabel: (_this$_pageLabels = (_this$_pageLabels2 = this._pageLabels) === null || _this$_pageLabels2 === void 0 ? void 0 : _this$_pageLabels2[val - 1]) !== null && _this$_pageLabels !== void 0 ? _this$_pageLabels : null,\n previous: previous\n });\n\n if (resetCurrentPageView) {\n this._resetCurrentPageView();\n }\n\n return true;\n }\n }, {\n key: \"currentPageLabel\",\n get: function get() {\n var _this$_pageLabels3, _this$_pageLabels4;\n\n return (_this$_pageLabels3 = (_this$_pageLabels4 = this._pageLabels) === null || _this$_pageLabels4 === void 0 ? void 0 : _this$_pageLabels4[this._currentPageNumber - 1]) !== null && _this$_pageLabels3 !== void 0 ? _this$_pageLabels3 : null;\n },\n set: function set(val) {\n if (!this.pdfDocument) {\n return;\n }\n\n var page = val | 0;\n\n if (this._pageLabels) {\n var i = this._pageLabels.indexOf(val);\n\n if (i >= 0) {\n page = i + 1;\n }\n }\n\n if (!this._setCurrentPageNumber(page, true)) {\n console.error(\"currentPageLabel: \\\"\".concat(val, \"\\\" is not a valid page.\"));\n }\n }\n }, {\n key: \"currentScale\",\n get: function get() {\n return this._currentScale !== _ui_utils.UNKNOWN_SCALE ? this._currentScale : _ui_utils.DEFAULT_SCALE;\n },\n set: function set(val) {\n if (isNaN(val)) {\n throw new Error(\"Invalid numeric scale.\");\n }\n\n if (!this.pdfDocument) {\n return;\n }\n\n this._setScale(val, false);\n }\n }, {\n key: \"currentScaleValue\",\n get: function get() {\n return this._currentScaleValue;\n },\n set: function set(val) {\n if (!this.pdfDocument) {\n return;\n }\n\n this._setScale(val, false);\n }\n }, {\n key: \"pagesRotation\",\n get: function get() {\n return this._pagesRotation;\n },\n set: function set(rotation) {\n if (!(0, _ui_utils.isValidRotation)(rotation)) {\n throw new Error(\"Invalid pages rotation angle.\");\n }\n\n if (!this.pdfDocument) {\n return;\n }\n\n rotation %= 360;\n\n if (rotation < 0) {\n rotation += 360;\n }\n\n if (this._pagesRotation === rotation) {\n return;\n }\n\n this._pagesRotation = rotation;\n var pageNumber = this._currentPageNumber;\n var updateArgs = {\n rotation: rotation\n };\n\n var _iterator = _createForOfIteratorHelper(this._pages),\n _step;\n\n try {\n for (_iterator.s(); !(_step = _iterator.n()).done;) {\n var pageView = _step.value;\n pageView.update(updateArgs);\n }\n } catch (err) {\n _iterator.e(err);\n } finally {\n _iterator.f();\n }\n\n if (this._currentScaleValue) {\n this._setScale(this._currentScaleValue, true);\n }\n\n this.eventBus.dispatch(\"rotationchanging\", {\n source: this,\n pagesRotation: rotation,\n pageNumber: pageNumber\n });\n\n if (this.defaultRenderingQueue) {\n this.update();\n }\n }\n }, {\n key: \"firstPagePromise\",\n get: function get() {\n return this.pdfDocument ? this._firstPageCapability.promise : null;\n }\n }, {\n key: \"onePageRendered\",\n get: function get() {\n return this.pdfDocument ? this._onePageRenderedCapability.promise : null;\n }\n }, {\n key: \"pagesPromise\",\n get: function get() {\n return this.pdfDocument ? this._pagesCapability.promise : null;\n }\n }, {\n key: \"_viewerElement\",\n get: function get() {\n throw new Error(\"Not implemented: _viewerElement\");\n }\n }, {\n key: \"_onePageRenderedOrForceFetch\",\n value: function _onePageRenderedOrForceFetch() {\n if (!this.container.offsetParent || this._getVisiblePages().views.length === 0) {\n return Promise.resolve();\n }\n\n return this._onePageRenderedCapability.promise;\n }\n }, {\n key: \"setDocument\",\n value: function setDocument(pdfDocument) {\n var _this2 = this;\n\n if (this.pdfDocument) {\n this.eventBus.dispatch(\"pagesdestroy\", {\n source: this\n });\n\n this._cancelRendering();\n\n this._resetView();\n\n if (this.findController) {\n this.findController.setDocument(null);\n }\n\n if (this._scriptingManager) {\n this._scriptingManager.setDocument(null);\n }\n }\n\n this.pdfDocument = pdfDocument;\n\n if (!pdfDocument) {\n return;\n }\n\n var isPureXfa = pdfDocument.isPureXfa;\n var pagesCount = pdfDocument.numPages;\n var firstPagePromise = pdfDocument.getPage(1);\n var optionalContentConfigPromise = pdfDocument.getOptionalContentConfig();\n\n this._pagesCapability.promise.then(function () {\n _this2.eventBus.dispatch(\"pagesloaded\", {\n source: _this2,\n pagesCount: pagesCount\n });\n });\n\n this._onBeforeDraw = function (evt) {\n var pageView = _this2._pages[evt.pageNumber - 1];\n\n if (!pageView) {\n return;\n }\n\n _this2._buffer.push(pageView);\n };\n\n this.eventBus._on(\"pagerender\", this._onBeforeDraw);\n\n this._onAfterDraw = function (evt) {\n if (evt.cssTransform || _this2._onePageRenderedCapability.settled) {\n return;\n }\n\n _this2._onePageRenderedCapability.resolve();\n\n _this2.eventBus._off(\"pagerendered\", _this2._onAfterDraw);\n\n _this2._onAfterDraw = null;\n };\n\n this.eventBus._on(\"pagerendered\", this._onAfterDraw);\n\n firstPagePromise.then(function (firstPdfPage) {\n _this2._firstPageCapability.resolve(firstPdfPage);\n\n _this2._optionalContentConfigPromise = optionalContentConfigPromise;\n var scale = _this2.currentScale;\n var viewport = firstPdfPage.getViewport({\n scale: scale * _pdfjsLib.PixelsPerInch.PDF_TO_CSS_UNITS\n });\n var textLayerFactory = _this2.textLayerMode !== _ui_utils.TextLayerMode.DISABLE && !isPureXfa ? _this2 : null;\n var annotationLayerFactory = _this2._annotationMode !== _pdfjsLib.AnnotationMode.DISABLE ? _this2 : null;\n var xfaLayerFactory = isPureXfa ? _this2 : null;\n\n for (var pageNum = 1; pageNum <= pagesCount; ++pageNum) {\n var pageView = new _pdf_page_view.PDFPageView({\n container: _this2._viewerElement,\n eventBus: _this2.eventBus,\n id: pageNum,\n scale: scale,\n defaultViewport: viewport.clone(),\n optionalContentConfigPromise: optionalContentConfigPromise,\n renderingQueue: _this2.renderingQueue,\n textLayerFactory: textLayerFactory,\n textLayerMode: _this2.textLayerMode,\n annotationLayerFactory: annotationLayerFactory,\n annotationMode: _this2._annotationMode,\n xfaLayerFactory: xfaLayerFactory,\n textHighlighterFactory: _this2,\n structTreeLayerFactory: _this2,\n imageResourcesPath: _this2.imageResourcesPath,\n renderer: _this2.renderer,\n useOnlyCssZoom: _this2.useOnlyCssZoom,\n maxCanvasPixels: _this2.maxCanvasPixels,\n l10n: _this2.l10n\n });\n\n _this2._pages.push(pageView);\n }\n\n var firstPageView = _this2._pages[0];\n\n if (firstPageView) {\n firstPageView.setPdfPage(firstPdfPage);\n\n _this2.linkService.cachePageRef(1, firstPdfPage.ref);\n }\n\n if (_this2._spreadMode !== _ui_utils.SpreadMode.NONE) {\n _this2._updateSpreadMode();\n }\n\n _this2._onePageRenderedOrForceFetch().then(function () {\n if (_this2.findController) {\n _this2.findController.setDocument(pdfDocument);\n }\n\n if (_this2._scriptingManager) {\n _this2._scriptingManager.setDocument(pdfDocument);\n }\n\n if (pdfDocument.loadingParams.disableAutoFetch || pagesCount > 7500) {\n _this2._pagesCapability.resolve();\n\n return;\n }\n\n var getPagesLeft = pagesCount - 1;\n\n if (getPagesLeft <= 0) {\n _this2._pagesCapability.resolve();\n\n return;\n }\n\n var _loop = function _loop(_pageNum) {\n pdfDocument.getPage(_pageNum).then(function (pdfPage) {\n var pageView = _this2._pages[_pageNum - 1];\n\n if (!pageView.pdfPage) {\n pageView.setPdfPage(pdfPage);\n }\n\n _this2.linkService.cachePageRef(_pageNum, pdfPage.ref);\n\n if (--getPagesLeft === 0) {\n _this2._pagesCapability.resolve();\n }\n }, function (reason) {\n console.error(\"Unable to get page \".concat(_pageNum, \" to initialize viewer\"), reason);\n\n if (--getPagesLeft === 0) {\n _this2._pagesCapability.resolve();\n }\n });\n };\n\n for (var _pageNum = 2; _pageNum <= pagesCount; ++_pageNum) {\n _loop(_pageNum);\n }\n });\n\n _this2.eventBus.dispatch(\"pagesinit\", {\n source: _this2\n });\n\n if (_this2.defaultRenderingQueue) {\n _this2.update();\n }\n })[\"catch\"](function (reason) {\n console.error(\"Unable to initialize viewer\", reason);\n });\n }\n }, {\n key: \"setPageLabels\",\n value: function setPageLabels(labels) {\n if (!this.pdfDocument) {\n return;\n }\n\n if (!labels) {\n this._pageLabels = null;\n } else if (!(Array.isArray(labels) && this.pdfDocument.numPages === labels.length)) {\n this._pageLabels = null;\n console.error(\"setPageLabels: Invalid page labels.\");\n } else {\n this._pageLabels = labels;\n }\n\n for (var i = 0, ii = this._pages.length; i < ii; i++) {\n var _this$_pageLabels$i, _this$_pageLabels5;\n\n this._pages[i].setPageLabel((_this$_pageLabels$i = (_this$_pageLabels5 = this._pageLabels) === null || _this$_pageLabels5 === void 0 ? void 0 : _this$_pageLabels5[i]) !== null && _this$_pageLabels$i !== void 0 ? _this$_pageLabels$i : null);\n }\n }\n }, {\n key: \"_resetView\",\n value: function _resetView() {\n this._pages = [];\n this._currentPageNumber = 1;\n this._currentScale = _ui_utils.UNKNOWN_SCALE;\n this._currentScaleValue = null;\n this._pageLabels = null;\n this._buffer = new PDFPageViewBuffer(DEFAULT_CACHE_SIZE);\n this._location = null;\n this._pagesRotation = 0;\n this._optionalContentConfigPromise = null;\n this._pagesRequests = new WeakMap();\n this._firstPageCapability = (0, _pdfjsLib.createPromiseCapability)();\n this._onePageRenderedCapability = (0, _pdfjsLib.createPromiseCapability)();\n this._pagesCapability = (0, _pdfjsLib.createPromiseCapability)();\n this._scrollMode = _ui_utils.ScrollMode.VERTICAL;\n this._spreadMode = _ui_utils.SpreadMode.NONE;\n\n if (this._onBeforeDraw) {\n this.eventBus._off(\"pagerender\", this._onBeforeDraw);\n\n this._onBeforeDraw = null;\n }\n\n if (this._onAfterDraw) {\n this.eventBus._off(\"pagerendered\", this._onAfterDraw);\n\n this._onAfterDraw = null;\n }\n\n this.viewer.textContent = \"\";\n\n this._updateScrollMode();\n }\n }, {\n key: \"_scrollUpdate\",\n value: function _scrollUpdate() {\n if (this.pagesCount === 0) {\n return;\n }\n\n this.update();\n }\n }, {\n key: \"_scrollIntoView\",\n value: function _scrollIntoView(_ref) {\n var pageDiv = _ref.pageDiv,\n _ref$pageSpot = _ref.pageSpot,\n pageSpot = _ref$pageSpot === void 0 ? null : _ref$pageSpot,\n _ref$pageNumber = _ref.pageNumber,\n pageNumber = _ref$pageNumber === void 0 ? null : _ref$pageNumber;\n (0, _ui_utils.scrollIntoView)(pageDiv, pageSpot);\n }\n }, {\n key: \"_setScaleUpdatePages\",\n value: function _setScaleUpdatePages(newScale, newValue) {\n var noScroll = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n var preset = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false;\n this._currentScaleValue = newValue.toString();\n\n if (isSameScale(this._currentScale, newScale)) {\n if (preset) {\n this.eventBus.dispatch(\"scalechanging\", {\n source: this,\n scale: newScale,\n presetValue: newValue\n });\n }\n\n return;\n }\n\n this._doc.style.setProperty(\"--zoom-factor\", newScale);\n\n var updateArgs = {\n scale: newScale\n };\n\n var _iterator2 = _createForOfIteratorHelper(this._pages),\n _step2;\n\n try {\n for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {\n var pageView = _step2.value;\n pageView.update(updateArgs);\n }\n } catch (err) {\n _iterator2.e(err);\n } finally {\n _iterator2.f();\n }\n\n this._currentScale = newScale;\n\n if (!noScroll) {\n var page = this._currentPageNumber,\n dest;\n\n if (this._location && !(this.isInPresentationMode || this.isChangingPresentationMode)) {\n page = this._location.pageNumber;\n dest = [null, {\n name: \"XYZ\"\n }, this._location.left, this._location.top, null];\n }\n\n this.scrollPageIntoView({\n pageNumber: page,\n destArray: dest,\n allowNegativeOffset: true\n });\n }\n\n this.eventBus.dispatch(\"scalechanging\", {\n source: this,\n scale: newScale,\n presetValue: preset ? newValue : undefined\n });\n\n if (this.defaultRenderingQueue) {\n this.update();\n }\n }\n }, {\n key: \"_pageWidthScaleFactor\",\n get: function get() {\n if (this._spreadMode !== _ui_utils.SpreadMode.NONE && this._scrollMode !== _ui_utils.ScrollMode.HORIZONTAL && !this.isInPresentationMode) {\n return 2;\n }\n\n return 1;\n }\n }, {\n key: \"_setScale\",\n value: function _setScale(value) {\n var noScroll = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n var scale = parseFloat(value);\n\n if (scale > 0) {\n this._setScaleUpdatePages(scale, value, noScroll, false);\n } else {\n var currentPage = this._pages[this._currentPageNumber - 1];\n\n if (!currentPage) {\n return;\n }\n\n var noPadding = this.isInPresentationMode || this.removePageBorders;\n var hPadding = noPadding ? 0 : _ui_utils.SCROLLBAR_PADDING;\n var vPadding = noPadding ? 0 : _ui_utils.VERTICAL_PADDING;\n\n if (!noPadding && this._isScrollModeHorizontal) {\n var _ref2 = [vPadding, hPadding];\n hPadding = _ref2[0];\n vPadding = _ref2[1];\n }\n\n var pageWidthScale = (this.container.clientWidth - hPadding) / currentPage.width * currentPage.scale / this._pageWidthScaleFactor;\n var pageHeightScale = (this.container.clientHeight - vPadding) / currentPage.height * currentPage.scale;\n\n switch (value) {\n case \"page-actual\":\n scale = 1;\n break;\n\n case \"page-width\":\n scale = pageWidthScale;\n break;\n\n case \"page-height\":\n scale = pageHeightScale;\n break;\n\n case \"page-fit\":\n scale = Math.min(pageWidthScale, pageHeightScale);\n break;\n\n case \"auto\":\n var horizontalScale = (0, _ui_utils.isPortraitOrientation)(currentPage) ? pageWidthScale : Math.min(pageHeightScale, pageWidthScale);\n scale = Math.min(_ui_utils.MAX_AUTO_SCALE, horizontalScale);\n break;\n\n default:\n console.error(\"_setScale: \\\"\".concat(value, \"\\\" is an unknown zoom value.\"));\n return;\n }\n\n this._setScaleUpdatePages(scale, value, noScroll, true);\n }\n }\n }, {\n key: \"_resetCurrentPageView\",\n value: function _resetCurrentPageView() {\n if (this.isInPresentationMode) {\n this._setScale(this._currentScaleValue, true);\n }\n\n var pageView = this._pages[this._currentPageNumber - 1];\n\n this._scrollIntoView({\n pageDiv: pageView.div\n });\n }\n }, {\n key: \"pageLabelToPageNumber\",\n value: function pageLabelToPageNumber(label) {\n if (!this._pageLabels) {\n return null;\n }\n\n var i = this._pageLabels.indexOf(label);\n\n if (i < 0) {\n return null;\n }\n\n return i + 1;\n }\n }, {\n key: \"scrollPageIntoView\",\n value: function scrollPageIntoView(_ref3) {\n var pageNumber = _ref3.pageNumber,\n _ref3$destArray = _ref3.destArray,\n destArray = _ref3$destArray === void 0 ? null : _ref3$destArray,\n _ref3$allowNegativeOf = _ref3.allowNegativeOffset,\n allowNegativeOffset = _ref3$allowNegativeOf === void 0 ? false : _ref3$allowNegativeOf,\n _ref3$ignoreDestinati = _ref3.ignoreDestinationZoom,\n ignoreDestinationZoom = _ref3$ignoreDestinati === void 0 ? false : _ref3$ignoreDestinati;\n\n if (!this.pdfDocument) {\n return;\n }\n\n var pageView = Number.isInteger(pageNumber) && this._pages[pageNumber - 1];\n\n if (!pageView) {\n console.error(\"scrollPageIntoView: \\\"\".concat(pageNumber, \"\\\" is not a valid pageNumber parameter.\"));\n return;\n }\n\n if (this.isInPresentationMode || !destArray) {\n this._setCurrentPageNumber(pageNumber, true);\n\n return;\n }\n\n var x = 0,\n y = 0;\n var width = 0,\n height = 0,\n widthScale,\n heightScale;\n var changeOrientation = pageView.rotation % 180 !== 0;\n var pageWidth = (changeOrientation ? pageView.height : pageView.width) / pageView.scale / _pdfjsLib.PixelsPerInch.PDF_TO_CSS_UNITS;\n var pageHeight = (changeOrientation ? pageView.width : pageView.height) / pageView.scale / _pdfjsLib.PixelsPerInch.PDF_TO_CSS_UNITS;\n var scale = 0;\n\n switch (destArray[1].name) {\n case \"XYZ\":\n x = destArray[2];\n y = destArray[3];\n scale = destArray[4];\n x = x !== null ? x : 0;\n y = y !== null ? y : pageHeight;\n break;\n\n case \"Fit\":\n case \"FitB\":\n scale = \"page-fit\";\n break;\n\n case \"FitH\":\n case \"FitBH\":\n y = destArray[2];\n scale = \"page-width\";\n\n if (y === null && this._location) {\n x = this._location.left;\n y = this._location.top;\n } else if (typeof y !== \"number\") {\n y = pageHeight;\n }\n\n break;\n\n case \"FitV\":\n case \"FitBV\":\n x = destArray[2];\n width = pageWidth;\n height = pageHeight;\n scale = \"page-height\";\n break;\n\n case \"FitR\":\n x = destArray[2];\n y = destArray[3];\n width = destArray[4] - x;\n height = destArray[5] - y;\n var hPadding = this.removePageBorders ? 0 : _ui_utils.SCROLLBAR_PADDING;\n var vPadding = this.removePageBorders ? 0 : _ui_utils.VERTICAL_PADDING;\n widthScale = (this.container.clientWidth - hPadding) / width / _pdfjsLib.PixelsPerInch.PDF_TO_CSS_UNITS;\n heightScale = (this.container.clientHeight - vPadding) / height / _pdfjsLib.PixelsPerInch.PDF_TO_CSS_UNITS;\n scale = Math.min(Math.abs(widthScale), Math.abs(heightScale));\n break;\n\n default:\n console.error(\"scrollPageIntoView: \\\"\".concat(destArray[1].name, \"\\\" is not a valid destination type.\"));\n return;\n }\n\n if (!ignoreDestinationZoom) {\n if (scale && scale !== this._currentScale) {\n this.currentScaleValue = scale;\n } else if (this._currentScale === _ui_utils.UNKNOWN_SCALE) {\n this.currentScaleValue = _ui_utils.DEFAULT_SCALE_VALUE;\n }\n }\n\n if (scale === \"page-fit\" && !destArray[4]) {\n this._scrollIntoView({\n pageDiv: pageView.div,\n pageNumber: pageNumber\n });\n\n return;\n }\n\n var boundingRect = [pageView.viewport.convertToViewportPoint(x, y), pageView.viewport.convertToViewportPoint(x + width, y + height)];\n var left = Math.min(boundingRect[0][0], boundingRect[1][0]);\n var top = Math.min(boundingRect[0][1], boundingRect[1][1]);\n\n if (!allowNegativeOffset) {\n left = Math.max(left, 0);\n top = Math.max(top, 0);\n }\n\n this._scrollIntoView({\n pageDiv: pageView.div,\n pageSpot: {\n left: left,\n top: top\n },\n pageNumber: pageNumber\n });\n }\n }, {\n key: \"_updateLocation\",\n value: function _updateLocation(firstPage) {\n var currentScale = this._currentScale;\n var currentScaleValue = this._currentScaleValue;\n var normalizedScaleValue = parseFloat(currentScaleValue) === currentScale ? Math.round(currentScale * 10000) / 100 : currentScaleValue;\n var pageNumber = firstPage.id;\n var pdfOpenParams = \"#page=\" + pageNumber;\n pdfOpenParams += \"&zoom=\" + normalizedScaleValue;\n var currentPageView = this._pages[pageNumber - 1];\n var container = this.container;\n var topLeft = currentPageView.getPagePoint(container.scrollLeft - firstPage.x, container.scrollTop - firstPage.y);\n var intLeft = Math.round(topLeft[0]);\n var intTop = Math.round(topLeft[1]);\n pdfOpenParams += \",\" + intLeft + \",\" + intTop;\n this._location = {\n pageNumber: pageNumber,\n scale: normalizedScaleValue,\n top: intTop,\n left: intLeft,\n rotation: this._pagesRotation,\n pdfOpenParams: pdfOpenParams\n };\n }\n }, {\n key: \"_updateHelper\",\n value: function _updateHelper(visiblePages) {\n throw new Error(\"Not implemented: _updateHelper\");\n }\n }, {\n key: \"update\",\n value: function update() {\n var visible = this._getVisiblePages();\n\n var visiblePages = visible.views,\n numVisiblePages = visiblePages.length;\n\n if (numVisiblePages === 0) {\n return;\n }\n\n var newCacheSize = Math.max(DEFAULT_CACHE_SIZE, 2 * numVisiblePages + 1);\n\n this._buffer.resize(newCacheSize, visiblePages);\n\n this.renderingQueue.renderHighestPriority(visible);\n\n this._updateHelper(visiblePages);\n\n this._updateLocation(visible.first);\n\n this.eventBus.dispatch(\"updateviewarea\", {\n source: this,\n location: this._location\n });\n }\n }, {\n key: \"containsElement\",\n value: function containsElement(element) {\n return this.container.contains(element);\n }\n }, {\n key: \"focus\",\n value: function focus() {\n this.container.focus();\n }\n }, {\n key: \"_isScrollModeHorizontal\",\n get: function get() {\n return this.isInPresentationMode ? false : this._scrollMode === _ui_utils.ScrollMode.HORIZONTAL;\n }\n }, {\n key: \"_isContainerRtl\",\n get: function get() {\n return getComputedStyle(this.container).direction === \"rtl\";\n }\n }, {\n key: \"isInPresentationMode\",\n get: function get() {\n return this.presentationModeState === _ui_utils.PresentationModeState.FULLSCREEN;\n }\n }, {\n key: \"isChangingPresentationMode\",\n get: function get() {\n return this.presentationModeState === _ui_utils.PresentationModeState.CHANGING;\n }\n }, {\n key: \"isHorizontalScrollbarEnabled\",\n get: function get() {\n return this.isInPresentationMode ? false : this.container.scrollWidth > this.container.clientWidth;\n }\n }, {\n key: \"isVerticalScrollbarEnabled\",\n get: function get() {\n return this.isInPresentationMode ? false : this.container.scrollHeight > this.container.clientHeight;\n }\n }, {\n key: \"_getCurrentVisiblePage\",\n value: function _getCurrentVisiblePage() {\n if (!this.pagesCount) {\n return {\n views: []\n };\n }\n\n var pageView = this._pages[this._currentPageNumber - 1];\n var element = pageView.div;\n var view = {\n id: pageView.id,\n x: element.offsetLeft + element.clientLeft,\n y: element.offsetTop + element.clientTop,\n view: pageView\n };\n return {\n first: view,\n last: view,\n views: [view]\n };\n }\n }, {\n key: \"_getVisiblePages\",\n value: function _getVisiblePages() {\n return (0, _ui_utils.getVisibleElements)({\n scrollEl: this.container,\n views: this._pages,\n sortByVisibility: true,\n horizontal: this._isScrollModeHorizontal,\n rtl: this._isScrollModeHorizontal && this._isContainerRtl\n });\n }\n }, {\n key: \"isPageVisible\",\n value: function isPageVisible(pageNumber) {\n if (!this.pdfDocument) {\n return false;\n }\n\n if (!(Number.isInteger(pageNumber) && pageNumber > 0 && pageNumber <= this.pagesCount)) {\n console.error(\"isPageVisible: \\\"\".concat(pageNumber, \"\\\" is not a valid page.\"));\n return false;\n }\n\n return this._getVisiblePages().views.some(function (view) {\n return view.id === pageNumber;\n });\n }\n }, {\n key: \"isPageCached\",\n value: function isPageCached(pageNumber) {\n if (!this.pdfDocument || !this._buffer) {\n return false;\n }\n\n if (!(Number.isInteger(pageNumber) && pageNumber > 0 && pageNumber <= this.pagesCount)) {\n console.error(\"isPageCached: \\\"\".concat(pageNumber, \"\\\" is not a valid page.\"));\n return false;\n }\n\n var pageView = this._pages[pageNumber - 1];\n\n if (!pageView) {\n return false;\n }\n\n return this._buffer.has(pageView);\n }\n }, {\n key: \"cleanup\",\n value: function cleanup() {\n for (var i = 0, ii = this._pages.length; i < ii; i++) {\n if (this._pages[i] && this._pages[i].renderingState !== _pdf_rendering_queue.RenderingStates.FINISHED) {\n this._pages[i].reset();\n }\n }\n }\n }, {\n key: \"_cancelRendering\",\n value: function _cancelRendering() {\n for (var i = 0, ii = this._pages.length; i < ii; i++) {\n if (this._pages[i]) {\n this._pages[i].cancelRendering();\n }\n }\n }\n }, {\n key: \"_ensurePdfPageLoaded\",\n value: function _ensurePdfPageLoaded(pageView) {\n var _this3 = this;\n\n if (pageView.pdfPage) {\n return Promise.resolve(pageView.pdfPage);\n }\n\n if (this._pagesRequests.has(pageView)) {\n return this._pagesRequests.get(pageView);\n }\n\n var promise = this.pdfDocument.getPage(pageView.id).then(function (pdfPage) {\n if (!pageView.pdfPage) {\n pageView.setPdfPage(pdfPage);\n }\n\n _this3._pagesRequests[\"delete\"](pageView);\n\n return pdfPage;\n })[\"catch\"](function (reason) {\n console.error(\"Unable to get page for page view\", reason);\n\n _this3._pagesRequests[\"delete\"](pageView);\n });\n\n this._pagesRequests.set(pageView, promise);\n\n return promise;\n }\n }, {\n key: \"forceRendering\",\n value: function forceRendering(currentlyVisiblePages) {\n var _this4 = this;\n\n var visiblePages = currentlyVisiblePages || this._getVisiblePages();\n\n var scrollAhead = this._isScrollModeHorizontal ? this.scroll.right : this.scroll.down;\n var preRenderExtra = this._scrollMode === _ui_utils.ScrollMode.VERTICAL && this._spreadMode !== _ui_utils.SpreadMode.NONE && !this.isInPresentationMode;\n var pageView = this.renderingQueue.getHighestPriority(visiblePages, this._pages, scrollAhead, preRenderExtra);\n\n if (pageView) {\n this._ensurePdfPageLoaded(pageView).then(function () {\n _this4.renderingQueue.renderView(pageView);\n });\n\n return true;\n }\n\n return false;\n }\n }, {\n key: \"createTextLayerBuilder\",\n value: function createTextLayerBuilder(textLayerDiv, pageIndex, viewport) {\n var enhanceTextSelection = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false;\n var eventBus = arguments.length > 4 ? arguments[4] : undefined;\n var highlighter = arguments.length > 5 ? arguments[5] : undefined;\n return new _text_layer_builder.TextLayerBuilder({\n textLayerDiv: textLayerDiv,\n eventBus: eventBus,\n pageIndex: pageIndex,\n viewport: viewport,\n enhanceTextSelection: this.isInPresentationMode ? false : enhanceTextSelection,\n highlighter: highlighter\n });\n }\n }, {\n key: \"createTextHighlighter\",\n value: function createTextHighlighter(pageIndex, eventBus) {\n return new _text_highlighter.TextHighlighter({\n eventBus: eventBus,\n pageIndex: pageIndex,\n findController: this.isInPresentationMode ? null : this.findController\n });\n }\n }, {\n key: \"createAnnotationLayerBuilder\",\n value: function createAnnotationLayerBuilder(pageDiv, pdfPage) {\n var _this$pdfDocument, _this$pdfDocument2, _this$pdfDocument3, _this$_scriptingManag;\n\n var annotationStorage = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null;\n var imageResourcesPath = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : \"\";\n var renderForms = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : true;\n var l10n = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : _l10n_utils.NullL10n;\n var enableScripting = arguments.length > 6 && arguments[6] !== undefined ? arguments[6] : null;\n var hasJSActionsPromise = arguments.length > 7 && arguments[7] !== undefined ? arguments[7] : null;\n var mouseState = arguments.length > 8 && arguments[8] !== undefined ? arguments[8] : null;\n var fieldObjectsPromise = arguments.length > 9 && arguments[9] !== undefined ? arguments[9] : null;\n return new _annotation_layer_builder.AnnotationLayerBuilder({\n pageDiv: pageDiv,\n pdfPage: pdfPage,\n annotationStorage: annotationStorage || ((_this$pdfDocument = this.pdfDocument) === null || _this$pdfDocument === void 0 ? void 0 : _this$pdfDocument.annotationStorage),\n imageResourcesPath: imageResourcesPath,\n renderForms: renderForms,\n linkService: this.linkService,\n downloadManager: this.downloadManager,\n l10n: l10n,\n enableScripting: enableScripting !== null && enableScripting !== void 0 ? enableScripting : this.enableScripting,\n hasJSActionsPromise: hasJSActionsPromise || ((_this$pdfDocument2 = this.pdfDocument) === null || _this$pdfDocument2 === void 0 ? void 0 : _this$pdfDocument2.hasJSActions()),\n fieldObjectsPromise: fieldObjectsPromise || ((_this$pdfDocument3 = this.pdfDocument) === null || _this$pdfDocument3 === void 0 ? void 0 : _this$pdfDocument3.getFieldObjects()),\n mouseState: mouseState || ((_this$_scriptingManag = this._scriptingManager) === null || _this$_scriptingManag === void 0 ? void 0 : _this$_scriptingManag.mouseState)\n });\n }\n }, {\n key: \"createXfaLayerBuilder\",\n value: function createXfaLayerBuilder(pageDiv, pdfPage) {\n var _this$pdfDocument4;\n\n var annotationStorage = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null;\n return new _xfa_layer_builder.XfaLayerBuilder({\n pageDiv: pageDiv,\n pdfPage: pdfPage,\n annotationStorage: annotationStorage || ((_this$pdfDocument4 = this.pdfDocument) === null || _this$pdfDocument4 === void 0 ? void 0 : _this$pdfDocument4.annotationStorage),\n linkService: this.linkService\n });\n }\n }, {\n key: \"createStructTreeLayerBuilder\",\n value: function createStructTreeLayerBuilder(pdfPage) {\n return new _struct_tree_layer_builder.StructTreeLayerBuilder({\n pdfPage: pdfPage\n });\n }\n }, {\n key: \"hasEqualPageSizes\",\n get: function get() {\n var firstPageView = this._pages[0];\n\n for (var i = 1, ii = this._pages.length; i < ii; ++i) {\n var pageView = this._pages[i];\n\n if (pageView.width !== firstPageView.width || pageView.height !== firstPageView.height) {\n return false;\n }\n }\n\n return true;\n }\n }, {\n key: \"getPagesOverview\",\n value: function getPagesOverview() {\n var _this5 = this;\n\n return this._pages.map(function (pageView) {\n var viewport = pageView.pdfPage.getViewport({\n scale: 1\n });\n\n if (!_this5.enablePrintAutoRotate || (0, _ui_utils.isPortraitOrientation)(viewport)) {\n return {\n width: viewport.width,\n height: viewport.height,\n rotation: viewport.rotation\n };\n }\n\n return {\n width: viewport.height,\n height: viewport.width,\n rotation: (viewport.rotation - 90) % 360\n };\n });\n }\n }, {\n key: \"optionalContentConfigPromise\",\n get: function get() {\n if (!this.pdfDocument) {\n return Promise.resolve(null);\n }\n\n if (!this._optionalContentConfigPromise) {\n return this.pdfDocument.getOptionalContentConfig();\n }\n\n return this._optionalContentConfigPromise;\n },\n set: function set(promise) {\n if (!(promise instanceof Promise)) {\n throw new Error(\"Invalid optionalContentConfigPromise: \".concat(promise));\n }\n\n if (!this.pdfDocument) {\n return;\n }\n\n if (!this._optionalContentConfigPromise) {\n return;\n }\n\n this._optionalContentConfigPromise = promise;\n var updateArgs = {\n optionalContentConfigPromise: promise\n };\n\n var _iterator3 = _createForOfIteratorHelper(this._pages),\n _step3;\n\n try {\n for (_iterator3.s(); !(_step3 = _iterator3.n()).done;) {\n var pageView = _step3.value;\n pageView.update(updateArgs);\n }\n } catch (err) {\n _iterator3.e(err);\n } finally {\n _iterator3.f();\n }\n\n this.update();\n this.eventBus.dispatch(\"optionalcontentconfigchanged\", {\n source: this,\n promise: promise\n });\n }\n }, {\n key: \"scrollMode\",\n get: function get() {\n return this._scrollMode;\n },\n set: function set(mode) {\n if (this._scrollMode === mode) {\n return;\n }\n\n if (!(0, _ui_utils.isValidScrollMode)(mode)) {\n throw new Error(\"Invalid scroll mode: \".concat(mode));\n }\n\n this._scrollMode = mode;\n this.eventBus.dispatch(\"scrollmodechanged\", {\n source: this,\n mode: mode\n });\n\n this._updateScrollMode(this._currentPageNumber);\n }\n }, {\n key: \"_updateScrollMode\",\n value: function _updateScrollMode() {\n var pageNumber = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;\n var scrollMode = this._scrollMode,\n viewer = this.viewer;\n viewer.classList.toggle(\"scrollHorizontal\", scrollMode === _ui_utils.ScrollMode.HORIZONTAL);\n viewer.classList.toggle(\"scrollWrapped\", scrollMode === _ui_utils.ScrollMode.WRAPPED);\n\n if (!this.pdfDocument || !pageNumber) {\n return;\n }\n\n if (this._currentScaleValue && isNaN(this._currentScaleValue)) {\n this._setScale(this._currentScaleValue, true);\n }\n\n this._setCurrentPageNumber(pageNumber, true);\n\n this.update();\n }\n }, {\n key: \"spreadMode\",\n get: function get() {\n return this._spreadMode;\n },\n set: function set(mode) {\n if (this._spreadMode === mode) {\n return;\n }\n\n if (!(0, _ui_utils.isValidSpreadMode)(mode)) {\n throw new Error(\"Invalid spread mode: \".concat(mode));\n }\n\n this._spreadMode = mode;\n this.eventBus.dispatch(\"spreadmodechanged\", {\n source: this,\n mode: mode\n });\n\n this._updateSpreadMode(this._currentPageNumber);\n }\n }, {\n key: \"_updateSpreadMode\",\n value: function _updateSpreadMode() {\n var pageNumber = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;\n\n if (!this.pdfDocument) {\n return;\n }\n\n var viewer = this.viewer,\n pages = this._pages;\n viewer.textContent = \"\";\n\n if (this._spreadMode === _ui_utils.SpreadMode.NONE) {\n for (var i = 0, iMax = pages.length; i < iMax; ++i) {\n viewer.appendChild(pages[i].div);\n }\n } else {\n var parity = this._spreadMode - 1;\n var spread = null;\n\n for (var _i = 0, _iMax = pages.length; _i < _iMax; ++_i) {\n if (spread === null) {\n spread = document.createElement(\"div\");\n spread.className = \"spread\";\n viewer.appendChild(spread);\n } else if (_i % 2 === parity) {\n spread = spread.cloneNode(false);\n viewer.appendChild(spread);\n }\n\n spread.appendChild(pages[_i].div);\n }\n }\n\n if (!pageNumber) {\n return;\n }\n\n if (this._currentScaleValue && isNaN(this._currentScaleValue)) {\n this._setScale(this._currentScaleValue, true);\n }\n\n this._setCurrentPageNumber(pageNumber, true);\n\n this.update();\n }\n }, {\n key: \"_getPageAdvance\",\n value: function _getPageAdvance(currentPageNumber) {\n var previous = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n\n if (this.isInPresentationMode) {\n return 1;\n }\n\n switch (this._scrollMode) {\n case _ui_utils.ScrollMode.WRAPPED:\n {\n var _this$_getVisiblePage = this._getVisiblePages(),\n views = _this$_getVisiblePage.views,\n pageLayout = new Map();\n\n var _iterator4 = _createForOfIteratorHelper(views),\n _step4;\n\n try {\n for (_iterator4.s(); !(_step4 = _iterator4.n()).done;) {\n var _step4$value = _step4.value,\n id = _step4$value.id,\n y = _step4$value.y,\n percent = _step4$value.percent,\n widthPercent = _step4$value.widthPercent;\n\n if (percent === 0 || widthPercent < 100) {\n continue;\n }\n\n var yArray = pageLayout.get(y);\n\n if (!yArray) {\n pageLayout.set(y, yArray || (yArray = []));\n }\n\n yArray.push(id);\n }\n } catch (err) {\n _iterator4.e(err);\n } finally {\n _iterator4.f();\n }\n\n var _iterator5 = _createForOfIteratorHelper(pageLayout.values()),\n _step5;\n\n try {\n for (_iterator5.s(); !(_step5 = _iterator5.n()).done;) {\n var _yArray = _step5.value;\n\n var currentIndex = _yArray.indexOf(currentPageNumber);\n\n if (currentIndex === -1) {\n continue;\n }\n\n var numPages = _yArray.length;\n\n if (numPages === 1) {\n break;\n }\n\n if (previous) {\n for (var i = currentIndex - 1, ii = 0; i >= ii; i--) {\n var currentId = _yArray[i],\n expectedId = _yArray[i + 1] - 1;\n\n if (currentId < expectedId) {\n return currentPageNumber - expectedId;\n }\n }\n } else {\n for (var _i2 = currentIndex + 1, _ii = numPages; _i2 < _ii; _i2++) {\n var _currentId = _yArray[_i2],\n _expectedId = _yArray[_i2 - 1] + 1;\n\n if (_currentId > _expectedId) {\n return _expectedId - currentPageNumber;\n }\n }\n }\n\n if (previous) {\n var firstId = _yArray[0];\n\n if (firstId < currentPageNumber) {\n return currentPageNumber - firstId + 1;\n }\n } else {\n var lastId = _yArray[numPages - 1];\n\n if (lastId > currentPageNumber) {\n return lastId - currentPageNumber + 1;\n }\n }\n\n break;\n }\n } catch (err) {\n _iterator5.e(err);\n } finally {\n _iterator5.f();\n }\n\n break;\n }\n\n case _ui_utils.ScrollMode.HORIZONTAL:\n {\n break;\n }\n\n case _ui_utils.ScrollMode.VERTICAL:\n {\n if (this._spreadMode === _ui_utils.SpreadMode.NONE) {\n break;\n }\n\n var parity = this._spreadMode - 1;\n\n if (previous && currentPageNumber % 2 !== parity) {\n break;\n } else if (!previous && currentPageNumber % 2 === parity) {\n break;\n }\n\n var _this$_getVisiblePage2 = this._getVisiblePages(),\n _views = _this$_getVisiblePage2.views,\n _expectedId2 = previous ? currentPageNumber - 1 : currentPageNumber + 1;\n\n var _iterator6 = _createForOfIteratorHelper(_views),\n _step6;\n\n try {\n for (_iterator6.s(); !(_step6 = _iterator6.n()).done;) {\n var _step6$value = _step6.value,\n _id = _step6$value.id,\n _percent = _step6$value.percent,\n _widthPercent = _step6$value.widthPercent;\n\n if (_id !== _expectedId2) {\n continue;\n }\n\n if (_percent > 0 && _widthPercent === 100) {\n return 2;\n }\n\n break;\n }\n } catch (err) {\n _iterator6.e(err);\n } finally {\n _iterator6.f();\n }\n\n break;\n }\n }\n\n return 1;\n }\n }, {\n key: \"nextPage\",\n value: function nextPage() {\n var currentPageNumber = this._currentPageNumber,\n pagesCount = this.pagesCount;\n\n if (currentPageNumber >= pagesCount) {\n return false;\n }\n\n var advance = this._getPageAdvance(currentPageNumber, false) || 1;\n this.currentPageNumber = Math.min(currentPageNumber + advance, pagesCount);\n return true;\n }\n }, {\n key: \"previousPage\",\n value: function previousPage() {\n var currentPageNumber = this._currentPageNumber;\n\n if (currentPageNumber <= 1) {\n return false;\n }\n\n var advance = this._getPageAdvance(currentPageNumber, true) || 1;\n this.currentPageNumber = Math.max(currentPageNumber - advance, 1);\n return true;\n }\n }, {\n key: \"increaseScale\",\n value: function increaseScale() {\n var steps = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 1;\n var newScale = this._currentScale;\n\n do {\n newScale = (newScale * _ui_utils.DEFAULT_SCALE_DELTA).toFixed(2);\n newScale = Math.ceil(newScale * 10) / 10;\n newScale = Math.min(_ui_utils.MAX_SCALE, newScale);\n } while (--steps > 0 && newScale < _ui_utils.MAX_SCALE);\n\n this.currentScaleValue = newScale;\n }\n }, {\n key: \"decreaseScale\",\n value: function decreaseScale() {\n var steps = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 1;\n var newScale = this._currentScale;\n\n do {\n newScale = (newScale / _ui_utils.DEFAULT_SCALE_DELTA).toFixed(2);\n newScale = Math.floor(newScale * 10) / 10;\n newScale = Math.max(_ui_utils.MIN_SCALE, newScale);\n } while (--steps > 0 && newScale > _ui_utils.MIN_SCALE);\n\n this.currentScaleValue = newScale;\n }\n }]);\n\n return BaseViewer;\n}();\n\nexports.BaseViewer = BaseViewer;\n\n/***/ }),\n/* 24 */\n/***/ ((__unused_webpack_module, exports) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.TextHighlighter = void 0;\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nvar TextHighlighter = /*#__PURE__*/function () {\n function TextHighlighter(_ref) {\n var findController = _ref.findController,\n eventBus = _ref.eventBus,\n pageIndex = _ref.pageIndex;\n\n _classCallCheck(this, TextHighlighter);\n\n this.findController = findController;\n this.matches = [];\n this.eventBus = eventBus;\n this.pageIdx = pageIndex;\n this._onUpdateTextLayerMatches = null;\n this.textDivs = null;\n this.textContentItemsStr = null;\n this.enabled = false;\n }\n\n _createClass(TextHighlighter, [{\n key: \"setTextMapping\",\n value: function setTextMapping(divs, texts) {\n this.textDivs = divs;\n this.textContentItemsStr = texts;\n }\n }, {\n key: \"enable\",\n value: function enable() {\n var _this = this;\n\n if (!this.textDivs || !this.textContentItemsStr) {\n throw new Error(\"Text divs and strings have not been set.\");\n }\n\n if (this.enabled) {\n throw new Error(\"TextHighlighter is already enabled.\");\n }\n\n this.enabled = true;\n\n if (!this._onUpdateTextLayerMatches) {\n this._onUpdateTextLayerMatches = function (evt) {\n if (evt.pageIndex === _this.pageIdx || evt.pageIndex === -1) {\n _this._updateMatches();\n }\n };\n\n this.eventBus._on(\"updatetextlayermatches\", this._onUpdateTextLayerMatches);\n }\n\n this._updateMatches();\n }\n }, {\n key: \"disable\",\n value: function disable() {\n if (!this.enabled) {\n return;\n }\n\n this.enabled = false;\n\n if (this._onUpdateTextLayerMatches) {\n this.eventBus._off(\"updatetextlayermatches\", this._onUpdateTextLayerMatches);\n\n this._onUpdateTextLayerMatches = null;\n }\n }\n }, {\n key: \"_convertMatches\",\n value: function _convertMatches(matches, matchesLength) {\n if (!matches) {\n return [];\n }\n\n var textContentItemsStr = this.textContentItemsStr;\n var i = 0,\n iIndex = 0;\n var end = textContentItemsStr.length - 1;\n var result = [];\n\n for (var m = 0, mm = matches.length; m < mm; m++) {\n var matchIdx = matches[m];\n\n while (i !== end && matchIdx >= iIndex + textContentItemsStr[i].length) {\n iIndex += textContentItemsStr[i].length;\n i++;\n }\n\n if (i === textContentItemsStr.length) {\n console.error(\"Could not find a matching mapping\");\n }\n\n var match = {\n begin: {\n divIdx: i,\n offset: matchIdx - iIndex\n }\n };\n matchIdx += matchesLength[m];\n\n while (i !== end && matchIdx > iIndex + textContentItemsStr[i].length) {\n iIndex += textContentItemsStr[i].length;\n i++;\n }\n\n match.end = {\n divIdx: i,\n offset: matchIdx - iIndex\n };\n result.push(match);\n }\n\n return result;\n }\n }, {\n key: \"_renderMatches\",\n value: function _renderMatches(matches) {\n if (matches.length === 0) {\n return;\n }\n\n var findController = this.findController,\n pageIdx = this.pageIdx;\n var textContentItemsStr = this.textContentItemsStr,\n textDivs = this.textDivs;\n var isSelectedPage = pageIdx === findController.selected.pageIdx;\n var selectedMatchIdx = findController.selected.matchIdx;\n var highlightAll = findController.state.highlightAll;\n var prevEnd = null;\n var infinity = {\n divIdx: -1,\n offset: undefined\n };\n\n function beginText(begin, className) {\n var divIdx = begin.divIdx;\n textDivs[divIdx].textContent = \"\";\n return appendTextToDiv(divIdx, 0, begin.offset, className);\n }\n\n function appendTextToDiv(divIdx, fromOffset, toOffset, className) {\n var div = textDivs[divIdx];\n\n if (div.nodeType === Node.TEXT_NODE) {\n var span = document.createElement(\"span\");\n div.parentNode.insertBefore(span, div);\n span.appendChild(div);\n textDivs[divIdx] = span;\n div = span;\n }\n\n var content = textContentItemsStr[divIdx].substring(fromOffset, toOffset);\n var node = document.createTextNode(content);\n\n if (className) {\n var _span = document.createElement(\"span\");\n\n _span.className = \"\".concat(className, \" appended\");\n\n _span.appendChild(node);\n\n div.appendChild(_span);\n return className.includes(\"selected\") ? _span.offsetLeft : 0;\n }\n\n div.appendChild(node);\n return 0;\n }\n\n var i0 = selectedMatchIdx,\n i1 = i0 + 1;\n\n if (highlightAll) {\n i0 = 0;\n i1 = matches.length;\n } else if (!isSelectedPage) {\n return;\n }\n\n for (var i = i0; i < i1; i++) {\n var match = matches[i];\n var begin = match.begin;\n var end = match.end;\n var isSelected = isSelectedPage && i === selectedMatchIdx;\n var highlightSuffix = isSelected ? \" selected\" : \"\";\n var selectedLeft = 0;\n\n if (!prevEnd || begin.divIdx !== prevEnd.divIdx) {\n if (prevEnd !== null) {\n appendTextToDiv(prevEnd.divIdx, prevEnd.offset, infinity.offset);\n }\n\n beginText(begin);\n } else {\n appendTextToDiv(prevEnd.divIdx, prevEnd.offset, begin.offset);\n }\n\n if (begin.divIdx === end.divIdx) {\n selectedLeft = appendTextToDiv(begin.divIdx, begin.offset, end.offset, \"highlight\" + highlightSuffix);\n } else {\n selectedLeft = appendTextToDiv(begin.divIdx, begin.offset, infinity.offset, \"highlight begin\" + highlightSuffix);\n\n for (var n0 = begin.divIdx + 1, n1 = end.divIdx; n0 < n1; n0++) {\n textDivs[n0].className = \"highlight middle\" + highlightSuffix;\n }\n\n beginText(end, \"highlight end\" + highlightSuffix);\n }\n\n prevEnd = end;\n\n if (isSelected) {\n findController.scrollMatchIntoView({\n element: textDivs[begin.divIdx],\n selectedLeft: selectedLeft,\n pageIndex: pageIdx,\n matchIndex: selectedMatchIdx\n });\n }\n }\n\n if (prevEnd) {\n appendTextToDiv(prevEnd.divIdx, prevEnd.offset, infinity.offset);\n }\n }\n }, {\n key: \"_updateMatches\",\n value: function _updateMatches() {\n if (!this.enabled) {\n return;\n }\n\n var findController = this.findController,\n matches = this.matches,\n pageIdx = this.pageIdx;\n var textContentItemsStr = this.textContentItemsStr,\n textDivs = this.textDivs;\n var clearedUntilDivIdx = -1;\n\n for (var i = 0, ii = matches.length; i < ii; i++) {\n var match = matches[i];\n var begin = Math.max(clearedUntilDivIdx, match.begin.divIdx);\n\n for (var n = begin, end = match.end.divIdx; n <= end; n++) {\n var div = textDivs[n];\n div.textContent = textContentItemsStr[n];\n div.className = \"\";\n }\n\n clearedUntilDivIdx = match.end.divIdx + 1;\n }\n\n if (!(findController !== null && findController !== void 0 && findController.highlightMatches)) {\n return;\n }\n\n var pageMatches = findController.pageMatches[pageIdx] || null;\n var pageMatchesLength = findController.pageMatchesLength[pageIdx] || null;\n this.matches = this._convertMatches(pageMatches, pageMatchesLength);\n\n this._renderMatches(this.matches);\n }\n }]);\n\n return TextHighlighter;\n}();\n\nexports.TextHighlighter = TextHighlighter;\n\n/***/ }),\n/* 25 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.PDFViewer = void 0;\n\nvar _ui_utils = __w_pdfjs_require__(7);\n\nvar _base_viewer = __w_pdfjs_require__(23);\n\nvar _pdfjsLib = __w_pdfjs_require__(4);\n\nfunction _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it[\"return\"] != null) it[\"return\"](); } finally { if (didErr) throw err; } } }; }\n\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction _get(target, property, receiver) { if (typeof Reflect !== \"undefined\" && Reflect.get) { _get = Reflect.get; } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(receiver); } return desc.value; }; } return _get(target, property, receiver || target); }\n\nfunction _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } else if (call !== void 0) { throw new TypeError(\"Derived constructors may only return object or undefined\"); } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\nvar PDFViewer = /*#__PURE__*/function (_BaseViewer) {\n _inherits(PDFViewer, _BaseViewer);\n\n var _super = _createSuper(PDFViewer);\n\n function PDFViewer() {\n _classCallCheck(this, PDFViewer);\n\n return _super.apply(this, arguments);\n }\n\n _createClass(PDFViewer, [{\n key: \"_viewerElement\",\n get: function get() {\n return (0, _pdfjsLib.shadow)(this, \"_viewerElement\", this.viewer);\n }\n }, {\n key: \"_scrollIntoView\",\n value: function _scrollIntoView(_ref) {\n var pageDiv = _ref.pageDiv,\n _ref$pageSpot = _ref.pageSpot,\n pageSpot = _ref$pageSpot === void 0 ? null : _ref$pageSpot,\n _ref$pageNumber = _ref.pageNumber,\n pageNumber = _ref$pageNumber === void 0 ? null : _ref$pageNumber;\n\n if (!pageSpot && !this.isInPresentationMode) {\n var left = pageDiv.offsetLeft + pageDiv.clientLeft;\n var right = left + pageDiv.clientWidth;\n var _this$container = this.container,\n scrollLeft = _this$container.scrollLeft,\n clientWidth = _this$container.clientWidth;\n\n if (this._isScrollModeHorizontal || left < scrollLeft || right > scrollLeft + clientWidth) {\n pageSpot = {\n left: 0,\n top: 0\n };\n }\n }\n\n _get(_getPrototypeOf(PDFViewer.prototype), \"_scrollIntoView\", this).call(this, {\n pageDiv: pageDiv,\n pageSpot: pageSpot,\n pageNumber: pageNumber\n });\n }\n }, {\n key: \"_getVisiblePages\",\n value: function _getVisiblePages() {\n if (this.isInPresentationMode) {\n return this._getCurrentVisiblePage();\n }\n\n return _get(_getPrototypeOf(PDFViewer.prototype), \"_getVisiblePages\", this).call(this);\n }\n }, {\n key: \"_updateHelper\",\n value: function _updateHelper(visiblePages) {\n if (this.isInPresentationMode) {\n return;\n }\n\n var currentId = this._currentPageNumber;\n var stillFullyVisible = false;\n\n var _iterator = _createForOfIteratorHelper(visiblePages),\n _step;\n\n try {\n for (_iterator.s(); !(_step = _iterator.n()).done;) {\n var page = _step.value;\n\n if (page.percent < 100) {\n break;\n }\n\n if (page.id === currentId && this._scrollMode === _ui_utils.ScrollMode.VERTICAL && this._spreadMode === _ui_utils.SpreadMode.NONE) {\n stillFullyVisible = true;\n break;\n }\n }\n } catch (err) {\n _iterator.e(err);\n } finally {\n _iterator.f();\n }\n\n if (!stillFullyVisible) {\n currentId = visiblePages[0].id;\n }\n\n this._setCurrentPageNumber(currentId);\n }\n }]);\n\n return PDFViewer;\n}(_base_viewer.BaseViewer);\n\nexports.PDFViewer = PDFViewer;\n\n/***/ })\n/******/ \t]);\n/************************************************************************/\n/******/ \t// The module cache\n/******/ \tvar __webpack_module_cache__ = {};\n/******/ \t\n/******/ \t// The require function\n/******/ \tfunction __w_pdfjs_require__(moduleId) {\n/******/ \t\t// Check if module is in cache\n/******/ \t\tvar cachedModule = __webpack_module_cache__[moduleId];\n/******/ \t\tif (cachedModule !== undefined) {\n/******/ \t\t\treturn cachedModule.exports;\n/******/ \t\t}\n/******/ \t\t// Create a new module (and put it into the cache)\n/******/ \t\tvar module = __webpack_module_cache__[moduleId] = {\n/******/ \t\t\tid: moduleId,\n/******/ \t\t\tloaded: false,\n/******/ \t\t\texports: {}\n/******/ \t\t};\n/******/ \t\n/******/ \t\t// Execute the module function\n/******/ \t\t__webpack_modules__[moduleId](module, module.exports, __w_pdfjs_require__);\n/******/ \t\n/******/ \t\t// Flag the module as loaded\n/******/ \t\tmodule.loaded = true;\n/******/ \t\n/******/ \t\t// Return the exports of the module\n/******/ \t\treturn module.exports;\n/******/ \t}\n/******/ \t\n/************************************************************************/\n/******/ \t/* webpack/runtime/node module decorator */\n/******/ \t(() => {\n/******/ \t\t__w_pdfjs_require__.nmd = (module) => {\n/******/ \t\t\tmodule.paths = [];\n/******/ \t\t\tif (!module.children) module.children = [];\n/******/ \t\t\treturn module;\n/******/ \t\t};\n/******/ \t})();\n/******/ \t\n/************************************************************************/\nvar __webpack_exports__ = {};\n// This entry need to be wrapped in an IIFE because it need to be isolated against other modules in the chunk.\n(() => {\nvar exports = __webpack_exports__;\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nObject.defineProperty(exports, \"AnnotationLayerBuilder\", ({\n enumerable: true,\n get: function get() {\n return _annotation_layer_builder.AnnotationLayerBuilder;\n }\n}));\nObject.defineProperty(exports, \"DefaultAnnotationLayerFactory\", ({\n enumerable: true,\n get: function get() {\n return _annotation_layer_builder.DefaultAnnotationLayerFactory;\n }\n}));\nObject.defineProperty(exports, \"DefaultStructTreeLayerFactory\", ({\n enumerable: true,\n get: function get() {\n return _struct_tree_layer_builder.DefaultStructTreeLayerFactory;\n }\n}));\nObject.defineProperty(exports, \"StructTreeLayerBuilder\", ({\n enumerable: true,\n get: function get() {\n return _struct_tree_layer_builder.StructTreeLayerBuilder;\n }\n}));\nObject.defineProperty(exports, \"DefaultTextLayerFactory\", ({\n enumerable: true,\n get: function get() {\n return _text_layer_builder.DefaultTextLayerFactory;\n }\n}));\nObject.defineProperty(exports, \"TextLayerBuilder\", ({\n enumerable: true,\n get: function get() {\n return _text_layer_builder.TextLayerBuilder;\n }\n}));\nObject.defineProperty(exports, \"DefaultXfaLayerFactory\", ({\n enumerable: true,\n get: function get() {\n return _xfa_layer_builder.DefaultXfaLayerFactory;\n }\n}));\nObject.defineProperty(exports, \"XfaLayerBuilder\", ({\n enumerable: true,\n get: function get() {\n return _xfa_layer_builder.XfaLayerBuilder;\n }\n}));\nObject.defineProperty(exports, \"EventBus\", ({\n enumerable: true,\n get: function get() {\n return _ui_utils.EventBus;\n }\n}));\nObject.defineProperty(exports, \"ProgressBar\", ({\n enumerable: true,\n get: function get() {\n return _ui_utils.ProgressBar;\n }\n}));\nObject.defineProperty(exports, \"PDFLinkService\", ({\n enumerable: true,\n get: function get() {\n return _pdf_link_service.PDFLinkService;\n }\n}));\nObject.defineProperty(exports, \"SimpleLinkService\", ({\n enumerable: true,\n get: function get() {\n return _pdf_link_service.SimpleLinkService;\n }\n}));\nObject.defineProperty(exports, \"DownloadManager\", ({\n enumerable: true,\n get: function get() {\n return _download_manager.DownloadManager;\n }\n}));\nObject.defineProperty(exports, \"GenericL10n\", ({\n enumerable: true,\n get: function get() {\n return _genericl10n.GenericL10n;\n }\n}));\nObject.defineProperty(exports, \"NullL10n\", ({\n enumerable: true,\n get: function get() {\n return _l10n_utils.NullL10n;\n }\n}));\nObject.defineProperty(exports, \"PDFFindController\", ({\n enumerable: true,\n get: function get() {\n return _pdf_find_controller.PDFFindController;\n }\n}));\nObject.defineProperty(exports, \"PDFHistory\", ({\n enumerable: true,\n get: function get() {\n return _pdf_history.PDFHistory;\n }\n}));\nObject.defineProperty(exports, \"PDFPageView\", ({\n enumerable: true,\n get: function get() {\n return _pdf_page_view.PDFPageView;\n }\n}));\nObject.defineProperty(exports, \"PDFScriptingManager\", ({\n enumerable: true,\n get: function get() {\n return _pdf_scripting_manager.PDFScriptingManager;\n }\n}));\nObject.defineProperty(exports, \"PDFSinglePageViewer\", ({\n enumerable: true,\n get: function get() {\n return _pdf_single_page_viewer.PDFSinglePageViewer;\n }\n}));\nObject.defineProperty(exports, \"PDFViewer\", ({\n enumerable: true,\n get: function get() {\n return _pdf_viewer.PDFViewer;\n }\n}));\n\nvar _annotation_layer_builder = __w_pdfjs_require__(1);\n\nvar _struct_tree_layer_builder = __w_pdfjs_require__(8);\n\nvar _text_layer_builder = __w_pdfjs_require__(9);\n\nvar _xfa_layer_builder = __w_pdfjs_require__(10);\n\nvar _ui_utils = __w_pdfjs_require__(7);\n\nvar _pdf_link_service = __w_pdfjs_require__(6);\n\nvar _download_manager = __w_pdfjs_require__(11);\n\nvar _genericl10n = __w_pdfjs_require__(13);\n\nvar _l10n_utils = __w_pdfjs_require__(5);\n\nvar _pdf_find_controller = __w_pdfjs_require__(15);\n\nvar _pdf_history = __w_pdfjs_require__(17);\n\nvar _pdf_page_view = __w_pdfjs_require__(18);\n\nvar _pdf_scripting_manager = __w_pdfjs_require__(20);\n\nvar _pdf_single_page_viewer = __w_pdfjs_require__(22);\n\nvar _pdf_viewer = __w_pdfjs_require__(25);\n\nvar pdfjsVersion = '2.11.338';\nvar pdfjsBuild = 'dedff3c98';\n})();\n\n/******/ \treturn __webpack_exports__;\n/******/ })()\n;\n});\n"],"sourceRoot":"webpack:///","file":"632.6fcb18fabb233060.js"}