{"version":3,"sources":["webpack:///./node_modules/pdfjs-dist/legacy/build/pdf.js"],"names":["factory","__webpack_modules__","__unused_webpack_module","exports","__w_pdfjs_require__","_typeof","obj","Symbol","iterator","constructor","prototype","Object","defineProperty","value","StatTimer","RenderingCancelledException","PixelsPerInch","PageViewport","PDFDateString","LinkTarget","DOMStandardFontDataFactory","DOMSVGFactory","DOMCanvasFactory","DOMCMapReaderFactory","addLinkAttributes","link","_ref4","arguments","length","undefined","url","target","rel","_ref4$enabled","enabled","_util","assert","urlNullRemoved","removeNullCharacters","href","title","concat","onclick","targetStr","NONE","SELF","BLANK","PARENT","TOP","deprecated","details","console","log","getFilenameFromUrl","anchor","indexOf","query","end","Math","min","substring","lastIndexOf","getPdfFilenameFromUrl","defaultFilename","isDataScheme","warn","reURI","reFilename","splitURI","exec","suggestedFilename","includes","decodeURIComponent","ex","getXfaPageViewport","xfaPage","_ref6","_ref6$scale","scale","_ref6$rotation","rotation","_xfaPage$attributes$s","attributes","style","width","height","viewBox","parseInt","isPdfFile","filename","test","isValidFetchUrl","loadScript","src","removeScriptElement","Promise","resolve","reject","script","document","createElement","onload","evt","remove","onerror","Error","head","documentElement","appendChild","_regenerator","__esModule","_base_factory","_createForOfIteratorHelper","o","allowArrayLike","it","Array","isArray","minLen","_arrayLikeToArray","n","toString","call","slice","name","from","_unsupportedIterableToArray","i","F","s","done","e","_e","f","TypeError","err","normalCompletion","didErr","step","next","_e2","arr","len","arr2","asyncGeneratorStep","gen","_next","_throw","key","arg","info","error","then","_asyncToGenerator","fn","self","this","args","apply","_classCallCheck","instance","Constructor","_defineProperties","props","descriptor","enumerable","configurable","writable","_createClass","protoProps","staticProps","_inherits","subClass","superClass","create","_setPrototypeOf","p","setPrototypeOf","__proto__","_createSuper","Derived","hasNativeReflectConstruct","Reflect","construct","sham","Proxy","Boolean","valueOf","_isNativeReflectConstruct","result","Super","_getPrototypeOf","NewTarget","_possibleConstructorReturn","ReferenceError","_assertThisInitialized","getPrototypeOf","CSS","PDF","shadow","_BaseCanvasFactory","_super","_this","_ref","_ref$ownerDocument","ownerDocument","globalThis","_document","canvas","BaseCanvasFactory","fetchData","_x","_fetchData","mark","_callee","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","data","status","responseText","send","stop","_BaseCMapReaderFactor","_super2","compressionType","isCompressed","cMapData","BaseCMapReaderFactory","_BaseStandardFontData","_super3","BaseStandardFontDataFactory","_BaseSVGFactory","_super4","type","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","ii","trim","toLowerCase","pdfDateStringRegex","started","times","Date","now","push","start","_step","outBuf","longest","_iterator","_step2","_iterator2","_time","duration","padEnd","join","baseUrl","protocol","URL","input","isString","RegExp","matches","year","month","day","hour","minute","second","universalTimeRelation","offsetHour","offsetMinute","UTC","module","__unused_webpack_exports","runtime","Op","hasOwn","hasOwnProperty","$Symbol","iteratorSymbol","asyncIteratorSymbol","asyncIterator","toStringTagSymbol","toStringTag","define","innerFn","outerFn","tryLocsList","protoGenerator","Generator","generator","context","Context","_invoke","state","method","delegate","delegateResult","maybeInvokeDelegate","ContinueSentinel","_sent","dispatchException","record","tryCatch","makeInvokeMethod","GeneratorFunction","GeneratorFunctionPrototype","IteratorPrototype","getProto","NativeIteratorPrototype","values","Gp","defineIteratorMethods","forEach","AsyncIterator","PromiseImpl","previousPromise","callInvokeWithMethodAndArg","invoke","__await","unwrapped","resultName","nextLoc","pushTryEntry","locs","entry","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","resetTryEntry","completion","reset","iterable","iteratorMethod","isNaN","doneResult","displayName","isGeneratorFunction","genFun","ctor","awrap","async","iter","keys","object","reverse","pop","skipTempReset","charAt","rootRecord","rval","exception","handle","loc","caught","hasCatch","hasFinally","finallyEntry","complete","finish","thrown","delegateYield","nmd","regeneratorRuntime","accidentalStrictMode","Function","_toConsumableArray","_arrayWithoutHoles","_iterableToArray","_nonIterableSpread","VerbosityLevel","UnknownErrorException","UnexpectedResponseException","UNSUPPORTED_FEATURES","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","arrayByteLength","arraysToBytes","resultLength","pos","_i","item","itemLength","byteLength","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","promise","reason","createValidAbsoluteUrl","options","addDefaultProtocol","startsWith","dots","match","tryConvertEncoding","stringToUTF8String","absoluteUrl","_isValidProtocol","escapeString","str","replace","getModificationDate","date","getUTCFullYear","getUTCMonth","padStart","getUTCDate","getUTCHours","getUTCMinutes","getUTCSeconds","getVerbosityLevel","verbosity","INFOS","isArrayBuffer","v","isArrayEqual","arr1","isAscii","isBool","isNum","isSameOrigin","otherUrl","base","origin","other","objectFromMap","map","_e3","_step$value","_arrayWithHoles","_s","_arr","_n","_d","_iterableToArrayLimit","_nonIterableRest","objectSize","replaceInvisible","InvisibleCharactersRegExp","NullCharactersRegExp","setVerbosityLevel","level","Number","isInteger","string32","stringToPDFString","charCodeAt","_i2","_i3","code","PDFStringTranslateTable","stringToUTF16BEString","buf","_char","unreachable","utf8StringToString","unescape","encodeURIComponent","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","K","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","prop","message","_BaseException2","_BaseException3","_BaseException4","_BaseException5","_this3","_BaseException6","_super6","_BaseException7","_super7","buffer8","Uint32Array","isEvalSupported","hexNumbers","r","g","b","m1","m2","m","d","p1","p2","p3","p4","max","transpose","a","c","first","sqrt","pow","sx","sy","rect1","rect2","compare","orderedX","sort","orderedY","normalizeRect","x0","y0","x1","y1","x2","y2","x3","y3","t","b2ac","sqrtb2ac","tvalues","bounds","mt","j","jlen","escape","_is_node","_pdfjsCompatibilityChecked","btoa","isNodeJS","chars","Buffer","atob","DOMMatrix","fromEntries","allSettled","ReadableStream","process","versions","nw","electron","$","global","getOwnPropertyDescriptor","createNonEnumerableProperty","redefine","setGlobal","copyConstructorProperties","isForced","source","targetProperty","sourceProperty","TARGET","GLOBAL","STATIC","stat","noTargetGet","forced","check","window","DESCRIPTORS","propertyIsEnumerableModule","createPropertyDescriptor","toIndexedObject","toPropertyKey","IE8_DOM_DEFINE","$getOwnPropertyDescriptor","P","fails","bind","$propertyIsEnumerable","propertyIsEnumerable","NASHORN_BUG","1","bitmap","IndexedObject","requireObjectCoercible","uncurryThis","classof","split","FunctionPrototype","callBind","stringSlice","toPrimitive","isSymbol","argument","isObject","getMethod","ordinaryToPrimitive","wellKnownSymbol","TO_PRIMITIVE","pref","exoticToPrim","isCallable","getBuiltIn","isPrototypeOf","USE_SYMBOL_AS_UID","aFunction","namespace","NATIVE_SYMBOL","V8_VERSION","getOwnPropertySymbols","symbol","version","userAgent","Deno","v8","aCallable","func","tryToString","val","shared","uid","WellKnownSymbolsStore","symbolFor","createWellKnownSymbol","withoutSetter","description","IS_PURE","store","mode","copyright","toObject","id","postfix","random","EXISTS","definePropertyModule","anObject","$defineProperty","Attributes","inspectSource","InternalStateModule","CONFIGURABLE_FUNCTION_NAME","CONFIGURABLE","getInternalState","enforceInternalState","enforce","TEMPLATE","unsafe","simple","functionToString","has","NATIVE_WEAK_MAP","sharedKey","hiddenKeys","WeakMap","wmget","wmhas","wmset","metadata","facade","STATE","getterFor","TYPE","getDescriptor","PROPER","ownKeys","getOwnPropertyDescriptorModule","getOwnPropertyNamesModule","getOwnPropertySymbolsModule","internalObjectKeys","getOwnPropertyNames","names","toAbsoluteIndex","lengthOfArrayLike","createMethod","IS_INCLUDES","$this","el","fromIndex","index","toIntegerOrInfinity","integer","ceil","floor","number","toLength","replacement","feature","detection","normalize","POLYFILL","NATIVE","string","__WEBPACK_AMD_DEFINE_FACTORY__","__WEBPACK_AMD_DEFINE_RESULT__","fromArray","array","CSSMatrix","every","m11","m12","m13","m14","m21","m22","m23","m24","m31","m32","m33","m34","m41","m42","m43","m44","M11","M12","M21","M22","M41","M42","fromMatrix","k","fromString","invalidStringError","filter","tf","ref","components","parseFloat","z","xyz","xyza","multiply","translate","rotateAxisAngle","rotate","some","skewX","skewY","axis","idx","axeValues","Translate","Rotate","rx","ry","rz","degToRad","radX","radY","radZ","cosx","cos","sinx","sin","cosy","siny","cosz","sinz","RotateAxisAngle","alpha","angle","sinA","cosA","sinA2","Y","Z","z2","Scale","SkewX","radA","tan","SkewY","Multiply","ARGS","l","setMatrixValue","prototypeAccessors","isIdentity","is2D","Float64Array","Float32Array","toArray","toJSON","assign","RX","RY","RZ","transformPoint","w","defineProperties","Version","path","addToUnscopables","Iterators","defineIterator","setInternalState","iterated","kind","Arguments","UNSCOPABLES","ArrayPrototype","activeXDocument","enumBugKeys","html","documentCreateElement","IE_PROTO","EmptyConstructor","scriptTag","content","LT","NullProtoObjectViaActiveX","write","close","temp","parentWindow","_NullProtoObject","ActiveXObject","iframeDocument","iframe","domain","display","contentWindow","Properties","objectKeys","FunctionName","createIteratorConstructor","setToStringTag","IteratorsCore","PROPER_FUNCTION_NAME","BUGGY_SAFARI_ITERATORS","ITERATOR","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","ENUMERABLE_NEXT","PrototypeOfArrayIteratorPrototype","arrayIterator","CORRECT_PROTOTYPE_GETTER","ObjectPrototype","TAG","aPossiblePrototype","setter","CORRECT_SETTER","iterate","createProperty","AS_ENTRIES","isArrayIteratorMethod","getIterator","getIteratorMethod","iteratorClose","Result","stopped","ResultPrototype","unboundFunction","iterFn","that","IS_ITERATOR","INTERRUPTED","condition","callFn","usingIterator","TO_STRING_TAG_SUPPORT","classofRaw","CORRECT_ARGUMENTS","tag","tryGet","callee","innerResult","innerError","propertyKey","clearErrorStack","installErrorCause","normalizeStringArgument","ERROR_STACK_INSTALLABLE","$AggregateError","errors","isInstance","AggregateErrorPrototype","stack","errorsArray","AggregateError","arraySlice","TEST","V8_OR_CHAKRA_STACK_ENTRY","IS_V8_OR_CHAKRA_STACK","IS_FIREFOX_OR_SAFARI_STACK","dropEntries","fin","cause","$default","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","PromisePrototype","newPromiseCapability","newGenericPromiseCapability","DISPATCH_EVENT","createEvent","dispatchEvent","NATIVE_REJECTION_EVENT","PromiseRejectionEvent","SUBCLASSING","PROMISE_CONSTRUCTOR_SOURCE","GLOBAL_CORE_JS_PROMISE","FakePromise","INCORRECT_ITERATION","all","isThenable","notify","isReject","notified","chain","reactions","exited","reaction","handler","fail","rejection","onHandleUnhandled","enter","exit","onUnhandled","event","initEvent","isUnhandled","emit","parent","unwrap","internalReject","internalResolve","wrapper","executor","onFulfilled","onRejected","$promiseResolve","counter","remaining","alreadyCalled","race","CONSTRUCTOR_NAME","Prototype","SAFE_CLOSING","called","iteratorWithReturn","SKIP_CLOSING","ITERATION_SUPPORT","aConstructor","defaultConstructor","S","isConstructor","noop","empty","constructorRegExp","INCORRECT_TO_STRING","isConstructorModern","location","defer","channel","port","IS_IOS","setImmediate","clear","clearImmediate","Dispatch","MessageChannel","queue","run","runner","listener","post","postMessage","host","nextTick","port2","port1","onmessage","addEventListener","importScripts","removeChild","setTimeout","flush","last","toggle","node","macrotask","IS_IOS_PEBBLE","IS_WEBOS_WEBKIT","MutationObserver","WebKitMutationObserver","queueMicrotaskDescriptor","queueMicrotask","createTextNode","observe","characterData","Pebble","promiseCapability","PromiseCapability","$$resolve","$$reject","any","alreadyResolved","alreadyRejected","real","onFinally","isFunction","point","CONVERT_TO_STRING","position","size","codeAt","SymbolPolyfill","globals","typeIsObject","rethrowAssertionErrorRejection","originalPromise","originalPromiseThen","originalPromiseResolve","originalPromiseReject","newPromise","promiseResolvedWith","promiseRejectedWith","PerformPromiseThen","uponPromise","uponFulfillment","uponRejection","transformPromiseWith","fulfillmentHandler","rejectionHandler","setPromiseIsHandledToTrue","globalQueueMicrotask","resolvedPromise","reflectCall","promiseCall","SimpleQueue","_cursor","_size","_front","_elements","_back","element","oldBack","newBack","QUEUE_MAX_ARRAY_SIZE","shift","oldFront","newFront","oldCursor","newCursor","elements","callback","peek","front","cursor","ReadableStreamReaderGenericInitialize","reader","stream","_ownerReadableStream","_reader","_state","defaultReaderClosedPromiseInitialize","defaultReaderClosedPromiseResolve","defaultReaderClosedPromiseInitializeAsResolved","defaultReaderClosedPromiseInitializeAsRejected","_storedError","ReadableStreamReaderGenericCancel","ReadableStreamCancel","ReadableStreamReaderGenericRelease","defaultReaderClosedPromiseReject","defaultReaderClosedPromiseResetToRejected","readerLockException","_closedPromise","_closedPromise_resolve","_closedPromise_reject","AbortSteps","ErrorSteps","CancelSteps","PullSteps","NumberIsFinite","isFinite","MathTrunc","trunc","assertDictionary","assertFunction","assertObject","assertRequiredArgument","assertRequiredField","field","convertUnrestrictedDouble","censorNegativeZero","convertUnsignedLongLongWithEnforceRange","upperBound","MAX_SAFE_INTEGER","integerPart","assertReadableStream","IsReadableStream","AcquireReadableStreamDefaultReader","ReadableStreamDefaultReader","ReadableStreamAddReadRequest","readRequest","_readRequests","ReadableStreamFulfillReadRequest","_closeSteps","_chunkSteps","ReadableStreamGetNumReadRequests","ReadableStreamHasDefaultReader","IsReadableStreamDefaultReader","_a","AsyncIteratorPrototype","IsReadableStreamLocked","defaultReaderBrandCheckException","cancel","read","resolvePromise","rejectPromise","ReadableStreamDefaultReaderRead","_errorSteps","releaseLock","_disturbed","_readableStreamController","closed","ReadableStreamAsyncIteratorImpl","preventCancel","_ongoingPromise","_isFinished","_preventCancel","nextSteps","_nextSteps","return","returnSteps","_returnSteps","ReadableStreamAsyncIteratorPrototype","IsReadableStreamAsyncIterator","_asyncIteratorImpl","streamAsyncIteratorBrandCheckException","NumberIsNaN","CreateArrayFromList","CopyDataBlockBytes","dest","destOffset","srcOffset","ArrayBufferSlice","begin","ArrayBuffer","CloneAsUint8Array","byteOffset","DequeueValue","container","pair","_queue","_queueTotalSize","EnqueueValueWithSize","Infinity","RangeError","ResetQueue","ReadableStreamBYOBRequest","IsReadableStreamBYOBRequest","byobRequestBrandCheckException","_view","respond","bytesWritten","_associatedReadableByteStreamController","ReadableByteStreamControllerRespond","respondWithNewView","view","isView","ReadableByteStreamControllerRespondWithNewView","ReadableByteStreamController","IsReadableByteStreamController","byteStreamControllerBrandCheckException","ReadableByteStreamControllerGetBYOBRequest","ReadableByteStreamControllerGetDesiredSize","_closeRequested","_controlledReadableByteStream","ReadableByteStreamControllerClose","enqueue","ReadableByteStreamControllerEnqueue","ReadableByteStreamControllerError","ReadableByteStreamControllerClearPendingPullIntos","_cancelAlgorithm","ReadableByteStreamControllerClearAlgorithms","ReadableByteStreamControllerHandleQueueDrain","autoAllocateChunkSize","_autoAllocateChunkSize","bufferE","pullIntoDescriptor","bufferByteLength","bytesFilled","elementSize","viewConstructor","readerType","_pendingPullIntos","ReadableByteStreamControllerCallPullIfNeeded","controller","_started","ReadableStreamHasBYOBReader","ReadableStreamGetNumReadIntoRequests","ReadableByteStreamControllerShouldCallPull","_pulling","_pullAgain","_pullAlgorithm","ReadableByteStreamControllerInvalidateBYOBRequest","ReadableByteStreamControllerCommitPullIntoDescriptor","filledView","ReadableByteStreamControllerConvertPullIntoDescriptor","readIntoRequest","_readIntoRequests","ReadableStreamFulfillReadIntoRequest","ReadableByteStreamControllerEnqueueChunkToQueue","ReadableByteStreamControllerFillPullIntoDescriptorFromQueue","currentAlignedBytes","maxBytesToCopy","maxBytesFilled","maxAlignedBytes","totalBytesToCopyRemaining","ready","headOfQueue","bytesToCopy","destStart","ReadableByteStreamControllerFillHeadPullIntoDescriptor","ReadableStreamClose","_byobRequest","ReadableByteStreamControllerProcessPullIntoDescriptorsUsingQueue","ReadableByteStreamControllerShiftPendingPullInto","ReadableByteStreamControllerRespondInternal","firstDescriptor","ReadableByteStreamControllerRespondInClosedState","remainderSize","remainder","ReadableByteStreamControllerRespondInReadableState","transferredBuffer","firstPendingPullInto","ReadableStreamError","byobRequest","SetUpReadableStreamBYOBRequest","_strategyHWM","viewByteLength","SetUpReadableByteStreamController","startAlgorithm","pullAlgorithm","cancelAlgorithm","highWaterMark","AcquireReadableStreamBYOBReader","ReadableStreamBYOBReader","ReadableStreamAddReadIntoRequest","IsReadableStreamBYOBReader","desiredSize","byobReaderBrandCheckException","ReadableStreamBYOBReaderRead","DataView","BYTES_PER_ELEMENT","emptyView","ReadableByteStreamControllerPullInto","ExtractHighWaterMark","strategy","defaultHWM","ExtractSizeAlgorithm","convertQueuingStrategy","init","convertQueuingStrategySize","convertUnderlyingSinkAbortCallback","original","convertUnderlyingSinkCloseCallback","convertUnderlyingSinkStartCallback","convertUnderlyingSinkWriteCallback","assertWritableStream","IsWritableStream","supportsAbortController","AbortController","WritableStream","rawUnderlyingSink","rawStrategy","underlyingSink","abort","convertUnderlyingSink","InitializeWritableStream","sizeAlgorithm","WritableStreamDefaultController","writeAlgorithm","closeAlgorithm","abortAlgorithm","SetUpWritableStreamDefaultController","SetUpWritableStreamDefaultControllerFromUnderlyingSink","streamBrandCheckException$2","IsWritableStreamLocked","WritableStreamAbort","WritableStreamCloseQueuedOrInFlight","WritableStreamClose","getWriter","AcquireWritableStreamDefaultWriter","WritableStreamDefaultWriter","_writer","_writableStreamController","_writeRequests","_inFlightWriteRequest","_closeRequest","_inFlightCloseRequest","_pendingAbortRequest","_backpressure","_abortReason","_abortController","_promise","wasAlreadyErroring","_resolve","_reject","_reason","_wasAlreadyErroring","WritableStreamStartErroring","closeRequest","writer","defaultWriterReadyPromiseResolve","closeSentinel","WritableStreamDefaultControllerAdvanceQueueIfNeeded","WritableStreamDealWithRejection","WritableStreamFinishErroring","WritableStreamDefaultWriterEnsureReadyPromiseRejected","WritableStreamHasOperationMarkedInFlight","storedError","writeRequest","abortRequest","WritableStreamRejectCloseAndClosedPromiseIfNeeded","defaultWriterClosedPromiseReject","WritableStreamUpdateBackpressure","backpressure","defaultWriterReadyPromiseInitialize","defaultWriterReadyPromiseReset","locked","_ownerWritableStream","defaultWriterReadyPromiseInitializeAsResolved","defaultWriterClosedPromiseInitialize","defaultWriterReadyPromiseInitializeAsRejected","defaultWriterClosedPromiseResolve","defaultWriterClosedPromiseInitializeAsRejected","IsWritableStreamDefaultWriter","defaultWriterBrandCheckException","defaultWriterLockException","WritableStreamDefaultControllerGetDesiredSize","_readyPromise","WritableStreamDefaultWriterAbort","WritableStreamDefaultWriterClose","WritableStreamDefaultWriterRelease","WritableStreamDefaultWriterWrite","WritableStreamDefaultWriterEnsureClosedPromiseRejected","_closedPromiseState","defaultWriterClosedPromiseResetToRejected","_readyPromiseState","defaultWriterReadyPromiseReject","defaultWriterReadyPromiseResetToRejected","releasedError","chunkSize","_strategySizeAlgorithm","chunkSizeE","WritableStreamDefaultControllerErrorIfNeeded","WritableStreamDefaultControllerGetChunkSize","WritableStreamAddWriteRequest","enqueueE","_controlledWritableStream","WritableStreamDefaultControllerGetBackpressure","WritableStreamDefaultControllerWrite","IsWritableStreamDefaultController","defaultControllerBrandCheckException$2","signal","WritableStreamDefaultControllerError","_abortAlgorithm","WritableStreamDefaultControllerClearAlgorithms","createAbortController","_writeAlgorithm","_closeAlgorithm","WritableStreamMarkCloseRequestInFlight","sinkClosePromise","WritableStreamFinishInFlightClose","WritableStreamFinishInFlightCloseWithError","WritableStreamDefaultControllerProcessClose","WritableStreamMarkFirstWriteRequestInFlight","WritableStreamFinishInFlightWrite","WritableStreamFinishInFlightWriteWithError","WritableStreamDefaultControllerProcessWrite","_readyPromise_resolve","_readyPromise_reject","abortReason","NativeDOMException","DOMException","DOMException$1","isDOMExceptionConstructor","captureStackTrace","ReadableStreamPipeTo","preventClose","preventAbort","shuttingDown","currentWrite","action","actions","shutdownWithAction","aborted","isOrBecomesErrored","shutdown","WritableStreamDefaultWriterCloseWithErrorPropagation","destClosed_1","waitForWritesToFinish","oldCurrentWrite","originalIsError","originalError","doTheRest","finalize","newError","isError","removeEventListener","resolveLoop","rejectLoop","resolveRead","rejectRead","ReadableStreamDefaultController","IsReadableStreamDefaultController","defaultControllerBrandCheckException$1","ReadableStreamDefaultControllerGetDesiredSize","ReadableStreamDefaultControllerCanCloseOrEnqueue","ReadableStreamDefaultControllerClose","ReadableStreamDefaultControllerEnqueue","ReadableStreamDefaultControllerError","ReadableStreamDefaultControllerClearAlgorithms","_controlledReadableStream","ReadableStreamDefaultControllerCallPullIfNeeded","ReadableStreamDefaultControllerShouldCallPull","SetUpReadableStreamDefaultController","ReadableStreamTee","cloneForBranch2","reason1","reason2","branch1","branch2","resolveCancelPromise","reading","readAgainForBranch1","readAgainForBranch2","canceled1","canceled2","cancelPromise","forwardReaderError","thisReader","pullWithDefaultReader","chunk1","chunk2","cloneE","pull1Algorithm","pull2Algorithm","pullWithBYOBReader","forBranch2","byobBranch","otherBranch","byobCanceled","clonedChunk","otherCanceled","CreateReadableByteStream","compositeReason","cancelResult","ReadableByteStreamTee","readAgain","CreateReadableStream","ReadableStreamDefaultTee","convertUnderlyingSourceCancelCallback","convertUnderlyingSourcePullCallback","convertUnderlyingSourceStartCallback","convertReadableStreamType","convertReadableStreamReaderMode","convertPipeOptions","isAbortSignal","assertAbortSignal","rawUnderlyingSource","underlyingSource","pull","convertUnderlyingDefaultOrByteSource","InitializeReadableStream","underlyingByteSource","SetUpReadableByteStreamControllerFromUnderlyingSource","SetUpReadableStreamDefaultControllerFromUnderlyingSource","streamBrandCheckException$1","getReader","rawOptions","convertReaderOptions","pipeThrough","rawTransform","readable","convertReadableWritablePair","pipeTo","destination","tee","impl","convertIteratorOptions","convertQueuingStrategyInit","byteLengthSizeFunction","ByteLengthQueuingStrategy","_byteLengthQueuingStrategyHighWaterMark","IsByteLengthQueuingStrategy","byteLengthBrandCheckException","countSizeFunction","CountQueuingStrategy","_countQueuingStrategyHighWaterMark","IsCountQueuingStrategy","countBrandCheckException","convertTransformerFlushCallback","convertTransformerStartCallback","convertTransformerTransformCallback","TransformStream","rawTransformer","rawWritableStrategy","rawReadableStrategy","writableStrategy","readableStrategy","transformer","readableType","writableType","convertTransformer","startPromise_resolve","readableHighWaterMark","readableSizeAlgorithm","writableHighWaterMark","writableSizeAlgorithm","startPromise","_writable","CreateWritableStream","_transformStreamController","_backpressureChangePromise","TransformStreamDefaultControllerPerformTransform","TransformStreamDefaultSinkWriteAlgorithm","_readable","flushPromise","_flushAlgorithm","TransformStreamDefaultControllerClearAlgorithms","TransformStreamError","TransformStreamDefaultSinkCloseAlgorithm","TransformStreamDefaultSinkAbortAlgorithm","TransformStreamSetBackpressure","TransformStreamDefaultSourcePullAlgorithm","TransformStreamErrorWritableAndUnblockWrite","_backpressureChangePromise_resolve","InitializeTransformStream","TransformStreamDefaultController","transformAlgorithm","TransformStreamDefaultControllerEnqueue","transformResultE","flushAlgorithm","_controlledTransformStream","_transformAlgorithm","SetUpTransformStreamDefaultController","SetUpTransformStreamDefaultControllerFromTransformer","IsTransformStream","streamBrandCheckException","IsTransformStreamDefaultController","defaultControllerBrandCheckException","terminate","TransformStreamDefaultControllerTerminate","readableController","ReadableStreamDefaultControllerHasBackpressure","_createCanvas","getContext","canvasAndContext","_ref$baseUrl","_ref$isCompressed","_fetch","_ref3$baseUrl","_fetch2","_callee2","_context2","_x2","svg","_createSVG","setAttribute","build","RenderTask","PDFWorker","PDFPageProxy","PDFDocumentProxy","PDFDocumentLoadingTask","PDFDataRangeTransport","LoopbackPort","DefaultStandardFontDataFactory","DefaultCanvasFactory","DefaultCMapReaderFactory","getDocument","setPDFNetworkStreamFactory","_interopRequireDefault","_display_utils","_font_loader","_node_utils","_annotation_storage","_canvas","_worker_options","_message_handler","_metadata","_optional_content_config","_transport_stream","_xfa_text","_classPrivateFieldInitSpec","privateMap","_checkPrivateRedeclaration","privateCollection","_classPrivateFieldSet","receiver","_classApplyDescriptorSet","_classExtractFieldDescriptor","_classPrivateFieldGet","_classApplyDescriptorGet","_slicedToArray","DEFAULT_RANGE_CHUNK_SIZE","RENDERING_CANCELLED_TIMEOUT","NodeCanvasFactory","NodeCMapReaderFactory","NodeStandardFontDataFactory","createPDFNetworkStream","pdfNetworkStreamFactory","range","params","rangeTransport","worker","rangeChunkSize","CMapReaderFactory","StandardFontDataFactory","ignoreErrors","stopAtErrors","fontExtraProperties","pdfBug","enableXfa","docBaseUrl","maxImageSize","useWorkerFetch","disableFontFace","useSystemFonts","disableRange","disableStream","disableAutoFetch","workerParams","GlobalWorkerOptions","workerPort","fromPort","_worker","docId","destroyed","workerIdPromise","_fetchDocument","networkStreamPromise","networkStream","PDFDataTransportStream","initialData","progressiveDone","contentDispositionFilename","httpHeaders","withCredentials","workerId","messageHandler","MessageHandler","transport","WorkerTransport","_transport","_capability","_x3","_x4","_fetchDocument2","_callee7","pdfDataRangeTransport","_context7","sendWithPromise","apiVersion","password","cMapUrl","standardFontDataUrl","idCounters","doc","onPassword","onProgress","onUnsupportedFeature","_destroy","_this$_transport","destroy","_rangeListeners","_progressListeners","_progressiveReadListeners","_progressiveDoneListeners","_readyCapability","loaded","total","_step3","_iterator3","_step4","_iterator4","pdfInfo","_value","_this4","_pdfInfo","fingerprints","stats","streamTypes","fontTypes","annotationStorage","numPages","_htmlForXfa","pageNumber","getPage","getPageIndex","getDestinations","getDestination","getPageLabels","getPageLayout","getPageMode","getViewerPreferences","getOpenAction","getAttachments","getJavaScript","getDocJSActions","getOutline","getOptionalContentConfig","getPermissions","getMetadata","getMarkInfo","getData","downloadInfoCapability","keepLoadedFonts","startCleanup","isPureXfa","loadingTask","loadingParams","saveDocument","getFieldObjects","hasJSActions","getCalculationOrderIds","pageIndex","pageInfo","_pageIndex","_pageInfo","_ownerDocument","_stats","_pdfBug","commonObjs","objs","PDFObjects","cleanupAfterRender","pendingCleanup","_intentStates","Map","_annotationPromises","_getXfa","userUnit","_ref4$intent","intent","intentArgs","getRenderingIntent","cacheKey","getAnnotations","renderingIntent","annotations","_step5","_iterator5","_loop","annotation","titleObj","contentsObj","_jsActionsPromise","getPageJSActions","_callee3","_this$_transport$_htm","_context3","children","_ref5","_arguments$","_arguments$2","_intentState","_this5","canvasContext","viewport","_ref5$intent","_ref5$annotationMode","annotationMode","_ref5$transform","_ref5$imageLayer","imageLayer","_ref5$canvasFactory","canvasFactory","_ref5$background","background","_ref5$optionalContent","optionalContentConfigPromise","_ref5$annotationCanva","annotationCanvasMap","renderInteractiveForms","includeAnnotationStorage","time","intentState","streamReaderCancelTimeout","clearTimeout","canvasFactoryInstance","intentPrint","displayReadyCapability","operatorList","fnArray","argsArray","lastChunk","_pumpOperatorList","renderTasks","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","styles","pump","_ref10","_textContent$items","_structTreePromise","getStructTree","_step6","waitOn","_iterator6","force","_step7","_iterator7","completed","resetStats","_step8","_iterator8","_step8$value","operatorListChunk","_step9","_iterator9","_ref11","_this6","serializable","streamReader","_ref12","_renderPageChunk","_step10","_iterator10","_ref13","_this7","_ref13$force","_step11","_iterator11","_step11$value","curCacheKey","cleanup","_listeners","_deferred","transfers","_this8","structuredClone","cloned","fallbackCloneValue","_step12","_iterator12","_step12$value","_step13","_iterator13","_val","_value$hasOwnProperty","desc","cloneValue","_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","_this9","Worker","_mainThreadWorkerMessageHandler","workerSrc","terminateEarly","onWorkerError","_setupFakeWorker","sendTest","testObj","_this10","_setupFakeWorkerGlobal","WorkerMessageHandler","workerHandler","setup","_globalThis$pdfjsWork","pdfjsWorker","_this11","loader","_ref15","_callee4","mainWorkerMessageHandler","_callee4$","_context4","eval","getWorkerSrc","_docStats","_pageCache","_pagePromises","_metadataPromise","fontLoader","FontLoader","_onUnsupportedFeature","styleElement","_params","cMapPacked","destroyCapability","_passwordCapability","_networkStream","_fullReader","_lastProgress","setupMessageHandler","_startCleanup","AnnotationStorage","isOpList","lastModified","_this12","_step15","_iterator15","page","resetModified","terminated","_getFieldObjectsPromise","_hasJSActionsPromise","cancelAllRequests","_this13","sink","getFullReader","onPull","_ref16","onCancel","readyReason","headersCapability","fullReader","headersReady","_loadingTask$onProgre","isStreamingSupported","isRangeSupported","_loadingTask$onProgre2","contentLength","rangeReader","getRangeReader","_ref17","_ref18","_numPages","htmlForXfa","_loadingTask$onProgre3","_startRenderPage","_ref19","_globalThis$FontInspe","_ref20","exportedData","exportedError","fontRegistry","FontInspector","registerFont","fontAdded","FontFaceObject","_ref21","_imageData$data","_ref22","imageData","pageProxy","_loadingTask$onProgre4","freeze","_ref23","_this$loadingTask$onU","_this$loadingTask","featureId","_this14","cachedPromise","_this$_fullReader$fil","_this$_fullReader","_this15","results","OptionalContentConfig","_this16","_this16$_fullReader$f","_this16$_fullReader","_this16$_fullReader$c","_this16$_fullReader2","Metadata","_callee5","_iterator16","_step16","_args5","_context5","_objs","objId","resolved","_ensureObj","_internalRenderTask","onContinue","_ref24","_ref24$useRequestAnim","_ref24$pdfBug","operatorListIdx","running","graphicsReadyCallback","graphicsReady","_useRequestAnimationFrame","cancelled","_cancelBound","_continueBound","_continue","_scheduleNextBound","_scheduleNext","_nextBound","_next2","_ref25","_globalThis$StepperMa","_ref25$transparency","canvasInUse","StepperManager","stepper","nextBreakPoint","getNextBreakPoint","_this$params","gfx","CanvasGraphics","beginDrawing","endDrawing","updateOperatorList","_this17","requestAnimationFrame","_callee6","_context6","executeOperatorList","WeakSet","BaseFontLoader","nativeFontFaces","_bind","nativeFontFace","fonts","rule","getElementsByTagName","styleSheet","sheet","insertRule","cssRules","attached","missingFile","isFontLoadingAPISupported","createNativeFontFace","addNativeFontFace","family","createFontFaceRule","isSyncFontLoadingSupported","_queueLoadingCallback","_prepareFontLoadEvent","_this$_document","hasFonts","rules","fontsToLoad","_BaseFontLoader","GenericFontLoader","loadingContext","requests","nextRequestId","loadTestFontId","supported","navigator","otherRequest","int32","offset","spliceString","insert","ctx","_loadTestFont","checksum","loadedName","div","visibility","top","left","_names","span","fontFamily","body","isFontReady","fillText","getImageData","translatedData","_ref2$isEvalSupported","_ref2$disableFontFace","_ref2$ignoreErrors","_ref2$fontRegistry","compiledGlyphs","cssFontInfo","css","weight","fontWeight","italicAngle","FontFace","mimetype","character","cmds","jsBuf","current","cmd","_current","readFile","createCanvas","_storage","_timeStamp","_modified","onSetModified","onResetModified","defaultValue","modified","_Object$entries","_Object$entries$_i","_setModified","_pattern_helper","addContextCurrentTransform","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","CanvasExtraState","alphaIsShape","fontSize","fontSizeScale","textMatrix","textMatrixScale","fontMatrix","leading","lineX","lineY","charSpacing","wordSpacing","textHScale","textRenderingMode","textRise","fillColor","strokeColor","patternFill","fillAlpha","strokeAlpha","lineWidth","activeSMask","transferMaps","startNewPathAndClipBox","clone","clipBox","_Util$applyTransform2","minX","minY","maxX","maxY","box","bezierBoundingBox","updatePathMinMax","pathType","PathType","singularValueDecompose2dScale","xStrokePad","yStrokePad","intersect","getPathBoundingBox","putBinaryImageData","imgData","ImageData","putImageData","destPos","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","putBinaryImageMask","elem","copyCtxState","sourceCtx","destCtx","properties","property","setLineDash","getLineDash","lineDashOffset","resetCtxToDefault","strokeStyle","fillStyle","fillRule","globalAlpha","lineCap","lineJoin","miterLimit","globalCompositeOperation","composeSMaskBackdrop","r0","g0","b0","alpha_","composeSMaskAlpha","maskData","layerData","transferMap","composeSMaskLuminosity","composeSMask","layerCtx","layerBox","layerOffsetX","layerOffsetY","layerWidth","layerHeight","maskCtx","subtype","backdrop","maskOffsetX","maskOffsetY","composeFn","hasBackdrop","row","chunkHeight","genericComposeSMask","drawImage","getImageSmoothingEnabled","interpolate","fround","actualScale","devicePixelRatio","PDF_TO_CSS_UNITS","LINE_CAP_STYLES","LINE_JOIN_STYLES","NORMAL_CLIP","EO_CLIP","canvasCtx","stateStack","pendingClip","pendingEOFill","res","xobjs","groupStack","processingType3","baseTransform","baseTransformStack","groupLevel","smaskStack","smaskCounter","tempSMask","suspendedCtx","contentVisible","markedContentStack","cachedCanvases","cachedPatterns","viewportScale","outputScaleX","outputScaleY","_cachedGetSinglePixelWidth","_ref2$transparency","_ref2$background","fillRect","transparentCanvas","getCanvas","compositeCtx","_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","objToCanvas","maskToCanvas","cord1","cord2","drawnWidth","drawnHeight","fillCanvas","fillCtx","scaled","_scaleImage","mozCurrentTransformInverse","imageSmoothingEnabled","inverse","getPattern","round","limit","dashArray","dashPhase","flatness","states","checkSMaskState","inSMaskMode","beginSMaskMode","endSMaskMode","cacheId","scratchCanvas","_removeMirroring","__originalSave","__originalRestore","__originalRotate","__originalScale","__originalTranslate","__originalTransform","__originalSetTransform","__originalResetTransform","__originalClip","__originalMoveTo","__originalLineTo","__originalBezierCurveTo","bezierCurveTo","__originalRect","__originalClosePath","__originalBeginPath","beginPath","cp1x","cp1y","cp2x","cp2y","mirrorContextOperations","dirtyBox","ops","startX","startY","xw","yh","updateCurvePathMinMax","setCurrentPoint","consumePath","getSinglePixelWidth","_lineWidth","getClippedPathBoundingBox","needRestore","paths","pendingTextPaths","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","glyph","restoreNeeded","isSpace","fontChar","accent","scaledX","scaledY","vmetric","vx","vy","remeasure","measuredWidth","measureText","isFontSubpixelAAEnabled","characterScaleX","isInFont","paintChar","scaledAccentX","scaledAccentY","compose","spacingLength","charProcOperatorList","operatorListId","xWidth","yWidth","llx","lly","urx","ury","IR","color","canvasGraphicsFactory","createCanvasGraphics","TilingPattern","_getPattern","getColorN_Pattern","makeHexColor","matrix","getShadingPattern","SHADING","inv","bl","br","ul","ur","bbox","group","currentCtx","isolated","knockout","currentTransform","getAxialAlignedBoundingBox","canvasBounds","scaleX","scaleY","groupCtx","startTransformInverse","_this$groupStack$pop","currentMtx","hasOwnCanvas","_Util$singularValueDe2","canvasWidth","canvasHeight","annotationCanvas","_this$annotationCanva","savedCtx","compiled","j0","POINT_TYPES","width1","points","lineSize","data0","count","sum","Int32Array","outlines","coords","p0","pp","kk","ll","compileType3Glyph","_createMaskCanvas","positions","trans","_Util$applyTransform3","_Util$applyTransform4","images","image","h","imgToPaint","HTMLElement","getCanvasPosition","appendImage","visible","isVisible","isContentVisible","updateClipFromPath","absDet","sqNorm1","sqNorm2","pixelHeight","EPSILON","op","RadialAxialShadingPattern","MeshShadingPattern","DummyShadingPattern","applyBoundingBox","Path2D","region","BaseShadingPattern","_BaseShadingPattern","_type","_bbox","_colorStops","_p0","_p1","_r0","_r1","grad","createLinearGradient","createRadialGradient","colorStop","addColorStop","owner","ownerBBox","_createGradient","createPattern","domMatrix","drawTriangle","c1","c2","c3","tmp","colors","rowSize","xa","car","cag","cab","xb","cbr","cbg","cbb","c1r","c1g","c1b","c2r","c2g","c2b","c3r","c3g","c3b","x1_","x2_","drawFigure","figure","ps","cs","verticesPerRow","rows","cols","q","_BaseShadingPattern2","_coords","_colors","_figures","_bounds","_background","combinedScale","backgroundColor","boundsWidth","boundsHeight","paddedWidth","BORDER_SIZE","paddedHeight","matrixScale","temporaryPatternCanvas","_createMeshCanvas","_BaseShadingPattern3","PaintType","xstep","ystep","paintType","tilingType","curMatrixScale","dimx","getSizeAndScale","dimy","graphics","setFillAndStrokeStyleToContext","adjustedX0","adjustedY0","adjustedX1","adjustedY1","clipBbox","realOutputSize","maxSize","MAX_PATTERN_SIZE","bboxWidth","bboxHeight","cssColor","createPatternCanvas","CallbackKind","StreamKind","wrapReason","sourceName","targetName","comObj","callbackId","streamId","streamSinks","streamControllers","callbackCapabilities","actionHandler","_onComObjOnMessage","_processStreamMessage","cbSourceName","cbTargetName","_createStreamSink","_deleteStreamController2","actionName","ah","queueingStrategy","startCapability","startCall","pullCall","cancelCall","isClosed","pullCapability","cancelCapability","streamSink","isCancelled","lastDesiredSize","sinkCapability","success","streamController","_deleteStreamController","_metadataMap","_data","parsedData","rawData","_classPrivateFieldGet2","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","_begin","_this$_fullRequestRea","_this$_fullRequestRea2","_loaded","firstReader","queuedChunks","PDFDataTransportStreamReader","_progressiveDataLength","PDFDataTransportStreamRangeReader","requestDataRange","_stream","_done","_filename","_requests","_headersReady","_read","requestCapability","_end","_queuedChunk","_read2","_removeRangeReader","output","walk","_node$attributes","shouldBuildText","AnnotationLayer","_scripting_utils","_xfa_layer","_classStaticPrivateMethodGet","classConstructor","_classCheckPrivateStaticAccess","_get","_superPropBase","_defineProperty","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","linkService","downloadManager","imageResourcesPath","renderForms","svgFactory","enableScripting","_fieldObjects","fieldObjects","_mouseState","mouseState","_createContainer","quadrilaterals","_createQuadrilaterals","_Util$singularValueDe","sign","transformOrigin","borderStyle","borderWidth","horizontalRadius","horizontalCornerRadius","verticalRadius","verticalCornerRadius","radius","borderRadius","borderBottomStyle","borderColor","quadPoints","savedRect","quadPoint","trigger","popup","PopupElement","modificationDate","richText","hideWrapper","render","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","eventBus","dispatch","detail","otherClickAction","resetFormFields","resetFormRefs","refs","include","allFields","fieldIds","fieldName","_Object$values","_i4","_Object$values2","_fields2","_this4$linkService$ev","storage","allIds","_i5","_allFields","_field","setValue","valueAsString","_value2","Event","_AnnotationElement2","_parameters$data$titl","_parameters$data$cont","_parameters$data$rich","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","_i6","_Object$keys2","_WidgetAnnotationElem","hasAppearance","fieldValue","keyInStorage","_getElementsByName","storedData","getValue","elementData","userValue","formattedValue","beforeInputSelectionRange","beforeInputValue","multiLine","disabled","readOnly","tabIndex","setPropertyOnSiblings","defaultFieldValue","blurListener","scrollLeft","_this$data$actions2","activeElement","selRange","_event$detail$selRang","selStart","selEnd","setSelectionRange","_dispatchEventFromSandbox","_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","radio","pdfButtonValue","_LinkAnnotationElemen","_WidgetAnnotationElem4","_super8","fontSizeStyle","selectElement","combo","multiSelect","multiple","option","selected","optionElement","displayValue","isExport","selectedIndex","getItems","multipleSelection","findIndex","_event$detail$insert","insertBefore","indices","_step17","_iterator17","editable","_this10$linkService$e","changeEx","keyDown","_AnnotationElement4","_super9","_parameters$data$titl2","_parameters$data$cont2","_parameters$data$rich2","parentType","selector","parentId","parentElements","querySelectorAll","parentRect","popupLeft","popupTop","pinned","_this$richText","_this$contentsObj","hideElement","dir","dateObject","toDateObject","toLocaleDateString","toLocaleTimeString","contents","_formatContents","XfaLayer","xfaHtml","lastChild","_step18","_iterator18","_toggle","_show","_hide","lines","line","pin","zIndex","unpin","_AnnotationElement5","_super10","_parameters$data$titl3","_parameters$data$cont3","_parameters$data$rich3","_AnnotationElement6","_super11","_parameters$data$titl4","_parameters$data$cont4","_parameters$data$rich4","lineCoordinates","append","_AnnotationElement7","_super12","_parameters$data$titl5","_parameters$data$cont5","_parameters$data$rich5","square","_AnnotationElement8","_super13","_parameters$data$titl6","_parameters$data$cont6","_parameters$data$rich6","circle","_AnnotationElement9","_super14","_parameters$data$titl7","_parameters$data$cont7","_parameters$data$rich7","containerClassName","svgElementName","_step19","_iterator19","vertices","coordinate","polyline","_PolylineAnnotationEl","_super15","_AnnotationElement10","_super16","_parameters$data$titl8","_parameters$data$cont8","_parameters$data$rich8","_AnnotationElement11","_super17","_parameters$data$titl9","_parameters$data$cont9","_parameters$data$rich9","_step20","_iterator20","inkLists","_step21","inkList","_iterator21","_AnnotationElement12","_super18","_parameters$data$titl10","_parameters$data$cont10","_parameters$data$rich10","_AnnotationElement13","_super19","_parameters$data$titl11","_parameters$data$cont11","_parameters$data$rich11","_AnnotationElement14","_super20","_parameters$data$titl12","_parameters$data$cont12","_parameters$data$rich12","_AnnotationElement15","_super21","_parameters$data$titl13","_parameters$data$cont13","_parameters$data$rich13","_AnnotationElement16","_super22","_parameters$data$titl14","_parameters$data$cont14","_parameters$data$rich14","_AnnotationElement17","_super23","_this14$linkService$e","_this14$data$file","file","_this$data$titleObj","_this$data$contentsOb","_download","_this$downloadManager","openOrDownloadData","_step22","sortedAnnotations","popupAnnotations","_iterator22","_i7","_sortedAnnotations","rendered","_step23","_iterator23","renderedElement","prepend","_setAnnotationCanvasMap","ownMatrix","_step24","_iterator24","_step25","_iterator25","ownTransform","_step26","_iterator26","_step26$value","querySelector","firstChild","nodeName","replaceChild","makeColorComp","G","R","B","RGB_HTML","CMYK_RGB","xfaOn","xfaOff","getAttribute","_ref$storage","isHTMLAnchorElement","HTMLAnchorElement","dataId","setupStorage","root","rootHtml","setAttributes","rootDiv","textDivs","_child$attributes","_stack","child","childHtml","xmlns","_node","renderTextLayer","renderParameters","TextLayerRenderTask","textContentStream","textContentItemsStr","enhanceTextSelection","_render","timeout","ascentCache","AllWhitespaceRegexp","appendText","geom","textDiv","textDivProperties","_enhanceTextSelection","hasText","hasEOL","originalTransform","paddingBottom","paddingLeft","paddingRight","paddingTop","_textDivs","tx","_viewport","atan2","fontName","fontHeight","fontAscent","cachedAscent","metrics","ascent","fontBoundingBoxAscent","descent","fontBoundingBoxDescent","ratio","pixels","_ratio","getAscent","_fontInspectorEnabled","shouldScaleText","absScaleX","absScaleY","_textDivProperties","_textContentStream","_layoutText","angleCos","angleSin","divWidth","divHeight","right","bottom","_canceled","textDivsLength","_renderingDone","findPositiveMin","ts","expand","expanded","boxes","x1New","x2New","expandBoundsLTR","_b","expandBounds","divProperties","jj","boxScale","horizon","boundary","_horizonPart","_affectedBoundary","maxXNew","xNew","changedHorizon","lastBoundary","useBoundary","unshift","used","_horizon","affectedBoundary","_textContent","_container","_textContentItemsStr","_layoutTextLastFontSize","_layoutTextLastFontFamily","_layoutTextCtx","_renderTimer","styleCache","parentNode","_textDiv$style","mozOpaque","textItems","textStyles","_processItems","expandDivs","transformBuf","paddingBuf","divProps","padding","SVGGraphics","pf","toFixed","pm","acos","SVG_DEFAULTS","fontStyle","convertImgDataToPng","PNG_HEADER","crcTable","writePngChunk","crc","crc32","deflateSyncUncompressed","literals","deflateBlocks","idat","pi","adler","adler32","encode","isMask","bitDepth","colorType","offsetLiterals","offsetBytes","_y","ihdr","deflateSync","pngLength","CHUNK_WRAPPER_SIZE","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","lineWidthScale","_setStrokeAttributes","_ensureTransformGroup","defs","addFontStyle","_current$txtElement","hasChildNodes","_makeColorN_Pattern","_makeShadingPattern","_makeTilingPattern","_args$","tilingId","_Util$normalizeRect2","tx0","ty0","tx1","ty1","txstep","tystep","tiling","childNodes","gradient","shadingId","colorStops","point0","point1","focalPoint","circlePoint","focalRadius","circleRadius","getAttributeNS","clipId","clipPath","clipElement","setStrokeAlpha","setFillAlpha","imgSrc","cliprect","imgEl","definitions","rootGroup","_ensureClipGroup","PDFNodeStream","_network_utils","fs","http","https","fileUriRegex","sourceUrl","parsedUrl","parse","isHttp","isFsUrl","_rangeRequestReaders","PDFNodeStreamFsFullReader","PDFNodeStreamFullReader","PDFNodeStreamFsRangeReader","PDFNodeStreamRangeReader","BaseFullReader","_url","_disableRange","_rangeChunkSize","_readableStream","_readCapability","_headersCapability","_error","BaseRangeReader","createRequestOptions","headers","auth","hostname","_BaseFullReader","handleResponse","statusCode","_setReadableStream","getResponseHeader","_validateRangeRequest","validateRangeRequestCapabilities","allowRangeRequests","suggestedLength","extractFilenameFromHeader","_request","_BaseRangeReader","_httpHeaders","Range","_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","textdecode","encoding","decoder","TextDecoder","fatal","decode","quotindex","extvalue","encodingend","charset","hex","PDFNetworkStream","NetworkManager","getXhr","currXhrId","pendingRequests","listeners","xhr","xhrId","pendingRequest","setRequestHeader","expectedStatus","onError","onStateChange","onprogress","onHeadersReceived","onDone","_pendingRequest$onPro","_pendingRequest$onErr","xhrStatus","getArrayBuffer","rangeHeader","_pendingRequest$onErr3","_pendingRequest$onErr2","_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","createFetchOptions","abortController","credentials","redirect","createHeaders","Headers","PDFFetchStreamReader","PDFFetchStreamRangeReader","_withCredentials","_headers","_yield$this$_reader$r","_yield$this$_reader$r2","__webpack_module_cache__","moduleId","cachedModule","__webpack_exports__","_annotation_layer","_api","_svg","_text_layer"],"mappings":"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","file":"906a09f8-83c75d216968a1b5c7e3.js","sourcesContent":["require(\"core-js/modules/esnext.global-this.js\");\nrequire(\"core-js/modules/es.typed-array.set.js\");\nrequire(\"core-js/modules/es.typed-array.sort.js\");\nrequire(\"core-js/modules/es.array.sort.js\");\nrequire(\"core-js/modules/es.object.from-entries.js\");\nrequire(\"core-js/modules/es.promise.finally.js\");\nrequire(\"core-js/modules/es.math.hypot.js\");\nrequire(\"core-js/modules/esnext.promise.all-settled.js\");\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 if (typeof exports === 'object' && typeof module === 'object') module.exports = factory();else if (typeof define === 'function' && define.amd) define(\"pdfjs-dist/build/pdf\", [], factory);else if (typeof exports === 'object') exports[\"pdfjs-dist/build/pdf\"] = factory();else root[\"pdfjs-dist/build/pdf\"] = root.pdfjsLib = factory();\n})(this, function () {\n return (/******/function () {\n // webpackBootstrap\n /******/\n var __webpack_modules__ = [\n /* 0 */\n , /* 1 */\n /***/function (__unused_webpack_module, exports, __w_pdfjs_require__) {\n \"use strict\";\n\n function _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") {\n _typeof = function _typeof(obj) {\n return typeof obj;\n };\n } else {\n _typeof = function _typeof(obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n };\n }\n return _typeof(obj);\n }\n Object.defineProperty(exports, \"__esModule\", {\n value: true\n });\n exports.StatTimer = exports.RenderingCancelledException = exports.PixelsPerInch = exports.PageViewport = exports.PDFDateString = exports.LinkTarget = exports.DOMStandardFontDataFactory = exports.DOMSVGFactory = exports.DOMCanvasFactory = exports.DOMCMapReaderFactory = void 0;\n exports.addLinkAttributes = addLinkAttributes;\n exports.deprecated = deprecated;\n exports.getFilenameFromUrl = getFilenameFromUrl;\n exports.getPdfFilenameFromUrl = getPdfFilenameFromUrl;\n exports.getXfaPageViewport = getXfaPageViewport;\n exports.isDataScheme = isDataScheme;\n exports.isPdfFile = isPdfFile;\n exports.isValidFetchUrl = isValidFetchUrl;\n exports.loadScript = loadScript;\n var _regenerator = _interopRequireDefault(__w_pdfjs_require__(2));\n var _util = __w_pdfjs_require__(4);\n var _base_factory = __w_pdfjs_require__(135);\n function _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n \"default\": obj\n };\n }\n function _createForOfIteratorHelper(o, allowArrayLike) {\n var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"];\n if (!it) {\n if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") {\n if (it) o = it;\n var i = 0;\n var F = function F() {};\n return {\n s: F,\n n: function n() {\n if (i >= o.length) return {\n done: true\n };\n return {\n done: false,\n value: o[i++]\n };\n },\n e: function e(_e) {\n throw _e;\n },\n f: F\n };\n }\n throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n }\n var normalCompletion = true,\n didErr = false,\n err;\n return {\n s: function s() {\n it = it.call(o);\n },\n n: function n() {\n var step = it.next();\n normalCompletion = step.done;\n return step;\n },\n e: function e(_e2) {\n didErr = true;\n err = _e2;\n },\n f: function f() {\n try {\n if (!normalCompletion && it[\"return\"] != null) it[\"return\"]();\n } finally {\n if (didErr) throw err;\n }\n }\n };\n }\n function _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return _arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);\n }\n function _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n for (var i = 0, arr2 = new Array(len); i < len; i++) {\n arr2[i] = arr[i];\n }\n return arr2;\n }\n function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {\n try {\n var info = gen[key](arg);\n var value = info.value;\n } catch (error) {\n reject(error);\n return;\n }\n if (info.done) {\n resolve(value);\n } else {\n Promise.resolve(value).then(_next, _throw);\n }\n }\n function _asyncToGenerator(fn) {\n return function () {\n var self = this,\n args = arguments;\n return new Promise(function (resolve, reject) {\n var gen = fn.apply(self, args);\n function _next(value) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value);\n }\n function _throw(err) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err);\n }\n _next(undefined);\n });\n };\n }\n function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n }\n function _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n }\n function _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n return Constructor;\n }\n function _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n writable: true,\n configurable: true\n }\n });\n if (superClass) _setPrototypeOf(subClass, superClass);\n }\n function _setPrototypeOf(o, p) {\n _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n return _setPrototypeOf(o, p);\n }\n function _createSuper(Derived) {\n var hasNativeReflectConstruct = _isNativeReflectConstruct();\n return function _createSuperInternal() {\n var Super = _getPrototypeOf(Derived),\n result;\n if (hasNativeReflectConstruct) {\n var NewTarget = _getPrototypeOf(this).constructor;\n result = Reflect.construct(Super, arguments, NewTarget);\n } else {\n result = Super.apply(this, arguments);\n }\n return _possibleConstructorReturn(this, result);\n };\n }\n function _possibleConstructorReturn(self, call) {\n if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) {\n return call;\n } else if (call !== void 0) {\n throw new TypeError(\"Derived constructors may only return object or undefined\");\n }\n return _assertThisInitialized(self);\n }\n function _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n return self;\n }\n function _isNativeReflectConstruct() {\n if (typeof Reflect === \"undefined\" || !Reflect.construct) return false;\n if (Reflect.construct.sham) return false;\n if (typeof Proxy === \"function\") return true;\n try {\n Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {}));\n return true;\n } catch (e) {\n return false;\n }\n }\n function _getPrototypeOf(o) {\n _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {\n return o.__proto__ || Object.getPrototypeOf(o);\n };\n return _getPrototypeOf(o);\n }\n var DEFAULT_LINK_REL = \"noopener noreferrer nofollow\";\n var SVG_NS = \"http://www.w3.org/2000/svg\";\n var PixelsPerInch = {\n CSS: 96.0,\n PDF: 72.0,\n get PDF_TO_CSS_UNITS() {\n return (0, _util.shadow)(this, \"PDF_TO_CSS_UNITS\", this.CSS / this.PDF);\n }\n };\n exports.PixelsPerInch = PixelsPerInch;\n var DOMCanvasFactory = /*#__PURE__*/function (_BaseCanvasFactory) {\n _inherits(DOMCanvasFactory, _BaseCanvasFactory);\n var _super = _createSuper(DOMCanvasFactory);\n function DOMCanvasFactory() {\n var _this;\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 _classCallCheck(this, DOMCanvasFactory);\n _this = _super.call(this);\n _this._document = ownerDocument;\n return _this;\n }\n _createClass(DOMCanvasFactory, [{\n key: \"_createCanvas\",\n value: function _createCanvas(width, height) {\n var canvas = this._document.createElement(\"canvas\");\n canvas.width = width;\n canvas.height = height;\n return canvas;\n }\n }]);\n return DOMCanvasFactory;\n }(_base_factory.BaseCanvasFactory);\n exports.DOMCanvasFactory = DOMCanvasFactory;\n function fetchData(_x) {\n return _fetchData.apply(this, arguments);\n }\n function _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 if (!isValidFetchUrl(url, document.baseURI)) {\n _context.next = 21;\n break;\n }\n _context.next = 4;\n return fetch(url);\n case 4:\n response = _context.sent;\n if (response.ok) {\n _context.next = 7;\n break;\n }\n throw new Error(response.statusText);\n case 7:\n if (!asTypedArray) {\n _context.next = 15;\n break;\n }\n _context.t1 = Uint8Array;\n _context.next = 11;\n return response.arrayBuffer();\n case 11:\n _context.t2 = _context.sent;\n _context.t0 = new _context.t1(_context.t2);\n _context.next = 20;\n break;\n case 15:\n _context.t3 = _util.stringToBytes;\n _context.next = 18;\n return response.text();\n case 18:\n _context.t4 = _context.sent;\n _context.t0 = (0, _context.t3)(_context.t4);\n case 20:\n return _context.abrupt(\"return\", _context.t0);\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 if (asTypedArray) {\n request.responseType = \"arraybuffer\";\n }\n request.onreadystatechange = function () {\n if (request.readyState !== XMLHttpRequest.DONE) {\n return;\n }\n if (request.status === 200 || request.status === 0) {\n var data;\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 if (data) {\n resolve(data);\n return;\n }\n }\n reject(new Error(request.statusText));\n };\n request.send(null);\n }));\n case 22:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }));\n return _fetchData.apply(this, arguments);\n }\n var DOMCMapReaderFactory = /*#__PURE__*/function (_BaseCMapReaderFactor) {\n _inherits(DOMCMapReaderFactory, _BaseCMapReaderFactor);\n var _super2 = _createSuper(DOMCMapReaderFactory);\n function DOMCMapReaderFactory() {\n _classCallCheck(this, DOMCMapReaderFactory);\n return _super2.apply(this, arguments);\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 return DOMCMapReaderFactory;\n }(_base_factory.BaseCMapReaderFactory);\n exports.DOMCMapReaderFactory = DOMCMapReaderFactory;\n var DOMStandardFontDataFactory = /*#__PURE__*/function (_BaseStandardFontData) {\n _inherits(DOMStandardFontDataFactory, _BaseStandardFontData);\n var _super3 = _createSuper(DOMStandardFontDataFactory);\n function DOMStandardFontDataFactory() {\n _classCallCheck(this, DOMStandardFontDataFactory);\n return _super3.apply(this, arguments);\n }\n _createClass(DOMStandardFontDataFactory, [{\n key: \"_fetchData\",\n value: function _fetchData(url) {\n return fetchData(url, true);\n }\n }]);\n return DOMStandardFontDataFactory;\n }(_base_factory.BaseStandardFontDataFactory);\n exports.DOMStandardFontDataFactory = DOMStandardFontDataFactory;\n var DOMSVGFactory = /*#__PURE__*/function (_BaseSVGFactory) {\n _inherits(DOMSVGFactory, _BaseSVGFactory);\n var _super4 = _createSuper(DOMSVGFactory);\n function DOMSVGFactory() {\n _classCallCheck(this, DOMSVGFactory);\n return _super4.apply(this, arguments);\n }\n _createClass(DOMSVGFactory, [{\n key: \"_createSVG\",\n value: function _createSVG(type) {\n return document.createElementNS(SVG_NS, type);\n }\n }]);\n return DOMSVGFactory;\n }(_base_factory.BaseSVGFactory);\n exports.DOMSVGFactory = DOMSVGFactory;\n var 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 _classCallCheck(this, PageViewport);\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 if (rotation < 0) {\n rotation += 360;\n }\n switch (rotation) {\n case 180:\n rotateA = -1;\n rotateB = 0;\n rotateC = 0;\n rotateD = 1;\n break;\n case 90:\n rotateA = 0;\n rotateB = 1;\n rotateC = 1;\n rotateD = 0;\n break;\n case 270:\n rotateA = 0;\n rotateB = -1;\n rotateC = -1;\n rotateD = 0;\n break;\n case 0:\n rotateA = 1;\n rotateB = 0;\n rotateC = 0;\n rotateD = -1;\n break;\n default:\n throw new Error(\"PageViewport: Invalid rotation, must be a multiple of 90 degrees.\");\n }\n if (dontFlip) {\n rotateC = -rotateC;\n rotateD = -rotateD;\n }\n var offsetCanvasX, offsetCanvasY;\n var width, height;\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 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 _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 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 var bottomRight = _util.Util.applyTransform([rect[2], rect[3]], this.transform);\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 return PageViewport;\n }();\n exports.PageViewport = PageViewport;\n var RenderingCancelledException = /*#__PURE__*/function (_BaseException) {\n _inherits(RenderingCancelledException, _BaseException);\n var _super5 = _createSuper(RenderingCancelledException);\n function RenderingCancelledException(msg, type) {\n var _this2;\n _classCallCheck(this, RenderingCancelledException);\n _this2 = _super5.call(this, msg, \"RenderingCancelledException\");\n _this2.type = type;\n return _this2;\n }\n return RenderingCancelledException;\n }(_util.BaseException);\n exports.RenderingCancelledException = RenderingCancelledException;\n var LinkTarget = {\n NONE: 0,\n SELF: 1,\n BLANK: 2,\n PARENT: 3,\n TOP: 4\n };\n exports.LinkTarget = LinkTarget;\n function 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 (0, _util.assert)(url && typeof url === \"string\", 'addLinkAttributes: A valid \"url\" parameter must provided.');\n var urlNullRemoved = (0, _util.removeNullCharacters)(url);\n if (enabled) {\n link.href = link.title = urlNullRemoved;\n } else {\n link.href = \"\";\n link.title = \"Disabled: \".concat(urlNullRemoved);\n link.onclick = function () {\n return false;\n };\n }\n var targetStr = \"\";\n switch (target) {\n case LinkTarget.NONE:\n break;\n case LinkTarget.SELF:\n targetStr = \"_self\";\n break;\n case LinkTarget.BLANK:\n targetStr = \"_blank\";\n break;\n case LinkTarget.PARENT:\n targetStr = \"_parent\";\n break;\n case LinkTarget.TOP:\n targetStr = \"_top\";\n break;\n }\n link.target = targetStr;\n link.rel = typeof rel === \"string\" ? rel : DEFAULT_LINK_REL;\n }\n function isDataScheme(url) {\n var ii = url.length;\n var i = 0;\n while (i < ii && url[i].trim() === \"\") {\n i++;\n }\n return url.substring(i, i + 5).toLowerCase() === \"data:\";\n }\n function isPdfFile(filename) {\n return typeof filename === \"string\" && /\\.pdf$/i.test(filename);\n }\n function 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 function getPdfFilenameFromUrl(url) {\n var defaultFilename = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : \"document.pdf\";\n if (typeof url !== \"string\") {\n return defaultFilename;\n }\n if (isDataScheme(url)) {\n (0, _util.warn)('getPdfFilenameFromUrl: ignore \"data:\"-URL for performance reasons.');\n return defaultFilename;\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 if (suggestedFilename) {\n suggestedFilename = suggestedFilename[0];\n if (suggestedFilename.includes(\"%\")) {\n try {\n suggestedFilename = reFilename.exec(decodeURIComponent(suggestedFilename))[0];\n } catch (ex) {}\n }\n }\n return suggestedFilename || defaultFilename;\n }\n var StatTimer = /*#__PURE__*/function () {\n function StatTimer() {\n _classCallCheck(this, StatTimer);\n this.started = Object.create(null);\n this.times = [];\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 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 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 var _iterator = _createForOfIteratorHelper(this.times),\n _step;\n try {\n for (_iterator.s(); !(_step = _iterator.n()).done;) {\n var time = _step.value;\n var name = time.name;\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 var _iterator2 = _createForOfIteratorHelper(this.times),\n _step2;\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 return outBuf.join(\"\");\n }\n }]);\n return StatTimer;\n }();\n exports.StatTimer = StatTimer;\n function isValidFetchUrl(url, baseUrl) {\n try {\n var _ref5 = baseUrl ? new URL(url, baseUrl) : new URL(url),\n protocol = _ref5.protocol;\n return protocol === \"http:\" || protocol === \"https:\";\n } catch (ex) {\n return false;\n }\n }\n function 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 script.onload = function (evt) {\n if (removeScriptElement) {\n script.remove();\n }\n resolve(evt);\n };\n script.onerror = function () {\n reject(new Error(\"Cannot load script at: \".concat(script.src)));\n };\n (document.head || document.documentElement).appendChild(script);\n });\n }\n function deprecated(details) {\n console.log(\"Deprecated API usage: \" + details);\n }\n var pdfDateStringRegex;\n var PDFDateString = /*#__PURE__*/function () {\n function PDFDateString() {\n _classCallCheck(this, PDFDateString);\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 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 var matches = pdfDateStringRegex.exec(input);\n if (!matches) {\n return null;\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 if (universalTimeRelation === \"-\") {\n hour += offsetHour;\n minute += offsetMinute;\n } else if (universalTimeRelation === \"+\") {\n hour -= offsetHour;\n minute -= offsetMinute;\n }\n return new Date(Date.UTC(year, month, day, hour, minute, second));\n }\n }]);\n return PDFDateString;\n }();\n exports.PDFDateString = PDFDateString;\n function 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 /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n \"use strict\";\n\n module.exports = __w_pdfjs_require__(3);\n\n /***/\n }, /* 3 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n \"use strict\";\n\n /* module decorator */\n module = __w_pdfjs_require__.nmd(module);\n function _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") {\n _typeof = function _typeof(obj) {\n return typeof obj;\n };\n } else {\n _typeof = function _typeof(obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n };\n }\n return _typeof(obj);\n }\n var 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 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 try {\n define({}, \"\");\n } catch (err) {\n define = function define(obj, key, value) {\n return obj[key] = value;\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 exports.wrap = wrap;\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 var GenStateSuspendedStart = \"suspendedStart\";\n var GenStateSuspendedYield = \"suspendedYield\";\n var GenStateExecuting = \"executing\";\n var GenStateCompleted = \"completed\";\n var ContinueSentinel = {};\n function Generator() {}\n function GeneratorFunction() {}\n function GeneratorFunctionPrototype() {}\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 if (NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol)) {\n IteratorPrototype = NativeIteratorPrototype;\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 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 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 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 genFun.prototype = Object.create(Gp);\n return genFun;\n };\n exports.awrap = function (arg) {\n return {\n __await: arg\n };\n };\n function AsyncIterator(generator, PromiseImpl) {\n function invoke(method, arg, resolve, reject) {\n var record = tryCatch(generator[method], generator, arg);\n if (record.type === \"throw\") {\n reject(record.arg);\n } else {\n var result = record.arg;\n var value = result.value;\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 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 var previousPromise;\n function enqueue(method, arg) {\n function callInvokeWithMethodAndArg() {\n return new PromiseImpl(function (resolve, reject) {\n invoke(method, arg, resolve, reject);\n });\n }\n return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg();\n }\n this._invoke = enqueue;\n }\n defineIteratorMethods(AsyncIterator.prototype);\n define(AsyncIterator.prototype, asyncIteratorSymbol, function () {\n return this;\n });\n exports.AsyncIterator = AsyncIterator;\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 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 if (state === GenStateCompleted) {\n if (method === \"throw\") {\n throw arg;\n }\n return doneResult();\n }\n context.method = method;\n context.arg = arg;\n while (true) {\n var delegate = context.delegate;\n if (delegate) {\n var delegateResult = maybeInvokeDelegate(delegate, context);\n if (delegateResult) {\n if (delegateResult === ContinueSentinel) continue;\n return delegateResult;\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 context.dispatchException(context.arg);\n } else if (context.method === \"return\") {\n context.abrupt(\"return\", context.arg);\n }\n state = GenStateExecuting;\n var record = tryCatch(innerFn, self, context);\n if (record.type === \"normal\") {\n state = context.done ? GenStateCompleted : GenStateSuspendedYield;\n if (record.arg === ContinueSentinel) {\n continue;\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 function maybeInvokeDelegate(delegate, context) {\n var method = delegate.iterator[context.method];\n if (method === undefined) {\n context.delegate = null;\n if (context.method === \"throw\") {\n if (delegate.iterator[\"return\"]) {\n context.method = \"return\";\n context.arg = undefined;\n maybeInvokeDelegate(delegate, context);\n if (context.method === \"throw\") {\n return ContinueSentinel;\n }\n }\n context.method = \"throw\";\n context.arg = new TypeError(\"The iterator does not provide a 'throw' method\");\n }\n return ContinueSentinel;\n }\n var record = tryCatch(method, delegate.iterator, context.arg);\n if (record.type === \"throw\") {\n context.method = \"throw\";\n context.arg = record.arg;\n context.delegate = null;\n return ContinueSentinel;\n }\n var info = record.arg;\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 if (info.done) {\n context[delegate.resultName] = info.value;\n context.next = delegate.nextLoc;\n if (context.method !== \"return\") {\n context.method = \"next\";\n context.arg = undefined;\n }\n } else {\n return info;\n }\n context.delegate = null;\n return ContinueSentinel;\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 function pushTryEntry(locs) {\n var entry = {\n tryLoc: locs[0]\n };\n if (1 in locs) {\n entry.catchLoc = locs[1];\n }\n if (2 in locs) {\n entry.finallyLoc = locs[2];\n entry.afterLoc = locs[3];\n }\n this.tryEntries.push(entry);\n }\n function resetTryEntry(entry) {\n var record = entry.completion || {};\n record.type = \"normal\";\n delete record.arg;\n entry.completion = record;\n }\n function Context(tryLocsList) {\n this.tryEntries = [{\n tryLoc: \"root\"\n }];\n tryLocsList.forEach(pushTryEntry, this);\n this.reset(true);\n }\n exports.keys = function (object) {\n var keys = [];\n for (var key in object) {\n keys.push(key);\n }\n keys.reverse();\n return function next() {\n while (keys.length) {\n var key = keys.pop();\n if (key in object) {\n next.value = key;\n next.done = false;\n return next;\n }\n }\n next.done = true;\n return next;\n };\n };\n function values(iterable) {\n if (iterable) {\n var iteratorMethod = iterable[iteratorSymbol];\n if (iteratorMethod) {\n return iteratorMethod.call(iterable);\n }\n if (typeof iterable.next === \"function\") {\n return iterable;\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 next.value = undefined;\n next.done = true;\n return next;\n };\n return next.next = next;\n }\n }\n return {\n next: doneResult\n };\n }\n exports.values = values;\n function doneResult() {\n return {\n value: undefined,\n done: true\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 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 if (rootRecord.type === \"throw\") {\n throw rootRecord.arg;\n }\n return this.rval;\n },\n dispatchException: function dispatchException(exception) {\n if (this.done) {\n throw exception;\n }\n var context = this;\n function handle(loc, caught) {\n record.type = \"throw\";\n record.arg = exception;\n context.next = loc;\n if (caught) {\n context.method = \"next\";\n context.arg = undefined;\n }\n return !!caught;\n }\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n var record = entry.completion;\n if (entry.tryLoc === \"root\") {\n return handle(\"end\");\n }\n if (entry.tryLoc <= this.prev) {\n var hasCatch = hasOwn.call(entry, \"catchLoc\");\n var hasFinally = hasOwn.call(entry, \"finallyLoc\");\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 if (entry.tryLoc <= this.prev && hasOwn.call(entry, \"finallyLoc\") && this.prev < entry.finallyLoc) {\n var finallyEntry = entry;\n break;\n }\n }\n if (finallyEntry && (type === \"break\" || type === \"continue\") && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc) {\n finallyEntry = null;\n }\n var record = finallyEntry ? finallyEntry.completion : {};\n record.type = type;\n record.arg = arg;\n if (finallyEntry) {\n this.method = \"next\";\n this.next = finallyEntry.finallyLoc;\n return ContinueSentinel;\n }\n return this.complete(record);\n },\n complete: function complete(record, afterLoc) {\n if (record.type === \"throw\") {\n throw record.arg;\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 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 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 if (entry.tryLoc === tryLoc) {\n var record = entry.completion;\n if (record.type === \"throw\") {\n var thrown = record.arg;\n resetTryEntry(entry);\n }\n return thrown;\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 if (this.method === \"next\") {\n this.arg = undefined;\n }\n return ContinueSentinel;\n }\n };\n return exports;\n }((false ? 0 : _typeof(module)) === \"object\" ? module.exports : {});\n try {\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 /***/function (__unused_webpack_module, exports, __w_pdfjs_require__) {\n \"use strict\";\n\n Object.defineProperty(exports, \"__esModule\", {\n value: true\n });\n exports.VerbosityLevel = exports.Util = exports.UnknownErrorException = exports.UnexpectedResponseException = exports.UNSUPPORTED_FEATURES = 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 exports.arrayByteLength = arrayByteLength;\n exports.arraysToBytes = arraysToBytes;\n exports.assert = assert;\n exports.bytesToString = bytesToString;\n exports.createObjectURL = createObjectURL;\n exports.createPromiseCapability = createPromiseCapability;\n exports.createValidAbsoluteUrl = createValidAbsoluteUrl;\n exports.escapeString = escapeString;\n exports.getModificationDate = getModificationDate;\n exports.getVerbosityLevel = getVerbosityLevel;\n exports.info = info;\n exports.isArrayBuffer = isArrayBuffer;\n exports.isArrayEqual = isArrayEqual;\n exports.isAscii = isAscii;\n exports.isBool = isBool;\n exports.isNum = isNum;\n exports.isSameOrigin = isSameOrigin;\n exports.isString = isString;\n exports.objectFromMap = objectFromMap;\n exports.objectSize = objectSize;\n exports.removeNullCharacters = removeNullCharacters;\n exports.setVerbosityLevel = setVerbosityLevel;\n exports.shadow = shadow;\n exports.string32 = string32;\n exports.stringToBytes = stringToBytes;\n exports.stringToPDFString = stringToPDFString;\n exports.stringToUTF16BEString = stringToUTF16BEString;\n exports.stringToUTF8String = stringToUTF8String;\n exports.unreachable = unreachable;\n exports.utf8StringToString = utf8StringToString;\n exports.warn = warn;\n __w_pdfjs_require__(5);\n function _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n }\n function _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n return Constructor;\n }\n function _toConsumableArray(arr) {\n return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread();\n }\n function _nonIterableSpread() {\n 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 }\n function _iterableToArray(iter) {\n if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter);\n }\n function _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) return _arrayLikeToArray(arr);\n }\n function _slicedToArray(arr, i) {\n return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest();\n }\n function _nonIterableRest() {\n 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 }\n function _iterableToArrayLimit(arr, i) {\n var _i = arr == null ? null : typeof Symbol !== \"undefined\" && arr[Symbol.iterator] || arr[\"@@iterator\"];\n if (_i == null) return;\n var _arr = [];\n var _n = true;\n var _d = false;\n var _s, _e;\n try {\n for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) {\n _arr.push(_s.value);\n if (i && _arr.length === i) break;\n }\n } catch (err) {\n _d = true;\n _e = err;\n } finally {\n try {\n if (!_n && _i[\"return\"] != null) _i[\"return\"]();\n } finally {\n if (_d) throw _e;\n }\n }\n return _arr;\n }\n function _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n }\n function _createForOfIteratorHelper(o, allowArrayLike) {\n var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"];\n if (!it) {\n if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") {\n if (it) o = it;\n var i = 0;\n var F = function F() {};\n return {\n s: F,\n n: function n() {\n if (i >= o.length) return {\n done: true\n };\n return {\n done: false,\n value: o[i++]\n };\n },\n e: function e(_e2) {\n throw _e2;\n },\n f: F\n };\n }\n throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n }\n var normalCompletion = true,\n didErr = false,\n err;\n return {\n s: function s() {\n it = it.call(o);\n },\n n: function n() {\n var step = it.next();\n normalCompletion = step.done;\n return step;\n },\n e: function e(_e3) {\n didErr = true;\n err = _e3;\n },\n f: function f() {\n try {\n if (!normalCompletion && it[\"return\"] != null) it[\"return\"]();\n } finally {\n if (didErr) throw err;\n }\n }\n };\n }\n function _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return _arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);\n }\n function _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n for (var i = 0, arr2 = new Array(len); i < len; i++) {\n arr2[i] = arr[i];\n }\n return arr2;\n }\n function _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") {\n _typeof = function _typeof(obj) {\n return typeof obj;\n };\n } else {\n _typeof = function _typeof(obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n };\n }\n return _typeof(obj);\n }\n function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n }\n function _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n writable: true,\n configurable: true\n }\n });\n if (superClass) _setPrototypeOf(subClass, superClass);\n }\n function _setPrototypeOf(o, p) {\n _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n return _setPrototypeOf(o, p);\n }\n function _createSuper(Derived) {\n var hasNativeReflectConstruct = _isNativeReflectConstruct();\n return function _createSuperInternal() {\n var Super = _getPrototypeOf(Derived),\n result;\n if (hasNativeReflectConstruct) {\n var NewTarget = _getPrototypeOf(this).constructor;\n result = Reflect.construct(Super, arguments, NewTarget);\n } else {\n result = Super.apply(this, arguments);\n }\n return _possibleConstructorReturn(this, result);\n };\n }\n function _possibleConstructorReturn(self, call) {\n if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) {\n return call;\n } else if (call !== void 0) {\n throw new TypeError(\"Derived constructors may only return object or undefined\");\n }\n return _assertThisInitialized(self);\n }\n function _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n return self;\n }\n function _isNativeReflectConstruct() {\n if (typeof Reflect === \"undefined\" || !Reflect.construct) return false;\n if (Reflect.construct.sham) return false;\n if (typeof Proxy === \"function\") return true;\n try {\n Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {}));\n return true;\n } catch (e) {\n return false;\n }\n }\n function _getPrototypeOf(o) {\n _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {\n return o.__proto__ || Object.getPrototypeOf(o);\n };\n return _getPrototypeOf(o);\n }\n var IDENTITY_MATRIX = [1, 0, 0, 1, 0, 0];\n exports.IDENTITY_MATRIX = IDENTITY_MATRIX;\n var FONT_IDENTITY_MATRIX = [0.001, 0, 0, 0.001, 0, 0];\n exports.FONT_IDENTITY_MATRIX = FONT_IDENTITY_MATRIX;\n var 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 };\n exports.RenderingIntentFlag = RenderingIntentFlag;\n var AnnotationMode = {\n DISABLE: 0,\n ENABLE: 1,\n ENABLE_FORMS: 2,\n ENABLE_STORAGE: 3\n };\n exports.AnnotationMode = AnnotationMode;\n var 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 };\n exports.PermissionFlag = PermissionFlag;\n var 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 };\n exports.TextRenderingMode = TextRenderingMode;\n var ImageKind = {\n GRAYSCALE_1BPP: 1,\n RGB_24BPP: 2,\n RGBA_32BPP: 3\n };\n exports.ImageKind = ImageKind;\n var 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 };\n exports.AnnotationType = AnnotationType;\n var AnnotationStateModelType = {\n MARKED: \"Marked\",\n REVIEW: \"Review\"\n };\n exports.AnnotationStateModelType = AnnotationStateModelType;\n var AnnotationMarkedState = {\n MARKED: \"Marked\",\n UNMARKED: \"Unmarked\"\n };\n exports.AnnotationMarkedState = AnnotationMarkedState;\n var AnnotationReviewState = {\n ACCEPTED: \"Accepted\",\n REJECTED: \"Rejected\",\n CANCELLED: \"Cancelled\",\n COMPLETED: \"Completed\",\n NONE: \"None\"\n };\n exports.AnnotationReviewState = AnnotationReviewState;\n var AnnotationReplyType = {\n GROUP: \"Group\",\n REPLY: \"R\"\n };\n exports.AnnotationReplyType = AnnotationReplyType;\n var 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 };\n exports.AnnotationFlag = AnnotationFlag;\n var 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 };\n exports.AnnotationFieldFlag = AnnotationFieldFlag;\n var AnnotationBorderStyleType = {\n SOLID: 1,\n DASHED: 2,\n BEVELED: 3,\n INSET: 4,\n UNDERLINE: 5\n };\n exports.AnnotationBorderStyleType = AnnotationBorderStyleType;\n var 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 };\n exports.AnnotationActionEventType = AnnotationActionEventType;\n var DocumentActionEventType = {\n WC: \"WillClose\",\n WS: \"WillSave\",\n DS: \"DidSave\",\n WP: \"WillPrint\",\n DP: \"DidPrint\"\n };\n exports.DocumentActionEventType = DocumentActionEventType;\n var PageActionEventType = {\n O: \"PageOpen\",\n C: \"PageClose\"\n };\n exports.PageActionEventType = PageActionEventType;\n var 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 };\n exports.StreamType = StreamType;\n var 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 };\n exports.FontType = FontType;\n var VerbosityLevel = {\n ERRORS: 0,\n WARNINGS: 1,\n INFOS: 5\n };\n exports.VerbosityLevel = VerbosityLevel;\n var CMapCompressionType = {\n NONE: 0,\n BINARY: 1,\n STREAM: 2\n };\n exports.CMapCompressionType = CMapCompressionType;\n var 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 };\n exports.OPS = OPS;\n var 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 };\n exports.UNSUPPORTED_FEATURES = UNSUPPORTED_FEATURES;\n var PasswordResponses = {\n NEED_PASSWORD: 1,\n INCORRECT_PASSWORD: 2\n };\n exports.PasswordResponses = PasswordResponses;\n var verbosity = VerbosityLevel.WARNINGS;\n function setVerbosityLevel(level) {\n if (Number.isInteger(level)) {\n verbosity = level;\n }\n }\n function getVerbosityLevel() {\n return verbosity;\n }\n function info(msg) {\n if (verbosity >= VerbosityLevel.INFOS) {\n console.log(\"Info: \".concat(msg));\n }\n }\n function warn(msg) {\n if (verbosity >= VerbosityLevel.WARNINGS) {\n console.log(\"Warning: \".concat(msg));\n }\n }\n function unreachable(msg) {\n throw new Error(msg);\n }\n function assert(cond, msg) {\n if (!cond) {\n unreachable(msg);\n }\n }\n function isSameOrigin(baseUrl, otherUrl) {\n var base;\n try {\n base = new URL(baseUrl);\n if (!base.origin || base.origin === \"null\") {\n return false;\n }\n } catch (e) {\n return false;\n }\n var other = new URL(otherUrl, base);\n return base.origin === other.origin;\n }\n function _isValidProtocol(url) {\n if (!url) {\n return false;\n }\n switch (url.protocol) {\n case \"http:\":\n case \"https:\":\n case \"ftp:\":\n case \"mailto:\":\n case \"tel:\":\n return true;\n default:\n return false;\n }\n }\n function 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 if (!url) {\n return null;\n }\n try {\n if (options && typeof url === \"string\") {\n if (options.addDefaultProtocol && url.startsWith(\"www.\")) {\n var dots = url.match(/\\./g);\n if (dots && dots.length >= 2) {\n url = \"http://\".concat(url);\n }\n }\n if (options.tryConvertEncoding) {\n try {\n url = stringToUTF8String(url);\n } catch (ex) {}\n }\n }\n var absoluteUrl = baseUrl ? new URL(url, baseUrl) : new URL(url);\n if (_isValidProtocol(absoluteUrl)) {\n return absoluteUrl;\n }\n } catch (ex) {}\n return null;\n }\n function 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 var BaseException = function BaseExceptionClosure() {\n function BaseException(message, name) {\n if (this.constructor === BaseException) {\n unreachable(\"Cannot initialize BaseException.\");\n }\n this.message = message;\n this.name = name;\n }\n BaseException.prototype = new Error();\n BaseException.constructor = BaseException;\n return BaseException;\n }();\n exports.BaseException = BaseException;\n var PasswordException = /*#__PURE__*/function (_BaseException) {\n _inherits(PasswordException, _BaseException);\n var _super = _createSuper(PasswordException);\n function PasswordException(msg, code) {\n var _this;\n _classCallCheck(this, PasswordException);\n _this = _super.call(this, msg, \"PasswordException\");\n _this.code = code;\n return _this;\n }\n return PasswordException;\n }(BaseException);\n exports.PasswordException = PasswordException;\n var UnknownErrorException = /*#__PURE__*/function (_BaseException2) {\n _inherits(UnknownErrorException, _BaseException2);\n var _super2 = _createSuper(UnknownErrorException);\n function UnknownErrorException(msg, details) {\n var _this2;\n _classCallCheck(this, UnknownErrorException);\n _this2 = _super2.call(this, msg, \"UnknownErrorException\");\n _this2.details = details;\n return _this2;\n }\n return UnknownErrorException;\n }(BaseException);\n exports.UnknownErrorException = UnknownErrorException;\n var InvalidPDFException = /*#__PURE__*/function (_BaseException3) {\n _inherits(InvalidPDFException, _BaseException3);\n var _super3 = _createSuper(InvalidPDFException);\n function InvalidPDFException(msg) {\n _classCallCheck(this, InvalidPDFException);\n return _super3.call(this, msg, \"InvalidPDFException\");\n }\n return InvalidPDFException;\n }(BaseException);\n exports.InvalidPDFException = InvalidPDFException;\n var MissingPDFException = /*#__PURE__*/function (_BaseException4) {\n _inherits(MissingPDFException, _BaseException4);\n var _super4 = _createSuper(MissingPDFException);\n function MissingPDFException(msg) {\n _classCallCheck(this, MissingPDFException);\n return _super4.call(this, msg, \"MissingPDFException\");\n }\n return MissingPDFException;\n }(BaseException);\n exports.MissingPDFException = MissingPDFException;\n var UnexpectedResponseException = /*#__PURE__*/function (_BaseException5) {\n _inherits(UnexpectedResponseException, _BaseException5);\n var _super5 = _createSuper(UnexpectedResponseException);\n function UnexpectedResponseException(msg, status) {\n var _this3;\n _classCallCheck(this, UnexpectedResponseException);\n _this3 = _super5.call(this, msg, \"UnexpectedResponseException\");\n _this3.status = status;\n return _this3;\n }\n return UnexpectedResponseException;\n }(BaseException);\n exports.UnexpectedResponseException = UnexpectedResponseException;\n var FormatError = /*#__PURE__*/function (_BaseException6) {\n _inherits(FormatError, _BaseException6);\n var _super6 = _createSuper(FormatError);\n function FormatError(msg) {\n _classCallCheck(this, FormatError);\n return _super6.call(this, msg, \"FormatError\");\n }\n return FormatError;\n }(BaseException);\n exports.FormatError = FormatError;\n var AbortException = /*#__PURE__*/function (_BaseException7) {\n _inherits(AbortException, _BaseException7);\n var _super7 = _createSuper(AbortException);\n function AbortException(msg) {\n _classCallCheck(this, AbortException);\n return _super7.call(this, msg, \"AbortException\");\n }\n return AbortException;\n }(BaseException);\n exports.AbortException = AbortException;\n var NullCharactersRegExp = /\\x00+/g;\n var InvisibleCharactersRegExp = /[\\x01-\\x1F]/g;\n function removeNullCharacters(str) {\n var replaceInvisible = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n if (typeof str !== \"string\") {\n warn(\"The argument for removeNullCharacters must be a string.\");\n return str;\n }\n if (replaceInvisible) {\n str = str.replace(InvisibleCharactersRegExp, \" \");\n }\n return str.replace(NullCharactersRegExp, \"\");\n }\n function 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 if (length < MAX_ARGUMENT_COUNT) {\n return String.fromCharCode.apply(null, bytes);\n }\n var strBuf = [];\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 return strBuf.join(\"\");\n }\n function stringToBytes(str) {\n assert(typeof str === \"string\", \"Invalid argument for stringToBytes\");\n var length = str.length;\n var bytes = new Uint8Array(length);\n for (var i = 0; i < length; ++i) {\n bytes[i] = str.charCodeAt(i) & 0xff;\n }\n return bytes;\n }\n function arrayByteLength(arr) {\n if (arr.length !== undefined) {\n return arr.length;\n }\n assert(arr.byteLength !== undefined, \"arrayByteLength - invalid argument.\");\n return arr.byteLength;\n }\n function arraysToBytes(arr) {\n var length = arr.length;\n if (length === 1 && arr[0] instanceof Uint8Array) {\n return arr[0];\n }\n var resultLength = 0;\n for (var i = 0; i < length; i++) {\n resultLength += arrayByteLength(arr[i]);\n }\n var pos = 0;\n var data = new Uint8Array(resultLength);\n for (var _i = 0; _i < length; _i++) {\n var item = arr[_i];\n if (!(item instanceof Uint8Array)) {\n if (typeof item === \"string\") {\n item = stringToBytes(item);\n } else {\n item = new Uint8Array(item);\n }\n }\n var itemLength = item.byteLength;\n data.set(item, pos);\n pos += itemLength;\n }\n return data;\n }\n function string32(value) {\n return String.fromCharCode(value >> 24 & 0xff, value >> 16 & 0xff, value >> 8 & 0xff, value & 0xff);\n }\n function objectSize(obj) {\n return Object.keys(obj).length;\n }\n function objectFromMap(map) {\n var obj = Object.create(null);\n var _iterator = _createForOfIteratorHelper(map),\n _step;\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 obj[key] = value;\n }\n } catch (err) {\n _iterator.e(err);\n } finally {\n _iterator.f();\n }\n return obj;\n }\n function 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 var IsLittleEndianCached = {\n get value() {\n return shadow(this, \"value\", isLittleEndian());\n }\n };\n exports.IsLittleEndianCached = IsLittleEndianCached;\n function isEvalSupported() {\n try {\n new Function(\"\");\n return true;\n } catch (e) {\n return false;\n }\n }\n var IsEvalSupportedCached = {\n get value() {\n return shadow(this, \"value\", isEvalSupported());\n }\n };\n exports.IsEvalSupportedCached = IsEvalSupportedCached;\n var hexNumbers = _toConsumableArray(Array(256).keys()).map(function (n) {\n return n.toString(16).padStart(2, \"0\");\n });\n var Util = /*#__PURE__*/function () {\n function Util() {\n _classCallCheck(this, Util);\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 if (rect[0] > rect[2]) {\n r[0] = rect[2];\n r[2] = rect[0];\n }\n if (rect[1] > rect[3]) {\n r[1] = rect[3];\n r[3] = rect[1];\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 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 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 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 return result;\n }\n }, {\n key: \"bezierBoundingBox\",\n value: function bezierBoundingBox(x0, y0, x1, y1, x2, y2, x3, y3) {\n var tvalues = [],\n bounds = [[], []];\n var a, b, c, t, t1, t2, b2ac, sqrtb2ac;\n for (var i = 0; i < 2; ++i) {\n if (i === 0) {\n b = 6 * x0 - 12 * x1 + 6 * x2;\n a = -3 * x0 + 9 * x1 - 9 * x2 + 3 * x3;\n c = 3 * x1 - 3 * x0;\n } else {\n b = 6 * y0 - 12 * y1 + 6 * y2;\n a = -3 * y0 + 9 * y1 - 9 * y2 + 3 * y3;\n c = 3 * y1 - 3 * y0;\n }\n if (Math.abs(a) < 1e-12) {\n if (Math.abs(b) < 1e-12) {\n continue;\n }\n t = -c / b;\n if (0 < t && t < 1) {\n tvalues.push(t);\n }\n continue;\n }\n b2ac = b * b - 4 * c * a;\n sqrtb2ac = Math.sqrt(b2ac);\n if (b2ac < 0) {\n continue;\n }\n t1 = (-b + sqrtb2ac) / (2 * a);\n if (0 < t1 && t1 < 1) {\n tvalues.push(t1);\n }\n t2 = (-b - sqrtb2ac) / (2 * a);\n if (0 < t2 && t2 < 1) {\n tvalues.push(t2);\n }\n }\n var j = tvalues.length,\n mt;\n var jlen = j;\n while (j--) {\n t = tvalues[j];\n mt = 1 - t;\n bounds[0][j] = mt * mt * mt * x0 + 3 * mt * mt * t * x1 + 3 * mt * t * t * x2 + t * t * t * x3;\n bounds[1][j] = mt * mt * mt * y0 + 3 * mt * mt * t * y1 + 3 * mt * t * t * y2 + t * t * t * y3;\n }\n bounds[0][jlen] = x0;\n bounds[1][jlen] = y0;\n bounds[0][jlen + 1] = x3;\n bounds[1][jlen + 1] = y3;\n bounds[0].length = bounds[1].length = jlen + 2;\n return [Math.min.apply(Math, _toConsumableArray(bounds[0])), Math.min.apply(Math, _toConsumableArray(bounds[1])), Math.max.apply(Math, _toConsumableArray(bounds[0])), Math.max.apply(Math, _toConsumableArray(bounds[1]))];\n }\n }]);\n return Util;\n }();\n exports.Util = Util;\n var 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 function stringToPDFString(str) {\n var length = str.length,\n strBuf = [];\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 return strBuf.join(\"\");\n }\n function 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 return \"\\\\\".concat(match);\n });\n }\n function isAscii(str) {\n return /^[\\x00-\\x7F]*$/.test(str);\n }\n function stringToUTF16BEString(str) {\n var buf = [\"\\xFE\\xFF\"];\n for (var i = 0, ii = str.length; i < ii; i++) {\n var _char = str.charCodeAt(i);\n buf.push(String.fromCharCode(_char >> 8 & 0xff), String.fromCharCode(_char & 0xff));\n }\n return buf.join(\"\");\n }\n function stringToUTF8String(str) {\n return decodeURIComponent(escape(str));\n }\n function utf8StringToString(str) {\n return unescape(encodeURIComponent(str));\n }\n function isBool(v) {\n return typeof v === \"boolean\";\n }\n function isNum(v) {\n return typeof v === \"number\";\n }\n function isString(v) {\n return typeof v === \"string\";\n }\n function isArrayBuffer(v) {\n return _typeof(v) === \"object\" && v !== null && v.byteLength !== undefined;\n }\n function isArrayEqual(arr1, arr2) {\n if (arr1.length !== arr2.length) {\n return false;\n }\n for (var i = 0, ii = arr1.length; i < ii; i++) {\n if (arr1[i] !== arr2[i]) {\n return false;\n }\n }\n return true;\n }\n function 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 function 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 capability.reject = function (reason) {\n isSettled = true;\n reject(reason);\n };\n });\n return capability;\n }\n function 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 if (URL.createObjectURL && typeof Blob !== \"undefined\" && !forceDataSchema) {\n return URL.createObjectURL(new Blob([data], {\n type: contentType\n }));\n }\n var digits = \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\";\n var buffer = \"data:\".concat(contentType, \";base64,\");\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 return buffer;\n }\n\n /***/\n }, /* 5 */\n /***/function (__unused_webpack_module, __unused_webpack_exports, __w_pdfjs_require__) {\n \"use strict\";\n\n var _is_node = __w_pdfjs_require__(6);\n if (typeof globalThis === \"undefined\" || !globalThis._pdfjsCompatibilityChecked) {\n if (typeof globalThis === \"undefined\" || globalThis.Math !== Math) {\n globalThis = __w_pdfjs_require__(7);\n }\n globalThis._pdfjsCompatibilityChecked = true;\n (function checkNodeBtoa() {\n if (globalThis.btoa || !_is_node.isNodeJS) {\n return;\n }\n globalThis.btoa = function (chars) {\n return Buffer.from(chars, \"binary\").toString(\"base64\");\n };\n })();\n (function checkNodeAtob() {\n if (globalThis.atob || !_is_node.isNodeJS) {\n return;\n }\n globalThis.atob = function (input) {\n return Buffer.from(input, \"base64\").toString(\"binary\");\n };\n })();\n (function checkDOMMatrix() {\n if (globalThis.DOMMatrix || !_is_node.isNodeJS) {\n return;\n }\n globalThis.DOMMatrix = __w_pdfjs_require__(69);\n })();\n (function checkObjectFromEntries() {\n if (Object.fromEntries) {\n return;\n }\n __w_pdfjs_require__(70);\n })();\n (function checkPromise() {\n if (globalThis.Promise.allSettled) {\n return;\n }\n globalThis.Promise = __w_pdfjs_require__(97);\n })();\n (function checkReadableStream() {\n if (globalThis.ReadableStream || !_is_node.isNodeJS) {\n return;\n }\n globalThis.ReadableStream = __w_pdfjs_require__(134).ReadableStream;\n })();\n }\n\n /***/\n }, /* 6 */\n /***/function (__unused_webpack_module, exports) {\n \"use strict\";\n\n Object.defineProperty(exports, \"__esModule\", {\n value: true\n });\n exports.isNodeJS = void 0;\n function _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") {\n _typeof = function _typeof(obj) {\n return typeof obj;\n };\n } else {\n _typeof = function _typeof(obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n };\n }\n return _typeof(obj);\n }\n var isNodeJS = (typeof process === \"undefined\" ? \"undefined\" : _typeof(process)) === \"object\" && process + \"\" === \"[object process]\" && !process.versions.nw && !(process.versions.electron && process.type && process.type !== \"browser\");\n exports.isNodeJS = isNodeJS;\n\n /***/\n }, /* 7 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n __w_pdfjs_require__(8);\n module.exports = __w_pdfjs_require__(10);\n\n /***/\n }, /* 8 */\n /***/function (__unused_webpack_module, __unused_webpack_exports, __w_pdfjs_require__) {\n var $ = __w_pdfjs_require__(9);\n var global = __w_pdfjs_require__(10);\n $({\n global: true\n }, {\n globalThis: global\n });\n\n /***/\n }, /* 9 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n var global = __w_pdfjs_require__(10);\n var getOwnPropertyDescriptor = __w_pdfjs_require__(11).f;\n var createNonEnumerableProperty = __w_pdfjs_require__(47);\n var redefine = __w_pdfjs_require__(50);\n var setGlobal = __w_pdfjs_require__(41);\n var copyConstructorProperties = __w_pdfjs_require__(57);\n var isForced = __w_pdfjs_require__(68);\n module.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) for (key in source) {\n sourceProperty = source[key];\n if (options.noTargetGet) {\n descriptor = getOwnPropertyDescriptor(target, key);\n targetProperty = descriptor && descriptor.value;\n } else targetProperty = target[key];\n FORCED = isForced(GLOBAL ? key : TARGET + (STATIC ? '.' : '#') + key, options.forced);\n if (!FORCED && targetProperty !== undefined) {\n if (typeof sourceProperty == typeof targetProperty) 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 /***/function (module) {\n var check = function check(it) {\n return it && it.Math == Math && it;\n };\n module.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 /***/function (__unused_webpack_module, exports, __w_pdfjs_require__) {\n var DESCRIPTORS = __w_pdfjs_require__(12);\n var call = __w_pdfjs_require__(14);\n var propertyIsEnumerableModule = __w_pdfjs_require__(15);\n var createPropertyDescriptor = __w_pdfjs_require__(16);\n var toIndexedObject = __w_pdfjs_require__(17);\n var toPropertyKey = __w_pdfjs_require__(22);\n var hasOwn = __w_pdfjs_require__(42);\n var IE8_DOM_DEFINE = __w_pdfjs_require__(45);\n var $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n exports.f = DESCRIPTORS ? $getOwnPropertyDescriptor : function getOwnPropertyDescriptor(O, P) {\n O = toIndexedObject(O);\n P = toPropertyKey(P);\n if (IE8_DOM_DEFINE) try {\n return $getOwnPropertyDescriptor(O, P);\n } catch (error) {}\n if (hasOwn(O, P)) return createPropertyDescriptor(!call(propertyIsEnumerableModule.f, O, P), O[P]);\n };\n\n /***/\n }, /* 12 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n var fails = __w_pdfjs_require__(13);\n module.exports = !fails(function () {\n return Object.defineProperty({}, 1, {\n get: function get() {\n return 7;\n }\n })[1] != 7;\n });\n\n /***/\n }, /* 13 */\n /***/function (module) {\n module.exports = function (exec) {\n try {\n return !!exec();\n } catch (error) {\n return true;\n }\n };\n\n /***/\n }, /* 14 */\n /***/function (module) {\n var call = Function.prototype.call;\n module.exports = call.bind ? call.bind(call) : function () {\n return call.apply(call, arguments);\n };\n\n /***/\n }, /* 15 */\n /***/function (__unused_webpack_module, exports) {\n \"use strict\";\n\n var $propertyIsEnumerable = {}.propertyIsEnumerable;\n var getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n var NASHORN_BUG = getOwnPropertyDescriptor && !$propertyIsEnumerable.call({\n 1: 2\n }, 1);\n exports.f = NASHORN_BUG ? function propertyIsEnumerable(V) {\n var descriptor = getOwnPropertyDescriptor(this, V);\n return !!descriptor && descriptor.enumerable;\n } : $propertyIsEnumerable;\n\n /***/\n }, /* 16 */\n /***/function (module) {\n module.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 }, /* 17 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n var IndexedObject = __w_pdfjs_require__(18);\n var requireObjectCoercible = __w_pdfjs_require__(21);\n module.exports = function (it) {\n return IndexedObject(requireObjectCoercible(it));\n };\n\n /***/\n }, /* 18 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n var global = __w_pdfjs_require__(10);\n var uncurryThis = __w_pdfjs_require__(19);\n var fails = __w_pdfjs_require__(13);\n var classof = __w_pdfjs_require__(20);\n var Object = global.Object;\n var split = uncurryThis(''.split);\n module.exports = fails(function () {\n return !Object('z').propertyIsEnumerable(0);\n }) ? function (it) {\n return classof(it) == 'String' ? split(it, '') : Object(it);\n } : Object;\n\n /***/\n }, /* 19 */\n /***/function (module) {\n var FunctionPrototype = Function.prototype;\n var bind = FunctionPrototype.bind;\n var call = FunctionPrototype.call;\n var callBind = bind && bind.bind(call);\n module.exports = bind ? function (fn) {\n return fn && callBind(call, fn);\n } : function (fn) {\n return fn && function () {\n return call.apply(fn, arguments);\n };\n };\n\n /***/\n }, /* 20 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n var uncurryThis = __w_pdfjs_require__(19);\n var toString = uncurryThis({}.toString);\n var stringSlice = uncurryThis(''.slice);\n module.exports = function (it) {\n return stringSlice(toString(it), 8, -1);\n };\n\n /***/\n }, /* 21 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n var global = __w_pdfjs_require__(10);\n var TypeError = global.TypeError;\n module.exports = function (it) {\n if (it == undefined) throw TypeError(\"Can't call method on \" + it);\n return it;\n };\n\n /***/\n }, /* 22 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n var toPrimitive = __w_pdfjs_require__(23);\n var isSymbol = __w_pdfjs_require__(26);\n module.exports = function (argument) {\n var key = toPrimitive(argument, 'string');\n return isSymbol(key) ? key : key + '';\n };\n\n /***/\n }, /* 23 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n var global = __w_pdfjs_require__(10);\n var call = __w_pdfjs_require__(14);\n var isObject = __w_pdfjs_require__(24);\n var isSymbol = __w_pdfjs_require__(26);\n var getMethod = __w_pdfjs_require__(33);\n var ordinaryToPrimitive = __w_pdfjs_require__(36);\n var wellKnownSymbol = __w_pdfjs_require__(37);\n var TypeError = global.TypeError;\n var TO_PRIMITIVE = wellKnownSymbol('toPrimitive');\n module.exports = function (input, pref) {\n if (!isObject(input) || isSymbol(input)) return input;\n var exoticToPrim = getMethod(input, TO_PRIMITIVE);\n var result;\n if (exoticToPrim) {\n if (pref === undefined) pref = 'default';\n result = call(exoticToPrim, input, pref);\n if (!isObject(result) || isSymbol(result)) return result;\n throw TypeError(\"Can't convert object to primitive value\");\n }\n if (pref === undefined) pref = 'number';\n return ordinaryToPrimitive(input, pref);\n };\n\n /***/\n }, /* 24 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n var isCallable = __w_pdfjs_require__(25);\n module.exports = function (it) {\n return typeof it == 'object' ? it !== null : isCallable(it);\n };\n\n /***/\n }, /* 25 */\n /***/function (module) {\n module.exports = function (argument) {\n return typeof argument == 'function';\n };\n\n /***/\n }, /* 26 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n var global = __w_pdfjs_require__(10);\n var getBuiltIn = __w_pdfjs_require__(27);\n var isCallable = __w_pdfjs_require__(25);\n var isPrototypeOf = __w_pdfjs_require__(28);\n var USE_SYMBOL_AS_UID = __w_pdfjs_require__(29);\n var Object = global.Object;\n module.exports = USE_SYMBOL_AS_UID ? function (it) {\n return typeof it == 'symbol';\n } : function (it) {\n var $Symbol = getBuiltIn('Symbol');\n return isCallable($Symbol) && isPrototypeOf($Symbol.prototype, Object(it));\n };\n\n /***/\n }, /* 27 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n var global = __w_pdfjs_require__(10);\n var isCallable = __w_pdfjs_require__(25);\n var aFunction = function aFunction(argument) {\n return isCallable(argument) ? argument : undefined;\n };\n module.exports = function (namespace, method) {\n return arguments.length < 2 ? aFunction(global[namespace]) : global[namespace] && global[namespace][method];\n };\n\n /***/\n }, /* 28 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n var uncurryThis = __w_pdfjs_require__(19);\n module.exports = uncurryThis({}.isPrototypeOf);\n\n /***/\n }, /* 29 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n var NATIVE_SYMBOL = __w_pdfjs_require__(30);\n module.exports = NATIVE_SYMBOL && !Symbol.sham && typeof Symbol.iterator == 'symbol';\n\n /***/\n }, /* 30 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n var V8_VERSION = __w_pdfjs_require__(31);\n var fails = __w_pdfjs_require__(13);\n module.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 }, /* 31 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n var global = __w_pdfjs_require__(10);\n var userAgent = __w_pdfjs_require__(32);\n var process = global.process;\n var Deno = global.Deno;\n var versions = process && process.versions || Deno && Deno.version;\n var v8 = versions && versions.v8;\n var match, version;\n if (v8) {\n match = v8.split('.');\n version = match[0] > 0 && match[0] < 4 ? 1 : +(match[0] + match[1]);\n }\n if (!version && userAgent) {\n match = userAgent.match(/Edge\\/(\\d+)/);\n if (!match || match[1] >= 74) {\n match = userAgent.match(/Chrome\\/(\\d+)/);\n if (match) version = +match[1];\n }\n }\n module.exports = version;\n\n /***/\n }, /* 32 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n var getBuiltIn = __w_pdfjs_require__(27);\n module.exports = getBuiltIn('navigator', 'userAgent') || '';\n\n /***/\n }, /* 33 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n var aCallable = __w_pdfjs_require__(34);\n module.exports = function (V, P) {\n var func = V[P];\n return func == null ? undefined : aCallable(func);\n };\n\n /***/\n }, /* 34 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n var global = __w_pdfjs_require__(10);\n var isCallable = __w_pdfjs_require__(25);\n var tryToString = __w_pdfjs_require__(35);\n var TypeError = global.TypeError;\n module.exports = function (argument) {\n if (isCallable(argument)) return argument;\n throw TypeError(tryToString(argument) + ' is not a function');\n };\n\n /***/\n }, /* 35 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n var global = __w_pdfjs_require__(10);\n var String = global.String;\n module.exports = function (argument) {\n try {\n return String(argument);\n } catch (error) {\n return 'Object';\n }\n };\n\n /***/\n }, /* 36 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n var global = __w_pdfjs_require__(10);\n var call = __w_pdfjs_require__(14);\n var isCallable = __w_pdfjs_require__(25);\n var isObject = __w_pdfjs_require__(24);\n var TypeError = global.TypeError;\n module.exports = function (input, pref) {\n var fn, val;\n if (pref === 'string' && isCallable(fn = input.toString) && !isObject(val = call(fn, input))) return val;\n if (isCallable(fn = input.valueOf) && !isObject(val = call(fn, input))) return val;\n if (pref !== 'string' && isCallable(fn = input.toString) && !isObject(val = call(fn, input))) return val;\n throw TypeError(\"Can't convert object to primitive value\");\n };\n\n /***/\n }, /* 37 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n var global = __w_pdfjs_require__(10);\n var shared = __w_pdfjs_require__(38);\n var hasOwn = __w_pdfjs_require__(42);\n var uid = __w_pdfjs_require__(44);\n var NATIVE_SYMBOL = __w_pdfjs_require__(30);\n var USE_SYMBOL_AS_UID = __w_pdfjs_require__(29);\n var WellKnownSymbolsStore = shared('wks');\n var Symbol = global.Symbol;\n var symbolFor = Symbol && Symbol['for'];\n var createWellKnownSymbol = USE_SYMBOL_AS_UID ? Symbol : Symbol && Symbol.withoutSetter || uid;\n module.exports = function (name) {\n if (!hasOwn(WellKnownSymbolsStore, name) || !(NATIVE_SYMBOL || typeof WellKnownSymbolsStore[name] == 'string')) {\n var description = 'Symbol.' + name;\n if (NATIVE_SYMBOL && hasOwn(Symbol, name)) {\n WellKnownSymbolsStore[name] = Symbol[name];\n } else if (USE_SYMBOL_AS_UID && symbolFor) {\n WellKnownSymbolsStore[name] = symbolFor(description);\n } else {\n WellKnownSymbolsStore[name] = createWellKnownSymbol(description);\n }\n }\n return WellKnownSymbolsStore[name];\n };\n\n /***/\n }, /* 38 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n var IS_PURE = __w_pdfjs_require__(39);\n var store = __w_pdfjs_require__(40);\n (module.exports = function (key, value) {\n return store[key] || (store[key] = value !== undefined ? value : {});\n })('versions', []).push({\n version: '3.19.3',\n mode: IS_PURE ? 'pure' : 'global',\n copyright: '© 2021 Denis Pushkarev (zloirock.ru)'\n });\n\n /***/\n }, /* 39 */\n /***/function (module) {\n module.exports = false;\n\n /***/\n }, /* 40 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n var global = __w_pdfjs_require__(10);\n var setGlobal = __w_pdfjs_require__(41);\n var SHARED = '__core-js_shared__';\n var store = global[SHARED] || setGlobal(SHARED, {});\n module.exports = store;\n\n /***/\n }, /* 41 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n var global = __w_pdfjs_require__(10);\n var defineProperty = Object.defineProperty;\n module.exports = function (key, value) {\n try {\n 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 }, /* 42 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n var uncurryThis = __w_pdfjs_require__(19);\n var toObject = __w_pdfjs_require__(43);\n var hasOwnProperty = uncurryThis({}.hasOwnProperty);\n module.exports = Object.hasOwn || function hasOwn(it, key) {\n return hasOwnProperty(toObject(it), key);\n };\n\n /***/\n }, /* 43 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n var global = __w_pdfjs_require__(10);\n var requireObjectCoercible = __w_pdfjs_require__(21);\n var Object = global.Object;\n module.exports = function (argument) {\n return Object(requireObjectCoercible(argument));\n };\n\n /***/\n }, /* 44 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n var uncurryThis = __w_pdfjs_require__(19);\n var id = 0;\n var postfix = Math.random();\n var toString = uncurryThis(1.0.toString);\n module.exports = function (key) {\n return 'Symbol(' + (key === undefined ? '' : key) + ')_' + toString(++id + postfix, 36);\n };\n\n /***/\n }, /* 45 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n var DESCRIPTORS = __w_pdfjs_require__(12);\n var fails = __w_pdfjs_require__(13);\n var createElement = __w_pdfjs_require__(46);\n module.exports = !DESCRIPTORS && !fails(function () {\n return Object.defineProperty(createElement('div'), 'a', {\n get: function get() {\n return 7;\n }\n }).a != 7;\n });\n\n /***/\n }, /* 46 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n var global = __w_pdfjs_require__(10);\n var isObject = __w_pdfjs_require__(24);\n var document = global.document;\n var EXISTS = isObject(document) && isObject(document.createElement);\n module.exports = function (it) {\n return EXISTS ? document.createElement(it) : {};\n };\n\n /***/\n }, /* 47 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n var DESCRIPTORS = __w_pdfjs_require__(12);\n var definePropertyModule = __w_pdfjs_require__(48);\n var createPropertyDescriptor = __w_pdfjs_require__(16);\n module.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 }, /* 48 */\n /***/function (__unused_webpack_module, exports, __w_pdfjs_require__) {\n var global = __w_pdfjs_require__(10);\n var DESCRIPTORS = __w_pdfjs_require__(12);\n var IE8_DOM_DEFINE = __w_pdfjs_require__(45);\n var anObject = __w_pdfjs_require__(49);\n var toPropertyKey = __w_pdfjs_require__(22);\n var TypeError = global.TypeError;\n var $defineProperty = Object.defineProperty;\n exports.f = DESCRIPTORS ? $defineProperty : function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPropertyKey(P);\n anObject(Attributes);\n if (IE8_DOM_DEFINE) try {\n return $defineProperty(O, P, Attributes);\n } catch (error) {}\n if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported');\n if ('value' in Attributes) O[P] = Attributes.value;\n return O;\n };\n\n /***/\n }, /* 49 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n var global = __w_pdfjs_require__(10);\n var isObject = __w_pdfjs_require__(24);\n var String = global.String;\n var TypeError = global.TypeError;\n module.exports = function (argument) {\n if (isObject(argument)) return argument;\n throw TypeError(String(argument) + ' is not an object');\n };\n\n /***/\n }, /* 50 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n var global = __w_pdfjs_require__(10);\n var isCallable = __w_pdfjs_require__(25);\n var hasOwn = __w_pdfjs_require__(42);\n var createNonEnumerableProperty = __w_pdfjs_require__(47);\n var setGlobal = __w_pdfjs_require__(41);\n var inspectSource = __w_pdfjs_require__(51);\n var InternalStateModule = __w_pdfjs_require__(52);\n var CONFIGURABLE_FUNCTION_NAME = __w_pdfjs_require__(56).CONFIGURABLE;\n var getInternalState = InternalStateModule.get;\n var enforceInternalState = InternalStateModule.enforce;\n var 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 name = options && options.name !== undefined ? options.name : key;\n var state;\n if (isCallable(value)) {\n if (String(name).slice(0, 7) === 'Symbol(') {\n name = '[' + String(name).replace(/^Symbol\\(([^)]*)\\)/, '$1') + ']';\n }\n if (!hasOwn(value, 'name') || CONFIGURABLE_FUNCTION_NAME && value.name !== name) {\n createNonEnumerableProperty(value, 'name', name);\n }\n state = enforceInternalState(value);\n if (!state.source) {\n state.source = TEMPLATE.join(typeof name == 'string' ? name : '');\n }\n }\n if (O === global) {\n if (simple) O[key] = value;else 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) O[key] = value;else createNonEnumerableProperty(O, key, value);\n })(Function.prototype, 'toString', function toString() {\n return isCallable(this) && getInternalState(this).source || inspectSource(this);\n });\n\n /***/\n }, /* 51 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n var uncurryThis = __w_pdfjs_require__(19);\n var isCallable = __w_pdfjs_require__(25);\n var store = __w_pdfjs_require__(40);\n var functionToString = uncurryThis(Function.toString);\n if (!isCallable(store.inspectSource)) {\n store.inspectSource = function (it) {\n return functionToString(it);\n };\n }\n module.exports = store.inspectSource;\n\n /***/\n }, /* 52 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n var NATIVE_WEAK_MAP = __w_pdfjs_require__(53);\n var global = __w_pdfjs_require__(10);\n var uncurryThis = __w_pdfjs_require__(19);\n var isObject = __w_pdfjs_require__(24);\n var createNonEnumerableProperty = __w_pdfjs_require__(47);\n var hasOwn = __w_pdfjs_require__(42);\n var shared = __w_pdfjs_require__(40);\n var sharedKey = __w_pdfjs_require__(54);\n var hiddenKeys = __w_pdfjs_require__(55);\n var OBJECT_ALREADY_INITIALIZED = 'Object already initialized';\n var TypeError = global.TypeError;\n var WeakMap = global.WeakMap;\n var set, get, has;\n var enforce = function enforce(it) {\n return has(it) ? get(it) : set(it, {});\n };\n var getterFor = function getterFor(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 };\n if (NATIVE_WEAK_MAP || shared.state) {\n var store = shared.state || (shared.state = new WeakMap());\n var wmget = uncurryThis(store.get);\n var wmhas = uncurryThis(store.has);\n var wmset = uncurryThis(store.set);\n set = function set(it, metadata) {\n if (wmhas(store, it)) throw new TypeError(OBJECT_ALREADY_INITIALIZED);\n metadata.facade = it;\n wmset(store, it, metadata);\n return metadata;\n };\n get = function get(it) {\n return wmget(store, it) || {};\n };\n has = function has(it) {\n return wmhas(store, it);\n };\n } else {\n var STATE = sharedKey('state');\n hiddenKeys[STATE] = true;\n set = function set(it, metadata) {\n if (hasOwn(it, STATE)) throw new TypeError(OBJECT_ALREADY_INITIALIZED);\n metadata.facade = it;\n createNonEnumerableProperty(it, STATE, metadata);\n return metadata;\n };\n get = function get(it) {\n return hasOwn(it, STATE) ? it[STATE] : {};\n };\n has = function has(it) {\n return hasOwn(it, STATE);\n };\n }\n module.exports = {\n set: set,\n get: get,\n has: has,\n enforce: enforce,\n getterFor: getterFor\n };\n\n /***/\n }, /* 53 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n var global = __w_pdfjs_require__(10);\n var isCallable = __w_pdfjs_require__(25);\n var inspectSource = __w_pdfjs_require__(51);\n var WeakMap = global.WeakMap;\n module.exports = isCallable(WeakMap) && /native code/.test(inspectSource(WeakMap));\n\n /***/\n }, /* 54 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n var shared = __w_pdfjs_require__(38);\n var uid = __w_pdfjs_require__(44);\n var keys = shared('keys');\n module.exports = function (key) {\n return keys[key] || (keys[key] = uid(key));\n };\n\n /***/\n }, /* 55 */\n /***/function (module) {\n module.exports = {};\n\n /***/\n }, /* 56 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n var DESCRIPTORS = __w_pdfjs_require__(12);\n var hasOwn = __w_pdfjs_require__(42);\n var FunctionPrototype = Function.prototype;\n var getDescriptor = DESCRIPTORS && Object.getOwnPropertyDescriptor;\n var EXISTS = hasOwn(FunctionPrototype, 'name');\n var PROPER = EXISTS && function something() {}.name === 'something';\n var CONFIGURABLE = EXISTS && (!DESCRIPTORS || DESCRIPTORS && getDescriptor(FunctionPrototype, 'name').configurable);\n module.exports = {\n EXISTS: EXISTS,\n PROPER: PROPER,\n CONFIGURABLE: CONFIGURABLE\n };\n\n /***/\n }, /* 57 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n var hasOwn = __w_pdfjs_require__(42);\n var ownKeys = __w_pdfjs_require__(58);\n var getOwnPropertyDescriptorModule = __w_pdfjs_require__(11);\n var definePropertyModule = __w_pdfjs_require__(48);\n module.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 (!hasOwn(target, key)) defineProperty(target, key, getOwnPropertyDescriptor(source, key));\n }\n };\n\n /***/\n }, /* 58 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n var getBuiltIn = __w_pdfjs_require__(27);\n var uncurryThis = __w_pdfjs_require__(19);\n var getOwnPropertyNamesModule = __w_pdfjs_require__(59);\n var getOwnPropertySymbolsModule = __w_pdfjs_require__(67);\n var anObject = __w_pdfjs_require__(49);\n var concat = uncurryThis([].concat);\n module.exports = getBuiltIn('Reflect', 'ownKeys') || function ownKeys(it) {\n var keys = getOwnPropertyNamesModule.f(anObject(it));\n var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;\n return getOwnPropertySymbols ? concat(keys, getOwnPropertySymbols(it)) : keys;\n };\n\n /***/\n }, /* 59 */\n /***/function (__unused_webpack_module, exports, __w_pdfjs_require__) {\n var internalObjectKeys = __w_pdfjs_require__(60);\n var enumBugKeys = __w_pdfjs_require__(66);\n var hiddenKeys = enumBugKeys.concat('length', 'prototype');\n exports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {\n return internalObjectKeys(O, hiddenKeys);\n };\n\n /***/\n }, /* 60 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n var uncurryThis = __w_pdfjs_require__(19);\n var hasOwn = __w_pdfjs_require__(42);\n var toIndexedObject = __w_pdfjs_require__(17);\n var indexOf = __w_pdfjs_require__(61).indexOf;\n var hiddenKeys = __w_pdfjs_require__(55);\n var push = uncurryThis([].push);\n module.exports = function (object, names) {\n var O = toIndexedObject(object);\n var i = 0;\n var result = [];\n var key;\n for (key in O) !hasOwn(hiddenKeys, key) && hasOwn(O, key) && push(result, key);\n while (names.length > i) if (hasOwn(O, key = names[i++])) {\n ~indexOf(result, key) || push(result, key);\n }\n return result;\n };\n\n /***/\n }, /* 61 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n var toIndexedObject = __w_pdfjs_require__(17);\n var toAbsoluteIndex = __w_pdfjs_require__(62);\n var lengthOfArrayLike = __w_pdfjs_require__(64);\n var createMethod = function createMethod(IS_INCLUDES) {\n return function ($this, el, fromIndex) {\n var O = toIndexedObject($this);\n var length = lengthOfArrayLike(O);\n var index = toAbsoluteIndex(fromIndex, length);\n var value;\n if (IS_INCLUDES && el != el) while (length > index) {\n value = O[index++];\n if (value != value) return true;\n } else for (; length > index; index++) {\n if ((IS_INCLUDES || index in O) && O[index] === el) return IS_INCLUDES || index || 0;\n }\n return !IS_INCLUDES && -1;\n };\n };\n module.exports = {\n includes: createMethod(true),\n indexOf: createMethod(false)\n };\n\n /***/\n }, /* 62 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n var toIntegerOrInfinity = __w_pdfjs_require__(63);\n var max = Math.max;\n var min = Math.min;\n module.exports = function (index, length) {\n var integer = toIntegerOrInfinity(index);\n return integer < 0 ? max(integer + length, 0) : min(integer, length);\n };\n\n /***/\n }, /* 63 */\n /***/function (module) {\n var ceil = Math.ceil;\n var floor = Math.floor;\n module.exports = function (argument) {\n var number = +argument;\n return number !== number || number === 0 ? 0 : (number > 0 ? floor : ceil)(number);\n };\n\n /***/\n }, /* 64 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n var toLength = __w_pdfjs_require__(65);\n module.exports = function (obj) {\n return toLength(obj.length);\n };\n\n /***/\n }, /* 65 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n var toIntegerOrInfinity = __w_pdfjs_require__(63);\n var min = Math.min;\n module.exports = function (argument) {\n return argument > 0 ? min(toIntegerOrInfinity(argument), 0x1FFFFFFFFFFFFF) : 0;\n };\n\n /***/\n }, /* 66 */\n /***/function (module) {\n module.exports = ['constructor', 'hasOwnProperty', 'isPrototypeOf', 'propertyIsEnumerable', 'toLocaleString', 'toString', 'valueOf'];\n\n /***/\n }, /* 67 */\n /***/function (__unused_webpack_module, exports) {\n exports.f = Object.getOwnPropertySymbols;\n\n /***/\n }, /* 68 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n var fails = __w_pdfjs_require__(13);\n var isCallable = __w_pdfjs_require__(25);\n var replacement = /#|\\.prototype\\./;\n var isForced = function isForced(feature, detection) {\n var value = data[normalize(feature)];\n return value == POLYFILL ? true : value == NATIVE ? false : isCallable(detection) ? fails(detection) : !!detection;\n };\n var normalize = isForced.normalize = function (string) {\n return String(string).replace(replacement, '.').toLowerCase();\n };\n var data = isForced.data = {};\n var NATIVE = isForced.NATIVE = 'N';\n var POLYFILL = isForced.POLYFILL = 'P';\n module.exports = isForced;\n\n /***/\n }, /* 69 */\n /***/function (module, exports, __w_pdfjs_require__) {\n \"use strict\";\n\n var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_RESULT__;\n function _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") {\n _typeof = function _typeof(obj) {\n return typeof obj;\n };\n } else {\n _typeof = function _typeof(obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n };\n }\n 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, __WEBPACK_AMD_DEFINE_RESULT__ = typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ? __WEBPACK_AMD_DEFINE_FACTORY__.call(exports, __w_pdfjs_require__, exports, module) : __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__)) : 0;\n })(void 0, function () {\n 'use strict';\n\n function fromArray(array) {\n var m = new CSSMatrix();\n var a = Array.from(array);\n if (!a.every(function (n) {\n return !Number.isNaN(n);\n })) {\n throw TypeError(\"CSSMatrix: \\\"\" + array + \"\\\" must only have numbers.\");\n }\n if (a.length === 16) {\n var m11 = a[0];\n var m12 = a[1];\n var m13 = a[2];\n var m14 = a[3];\n var m21 = a[4];\n var m22 = a[5];\n var m23 = a[6];\n var m24 = a[7];\n var m31 = a[8];\n var m32 = a[9];\n var m33 = a[10];\n var m34 = a[11];\n var m41 = a[12];\n var m42 = a[13];\n var m43 = 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 = a[0];\n var M12 = a[1];\n var M21 = a[2];\n var M22 = a[3];\n var M41 = a[4];\n var M42 = a[5];\n m.m11 = M11;\n m.a = M11;\n m.m12 = M12;\n m.b = M12;\n m.m21 = M21;\n m.c = M21;\n m.m22 = M22;\n m.d = M22;\n m.m41 = M41;\n m.e = M41;\n m.m42 = M42;\n m.f = M42;\n } else {\n throw new TypeError('CSSMatrix: expecting an Array of 6/16 values.');\n }\n return m;\n }\n function fromMatrix(m) {\n var keys = Object.keys(new CSSMatrix());\n if (_typeof(m) === 'object' && keys.every(function (k) {\n return k in m;\n })) {\n return fromArray([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 }\n throw TypeError(\"CSSMatrix: \\\"\" + m + \"\\\" is not a DOMMatrix / CSSMatrix / JSON compatible object.\");\n }\n function fromString(source) {\n if (typeof source !== 'string') {\n throw TypeError(\"CSSMatrix: \\\"\" + source + \"\\\" is not a string.\");\n }\n var str = String(source).replace(/\\s/g, '');\n var m = new CSSMatrix();\n var invalidStringError = \"CSSMatrix: invalid transform string \\\"\" + source + \"\\\"\";\n str.split(')').filter(function (f) {\n return f;\n }).forEach(function (tf) {\n var ref = tf.split('(');\n var prop = ref[0];\n var value = ref[1];\n if (!value) {\n throw TypeError(invalidStringError);\n }\n var components = value.split(',').map(function (n) {\n return n.includes('rad') ? parseFloat(n) * (180 / Math.PI) : parseFloat(n);\n });\n var x = components[0];\n var y = components[1];\n var z = components[2];\n var a = components[3];\n var xyz = [x, y, z];\n var xyza = [x, y, z, a];\n if (prop === 'perspective' && x && [y, z].every(function (n) {\n return n === undefined;\n })) {\n m.m34 = -1 / x;\n } else if (prop.includes('matrix') && [6, 16].includes(components.length) && components.every(function (n) {\n return !Number.isNaN(+n);\n })) {\n var values = components.map(function (n) {\n return Math.abs(n) < 1e-6 ? 0 : n;\n });\n m = m.multiply(fromArray(values));\n } else if (prop === 'translate3d' && xyz.every(function (n) {\n return !Number.isNaN(+n);\n })) {\n m = m.translate(x, y, z);\n } else if (prop === 'translate' && x && z === undefined) {\n m = m.translate(x, y || 0, 0);\n } else if (prop === 'rotate3d' && xyza.every(function (n) {\n return !Number.isNaN(+n);\n }) && a) {\n m = m.rotateAxisAngle(x, y, z, a);\n } else if (prop === 'rotate' && x && [y, z].every(function (n) {\n return n === undefined;\n })) {\n m = m.rotate(0, 0, x);\n } else if (prop === 'scale3d' && xyz.every(function (n) {\n return !Number.isNaN(+n);\n }) && xyz.some(function (n) {\n return n !== 1;\n })) {\n m = m.scale(x, y, z);\n } else if (prop === 'scale' && !Number.isNaN(x) && x !== 1 && z === undefined) {\n var nosy = Number.isNaN(+y);\n var sy = nosy ? x : y;\n m = m.scale(x, sy, 1);\n } else if (prop === 'skew' && x && z === undefined) {\n m = m.skewX(x);\n m = y ? m.skewY(y) : m;\n } else if (/[XYZ]/.test(prop) && x && [y, z].every(function (n) {\n return n === undefined;\n }) && ['translate', 'rotate', 'scale', 'skew'].some(function (p) {\n return prop.includes(p);\n })) {\n if (['skewX', 'skewY'].includes(prop)) {\n m = m[prop](x);\n } else {\n var fn = prop.replace(/[XYZ]/, '');\n var axis = prop.replace(fn, '');\n var idx = ['X', 'Y', 'Z'].indexOf(axis);\n var axeValues = [idx === 0 ? x : 0, idx === 1 ? x : 0, idx === 2 ? x : 0];\n m = m[fn].apply(m, axeValues);\n }\n } else {\n throw TypeError(invalidStringError);\n }\n });\n return m;\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 function Rotate(rx, ry, rz) {\n var m = new CSSMatrix();\n var degToRad = Math.PI / 180;\n var radX = rx * degToRad;\n var radY = ry * degToRad;\n var radZ = rz * degToRad;\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 m11 = cosy * cosz;\n var m12 = -cosy * sinz;\n m.m11 = m11;\n m.a = m11;\n m.m12 = m12;\n m.b = m12;\n m.m13 = siny;\n var m21 = sinx * siny * cosz + cosx * sinz;\n m.m21 = m21;\n m.c = m21;\n var m22 = cosx * cosz - sinx * siny * sinz;\n m.m22 = m22;\n m.d = m22;\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 function RotateAxisAngle(x, y, z, alpha) {\n var m = new CSSMatrix();\n var angle = alpha * (Math.PI / 360);\n var sinA = Math.sin(angle);\n var cosA = Math.cos(angle);\n var sinA2 = sinA * sinA;\n var length = Math.sqrt(x * x + y * y + z * z);\n var X = x;\n var Y = y;\n var Z = z;\n if (length === 0) {\n X = 0;\n Y = 0;\n Z = 1;\n } else {\n X /= length;\n Y /= length;\n Z /= length;\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 return m;\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 function SkewX(angle) {\n var m = new CSSMatrix();\n var radA = angle * Math.PI / 180;\n var t = Math.tan(radA);\n m.m21 = t;\n m.c = t;\n return m;\n }\n function SkewY(angle) {\n var m = new CSSMatrix();\n var radA = angle * Math.PI / 180;\n var t = Math.tan(radA);\n m.m12 = t;\n m.b = t;\n return m;\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 fromArray([m11, m12, m13, m14, m21, m22, m23, m24, m31, m32, m33, m34, m41, m42, m43, m44]);\n }\n var CSSMatrix = function CSSMatrix() {\n var args = [],\n len = arguments.length;\n while (len--) {\n args[len] = arguments[len];\n }\n var m = this;\n m.a = 1;\n m.b = 0;\n m.c = 0;\n m.d = 1;\n m.e = 0;\n m.f = 0;\n m.m11 = 1;\n m.m12 = 0;\n m.m13 = 0;\n m.m14 = 0;\n m.m21 = 0;\n m.m22 = 1;\n m.m23 = 0;\n m.m24 = 0;\n m.m31 = 0;\n m.m32 = 0;\n m.m33 = 1;\n m.m34 = 0;\n m.m41 = 0;\n m.m42 = 0;\n m.m43 = 0;\n m.m44 = 1;\n if (args && args.length) {\n var ARGS = [16, 6].some(function (l) {\n return l === args.length;\n }) ? args : args[0];\n return m.setMatrixValue(ARGS);\n }\n return m;\n };\n var prototypeAccessors = {\n isIdentity: {\n configurable: true\n },\n is2D: {\n configurable: true\n }\n };\n prototypeAccessors.isIdentity.set = function (value) {\n this.isIdentity = value;\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 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 prototypeAccessors.is2D.set = function (value) {\n this.is2D = value;\n };\n CSSMatrix.prototype.setMatrixValue = function setMatrixValue(source) {\n var m = this;\n if ([Array, Float64Array, Float32Array].some(function (a) {\n return source instanceof a;\n })) {\n return fromArray(source);\n }\n if (typeof source === 'string' && source.length && source !== 'none') {\n return fromString(source);\n }\n if (_typeof(source) === 'object') {\n return fromMatrix(source);\n }\n return m;\n };\n CSSMatrix.prototype.toArray = function toArray() {\n var m = this;\n var pow = Math.pow(10, 6);\n var result;\n if (m.is2D) {\n result = [m.a, m.b, m.c, m.d, m.e, m.f];\n } else {\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 }\n return result.map(function (n) {\n return Math.abs(n) < 1e-6 ? 0 : (n * pow >> 0) / pow;\n });\n };\n CSSMatrix.prototype.toString = function toString() {\n var m = this;\n var values = m.toArray();\n var type = m.is2D ? 'matrix' : 'matrix3d';\n return type + \"(\" + values + \")\";\n };\n CSSMatrix.prototype.toJSON = function toJSON() {\n var m = this;\n var is2D = m.is2D;\n var isIdentity = m.isIdentity;\n return Object.assign({}, m, {\n is2D: is2D,\n isIdentity: isIdentity\n });\n };\n CSSMatrix.prototype.multiply = function multiply(m2) {\n return Multiply(this, m2);\n };\n CSSMatrix.prototype.translate = function translate(x, y, z) {\n var X = x;\n var Y = y;\n var Z = z;\n if (Z === undefined) {\n Z = 0;\n }\n if (Y === undefined) {\n Y = 0;\n }\n return Multiply(this, Translate(X, Y, Z));\n };\n CSSMatrix.prototype.scale = function scale(x, y, z) {\n var X = x;\n var Y = y;\n var Z = z;\n if (Y === undefined) {\n Y = x;\n }\n if (Z === undefined) {\n Z = 1;\n }\n return Multiply(this, Scale(X, Y, Z));\n };\n CSSMatrix.prototype.rotate = function rotate(rx, ry, rz) {\n var RX = rx;\n var RY = ry;\n var RZ = rz;\n if (RY === undefined) {\n RY = 0;\n }\n if (RZ === undefined) {\n RZ = RX;\n RX = 0;\n }\n return Multiply(this, Rotate(RX, RY, RZ));\n };\n CSSMatrix.prototype.rotateAxisAngle = function rotateAxisAngle(x, y, z, angle) {\n if ([x, y, z, angle].some(function (n) {\n return Number.isNaN(n);\n })) {\n throw new TypeError('CSSMatrix: expecting 4 values');\n }\n return Multiply(this, RotateAxisAngle(x, y, z, angle));\n };\n CSSMatrix.prototype.skewX = function skewX(angle) {\n return Multiply(this, SkewX(angle));\n };\n CSSMatrix.prototype.skewY = function skewY(angle) {\n return Multiply(this, SkewY(angle));\n };\n CSSMatrix.prototype.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 CSSMatrix.prototype.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 Object.defineProperties(CSSMatrix.prototype, prototypeAccessors);\n Object.assign(CSSMatrix, {\n Translate: Translate,\n Rotate: Rotate,\n RotateAxisAngle: RotateAxisAngle,\n Scale: Scale,\n SkewX: SkewX,\n SkewY: SkewY,\n Multiply: Multiply,\n fromArray: fromArray,\n fromMatrix: fromMatrix,\n fromString: fromString\n });\n var version = \"0.0.24\";\n var Version = version;\n Object.assign(CSSMatrix, {\n Version: Version\n });\n return CSSMatrix;\n });\n\n /***/\n }, /* 70 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n __w_pdfjs_require__(71);\n __w_pdfjs_require__(86);\n var path = __w_pdfjs_require__(96);\n module.exports = path.Object.fromEntries;\n\n /***/\n }, /* 71 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n \"use strict\";\n\n var toIndexedObject = __w_pdfjs_require__(17);\n var addToUnscopables = __w_pdfjs_require__(72);\n var Iterators = __w_pdfjs_require__(77);\n var InternalStateModule = __w_pdfjs_require__(52);\n var defineIterator = __w_pdfjs_require__(78);\n var ARRAY_ITERATOR = 'Array Iterator';\n var setInternalState = InternalStateModule.set;\n var getInternalState = InternalStateModule.getterFor(ARRAY_ITERATOR);\n module.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') return {\n value: index,\n done: false\n };\n if (kind == 'values') return {\n value: target[index],\n done: false\n };\n return {\n value: [index, target[index]],\n done: false\n };\n }, 'values');\n Iterators.Arguments = Iterators.Array;\n addToUnscopables('keys');\n addToUnscopables('values');\n addToUnscopables('entries');\n\n /***/\n }, /* 72 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n var wellKnownSymbol = __w_pdfjs_require__(37);\n var create = __w_pdfjs_require__(73);\n var definePropertyModule = __w_pdfjs_require__(48);\n var UNSCOPABLES = wellKnownSymbol('unscopables');\n var ArrayPrototype = Array.prototype;\n if (ArrayPrototype[UNSCOPABLES] == undefined) {\n definePropertyModule.f(ArrayPrototype, UNSCOPABLES, {\n configurable: true,\n value: create(null)\n });\n }\n module.exports = function (key) {\n ArrayPrototype[UNSCOPABLES][key] = true;\n };\n\n /***/\n }, /* 73 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n var anObject = __w_pdfjs_require__(49);\n var defineProperties = __w_pdfjs_require__(74);\n var enumBugKeys = __w_pdfjs_require__(66);\n var hiddenKeys = __w_pdfjs_require__(55);\n var html = __w_pdfjs_require__(76);\n var documentCreateElement = __w_pdfjs_require__(46);\n var sharedKey = __w_pdfjs_require__(54);\n var GT = '>';\n var LT = '<';\n var PROTOTYPE = 'prototype';\n var SCRIPT = 'script';\n var IE_PROTO = sharedKey('IE_PROTO');\n var EmptyConstructor = function EmptyConstructor() {};\n var scriptTag = function scriptTag(content) {\n return LT + SCRIPT + GT + content + LT + '/' + SCRIPT + GT;\n };\n var NullProtoObjectViaActiveX = function NullProtoObjectViaActiveX(activeXDocument) {\n activeXDocument.write(scriptTag(''));\n activeXDocument.close();\n var temp = activeXDocument.parentWindow.Object;\n activeXDocument = null;\n return temp;\n };\n var NullProtoObjectViaIFrame = function NullProtoObjectViaIFrame() {\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 };\n var activeXDocument;\n var _NullProtoObject = function NullProtoObject() {\n try {\n activeXDocument = new ActiveXObject('htmlfile');\n } catch (error) {}\n _NullProtoObject = typeof document != 'undefined' ? document.domain && activeXDocument ? NullProtoObjectViaActiveX(activeXDocument) : NullProtoObjectViaIFrame() : NullProtoObjectViaActiveX(activeXDocument);\n var length = enumBugKeys.length;\n while (length--) delete _NullProtoObject[PROTOTYPE][enumBugKeys[length]];\n return _NullProtoObject();\n };\n hiddenKeys[IE_PROTO] = true;\n module.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 result = _NullProtoObject();\n return Properties === undefined ? result : defineProperties(result, Properties);\n };\n\n /***/\n }, /* 74 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n var DESCRIPTORS = __w_pdfjs_require__(12);\n var definePropertyModule = __w_pdfjs_require__(48);\n var anObject = __w_pdfjs_require__(49);\n var toIndexedObject = __w_pdfjs_require__(17);\n var objectKeys = __w_pdfjs_require__(75);\n module.exports = DESCRIPTORS ? Object.defineProperties : function defineProperties(O, Properties) {\n anObject(O);\n var props = toIndexedObject(Properties);\n var keys = objectKeys(Properties);\n var length = keys.length;\n var index = 0;\n var key;\n while (length > index) definePropertyModule.f(O, key = keys[index++], props[key]);\n return O;\n };\n\n /***/\n }, /* 75 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n var internalObjectKeys = __w_pdfjs_require__(60);\n var enumBugKeys = __w_pdfjs_require__(66);\n module.exports = Object.keys || function keys(O) {\n return internalObjectKeys(O, enumBugKeys);\n };\n\n /***/\n }, /* 76 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n var getBuiltIn = __w_pdfjs_require__(27);\n module.exports = getBuiltIn('document', 'documentElement');\n\n /***/\n }, /* 77 */\n /***/function (module) {\n module.exports = {};\n\n /***/\n }, /* 78 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n \"use strict\";\n\n var $ = __w_pdfjs_require__(9);\n var call = __w_pdfjs_require__(14);\n var IS_PURE = __w_pdfjs_require__(39);\n var FunctionName = __w_pdfjs_require__(56);\n var isCallable = __w_pdfjs_require__(25);\n var createIteratorConstructor = __w_pdfjs_require__(79);\n var getPrototypeOf = __w_pdfjs_require__(81);\n var setPrototypeOf = __w_pdfjs_require__(84);\n var setToStringTag = __w_pdfjs_require__(83);\n var createNonEnumerableProperty = __w_pdfjs_require__(47);\n var redefine = __w_pdfjs_require__(50);\n var wellKnownSymbol = __w_pdfjs_require__(37);\n var Iterators = __w_pdfjs_require__(77);\n var IteratorsCore = __w_pdfjs_require__(80);\n var PROPER_FUNCTION_NAME = FunctionName.PROPER;\n var CONFIGURABLE_FUNCTION_NAME = FunctionName.CONFIGURABLE;\n var IteratorPrototype = IteratorsCore.IteratorPrototype;\n var BUGGY_SAFARI_ITERATORS = IteratorsCore.BUGGY_SAFARI_ITERATORS;\n var ITERATOR = wellKnownSymbol('iterator');\n var KEYS = 'keys';\n var VALUES = 'values';\n var ENTRIES = 'entries';\n var returnThis = function returnThis() {\n return this;\n };\n module.exports = function (Iterable, NAME, IteratorConstructor, next, DEFAULT, IS_SET, FORCED) {\n createIteratorConstructor(IteratorConstructor, NAME, next);\n var getIterationMethod = function getIterationMethod(KIND) {\n if (KIND === DEFAULT && defaultIterator) return defaultIterator;\n if (!BUGGY_SAFARI_ITERATORS && KIND in IterablePrototype) 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 (!isCallable(CurrentIteratorPrototype[ITERATOR])) {\n redefine(CurrentIteratorPrototype, ITERATOR, returnThis);\n }\n }\n setToStringTag(CurrentIteratorPrototype, TO_STRING_TAG, true, true);\n if (IS_PURE) Iterators[TO_STRING_TAG] = returnThis;\n }\n }\n if (PROPER_FUNCTION_NAME && DEFAULT == VALUES && nativeIterator && nativeIterator.name !== VALUES) {\n if (!IS_PURE && CONFIGURABLE_FUNCTION_NAME) {\n createNonEnumerableProperty(IterablePrototype, 'name', VALUES);\n } else {\n INCORRECT_VALUES_NAME = true;\n defaultIterator = function values() {\n return call(nativeIterator, this);\n };\n }\n }\n if (DEFAULT) {\n methods = {\n values: getIterationMethod(VALUES),\n keys: IS_SET ? defaultIterator : getIterationMethod(KEYS),\n entries: getIterationMethod(ENTRIES)\n };\n if (FORCED) for (KEY in methods) {\n if (BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME || !(KEY in IterablePrototype)) {\n redefine(IterablePrototype, KEY, methods[KEY]);\n }\n } else $({\n target: NAME,\n proto: true,\n forced: BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME\n }, methods);\n }\n if ((!IS_PURE || FORCED) && IterablePrototype[ITERATOR] !== defaultIterator) {\n redefine(IterablePrototype, ITERATOR, defaultIterator, {\n name: DEFAULT\n });\n }\n Iterators[NAME] = defaultIterator;\n return methods;\n };\n\n /***/\n }, /* 79 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n \"use strict\";\n\n var IteratorPrototype = __w_pdfjs_require__(80).IteratorPrototype;\n var create = __w_pdfjs_require__(73);\n var createPropertyDescriptor = __w_pdfjs_require__(16);\n var setToStringTag = __w_pdfjs_require__(83);\n var Iterators = __w_pdfjs_require__(77);\n var returnThis = function returnThis() {\n return this;\n };\n module.exports = function (IteratorConstructor, NAME, next, ENUMERABLE_NEXT) {\n var TO_STRING_TAG = NAME + ' Iterator';\n IteratorConstructor.prototype = create(IteratorPrototype, {\n next: createPropertyDescriptor(+!ENUMERABLE_NEXT, next)\n });\n setToStringTag(IteratorConstructor, TO_STRING_TAG, false, true);\n Iterators[TO_STRING_TAG] = returnThis;\n return IteratorConstructor;\n };\n\n /***/\n }, /* 80 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n \"use strict\";\n\n var fails = __w_pdfjs_require__(13);\n var isCallable = __w_pdfjs_require__(25);\n var create = __w_pdfjs_require__(73);\n var getPrototypeOf = __w_pdfjs_require__(81);\n var redefine = __w_pdfjs_require__(50);\n var wellKnownSymbol = __w_pdfjs_require__(37);\n var IS_PURE = __w_pdfjs_require__(39);\n var ITERATOR = wellKnownSymbol('iterator');\n var BUGGY_SAFARI_ITERATORS = false;\n var IteratorPrototype, PrototypeOfArrayIteratorPrototype, arrayIterator;\n if ([].keys) {\n arrayIterator = [].keys();\n if (!('next' in arrayIterator)) BUGGY_SAFARI_ITERATORS = true;else {\n PrototypeOfArrayIteratorPrototype = getPrototypeOf(getPrototypeOf(arrayIterator));\n if (PrototypeOfArrayIteratorPrototype !== Object.prototype) IteratorPrototype = PrototypeOfArrayIteratorPrototype;\n }\n }\n var NEW_ITERATOR_PROTOTYPE = IteratorPrototype == undefined || fails(function () {\n var test = {};\n return IteratorPrototype[ITERATOR].call(test) !== test;\n });\n if (NEW_ITERATOR_PROTOTYPE) IteratorPrototype = {};else if (IS_PURE) IteratorPrototype = create(IteratorPrototype);\n if (!isCallable(IteratorPrototype[ITERATOR])) {\n redefine(IteratorPrototype, ITERATOR, function () {\n return this;\n });\n }\n module.exports = {\n IteratorPrototype: IteratorPrototype,\n BUGGY_SAFARI_ITERATORS: BUGGY_SAFARI_ITERATORS\n };\n\n /***/\n }, /* 81 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n var global = __w_pdfjs_require__(10);\n var hasOwn = __w_pdfjs_require__(42);\n var isCallable = __w_pdfjs_require__(25);\n var toObject = __w_pdfjs_require__(43);\n var sharedKey = __w_pdfjs_require__(54);\n var CORRECT_PROTOTYPE_GETTER = __w_pdfjs_require__(82);\n var IE_PROTO = sharedKey('IE_PROTO');\n var Object = global.Object;\n var ObjectPrototype = Object.prototype;\n module.exports = CORRECT_PROTOTYPE_GETTER ? Object.getPrototypeOf : function (O) {\n var object = toObject(O);\n if (hasOwn(object, IE_PROTO)) return object[IE_PROTO];\n var constructor = object.constructor;\n if (isCallable(constructor) && object instanceof constructor) {\n return constructor.prototype;\n }\n return object instanceof Object ? ObjectPrototype : null;\n };\n\n /***/\n }, /* 82 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n var fails = __w_pdfjs_require__(13);\n module.exports = !fails(function () {\n function F() {}\n F.prototype.constructor = null;\n return Object.getPrototypeOf(new F()) !== F.prototype;\n });\n\n /***/\n }, /* 83 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n var defineProperty = __w_pdfjs_require__(48).f;\n var hasOwn = __w_pdfjs_require__(42);\n var wellKnownSymbol = __w_pdfjs_require__(37);\n var TO_STRING_TAG = wellKnownSymbol('toStringTag');\n module.exports = function (it, TAG, STATIC) {\n if (it && !hasOwn(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 }, /* 84 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n var uncurryThis = __w_pdfjs_require__(19);\n var anObject = __w_pdfjs_require__(49);\n var aPossiblePrototype = __w_pdfjs_require__(85);\n module.exports = Object.setPrototypeOf || ('__proto__' in {} ? function () {\n var CORRECT_SETTER = false;\n var test = {};\n var setter;\n try {\n setter = uncurryThis(Object.getOwnPropertyDescriptor(Object.prototype, '__proto__').set);\n setter(test, []);\n CORRECT_SETTER = test instanceof Array;\n } catch (error) {}\n return function setPrototypeOf(O, proto) {\n anObject(O);\n aPossiblePrototype(proto);\n if (CORRECT_SETTER) setter(O, proto);else O.__proto__ = proto;\n return O;\n };\n }() : undefined);\n\n /***/\n }, /* 85 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n var global = __w_pdfjs_require__(10);\n var isCallable = __w_pdfjs_require__(25);\n var String = global.String;\n var TypeError = global.TypeError;\n module.exports = function (argument) {\n if (typeof argument == 'object' || isCallable(argument)) return argument;\n throw TypeError(\"Can't set \" + String(argument) + ' as a prototype');\n };\n\n /***/\n }, /* 86 */\n /***/function (__unused_webpack_module, __unused_webpack_exports, __w_pdfjs_require__) {\n var $ = __w_pdfjs_require__(9);\n var iterate = __w_pdfjs_require__(87);\n var createProperty = __w_pdfjs_require__(95);\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 }, {\n AS_ENTRIES: true\n });\n return obj;\n }\n });\n\n /***/\n }, /* 87 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n var global = __w_pdfjs_require__(10);\n var bind = __w_pdfjs_require__(88);\n var call = __w_pdfjs_require__(14);\n var anObject = __w_pdfjs_require__(49);\n var tryToString = __w_pdfjs_require__(35);\n var isArrayIteratorMethod = __w_pdfjs_require__(89);\n var lengthOfArrayLike = __w_pdfjs_require__(64);\n var isPrototypeOf = __w_pdfjs_require__(28);\n var getIterator = __w_pdfjs_require__(90);\n var getIteratorMethod = __w_pdfjs_require__(91);\n var iteratorClose = __w_pdfjs_require__(94);\n var TypeError = global.TypeError;\n var Result = function Result(stopped, result) {\n this.stopped = stopped;\n this.result = result;\n };\n var ResultPrototype = Result.prototype;\n module.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);\n var iterator, iterFn, index, length, result, next, step;\n var stop = function stop(condition) {\n if (iterator) iteratorClose(iterator, 'normal', condition);\n return new Result(true, condition);\n };\n var callFn = function callFn(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 (!iterFn) throw TypeError(tryToString(iterable) + ' is not iterable');\n if (isArrayIteratorMethod(iterFn)) {\n for (index = 0, length = lengthOfArrayLike(iterable); length > index; index++) {\n result = callFn(iterable[index]);\n if (result && isPrototypeOf(ResultPrototype, result)) return result;\n }\n return new Result(false);\n }\n iterator = getIterator(iterable, iterFn);\n }\n next = iterator.next;\n while (!(step = call(next, iterator)).done) {\n try {\n result = callFn(step.value);\n } catch (error) {\n iteratorClose(iterator, 'throw', error);\n }\n if (typeof result == 'object' && result && isPrototypeOf(ResultPrototype, result)) return result;\n }\n return new Result(false);\n };\n\n /***/\n }, /* 88 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n var uncurryThis = __w_pdfjs_require__(19);\n var aCallable = __w_pdfjs_require__(34);\n var bind = uncurryThis(uncurryThis.bind);\n module.exports = function (fn, that) {\n aCallable(fn);\n return that === undefined ? fn : bind ? bind(fn, that) : function () {\n return fn.apply(that, arguments);\n };\n };\n\n /***/\n }, /* 89 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n var wellKnownSymbol = __w_pdfjs_require__(37);\n var Iterators = __w_pdfjs_require__(77);\n var ITERATOR = wellKnownSymbol('iterator');\n var ArrayPrototype = Array.prototype;\n module.exports = function (it) {\n return it !== undefined && (Iterators.Array === it || ArrayPrototype[ITERATOR] === it);\n };\n\n /***/\n }, /* 90 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n var global = __w_pdfjs_require__(10);\n var call = __w_pdfjs_require__(14);\n var aCallable = __w_pdfjs_require__(34);\n var anObject = __w_pdfjs_require__(49);\n var tryToString = __w_pdfjs_require__(35);\n var getIteratorMethod = __w_pdfjs_require__(91);\n var TypeError = global.TypeError;\n module.exports = function (argument, usingIterator) {\n var iteratorMethod = arguments.length < 2 ? getIteratorMethod(argument) : usingIterator;\n if (aCallable(iteratorMethod)) return anObject(call(iteratorMethod, argument));\n throw TypeError(tryToString(argument) + ' is not iterable');\n };\n\n /***/\n }, /* 91 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n var classof = __w_pdfjs_require__(92);\n var getMethod = __w_pdfjs_require__(33);\n var Iterators = __w_pdfjs_require__(77);\n var wellKnownSymbol = __w_pdfjs_require__(37);\n var ITERATOR = wellKnownSymbol('iterator');\n module.exports = function (it) {\n if (it != undefined) return getMethod(it, ITERATOR) || getMethod(it, '@@iterator') || Iterators[classof(it)];\n };\n\n /***/\n }, /* 92 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n var global = __w_pdfjs_require__(10);\n var TO_STRING_TAG_SUPPORT = __w_pdfjs_require__(93);\n var isCallable = __w_pdfjs_require__(25);\n var classofRaw = __w_pdfjs_require__(20);\n var wellKnownSymbol = __w_pdfjs_require__(37);\n var TO_STRING_TAG = wellKnownSymbol('toStringTag');\n var Object = global.Object;\n var CORRECT_ARGUMENTS = classofRaw(function () {\n return arguments;\n }()) == 'Arguments';\n var tryGet = function tryGet(it, key) {\n try {\n return it[key];\n } catch (error) {}\n };\n module.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' && isCallable(O.callee) ? 'Arguments' : result;\n };\n\n /***/\n }, /* 93 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n var wellKnownSymbol = __w_pdfjs_require__(37);\n var TO_STRING_TAG = wellKnownSymbol('toStringTag');\n var test = {};\n test[TO_STRING_TAG] = 'z';\n module.exports = String(test) === '[object z]';\n\n /***/\n }, /* 94 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n var call = __w_pdfjs_require__(14);\n var anObject = __w_pdfjs_require__(49);\n var getMethod = __w_pdfjs_require__(33);\n module.exports = function (iterator, kind, value) {\n var innerResult, innerError;\n anObject(iterator);\n try {\n innerResult = getMethod(iterator, 'return');\n if (!innerResult) {\n if (kind === 'throw') throw value;\n return value;\n }\n innerResult = call(innerResult, iterator);\n } catch (error) {\n innerError = true;\n innerResult = error;\n }\n if (kind === 'throw') throw value;\n if (innerError) throw innerResult;\n anObject(innerResult);\n return value;\n };\n\n /***/\n }, /* 95 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n \"use strict\";\n\n var toPropertyKey = __w_pdfjs_require__(22);\n var definePropertyModule = __w_pdfjs_require__(48);\n var createPropertyDescriptor = __w_pdfjs_require__(16);\n module.exports = function (object, key, value) {\n var propertyKey = toPropertyKey(key);\n if (propertyKey in object) definePropertyModule.f(object, propertyKey, createPropertyDescriptor(0, value));else object[propertyKey] = value;\n };\n\n /***/\n }, /* 96 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n var global = __w_pdfjs_require__(10);\n module.exports = global;\n\n /***/\n }, /* 97 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n __w_pdfjs_require__(98);\n __w_pdfjs_require__(71);\n __w_pdfjs_require__(105);\n __w_pdfjs_require__(107);\n __w_pdfjs_require__(129);\n __w_pdfjs_require__(130);\n __w_pdfjs_require__(131);\n __w_pdfjs_require__(132);\n var path = __w_pdfjs_require__(96);\n module.exports = path.Promise;\n\n /***/\n }, /* 98 */\n /***/function (__unused_webpack_module, __unused_webpack_exports, __w_pdfjs_require__) {\n \"use strict\";\n\n var $ = __w_pdfjs_require__(9);\n var global = __w_pdfjs_require__(10);\n var isPrototypeOf = __w_pdfjs_require__(28);\n var getPrototypeOf = __w_pdfjs_require__(81);\n var setPrototypeOf = __w_pdfjs_require__(84);\n var copyConstructorProperties = __w_pdfjs_require__(57);\n var create = __w_pdfjs_require__(73);\n var createNonEnumerableProperty = __w_pdfjs_require__(47);\n var createPropertyDescriptor = __w_pdfjs_require__(16);\n var clearErrorStack = __w_pdfjs_require__(99);\n var installErrorCause = __w_pdfjs_require__(101);\n var iterate = __w_pdfjs_require__(87);\n var normalizeStringArgument = __w_pdfjs_require__(102);\n var wellKnownSymbol = __w_pdfjs_require__(37);\n var ERROR_STACK_INSTALLABLE = __w_pdfjs_require__(104);\n var TO_STRING_TAG = wellKnownSymbol('toStringTag');\n var Error = global.Error;\n var push = [].push;\n var $AggregateError = function AggregateError(errors, message) {\n var options = arguments.length > 2 ? arguments[2] : undefined;\n var isInstance = isPrototypeOf(AggregateErrorPrototype, this);\n var that;\n if (setPrototypeOf) {\n that = setPrototypeOf(new Error(undefined), isInstance ? getPrototypeOf(this) : AggregateErrorPrototype);\n } else {\n that = isInstance ? this : create(AggregateErrorPrototype);\n createNonEnumerableProperty(that, TO_STRING_TAG, 'Error');\n }\n createNonEnumerableProperty(that, 'message', normalizeStringArgument(message, ''));\n if (ERROR_STACK_INSTALLABLE) createNonEnumerableProperty(that, 'stack', clearErrorStack(that.stack, 1));\n installErrorCause(that, options);\n var errorsArray = [];\n iterate(errors, push, {\n that: errorsArray\n });\n createNonEnumerableProperty(that, 'errors', errorsArray);\n return that;\n };\n if (setPrototypeOf) setPrototypeOf($AggregateError, Error);else copyConstructorProperties($AggregateError, Error);\n var AggregateErrorPrototype = $AggregateError.prototype = create(Error.prototype, {\n constructor: createPropertyDescriptor(1, $AggregateError),\n message: createPropertyDescriptor(1, ''),\n name: createPropertyDescriptor(1, 'AggregateError')\n });\n $({\n global: true\n }, {\n AggregateError: $AggregateError\n });\n\n /***/\n }, /* 99 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n var uncurryThis = __w_pdfjs_require__(19);\n var arraySlice = __w_pdfjs_require__(100);\n var replace = uncurryThis(''.replace);\n var split = uncurryThis(''.split);\n var join = uncurryThis([].join);\n var TEST = function (arg) {\n return String(Error(arg).stack);\n }('zxcasd');\n var V8_OR_CHAKRA_STACK_ENTRY = /\\n\\s*at [^:]*:[^\\n]*/;\n var IS_V8_OR_CHAKRA_STACK = V8_OR_CHAKRA_STACK_ENTRY.test(TEST);\n var IS_FIREFOX_OR_SAFARI_STACK = /@[^\\n]*\\n/.test(TEST) && !/zxcasd/.test(TEST);\n module.exports = function (stack, dropEntries) {\n if (typeof stack != 'string') return stack;\n if (IS_V8_OR_CHAKRA_STACK) {\n while (dropEntries--) stack = replace(stack, V8_OR_CHAKRA_STACK_ENTRY, '');\n } else if (IS_FIREFOX_OR_SAFARI_STACK) {\n return join(arraySlice(split(stack, '\\n'), dropEntries), '\\n');\n }\n return stack;\n };\n\n /***/\n }, /* 100 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n var global = __w_pdfjs_require__(10);\n var toAbsoluteIndex = __w_pdfjs_require__(62);\n var lengthOfArrayLike = __w_pdfjs_require__(64);\n var createProperty = __w_pdfjs_require__(95);\n var Array = global.Array;\n var max = Math.max;\n module.exports = function (O, start, end) {\n var length = lengthOfArrayLike(O);\n var k = toAbsoluteIndex(start, length);\n var fin = toAbsoluteIndex(end === undefined ? length : end, length);\n var result = Array(max(fin - k, 0));\n for (var n = 0; k < fin; k++, n++) createProperty(result, n, O[k]);\n result.length = n;\n return result;\n };\n\n /***/\n }, /* 101 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n var isObject = __w_pdfjs_require__(24);\n var createNonEnumerableProperty = __w_pdfjs_require__(47);\n module.exports = function (O, options) {\n if (isObject(options) && 'cause' in options) {\n createNonEnumerableProperty(O, 'cause', options.cause);\n }\n };\n\n /***/\n }, /* 102 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n var toString = __w_pdfjs_require__(103);\n module.exports = function (argument, $default) {\n return argument === undefined ? arguments.length < 2 ? '' : $default : toString(argument);\n };\n\n /***/\n }, /* 103 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n var global = __w_pdfjs_require__(10);\n var classof = __w_pdfjs_require__(92);\n var String = global.String;\n module.exports = function (argument) {\n if (classof(argument) === 'Symbol') throw TypeError('Cannot convert a Symbol value to a string');\n return String(argument);\n };\n\n /***/\n }, /* 104 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n var fails = __w_pdfjs_require__(13);\n var createPropertyDescriptor = __w_pdfjs_require__(16);\n module.exports = !fails(function () {\n var error = Error('a');\n if (!('stack' in error)) return true;\n Object.defineProperty(error, 'stack', createPropertyDescriptor(1, 7));\n return error.stack !== 7;\n });\n\n /***/\n }, /* 105 */\n /***/function (__unused_webpack_module, __unused_webpack_exports, __w_pdfjs_require__) {\n var TO_STRING_TAG_SUPPORT = __w_pdfjs_require__(93);\n var redefine = __w_pdfjs_require__(50);\n var toString = __w_pdfjs_require__(106);\n if (!TO_STRING_TAG_SUPPORT) {\n redefine(Object.prototype, 'toString', toString, {\n unsafe: true\n });\n }\n\n /***/\n }, /* 106 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n \"use strict\";\n\n var TO_STRING_TAG_SUPPORT = __w_pdfjs_require__(93);\n var classof = __w_pdfjs_require__(92);\n module.exports = TO_STRING_TAG_SUPPORT ? {}.toString : function toString() {\n return '[object ' + classof(this) + ']';\n };\n\n /***/\n }, /* 107 */\n /***/function (__unused_webpack_module, __unused_webpack_exports, __w_pdfjs_require__) {\n \"use strict\";\n\n var $ = __w_pdfjs_require__(9);\n var IS_PURE = __w_pdfjs_require__(39);\n var global = __w_pdfjs_require__(10);\n var getBuiltIn = __w_pdfjs_require__(27);\n var call = __w_pdfjs_require__(14);\n var NativePromise = __w_pdfjs_require__(108);\n var redefine = __w_pdfjs_require__(50);\n var redefineAll = __w_pdfjs_require__(109);\n var setPrototypeOf = __w_pdfjs_require__(84);\n var setToStringTag = __w_pdfjs_require__(83);\n var setSpecies = __w_pdfjs_require__(110);\n var aCallable = __w_pdfjs_require__(34);\n var isCallable = __w_pdfjs_require__(25);\n var isObject = __w_pdfjs_require__(24);\n var anInstance = __w_pdfjs_require__(111);\n var inspectSource = __w_pdfjs_require__(51);\n var iterate = __w_pdfjs_require__(87);\n var checkCorrectnessOfIteration = __w_pdfjs_require__(112);\n var speciesConstructor = __w_pdfjs_require__(113);\n var task = __w_pdfjs_require__(116).set;\n var microtask = __w_pdfjs_require__(121);\n var promiseResolve = __w_pdfjs_require__(124);\n var hostReportErrors = __w_pdfjs_require__(126);\n var newPromiseCapabilityModule = __w_pdfjs_require__(125);\n var perform = __w_pdfjs_require__(127);\n var InternalStateModule = __w_pdfjs_require__(52);\n var isForced = __w_pdfjs_require__(68);\n var wellKnownSymbol = __w_pdfjs_require__(37);\n var IS_BROWSER = __w_pdfjs_require__(128);\n var IS_NODE = __w_pdfjs_require__(120);\n var V8_VERSION = __w_pdfjs_require__(31);\n var SPECIES = wellKnownSymbol('species');\n var PROMISE = 'Promise';\n var getInternalState = InternalStateModule.getterFor(PROMISE);\n var setInternalState = InternalStateModule.set;\n var getInternalPromiseState = InternalStateModule.getterFor(PROMISE);\n var NativePromisePrototype = NativePromise && NativePromise.prototype;\n var PromiseConstructor = NativePromise;\n var PromisePrototype = NativePromisePrototype;\n var TypeError = global.TypeError;\n var document = global.document;\n var process = global.process;\n var newPromiseCapability = newPromiseCapabilityModule.f;\n var newGenericPromiseCapability = newPromiseCapability;\n var DISPATCH_EVENT = !!(document && document.createEvent && global.dispatchEvent);\n var NATIVE_REJECTION_EVENT = isCallable(global.PromiseRejectionEvent);\n var UNHANDLED_REJECTION = 'unhandledrejection';\n var REJECTION_HANDLED = 'rejectionhandled';\n var PENDING = 0;\n var FULFILLED = 1;\n var REJECTED = 2;\n var HANDLED = 1;\n var UNHANDLED = 2;\n var SUBCLASSING = false;\n var Internal, OwnPromiseCapability, PromiseWrapper, nativeThen;\n var 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) return true;\n if (IS_PURE && !PromisePrototype['finally']) return true;\n if (V8_VERSION >= 51 && /native code/.test(PROMISE_CONSTRUCTOR_SOURCE)) return false;\n var promise = new PromiseConstructor(function (resolve) {\n resolve(1);\n });\n var FakePromise = function FakePromise(exec) {\n exec(function () {}, function () {});\n };\n var constructor = promise.constructor = {};\n constructor[SPECIES] = FakePromise;\n SUBCLASSING = promise.then(function () {}) instanceof FakePromise;\n if (!SUBCLASSING) return true;\n return !GLOBAL_CORE_JS_PROMISE && IS_BROWSER && !NATIVE_REJECTION_EVENT;\n });\n var INCORRECT_ITERATION = FORCED || !checkCorrectnessOfIteration(function (iterable) {\n PromiseConstructor.all(iterable)['catch'](function () {});\n });\n var isThenable = function isThenable(it) {\n var then;\n return isObject(it) && isCallable(then = it.then) ? then : false;\n };\n var notify = function notify(state, isReject) {\n if (state.notified) 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) onHandleUnhandled(state);\n state.rejection = HANDLED;\n }\n if (handler === true) result = value;else {\n if (domain) 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 call(then, result, resolve, reject);\n } else resolve(result);\n } else reject(value);\n } catch (error) {\n if (domain && !exited) domain.exit();\n reject(error);\n }\n }\n state.reactions = [];\n state.notified = false;\n if (isReject && !state.rejection) onUnhandled(state);\n });\n };\n var dispatchEvent = function dispatchEvent(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 event = {\n promise: promise,\n reason: reason\n };\n if (!NATIVE_REJECTION_EVENT && (handler = global['on' + name])) handler(event);else if (name === UNHANDLED_REJECTION) hostReportErrors('Unhandled promise rejection', reason);\n };\n var onUnhandled = function onUnhandled(state) {\n call(task, 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 dispatchEvent(UNHANDLED_REJECTION, promise, value);\n });\n state.rejection = IS_NODE || isUnhandled(state) ? UNHANDLED : HANDLED;\n if (result.error) throw result.value;\n }\n });\n };\n var isUnhandled = function isUnhandled(state) {\n return state.rejection !== HANDLED && !state.parent;\n };\n var onHandleUnhandled = function onHandleUnhandled(state) {\n call(task, global, function () {\n var promise = state.facade;\n if (IS_NODE) {\n process.emit('rejectionHandled', promise);\n } else dispatchEvent(REJECTION_HANDLED, promise, state.value);\n });\n };\n var bind = function bind(fn, state, unwrap) {\n return function (value) {\n fn(state, value, unwrap);\n };\n };\n var internalReject = function internalReject(state, value, unwrap) {\n if (state.done) return;\n state.done = true;\n if (unwrap) state = unwrap;\n state.value = value;\n state.state = REJECTED;\n notify(state, true);\n };\n var internalResolve = function internalResolve(state, value, unwrap) {\n if (state.done) return;\n state.done = true;\n if (unwrap) state = unwrap;\n try {\n if (state.facade === value) throw TypeError(\"Promise can't be resolved itself\");\n var then = isThenable(value);\n if (then) {\n microtask(function () {\n var wrapper = {\n done: false\n };\n try {\n call(then, 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({\n done: false\n }, error, state);\n }\n };\n if (FORCED) {\n PromiseConstructor = function Promise(executor) {\n anInstance(this, PromisePrototype);\n aCallable(executor);\n call(Internal, 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 PromisePrototype = 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(PromisePrototype, {\n then: function then(onFulfilled, onRejected) {\n var state = getInternalPromiseState(this);\n var reactions = state.reactions;\n var reaction = newPromiseCapability(speciesConstructor(this, PromiseConstructor));\n reaction.ok = isCallable(onFulfilled) ? onFulfilled : true;\n reaction.fail = isCallable(onRejected) && onRejected;\n reaction.domain = IS_NODE ? process.domain : undefined;\n state.parent = true;\n reactions[reactions.length] = reaction;\n if (state.state != PENDING) notify(state, false);\n return reaction.promise;\n },\n 'catch': function _catch(onRejected) {\n return this.then(undefined, onRejected);\n }\n });\n OwnPromiseCapability = function OwnPromiseCapability() {\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 newPromiseCapability(C) {\n return C === PromiseConstructor || C === PromiseWrapper ? new OwnPromiseCapability(C) : newGenericPromiseCapability(C);\n };\n if (!IS_PURE && isCallable(NativePromise) && 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 call(nativeThen, that, resolve, reject);\n }).then(onFulfilled, onRejected);\n }, {\n unsafe: true\n });\n redefine(NativePromisePrototype, 'catch', PromisePrototype['catch'], {\n unsafe: true\n });\n }\n try {\n delete NativePromisePrototype.constructor;\n } catch (error) {}\n if (setPrototypeOf) {\n setPrototypeOf(NativePromisePrototype, PromisePrototype);\n }\n }\n }\n $({\n global: true,\n wrap: true,\n forced: FORCED\n }, {\n Promise: PromiseConstructor\n });\n setToStringTag(PromiseConstructor, PROMISE, false, true);\n setSpecies(PROMISE);\n PromiseWrapper = getBuiltIn(PROMISE);\n $({\n target: PROMISE,\n stat: true,\n forced: FORCED\n }, {\n reject: function reject(r) {\n var capability = newPromiseCapability(this);\n call(capability.reject, 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 = aCallable(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 remaining++;\n call($promiseResolve, C, promise).then(function (value) {\n if (alreadyCalled) return;\n alreadyCalled = true;\n values[index] = value;\n --remaining || resolve(values);\n }, reject);\n });\n --remaining || resolve(values);\n });\n if (result.error) 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 = aCallable(C.resolve);\n iterate(iterable, function (promise) {\n call($promiseResolve, C, promise).then(capability.resolve, reject);\n });\n });\n if (result.error) reject(result.value);\n return capability.promise;\n }\n });\n\n /***/\n }, /* 108 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n var global = __w_pdfjs_require__(10);\n module.exports = global.Promise;\n\n /***/\n }, /* 109 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n var redefine = __w_pdfjs_require__(50);\n module.exports = function (target, src, options) {\n for (var key in src) redefine(target, key, src[key], options);\n return target;\n };\n\n /***/\n }, /* 110 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n \"use strict\";\n\n var getBuiltIn = __w_pdfjs_require__(27);\n var definePropertyModule = __w_pdfjs_require__(48);\n var wellKnownSymbol = __w_pdfjs_require__(37);\n var DESCRIPTORS = __w_pdfjs_require__(12);\n var SPECIES = wellKnownSymbol('species');\n module.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 get() {\n return this;\n }\n });\n }\n };\n\n /***/\n }, /* 111 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n var global = __w_pdfjs_require__(10);\n var isPrototypeOf = __w_pdfjs_require__(28);\n var TypeError = global.TypeError;\n module.exports = function (it, Prototype) {\n if (isPrototypeOf(Prototype, it)) return it;\n throw TypeError('Incorrect invocation');\n };\n\n /***/\n }, /* 112 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n var wellKnownSymbol = __w_pdfjs_require__(37);\n var ITERATOR = wellKnownSymbol('iterator');\n var SAFE_CLOSING = false;\n try {\n var called = 0;\n var iteratorWithReturn = {\n next: function next() {\n return {\n done: !!called++\n };\n },\n 'return': function _return() {\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 module.exports = function (exec, SKIP_CLOSING) {\n if (!SKIP_CLOSING && !SAFE_CLOSING) return false;\n var ITERATION_SUPPORT = false;\n try {\n var object = {};\n object[ITERATOR] = function () {\n return {\n next: function next() {\n return {\n done: ITERATION_SUPPORT = true\n };\n }\n };\n };\n exec(object);\n } catch (error) {}\n return ITERATION_SUPPORT;\n };\n\n /***/\n }, /* 113 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n var anObject = __w_pdfjs_require__(49);\n var aConstructor = __w_pdfjs_require__(114);\n var wellKnownSymbol = __w_pdfjs_require__(37);\n var SPECIES = wellKnownSymbol('species');\n module.exports = function (O, defaultConstructor) {\n var C = anObject(O).constructor;\n var S;\n return C === undefined || (S = anObject(C)[SPECIES]) == undefined ? defaultConstructor : aConstructor(S);\n };\n\n /***/\n }, /* 114 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n var global = __w_pdfjs_require__(10);\n var isConstructor = __w_pdfjs_require__(115);\n var tryToString = __w_pdfjs_require__(35);\n var TypeError = global.TypeError;\n module.exports = function (argument) {\n if (isConstructor(argument)) return argument;\n throw TypeError(tryToString(argument) + ' is not a constructor');\n };\n\n /***/\n }, /* 115 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n var uncurryThis = __w_pdfjs_require__(19);\n var fails = __w_pdfjs_require__(13);\n var isCallable = __w_pdfjs_require__(25);\n var classof = __w_pdfjs_require__(92);\n var getBuiltIn = __w_pdfjs_require__(27);\n var inspectSource = __w_pdfjs_require__(51);\n var noop = function noop() {};\n var empty = [];\n var construct = getBuiltIn('Reflect', 'construct');\n var constructorRegExp = /^\\s*(?:class|function)\\b/;\n var exec = uncurryThis(constructorRegExp.exec);\n var INCORRECT_TO_STRING = !constructorRegExp.exec(noop);\n var isConstructorModern = function isConstructorModern(argument) {\n if (!isCallable(argument)) return false;\n try {\n construct(noop, empty, argument);\n return true;\n } catch (error) {\n return false;\n }\n };\n var isConstructorLegacy = function isConstructorLegacy(argument) {\n if (!isCallable(argument)) return false;\n switch (classof(argument)) {\n case 'AsyncFunction':\n case 'GeneratorFunction':\n case 'AsyncGeneratorFunction':\n return false;\n }\n return INCORRECT_TO_STRING || !!exec(constructorRegExp, inspectSource(argument));\n };\n module.exports = !construct || fails(function () {\n var called;\n return isConstructorModern(isConstructorModern.call) || !isConstructorModern(Object) || !isConstructorModern(function () {\n called = true;\n }) || called;\n }) ? isConstructorLegacy : isConstructorModern;\n\n /***/\n }, /* 116 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n var global = __w_pdfjs_require__(10);\n var apply = __w_pdfjs_require__(117);\n var bind = __w_pdfjs_require__(88);\n var isCallable = __w_pdfjs_require__(25);\n var hasOwn = __w_pdfjs_require__(42);\n var fails = __w_pdfjs_require__(13);\n var html = __w_pdfjs_require__(76);\n var arraySlice = __w_pdfjs_require__(118);\n var createElement = __w_pdfjs_require__(46);\n var IS_IOS = __w_pdfjs_require__(119);\n var IS_NODE = __w_pdfjs_require__(120);\n var set = global.setImmediate;\n var clear = global.clearImmediate;\n var process = global.process;\n var Dispatch = global.Dispatch;\n var Function = global.Function;\n var MessageChannel = global.MessageChannel;\n var String = global.String;\n var counter = 0;\n var queue = {};\n var ONREADYSTATECHANGE = 'onreadystatechange';\n var location, defer, channel, port;\n try {\n location = global.location;\n } catch (error) {}\n var run = function run(id) {\n if (hasOwn(queue, id)) {\n var fn = queue[id];\n delete queue[id];\n fn();\n }\n };\n var runner = function runner(id) {\n return function () {\n run(id);\n };\n };\n var listener = function listener(event) {\n run(event.data);\n };\n var post = function post(id) {\n global.postMessage(String(id), location.protocol + '//' + location.host);\n };\n if (!set || !clear) {\n set = function setImmediate(fn) {\n var args = arraySlice(arguments, 1);\n queue[++counter] = function () {\n apply(isCallable(fn) ? fn : Function(fn), 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 defer(id) {\n process.nextTick(runner(id));\n };\n } else if (Dispatch && Dispatch.now) {\n defer = function defer(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);\n } else if (global.addEventListener && isCallable(global.postMessage) && !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 defer(id) {\n html.appendChild(createElement('script'))[ONREADYSTATECHANGE] = function () {\n html.removeChild(this);\n run(id);\n };\n };\n } else {\n defer = function defer(id) {\n setTimeout(runner(id), 0);\n };\n }\n }\n module.exports = {\n set: set,\n clear: clear\n };\n\n /***/\n }, /* 117 */\n /***/function (module) {\n var FunctionPrototype = Function.prototype;\n var apply = FunctionPrototype.apply;\n var bind = FunctionPrototype.bind;\n var call = FunctionPrototype.call;\n module.exports = typeof Reflect == 'object' && Reflect.apply || (bind ? call.bind(apply) : function () {\n return call.apply(apply, arguments);\n });\n\n /***/\n }, /* 118 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n var uncurryThis = __w_pdfjs_require__(19);\n module.exports = uncurryThis([].slice);\n\n /***/\n }, /* 119 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n var userAgent = __w_pdfjs_require__(32);\n module.exports = /(?:ipad|iphone|ipod).*applewebkit/i.test(userAgent);\n\n /***/\n }, /* 120 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n var classof = __w_pdfjs_require__(20);\n var global = __w_pdfjs_require__(10);\n module.exports = classof(global.process) == 'process';\n\n /***/\n }, /* 121 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n var global = __w_pdfjs_require__(10);\n var bind = __w_pdfjs_require__(88);\n var getOwnPropertyDescriptor = __w_pdfjs_require__(11).f;\n var macrotask = __w_pdfjs_require__(116).set;\n var IS_IOS = __w_pdfjs_require__(119);\n var IS_IOS_PEBBLE = __w_pdfjs_require__(122);\n var IS_WEBOS_WEBKIT = __w_pdfjs_require__(123);\n var IS_NODE = __w_pdfjs_require__(120);\n var MutationObserver = global.MutationObserver || global.WebKitMutationObserver;\n var document = global.document;\n var process = global.process;\n var Promise = global.Promise;\n var queueMicrotaskDescriptor = getOwnPropertyDescriptor(global, 'queueMicrotask');\n var queueMicrotask = queueMicrotaskDescriptor && queueMicrotaskDescriptor.value;\n var flush, head, last, notify, toggle, node, promise, then;\n if (!queueMicrotask) {\n flush = function flush() {\n var parent, fn;\n if (IS_NODE && (parent = process.domain)) parent.exit();\n while (head) {\n fn = head.fn;\n head = head.next;\n try {\n fn();\n } catch (error) {\n if (head) notify();else last = undefined;\n throw error;\n }\n }\n last = undefined;\n if (parent) 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, {\n characterData: true\n });\n notify = function notify() {\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 = bind(promise.then, promise);\n notify = function notify() {\n then(flush);\n };\n } else if (IS_NODE) {\n notify = function notify() {\n process.nextTick(flush);\n };\n } else {\n macrotask = bind(macrotask, global);\n notify = function notify() {\n macrotask(flush);\n };\n }\n }\n module.exports = queueMicrotask || function (fn) {\n var task = {\n fn: fn,\n next: undefined\n };\n if (last) last.next = task;\n if (!head) {\n head = task;\n notify();\n }\n last = task;\n };\n\n /***/\n }, /* 122 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n var userAgent = __w_pdfjs_require__(32);\n var global = __w_pdfjs_require__(10);\n module.exports = /ipad|iphone|ipod/i.test(userAgent) && global.Pebble !== undefined;\n\n /***/\n }, /* 123 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n var userAgent = __w_pdfjs_require__(32);\n module.exports = /web0s(?!.*chrome)/i.test(userAgent);\n\n /***/\n }, /* 124 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n var anObject = __w_pdfjs_require__(49);\n var isObject = __w_pdfjs_require__(24);\n var newPromiseCapability = __w_pdfjs_require__(125);\n module.exports = function (C, x) {\n anObject(C);\n if (isObject(x) && x.constructor === C) return x;\n var promiseCapability = newPromiseCapability.f(C);\n var resolve = promiseCapability.resolve;\n resolve(x);\n return promiseCapability.promise;\n };\n\n /***/\n }, /* 125 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n \"use strict\";\n\n var aCallable = __w_pdfjs_require__(34);\n var PromiseCapability = function PromiseCapability(C) {\n var resolve, reject;\n this.promise = new C(function ($$resolve, $$reject) {\n if (resolve !== undefined || reject !== undefined) throw TypeError('Bad Promise constructor');\n resolve = $$resolve;\n reject = $$reject;\n });\n this.resolve = aCallable(resolve);\n this.reject = aCallable(reject);\n };\n module.exports.f = function (C) {\n return new PromiseCapability(C);\n };\n\n /***/\n }, /* 126 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n var global = __w_pdfjs_require__(10);\n module.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 }, /* 127 */\n /***/function (module) {\n module.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 }, /* 128 */\n /***/function (module) {\n module.exports = typeof window == 'object';\n\n /***/\n }, /* 129 */\n /***/function (__unused_webpack_module, __unused_webpack_exports, __w_pdfjs_require__) {\n \"use strict\";\n\n var $ = __w_pdfjs_require__(9);\n var call = __w_pdfjs_require__(14);\n var aCallable = __w_pdfjs_require__(34);\n var newPromiseCapabilityModule = __w_pdfjs_require__(125);\n var perform = __w_pdfjs_require__(127);\n var iterate = __w_pdfjs_require__(87);\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 = aCallable(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 remaining++;\n call(promiseResolve, C, promise).then(function (value) {\n if (alreadyCalled) return;\n alreadyCalled = true;\n values[index] = {\n status: 'fulfilled',\n value: value\n };\n --remaining || resolve(values);\n }, function (error) {\n if (alreadyCalled) 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) reject(result.value);\n return capability.promise;\n }\n });\n\n /***/\n }, /* 130 */\n /***/function (__unused_webpack_module, __unused_webpack_exports, __w_pdfjs_require__) {\n \"use strict\";\n\n var $ = __w_pdfjs_require__(9);\n var aCallable = __w_pdfjs_require__(34);\n var getBuiltIn = __w_pdfjs_require__(27);\n var call = __w_pdfjs_require__(14);\n var newPromiseCapabilityModule = __w_pdfjs_require__(125);\n var perform = __w_pdfjs_require__(127);\n var iterate = __w_pdfjs_require__(87);\n var 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 AggregateError = getBuiltIn('AggregateError');\n var capability = newPromiseCapabilityModule.f(C);\n var resolve = capability.resolve;\n var reject = capability.reject;\n var result = perform(function () {\n var promiseResolve = aCallable(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 remaining++;\n call(promiseResolve, C, promise).then(function (value) {\n if (alreadyRejected || alreadyResolved) return;\n alreadyResolved = true;\n resolve(value);\n }, function (error) {\n if (alreadyRejected || alreadyResolved) return;\n alreadyRejected = true;\n errors[index] = error;\n --remaining || reject(new AggregateError(errors, PROMISE_ANY_ERROR));\n });\n });\n --remaining || reject(new AggregateError(errors, PROMISE_ANY_ERROR));\n });\n if (result.error) reject(result.value);\n return capability.promise;\n }\n });\n\n /***/\n }, /* 131 */\n /***/function (__unused_webpack_module, __unused_webpack_exports, __w_pdfjs_require__) {\n \"use strict\";\n\n var $ = __w_pdfjs_require__(9);\n var IS_PURE = __w_pdfjs_require__(39);\n var NativePromise = __w_pdfjs_require__(108);\n var fails = __w_pdfjs_require__(13);\n var getBuiltIn = __w_pdfjs_require__(27);\n var isCallable = __w_pdfjs_require__(25);\n var speciesConstructor = __w_pdfjs_require__(113);\n var promiseResolve = __w_pdfjs_require__(124);\n var redefine = __w_pdfjs_require__(50);\n var NON_GENERIC = !!NativePromise && fails(function () {\n NativePromise.prototype['finally'].call({\n then: function then() {}\n }, function () {});\n });\n $({\n target: 'Promise',\n proto: true,\n real: true,\n forced: NON_GENERIC\n }, {\n 'finally': function _finally(onFinally) {\n var C = speciesConstructor(this, getBuiltIn('Promise'));\n var isFunction = isCallable(onFinally);\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 });\n if (!IS_PURE && isCallable(NativePromise)) {\n var method = getBuiltIn('Promise').prototype['finally'];\n if (NativePromise.prototype['finally'] !== method) {\n redefine(NativePromise.prototype, 'finally', method, {\n unsafe: true\n });\n }\n }\n\n /***/\n }, /* 132 */\n /***/function (__unused_webpack_module, __unused_webpack_exports, __w_pdfjs_require__) {\n \"use strict\";\n\n var charAt = __w_pdfjs_require__(133).charAt;\n var toString = __w_pdfjs_require__(103);\n var InternalStateModule = __w_pdfjs_require__(52);\n var defineIterator = __w_pdfjs_require__(78);\n var STRING_ITERATOR = 'String Iterator';\n var setInternalState = InternalStateModule.set;\n var getInternalState = InternalStateModule.getterFor(STRING_ITERATOR);\n defineIterator(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) 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 }, /* 133 */\n /***/function (module, __unused_webpack_exports, __w_pdfjs_require__) {\n var uncurryThis = __w_pdfjs_require__(19);\n var toIntegerOrInfinity = __w_pdfjs_require__(63);\n var toString = __w_pdfjs_require__(103);\n var requireObjectCoercible = __w_pdfjs_require__(21);\n var charAt = uncurryThis(''.charAt);\n var charCodeAt = uncurryThis(''.charCodeAt);\n var stringSlice = uncurryThis(''.slice);\n var createMethod = function createMethod(CONVERT_TO_STRING) {\n return function ($this, pos) {\n var S = toString(requireObjectCoercible($this));\n var position = toIntegerOrInfinity(pos);\n var size = S.length;\n var first, second;\n if (position < 0 || position >= size) return CONVERT_TO_STRING ? '' : undefined;\n first = charCodeAt(S, position);\n return first < 0xD800 || first > 0xDBFF || position + 1 === size || (second = charCodeAt(S, position + 1)) < 0xDC00 || second > 0xDFFF ? CONVERT_TO_STRING ? charAt(S, position) : first : CONVERT_TO_STRING ? stringSlice(S, position, position + 2) : (first - 0xD800 << 10) + (second - 0xDC00) + 0x10000;\n };\n };\n module.exports = {\n codeAt: createMethod(false),\n charAt: createMethod(true)\n };\n\n /***/\n }, /* 134 */\n /***/function (__unused_webpack_module, exports) {\n (function (global, factory) {\n true ? factory(exports) : 0;\n })(this, function (exports) {\n 'use strict';\n\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 get() {\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 get() {\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 _chunkSteps(chunk) {\n return resolvePromise({\n value: chunk,\n done: false\n });\n },\n _closeSteps: function _closeSteps() {\n return resolvePromise({\n value: undefined,\n done: true\n });\n },\n _errorSteps: function _errorSteps(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: {\n enumerable: true\n },\n read: {\n enumerable: true\n },\n releaseLock: {\n enumerable: true\n },\n closed: {\n enumerable: true\n }\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, {\n enumerable: false\n });\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 nextSteps() {\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 returnSteps() {\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 _chunkSteps(chunk) {\n _this._ongoingPromise = undefined;\n queueMicrotask(function () {\n return resolvePromise({\n value: chunk,\n done: false\n });\n });\n },\n _closeSteps: function _closeSteps() {\n _this._ongoingPromise = undefined;\n _this._isFinished = true;\n ReadableStreamReaderGenericRelease(reader);\n resolvePromise({\n value: undefined,\n done: true\n });\n },\n _errorSteps: function _errorSteps(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 next() {\n if (!IsReadableStreamAsyncIterator(this)) {\n return promiseRejectedWith(streamAsyncIteratorBrandCheckException('next'));\n }\n return this._asyncIteratorImpl.next();\n },\n return: function _return(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 get() {\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: {\n enumerable: true\n },\n respondWithNewView: {\n enumerable: true\n },\n view: {\n enumerable: true\n }\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 get() {\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 get() {\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: {\n enumerable: true\n },\n enqueue: {\n enumerable: true\n },\n error: {\n enumerable: true\n },\n byobRequest: {\n enumerable: true\n },\n desiredSize: {\n enumerable: true\n }\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 if (controller._pendingPullIntos.length > 0) {\n ReadableByteStreamControllerShiftPendingPullInto(controller);\n }\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 var viewByteLength = view.byteLength;\n firstDescriptor.buffer = TransferArrayBuffer(view.buffer);\n ReadableByteStreamControllerRespondInternal(controller, viewByteLength);\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 startAlgorithm() {\n return undefined;\n };\n var pullAlgorithm = function pullAlgorithm() {\n return promiseResolvedWith(undefined);\n };\n var cancelAlgorithm = function cancelAlgorithm() {\n return promiseResolvedWith(undefined);\n };\n if (underlyingByteSource.start !== undefined) {\n startAlgorithm = function startAlgorithm() {\n return underlyingByteSource.start(controller);\n };\n }\n if (underlyingByteSource.pull !== undefined) {\n pullAlgorithm = function pullAlgorithm() {\n return underlyingByteSource.pull(controller);\n };\n }\n if (underlyingByteSource.cancel !== undefined) {\n cancelAlgorithm = function cancelAlgorithm(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 get() {\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 _chunkSteps(chunk) {\n return resolvePromise({\n value: chunk,\n done: false\n });\n },\n _closeSteps: function _closeSteps(chunk) {\n return resolvePromise({\n value: chunk,\n done: true\n });\n },\n _errorSteps: function _errorSteps(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: {\n enumerable: true\n },\n read: {\n enumerable: true\n },\n releaseLock: {\n enumerable: true\n },\n closed: {\n enumerable: true\n }\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, [chunk, controller]);\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 get() {\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: {\n enumerable: true\n },\n close: {\n enumerable: true\n },\n getWriter: {\n enumerable: true\n },\n locked: {\n enumerable: true\n }\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 sizeAlgorithm() {\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 get() {\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 get() {\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 get() {\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: {\n enumerable: true\n },\n close: {\n enumerable: true\n },\n releaseLock: {\n enumerable: true\n },\n write: {\n enumerable: true\n },\n closed: {\n enumerable: true\n },\n desiredSize: {\n enumerable: true\n },\n ready: {\n enumerable: true\n }\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 get() {\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 get() {\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, {\n abortReason: {\n enumerable: true\n },\n signal: {\n enumerable: true\n },\n error: {\n enumerable: true\n }\n });\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 startAlgorithm() {\n return undefined;\n };\n var writeAlgorithm = function writeAlgorithm() {\n return promiseResolvedWith(undefined);\n };\n var closeAlgorithm = function closeAlgorithm() {\n return promiseResolvedWith(undefined);\n };\n var abortAlgorithm = function abortAlgorithm() {\n return promiseResolvedWith(undefined);\n };\n if (underlyingSink.start !== undefined) {\n startAlgorithm = function startAlgorithm() {\n return underlyingSink.start(controller);\n };\n }\n if (underlyingSink.write !== undefined) {\n writeAlgorithm = function writeAlgorithm(chunk) {\n return underlyingSink.write(chunk, controller);\n };\n }\n if (underlyingSink.close !== undefined) {\n closeAlgorithm = function closeAlgorithm() {\n return underlyingSink.close();\n };\n }\n if (underlyingSink.abort !== undefined) {\n abortAlgorithm = function abortAlgorithm(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 abortAlgorithm() {\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 _chunkSteps(chunk) {\n currentWrite = PerformPromiseThen(WritableStreamDefaultWriterWrite(writer, chunk), undefined, noop);\n resolveRead(false);\n },\n _closeSteps: function _closeSteps() {\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 get() {\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: {\n enumerable: true\n },\n enqueue: {\n enumerable: true\n },\n error: {\n enumerable: true\n },\n desiredSize: {\n enumerable: true\n }\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 startAlgorithm() {\n return undefined;\n };\n var pullAlgorithm = function pullAlgorithm() {\n return promiseResolvedWith(undefined);\n };\n var cancelAlgorithm = function cancelAlgorithm() {\n return promiseResolvedWith(undefined);\n };\n if (underlyingSource.start !== undefined) {\n startAlgorithm = function startAlgorithm() {\n return underlyingSource.start(controller);\n };\n }\n if (underlyingSource.pull !== undefined) {\n pullAlgorithm = function pullAlgorithm() {\n return underlyingSource.pull(controller);\n };\n }\n if (underlyingSource.cancel !== undefined) {\n cancelAlgorithm = function cancelAlgorithm(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 readAgain = 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 readAgain = true;\n return promiseResolvedWith(undefined);\n }\n reading = true;\n var readRequest = {\n _chunkSteps: function _chunkSteps(chunk) {\n queueMicrotask(function () {\n readAgain = 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 reading = false;\n if (readAgain) {\n pullAlgorithm();\n }\n });\n },\n _closeSteps: function _closeSteps() {\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 _errorSteps() {\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([reason1, reason2]);\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([reason1, reason2]);\n var cancelResult = ReadableStreamCancel(stream, compositeReason);\n resolveCancelPromise(cancelResult);\n }\n return cancelPromise;\n }\n function startAlgorithm() {}\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 [branch1, branch2];\n }\n function ReadableByteStreamTee(stream) {\n var reader = AcquireReadableStreamDefaultReader(stream);\n var reading = false;\n var readAgainForBranch1 = false;\n var readAgainForBranch2 = 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 _chunkSteps(chunk) {\n queueMicrotask(function () {\n readAgainForBranch1 = false;\n readAgainForBranch2 = 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 reading = false;\n if (readAgainForBranch1) {\n pull1Algorithm();\n } else if (readAgainForBranch2) {\n pull2Algorithm();\n }\n });\n },\n _closeSteps: function _closeSteps() {\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 _errorSteps() {\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 _chunkSteps(chunk) {\n queueMicrotask(function () {\n readAgainForBranch1 = false;\n readAgainForBranch2 = 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 reading = false;\n if (readAgainForBranch1) {\n pull1Algorithm();\n } else if (readAgainForBranch2) {\n pull2Algorithm();\n }\n });\n },\n _closeSteps: function _closeSteps(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 _errorSteps() {\n reading = false;\n }\n };\n ReadableStreamBYOBReaderRead(reader, view, readIntoRequest);\n }\n function pull1Algorithm() {\n if (reading) {\n readAgainForBranch1 = true;\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 readAgainForBranch2 = true;\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([reason1, reason2]);\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([reason1, reason2]);\n var cancelResult = ReadableStreamCancel(stream, compositeReason);\n resolveCancelPromise(cancelResult);\n }\n return cancelPromise;\n }\n function startAlgorithm() {}\n branch1 = CreateReadableByteStream(startAlgorithm, pull1Algorithm, cancel1Algorithm);\n branch2 = CreateReadableByteStream(startAlgorithm, pull2Algorithm, cancel2Algorithm);\n forwardReaderError(reader);\n return [branch1, branch2];\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 {\n mode: mode === undefined ? undefined : convertReadableStreamReaderMode(mode, context + \" has member 'mode' that\")\n };\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 {\n preventCancel: Boolean(preventCancel)\n };\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 get() {\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: {\n enumerable: true\n },\n getReader: {\n enumerable: true\n },\n pipeThrough: {\n enumerable: true\n },\n pipeTo: {\n enumerable: true\n },\n tee: {\n enumerable: true\n },\n values: {\n enumerable: true\n },\n locked: {\n enumerable: true\n }\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 sizeAlgorithm() {\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 {\n highWaterMark: convertUnrestrictedDouble(highWaterMark)\n };\n }\n var byteLengthSizeFunction = function byteLengthSizeFunction(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 get() {\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 get() {\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: {\n enumerable: true\n },\n size: {\n enumerable: true\n }\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 countSizeFunction() {\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 get() {\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 get() {\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: {\n enumerable: true\n },\n size: {\n enumerable: true\n }\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, [chunk, controller]);\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 get() {\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 get() {\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: {\n enumerable: true\n },\n writable: {\n enumerable: true\n }\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 get() {\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: {\n enumerable: true\n },\n error: {\n enumerable: true\n },\n terminate: {\n enumerable: true\n },\n desiredSize: {\n enumerable: true\n }\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 transformAlgorithm(chunk) {\n try {\n TransformStreamDefaultControllerEnqueue(controller, chunk);\n return promiseResolvedWith(undefined);\n } catch (transformResultE) {\n return promiseRejectedWith(transformResultE);\n }\n };\n var flushAlgorithm = function flushAlgorithm() {\n return promiseResolvedWith(undefined);\n };\n if (transformer.transform !== undefined) {\n transformAlgorithm = function transformAlgorithm(chunk) {\n return transformer.transform(chunk, controller);\n };\n }\n if (transformer.flush !== undefined) {\n flushAlgorithm = function flushAlgorithm() {\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', {\n value: true\n });\n });\n\n /***/\n }, /* 135 */\n /***/function (__unused_webpack_module, exports, __w_pdfjs_require__) {\n \"use strict\";\n\n Object.defineProperty(exports, \"__esModule\", {\n value: true\n });\n exports.BaseStandardFontDataFactory = exports.BaseSVGFactory = exports.BaseCanvasFactory = exports.BaseCMapReaderFactory = void 0;\n var _regenerator = _interopRequireDefault(__w_pdfjs_require__(2));\n var _util = __w_pdfjs_require__(4);\n function _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n \"default\": obj\n };\n }\n function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {\n try {\n var info = gen[key](arg);\n var value = info.value;\n } catch (error) {\n reject(error);\n return;\n }\n if (info.done) {\n resolve(value);\n } else {\n Promise.resolve(value).then(_next, _throw);\n }\n }\n function _asyncToGenerator(fn) {\n return function () {\n var self = this,\n args = arguments;\n return new Promise(function (resolve, reject) {\n var gen = fn.apply(self, args);\n function _next(value) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value);\n }\n function _throw(err) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err);\n }\n _next(undefined);\n });\n };\n }\n function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n }\n function _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n }\n function _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n return Constructor;\n }\n var BaseCanvasFactory = /*#__PURE__*/function () {\n function BaseCanvasFactory() {\n _classCallCheck(this, BaseCanvasFactory);\n if (this.constructor === BaseCanvasFactory) {\n (0, _util.unreachable)(\"Cannot initialize BaseCanvasFactory.\");\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 var canvas = this._createCanvas(width, height);\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 if (width <= 0 || height <= 0) {\n throw new Error(\"Invalid canvas size\");\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 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 return BaseCanvasFactory;\n }();\n exports.BaseCanvasFactory = BaseCanvasFactory;\n var 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 _classCallCheck(this, BaseCMapReaderFactory);\n if (this.constructor === BaseCMapReaderFactory) {\n (0, _util.unreachable)(\"Cannot initialize BaseCMapReaderFactory.\");\n }\n this.baseUrl = baseUrl;\n this.isCompressed = isCompressed;\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 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 if (this.baseUrl) {\n _context.next = 3;\n break;\n }\n throw new Error('The CMap \"baseUrl\" parameter must be specified, ensure that ' + 'the \"cMapUrl\" and \"cMapPacked\" API parameters are provided.');\n case 3:\n if (name) {\n _context.next = 5;\n break;\n }\n throw new Error(\"CMap name must be specified.\");\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 case 8:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee, this);\n }));\n function fetch(_x) {\n return _fetch.apply(this, arguments);\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 return BaseCMapReaderFactory;\n }();\n exports.BaseCMapReaderFactory = BaseCMapReaderFactory;\n var BaseStandardFontDataFactory = /*#__PURE__*/function () {\n function BaseStandardFontDataFactory(_ref3) {\n var _ref3$baseUrl = _ref3.baseUrl,\n baseUrl = _ref3$baseUrl === void 0 ? null : _ref3$baseUrl;\n _classCallCheck(this, BaseStandardFontDataFactory);\n if (this.constructor === BaseStandardFontDataFactory) {\n (0, _util.unreachable)(\"Cannot initialize BaseStandardFontDataFactory.\");\n }\n this.baseUrl = baseUrl;\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 if (this.baseUrl) {\n _context2.next = 3;\n break;\n }\n throw new Error('The standard font \"baseUrl\" parameter must be specified, ensure that ' + 'the \"standardFontDataUrl\" API parameter is provided.');\n case 3:\n if (filename) {\n _context2.next = 5;\n break;\n }\n throw new Error(\"Font filename must be specified.\");\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 case 7:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2, this);\n }));\n function fetch(_x2) {\n return _fetch2.apply(this, arguments);\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 return BaseStandardFontDataFactory;\n }();\n exports.BaseStandardFontDataFactory = BaseStandardFontDataFactory;\n var BaseSVGFactory = /*#__PURE__*/function () {\n function BaseSVGFactory() {\n _classCallCheck(this, BaseSVGFactory);\n if (this.constructor === BaseSVGFactory) {\n (0, _util.unreachable)(\"Cannot initialize BaseSVGFactory.\");\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 var svg = this._createSVG(\"svg:svg\");\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 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 return BaseSVGFactory;\n }();\n exports.BaseSVGFactory = BaseSVGFactory;\n\n /***/\n }, /* 136 */\n /***/function (__unused_webpack_module, exports, __w_pdfjs_require__) {\n \"use strict\";\n\n Object.defineProperty(exports, \"__esModule\", {\n value: true\n });\n exports.build = exports.RenderTask = exports.PDFWorker = exports.PDFPageProxy = exports.PDFDocumentProxy = exports.PDFDocumentLoadingTask = exports.PDFDataRangeTransport = exports.LoopbackPort = exports.DefaultStandardFontDataFactory = exports.DefaultCanvasFactory = exports.DefaultCMapReaderFactory = void 0;\n exports.getDocument = getDocument;\n exports.setPDFNetworkStreamFactory = setPDFNetworkStreamFactory;\n exports.version = void 0;\n var _regenerator = _interopRequireDefault(__w_pdfjs_require__(2));\n var _util = __w_pdfjs_require__(4);\n var _display_utils = __w_pdfjs_require__(1);\n var _font_loader = __w_pdfjs_require__(137);\n var _node_utils = __w_pdfjs_require__(138);\n var _annotation_storage = __w_pdfjs_require__(139);\n var _canvas = __w_pdfjs_require__(140);\n var _worker_options = __w_pdfjs_require__(142);\n var _is_node = __w_pdfjs_require__(6);\n var _message_handler = __w_pdfjs_require__(143);\n var _metadata = __w_pdfjs_require__(144);\n var _optional_content_config = __w_pdfjs_require__(145);\n var _transport_stream = __w_pdfjs_require__(146);\n var _xfa_text = __w_pdfjs_require__(147);\n function _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n \"default\": obj\n };\n }\n function _classPrivateFieldInitSpec(obj, privateMap, value) {\n _checkPrivateRedeclaration(obj, privateMap);\n privateMap.set(obj, value);\n }\n function _checkPrivateRedeclaration(obj, privateCollection) {\n if (privateCollection.has(obj)) {\n throw new TypeError(\"Cannot initialize the same private elements twice on an object\");\n }\n }\n function _classPrivateFieldSet(receiver, privateMap, value) {\n var descriptor = _classExtractFieldDescriptor(receiver, privateMap, \"set\");\n _classApplyDescriptorSet(receiver, descriptor, value);\n return value;\n }\n function _classApplyDescriptorSet(receiver, descriptor, value) {\n if (descriptor.set) {\n descriptor.set.call(receiver, value);\n } else {\n if (!descriptor.writable) {\n throw new TypeError(\"attempted to set read only private field\");\n }\n descriptor.value = value;\n }\n }\n function _classPrivateFieldGet(receiver, privateMap) {\n var descriptor = _classExtractFieldDescriptor(receiver, privateMap, \"get\");\n return _classApplyDescriptorGet(receiver, descriptor);\n }\n function _classExtractFieldDescriptor(receiver, privateMap, action) {\n if (!privateMap.has(receiver)) {\n throw new TypeError(\"attempted to \" + action + \" private field on non-instance\");\n }\n return privateMap.get(receiver);\n }\n function _classApplyDescriptorGet(receiver, descriptor) {\n if (descriptor.get) {\n return descriptor.get.call(receiver);\n }\n return descriptor.value;\n }\n function _toConsumableArray(arr) {\n return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread();\n }\n function _nonIterableSpread() {\n 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 }\n function _iterableToArray(iter) {\n if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter);\n }\n function _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) return _arrayLikeToArray(arr);\n }\n function _createForOfIteratorHelper(o, allowArrayLike) {\n var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"];\n if (!it) {\n if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") {\n if (it) o = it;\n var i = 0;\n var F = function F() {};\n return {\n s: F,\n n: function n() {\n if (i >= o.length) return {\n done: true\n };\n return {\n done: false,\n value: o[i++]\n };\n },\n e: function e(_e2) {\n throw _e2;\n },\n f: F\n };\n }\n throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n }\n var normalCompletion = true,\n didErr = false,\n err;\n return {\n s: function s() {\n it = it.call(o);\n },\n n: function n() {\n var step = it.next();\n normalCompletion = step.done;\n return step;\n },\n e: function e(_e3) {\n didErr = true;\n err = _e3;\n },\n f: function f() {\n try {\n if (!normalCompletion && it[\"return\"] != null) it[\"return\"]();\n } finally {\n if (didErr) throw err;\n }\n }\n };\n }\n function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n }\n function _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n }\n function _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n return Constructor;\n }\n function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {\n try {\n var info = gen[key](arg);\n var value = info.value;\n } catch (error) {\n reject(error);\n return;\n }\n if (info.done) {\n resolve(value);\n } else {\n Promise.resolve(value).then(_next, _throw);\n }\n }\n function _asyncToGenerator(fn) {\n return function () {\n var self = this,\n args = arguments;\n return new Promise(function (resolve, reject) {\n var gen = fn.apply(self, args);\n function _next(value) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value);\n }\n function _throw(err) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err);\n }\n _next(undefined);\n });\n };\n }\n function _slicedToArray(arr, i) {\n return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest();\n }\n function _nonIterableRest() {\n 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 }\n function _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return _arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);\n }\n function _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n for (var i = 0, arr2 = new Array(len); i < len; i++) {\n arr2[i] = arr[i];\n }\n return arr2;\n }\n function _iterableToArrayLimit(arr, i) {\n var _i = arr == null ? null : typeof Symbol !== \"undefined\" && arr[Symbol.iterator] || arr[\"@@iterator\"];\n if (_i == null) return;\n var _arr = [];\n var _n = true;\n var _d = false;\n var _s, _e;\n try {\n for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) {\n _arr.push(_s.value);\n if (i && _arr.length === i) break;\n }\n } catch (err) {\n _d = true;\n _e = err;\n } finally {\n try {\n if (!_n && _i[\"return\"] != null) _i[\"return\"]();\n } finally {\n if (_d) throw _e;\n }\n }\n return _arr;\n }\n function _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n }\n function _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") {\n _typeof = function _typeof(obj) {\n return typeof obj;\n };\n } else {\n _typeof = function _typeof(obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n };\n }\n return _typeof(obj);\n }\n var DEFAULT_RANGE_CHUNK_SIZE = 65536;\n var RENDERING_CANCELLED_TIMEOUT = 100;\n var DefaultCanvasFactory = _is_node.isNodeJS ? _node_utils.NodeCanvasFactory : _display_utils.DOMCanvasFactory;\n exports.DefaultCanvasFactory = DefaultCanvasFactory;\n var DefaultCMapReaderFactory = _is_node.isNodeJS ? _node_utils.NodeCMapReaderFactory : _display_utils.DOMCMapReaderFactory;\n exports.DefaultCMapReaderFactory = DefaultCMapReaderFactory;\n var DefaultStandardFontDataFactory = _is_node.isNodeJS ? _node_utils.NodeStandardFontDataFactory : _display_utils.DOMStandardFontDataFactory;\n exports.DefaultStandardFontDataFactory = DefaultStandardFontDataFactory;\n var createPDFNetworkStream;\n function setPDFNetworkStreamFactory(pdfNetworkStreamFactory) {\n createPDFNetworkStream = pdfNetworkStreamFactory;\n }\n function getDocument(src) {\n var task = new PDFDocumentLoadingTask();\n var source;\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 if (!src.url && !src.data && !src.range) {\n throw new Error(\"Invalid parameter object: need either .data, .range or .url\");\n }\n source = src;\n }\n var params = Object.create(null);\n var rangeTransport = null,\n worker = null;\n for (var key in source) {\n var value = source[key];\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 throw new Error(\"Invalid PDF url data: \" + \"either string or URL-object is expected in the url property.\");\n case \"range\":\n rangeTransport = value;\n continue;\n case \"worker\":\n worker = value;\n continue;\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 continue;\n }\n params[key] = value;\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 if (typeof params.docBaseUrl !== \"string\" || (0, _display_utils.isDataScheme)(params.docBaseUrl)) {\n params.docBaseUrl = null;\n }\n if (!Number.isInteger(params.maxImageSize)) {\n params.maxImageSize = -1;\n }\n if (typeof params.useWorkerFetch !== \"boolean\") {\n params.useWorkerFetch = params.CMapReaderFactory === _display_utils.DOMCMapReaderFactory && params.StandardFontDataFactory === _display_utils.DOMStandardFontDataFactory;\n }\n if (typeof params.isEvalSupported !== \"boolean\") {\n params.isEvalSupported = true;\n }\n if (typeof params.disableFontFace !== \"boolean\") {\n params.disableFontFace = _is_node.isNodeJS;\n }\n if (typeof params.useSystemFonts !== \"boolean\") {\n params.useSystemFonts = !_is_node.isNodeJS && !params.disableFontFace;\n }\n if (typeof params.ownerDocument === \"undefined\") {\n params.ownerDocument = globalThis.document;\n }\n if (typeof params.disableRange !== \"boolean\") {\n params.disableRange = false;\n }\n if (typeof params.disableStream !== \"boolean\") {\n params.disableStream = false;\n }\n if (typeof params.disableAutoFetch !== \"boolean\") {\n params.disableAutoFetch = false;\n }\n (0, _util.setVerbosityLevel)(params.verbosity);\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 var docId = task.docId;\n worker.promise.then(function () {\n if (task.destroyed) {\n throw new Error(\"Loading aborted\");\n }\n var workerIdPromise = _fetchDocument(worker, params, rangeTransport, docId);\n var networkStreamPromise = new Promise(function (resolve) {\n var networkStream;\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 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 if (task.destroyed) {\n throw new Error(\"Loading aborted\");\n }\n var messageHandler = new _message_handler.MessageHandler(docId, workerId, worker.port);\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 function _fetchDocument(_x, _x2, _x3, _x4) {\n return _fetchDocument2.apply(this, arguments);\n }\n function _fetchDocument2() {\n _fetchDocument2 = _asyncToGenerator( /*#__PURE__*/_regenerator[\"default\"].mark(function _callee7(worker, source, pdfDataRangeTransport, docId) {\n var workerId;\n return _regenerator[\"default\"].wrap(function _callee7$(_context7) {\n while (1) {\n switch (_context7.prev = _context7.next) {\n case 0:\n if (!worker.destroyed) {\n _context7.next = 2;\n break;\n }\n throw new Error(\"Worker was destroyed\");\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 _context7.next = 5;\n return worker.messageHandler.sendWithPromise(\"GetDocRequest\", {\n docId: docId,\n apiVersion: '2.12.313',\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 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 case 5:\n workerId = _context7.sent;\n if (!worker.destroyed) {\n _context7.next = 8;\n break;\n }\n throw new Error(\"Worker was destroyed\");\n case 8:\n return _context7.abrupt(\"return\", workerId);\n case 9:\n case \"end\":\n return _context7.stop();\n }\n }\n }, _callee7);\n }));\n return _fetchDocument2.apply(this, arguments);\n }\n var PDFDocumentLoadingTask = /*#__PURE__*/function () {\n function PDFDocumentLoadingTask() {\n _classCallCheck(this, PDFDocumentLoadingTask);\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 _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 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 case 3:\n this._transport = null;\n if (this._worker) {\n this._worker.destroy();\n this._worker = null;\n }\n case 5:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee, this);\n }));\n function destroy() {\n return _destroy.apply(this, arguments);\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 return PDFDocumentLoadingTask;\n }();\n exports.PDFDocumentLoadingTask = PDFDocumentLoadingTask;\n var 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 _classCallCheck(this, PDFDataRangeTransport);\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 _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 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 this._readyCapability.promise.then(function () {\n var _iterator2 = _createForOfIteratorHelper(_this._progressListeners),\n _step2;\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 this._readyCapability.promise.then(function () {\n var _iterator3 = _createForOfIteratorHelper(_this2._progressiveReadListeners),\n _step3;\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 this._readyCapability.promise.then(function () {\n var _iterator4 = _createForOfIteratorHelper(_this3._progressiveDoneListeners),\n _step4;\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 return PDFDataRangeTransport;\n }();\n exports.PDFDataRangeTransport = PDFDataRangeTransport;\n var PDFDocumentProxy = /*#__PURE__*/function () {\n function PDFDocumentProxy(pdfInfo, transport) {\n var _this4 = this;\n _classCallCheck(this, PDFDocumentProxy);\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 Object.defineProperty(this, \"getStats\", {\n value: function () {\n var _value = _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 (0, _display_utils.deprecated)(\"`PDFDocumentProxy.getStats`, \" + \"please use the `PDFDocumentProxy.stats`-getter instead.\");\n return _context2.abrupt(\"return\", _this4.stats || {\n streamTypes: {},\n fontTypes: {}\n });\n case 2:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2);\n }));\n function value() {\n return _value.apply(this, arguments);\n }\n return value;\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: \"stats\",\n get: function get() {\n return this._transport.stats;\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: \"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 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 return PDFDocumentProxy;\n }();\n exports.PDFDocumentProxy = PDFDocumentProxy;\n var PDFPageProxy = /*#__PURE__*/function () {\n function PDFPageProxy(pageIndex, pageInfo, transport, ownerDocument) {\n var pdfBug = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : false;\n _classCallCheck(this, PDFPageProxy);\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 _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 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 var intentArgs = this._transport.getRenderingIntent(intent);\n var promise = this._annotationPromises.get(intentArgs.cacheKey);\n if (!promise) {\n promise = this._transport.getAnnotations(this._pageIndex, intentArgs.renderingIntent);\n this._annotationPromises.set(intentArgs.cacheKey, promise);\n promise = promise.then(function (annotations) {\n var _iterator5 = _createForOfIteratorHelper(annotations),\n _step5;\n try {\n var _loop = function _loop() {\n var annotation = _step5.value;\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 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 for (_iterator5.s(); !(_step5 = _iterator5.n()).done;) {\n _loop();\n }\n } catch (err) {\n _iterator5.e(err);\n } finally {\n _iterator5.f();\n }\n return annotations;\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 _callee3() {\n var _this$_transport$_htm;\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$_transport$_htm = this._transport._htmlForXfa) === null || _this$_transport$_htm === void 0 ? void 0 : _this$_transport$_htm.children[this._pageIndex]) || null);\n case 1:\n case \"end\":\n return _context3.stop();\n }\n }\n }, _callee3, this);\n }));\n function getXfa() {\n return _getXfa.apply(this, arguments);\n }\n return getXfa;\n }()\n }, {\n key: \"render\",\n value: function render(_ref5) {\n var _arguments$,\n _arguments$2,\n _this5 = this,\n _intentState;\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 _ref5$annotationCanva = _ref5.annotationCanvasMap,\n annotationCanvasMap = _ref5$annotationCanva === void 0 ? null : _ref5$annotationCanva;\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 if (arguments[0].renderInteractiveForms === true && annotationMode === _util.AnnotationMode.ENABLE) {\n annotationMode = _util.AnnotationMode.ENABLE_FORMS;\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 if (arguments[0].includeAnnotationStorage === true && annotationMode === _util.AnnotationMode.ENABLE) {\n annotationMode = _util.AnnotationMode.ENABLE_STORAGE;\n }\n }\n if (this._stats) {\n this._stats.time(\"Overall\");\n }\n var intentArgs = this._transport.getRenderingIntent(intent, annotationMode);\n this.pendingCleanup = false;\n if (!optionalContentConfigPromise) {\n optionalContentConfigPromise = this._transport.getOptionalContentConfig();\n }\n var intentState = this._intentStates.get(intentArgs.cacheKey);\n if (!intentState) {\n intentState = Object.create(null);\n this._intentStates.set(intentArgs.cacheKey, intentState);\n }\n if (intentState.streamReaderCancelTimeout) {\n clearTimeout(intentState.streamReaderCancelTimeout);\n intentState.streamReaderCancelTimeout = null;\n }\n var canvasFactoryInstance = canvasFactory || new DefaultCanvasFactory({\n ownerDocument: this._ownerDocument\n });\n var intentPrint = !!(intentArgs.renderingIntent & _util.RenderingIntentFlag.PRINT);\n if (!intentState.displayReadyCapability) {\n intentState.displayReadyCapability = (0, _util.createPromiseCapability)();\n intentState.operatorList = {\n fnArray: [],\n argsArray: [],\n lastChunk: false\n };\n if (this._stats) {\n this._stats.time(\"Page Request\");\n }\n this._pumpOperatorList(intentArgs);\n }\n var complete = function complete(error) {\n intentState.renderTasks[\"delete\"](internalRenderTask);\n if (_this5.cleanupAfterRender || intentPrint) {\n _this5.pendingCleanup = true;\n }\n _this5._tryCleanup();\n if (error) {\n internalRenderTask.capability.reject(error);\n _this5._abortOperatorList({\n intentState: intentState,\n reason: error instanceof Error ? error : new Error(error)\n });\n } else {\n internalRenderTask.capability.resolve();\n }\n if (_this5._stats) {\n _this5._stats.timeEnd(\"Rendering\");\n _this5._stats.timeEnd(\"Overall\");\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 annotationCanvasMap: annotationCanvasMap,\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 if (_this5.pendingCleanup) {\n complete();\n return;\n }\n if (_this5._stats) {\n _this5._stats.time(\"Rendering\");\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 function operatorListChanged() {\n if (intentState.operatorList.lastChunk) {\n intentState.opListReadCapability.resolve(intentState.operatorList);\n intentState.renderTasks[\"delete\"](opListTask);\n }\n }\n var intentArgs = this._transport.getRenderingIntent(intent, annotationMode, true);\n var intentState = this._intentStates.get(intentArgs.cacheKey);\n if (!intentState) {\n intentState = Object.create(null);\n this._intentStates.set(intentArgs.cacheKey, intentState);\n }\n var opListTask;\n if (!intentState.opListReadCapability) {\n var _intentState2;\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 if (this._stats) {\n this._stats.time(\"Page Request\");\n }\n this._pumpOperatorList(intentArgs);\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 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 if (this._transport._htmlForXfa) {\n return this.getXfa().then(function (xfa) {\n return _xfa_text.XfaText.textContent(xfa);\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 var value = _ref10.value,\n done = _ref10.done;\n if (done) {\n resolve(textContent);\n return;\n }\n Object.assign(textContent.styles, value.styles);\n (_textContent$items = textContent.items).push.apply(_textContent$items, _toConsumableArray(value.items));\n pump();\n }, reject);\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 var waitOn = [];\n var _iterator6 = _createForOfIteratorHelper(this._intentStates.values()),\n _step6;\n try {\n for (_iterator6.s(); !(_step6 = _iterator6.n()).done;) {\n var intentState = _step6.value;\n this._abortOperatorList({\n intentState: intentState,\n reason: new Error(\"Page was destroyed.\"),\n force: true\n });\n if (intentState.opListReadCapability) {\n continue;\n }\n var _iterator7 = _createForOfIteratorHelper(intentState.renderTasks),\n _step7;\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 this.objs.clear();\n this._annotationPromises.clear();\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 if (!this.pendingCleanup) {\n return false;\n }\n var _iterator8 = _createForOfIteratorHelper(this._intentStates.values()),\n _step8;\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 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 this._intentStates.clear();\n this.objs.clear();\n this._annotationPromises.clear();\n this._jsActionsPromise = null;\n this._structTreePromise = null;\n if (resetStats && this._stats) {\n this._stats = new _display_utils.StatTimer();\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 if (!intentState) {\n return;\n }\n if (this._stats) {\n this._stats.timeEnd(\"Page Request\");\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 intentState.operatorList.lastChunk = operatorListChunk.lastChunk;\n var _iterator9 = _createForOfIteratorHelper(intentState.renderTasks),\n _step9;\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 if (operatorListChunk.lastChunk) {\n this._tryCleanup();\n }\n }\n }, {\n key: \"_pumpOperatorList\",\n value: function _pumpOperatorList(_ref11) {\n var _this6 = this;\n var renderingIntent = _ref11.renderingIntent,\n cacheKey = _ref11.cacheKey;\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 var reader = readableStream.getReader();\n var intentState = this._intentStates.get(cacheKey);\n intentState.streamReader = reader;\n var pump = function pump() {\n reader.read().then(function (_ref12) {\n var value = _ref12.value,\n done = _ref12.done;\n if (done) {\n intentState.streamReader = null;\n return;\n }\n if (_this6._transport.destroyed) {\n return;\n }\n _this6._renderPageChunk(value, intentState);\n pump();\n }, function (reason) {\n intentState.streamReader = null;\n if (_this6._transport.destroyed) {\n return;\n }\n if (intentState.operatorList) {\n intentState.operatorList.lastChunk = true;\n var _iterator10 = _createForOfIteratorHelper(intentState.renderTasks),\n _step10;\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 _this6._tryCleanup();\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 pump();\n }\n }, {\n key: \"_abortOperatorList\",\n value: function _abortOperatorList(_ref13) {\n var _this7 = this;\n var intentState = _ref13.intentState,\n reason = _ref13.reason,\n _ref13$force = _ref13.force,\n force = _ref13$force === void 0 ? false : _ref13$force;\n if (!intentState.streamReader) {\n return;\n }\n if (!force) {\n if (intentState.renderTasks.size > 0) {\n return;\n }\n if (reason instanceof _display_utils.RenderingCancelledException) {\n intentState.streamReaderCancelTimeout = setTimeout(function () {\n _this7._abortOperatorList({\n intentState: intentState,\n reason: reason,\n force: true\n });\n intentState.streamReaderCancelTimeout = null;\n }, RENDERING_CANCELLED_TIMEOUT);\n return;\n }\n }\n intentState.streamReader.cancel(new _util.AbortException(reason.message))[\"catch\"](function () {});\n intentState.streamReader = null;\n if (this._transport.destroyed) {\n return;\n }\n var _iterator11 = _createForOfIteratorHelper(this._intentStates),\n _step11;\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 if (curIntentState === intentState) {\n this._intentStates[\"delete\"](curCacheKey);\n break;\n }\n }\n } catch (err) {\n _iterator11.e(err);\n } finally {\n _iterator11.f();\n }\n this.cleanup();\n }\n }, {\n key: \"stats\",\n get: function get() {\n return this._stats;\n }\n }]);\n return PDFPageProxy;\n }();\n exports.PDFPageProxy = PDFPageProxy;\n var LoopbackPort = /*#__PURE__*/function () {\n function LoopbackPort() {\n _classCallCheck(this, LoopbackPort);\n this._listeners = [];\n this._deferred = Promise.resolve();\n }\n _createClass(LoopbackPort, [{\n key: \"postMessage\",\n value: function postMessage(obj, transfers) {\n var _this8 = this;\n function cloneValue(object) {\n if (globalThis.structuredClone) {\n return globalThis.structuredClone(object, transfers);\n }\n function fallbackCloneValue(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 if (_typeof(value) !== \"object\" || value === null) {\n return value;\n }\n if (cloned.has(value)) {\n return cloned.get(value);\n }\n var buffer, result;\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 cloned.set(value, result);\n return result;\n }\n if (value instanceof Map) {\n result = new Map();\n cloned.set(value, result);\n var _iterator12 = _createForOfIteratorHelper(value),\n _step12;\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 result.set(key, fallbackCloneValue(val));\n }\n } catch (err) {\n _iterator12.e(err);\n } finally {\n _iterator12.f();\n }\n return result;\n }\n if (value instanceof Set) {\n result = new Set();\n cloned.set(value, result);\n var _iterator13 = _createForOfIteratorHelper(value),\n _step13;\n try {\n for (_iterator13.s(); !(_step13 = _iterator13.n()).done;) {\n var _val = _step13.value;\n result.add(fallbackCloneValue(_val));\n }\n } catch (err) {\n _iterator13.e(err);\n } finally {\n _iterator13.f();\n }\n return result;\n }\n result = Array.isArray(value) ? [] : Object.create(null);\n cloned.set(value, result);\n for (var i in value) {\n var _value$hasOwnProperty;\n var desc = void 0,\n p = value;\n while (!(desc = Object.getOwnPropertyDescriptor(p, i))) {\n p = Object.getPrototypeOf(p);\n }\n if (typeof desc.value === \"undefined\") {\n continue;\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 result[i] = fallbackCloneValue(desc.value);\n }\n return result;\n }\n var cloned = new WeakMap();\n return fallbackCloneValue(object);\n }\n var event = {\n data: cloneValue(obj)\n };\n this._deferred.then(function () {\n var _iterator14 = _createForOfIteratorHelper(_this8._listeners),\n _step14;\n try {\n for (_iterator14.s(); !(_step14 = _iterator14.n()).done;) {\n var listener = _step14.value;\n listener.call(_this8, 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 this._listeners.splice(i, 1);\n }\n }, {\n key: \"terminate\",\n value: function terminate() {\n this._listeners.length = 0;\n }\n }]);\n return LoopbackPort;\n }();\n exports.LoopbackPort = LoopbackPort;\n var 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 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 if (pdfjsFilePath) {\n PDFWorkerUtil.fallbackWorkerSrc = pdfjsFilePath.replace(/(\\.(?:min\\.)?js)(\\?.*)?$/i, \".worker$1$2\");\n }\n }\n PDFWorkerUtil.createCDNWrapper = function (url) {\n var wrapper = \"importScripts(\\\"\".concat(url, \"\\\");\");\n return URL.createObjectURL(new Blob([wrapper]));\n };\n }\n var 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 _classCallCheck(this, PDFWorker);\n if (port && PDFWorker._workerPorts.has(port)) {\n throw new Error(\"Cannot use more than one PDFWorker per port.\");\n }\n this.name = name;\n this.destroyed = false;\n this.verbosity = verbosity;\n this._readyCapability = (0, _util.createPromiseCapability)();\n this._port = null;\n this._webWorker = null;\n this._messageHandler = null;\n if (port) {\n PDFWorker._workerPorts.set(port, this);\n this._initializeFromPort(port);\n return;\n }\n this._initialize();\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 this._messageHandler.on(\"ready\", function () {});\n this._readyCapability.resolve();\n }\n }, {\n key: \"_initialize\",\n value: function _initialize() {\n var _this9 = this;\n if (typeof Worker !== \"undefined\" && !PDFWorkerUtil.isWorkerDisabled && !PDFWorker._mainThreadWorkerMessageHandler) {\n var workerSrc = PDFWorker.workerSrc;\n try {\n if (!(0, _util.isSameOrigin)(window.location.href, workerSrc)) {\n workerSrc = PDFWorkerUtil.createCDNWrapper(new URL(workerSrc, window.location).href);\n }\n var worker = new Worker(workerSrc);\n var messageHandler = new _message_handler.MessageHandler(\"main\", \"worker\", worker);\n var terminateEarly = function terminateEarly() {\n worker.removeEventListener(\"error\", onWorkerError);\n messageHandler.destroy();\n worker.terminate();\n if (_this9.destroyed) {\n _this9._readyCapability.reject(new Error(\"Worker was destroyed\"));\n } else {\n _this9._setupFakeWorker();\n }\n };\n var onWorkerError = function onWorkerError() {\n if (!_this9._webWorker) {\n terminateEarly();\n }\n };\n worker.addEventListener(\"error\", onWorkerError);\n messageHandler.on(\"test\", function (data) {\n worker.removeEventListener(\"error\", onWorkerError);\n if (_this9.destroyed) {\n terminateEarly();\n return;\n }\n if (data) {\n _this9._messageHandler = messageHandler;\n _this9._port = worker;\n _this9._webWorker = worker;\n _this9._readyCapability.resolve();\n messageHandler.send(\"configure\", {\n verbosity: _this9.verbosity\n });\n } else {\n _this9._setupFakeWorker();\n messageHandler.destroy();\n worker.terminate();\n }\n });\n messageHandler.on(\"ready\", function (data) {\n worker.removeEventListener(\"error\", onWorkerError);\n if (_this9.destroyed) {\n terminateEarly();\n return;\n }\n try {\n sendTest();\n } catch (e) {\n _this9._setupFakeWorker();\n }\n });\n var sendTest = function sendTest() {\n var testObj = new Uint8Array([255]);\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 sendTest();\n return;\n } catch (e) {\n (0, _util.info)(\"The worker has been disabled.\");\n }\n }\n this._setupFakeWorker();\n }\n }, {\n key: \"_setupFakeWorker\",\n value: function _setupFakeWorker() {\n var _this10 = this;\n if (!PDFWorkerUtil.isWorkerDisabled) {\n (0, _util.warn)(\"Setting up fake worker.\");\n PDFWorkerUtil.isWorkerDisabled = true;\n }\n PDFWorker._setupFakeWorkerGlobal.then(function (WorkerMessageHandler) {\n if (_this10.destroyed) {\n _this10._readyCapability.reject(new Error(\"Worker was destroyed\"));\n return;\n }\n var port = new LoopbackPort();\n _this10._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 _this10._messageHandler = messageHandler;\n _this10._readyCapability.resolve();\n messageHandler.send(\"configure\", {\n verbosity: _this10.verbosity\n });\n })[\"catch\"](function (reason) {\n _this10._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 if (this._webWorker) {\n this._webWorker.terminate();\n this._webWorker = null;\n }\n PDFWorker._workerPorts[\"delete\"](this._port);\n this._port = null;\n if (this._messageHandler) {\n this._messageHandler.destroy();\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 if (this._workerPorts.has(params.port)) {\n return this._workerPorts.get(params.port);\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 if (PDFWorkerUtil.fallbackWorkerSrc !== null) {\n if (!_is_node.isNodeJS) {\n (0, _display_utils.deprecated)('No \"GlobalWorkerOptions.workerSrc\" specified.');\n }\n return PDFWorkerUtil.fallbackWorkerSrc;\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 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 _this11 = this;\n var loader = /*#__PURE__*/function () {\n var _ref15 = _asyncToGenerator( /*#__PURE__*/_regenerator[\"default\"].mark(function _callee4() {\n var mainWorkerMessageHandler, worker;\n return _regenerator[\"default\"].wrap(function _callee4$(_context4) {\n while (1) {\n switch (_context4.prev = _context4.next) {\n case 0:\n mainWorkerMessageHandler = _this11._mainThreadWorkerMessageHandler;\n if (!mainWorkerMessageHandler) {\n _context4.next = 3;\n break;\n }\n return _context4.abrupt(\"return\", mainWorkerMessageHandler);\n case 3:\n if (!(_is_node.isNodeJS && typeof require === \"function\")) {\n _context4.next = 6;\n break;\n }\n worker = eval(\"require\")(_this11.workerSrc);\n return _context4.abrupt(\"return\", worker.WorkerMessageHandler);\n case 6:\n _context4.next = 8;\n return (0, _display_utils.loadScript)(_this11.workerSrc);\n case 8:\n return _context4.abrupt(\"return\", window.pdfjsWorker.WorkerMessageHandler);\n case 9:\n case \"end\":\n return _context4.stop();\n }\n }\n }, _callee4);\n }));\n return function loader() {\n return _ref15.apply(this, arguments);\n };\n }();\n return (0, _util.shadow)(this, \"_setupFakeWorkerGlobal\", loader());\n }\n }]);\n return PDFWorker;\n }();\n exports.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 var _docStats = /*#__PURE__*/new WeakMap();\n var _pageCache = /*#__PURE__*/new WeakMap();\n var _pagePromises = /*#__PURE__*/new WeakMap();\n var _metadataPromise = /*#__PURE__*/new WeakMap();\n var WorkerTransport = /*#__PURE__*/function () {\n function WorkerTransport(messageHandler, loadingTask, networkStream, params) {\n _classCallCheck(this, WorkerTransport);\n _classPrivateFieldInitSpec(this, _docStats, {\n writable: true,\n value: null\n });\n _classPrivateFieldInitSpec(this, _pageCache, {\n writable: true,\n value: new Map()\n });\n _classPrivateFieldInitSpec(this, _pagePromises, {\n writable: true,\n value: new Map()\n });\n _classPrivateFieldInitSpec(this, _metadataPromise, {\n writable: true,\n value: null\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 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 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.downloadInfoCapability = (0, _util.createPromiseCapability)();\n this.setupMessageHandler();\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: \"stats\",\n get: function get() {\n return _classPrivateFieldGet(this, _docStats);\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 switch (intent) {\n case \"any\":\n renderingIntent = _util.RenderingIntentFlag.ANY;\n break;\n case \"display\":\n break;\n case \"print\":\n renderingIntent = _util.RenderingIntentFlag.PRINT;\n break;\n default:\n (0, _util.warn)(\"getRenderingIntent - invalid intent: \".concat(intent));\n }\n switch (annotationMode) {\n case _util.AnnotationMode.DISABLE:\n renderingIntent += _util.RenderingIntentFlag.ANNOTATIONS_DISABLE;\n break;\n case _util.AnnotationMode.ENABLE:\n break;\n case _util.AnnotationMode.ENABLE_FORMS:\n renderingIntent += _util.RenderingIntentFlag.ANNOTATIONS_FORMS;\n break;\n case _util.AnnotationMode.ENABLE_STORAGE:\n renderingIntent += _util.RenderingIntentFlag.ANNOTATIONS_STORAGE;\n lastModified = this.annotationStorage.lastModified;\n break;\n default:\n (0, _util.warn)(\"getRenderingIntent - invalid annotationMode: \".concat(annotationMode));\n }\n if (isOpList) {\n renderingIntent += _util.RenderingIntentFlag.OPLIST;\n }\n return {\n renderingIntent: renderingIntent,\n cacheKey: \"\".concat(renderingIntent, \"_\").concat(lastModified)\n };\n }\n }, {\n key: \"destroy\",\n value: function destroy() {\n var _this12 = this;\n if (this.destroyCapability) {\n return this.destroyCapability.promise;\n }\n this.destroyed = true;\n this.destroyCapability = (0, _util.createPromiseCapability)();\n if (this._passwordCapability) {\n this._passwordCapability.reject(new Error(\"Worker was destroyed during onPassword callback\"));\n }\n var waitOn = [];\n var _iterator15 = _createForOfIteratorHelper(_classPrivateFieldGet(this, _pageCache).values()),\n _step15;\n try {\n for (_iterator15.s(); !(_step15 = _iterator15.n()).done;) {\n var page = _step15.value;\n waitOn.push(page._destroy());\n }\n } catch (err) {\n _iterator15.e(err);\n } finally {\n _iterator15.f();\n }\n _classPrivateFieldGet(this, _pageCache).clear();\n _classPrivateFieldGet(this, _pagePromises).clear();\n if (this.hasOwnProperty(\"annotationStorage\")) {\n this.annotationStorage.resetModified();\n }\n var terminated = this.messageHandler.sendWithPromise(\"Terminate\", null);\n waitOn.push(terminated);\n Promise.all(waitOn).then(function () {\n _this12.commonObjs.clear();\n _this12.fontLoader.clear();\n _classPrivateFieldSet(_this12, _metadataPromise, null);\n _this12._getFieldObjectsPromise = null;\n _this12._hasJSActionsPromise = null;\n if (_this12._networkStream) {\n _this12._networkStream.cancelAllRequests(new _util.AbortException(\"Worker was terminated.\"));\n }\n if (_this12.messageHandler) {\n _this12.messageHandler.destroy();\n _this12.messageHandler = null;\n }\n _this12.destroyCapability.resolve();\n }, this.destroyCapability.reject);\n return this.destroyCapability.promise;\n }\n }, {\n key: \"setupMessageHandler\",\n value: function setupMessageHandler() {\n var _this13 = this;\n var messageHandler = this.messageHandler,\n loadingTask = this.loadingTask;\n messageHandler.on(\"GetReader\", function (data, sink) {\n (0, _util.assert)(_this13._networkStream, \"GetReader - no `IPDFStream` instance available.\");\n _this13._fullReader = _this13._networkStream.getFullReader();\n _this13._fullReader.onProgress = function (evt) {\n _this13._lastProgress = {\n loaded: evt.loaded,\n total: evt.total\n };\n };\n sink.onPull = function () {\n _this13._fullReader.read().then(function (_ref16) {\n var value = _ref16.value,\n done = _ref16.done;\n if (done) {\n sink.close();\n return;\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 sink.onCancel = function (reason) {\n _this13._fullReader.cancel(reason);\n sink.ready[\"catch\"](function (readyReason) {\n if (_this13.destroyed) {\n return;\n }\n throw readyReason;\n });\n };\n });\n messageHandler.on(\"ReaderHeadersReady\", function (data) {\n var headersCapability = (0, _util.createPromiseCapability)();\n var fullReader = _this13._fullReader;\n fullReader.headersReady.then(function () {\n if (!fullReader.isStreamingSupported || !fullReader.isRangeSupported) {\n if (_this13._lastProgress) {\n var _loadingTask$onProgre;\n (_loadingTask$onProgre = loadingTask.onProgress) === null || _loadingTask$onProgre === void 0 ? void 0 : _loadingTask$onProgre.call(loadingTask, _this13._lastProgress);\n }\n fullReader.onProgress = function (evt) {\n var _loadingTask$onProgre2;\n (_loadingTask$onProgre2 = loadingTask.onProgress) === null || _loadingTask$onProgre2 === void 0 ? void 0 : _loadingTask$onProgre2.call(loadingTask, {\n loaded: evt.loaded,\n total: evt.total\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)(_this13._networkStream, \"GetRangeReader - no `IPDFStream` instance available.\");\n var rangeReader = _this13._networkStream.getRangeReader(data.begin, data.end);\n if (!rangeReader) {\n sink.close();\n return;\n }\n sink.onPull = function () {\n rangeReader.read().then(function (_ref17) {\n var value = _ref17.value,\n done = _ref17.done;\n if (done) {\n sink.close();\n return;\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 sink.onCancel = function (reason) {\n rangeReader.cancel(reason);\n sink.ready[\"catch\"](function (readyReason) {\n if (_this13.destroyed) {\n return;\n }\n throw readyReason;\n });\n };\n });\n messageHandler.on(\"GetDoc\", function (_ref18) {\n var pdfInfo = _ref18.pdfInfo;\n _this13._numPages = pdfInfo.numPages;\n _this13._htmlForXfa = pdfInfo.htmlForXfa;\n delete pdfInfo.htmlForXfa;\n loadingTask._capability.resolve(new PDFDocumentProxy(pdfInfo, _this13));\n });\n messageHandler.on(\"DocException\", function (ex) {\n var reason;\n switch (ex.name) {\n case \"PasswordException\":\n reason = new _util.PasswordException(ex.message, ex.code);\n break;\n case \"InvalidPDFException\":\n reason = new _util.InvalidPDFException(ex.message);\n break;\n case \"MissingPDFException\":\n reason = new _util.MissingPDFException(ex.message);\n break;\n case \"UnexpectedResponseException\":\n reason = new _util.UnexpectedResponseException(ex.message, ex.status);\n break;\n case \"UnknownErrorException\":\n reason = new _util.UnknownErrorException(ex.message, ex.details);\n break;\n default:\n (0, _util.unreachable)(\"DocException - expected a valid Error.\");\n }\n loadingTask._capability.reject(reason);\n });\n messageHandler.on(\"PasswordRequest\", function (exception) {\n _this13._passwordCapability = (0, _util.createPromiseCapability)();\n if (loadingTask.onPassword) {\n var updatePassword = function updatePassword(password) {\n _this13._passwordCapability.resolve({\n password: password\n });\n };\n try {\n loadingTask.onPassword(updatePassword, exception.code);\n } catch (ex) {\n _this13._passwordCapability.reject(ex);\n }\n } else {\n _this13._passwordCapability.reject(new _util.PasswordException(exception.message, exception.code));\n }\n return _this13._passwordCapability.promise;\n });\n messageHandler.on(\"DataLoaded\", function (data) {\n var _loadingTask$onProgre3;\n (_loadingTask$onProgre3 = loadingTask.onProgress) === null || _loadingTask$onProgre3 === void 0 ? void 0 : _loadingTask$onProgre3.call(loadingTask, {\n loaded: data.length,\n total: data.length\n });\n _this13.downloadInfoCapability.resolve(data);\n });\n messageHandler.on(\"StartRenderPage\", function (data) {\n if (_this13.destroyed) {\n return;\n }\n var page = _classPrivateFieldGet(_this13, _pageCache).get(data.pageIndex);\n page._startRenderPage(data.transparency, data.cacheKey);\n });\n messageHandler.on(\"commonobj\", function (_ref19) {\n var _globalThis$FontInspe;\n var _ref20 = _slicedToArray(_ref19, 3),\n id = _ref20[0],\n type = _ref20[1],\n exportedData = _ref20[2];\n if (_this13.destroyed) {\n return;\n }\n if (_this13.commonObjs.has(id)) {\n return;\n }\n switch (type) {\n case \"Font\":\n var params = _this13._params;\n if (\"error\" in exportedData) {\n var exportedError = exportedData.error;\n (0, _util.warn)(\"Error during font loading: \".concat(exportedError));\n _this13.commonObjs.resolve(id, exportedError);\n break;\n }\n var fontRegistry = null;\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 var font = new _font_loader.FontFaceObject(exportedData, {\n isEvalSupported: params.isEvalSupported,\n disableFontFace: params.disableFontFace,\n ignoreErrors: params.ignoreErrors,\n onUnsupportedFeature: _this13._onUnsupportedFeature.bind(_this13),\n fontRegistry: fontRegistry\n });\n _this13.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 _this13.commonObjs.resolve(id, font);\n });\n break;\n case \"FontPath\":\n case \"Image\":\n _this13.commonObjs.resolve(id, exportedData);\n break;\n default:\n throw new Error(\"Got unknown common object type \".concat(type));\n }\n });\n messageHandler.on(\"obj\", function (_ref21) {\n var _imageData$data;\n var _ref22 = _slicedToArray(_ref21, 4),\n id = _ref22[0],\n pageIndex = _ref22[1],\n type = _ref22[2],\n imageData = _ref22[3];\n if (_this13.destroyed) {\n return;\n }\n var pageProxy = _classPrivateFieldGet(_this13, _pageCache).get(pageIndex);\n if (pageProxy.objs.has(id)) {\n return;\n }\n switch (type) {\n case \"Image\":\n pageProxy.objs.resolve(id, imageData);\n var MAX_IMAGE_SIZE_TO_STORE = 8000000;\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 break;\n case \"Pattern\":\n pageProxy.objs.resolve(id, imageData);\n break;\n default:\n throw new Error(\"Got unknown object type \".concat(type));\n }\n });\n messageHandler.on(\"DocProgress\", function (data) {\n var _loadingTask$onProgre4;\n if (_this13.destroyed) {\n return;\n }\n (_loadingTask$onProgre4 = loadingTask.onProgress) === null || _loadingTask$onProgre4 === void 0 ? void 0 : _loadingTask$onProgre4.call(loadingTask, {\n loaded: data.loaded,\n total: data.total\n });\n });\n messageHandler.on(\"DocStats\", function (data) {\n if (_this13.destroyed) {\n return;\n }\n _classPrivateFieldSet(_this13, _docStats, Object.freeze({\n streamTypes: Object.freeze(data.streamTypes),\n fontTypes: Object.freeze(data.fontTypes)\n }));\n });\n messageHandler.on(\"UnsupportedFeature\", this._onUnsupportedFeature.bind(this));\n messageHandler.on(\"FetchBuiltInCMap\", function (data) {\n if (_this13.destroyed) {\n return Promise.reject(new Error(\"Worker was destroyed.\"));\n }\n if (!_this13.CMapReaderFactory) {\n return Promise.reject(new Error(\"CMapReaderFactory not initialized, see the `useWorkerFetch` parameter.\"));\n }\n return _this13.CMapReaderFactory.fetch(data);\n });\n messageHandler.on(\"FetchStandardFontData\", function (data) {\n if (_this13.destroyed) {\n return Promise.reject(new Error(\"Worker was destroyed.\"));\n }\n if (!_this13.StandardFontDataFactory) {\n return Promise.reject(new Error(\"StandardFontDataFactory not initialized, see the `useWorkerFetch` parameter.\"));\n }\n return _this13.StandardFontDataFactory.fetch(data);\n });\n }\n }, {\n key: \"_onUnsupportedFeature\",\n value: function _onUnsupportedFeature(_ref23) {\n var _this$loadingTask$onU, _this$loadingTask;\n var featureId = _ref23.featureId;\n if (this.destroyed) {\n return;\n }\n (_this$loadingTask$onU = (_this$loadingTask = this.loadingTask).onUnsupportedFeature) === null || _this$loadingTask$onU === void 0 ? void 0 : _this$loadingTask$onU.call(_this$loadingTask, featureId);\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 _this14 = this;\n if (!Number.isInteger(pageNumber) || pageNumber <= 0 || pageNumber > this._numPages) {\n return Promise.reject(new Error(\"Invalid page request\"));\n }\n var pageIndex = pageNumber - 1,\n cachedPromise = _classPrivateFieldGet(this, _pagePromises).get(pageIndex);\n if (cachedPromise) {\n return cachedPromise;\n }\n var promise = this.messageHandler.sendWithPromise(\"GetPage\", {\n pageIndex: pageIndex\n }).then(function (pageInfo) {\n if (_this14.destroyed) {\n throw new Error(\"Transport destroyed\");\n }\n var page = new PDFPageProxy(pageIndex, pageInfo, _this14, _this14._params.ownerDocument, _this14._params.pdfBug);\n _classPrivateFieldGet(_this14, _pageCache).set(pageIndex, page);\n return page;\n });\n _classPrivateFieldGet(this, _pagePromises).set(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 _this15 = this;\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 _this15.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 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 _this16 = this;\n return _classPrivateFieldGet(this, _metadataPromise) || _classPrivateFieldSet(this, _metadataPromise, this.messageHandler.sendWithPromise(\"GetMetadata\", null).then(function (results) {\n var _this16$_fullReader$f, _this16$_fullReader, _this16$_fullReader$c, _this16$_fullReader2;\n return {\n info: results[0],\n metadata: results[1] ? new _metadata.Metadata(results[1]) : null,\n contentDispositionFilename: (_this16$_fullReader$f = (_this16$_fullReader = _this16._fullReader) === null || _this16$_fullReader === void 0 ? void 0 : _this16$_fullReader.filename) !== null && _this16$_fullReader$f !== void 0 ? _this16$_fullReader$f : null,\n contentLength: (_this16$_fullReader$c = (_this16$_fullReader2 = _this16._fullReader) === null || _this16$_fullReader2 === void 0 ? void 0 : _this16$_fullReader2.contentLength) !== null && _this16$_fullReader$c !== void 0 ? _this16$_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: \"startCleanup\",\n value: function () {\n var _startCleanup = _asyncToGenerator( /*#__PURE__*/_regenerator[\"default\"].mark(function _callee5() {\n var keepLoadedFonts,\n _iterator16,\n _step16,\n page,\n cleanupSuccessful,\n _args5 = arguments;\n return _regenerator[\"default\"].wrap(function _callee5$(_context5) {\n while (1) {\n switch (_context5.prev = _context5.next) {\n case 0:\n keepLoadedFonts = _args5.length > 0 && _args5[0] !== undefined ? _args5[0] : false;\n _context5.next = 3;\n return this.messageHandler.sendWithPromise(\"Cleanup\", null);\n case 3:\n if (!this.destroyed) {\n _context5.next = 5;\n break;\n }\n return _context5.abrupt(\"return\");\n case 5:\n _iterator16 = _createForOfIteratorHelper(_classPrivateFieldGet(this, _pageCache).values());\n _context5.prev = 6;\n _iterator16.s();\n case 8:\n if ((_step16 = _iterator16.n()).done) {\n _context5.next = 15;\n break;\n }\n page = _step16.value;\n cleanupSuccessful = page.cleanup();\n if (cleanupSuccessful) {\n _context5.next = 13;\n break;\n }\n throw new Error(\"startCleanup: Page \".concat(page.pageNumber, \" is currently rendering.\"));\n case 13:\n _context5.next = 8;\n break;\n case 15:\n _context5.next = 20;\n break;\n case 17:\n _context5.prev = 17;\n _context5.t0 = _context5[\"catch\"](6);\n _iterator16.e(_context5.t0);\n case 20:\n _context5.prev = 20;\n _iterator16.f();\n return _context5.finish(20);\n case 23:\n this.commonObjs.clear();\n if (!keepLoadedFonts) {\n this.fontLoader.clear();\n }\n _classPrivateFieldSet(this, _metadataPromise, null);\n this._getFieldObjectsPromise = null;\n this._hasJSActionsPromise = null;\n case 28:\n case \"end\":\n return _context5.stop();\n }\n }\n }, _callee5, this, [[6, 17, 20, 23]]);\n }));\n function startCleanup() {\n return _startCleanup.apply(this, arguments);\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 return WorkerTransport;\n }();\n var PDFObjects = /*#__PURE__*/function () {\n function PDFObjects() {\n _classCallCheck(this, PDFObjects);\n this._objs = Object.create(null);\n }\n _createClass(PDFObjects, [{\n key: \"_ensureObj\",\n value: function _ensureObj(objId) {\n if (this._objs[objId]) {\n return this._objs[objId];\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 if (callback) {\n this._ensureObj(objId).capability.promise.then(callback);\n return null;\n }\n var obj = this._objs[objId];\n if (!obj || !obj.resolved) {\n throw new Error(\"Requesting object that isn't resolved yet \".concat(objId, \".\"));\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 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 return PDFObjects;\n }();\n var RenderTask = /*#__PURE__*/function () {\n function RenderTask(internalRenderTask) {\n _classCallCheck(this, RenderTask);\n this._internalRenderTask = internalRenderTask;\n this.onContinue = null;\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 return RenderTask;\n }();\n exports.RenderTask = RenderTask;\n var InternalRenderTask = /*#__PURE__*/function () {\n function InternalRenderTask(_ref24) {\n var callback = _ref24.callback,\n params = _ref24.params,\n objs = _ref24.objs,\n commonObjs = _ref24.commonObjs,\n annotationCanvasMap = _ref24.annotationCanvasMap,\n operatorList = _ref24.operatorList,\n pageIndex = _ref24.pageIndex,\n canvasFactory = _ref24.canvasFactory,\n _ref24$useRequestAnim = _ref24.useRequestAnimationFrame,\n useRequestAnimationFrame = _ref24$useRequestAnim === void 0 ? false : _ref24$useRequestAnim,\n _ref24$pdfBug = _ref24.pdfBug,\n pdfBug = _ref24$pdfBug === void 0 ? false : _ref24$pdfBug;\n _classCallCheck(this, InternalRenderTask);\n this.callback = callback;\n this.params = params;\n this.objs = objs;\n this.commonObjs = commonObjs;\n this.annotationCanvasMap = annotationCanvasMap;\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 _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(_ref25) {\n var _globalThis$StepperMa;\n var _ref25$transparency = _ref25.transparency,\n transparency = _ref25$transparency === void 0 ? false : _ref25$transparency,\n optionalContentConfig = _ref25.optionalContentConfig;\n if (this.cancelled) {\n return;\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 InternalRenderTask.canvasInUse.add(this._canvas);\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 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, this.annotationCanvasMap);\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 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 if (this.gfx) {\n this.gfx.endDrawing();\n }\n if (this._canvas) {\n InternalRenderTask.canvasInUse[\"delete\"](this._canvas);\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 return;\n }\n if (this.stepper) {\n this.stepper.updateOperatorList(this.operatorList);\n }\n if (this.running) {\n return;\n }\n this._continue();\n }\n }, {\n key: \"_continue\",\n value: function _continue() {\n this.running = true;\n if (this.cancelled) {\n return;\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 _this17 = this;\n if (this._useRequestAnimationFrame) {\n window.requestAnimationFrame(function () {\n _this17._nextBound()[\"catch\"](_this17._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 _callee6() {\n return _regenerator[\"default\"].wrap(function _callee6$(_context6) {\n while (1) {\n switch (_context6.prev = _context6.next) {\n case 0:\n if (!this.cancelled) {\n _context6.next = 2;\n break;\n }\n return _context6.abrupt(\"return\");\n case 2:\n this.operatorListIdx = this.gfx.executeOperatorList(this.operatorList, this.operatorListIdx, this._continueBound, this.stepper);\n if (this.operatorListIdx === this.operatorList.argsArray.length) {\n this.running = false;\n if (this.operatorList.lastChunk) {\n this.gfx.endDrawing();\n if (this._canvas) {\n InternalRenderTask.canvasInUse[\"delete\"](this._canvas);\n }\n this.callback();\n }\n }\n case 4:\n case \"end\":\n return _context6.stop();\n }\n }\n }, _callee6, this);\n }));\n function _next() {\n return _next2.apply(this, arguments);\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 return InternalRenderTask;\n }();\n var version = '2.12.313';\n exports.version = version;\n var build = 'a2ae56f39';\n exports.build = build;\n\n /***/\n }, /* 137 */\n /***/function (__unused_webpack_module, exports, __w_pdfjs_require__) {\n \"use strict\";\n\n function _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") {\n _typeof = function _typeof(obj) {\n return typeof obj;\n };\n } else {\n _typeof = function _typeof(obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n };\n }\n return _typeof(obj);\n }\n Object.defineProperty(exports, \"__esModule\", {\n value: true\n });\n exports.FontLoader = exports.FontFaceObject = void 0;\n var _regenerator = _interopRequireDefault(__w_pdfjs_require__(2));\n var _util = __w_pdfjs_require__(4);\n function _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n \"default\": obj\n };\n }\n function _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n writable: true,\n configurable: true\n }\n });\n if (superClass) _setPrototypeOf(subClass, superClass);\n }\n function _setPrototypeOf(o, p) {\n _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n return _setPrototypeOf(o, p);\n }\n function _createSuper(Derived) {\n var hasNativeReflectConstruct = _isNativeReflectConstruct();\n return function _createSuperInternal() {\n var Super = _getPrototypeOf(Derived),\n result;\n if (hasNativeReflectConstruct) {\n var NewTarget = _getPrototypeOf(this).constructor;\n result = Reflect.construct(Super, arguments, NewTarget);\n } else {\n result = Super.apply(this, arguments);\n }\n return _possibleConstructorReturn(this, result);\n };\n }\n function _possibleConstructorReturn(self, call) {\n if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) {\n return call;\n } else if (call !== void 0) {\n throw new TypeError(\"Derived constructors may only return object or undefined\");\n }\n return _assertThisInitialized(self);\n }\n function _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n return self;\n }\n function _isNativeReflectConstruct() {\n if (typeof Reflect === \"undefined\" || !Reflect.construct) return false;\n if (Reflect.construct.sham) return false;\n if (typeof Proxy === \"function\") return true;\n try {\n Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {}));\n return true;\n } catch (e) {\n return false;\n }\n }\n function _getPrototypeOf(o) {\n _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {\n return o.__proto__ || Object.getPrototypeOf(o);\n };\n return _getPrototypeOf(o);\n }\n function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {\n try {\n var info = gen[key](arg);\n var value = info.value;\n } catch (error) {\n reject(error);\n return;\n }\n if (info.done) {\n resolve(value);\n } else {\n Promise.resolve(value).then(_next, _throw);\n }\n }\n function _asyncToGenerator(fn) {\n return function () {\n var self = this,\n args = arguments;\n return new Promise(function (resolve, reject) {\n var gen = fn.apply(self, args);\n function _next(value) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value);\n }\n function _throw(err) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err);\n }\n _next(undefined);\n });\n };\n }\n function _createForOfIteratorHelper(o, allowArrayLike) {\n var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"];\n if (!it) {\n if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") {\n if (it) o = it;\n var i = 0;\n var F = function F() {};\n return {\n s: F,\n n: function n() {\n if (i >= o.length) return {\n done: true\n };\n return {\n done: false,\n value: o[i++]\n };\n },\n e: function e(_e) {\n throw _e;\n },\n f: F\n };\n }\n throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n }\n var normalCompletion = true,\n didErr = false,\n err;\n return {\n s: function s() {\n it = it.call(o);\n },\n n: function n() {\n var step = it.next();\n normalCompletion = step.done;\n return step;\n },\n e: function e(_e2) {\n didErr = true;\n err = _e2;\n },\n f: function f() {\n try {\n if (!normalCompletion && it[\"return\"] != null) it[\"return\"]();\n } finally {\n if (didErr) throw err;\n }\n }\n };\n }\n function _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return _arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);\n }\n function _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n for (var i = 0, arr2 = new Array(len); i < len; i++) {\n arr2[i] = arr[i];\n }\n return arr2;\n }\n function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n }\n function _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n }\n function _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n return Constructor;\n }\n var 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 _classCallCheck(this, BaseFontLoader);\n if (this.constructor === BaseFontLoader) {\n (0, _util.unreachable)(\"Cannot initialize BaseFontLoader.\");\n }\n this.docId = docId;\n this._onUnsupportedFeature = onUnsupportedFeature;\n this._document = ownerDocument;\n this.nativeFontFaces = [];\n this.styleElement = null;\n }\n _createClass(BaseFontLoader, [{\n key: \"addNativeFontFace\",\n value: function addNativeFontFace(nativeFontFace) {\n this.nativeFontFaces.push(nativeFontFace);\n this._document.fonts.add(nativeFontFace);\n }\n }, {\n key: \"insertRule\",\n value: function insertRule(rule) {\n var styleElement = this.styleElement;\n if (!styleElement) {\n styleElement = this.styleElement = this._document.createElement(\"style\");\n styleElement.id = \"PDFJS_FONT_STYLE_TAG_\".concat(this.docId);\n this._document.documentElement.getElementsByTagName(\"head\")[0].appendChild(styleElement);\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 try {\n for (_iterator.s(); !(_step = _iterator.n()).done;) {\n var nativeFontFace = _step.value;\n this._document.fonts[\"delete\"](nativeFontFace);\n }\n } catch (err) {\n _iterator.e(err);\n } finally {\n _iterator.f();\n }\n this.nativeFontFaces.length = 0;\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 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 return _context.abrupt(\"return\");\n case 2:\n font.attached = true;\n if (!this.isFontLoadingAPISupported) {\n _context.next = 19;\n break;\n }\n nativeFontFace = font.createNativeFontFace();\n if (!nativeFontFace) {\n _context.next = 18;\n break;\n }\n this.addNativeFontFace(nativeFontFace);\n _context.prev = 7;\n _context.next = 10;\n return nativeFontFace.loaded;\n case 10:\n _context.next = 18;\n break;\n case 12:\n _context.prev = 12;\n _context.t0 = _context[\"catch\"](7);\n this._onUnsupportedFeature({\n featureId: _util.UNSUPPORTED_FEATURES.errorFontLoadNative\n });\n (0, _util.warn)(\"Failed to load font '\".concat(nativeFontFace.family, \"': '\").concat(_context.t0, \"'.\"));\n font.disableFontFace = true;\n throw _context.t0;\n case 18:\n return _context.abrupt(\"return\");\n case 19:\n rule = font.createFontFaceRule();\n if (!rule) {\n _context.next = 26;\n break;\n }\n this.insertRule(rule);\n if (!this.isSyncFontLoadingSupported) {\n _context.next = 24;\n break;\n }\n return _context.abrupt(\"return\");\n case 24:\n _context.next = 26;\n return new Promise(function (resolve) {\n var request = _this._queueLoadingCallback(resolve);\n _this._prepareFontLoadEvent([rule], [font], request);\n });\n case 26:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee, this, [[7, 12]]);\n }));\n function bind(_x) {\n return _bind.apply(this, arguments);\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 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 return BaseFontLoader;\n }();\n var FontLoader;\n exports.FontLoader = FontLoader;\n {\n exports.FontLoader = FontLoader = /*#__PURE__*/function (_BaseFontLoader) {\n _inherits(GenericFontLoader, _BaseFontLoader);\n var _super = _createSuper(GenericFontLoader);\n function GenericFontLoader(params) {\n var _this2;\n _classCallCheck(this, GenericFontLoader);\n _this2 = _super.call(this, params);\n _this2.loadingContext = {\n requests: [],\n nextRequestId: 0\n };\n _this2.loadTestFontId = 0;\n return _this2;\n }\n _createClass(GenericFontLoader, [{\n key: \"isSyncFontLoadingSupported\",\n get: function get() {\n var supported = false;\n if (typeof navigator === \"undefined\") {\n supported = true;\n } else {\n var m = /Mozilla\\/5.0.*?rv:(\\d+).*? Gecko/.exec(navigator.userAgent);\n if ((m === null || m === void 0 ? void 0 : m[1]) >= 14) {\n supported = true;\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 while (context.requests.length > 0 && context.requests[0].done) {\n var otherRequest = context.requests.shift();\n setTimeout(otherRequest.callback, 0);\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 return (0, _util.shadow)(this, \"_loadTestFont\", getLoadTestFont());\n }\n }, {\n key: \"_prepareFontLoadEvent\",\n value: function _prepareFontLoadEvent(rules, fonts, request) {\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 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 var i, ii;\n var canvas = this._document.createElement(\"canvas\");\n canvas.width = 1;\n canvas.height = 1;\n var ctx = canvas.getContext(\"2d\");\n var called = 0;\n function isFontReady(name, callback) {\n called++;\n if (called > 30) {\n (0, _util.warn)(\"Load test font never loaded.\");\n callback();\n return;\n }\n ctx.font = \"30px \" + name;\n ctx.fillText(\".\", 0, 20);\n var imageData = ctx.getImageData(0, 0, 1, 1);\n if (imageData.data[3] > 0) {\n callback();\n return;\n }\n setTimeout(isFontReady.bind(null, name, callback));\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 for (i = 0, ii = loadTestFontId.length - 3; i < ii; i += 4) {\n checksum = checksum - XXXX_VALUE + int32(loadTestFontId, i) | 0;\n }\n if (i < loadTestFontId.length) {\n checksum = checksum - XXXX_VALUE + int32(loadTestFontId + \"XXX\", i) | 0;\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 var _iterator2 = _createForOfIteratorHelper(fonts),\n _step2;\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 names.push(loadTestFontId);\n var div = this._document.createElement(\"div\");\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 for (var _i = 0, _names = names; _i < _names.length; _i++) {\n var name = _names[_i];\n var span = this._document.createElement(\"span\");\n span.textContent = \"Hi\";\n span.style.fontFamily = name;\n div.appendChild(span);\n }\n this._document.body.appendChild(div);\n isFontReady(loadTestFontId, function () {\n div.remove();\n request.complete();\n });\n }\n }]);\n return GenericFontLoader;\n }(BaseFontLoader);\n }\n var 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 _classCallCheck(this, FontFaceObject);\n this.compiledGlyphs = Object.create(null);\n for (var i in translatedData) {\n this[i] = translatedData[i];\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 _createClass(FontFaceObject, [{\n key: \"createNativeFontFace\",\n value: function createNativeFontFace() {\n if (!this.data || this.disableFontFace) {\n return null;\n }\n var nativeFontFace;\n if (!this.cssFontInfo) {\n nativeFontFace = new FontFace(this.loadedName, this.data, {});\n } else {\n var css = {\n weight: this.cssFontInfo.fontWeight\n };\n if (this.cssFontInfo.italicAngle) {\n css.style = \"oblique \".concat(this.cssFontInfo.italicAngle, \"deg\");\n }\n nativeFontFace = new FontFace(this.cssFontInfo.fontFamily, this.data, css);\n }\n if (this.fontRegistry) {\n this.fontRegistry.registerFont(this);\n }\n return nativeFontFace;\n }\n }, {\n key: \"createFontFaceRule\",\n value: function createFontFaceRule() {\n if (!this.data || this.disableFontFace) {\n return null;\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 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 if (this.cssFontInfo.italicAngle) {\n css += \"font-style: oblique \".concat(this.cssFontInfo.italicAngle, \"deg;\");\n }\n rule = \"@font-face {font-family:\\\"\".concat(this.cssFontInfo.fontFamily, \"\\\";\").concat(css, \"src:\").concat(url, \"}\");\n }\n if (this.fontRegistry) {\n this.fontRegistry.registerFont(this, url);\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 var cmds;\n try {\n cmds = objs.get(this.loadedName + \"_path_\" + character);\n } catch (ex) {\n if (!this.ignoreErrors) {\n throw ex;\n }\n this._onUnsupportedFeature({\n featureId: _util.UNSUPPORTED_FEATURES.errorFontGetPath\n });\n (0, _util.warn)(\"getPathGenerator - ignoring character: \\\"\".concat(ex, \"\\\".\"));\n return this.compiledGlyphs[character] = function (c, size) {};\n }\n if (this.isEvalSupported && _util.IsEvalSupportedCached.value) {\n var jsBuf = [];\n var _iterator3 = _createForOfIteratorHelper(cmds),\n _step3;\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 return this.compiledGlyphs[character] = new Function(\"c\", \"size\", jsBuf.join(\"\"));\n }\n return this.compiledGlyphs[character] = function (c, size) {\n var _iterator4 = _createForOfIteratorHelper(cmds),\n _step4;\n try {\n for (_iterator4.s(); !(_step4 = _iterator4.n()).done;) {\n var _current = _step4.value;\n if (_current.cmd === \"scale\") {\n _current.args = [size, -size];\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 return FontFaceObject;\n }();\n exports.FontFaceObject = FontFaceObject;\n\n /***/\n }, /* 138 */\n /***/function (__unused_webpack_module, exports, __w_pdfjs_require__) {\n \"use strict\";\n\n function _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") {\n _typeof = function _typeof(obj) {\n return typeof obj;\n };\n } else {\n _typeof = function _typeof(obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n };\n }\n return _typeof(obj);\n }\n Object.defineProperty(exports, \"__esModule\", {\n value: true\n });\n exports.NodeStandardFontDataFactory = exports.NodeCanvasFactory = exports.NodeCMapReaderFactory = void 0;\n var _base_factory = __w_pdfjs_require__(135);\n var _is_node = __w_pdfjs_require__(6);\n var _util = __w_pdfjs_require__(4);\n function _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n }\n function _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n return Constructor;\n }\n function _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n writable: true,\n configurable: true\n }\n });\n if (superClass) _setPrototypeOf(subClass, superClass);\n }\n function _setPrototypeOf(o, p) {\n _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n return _setPrototypeOf(o, p);\n }\n function _createSuper(Derived) {\n var hasNativeReflectConstruct = _isNativeReflectConstruct();\n return function _createSuperInternal() {\n var Super = _getPrototypeOf(Derived),\n result;\n if (hasNativeReflectConstruct) {\n var NewTarget = _getPrototypeOf(this).constructor;\n result = Reflect.construct(Super, arguments, NewTarget);\n } else {\n result = Super.apply(this, arguments);\n }\n return _possibleConstructorReturn(this, result);\n };\n }\n function _possibleConstructorReturn(self, call) {\n if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) {\n return call;\n } else if (call !== void 0) {\n throw new TypeError(\"Derived constructors may only return object or undefined\");\n }\n return _assertThisInitialized(self);\n }\n function _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n return self;\n }\n function _isNativeReflectConstruct() {\n if (typeof Reflect === \"undefined\" || !Reflect.construct) return false;\n if (Reflect.construct.sham) return false;\n if (typeof Proxy === \"function\") return true;\n try {\n Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {}));\n return true;\n } catch (e) {\n return false;\n }\n }\n function _getPrototypeOf(o) {\n _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {\n return o.__proto__ || Object.getPrototypeOf(o);\n };\n return _getPrototypeOf(o);\n }\n function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n }\n var NodeCanvasFactory = function NodeCanvasFactory() {\n _classCallCheck(this, NodeCanvasFactory);\n (0, _util.unreachable)(\"Not implemented: NodeCanvasFactory\");\n };\n exports.NodeCanvasFactory = NodeCanvasFactory;\n var NodeCMapReaderFactory = function NodeCMapReaderFactory() {\n _classCallCheck(this, NodeCMapReaderFactory);\n (0, _util.unreachable)(\"Not implemented: NodeCMapReaderFactory\");\n };\n exports.NodeCMapReaderFactory = NodeCMapReaderFactory;\n var NodeStandardFontDataFactory = function NodeStandardFontDataFactory() {\n _classCallCheck(this, NodeStandardFontDataFactory);\n (0, _util.unreachable)(\"Not implemented: NodeStandardFontDataFactory\");\n };\n exports.NodeStandardFontDataFactory = NodeStandardFontDataFactory;\n if (_is_node.isNodeJS) {\n var fetchData = function fetchData(url) {\n return new Promise(function (resolve, reject) {\n var fs = require(\"fs\");\n fs.readFile(url, function (error, data) {\n if (error || !data) {\n reject(new Error(error));\n return;\n }\n resolve(new Uint8Array(data));\n });\n });\n };\n exports.NodeCanvasFactory = NodeCanvasFactory = /*#__PURE__*/function (_BaseCanvasFactory) {\n _inherits(NodeCanvasFactory, _BaseCanvasFactory);\n var _super = _createSuper(NodeCanvasFactory);\n function NodeCanvasFactory() {\n _classCallCheck(this, NodeCanvasFactory);\n return _super.apply(this, arguments);\n }\n _createClass(NodeCanvasFactory, [{\n key: \"_createCanvas\",\n value: function _createCanvas(width, height) {\n var Canvas = require(\"canvas\");\n return Canvas.createCanvas(width, height);\n }\n }]);\n return NodeCanvasFactory;\n }(_base_factory.BaseCanvasFactory);\n exports.NodeCMapReaderFactory = NodeCMapReaderFactory = /*#__PURE__*/function (_BaseCMapReaderFactor) {\n _inherits(NodeCMapReaderFactory, _BaseCMapReaderFactor);\n var _super2 = _createSuper(NodeCMapReaderFactory);\n function NodeCMapReaderFactory() {\n _classCallCheck(this, NodeCMapReaderFactory);\n return _super2.apply(this, arguments);\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 return NodeCMapReaderFactory;\n }(_base_factory.BaseCMapReaderFactory);\n exports.NodeStandardFontDataFactory = NodeStandardFontDataFactory = /*#__PURE__*/function (_BaseStandardFontData) {\n _inherits(NodeStandardFontDataFactory, _BaseStandardFontData);\n var _super3 = _createSuper(NodeStandardFontDataFactory);\n function NodeStandardFontDataFactory() {\n _classCallCheck(this, NodeStandardFontDataFactory);\n return _super3.apply(this, arguments);\n }\n _createClass(NodeStandardFontDataFactory, [{\n key: \"_fetchData\",\n value: function _fetchData(url) {\n return fetchData(url);\n }\n }]);\n return NodeStandardFontDataFactory;\n }(_base_factory.BaseStandardFontDataFactory);\n }\n\n /***/\n }, /* 139 */\n /***/function (__unused_webpack_module, exports, __w_pdfjs_require__) {\n \"use strict\";\n\n Object.defineProperty(exports, \"__esModule\", {\n value: true\n });\n exports.AnnotationStorage = void 0;\n var _util = __w_pdfjs_require__(4);\n function _slicedToArray(arr, i) {\n return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest();\n }\n function _nonIterableRest() {\n 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 }\n function _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return _arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);\n }\n function _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n for (var i = 0, arr2 = new Array(len); i < len; i++) {\n arr2[i] = arr[i];\n }\n return arr2;\n }\n function _iterableToArrayLimit(arr, i) {\n var _i = arr == null ? null : typeof Symbol !== \"undefined\" && arr[Symbol.iterator] || arr[\"@@iterator\"];\n if (_i == null) return;\n var _arr = [];\n var _n = true;\n var _d = false;\n var _s, _e;\n try {\n for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) {\n _arr.push(_s.value);\n if (i && _arr.length === i) break;\n }\n } catch (err) {\n _d = true;\n _e = err;\n } finally {\n try {\n if (!_n && _i[\"return\"] != null) _i[\"return\"]();\n } finally {\n if (_d) throw _e;\n }\n }\n return _arr;\n }\n function _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n }\n function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n }\n function _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n }\n function _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n return Constructor;\n }\n var AnnotationStorage = /*#__PURE__*/function () {\n function AnnotationStorage() {\n _classCallCheck(this, AnnotationStorage);\n this._storage = new Map();\n this._timeStamp = Date.now();\n this._modified = false;\n this.onSetModified = null;\n this.onResetModified = null;\n }\n _createClass(AnnotationStorage, [{\n key: \"getValue\",\n value: function getValue(key, defaultValue) {\n var value = this._storage.get(key);\n if (value === undefined) {\n return defaultValue;\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 var modified = false;\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 if (obj[entry] !== val) {\n modified = true;\n obj[entry] = val;\n }\n }\n } else {\n modified = true;\n this._storage.set(key, value);\n }\n if (modified) {\n this._timeStamp = Date.now();\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 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 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 return AnnotationStorage;\n }();\n exports.AnnotationStorage = AnnotationStorage;\n\n /***/\n }, /* 140 */\n /***/function (__unused_webpack_module, exports, __w_pdfjs_require__) {\n \"use strict\";\n\n Object.defineProperty(exports, \"__esModule\", {\n value: true\n });\n exports.CanvasGraphics = void 0;\n var _util = __w_pdfjs_require__(4);\n var _pattern_helper = __w_pdfjs_require__(141);\n var _display_utils = __w_pdfjs_require__(1);\n function _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") {\n _typeof = function _typeof(obj) {\n return typeof obj;\n };\n } else {\n _typeof = function _typeof(obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n };\n }\n return _typeof(obj);\n }\n function _createForOfIteratorHelper(o, allowArrayLike) {\n var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"];\n if (!it) {\n if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") {\n if (it) o = it;\n var i = 0;\n var F = function F() {};\n return {\n s: F,\n n: function n() {\n if (i >= o.length) return {\n done: true\n };\n return {\n done: false,\n value: o[i++]\n };\n },\n e: function e(_e2) {\n throw _e2;\n },\n f: F\n };\n }\n throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n }\n var normalCompletion = true,\n didErr = false,\n err;\n return {\n s: function s() {\n it = it.call(o);\n },\n n: function n() {\n var step = it.next();\n normalCompletion = step.done;\n return step;\n },\n e: function e(_e3) {\n didErr = true;\n err = _e3;\n },\n f: function f() {\n try {\n if (!normalCompletion && it[\"return\"] != null) it[\"return\"]();\n } finally {\n if (didErr) throw err;\n }\n }\n };\n }\n function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n }\n function _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n }\n function _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n return Constructor;\n }\n function _slicedToArray(arr, i) {\n return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest();\n }\n function _nonIterableRest() {\n 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 }\n function _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return _arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);\n }\n function _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n for (var i = 0, arr2 = new Array(len); i < len; i++) {\n arr2[i] = arr[i];\n }\n return arr2;\n }\n function _iterableToArrayLimit(arr, i) {\n var _i = arr == null ? null : typeof Symbol !== \"undefined\" && arr[Symbol.iterator] || arr[\"@@iterator\"];\n if (_i == null) return;\n var _arr = [];\n var _n = true;\n var _d = false;\n var _s, _e;\n try {\n for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) {\n _arr.push(_s.value);\n if (i && _arr.length === i) break;\n }\n } catch (err) {\n _d = true;\n _e = err;\n } finally {\n try {\n if (!_n && _i[\"return\"] != null) _i[\"return\"]();\n } finally {\n if (_d) throw _e;\n }\n }\n return _arr;\n }\n function _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n }\n var MIN_FONT_SIZE = 16;\n var MAX_FONT_SIZE = 100;\n var MAX_GROUP_SIZE = 4096;\n var EXECUTION_TIME = 15;\n var EXECUTION_STEPS = 10;\n var COMPILE_TYPE3_GLYPHS = true;\n var MAX_SIZE_TO_COMPILE = 1000;\n var FULL_CHUNK_HEIGHT = 16;\n var LINEWIDTH_SCALE_FACTOR = 1.000001;\n function mirrorContextOperations(ctx, destCtx) {\n if (ctx._removeMirroring) {\n throw new Error(\"Context is already forwarding operations.\");\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.__originalClip = ctx.clip;\n ctx.__originalMoveTo = ctx.moveTo;\n ctx.__originalLineTo = ctx.lineTo;\n ctx.__originalBezierCurveTo = ctx.bezierCurveTo;\n ctx.__originalRect = ctx.rect;\n ctx.__originalClosePath = ctx.closePath;\n ctx.__originalBeginPath = ctx.beginPath;\n ctx._removeMirroring = function () {\n ctx.save = ctx.__originalSave;\n ctx.restore = ctx.__originalRestore;\n ctx.rotate = ctx.__originalRotate;\n ctx.scale = ctx.__originalScale;\n ctx.translate = ctx.__originalTranslate;\n ctx.transform = ctx.__originalTransform;\n ctx.setTransform = ctx.__originalSetTransform;\n ctx.resetTransform = ctx.__originalResetTransform;\n ctx.clip = ctx.__originalClip;\n ctx.moveTo = ctx.__originalMoveTo;\n ctx.lineTo = ctx.__originalLineTo;\n ctx.bezierCurveTo = ctx.__originalBezierCurveTo;\n ctx.rect = ctx.__originalRect;\n ctx.closePath = ctx.__originalClosePath;\n ctx.beginPath = ctx.__originalBeginPath;\n delete ctx._removeMirroring;\n };\n ctx.save = function ctxSave() {\n destCtx.save();\n this.__originalSave();\n };\n ctx.restore = function ctxRestore() {\n destCtx.restore();\n this.__originalRestore();\n };\n ctx.translate = function ctxTranslate(x, y) {\n destCtx.translate(x, y);\n this.__originalTranslate(x, y);\n };\n ctx.scale = function ctxScale(x, y) {\n destCtx.scale(x, y);\n this.__originalScale(x, y);\n };\n ctx.transform = function ctxTransform(a, b, c, d, e, f) {\n destCtx.transform(a, b, c, d, e, f);\n this.__originalTransform(a, b, c, d, e, f);\n };\n ctx.setTransform = function ctxSetTransform(a, b, c, d, e, f) {\n destCtx.setTransform(a, b, c, d, e, f);\n this.__originalSetTransform(a, b, c, d, e, f);\n };\n ctx.resetTransform = function ctxResetTransform() {\n destCtx.resetTransform();\n this.__originalResetTransform();\n };\n ctx.rotate = function ctxRotate(angle) {\n destCtx.rotate(angle);\n this.__originalRotate(angle);\n };\n ctx.clip = function ctxRotate(rule) {\n destCtx.clip(rule);\n this.__originalClip(rule);\n };\n ctx.moveTo = function (x, y) {\n destCtx.moveTo(x, y);\n this.__originalMoveTo(x, y);\n };\n ctx.lineTo = function (x, y) {\n destCtx.lineTo(x, y);\n this.__originalLineTo(x, y);\n };\n ctx.bezierCurveTo = function (cp1x, cp1y, cp2x, cp2y, x, y) {\n destCtx.bezierCurveTo(cp1x, cp1y, cp2x, cp2y, x, y);\n this.__originalBezierCurveTo(cp1x, cp1y, cp2x, cp2y, x, y);\n };\n ctx.rect = function (x, y, width, height) {\n destCtx.rect(x, y, width, height);\n this.__originalRect(x, y, width, height);\n };\n ctx.closePath = function () {\n destCtx.closePath();\n this.__originalClosePath();\n };\n ctx.beginPath = function () {\n destCtx.beginPath();\n this.__originalBeginPath();\n };\n }\n function addContextCurrentTransform(ctx) {\n if (ctx.mozCurrentTransform) {\n return;\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 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 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 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 ctx.save = function ctxSave() {\n var old = this._transformMatrix;\n this._transformStack.push(old);\n this._transformMatrix = old.slice(0, 6);\n this._originalSave();\n };\n ctx.restore = function ctxRestore() {\n var prev = this._transformStack.pop();\n if (prev) {\n this._transformMatrix = prev;\n this._originalRestore();\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 this._originalTranslate(x, y);\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 this._originalScale(x, y);\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 ctx._originalTransform(a, b, c, d, e, f);\n };\n ctx.setTransform = function ctxSetTransform(a, b, c, d, e, f) {\n this._transformMatrix = [a, b, c, d, e, f];\n ctx._originalSetTransform(a, b, c, d, e, f);\n };\n ctx.resetTransform = function ctxResetTransform() {\n this._transformMatrix = [1, 0, 0, 1, 0, 0];\n ctx._originalResetTransform();\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 this._originalRotate(angle);\n };\n }\n var CachedCanvases = /*#__PURE__*/function () {\n function CachedCanvases(canvasFactory) {\n _classCallCheck(this, CachedCanvases);\n this.canvasFactory = canvasFactory;\n this.cache = Object.create(null);\n }\n _createClass(CachedCanvases, [{\n key: \"getCanvas\",\n value: function getCanvas(id, width, height, trackTransform) {\n var canvasEntry;\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 if (trackTransform) {\n addContextCurrentTransform(canvasEntry.context);\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 return CachedCanvases;\n }();\n function 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 for (i = 0, ii = data0.length; i < ii; i++) {\n var elem = data0[i];\n var mask = 128;\n while (mask > 0) {\n data[pos++] = elem & mask ? 0 : 255;\n mask >>= 1;\n }\n }\n var count = 0;\n pos = 0;\n if (data[pos] !== 0) {\n points[0] = 1;\n ++count;\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 pos++;\n }\n if (data[pos] !== 0) {\n points[j] = 2;\n ++count;\n }\n for (i = 1; i < height; i++) {\n pos = i * lineSize;\n j0 = i * width1;\n if (data[pos - lineSize] !== data[pos]) {\n points[j0] = data[pos] ? 1 : 8;\n ++count;\n }\n var sum = (data[pos] ? 4 : 0) + (data[pos - lineSize] ? 8 : 0);\n for (j = 1; j < width; j++) {\n sum = (sum >> 2) + (data[pos + 1] ? 4 : 0) + (data[pos - lineSize + 1] ? 8 : 0);\n if (POINT_TYPES[sum]) {\n points[j0 + j] = POINT_TYPES[sum];\n ++count;\n }\n pos++;\n }\n if (data[pos - lineSize] !== data[pos]) {\n points[j0 + j] = data[pos] ? 2 : 4;\n ++count;\n }\n if (count > POINT_TO_PROCESS_LIMIT) {\n return null;\n }\n }\n pos = lineSize * (height - 1);\n j0 = i * width1;\n if (data[pos] !== 0) {\n points[j0] = 8;\n ++count;\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 pos++;\n }\n if (data[pos] !== 0) {\n points[j0 + j] = 4;\n ++count;\n }\n if (count > POINT_TO_PROCESS_LIMIT) {\n return null;\n }\n var steps = new Int32Array([0, width1, -1, 0, -width1, 0, 0, 0, 1]);\n var outlines = [];\n for (i = 0; count && i <= height; i++) {\n var p = i * width1;\n var end = p + width;\n while (p < end && !points[p]) {\n p++;\n }\n if (p === end) {\n continue;\n }\n var coords = [p % width1, i];\n var p0 = p;\n var type = points[p];\n do {\n var step = steps[type];\n do {\n p += step;\n } while (!points[p]);\n var pp = points[p];\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 coords.push(p % width1, p / width1 | 0);\n if (!points[p]) {\n --count;\n }\n } while (p0 !== p);\n outlines.push(coords);\n --i;\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 for (var k = 0, kk = outlines.length; k < kk; k++) {\n var o = outlines[k];\n c.moveTo(o[0], o[1]);\n for (var l = 2, ll = o.length; l < ll; l += 2) {\n c.lineTo(o[l], o[l + 1]);\n }\n }\n c.fill();\n c.beginPath();\n c.restore();\n };\n return drawOutline;\n }\n var CanvasExtraState = /*#__PURE__*/function () {\n function CanvasExtraState(width, height) {\n _classCallCheck(this, CanvasExtraState);\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.transferMaps = null;\n this.startNewPathAndClipBox([0, 0, width, height]);\n }\n _createClass(CanvasExtraState, [{\n key: \"clone\",\n value: function clone() {\n var clone = Object.create(this);\n clone.clipBox = this.clipBox.slice();\n return clone;\n }\n }, {\n key: \"setCurrentPoint\",\n value: function setCurrentPoint(x, y) {\n this.x = x;\n this.y = y;\n }\n }, {\n key: \"updatePathMinMax\",\n value: function updatePathMinMax(transform, x, y) {\n var _Util$applyTransform = _util.Util.applyTransform([x, y], transform);\n var _Util$applyTransform2 = _slicedToArray(_Util$applyTransform, 2);\n x = _Util$applyTransform2[0];\n y = _Util$applyTransform2[1];\n this.minX = Math.min(this.minX, x);\n this.minY = Math.min(this.minY, y);\n this.maxX = Math.max(this.maxX, x);\n this.maxY = Math.max(this.maxY, y);\n }\n }, {\n key: \"updateCurvePathMinMax\",\n value: function updateCurvePathMinMax(transform, x0, y0, x1, y1, x2, y2, x3, y3) {\n var box = _util.Util.bezierBoundingBox(x0, y0, x1, y1, x2, y2, x3, y3);\n this.updatePathMinMax(transform, box[0], box[1]);\n this.updatePathMinMax(transform, box[2], box[3]);\n }\n }, {\n key: \"getPathBoundingBox\",\n value: function getPathBoundingBox() {\n var pathType = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : _pattern_helper.PathType.FILL;\n var transform = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;\n var box = [this.minX, this.minY, this.maxX, this.maxY];\n if (pathType === _pattern_helper.PathType.STROKE) {\n if (!transform) {\n (0, _util.unreachable)(\"Stroke bounding box must include transform.\");\n }\n var scale = _util.Util.singularValueDecompose2dScale(transform);\n var xStrokePad = scale[0] * this.lineWidth / 2;\n var yStrokePad = scale[1] * this.lineWidth / 2;\n box[0] -= xStrokePad;\n box[1] -= yStrokePad;\n box[2] += xStrokePad;\n box[3] += yStrokePad;\n }\n return box;\n }\n }, {\n key: \"updateClipFromPath\",\n value: function updateClipFromPath() {\n var intersect = _util.Util.intersect(this.clipBox, this.getPathBoundingBox());\n this.startNewPathAndClipBox(intersect || [0, 0, 0, 0]);\n }\n }, {\n key: \"startNewPathAndClipBox\",\n value: function startNewPathAndClipBox(box) {\n this.clipBox = box;\n this.minX = Infinity;\n this.minY = Infinity;\n this.maxX = 0;\n this.maxY = 0;\n }\n }, {\n key: \"getClippedPathBoundingBox\",\n value: function getClippedPathBoundingBox() {\n var pathType = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : _pattern_helper.PathType.FILL;\n var transform = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;\n return _util.Util.intersect(this.clipBox, this.getPathBoundingBox(pathType, transform));\n }\n }]);\n return CanvasExtraState;\n }();\n function putBinaryImageData(ctx, imgData) {\n var transferMaps = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null;\n if (typeof ImageData !== \"undefined\" && imgData instanceof ImageData) {\n ctx.putImageData(imgData, 0, 0);\n return;\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 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 case 4:\n transferMapRed = transferMaps[0];\n transferMapGreen = transferMaps[1];\n transferMapBlue = transferMaps[2];\n transferMapGray = transferMaps[3];\n break;\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 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 for (i = 0; i < totalChunks; i++) {\n thisChunkHeight = i < fullChunks ? FULL_CHUNK_HEIGHT : partialChunkHeight;\n destPos = 0;\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 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 for (; k < kEnd; k++) {\n if (mask === 0) {\n srcByte = src[srcPos++];\n mask = 128;\n }\n dest32[destPos++] = srcByte & mask ? white : black;\n mask >>= 1;\n }\n }\n while (destPos < dest32DataLength) {\n dest32[destPos++] = 0;\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 for (i = 0; i < fullChunks; i++) {\n dest.set(src.subarray(srcPos, srcPos + elemsInThisChunk));\n srcPos += elemsInThisChunk;\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 if (transferMapGreen) {\n dest[_k + 1] = transferMapGreen[dest[_k + 1]];\n }\n if (transferMapBlue) {\n dest[_k + 2] = transferMapBlue[dest[_k + 2]];\n }\n }\n }\n ctx.putImageData(chunkImgData, 0, j);\n j += FULL_CHUNK_HEIGHT;\n }\n if (i < totalChunks) {\n elemsInThisChunk = width * partialChunkHeight * 4;\n dest.set(src.subarray(srcPos, srcPos + elemsInThisChunk));\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 if (transferMapGreen) {\n dest[_k2 + 1] = transferMapGreen[dest[_k2 + 1]];\n }\n if (transferMapBlue) {\n dest[_k2 + 2] = transferMapBlue[dest[_k2 + 2]];\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 thisChunkHeight = FULL_CHUNK_HEIGHT;\n elemsInThisChunk = width * thisChunkHeight;\n for (i = 0; i < totalChunks; i++) {\n if (i >= fullChunks) {\n thisChunkHeight = partialChunkHeight;\n elemsInThisChunk = width * thisChunkHeight;\n }\n destPos = 0;\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 if (_hasTransferMaps) {\n for (var _k3 = 0; _k3 < destPos; _k3 += 4) {\n if (transferMapRed) {\n dest[_k3 + 0] = transferMapRed[dest[_k3 + 0]];\n }\n if (transferMapGreen) {\n dest[_k3 + 1] = transferMapGreen[dest[_k3 + 1]];\n }\n if (transferMapBlue) {\n dest[_k3 + 2] = transferMapBlue[dest[_k3 + 2]];\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 function 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 for (var i = 0; i < totalChunks; i++) {\n var thisChunkHeight = i < fullChunks ? FULL_CHUNK_HEIGHT : partialChunkHeight;\n var destPos = 3;\n for (var j = 0; j < thisChunkHeight; j++) {\n var elem = void 0,\n mask = 0;\n for (var k = 0; k < width; k++) {\n if (!mask) {\n elem = src[srcPos++];\n mask = 128;\n }\n dest[destPos] = elem & mask ? 0 : 255;\n destPos += 4;\n mask >>= 1;\n }\n }\n ctx.putImageData(chunkImgData, 0, i * FULL_CHUNK_HEIGHT);\n }\n }\n function copyCtxState(sourceCtx, destCtx) {\n var properties = [\"strokeStyle\", \"fillStyle\", \"fillRule\", \"globalAlpha\", \"lineWidth\", \"lineCap\", \"lineJoin\", \"miterLimit\", \"globalCompositeOperation\", \"font\"];\n for (var i = 0, ii = properties.length; i < ii; i++) {\n var property = properties[i];\n if (sourceCtx[property] !== undefined) {\n destCtx[property] = sourceCtx[property];\n }\n }\n if (sourceCtx.setLineDash !== undefined) {\n destCtx.setLineDash(sourceCtx.getLineDash());\n destCtx.lineDashOffset = sourceCtx.lineDashOffset;\n }\n }\n function 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 if (ctx.setLineDash !== undefined) {\n ctx.setLineDash([]);\n ctx.lineDashOffset = 0;\n }\n }\n function composeSMaskBackdrop(bytes, r0, g0, b0) {\n var length = bytes.length;\n for (var i = 3; i < length; i += 4) {\n var alpha = bytes[i];\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 function composeSMaskAlpha(maskData, layerData, transferMap) {\n var length = maskData.length;\n var scale = 1 / 255;\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 function composeSMaskLuminosity(maskData, layerData, transferMap) {\n var length = maskData.length;\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 function genericComposeSMask(maskCtx, layerCtx, width, height, subtype, backdrop, transferMap, layerOffsetX, layerOffsetY, maskOffsetX, maskOffsetY) {\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 if (subtype === \"Luminosity\") {\n composeFn = composeSMaskLuminosity;\n } else {\n composeFn = composeSMaskAlpha;\n }\n var PIXELS_TO_PROCESS = 1048576;\n var chunkSize = Math.min(height, Math.ceil(PIXELS_TO_PROCESS / width));\n for (var row = 0; row < height; row += chunkSize) {\n var chunkHeight = Math.min(chunkSize, height - row);\n var maskData = maskCtx.getImageData(layerOffsetX - maskOffsetX, row + (layerOffsetY - maskOffsetY), width, chunkHeight);\n var layerData = layerCtx.getImageData(layerOffsetX, row + layerOffsetY, width, chunkHeight);\n if (hasBackdrop) {\n composeSMaskBackdrop(maskData.data, r0, g0, b0);\n }\n composeFn(maskData.data, layerData.data, transferMap);\n layerCtx.putImageData(layerData, layerOffsetX, row + layerOffsetY);\n }\n }\n function composeSMask(ctx, smask, layerCtx, layerBox) {\n var layerOffsetX = layerBox[0];\n var layerOffsetY = layerBox[1];\n var layerWidth = layerBox[2] - layerOffsetX;\n var layerHeight = layerBox[3] - layerOffsetY;\n if (layerWidth === 0 || layerHeight === 0) {\n return;\n }\n genericComposeSMask(smask.context, layerCtx, layerWidth, layerHeight, smask.subtype, smask.backdrop, smask.transferMap, layerOffsetX, layerOffsetY, smask.offsetX, smask.offsetY);\n ctx.save();\n ctx.globalAlpha = 1;\n ctx.globalCompositeOperation = \"source-over\";\n ctx.setTransform(1, 0, 0, 1, 0, 0);\n ctx.drawImage(layerCtx.canvas, 0, 0);\n ctx.restore();\n }\n function getImageSmoothingEnabled(transform, interpolate) {\n var scale = _util.Util.singularValueDecompose2dScale(transform);\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 if (interpolate !== undefined) {\n return interpolate;\n } else if (scale[0] <= actualScale || scale[1] <= actualScale) {\n return true;\n }\n return false;\n }\n var LINE_CAP_STYLES = [\"butt\", \"round\", \"square\"];\n var LINE_JOIN_STYLES = [\"miter\", \"round\", \"bevel\"];\n var NORMAL_CLIP = {};\n var EO_CLIP = {};\n var CanvasGraphics = /*#__PURE__*/function () {\n function CanvasGraphics(canvasCtx, commonObjs, objs, canvasFactory, imageLayer, optionalContentConfig, annotationCanvasMap) {\n _classCallCheck(this, CanvasGraphics);\n this.ctx = canvasCtx;\n this.current = new CanvasExtraState(this.ctx.canvas.width, this.ctx.canvas.height);\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.suspendedCtx = null;\n this.contentVisible = true;\n this.markedContentStack = [];\n this.optionalContentConfig = optionalContentConfig;\n this.cachedCanvases = new CachedCanvases(this.canvasFactory);\n this.cachedPatterns = new Map();\n this.annotationCanvasMap = annotationCanvasMap;\n this.viewportScale = 1;\n this.outputScaleX = 1;\n this.outputScaleY = 1;\n if (canvasCtx) {\n addContextCurrentTransform(canvasCtx);\n }\n this._cachedGetSinglePixelWidth = null;\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 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 this.ctx.save();\n resetCtxToDefault(this.ctx);\n if (transform) {\n this.ctx.transform.apply(this.ctx, transform);\n this.outputScaleX = transform[0];\n this.outputScaleY = transform[0];\n }\n this.ctx.transform.apply(this.ctx, viewport.transform);\n this.viewportScale = viewport.scale;\n this.baseTransform = this.ctx.mozCurrentTransform.slice();\n this._combinedScaleFactor = Math.hypot(this.baseTransform[0], this.baseTransform[2]);\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 if (argsArrayLen === i) {\n return i;\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 while (true) {\n if (stepper !== undefined && i === stepper.nextBreakPoint) {\n stepper.breakIt(i, continueCallback);\n return i;\n }\n fnId = fnArray[i];\n if (fnId !== _util.OPS.dependency) {\n this[fnId].apply(this, argsArray[i]);\n } else {\n var _iterator = _createForOfIteratorHelper(argsArray[i]),\n _step;\n try {\n for (_iterator.s(); !(_step = _iterator.n()).done;) {\n var depObjId = _step.value;\n var objsPool = depObjId.startsWith(\"g_\") ? commonObjs : objs;\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 i++;\n if (i === argsArrayLen) {\n return i;\n }\n if (chunkOperations && ++steps > EXECUTION_STEPS) {\n if (Date.now() > endTime) {\n continueCallback();\n return i;\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 this.ctx.restore();\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 this.cachedCanvases.clear();\n this.cachedPatterns.clear();\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 while (widthScale > 2 && paintWidth > 1 || heightScale > 2 && paintHeight > 1) {\n var newWidth = paintWidth,\n newHeight = paintHeight;\n if (widthScale > 2 && paintWidth > 1) {\n newWidth = Math.ceil(paintWidth / 2);\n widthScale /= paintWidth / newWidth;\n }\n if (heightScale > 2 && paintHeight > 1) {\n newHeight = Math.ceil(paintHeight / 2);\n heightScale /= paintHeight / newHeight;\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 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 var maskToCanvas = _util.Util.transform(objToCanvas, [1 / width, 0, 0, -1 / height, 0, 0]);\n maskToCanvas = _util.Util.transform(maskToCanvas, [1, 0, 0, 1, 0, -height]);\n var cord1 = _util.Util.applyTransform([0, 0], maskToCanvas);\n var cord2 = _util.Util.applyTransform([width, height], maskToCanvas);\n var rect = _util.Util.normalizeRect([cord1[0], cord1[1], cord2[0], cord2[1]]);\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 var scaled = this._scaleImage(maskCanvas.canvas, fillCtx.mozCurrentTransformInverse);\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 var inverse = _util.Util.transform(fillCtx.mozCurrentTransformInverse, [1, 0, 0, 1, -offsetX, -offsetY]);\n fillCtx.fillStyle = isPatternFill ? fillColor.getPattern(ctx, this, inverse, _pattern_helper.PathType.FILL) : 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 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 switch (key) {\n case \"LW\":\n this.setLineWidth(value);\n break;\n case \"LC\":\n this.setLineCap(value);\n break;\n case \"LJ\":\n this.setLineJoin(value);\n break;\n case \"ML\":\n this.setMiterLimit(value);\n break;\n case \"D\":\n this.setDash(value[0], value[1]);\n break;\n case \"RI\":\n this.setRenderingIntent(value);\n break;\n case \"FL\":\n this.setFlatness(value);\n break;\n case \"Font\":\n this.setFont(value[0], value[1]);\n break;\n case \"CA\":\n this.current.strokeAlpha = state[1];\n break;\n case \"ca\":\n this.current.fillAlpha = state[1];\n this.ctx.globalAlpha = state[1];\n break;\n case \"BM\":\n this.ctx.globalCompositeOperation = value;\n break;\n case \"SMask\":\n this.current.activeSMask = value ? this.tempSMask : null;\n this.tempSMask = null;\n this.checkSMaskState();\n break;\n case \"TR\":\n this.current.transferMaps = value;\n }\n }\n }\n }, {\n key: \"checkSMaskState\",\n value: function checkSMaskState() {\n var inSMaskMode = !!this.suspendedCtx;\n if (this.current.activeSMask && !inSMaskMode) {\n this.beginSMaskMode();\n } else if (!this.current.activeSMask && inSMaskMode) {\n this.endSMaskMode();\n }\n }\n }, {\n key: \"beginSMaskMode\",\n value: function beginSMaskMode() {\n if (this.suspendedCtx) {\n throw new Error(\"beginSMaskMode called while already in smask mode\");\n }\n var drawnWidth = this.ctx.canvas.width;\n var drawnHeight = this.ctx.canvas.height;\n var cacheId = \"smaskGroupAt\" + this.groupLevel;\n var scratchCanvas = this.cachedCanvases.getCanvas(cacheId, drawnWidth, drawnHeight, true);\n this.suspendedCtx = this.ctx;\n this.ctx = scratchCanvas.context;\n var ctx = this.ctx;\n ctx.setTransform.apply(ctx, this.suspendedCtx.mozCurrentTransform);\n copyCtxState(this.suspendedCtx, ctx);\n mirrorContextOperations(ctx, this.suspendedCtx);\n this.setGState([[\"BM\", \"source-over\"], [\"ca\", 1], [\"CA\", 1]]);\n }\n }, {\n key: \"endSMaskMode\",\n value: function endSMaskMode() {\n if (!this.suspendedCtx) {\n throw new Error(\"endSMaskMode called while not in smask mode\");\n }\n this.ctx._removeMirroring();\n copyCtxState(this.ctx, this.suspendedCtx);\n this.ctx = this.suspendedCtx;\n this.current.activeSMask = null;\n this.suspendedCtx = null;\n }\n }, {\n key: \"compose\",\n value: function compose(dirtyBox) {\n if (!this.current.activeSMask) {\n return;\n }\n if (!dirtyBox) {\n dirtyBox = [0, 0, this.ctx.canvas.width, this.ctx.canvas.height];\n } else {\n dirtyBox[0] = Math.floor(dirtyBox[0]);\n dirtyBox[1] = Math.floor(dirtyBox[1]);\n dirtyBox[2] = Math.ceil(dirtyBox[2]);\n dirtyBox[3] = Math.ceil(dirtyBox[3]);\n }\n var smask = this.current.activeSMask;\n var suspendedCtx = this.suspendedCtx;\n composeSMask(suspendedCtx, smask, this.ctx, dirtyBox);\n this.ctx.save();\n this.ctx.setTransform(1, 0, 0, 1, 0, 0);\n this.ctx.clearRect(0, 0, this.ctx.canvas.width, this.ctx.canvas.height);\n this.ctx.restore();\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 }\n }, {\n key: \"restore\",\n value: function restore() {\n if (this.stateStack.length === 0 && this.current.activeSMask) {\n this.endSMaskMode();\n }\n if (this.stateStack.length !== 0) {\n this.current = this.stateStack.pop();\n this.ctx.restore();\n this.checkSMaskState();\n this.pendingClip = null;\n this._cachedGetSinglePixelWidth = 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 var startX, startY;\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 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 current.updatePathMinMax(ctx.mozCurrentTransform, x, y);\n current.updatePathMinMax(ctx.mozCurrentTransform, xw, yh);\n ctx.closePath();\n break;\n case _util.OPS.moveTo:\n x = args[j++];\n y = args[j++];\n ctx.moveTo(x, y);\n current.updatePathMinMax(ctx.mozCurrentTransform, x, y);\n break;\n case _util.OPS.lineTo:\n x = args[j++];\n y = args[j++];\n ctx.lineTo(x, y);\n current.updatePathMinMax(ctx.mozCurrentTransform, x, y);\n break;\n case _util.OPS.curveTo:\n startX = x;\n startY = y;\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 current.updateCurvePathMinMax(ctx.mozCurrentTransform, startX, startY, args[j], args[j + 1], args[j + 2], args[j + 3], x, y);\n j += 6;\n break;\n case _util.OPS.curveTo2:\n startX = x;\n startY = y;\n ctx.bezierCurveTo(x, y, args[j], args[j + 1], args[j + 2], args[j + 3]);\n current.updateCurvePathMinMax(ctx.mozCurrentTransform, startX, startY, 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 case _util.OPS.curveTo3:\n startX = x;\n startY = y;\n x = args[j + 2];\n y = args[j + 3];\n ctx.bezierCurveTo(args[j], args[j + 1], x, y, x, y);\n current.updateCurvePathMinMax(ctx.mozCurrentTransform, startX, startY, args[j], args[j + 1], x, y, x, y);\n j += 4;\n break;\n case _util.OPS.closePath:\n ctx.closePath();\n break;\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 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, _pattern_helper.PathType.STROKE);\n ctx.lineWidth = Math.max(lineWidth, this.current.lineWidth);\n ctx.stroke();\n ctx.restore();\n } else {\n var _lineWidth = this.getSinglePixelWidth();\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 if (consumePath) {\n this.consumePath(this.current.getClippedPathBoundingBox());\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 if (isPatternFill) {\n ctx.save();\n ctx.fillStyle = fillColor.getPattern(ctx, this, ctx.mozCurrentTransformInverse, _pattern_helper.PathType.FILL);\n needRestore = true;\n }\n var intersect = this.current.getClippedPathBoundingBox();\n if (this.contentVisible && intersect !== null) {\n if (this.pendingEOFill) {\n ctx.fill(\"evenodd\");\n this.pendingEOFill = false;\n } else {\n ctx.fill();\n }\n }\n if (needRestore) {\n ctx.restore();\n }\n if (consumePath) {\n this.consumePath(intersect);\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 if (paths === undefined) {\n ctx.beginPath();\n return;\n }\n ctx.save();\n ctx.beginPath();\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 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 if (!fontObj) {\n throw new Error(\"Can't find font for \".concat(fontRefName));\n }\n current.fontMatrix = fontObj.fontMatrix || _util.FONT_IDENTITY_MATRIX;\n if (current.fontMatrix[0] === 0 || current.fontMatrix[3] === 0) {\n (0, _util.warn)(\"Invalid font matrix for font \" + fontRefName);\n }\n if (size < 0) {\n size = -size;\n current.fontDirection = -1;\n } else {\n current.fontDirection = 1;\n }\n this.current.font = fontObj;\n this.current.fontSize = size;\n if (fontObj.isType3Font) {\n return;\n }\n var name = fontObj.loadedName || \"sans-serif\";\n var bold = \"normal\";\n if (fontObj.black) {\n bold = \"900\";\n } else if (fontObj.bold) {\n bold = \"bold\";\n }\n var italic = fontObj.italic ? \"italic\" : \"normal\";\n var typeface = \"\\\"\".concat(name, \"\\\", \").concat(fontObj.fallbackName);\n var browserFontSize = size;\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 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 if (font.disableFontFace || isAddToPathSet || patternFill) {\n addToPath = font.getPathGenerator(this.commonObjs, character);\n }\n if (font.disableFontFace || patternFill) {\n ctx.save();\n ctx.translate(x, y);\n ctx.beginPath();\n addToPath(ctx, fontSize);\n if (patternTransform) {\n ctx.setTransform.apply(ctx, patternTransform);\n }\n if (fillStrokeMode === _util.TextRenderingMode.FILL || fillStrokeMode === _util.TextRenderingMode.FILL_STROKE) {\n ctx.fill();\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 ctx.stroke();\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 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 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 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 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 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 if (font.isType3Font) {\n return this.showType3Text(glyphs);\n }\n var fontSize = current.fontSize;\n if (fontSize === 0) {\n return undefined;\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 ctx.transform.apply(ctx, current.textMatrix);\n ctx.translate(current.x, current.y + current.textRise);\n if (fontDirection > 0) {\n ctx.scale(textHScale, -1);\n } else {\n ctx.scale(textHScale, 1);\n }\n var patternTransform;\n if (current.patternFill) {\n ctx.save();\n var pattern = current.fillColor.getPattern(ctx, this, ctx.mozCurrentTransformInverse, _pattern_helper.PathType.FILL);\n patternTransform = ctx.mozCurrentTransform;\n ctx.restore();\n ctx.fillStyle = pattern;\n }\n var lineWidth = current.lineWidth;\n var resetLineWidthToOne = false;\n var scale = current.textMatrixScale;\n if (scale === 0 || lineWidth === 0) {\n var fillStrokeMode = current.textRenderingMode & _util.TextRenderingMode.FILL_STROKE_MASK;\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 if (fontSizeScale !== 1.0) {\n ctx.scale(fontSizeScale, fontSizeScale);\n lineWidth /= fontSizeScale;\n }\n ctx.lineWidth = lineWidth;\n var x = 0,\n i;\n for (i = 0; i < glyphsLength; ++i) {\n var glyph = glyphs[i];\n if ((0, _util.isNum)(glyph)) {\n x += spacingDir * glyph * fontSize / 1000;\n continue;\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 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 if (font.remeasure && width > 0) {\n var measuredWidth = ctx.measureText(character).width * 1000 / fontSize * fontSizeScale;\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 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 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 var charWidth = void 0;\n if (vertical) {\n charWidth = width * widthAdvanceScale - spacing * fontDirection;\n } else {\n charWidth = width * widthAdvanceScale + spacing * fontDirection;\n }\n x += charWidth;\n if (restoreNeeded) {\n ctx.restore();\n }\n }\n if (vertical) {\n current.y -= x;\n } else {\n current.x += x * textHScale;\n }\n ctx.restore();\n this.compose();\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 if (isTextInvisible || fontSize === 0) {\n return;\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 for (i = 0; i < glyphsLength; ++i) {\n glyph = glyphs[i];\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 var spacing = (glyph.isSpace ? wordSpacing : 0) + charSpacing;\n var operatorList = font.charProcOperatorList[glyph.operatorListId];\n if (!operatorList) {\n (0, _util.warn)(\"Type3 character \\\"\".concat(glyph.operatorListId, \"\\\" is not available.\"));\n continue;\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 var transformed = _util.Util.applyTransform([glyph.width, 0], fontMatrix);\n width = transformed[0] * fontSize + spacing;\n ctx.translate(width, 0);\n current.x += width * textHScale;\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 var pattern;\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 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 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 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 if (this.cachedPatterns.has(objId)) {\n pattern = this.cachedPatterns.get(objId);\n } else {\n pattern = (0, _pattern_helper.getShadingPattern)(this.objs.get(objId));\n this.cachedPatterns.set(objId, pattern);\n }\n if (matrix) {\n pattern.matrix = matrix;\n }\n return pattern;\n }\n }, {\n key: \"shadingFill\",\n value: function shadingFill(objId) {\n if (!this.contentVisible) {\n return;\n }\n var ctx = this.ctx;\n this.save();\n var pattern = this._getPattern(objId);\n ctx.fillStyle = pattern.getPattern(ctx, this, ctx.mozCurrentTransformInverse, _pattern_helper.PathType.SHADING);\n var inv = ctx.mozCurrentTransformInverse;\n if (inv) {\n var canvas = ctx.canvas;\n var width = canvas.width;\n var height = canvas.height;\n var bl = _util.Util.applyTransform([0, 0], inv);\n var br = _util.Util.applyTransform([0, height], inv);\n var ul = _util.Util.applyTransform([width, 0], inv);\n var ur = _util.Util.applyTransform([width, height], inv);\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 this.compose(this.current.getClippedPathBoundingBox());\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 this.save();\n this.baseTransformStack.push(this.baseTransform);\n if (Array.isArray(matrix) && matrix.length === 6) {\n this.transform.apply(this, matrix);\n }\n this.baseTransform = this.ctx.mozCurrentTransform;\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.current.updatePathMinMax(this.ctx.mozCurrentTransform, bbox[0], bbox[1]);\n this.current.updatePathMinMax(this.ctx.mozCurrentTransform, bbox[2], bbox[3]);\n this.clip();\n this.endPath();\n }\n }\n }, {\n key: \"paintFormXObjectEnd\",\n value: function paintFormXObjectEnd() {\n if (!this.contentVisible) {\n return;\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 this.save();\n var suspendedCtx = this.suspendedCtx;\n if (this.current.activeSMask) {\n this.suspendedCtx = null;\n this.current.activeSMask = null;\n }\n var currentCtx = this.ctx;\n if (!group.isolated) {\n (0, _util.info)(\"TODO: Support non-isolated groups.\");\n }\n if (group.knockout) {\n (0, _util.warn)(\"Knockout groups not supported.\");\n }\n var currentTransform = currentCtx.mozCurrentTransform;\n if (group.matrix) {\n currentCtx.transform.apply(currentCtx, group.matrix);\n }\n if (!group.bbox) {\n throw new Error(\"Bounding box is required.\");\n }\n var bounds = _util.Util.getAxialAlignedBoundingBox(group.bbox, currentCtx.mozCurrentTransform);\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 if (drawnWidth > MAX_GROUP_SIZE) {\n scaleX = drawnWidth / MAX_GROUP_SIZE;\n drawnWidth = MAX_GROUP_SIZE;\n }\n if (drawnHeight > MAX_GROUP_SIZE) {\n scaleY = drawnHeight / MAX_GROUP_SIZE;\n drawnHeight = MAX_GROUP_SIZE;\n }\n this.current.startNewPathAndClipBox([0, 0, drawnWidth, drawnHeight]);\n var cacheId = \"groupAt\" + this.groupLevel;\n if (group.smask) {\n cacheId += \"_smask_\" + this.smaskCounter++ % 2;\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 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 currentCtx.save();\n }\n copyCtxState(currentCtx, groupCtx);\n this.ctx = groupCtx;\n this.setGState([[\"BM\", \"source-over\"], [\"ca\", 1], [\"CA\", 1]]);\n this.groupStack.push({\n ctx: currentCtx,\n suspendedCtx: suspendedCtx\n });\n this.groupLevel++;\n }\n }, {\n key: \"endGroup\",\n value: function endGroup(group) {\n if (!this.contentVisible) {\n return;\n }\n this.groupLevel--;\n var groupCtx = this.ctx;\n var _this$groupStack$pop = this.groupStack.pop(),\n ctx = _this$groupStack$pop.ctx,\n suspendedCtx = _this$groupStack$pop.suspendedCtx;\n this.ctx = ctx;\n this.ctx.imageSmoothingEnabled = false;\n if (suspendedCtx) {\n this.suspendedCtx = suspendedCtx;\n }\n if (group.smask) {\n this.tempSMask = this.smaskStack.pop();\n this.restore();\n } else {\n this.ctx.restore();\n var currentMtx = this.ctx.mozCurrentTransform;\n this.restore();\n this.ctx.save();\n this.ctx.setTransform.apply(this.ctx, currentMtx);\n var dirtyBox = _util.Util.getAxialAlignedBoundingBox([0, 0, groupCtx.canvas.width, groupCtx.canvas.height], currentMtx);\n this.ctx.drawImage(groupCtx.canvas, 0, 0);\n this.ctx.restore();\n this.compose(dirtyBox);\n }\n }\n }, {\n key: \"beginAnnotations\",\n value: function beginAnnotations() {\n this.save();\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, hasOwnCanvas) {\n this.save();\n if (Array.isArray(rect) && rect.length === 4) {\n var width = rect[2] - rect[0];\n var height = rect[3] - rect[1];\n if (hasOwnCanvas && this.annotationCanvasMap) {\n transform = transform.slice();\n transform[4] -= rect[0];\n transform[5] -= rect[1];\n rect = rect.slice();\n rect[0] = rect[1] = 0;\n rect[2] = width;\n rect[3] = height;\n var _Util$singularValueDe = _util.Util.singularValueDecompose2dScale(this.ctx.mozCurrentTransform),\n _Util$singularValueDe2 = _slicedToArray(_Util$singularValueDe, 2),\n scaleX = _Util$singularValueDe2[0],\n scaleY = _Util$singularValueDe2[1];\n var viewportScale = this.viewportScale;\n var canvasWidth = Math.ceil(width * this.outputScaleX * viewportScale);\n var canvasHeight = Math.ceil(height * this.outputScaleY * viewportScale);\n this.annotationCanvas = this.canvasFactory.create(canvasWidth, canvasHeight);\n var _this$annotationCanva = this.annotationCanvas,\n canvas = _this$annotationCanva.canvas,\n context = _this$annotationCanva.context;\n canvas.style.width = \"calc(\".concat(width, \"px * var(--viewport-scale-factor))\");\n canvas.style.height = \"calc(\".concat(height, \"px * var(--viewport-scale-factor))\");\n this.annotationCanvasMap.set(id, canvas);\n this.annotationCanvas.savedCtx = this.ctx;\n this.ctx = context;\n this.ctx.setTransform(scaleX, 0, 0, -scaleY, 0, height * scaleY);\n addContextCurrentTransform(this.ctx);\n resetCtxToDefault(this.ctx);\n } else {\n resetCtxToDefault(this.ctx);\n this.ctx.rect(rect[0], rect[1], width, height);\n this.clip();\n this.endPath();\n }\n }\n this.current = new CanvasExtraState(this.ctx.canvas.width, this.ctx.canvas.height);\n this.transform.apply(this, transform);\n this.transform.apply(this, matrix);\n }\n }, {\n key: \"endAnnotation\",\n value: function endAnnotation() {\n if (this.annotationCanvas) {\n this.ctx = this.annotationCanvas.savedCtx;\n delete this.annotationCanvas.savedCtx;\n delete this.annotationCanvas;\n }\n this.restore();\n }\n }, {\n key: \"paintImageMaskXObject\",\n value: function paintImageMaskXObject(img) {\n if (!this.contentVisible) {\n return;\n }\n var ctx = this.ctx;\n var width = img.width,\n height = img.height;\n var glyph = this.processingType3;\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 if (glyph !== null && glyph !== void 0 && glyph.compiled) {\n glyph.compiled(ctx);\n return;\n }\n var mask = this._createMaskCanvas(img);\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 this.compose();\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 if (!this.contentVisible) {\n return;\n }\n var ctx = this.ctx;\n ctx.save();\n var currentTransform = ctx.mozCurrentTransform;\n ctx.transform(scaleX, skewX, skewY, scaleY, 0, 0);\n var mask = this._createMaskCanvas(imgData);\n ctx.setTransform(1, 0, 0, 1, 0, 0);\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 var _Util$applyTransform3 = _util.Util.applyTransform([0, 0], trans),\n _Util$applyTransform4 = _slicedToArray(_Util$applyTransform3, 2),\n x = _Util$applyTransform4[0],\n y = _Util$applyTransform4[1];\n ctx.drawImage(mask.canvas, x, y);\n }\n ctx.restore();\n this.compose();\n }\n }, {\n key: \"paintImageMaskXObjectGroup\",\n value: function paintImageMaskXObjectGroup(images) {\n if (!this.contentVisible) {\n return;\n }\n var ctx = this.ctx;\n var fillColor = this.current.fillColor;\n var isPatternFill = this.current.patternFill;\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, _pattern_helper.PathType.FILL) : 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 this.compose();\n }\n }, {\n key: \"paintImageXObject\",\n value: function paintImageXObject(objId) {\n if (!this.contentVisible) {\n return;\n }\n var imgData = objId.startsWith(\"g_\") ? this.commonObjs.get(objId) : this.objs.get(objId);\n if (!imgData) {\n (0, _util.warn)(\"Dependent image isn't ready yet\");\n return;\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 var imgData = objId.startsWith(\"g_\") ? this.commonObjs.get(objId) : this.objs.get(objId);\n if (!imgData) {\n (0, _util.warn)(\"Dependent image isn't ready yet\");\n return;\n }\n var width = imgData.width;\n var height = imgData.height;\n var map = [];\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 this.paintInlineImageXObjectGroup(imgData, map);\n }\n }, {\n key: \"paintInlineImageXObject\",\n value: function paintInlineImageXObject(imgData) {\n if (!this.contentVisible) {\n return;\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 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 var scaled = this._scaleImage(imgToPaint, ctx.mozCurrentTransformInverse);\n ctx.imageSmoothingEnabled = getImageSmoothingEnabled(ctx.mozCurrentTransform, imgData.interpolate);\n ctx.drawImage(scaled.img, 0, 0, scaled.paintWidth, scaled.paintHeight, 0, -height, width, height);\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 this.compose();\n this.restore();\n }\n }, {\n key: \"paintInlineImageXObjectGroup\",\n value: function paintInlineImageXObjectGroup(imgData, map) {\n if (!this.contentVisible) {\n return;\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 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 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 ctx.restore();\n }\n this.compose();\n }\n }, {\n key: \"paintSolidColorImageMask\",\n value: function paintSolidColorImageMask() {\n if (!this.contentVisible) {\n return;\n }\n this.ctx.fillRect(0, 0, 1, 1);\n this.compose();\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 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(clipBox) {\n if (this.pendingClip) {\n this.current.updateClipFromPath();\n }\n if (!this.pendingClip) {\n this.compose(clipBox);\n }\n var ctx = this.ctx;\n if (this.pendingClip) {\n if (this.pendingClip === EO_CLIP) {\n ctx.clip(\"evenodd\");\n } else {\n ctx.clip();\n }\n this.pendingClip = null;\n }\n this.current.startNewPathAndClipBox(this.current.clipBox);\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 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 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 return true;\n }\n }]);\n return CanvasGraphics;\n }();\n exports.CanvasGraphics = CanvasGraphics;\n for (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 }, /* 141 */\n /***/function (__unused_webpack_module, exports, __w_pdfjs_require__) {\n \"use strict\";\n\n function _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") {\n _typeof = function _typeof(obj) {\n return typeof obj;\n };\n } else {\n _typeof = function _typeof(obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n };\n }\n return _typeof(obj);\n }\n Object.defineProperty(exports, \"__esModule\", {\n value: true\n });\n exports.TilingPattern = exports.PathType = void 0;\n exports.getShadingPattern = getShadingPattern;\n var _util = __w_pdfjs_require__(4);\n function _createForOfIteratorHelper(o, allowArrayLike) {\n var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"];\n if (!it) {\n if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") {\n if (it) o = it;\n var i = 0;\n var F = function F() {};\n return {\n s: F,\n n: function n() {\n if (i >= o.length) return {\n done: true\n };\n return {\n done: false,\n value: o[i++]\n };\n },\n e: function e(_e) {\n throw _e;\n },\n f: F\n };\n }\n throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n }\n var normalCompletion = true,\n didErr = false,\n err;\n return {\n s: function s() {\n it = it.call(o);\n },\n n: function n() {\n var step = it.next();\n normalCompletion = step.done;\n return step;\n },\n e: function e(_e2) {\n didErr = true;\n err = _e2;\n },\n f: function f() {\n try {\n if (!normalCompletion && it[\"return\"] != null) it[\"return\"]();\n } finally {\n if (didErr) throw err;\n }\n }\n };\n }\n function _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return _arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);\n }\n function _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n for (var i = 0, arr2 = new Array(len); i < len; i++) {\n arr2[i] = arr[i];\n }\n return arr2;\n }\n function _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n writable: true,\n configurable: true\n }\n });\n if (superClass) _setPrototypeOf(subClass, superClass);\n }\n function _setPrototypeOf(o, p) {\n _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n return _setPrototypeOf(o, p);\n }\n function _createSuper(Derived) {\n var hasNativeReflectConstruct = _isNativeReflectConstruct();\n return function _createSuperInternal() {\n var Super = _getPrototypeOf(Derived),\n result;\n if (hasNativeReflectConstruct) {\n var NewTarget = _getPrototypeOf(this).constructor;\n result = Reflect.construct(Super, arguments, NewTarget);\n } else {\n result = Super.apply(this, arguments);\n }\n return _possibleConstructorReturn(this, result);\n };\n }\n function _possibleConstructorReturn(self, call) {\n if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) {\n return call;\n } else if (call !== void 0) {\n throw new TypeError(\"Derived constructors may only return object or undefined\");\n }\n return _assertThisInitialized(self);\n }\n function _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n return self;\n }\n function _isNativeReflectConstruct() {\n if (typeof Reflect === \"undefined\" || !Reflect.construct) return false;\n if (Reflect.construct.sham) return false;\n if (typeof Proxy === \"function\") return true;\n try {\n Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {}));\n return true;\n } catch (e) {\n return false;\n }\n }\n function _getPrototypeOf(o) {\n _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {\n return o.__proto__ || Object.getPrototypeOf(o);\n };\n return _getPrototypeOf(o);\n }\n function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n }\n function _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n }\n function _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n return Constructor;\n }\n var PathType = {\n FILL: \"Fill\",\n STROKE: \"Stroke\",\n SHADING: \"Shading\"\n };\n exports.PathType = PathType;\n function applyBoundingBox(ctx, bbox) {\n if (!bbox || typeof Path2D === \"undefined\") {\n return;\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 var BaseShadingPattern = /*#__PURE__*/function () {\n function BaseShadingPattern() {\n _classCallCheck(this, BaseShadingPattern);\n if (this.constructor === BaseShadingPattern) {\n (0, _util.unreachable)(\"Cannot initialize BaseShadingPattern.\");\n }\n }\n _createClass(BaseShadingPattern, [{\n key: \"getPattern\",\n value: function getPattern() {\n (0, _util.unreachable)(\"Abstract method `getPattern` called.\");\n }\n }]);\n return BaseShadingPattern;\n }();\n var RadialAxialShadingPattern = /*#__PURE__*/function (_BaseShadingPattern) {\n _inherits(RadialAxialShadingPattern, _BaseShadingPattern);\n var _super = _createSuper(RadialAxialShadingPattern);\n function RadialAxialShadingPattern(IR) {\n var _this;\n _classCallCheck(this, RadialAxialShadingPattern);\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 return _this;\n }\n _createClass(RadialAxialShadingPattern, [{\n key: \"_createGradient\",\n value: function _createGradient(ctx) {\n var grad;\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 var _iterator = _createForOfIteratorHelper(this._colorStops),\n _step;\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 return grad;\n }\n }, {\n key: \"getPattern\",\n value: function getPattern(ctx, owner, inverse, pathType) {\n var pattern;\n if (pathType === PathType.STROKE || pathType === PathType.FILL) {\n var ownerBBox = owner.current.getClippedPathBoundingBox(pathType, ctx.mozCurrentTransform) || [0, 0, 0, 0];\n var width = Math.ceil(ownerBBox[2] - ownerBBox[0]) || 1;\n var height = Math.ceil(ownerBBox[3] - ownerBBox[1]) || 1;\n var tmpCanvas = owner.cachedCanvases.getCanvas(\"pattern\", width, 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.translate(-ownerBBox[0], -ownerBBox[1]);\n inverse = _util.Util.transform(inverse, [1, 0, 0, 1, ownerBBox[0], ownerBBox[1]]);\n tmpCtx.transform.apply(tmpCtx, owner.baseTransform);\n if (this.matrix) {\n tmpCtx.transform.apply(tmpCtx, this.matrix);\n }\n applyBoundingBox(tmpCtx, this._bbox);\n tmpCtx.fillStyle = this._createGradient(tmpCtx);\n tmpCtx.fill();\n pattern = ctx.createPattern(tmpCanvas.canvas, \"no-repeat\");\n var domMatrix = new DOMMatrix(inverse);\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 } else {\n applyBoundingBox(ctx, this._bbox);\n pattern = this._createGradient(ctx);\n }\n return pattern;\n }\n }]);\n return RadialAxialShadingPattern;\n }(BaseShadingPattern);\n function 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 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 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 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 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 if (y1 >= y3) {\n return;\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 for (var y = minY; y <= maxY; y++) {\n if (y < y2) {\n var _k = void 0;\n if (y < y1) {\n _k = 0;\n } else {\n _k = (y1 - y) / (y1 - y2);\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 if (y > y3) {\n _k2 = 1;\n } else if (y2 === y3) {\n _k2 = 0;\n } else {\n _k2 = (y2 - y) / (y2 - y3);\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 var k = void 0;\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 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 for (var x = x1_; x <= x2_; x++) {\n k = (xa - x) / (xa - xb);\n if (k < 0) {\n k = 0;\n } else if (k > 1) {\n k = 1;\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 function drawFigure(data, figure, context) {\n var ps = figure.coords;\n var cs = figure.colors;\n var i, ii;\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 for (i = 0; i < rows; i++) {\n var q = i * verticesPerRow;\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 break;\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 break;\n default:\n throw new Error(\"illegal figure\");\n }\n }\n var MeshShadingPattern = /*#__PURE__*/function (_BaseShadingPattern2) {\n _inherits(MeshShadingPattern, _BaseShadingPattern2);\n var _super2 = _createSuper(MeshShadingPattern);\n function MeshShadingPattern(IR) {\n var _this2;\n _classCallCheck(this, MeshShadingPattern);\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 _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 if (backgroundColor) {\n var bytes = data.data;\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 var _iterator2 = _createForOfIteratorHelper(this._figures),\n _step2;\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 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, pathType) {\n applyBoundingBox(ctx, this._bbox);\n var scale;\n if (pathType === PathType.SHADING) {\n scale = _util.Util.singularValueDecompose2dScale(ctx.mozCurrentTransform);\n } else {\n scale = _util.Util.singularValueDecompose2dScale(owner.baseTransform);\n if (this.matrix) {\n var matrixScale = _util.Util.singularValueDecompose2dScale(this.matrix);\n scale = [scale[0] * matrixScale[0], scale[1] * matrixScale[1]];\n }\n }\n var temporaryPatternCanvas = this._createMeshCanvas(scale, pathType === PathType.SHADING ? null : this._background, owner.cachedCanvases);\n if (pathType !== PathType.SHADING) {\n ctx.setTransform.apply(ctx, owner.baseTransform);\n if (this.matrix) {\n ctx.transform.apply(ctx, this.matrix);\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 return MeshShadingPattern;\n }(BaseShadingPattern);\n var DummyShadingPattern = /*#__PURE__*/function (_BaseShadingPattern3) {\n _inherits(DummyShadingPattern, _BaseShadingPattern3);\n var _super3 = _createSuper(DummyShadingPattern);\n function DummyShadingPattern() {\n _classCallCheck(this, DummyShadingPattern);\n return _super3.apply(this, arguments);\n }\n _createClass(DummyShadingPattern, [{\n key: \"getPattern\",\n value: function getPattern() {\n return \"hotpink\";\n }\n }]);\n return DummyShadingPattern;\n }(BaseShadingPattern);\n function getShadingPattern(IR) {\n switch (IR[0]) {\n case \"RadialAxial\":\n return new RadialAxialShadingPattern(IR);\n case \"Mesh\":\n return new MeshShadingPattern(IR);\n case \"Dummy\":\n return new DummyShadingPattern();\n }\n throw new Error(\"Unknown IR type: \".concat(IR[0]));\n }\n var PaintType = {\n COLORED: 1,\n UNCOLORED: 2\n };\n var TilingPattern = /*#__PURE__*/function () {\n function TilingPattern(IR, color, ctx, canvasGraphicsFactory, baseTransform) {\n _classCallCheck(this, TilingPattern);\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 _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 var matrixScale = _util.Util.singularValueDecompose2dScale(this.matrix);\n var curMatrixScale = _util.Util.singularValueDecompose2dScale(this.baseTransform);\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 if (x0 < 0) {\n adjustedX0 = 0;\n adjustedX1 += Math.abs(x0);\n }\n if (y0 < 0) {\n adjustedY0 = 0;\n adjustedY1 += Math.abs(y0);\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 if (size >= maxSize) {\n size = maxSize;\n } else {\n scale = size / step;\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 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 case PaintType.UNCOLORED:\n var cssColor = _util.Util.makeHexColor(color[0], color[1], color[2]);\n context.fillStyle = cssColor;\n context.strokeStyle = cssColor;\n current.fillColor = cssColor;\n current.strokeColor = cssColor;\n break;\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, pathType) {\n var matrix = inverse;\n if (pathType !== PathType.SHADING) {\n matrix = _util.Util.transform(matrix, owner.baseTransform);\n if (this.matrix) {\n matrix = _util.Util.transform(matrix, this.matrix);\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 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 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 return TilingPattern;\n }();\n exports.TilingPattern = TilingPattern;\n\n /***/\n }, /* 142 */\n /***/function (__unused_webpack_module, exports) {\n \"use strict\";\n\n Object.defineProperty(exports, \"__esModule\", {\n value: true\n });\n exports.GlobalWorkerOptions = void 0;\n var GlobalWorkerOptions = Object.create(null);\n exports.GlobalWorkerOptions = GlobalWorkerOptions;\n GlobalWorkerOptions.workerPort = GlobalWorkerOptions.workerPort === undefined ? null : GlobalWorkerOptions.workerPort;\n GlobalWorkerOptions.workerSrc = GlobalWorkerOptions.workerSrc === undefined ? \"\" : GlobalWorkerOptions.workerSrc;\n\n /***/\n }, /* 143 */\n /***/function (__unused_webpack_module, exports, __w_pdfjs_require__) {\n \"use strict\";\n\n Object.defineProperty(exports, \"__esModule\", {\n value: true\n });\n exports.MessageHandler = void 0;\n var _regenerator = _interopRequireDefault(__w_pdfjs_require__(2));\n var _util = __w_pdfjs_require__(4);\n function _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n \"default\": obj\n };\n }\n function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {\n try {\n var info = gen[key](arg);\n var value = info.value;\n } catch (error) {\n reject(error);\n return;\n }\n if (info.done) {\n resolve(value);\n } else {\n Promise.resolve(value).then(_next, _throw);\n }\n }\n function _asyncToGenerator(fn) {\n return function () {\n var self = this,\n args = arguments;\n return new Promise(function (resolve, reject) {\n var gen = fn.apply(self, args);\n function _next(value) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value);\n }\n function _throw(err) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err);\n }\n _next(undefined);\n });\n };\n }\n function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n }\n function _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n }\n function _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n return Constructor;\n }\n function _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") {\n _typeof = function _typeof(obj) {\n return typeof obj;\n };\n } else {\n _typeof = function _typeof(obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n };\n }\n return _typeof(obj);\n }\n var CallbackKind = {\n UNKNOWN: 0,\n DATA: 1,\n ERROR: 2\n };\n var 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 function 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 switch (reason.name) {\n case \"AbortException\":\n return new _util.AbortException(reason.message);\n case \"MissingPDFException\":\n return new _util.MissingPDFException(reason.message);\n case \"PasswordException\":\n return new _util.PasswordException(reason.message, reason.code);\n case \"UnexpectedResponseException\":\n return new _util.UnexpectedResponseException(reason.message, reason.status);\n case \"UnknownErrorException\":\n return new _util.UnknownErrorException(reason.message, reason.details);\n default:\n return new _util.UnknownErrorException(reason.message, reason.toString());\n }\n }\n var MessageHandler = /*#__PURE__*/function () {\n function MessageHandler(sourceName, targetName, comObj) {\n var _this = this;\n _classCallCheck(this, MessageHandler);\n this.sourceName = sourceName;\n this.targetName = targetName;\n this.comObj = comObj;\n this.callbackId = 1;\n this.streamId = 1;\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 this._onComObjOnMessage = function (event) {\n var data = event.data;\n if (data.targetName !== _this.sourceName) {\n return;\n }\n if (data.stream) {\n _this._processStreamMessage(data);\n return;\n }\n if (data.callback) {\n var callbackId = data.callbackId;\n var capability = _this.callbackCapabilities[callbackId];\n if (!capability) {\n throw new Error(\"Cannot resolve callback \".concat(callbackId));\n }\n delete _this.callbackCapabilities[callbackId];\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 return;\n }\n var action = _this.actionHandler[data.action];\n if (!action) {\n throw new Error(\"Unknown action from worker: \".concat(data.action));\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 if (data.streamId) {\n _this._createStreamSink(data);\n return;\n }\n action(data.data);\n };\n comObj.addEventListener(\"message\", this._onComObjOnMessage);\n }\n _createClass(MessageHandler, [{\n key: \"on\",\n value: function on(actionName, handler) {\n var ah = this.actionHandler;\n if (ah[actionName]) {\n throw new Error(\"There is already an actionName called \\\"\".concat(actionName, \"\\\"\"));\n }\n ah[actionName] = handler;\n }\n }, {\n key: \"send\",\n value: function send(actionName, data, transfers) {\n this.comObj.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 try {\n this.comObj.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 return capability.promise;\n }\n }, {\n key: \"sendWithStream\",\n value: function sendWithStream(actionName, data, queueingStrategy, transfers) {\n var _this2 = this;\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 comObj.postMessage({\n sourceName: sourceName,\n targetName: targetName,\n action: actionName,\n streamId: streamId,\n data: data,\n desiredSize: controller.desiredSize\n }, transfers);\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 if (this.isCancelled) {\n return;\n }\n var lastDesiredSize = this.desiredSize;\n this.desiredSize -= size;\n if (lastDesiredSize > 0 && this.desiredSize <= 0) {\n this.sinkCapability = (0, _util.createPromiseCapability)();\n this.ready = this.sinkCapability.promise;\n }\n comObj.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 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 if (this.isCancelled) {\n return;\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 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 break;\n case StreamKind.PULL_COMPLETE:\n if (data.success) {\n streamController.pullCall.resolve();\n } else {\n streamController.pullCall.reject(wrapReason(data.reason));\n }\n break;\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 if (streamSink.desiredSize <= 0 && data.desiredSize > 0) {\n streamSink.sinkCapability.resolve();\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 case StreamKind.ENQUEUE:\n (0, _util.assert)(streamController, \"enqueue should have stream controller\");\n if (streamController.isClosed) {\n break;\n }\n streamController.controller.enqueue(data.chunk);\n break;\n case StreamKind.CLOSE:\n (0, _util.assert)(streamController, \"close should have stream controller\");\n if (streamController.isClosed) {\n break;\n }\n streamController.isClosed = true;\n streamController.controller.close();\n this._deleteStreamController(streamController, streamId);\n break;\n case StreamKind.ERROR:\n (0, _util.assert)(streamController, \"error should have stream controller\");\n streamController.controller.error(wrapReason(data.reason));\n this._deleteStreamController(streamController, streamId);\n break;\n case StreamKind.CANCEL_COMPLETE:\n if (data.success) {\n streamController.cancelCall.resolve();\n } else {\n streamController.cancelCall.reject(wrapReason(data.reason));\n }\n this._deleteStreamController(streamController, streamId);\n break;\n case StreamKind.CANCEL:\n if (!streamSink) {\n break;\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 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 case 2:\n delete this.streamControllers[streamId];\n case 3:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee, this);\n }));\n function _deleteStreamController(_x, _x2) {\n return _deleteStreamController2.apply(this, arguments);\n }\n return _deleteStreamController;\n }()\n }, {\n key: \"destroy\",\n value: function destroy() {\n this.comObj.removeEventListener(\"message\", this._onComObjOnMessage);\n }\n }]);\n return MessageHandler;\n }();\n exports.MessageHandler = MessageHandler;\n\n /***/\n }, /* 144 */\n /***/function (__unused_webpack_module, exports, __w_pdfjs_require__) {\n \"use strict\";\n\n Object.defineProperty(exports, \"__esModule\", {\n value: true\n });\n exports.Metadata = void 0;\n var _util = __w_pdfjs_require__(4);\n function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n }\n function _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n }\n function _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n return Constructor;\n }\n function _classPrivateFieldInitSpec(obj, privateMap, value) {\n _checkPrivateRedeclaration(obj, privateMap);\n privateMap.set(obj, value);\n }\n function _checkPrivateRedeclaration(obj, privateCollection) {\n if (privateCollection.has(obj)) {\n throw new TypeError(\"Cannot initialize the same private elements twice on an object\");\n }\n }\n function _classPrivateFieldGet(receiver, privateMap) {\n var descriptor = _classExtractFieldDescriptor(receiver, privateMap, \"get\");\n return _classApplyDescriptorGet(receiver, descriptor);\n }\n function _classApplyDescriptorGet(receiver, descriptor) {\n if (descriptor.get) {\n return descriptor.get.call(receiver);\n }\n return descriptor.value;\n }\n function _classPrivateFieldSet(receiver, privateMap, value) {\n var descriptor = _classExtractFieldDescriptor(receiver, privateMap, \"set\");\n _classApplyDescriptorSet(receiver, descriptor, value);\n return value;\n }\n function _classExtractFieldDescriptor(receiver, privateMap, action) {\n if (!privateMap.has(receiver)) {\n throw new TypeError(\"attempted to \" + action + \" private field on non-instance\");\n }\n return privateMap.get(receiver);\n }\n function _classApplyDescriptorSet(receiver, descriptor, value) {\n if (descriptor.set) {\n descriptor.set.call(receiver, value);\n } else {\n if (!descriptor.writable) {\n throw new TypeError(\"attempted to set read only private field\");\n }\n descriptor.value = value;\n }\n }\n var _metadataMap = /*#__PURE__*/new WeakMap();\n var _data = /*#__PURE__*/new WeakMap();\n var Metadata = /*#__PURE__*/function () {\n function Metadata(_ref) {\n var parsedData = _ref.parsedData,\n rawData = _ref.rawData;\n _classCallCheck(this, Metadata);\n _classPrivateFieldInitSpec(this, _metadataMap, {\n writable: true,\n value: void 0\n });\n _classPrivateFieldInitSpec(this, _data, {\n writable: true,\n value: void 0\n });\n _classPrivateFieldSet(this, _metadataMap, parsedData);\n _classPrivateFieldSet(this, _data, rawData);\n }\n _createClass(Metadata, [{\n key: \"getRaw\",\n value: function getRaw() {\n return _classPrivateFieldGet(this, _data);\n }\n }, {\n key: \"get\",\n value: function get(name) {\n var _classPrivateFieldGet2;\n return (_classPrivateFieldGet2 = _classPrivateFieldGet(this, _metadataMap).get(name)) !== null && _classPrivateFieldGet2 !== void 0 ? _classPrivateFieldGet2 : null;\n }\n }, {\n key: \"getAll\",\n value: function getAll() {\n return (0, _util.objectFromMap)(_classPrivateFieldGet(this, _metadataMap));\n }\n }, {\n key: \"has\",\n value: function has(name) {\n return _classPrivateFieldGet(this, _metadataMap).has(name);\n }\n }]);\n return Metadata;\n }();\n exports.Metadata = Metadata;\n\n /***/\n }, /* 145 */\n /***/function (__unused_webpack_module, exports, __w_pdfjs_require__) {\n \"use strict\";\n\n Object.defineProperty(exports, \"__esModule\", {\n value: true\n });\n exports.OptionalContentConfig = void 0;\n var _util = __w_pdfjs_require__(4);\n function _createForOfIteratorHelper(o, allowArrayLike) {\n var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"];\n if (!it) {\n if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") {\n if (it) o = it;\n var i = 0;\n var F = function F() {};\n return {\n s: F,\n n: function n() {\n if (i >= o.length) return {\n done: true\n };\n return {\n done: false,\n value: o[i++]\n };\n },\n e: function e(_e) {\n throw _e;\n },\n f: F\n };\n }\n throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n }\n var normalCompletion = true,\n didErr = false,\n err;\n return {\n s: function s() {\n it = it.call(o);\n },\n n: function n() {\n var step = it.next();\n normalCompletion = step.done;\n return step;\n },\n e: function e(_e2) {\n didErr = true;\n err = _e2;\n },\n f: function f() {\n try {\n if (!normalCompletion && it[\"return\"] != null) it[\"return\"]();\n } finally {\n if (didErr) throw err;\n }\n }\n };\n }\n function _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return _arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);\n }\n function _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n for (var i = 0, arr2 = new Array(len); i < len; i++) {\n arr2[i] = arr[i];\n }\n return arr2;\n }\n function _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n }\n function _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n return Constructor;\n }\n function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n }\n var OptionalContentGroup = function OptionalContentGroup(name, intent) {\n _classCallCheck(this, OptionalContentGroup);\n this.visible = true;\n this.name = name;\n this.intent = intent;\n };\n var OptionalContentConfig = /*#__PURE__*/function () {\n function OptionalContentConfig(data) {\n _classCallCheck(this, OptionalContentConfig);\n this.name = null;\n this.creator = null;\n this._order = null;\n this._groups = new Map();\n if (data === null) {\n return;\n }\n this.name = data.name;\n this.creator = data.creator;\n this._order = data.order;\n var _iterator = _createForOfIteratorHelper(data.groups),\n _step;\n try {\n for (_iterator.s(); !(_step = _iterator.n()).done;) {\n var _group = _step.value;\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 if (data.baseState === \"OFF\") {\n var _iterator2 = _createForOfIteratorHelper(this._groups),\n _step2;\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 var _iterator3 = _createForOfIteratorHelper(data.on),\n _step3;\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 var _iterator4 = _createForOfIteratorHelper(data.off),\n _step4;\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 _createClass(OptionalContentConfig, [{\n key: \"_evaluateVisibilityExpression\",\n value: function _evaluateVisibilityExpression(array) {\n var length = array.length;\n if (length < 2) {\n return true;\n }\n var operator = array[0];\n for (var i = 1; i < length; i++) {\n var element = array[i];\n var state = void 0;\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 switch (operator) {\n case \"And\":\n if (!state) {\n return false;\n }\n break;\n case \"Or\":\n if (state) {\n return true;\n }\n break;\n case \"Not\":\n return !state;\n default:\n return true;\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 if (!group) {\n (0, _util.warn)(\"Optional content group not defined.\");\n return true;\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 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 if (!group.policy || group.policy === \"AnyOn\") {\n var _iterator5 = _createForOfIteratorHelper(group.ids),\n _step5;\n try {\n for (_iterator5.s(); !(_step5 = _iterator5.n()).done;) {\n var id = _step5.value;\n if (!this._groups.has(id)) {\n (0, _util.warn)(\"Optional content group not found: \".concat(id));\n return true;\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 return false;\n } else if (group.policy === \"AllOn\") {\n var _iterator6 = _createForOfIteratorHelper(group.ids),\n _step6;\n try {\n for (_iterator6.s(); !(_step6 = _iterator6.n()).done;) {\n var _id = _step6.value;\n if (!this._groups.has(_id)) {\n (0, _util.warn)(\"Optional content group not found: \".concat(_id));\n return true;\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 return true;\n } else if (group.policy === \"AnyOff\") {\n var _iterator7 = _createForOfIteratorHelper(group.ids),\n _step7;\n try {\n for (_iterator7.s(); !(_step7 = _iterator7.n()).done;) {\n var _id2 = _step7.value;\n if (!this._groups.has(_id2)) {\n (0, _util.warn)(\"Optional content group not found: \".concat(_id2));\n return true;\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 return false;\n } else if (group.policy === \"AllOff\") {\n var _iterator8 = _createForOfIteratorHelper(group.ids),\n _step8;\n try {\n for (_iterator8.s(); !(_step8 = _iterator8.n()).done;) {\n var _id3 = _step8.value;\n if (!this._groups.has(_id3)) {\n (0, _util.warn)(\"Optional content group not found: \".concat(_id3));\n return true;\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 return true;\n }\n (0, _util.warn)(\"Unknown optional content policy \".concat(group.policy, \".\"));\n return true;\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 if (!this._groups.has(id)) {\n (0, _util.warn)(\"Optional content group not found: \".concat(id));\n return;\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 if (this._order) {\n return this._order.slice();\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 return OptionalContentConfig;\n }();\n exports.OptionalContentConfig = OptionalContentConfig;\n\n /***/\n }, /* 146 */\n /***/function (__unused_webpack_module, exports, __w_pdfjs_require__) {\n \"use strict\";\n\n Object.defineProperty(exports, \"__esModule\", {\n value: true\n });\n exports.PDFDataTransportStream = void 0;\n var _regenerator = _interopRequireDefault(__w_pdfjs_require__(2));\n var _util = __w_pdfjs_require__(4);\n var _display_utils = __w_pdfjs_require__(1);\n function _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n \"default\": obj\n };\n }\n function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {\n try {\n var info = gen[key](arg);\n var value = info.value;\n } catch (error) {\n reject(error);\n return;\n }\n if (info.done) {\n resolve(value);\n } else {\n Promise.resolve(value).then(_next, _throw);\n }\n }\n function _asyncToGenerator(fn) {\n return function () {\n var self = this,\n args = arguments;\n return new Promise(function (resolve, reject) {\n var gen = fn.apply(self, args);\n function _next(value) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value);\n }\n function _throw(err) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err);\n }\n _next(undefined);\n });\n };\n }\n function _createForOfIteratorHelper(o, allowArrayLike) {\n var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"];\n if (!it) {\n if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") {\n if (it) o = it;\n var i = 0;\n var F = function F() {};\n return {\n s: F,\n n: function n() {\n if (i >= o.length) return {\n done: true\n };\n return {\n done: false,\n value: o[i++]\n };\n },\n e: function e(_e) {\n throw _e;\n },\n f: F\n };\n }\n throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n }\n var normalCompletion = true,\n didErr = false,\n err;\n return {\n s: function s() {\n it = it.call(o);\n },\n n: function n() {\n var step = it.next();\n normalCompletion = step.done;\n return step;\n },\n e: function e(_e2) {\n didErr = true;\n err = _e2;\n },\n f: function f() {\n try {\n if (!normalCompletion && it[\"return\"] != null) it[\"return\"]();\n } finally {\n if (didErr) throw err;\n }\n }\n };\n }\n function _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return _arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);\n }\n function _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n for (var i = 0, arr2 = new Array(len); i < len; i++) {\n arr2[i] = arr[i];\n }\n return arr2;\n }\n function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n }\n function _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n }\n function _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n return Constructor;\n }\n var PDFDataTransportStream = /*#__PURE__*/function () {\n function PDFDataTransportStream(params, pdfDataRangeTransport) {\n var _this = this;\n _classCallCheck(this, PDFDataTransportStream);\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 if ((initialData === null || initialData === void 0 ? void 0 : initialData.length) > 0) {\n var buffer = new Uint8Array(initialData).buffer;\n this._queuedChunks.push(buffer);\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 this._pdfDataRangeTransport.addRangeListener(function (begin, chunk) {\n _this._onReceiveData({\n begin: begin,\n chunk: chunk\n });\n });\n this._pdfDataRangeTransport.addProgressListener(function (loaded, total) {\n _this._onProgress({\n loaded: loaded,\n total: total\n });\n });\n this._pdfDataRangeTransport.addProgressiveReadListener(function (chunk) {\n _this._onReceiveData({\n chunk: chunk\n });\n });\n this._pdfDataRangeTransport.addProgressiveDoneListener(function () {\n _this._onProgressiveDone();\n });\n this._pdfDataRangeTransport.transportReady();\n }\n _createClass(PDFDataTransportStream, [{\n key: \"_onReceiveData\",\n value: function _onReceiveData(args) {\n var buffer = new Uint8Array(args.chunk).buffer;\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 rangeReader._enqueue(buffer);\n return true;\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 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 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 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 this._progressiveDone = true;\n }\n }, {\n key: \"_removeRangeReader\",\n value: function _removeRangeReader(reader) {\n var i = this._rangeReaders.indexOf(reader);\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 var reader = new PDFDataTransportStreamRangeReader(this, begin, end);\n this._pdfDataRangeTransport.requestDataRange(begin, end);\n this._rangeReaders.push(reader);\n return reader;\n }\n }, {\n key: \"cancelAllRequests\",\n value: function cancelAllRequests(reason) {\n if (this._fullRequestReader) {\n this._fullRequestReader.cancel(reason);\n }\n var _iterator = _createForOfIteratorHelper(this._rangeReaders.slice(0)),\n _step;\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 this._pdfDataRangeTransport.abort();\n }\n }]);\n return PDFDataTransportStream;\n }();\n exports.PDFDataTransportStream = PDFDataTransportStream;\n var 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 _classCallCheck(this, PDFDataTransportStreamReader);\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 var _iterator2 = _createForOfIteratorHelper(this._queuedChunks),\n _step2;\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 this._requests = [];\n this._headersReady = Promise.resolve();\n stream._fullRequestReader = this;\n this.onProgress = null;\n }\n _createClass(PDFDataTransportStreamReader, [{\n key: \"_enqueue\",\n value: function _enqueue(chunk) {\n if (this._done) {\n return;\n }\n if (this._requests.length > 0) {\n var requestCapability = this._requests.shift();\n requestCapability.resolve({\n value: chunk,\n done: false\n });\n } else {\n this._queuedChunks.push(chunk);\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 chunk = this._queuedChunks.shift();\n return _context.abrupt(\"return\", {\n value: chunk,\n done: false\n });\n case 3:\n if (!this._done) {\n _context.next = 5;\n break;\n }\n return _context.abrupt(\"return\", {\n value: undefined,\n done: true\n });\n case 5:\n requestCapability = (0, _util.createPromiseCapability)();\n this._requests.push(requestCapability);\n return _context.abrupt(\"return\", requestCapability.promise);\n case 8:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee, this);\n }));\n function read() {\n return _read.apply(this, arguments);\n }\n return read;\n }()\n }, {\n key: \"cancel\",\n value: function cancel(reason) {\n this._done = true;\n var _iterator3 = _createForOfIteratorHelper(this._requests),\n _step3;\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 this._requests.length = 0;\n }\n }, {\n key: \"progressiveDone\",\n value: function progressiveDone() {\n if (this._done) {\n return;\n }\n this._done = true;\n }\n }]);\n return PDFDataTransportStreamReader;\n }();\n var PDFDataTransportStreamRangeReader = /*#__PURE__*/function () {\n function PDFDataTransportStreamRangeReader(stream, begin, end) {\n _classCallCheck(this, PDFDataTransportStreamRangeReader);\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 _createClass(PDFDataTransportStreamRangeReader, [{\n key: \"_enqueue\",\n value: function _enqueue(chunk) {\n if (this._done) {\n return;\n }\n if (this._requests.length === 0) {\n this._queuedChunk = chunk;\n } else {\n var requestsCapability = this._requests.shift();\n requestsCapability.resolve({\n value: chunk,\n done: false\n });\n var _iterator4 = _createForOfIteratorHelper(this._requests),\n _step4;\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 this._requests.length = 0;\n }\n this._done = true;\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 chunk = this._queuedChunk;\n this._queuedChunk = null;\n return _context2.abrupt(\"return\", {\n value: chunk,\n done: false\n });\n case 4:\n if (!this._done) {\n _context2.next = 6;\n break;\n }\n return _context2.abrupt(\"return\", {\n value: undefined,\n done: true\n });\n case 6:\n requestCapability = (0, _util.createPromiseCapability)();\n this._requests.push(requestCapability);\n return _context2.abrupt(\"return\", requestCapability.promise);\n case 9:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2, this);\n }));\n function read() {\n return _read2.apply(this, arguments);\n }\n return read;\n }()\n }, {\n key: \"cancel\",\n value: function cancel(reason) {\n this._done = true;\n var _iterator5 = _createForOfIteratorHelper(this._requests),\n _step5;\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 this._requests.length = 0;\n this._stream._removeRangeReader(this);\n }\n }]);\n return PDFDataTransportStreamRangeReader;\n }();\n\n /***/\n }, /* 147 */\n /***/function (__unused_webpack_module, exports) {\n \"use strict\";\n\n Object.defineProperty(exports, \"__esModule\", {\n value: true\n });\n exports.XfaText = void 0;\n function _createForOfIteratorHelper(o, allowArrayLike) {\n var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"];\n if (!it) {\n if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") {\n if (it) o = it;\n var i = 0;\n var F = function F() {};\n return {\n s: F,\n n: function n() {\n if (i >= o.length) return {\n done: true\n };\n return {\n done: false,\n value: o[i++]\n };\n },\n e: function e(_e) {\n throw _e;\n },\n f: F\n };\n }\n throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n }\n var normalCompletion = true,\n didErr = false,\n err;\n return {\n s: function s() {\n it = it.call(o);\n },\n n: function n() {\n var step = it.next();\n normalCompletion = step.done;\n return step;\n },\n e: function e(_e2) {\n didErr = true;\n err = _e2;\n },\n f: function f() {\n try {\n if (!normalCompletion && it[\"return\"] != null) it[\"return\"]();\n } finally {\n if (didErr) throw err;\n }\n }\n };\n }\n function _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return _arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);\n }\n function _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n for (var i = 0, arr2 = new Array(len); i < len; i++) {\n arr2[i] = arr[i];\n }\n return arr2;\n }\n function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n }\n function _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n }\n function _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n return Constructor;\n }\n var XfaText = /*#__PURE__*/function () {\n function XfaText() {\n _classCallCheck(this, XfaText);\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 function walk(node) {\n var _node$attributes;\n if (!node) {\n return;\n }\n var str = null;\n var name = node.name;\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 if (str !== null) {\n items.push({\n str: str\n });\n }\n if (!node.children) {\n return;\n }\n var _iterator = _createForOfIteratorHelper(node.children),\n _step;\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 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 return XfaText;\n }();\n exports.XfaText = XfaText;\n\n /***/\n }, /* 148 */\n /***/function (__unused_webpack_module, exports, __w_pdfjs_require__) {\n \"use strict\";\n\n function _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") {\n _typeof = function _typeof(obj) {\n return typeof obj;\n };\n } else {\n _typeof = function _typeof(obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n };\n }\n return _typeof(obj);\n }\n Object.defineProperty(exports, \"__esModule\", {\n value: true\n });\n exports.AnnotationLayer = void 0;\n var _util = __w_pdfjs_require__(4);\n var _display_utils = __w_pdfjs_require__(1);\n var _annotation_storage = __w_pdfjs_require__(139);\n var _scripting_utils = __w_pdfjs_require__(149);\n var _xfa_layer = __w_pdfjs_require__(150);\n function _classStaticPrivateMethodGet(receiver, classConstructor, method) {\n _classCheckPrivateStaticAccess(receiver, classConstructor);\n return method;\n }\n function _classCheckPrivateStaticAccess(receiver, classConstructor) {\n if (receiver !== classConstructor) {\n throw new TypeError(\"Private static access of wrong provenance\");\n }\n }\n function _get(target, property, receiver) {\n if (typeof Reflect !== \"undefined\" && Reflect.get) {\n _get = Reflect.get;\n } else {\n _get = function _get(target, property, receiver) {\n var base = _superPropBase(target, property);\n if (!base) return;\n var desc = Object.getOwnPropertyDescriptor(base, property);\n if (desc.get) {\n return desc.get.call(receiver);\n }\n return desc.value;\n };\n }\n return _get(target, property, receiver || target);\n }\n function _superPropBase(object, property) {\n while (!Object.prototype.hasOwnProperty.call(object, property)) {\n object = _getPrototypeOf(object);\n if (object === null) break;\n }\n return object;\n }\n function _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n }\n function _toConsumableArray(arr) {\n return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread();\n }\n function _nonIterableSpread() {\n 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 }\n function _iterableToArray(iter) {\n if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter);\n }\n function _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) return _arrayLikeToArray(arr);\n }\n function _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n writable: true,\n configurable: true\n }\n });\n if (superClass) _setPrototypeOf(subClass, superClass);\n }\n function _setPrototypeOf(o, p) {\n _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n return _setPrototypeOf(o, p);\n }\n function _createSuper(Derived) {\n var hasNativeReflectConstruct = _isNativeReflectConstruct();\n return function _createSuperInternal() {\n var Super = _getPrototypeOf(Derived),\n result;\n if (hasNativeReflectConstruct) {\n var NewTarget = _getPrototypeOf(this).constructor;\n result = Reflect.construct(Super, arguments, NewTarget);\n } else {\n result = Super.apply(this, arguments);\n }\n return _possibleConstructorReturn(this, result);\n };\n }\n function _possibleConstructorReturn(self, call) {\n if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) {\n return call;\n } else if (call !== void 0) {\n throw new TypeError(\"Derived constructors may only return object or undefined\");\n }\n return _assertThisInitialized(self);\n }\n function _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n return self;\n }\n function _isNativeReflectConstruct() {\n if (typeof Reflect === \"undefined\" || !Reflect.construct) return false;\n if (Reflect.construct.sham) return false;\n if (typeof Proxy === \"function\") return true;\n try {\n Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {}));\n return true;\n } catch (e) {\n return false;\n }\n }\n function _getPrototypeOf(o) {\n _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {\n return o.__proto__ || Object.getPrototypeOf(o);\n };\n return _getPrototypeOf(o);\n }\n function _createForOfIteratorHelper(o, allowArrayLike) {\n var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"];\n if (!it) {\n if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") {\n if (it) o = it;\n var i = 0;\n var F = function F() {};\n return {\n s: F,\n n: function n() {\n if (i >= o.length) return {\n done: true\n };\n return {\n done: false,\n value: o[i++]\n };\n },\n e: function e(_e2) {\n throw _e2;\n },\n f: F\n };\n }\n throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n }\n var normalCompletion = true,\n didErr = false,\n err;\n return {\n s: function s() {\n it = it.call(o);\n },\n n: function n() {\n var step = it.next();\n normalCompletion = step.done;\n return step;\n },\n e: function e(_e3) {\n didErr = true;\n err = _e3;\n },\n f: function f() {\n try {\n if (!normalCompletion && it[\"return\"] != null) it[\"return\"]();\n } finally {\n if (didErr) throw err;\n }\n }\n };\n }\n function _slicedToArray(arr, i) {\n return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest();\n }\n function _nonIterableRest() {\n 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 }\n function _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return _arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);\n }\n function _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n for (var i = 0, arr2 = new Array(len); i < len; i++) {\n arr2[i] = arr[i];\n }\n return arr2;\n }\n function _iterableToArrayLimit(arr, i) {\n var _i = arr == null ? null : typeof Symbol !== \"undefined\" && arr[Symbol.iterator] || arr[\"@@iterator\"];\n if (_i == null) return;\n var _arr = [];\n var _n = true;\n var _d = false;\n var _s, _e;\n try {\n for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) {\n _arr.push(_s.value);\n if (i && _arr.length === i) break;\n }\n } catch (err) {\n _d = true;\n _e = err;\n } finally {\n try {\n if (!_n && _i[\"return\"] != null) _i[\"return\"]();\n } finally {\n if (_d) throw _e;\n }\n }\n return _arr;\n }\n function _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n }\n function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n }\n function _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n }\n function _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n return Constructor;\n }\n var DEFAULT_TAB_INDEX = 1000;\n var GetElementsByNameSet = new WeakSet();\n var AnnotationElementFactory = /*#__PURE__*/function () {\n function AnnotationElementFactory() {\n _classCallCheck(this, AnnotationElementFactory);\n }\n _createClass(AnnotationElementFactory, null, [{\n key: \"create\",\n value: function create(parameters) {\n var subtype = parameters.data.annotationType;\n switch (subtype) {\n case _util.AnnotationType.LINK:\n return new LinkAnnotationElement(parameters);\n case _util.AnnotationType.TEXT:\n return new TextAnnotationElement(parameters);\n case _util.AnnotationType.WIDGET:\n var fieldType = parameters.data.fieldType;\n switch (fieldType) {\n case \"Tx\":\n return new TextWidgetAnnotationElement(parameters);\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 return new PushButtonWidgetAnnotationElement(parameters);\n case \"Ch\":\n return new ChoiceWidgetAnnotationElement(parameters);\n }\n return new WidgetAnnotationElement(parameters);\n case _util.AnnotationType.POPUP:\n return new PopupAnnotationElement(parameters);\n case _util.AnnotationType.FREETEXT:\n return new FreeTextAnnotationElement(parameters);\n case _util.AnnotationType.LINE:\n return new LineAnnotationElement(parameters);\n case _util.AnnotationType.SQUARE:\n return new SquareAnnotationElement(parameters);\n case _util.AnnotationType.CIRCLE:\n return new CircleAnnotationElement(parameters);\n case _util.AnnotationType.POLYLINE:\n return new PolylineAnnotationElement(parameters);\n case _util.AnnotationType.CARET:\n return new CaretAnnotationElement(parameters);\n case _util.AnnotationType.INK:\n return new InkAnnotationElement(parameters);\n case _util.AnnotationType.POLYGON:\n return new PolygonAnnotationElement(parameters);\n case _util.AnnotationType.HIGHLIGHT:\n return new HighlightAnnotationElement(parameters);\n case _util.AnnotationType.UNDERLINE:\n return new UnderlineAnnotationElement(parameters);\n case _util.AnnotationType.SQUIGGLY:\n return new SquigglyAnnotationElement(parameters);\n case _util.AnnotationType.STRIKEOUT:\n return new StrikeOutAnnotationElement(parameters);\n case _util.AnnotationType.STAMP:\n return new StampAnnotationElement(parameters);\n case _util.AnnotationType.FILEATTACHMENT:\n return new FileAttachmentAnnotationElement(parameters);\n default:\n return new AnnotationElement(parameters);\n }\n }\n }]);\n return AnnotationElementFactory;\n }();\n var 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 _classCallCheck(this, AnnotationElement);\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 if (isRenderable) {\n this.container = this._createContainer(ignoreBorder);\n }\n if (createQuadrilaterals) {\n this.quadrilaterals = this._createQuadrilaterals(ignoreBorder);\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 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 if (data.hasOwnCanvas) {\n var transform = viewport.transform.slice();\n var _Util$singularValueDe = _util.Util.singularValueDecompose2dScale(transform),\n _Util$singularValueDe2 = _slicedToArray(_Util$singularValueDe, 2),\n scaleX = _Util$singularValueDe2[0],\n scaleY = _Util$singularValueDe2[1];\n width = Math.ceil(width * scaleX);\n height = Math.ceil(height * scaleY);\n rect[0] *= scaleX;\n rect[1] *= scaleY;\n for (var i = 0; i < 4; i++) {\n transform[i] = Math.sign(transform[i]);\n }\n container.style.transform = \"matrix(\".concat(transform.join(\",\"), \")\");\n } else {\n container.style.transform = \"matrix(\".concat(viewport.transform.join(\",\"), \")\");\n }\n container.style.transformOrigin = \"\".concat(-rect[0], \"px \").concat(-rect[1], \"px\");\n if (!ignoreBorder && data.borderStyle.width > 0) {\n container.style.borderWidth = \"\".concat(data.borderStyle.width, \"px\");\n if (data.borderStyle.style !== _util.AnnotationBorderStyleType.UNDERLINE) {\n width -= 2 * data.borderStyle.width;\n height -= 2 * data.borderStyle.width;\n }\n var horizontalRadius = data.borderStyle.horizontalCornerRadius;\n var verticalRadius = data.borderStyle.verticalCornerRadius;\n if (horizontalRadius > 0 || verticalRadius > 0) {\n var radius = \"\".concat(horizontalRadius, \"px / \").concat(verticalRadius, \"px\");\n container.style.borderRadius = radius;\n }\n switch (data.borderStyle.style) {\n case _util.AnnotationBorderStyleType.SOLID:\n container.style.borderStyle = \"solid\";\n break;\n case _util.AnnotationBorderStyleType.DASHED:\n container.style.borderStyle = \"dashed\";\n break;\n case _util.AnnotationBorderStyleType.BEVELED:\n (0, _util.warn)(\"Unimplemented border style: beveled\");\n break;\n case _util.AnnotationBorderStyleType.INSET:\n (0, _util.warn)(\"Unimplemented border style: inset\");\n break;\n case _util.AnnotationBorderStyleType.UNDERLINE:\n container.style.borderBottomStyle = \"solid\";\n break;\n default:\n break;\n }\n var borderColor = data.borderColor || data.color || null;\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 container.style.left = \"\".concat(rect[0], \"px\");\n container.style.top = \"\".concat(rect[1], \"px\");\n if (data.hasOwnCanvas) {\n container.style.width = container.style.height = \"auto\";\n } else {\n container.style.width = \"\".concat(width, \"px\");\n container.style.height = \"\".concat(height, \"px\");\n }\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 if (!this.data.quadPoints) {\n return null;\n }\n var quadrilaterals = [];\n var savedRect = this.data.rect;\n var _iterator = _createForOfIteratorHelper(this.data.quadPoints),\n _step;\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 this.data.rect = savedRect;\n return quadrilaterals;\n }\n }, {\n key: \"_createPopup\",\n value: function _createPopup(trigger, data) {\n var container = this.container;\n if (this.quadrilaterals) {\n trigger = trigger || this.quadrilaterals;\n container = this.quadrilaterals[0];\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 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 richText: data.richText,\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 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 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 if (this._fieldObjects) {\n var fieldObj = this._fieldObjects[name];\n if (fieldObj) {\n var _iterator3 = _createForOfIteratorHelper(fieldObj),\n _step3;\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 if (page === -1) {\n continue;\n }\n if (id === skipId) {\n continue;\n }\n var exportValue = typeof exportValues === \"string\" ? exportValues : null;\n var domElement = document.getElementById(id);\n if (domElement && !GetElementsByNameSet.has(domElement)) {\n (0, _util.warn)(\"_getElementsByName - element not allowed: \".concat(id));\n continue;\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 return fields;\n }\n var _iterator4 = _createForOfIteratorHelper(document.getElementsByName(name)),\n _step4;\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 if (_id === skipId) {\n continue;\n }\n if (!GetElementsByNameSet.has(_domElement)) {\n continue;\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 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 return AnnotationElement;\n }();\n var LinkAnnotationElement = /*#__PURE__*/function (_AnnotationElement) {\n _inherits(LinkAnnotationElement, _AnnotationElement);\n var _super = _createSuper(LinkAnnotationElement);\n function LinkAnnotationElement(parameters) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;\n _classCallCheck(this, LinkAnnotationElement);\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 ignoreBorder: !!(options !== null && options !== void 0 && options.ignoreBorder),\n createQuadrilaterals: true\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 if (data.url) {\n var _linkService$addLinkA;\n if (!linkService.addLinkAttributes) {\n (0, _util.warn)(\"LinkAnnotationElement.render - missing `addLinkAttributes`-method on the `linkService`-instance.\");\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 if (data.actions && (data.actions.Action || data.actions[\"Mouse Up\"] || data.actions[\"Mouse Down\"]) && this.enableScripting && this.hasJSActions) {\n hasClickAction = true;\n this._bindJSAction(link, data);\n }\n if (data.resetForm) {\n this._bindResetFormAction(link, data.resetForm);\n } else if (!hasClickAction) {\n this._bindLink(link, \"\");\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 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 link.href = this.linkService.getDestinationHash(destination);\n link.onclick = function () {\n if (destination) {\n _this.linkService.goToDestination(destination);\n }\n return false;\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 link.href = this.linkService.getAnchorUrl(\"\");\n link.onclick = function () {\n _this2.linkService.executeNamedAction(action);\n return false;\n };\n link.className = \"internalLink\";\n }\n }, {\n key: \"_bindJSAction\",\n value: function _bindJSAction(link, data) {\n var _this3 = this;\n link.href = this.linkService.getAnchorUrl(\"\");\n var map = new Map([[\"Action\", \"onclick\"], [\"Mouse Up\", \"onmouseup\"], [\"Mouse Down\", \"onmousedown\"]]);\n var _loop = function _loop() {\n var name = _Object$keys[_i2];\n var jsName = map.get(name);\n if (!jsName) {\n return \"continue\";\n }\n link[jsName] = function () {\n var _this3$linkService$ev;\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 for (var _i2 = 0, _Object$keys = Object.keys(data.actions); _i2 < _Object$keys.length; _i2++) {\n var _ret = _loop();\n if (_ret === \"continue\") continue;\n }\n if (!link.onclick) {\n link.onclick = function () {\n return false;\n };\n }\n link.className = \"internalLink\";\n }\n }, {\n key: \"_bindResetFormAction\",\n value: function _bindResetFormAction(link, resetForm) {\n var _this4 = this;\n var otherClickAction = link.onclick;\n if (!otherClickAction) {\n link.href = this.linkService.getAnchorUrl(\"\");\n }\n link.className = \"internalLink\";\n if (!this._fieldObjects) {\n (0, _util.warn)(\"_bindResetFormAction - \\\"resetForm\\\" action not supported, \" + \"ensure that the `fieldObjects` parameter is provided.\");\n if (!otherClickAction) {\n link.onclick = function () {\n return false;\n };\n }\n return;\n }\n link.onclick = function () {\n if (otherClickAction) {\n otherClickAction();\n }\n var resetFormFields = resetForm.fields,\n resetFormRefs = resetForm.refs,\n include = resetForm.include;\n var allFields = [];\n if (resetFormFields.length !== 0 || resetFormRefs.length !== 0) {\n var fieldIds = new Set(resetFormRefs);\n var _iterator5 = _createForOfIteratorHelper(resetFormFields),\n _step5;\n try {\n for (_iterator5.s(); !(_step5 = _iterator5.n()).done;) {\n var fieldName = _step5.value;\n var _fields = _this4._fieldObjects[fieldName] || [];\n var _iterator7 = _createForOfIteratorHelper(_fields),\n _step7;\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 for (var _i3 = 0, _Object$values = Object.values(_this4._fieldObjects); _i3 < _Object$values.length; _i3++) {\n var fields = _Object$values[_i3];\n var _iterator6 = _createForOfIteratorHelper(fields),\n _step6;\n try {\n for (_iterator6.s(); !(_step6 = _iterator6.n()).done;) {\n var field = _step6.value;\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 _i4 = 0, _Object$values2 = Object.values(_this4._fieldObjects); _i4 < _Object$values2.length; _i4++) {\n var _fields2 = _Object$values2[_i4];\n allFields.push.apply(allFields, _toConsumableArray(_fields2));\n }\n }\n var storage = _this4.annotationStorage;\n var allIds = [];\n for (var _i5 = 0, _allFields = allFields; _i5 < _allFields.length; _i5++) {\n var _field = _allFields[_i5];\n var _id2 = _field.id;\n allIds.push(_id2);\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 case \"checkbox\":\n case \"radiobutton\":\n {\n var _value = _field.defaultValue === _field.exportValues;\n storage.setValue(_id2, {\n value: _value\n });\n break;\n }\n case \"combobox\":\n case \"listbox\":\n {\n var _value2 = _field.defaultValue || \"\";\n storage.setValue(_id2, {\n value: _value2\n });\n break;\n }\n default:\n continue;\n }\n var domElement = document.getElementById(_id2);\n if (!domElement || !GetElementsByNameSet.has(domElement)) {\n continue;\n }\n domElement.dispatchEvent(new Event(\"resetform\"));\n }\n if (_this4.enableScripting) {\n var _this4$linkService$ev;\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 return false;\n };\n }\n }]);\n return LinkAnnotationElement;\n }(AnnotationElement);\n var TextAnnotationElement = /*#__PURE__*/function (_AnnotationElement2) {\n _inherits(TextAnnotationElement, _AnnotationElement2);\n var _super2 = _createSuper(TextAnnotationElement);\n function TextAnnotationElement(parameters) {\n var _parameters$data$titl, _parameters$data$cont, _parameters$data$rich;\n _classCallCheck(this, TextAnnotationElement);\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 || (_parameters$data$rich = parameters.data.richText) !== null && _parameters$data$rich !== void 0 && _parameters$data$rich.str);\n return _super2.call(this, parameters, {\n isRenderable: isRenderable\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 if (!this.data.hasPopup) {\n this._createPopup(image, this.data);\n }\n this.container.appendChild(image);\n return this.container;\n }\n }]);\n return TextAnnotationElement;\n }(AnnotationElement);\n var WidgetAnnotationElement = /*#__PURE__*/function (_AnnotationElement3) {\n _inherits(WidgetAnnotationElement, _AnnotationElement3);\n var _super3 = _createSuper(WidgetAnnotationElement);\n function WidgetAnnotationElement() {\n _classCallCheck(this, WidgetAnnotationElement);\n return _super3.apply(this, arguments);\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 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 if (baseName.includes(\"mouse\")) {\n element.addEventListener(baseName, function (event) {\n var _this5$linkService$ev;\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 (_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 try {\n for (_iterator8.s(); !(_step8 = _iterator8.n()).done;) {\n var _this$data$actions;\n var _step8$value = _slicedToArray(_step8.value, 2),\n baseName = _step8$value[0],\n eventName = _step8$value[1];\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 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 var commonActions = {\n display: function display(event) {\n var hidden = event.detail.display % 2 === 1;\n event.target.style.visibility = hidden ? \"hidden\" : \"visible\";\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 _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 for (var _i6 = 0, _Object$keys2 = Object.keys(jsEvent.detail); _i6 < _Object$keys2.length; _i6++) {\n var name = _Object$keys2[_i6];\n var action = actions[name] || commonActions[name];\n if (action) {\n action(jsEvent);\n }\n }\n }\n }]);\n return WidgetAnnotationElement;\n }(AnnotationElement);\n var TextWidgetAnnotationElement = /*#__PURE__*/function (_WidgetAnnotationElem) {\n _inherits(TextWidgetAnnotationElement, _WidgetAnnotationElem);\n var _super4 = _createSuper(TextWidgetAnnotationElement);\n function TextWidgetAnnotationElement(parameters) {\n _classCallCheck(this, TextWidgetAnnotationElement);\n var isRenderable = parameters.renderForms || !parameters.data.hasAppearance && !!parameters.data.fieldValue;\n return _super4.call(this, parameters, {\n isRenderable: isRenderable\n });\n }\n _createClass(TextWidgetAnnotationElement, [{\n key: \"setPropertyOnSiblings\",\n value: function setPropertyOnSiblings(base, key, value, keyInStorage) {\n var storage = this.annotationStorage;\n var _iterator9 = _createForOfIteratorHelper(this._getElementsByName(base.name, base.id)),\n _step9;\n try {\n for (_iterator9.s(); !(_step9 = _iterator9.n()).done;) {\n var element = _step9.value;\n if (element.domElement) {\n element.domElement[key] = value;\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 var storage = this.annotationStorage;\n var id = this.data.id;\n this.container.className = \"textWidgetAnnotation\";\n var element = null;\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 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 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 _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 var blurListener = function blurListener(event) {\n if (elementData.formattedValue) {\n event.target.value = elementData.formattedValue;\n }\n event.target.scrollLeft = 0;\n elementData.beforeInputSelectionRange = null;\n };\n if (this.enableScripting && this.hasJSActions) {\n var _this$data$actions2;\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 if (!elementData.formattedValue) {\n event.target.value = elementData.userValue;\n }\n },\n valueAsString: function valueAsString(event) {\n elementData.formattedValue = event.detail.valueAsString || \"\";\n if (event.target !== document.activeElement) {\n event.target.value = elementData.formattedValue;\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 if (selStart >= 0 && selEnd < event.target.value.length) {\n event.target.setSelectionRange(selStart, selEnd);\n }\n }\n };\n _this7._dispatchEventFromSandbox(actions, jsEvent);\n });\n element.addEventListener(\"keydown\", function (event) {\n var _this7$linkService$ev;\n elementData.beforeInputValue = event.target.value;\n var commitKey = -1;\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 if (commitKey === -1) {\n return;\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 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 _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 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 var selStart = -1;\n var selEnd = -1;\n if (elementData.beforeInputSelectionRange) {\n var _elementData$beforeIn = _slicedToArray(elementData.beforeInputSelectionRange, 2);\n selStart = _elementData$beforeIn[0];\n selEnd = _elementData$beforeIn[1];\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 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 if (blurListener) {\n element.addEventListener(\"blur\", blurListener);\n }\n if (this.data.maxLen !== null) {\n element.maxLength = this.data.maxLen;\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 this._setTextStyle(element);\n this._setBackgroundColor(element);\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 if (fontSize) {\n style.fontSize = \"\".concat(fontSize, \"px\");\n }\n style.color = _util.Util.makeHexColor(fontColor[0], fontColor[1], fontColor[2]);\n if (this.data.textAlignment !== null) {\n style.textAlign = TEXT_ALIGNMENT[this.data.textAlignment];\n }\n }\n }]);\n return TextWidgetAnnotationElement;\n }(WidgetAnnotationElement);\n var CheckboxWidgetAnnotationElement = /*#__PURE__*/function (_WidgetAnnotationElem2) {\n _inherits(CheckboxWidgetAnnotationElement, _WidgetAnnotationElem2);\n var _super5 = _createSuper(CheckboxWidgetAnnotationElement);\n function CheckboxWidgetAnnotationElement(parameters) {\n _classCallCheck(this, CheckboxWidgetAnnotationElement);\n return _super5.call(this, parameters, {\n isRenderable: parameters.renderForms\n });\n }\n _createClass(CheckboxWidgetAnnotationElement, [{\n key: \"render\",\n value: function render() {\n var _this8 = this;\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 if (typeof value === \"string\") {\n value = value !== \"Off\";\n storage.setValue(id, {\n value: value\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 if (value) {\n element.setAttribute(\"checked\", true);\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 var _iterator10 = _createForOfIteratorHelper(_this8._getElementsByName(name, id)),\n _step10;\n try {\n for (_iterator10.s(); !(_step10 = _iterator10.n()).done;) {\n var checkbox = _step10.value;\n var curChecked = checked && checkbox.exportValue === data.exportValue;\n if (checkbox.domElement) {\n checkbox.domElement.checked = curChecked;\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 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 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 _this8._dispatchEventFromSandbox(actions, jsEvent);\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 this._setBackgroundColor(element);\n this.container.appendChild(element);\n return this.container;\n }\n }]);\n return CheckboxWidgetAnnotationElement;\n }(WidgetAnnotationElement);\n var RadioButtonWidgetAnnotationElement = /*#__PURE__*/function (_WidgetAnnotationElem3) {\n _inherits(RadioButtonWidgetAnnotationElement, _WidgetAnnotationElem3);\n var _super6 = _createSuper(RadioButtonWidgetAnnotationElement);\n function RadioButtonWidgetAnnotationElement(parameters) {\n _classCallCheck(this, RadioButtonWidgetAnnotationElement);\n return _super6.call(this, parameters, {\n isRenderable: parameters.renderForms\n });\n }\n _createClass(RadioButtonWidgetAnnotationElement, [{\n key: \"render\",\n value: function render() {\n var _this9 = this;\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 if (typeof value === \"string\") {\n value = value !== data.buttonValue;\n storage.setValue(id, {\n value: value\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 if (value) {\n element.setAttribute(\"checked\", true);\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 var _iterator11 = _createForOfIteratorHelper(_this9._getElementsByName(name, id)),\n _step11;\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 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 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 var _iterator12 = _createForOfIteratorHelper(_this9._getElementsByName(event.target.name)),\n _step12;\n try {\n for (_iterator12.s(); !(_step12 = _iterator12.n()).done;) {\n var radio = _step12.value;\n var curChecked = checked && radio.id === id;\n if (radio.domElement) {\n radio.domElement.checked = curChecked;\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 _this9._dispatchEventFromSandbox(actions, jsEvent);\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 this._setBackgroundColor(element);\n this.container.appendChild(element);\n return this.container;\n }\n }]);\n return RadioButtonWidgetAnnotationElement;\n }(WidgetAnnotationElement);\n var PushButtonWidgetAnnotationElement = /*#__PURE__*/function (_LinkAnnotationElemen) {\n _inherits(PushButtonWidgetAnnotationElement, _LinkAnnotationElemen);\n var _super7 = _createSuper(PushButtonWidgetAnnotationElement);\n function PushButtonWidgetAnnotationElement(parameters) {\n _classCallCheck(this, PushButtonWidgetAnnotationElement);\n return _super7.call(this, parameters, {\n ignoreBorder: parameters.data.hasAppearance\n });\n }\n _createClass(PushButtonWidgetAnnotationElement, [{\n key: \"render\",\n value: function render() {\n var container = _get(_getPrototypeOf(PushButtonWidgetAnnotationElement.prototype), \"render\", this).call(this);\n container.className = \"buttonWidgetAnnotation pushButton\";\n if (this.data.alternativeText) {\n container.title = this.data.alternativeText;\n }\n return container;\n }\n }]);\n return PushButtonWidgetAnnotationElement;\n }(LinkAnnotationElement);\n var ChoiceWidgetAnnotationElement = /*#__PURE__*/function (_WidgetAnnotationElem4) {\n _inherits(ChoiceWidgetAnnotationElement, _WidgetAnnotationElem4);\n var _super8 = _createSuper(ChoiceWidgetAnnotationElement);\n function ChoiceWidgetAnnotationElement(parameters) {\n _classCallCheck(this, ChoiceWidgetAnnotationElement);\n return _super8.call(this, parameters, {\n isRenderable: parameters.renderForms\n });\n }\n _createClass(ChoiceWidgetAnnotationElement, [{\n key: \"render\",\n value: function render() {\n var _this10 = this;\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 if (!fontSize) {\n fontSize = 9;\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 if (!this.data.combo) {\n selectElement.size = this.data.options.length;\n if (this.data.multiSelect) {\n selectElement.multiple = true;\n }\n }\n selectElement.addEventListener(\"resetform\", function (event) {\n var defaultValue = _this10.data.defaultFieldValue;\n var _iterator13 = _createForOfIteratorHelper(selectElement.options),\n _step13;\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 var _iterator14 = _createForOfIteratorHelper(this.data.options),\n _step14;\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 if (this.data.combo) {\n optionElement.style.fontSize = fontSizeStyle;\n }\n if (this.data.fieldValue.includes(option.exportValue)) {\n optionElement.setAttribute(\"selected\", true);\n }\n selectElement.appendChild(optionElement);\n }\n } catch (err) {\n _iterator14.e(err);\n } finally {\n _iterator14.f();\n }\n var getValue = function getValue(event, isExport) {\n var name = isExport ? \"value\" : \"textContent\";\n var options = event.target.options;\n if (!event.target.multiple) {\n return options.selectedIndex === -1 ? null : options[options.selectedIndex][name];\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 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 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 var _iterator15 = _createForOfIteratorHelper(selectElement.options),\n _step15;\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 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 if (options.length > 0) {\n var i = Array.prototype.findIndex.call(options, function (option) {\n return option.selected;\n });\n if (i === -1) {\n options[0].selected = true;\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 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 while (selectElement.length !== 0) {\n selectElement.remove(0);\n }\n var _iterator16 = _createForOfIteratorHelper(items),\n _step16;\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 if (selectElement.options.length > 0) {\n selectElement.options[0].selected = true;\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 var _iterator17 = _createForOfIteratorHelper(event.target.options),\n _step17;\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 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 _this10._dispatchEventFromSandbox(actions, jsEvent);\n });\n selectElement.addEventListener(\"input\", function (event) {\n var _this10$linkService$e;\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 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 this._setBackgroundColor(selectElement);\n this.container.appendChild(selectElement);\n return this.container;\n }\n }]);\n return ChoiceWidgetAnnotationElement;\n }(WidgetAnnotationElement);\n var PopupAnnotationElement = /*#__PURE__*/function (_AnnotationElement4) {\n _inherits(PopupAnnotationElement, _AnnotationElement4);\n var _super9 = _createSuper(PopupAnnotationElement);\n function PopupAnnotationElement(parameters) {\n var _parameters$data$titl2, _parameters$data$cont2, _parameters$data$rich2;\n _classCallCheck(this, PopupAnnotationElement);\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 || (_parameters$data$rich2 = parameters.data.richText) !== null && _parameters$data$rich2 !== void 0 && _parameters$data$rich2.str);\n return _super9.call(this, parameters, {\n isRenderable: isRenderable\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 if (IGNORE_TYPES.includes(this.data.parentType)) {\n return this.container;\n }\n var selector = \"[data-annotation-id=\\\"\".concat(this.data.parentId, \"\\\"]\");\n var parentElements = this.layer.querySelectorAll(selector);\n if (parentElements.length === 0) {\n return this.container;\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 richText: this.data.richText\n });\n var page = this.page;\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 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 return PopupAnnotationElement;\n }(AnnotationElement);\n var PopupElement = /*#__PURE__*/function () {\n function PopupElement(parameters) {\n _classCallCheck(this, PopupElement);\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.richText = parameters.richText;\n this.hideWrapper = parameters.hideWrapper || false;\n this.pinned = false;\n }\n _createClass(PopupElement, [{\n key: \"render\",\n value: function render() {\n var _this$richText, _this$contentsObj;\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 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 var title = document.createElement(\"h1\");\n title.dir = this.titleObj.dir;\n title.textContent = this.titleObj.str;\n popup.appendChild(title);\n var dateObject = _display_utils.PDFDateString.toDateObject(this.modificationDate);\n if (dateObject) {\n var modificationDate = document.createElement(\"span\");\n modificationDate.className = \"popupDate\";\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 if ((_this$richText = this.richText) !== null && _this$richText !== void 0 && _this$richText.str && (!((_this$contentsObj = this.contentsObj) !== null && _this$contentsObj !== void 0 && _this$contentsObj.str) || this.contentsObj.str === this.richText.str)) {\n _xfa_layer.XfaLayer.render({\n xfaHtml: this.richText.html,\n intent: \"richText\",\n div: popup\n });\n popup.lastChild.className = \"richText popupContent\";\n } else {\n var contents = this._formatContents(this.contentsObj);\n popup.appendChild(contents);\n }\n if (!Array.isArray(this.trigger)) {\n this.trigger = [this.trigger];\n }\n var _iterator18 = _createForOfIteratorHelper(this.trigger),\n _step18;\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 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.className = \"popupContent\";\n p.dir = dir;\n var lines = str.split(/(?:\\r\\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 if (i < ii - 1) {\n p.appendChild(document.createElement(\"br\"));\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 if (pin) {\n this.pinned = true;\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 if (unpin) {\n this.pinned = false;\n }\n if (!this.hideElement.hidden && !this.pinned) {\n this.hideElement.hidden = true;\n this.container.style.zIndex -= 1;\n }\n }\n }]);\n return PopupElement;\n }();\n var FreeTextAnnotationElement = /*#__PURE__*/function (_AnnotationElement5) {\n _inherits(FreeTextAnnotationElement, _AnnotationElement5);\n var _super10 = _createSuper(FreeTextAnnotationElement);\n function FreeTextAnnotationElement(parameters) {\n var _parameters$data$titl3, _parameters$data$cont3, _parameters$data$rich3;\n _classCallCheck(this, FreeTextAnnotationElement);\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 || (_parameters$data$rich3 = parameters.data.richText) !== null && _parameters$data$rich3 !== void 0 && _parameters$data$rich3.str);\n return _super10.call(this, parameters, {\n isRenderable: isRenderable,\n ignoreBorder: true\n });\n }\n _createClass(FreeTextAnnotationElement, [{\n key: \"render\",\n value: function render() {\n this.container.className = \"freeTextAnnotation\";\n if (!this.data.hasPopup) {\n this._createPopup(null, this.data);\n }\n return this.container;\n }\n }]);\n return FreeTextAnnotationElement;\n }(AnnotationElement);\n var LineAnnotationElement = /*#__PURE__*/function (_AnnotationElement6) {\n _inherits(LineAnnotationElement, _AnnotationElement6);\n var _super11 = _createSuper(LineAnnotationElement);\n function LineAnnotationElement(parameters) {\n var _parameters$data$titl4, _parameters$data$cont4, _parameters$data$rich4;\n _classCallCheck(this, LineAnnotationElement);\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 || (_parameters$data$rich4 = parameters.data.richText) !== null && _parameters$data$rich4 !== void 0 && _parameters$data$rich4.str);\n return _super11.call(this, parameters, {\n isRenderable: isRenderable,\n ignoreBorder: true\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 line.setAttribute(\"fill\", \"transparent\");\n svg.appendChild(line);\n this.container.append(svg);\n this._createPopup(line, data);\n return this.container;\n }\n }]);\n return LineAnnotationElement;\n }(AnnotationElement);\n var SquareAnnotationElement = /*#__PURE__*/function (_AnnotationElement7) {\n _inherits(SquareAnnotationElement, _AnnotationElement7);\n var _super12 = _createSuper(SquareAnnotationElement);\n function SquareAnnotationElement(parameters) {\n var _parameters$data$titl5, _parameters$data$cont5, _parameters$data$rich5;\n _classCallCheck(this, SquareAnnotationElement);\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 || (_parameters$data$rich5 = parameters.data.richText) !== null && _parameters$data$rich5 !== void 0 && _parameters$data$rich5.str);\n return _super12.call(this, parameters, {\n isRenderable: isRenderable,\n ignoreBorder: true\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\", \"transparent\");\n svg.appendChild(square);\n this.container.append(svg);\n this._createPopup(square, data);\n return this.container;\n }\n }]);\n return SquareAnnotationElement;\n }(AnnotationElement);\n var CircleAnnotationElement = /*#__PURE__*/function (_AnnotationElement8) {\n _inherits(CircleAnnotationElement, _AnnotationElement8);\n var _super13 = _createSuper(CircleAnnotationElement);\n function CircleAnnotationElement(parameters) {\n var _parameters$data$titl6, _parameters$data$cont6, _parameters$data$rich6;\n _classCallCheck(this, CircleAnnotationElement);\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 || (_parameters$data$rich6 = parameters.data.richText) !== null && _parameters$data$rich6 !== void 0 && _parameters$data$rich6.str);\n return _super13.call(this, parameters, {\n isRenderable: isRenderable,\n ignoreBorder: true\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\", \"transparent\");\n svg.appendChild(circle);\n this.container.append(svg);\n this._createPopup(circle, data);\n return this.container;\n }\n }]);\n return CircleAnnotationElement;\n }(AnnotationElement);\n var PolylineAnnotationElement = /*#__PURE__*/function (_AnnotationElement9) {\n _inherits(PolylineAnnotationElement, _AnnotationElement9);\n var _super14 = _createSuper(PolylineAnnotationElement);\n function PolylineAnnotationElement(parameters) {\n var _parameters$data$titl7, _parameters$data$cont7, _parameters$data$rich7;\n var _this11;\n _classCallCheck(this, PolylineAnnotationElement);\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 || (_parameters$data$rich7 = parameters.data.richText) !== null && _parameters$data$rich7 !== void 0 && _parameters$data$rich7.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 _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 var _iterator19 = _createForOfIteratorHelper(data.vertices),\n _step19;\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 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\", \"transparent\");\n svg.appendChild(polyline);\n this.container.append(svg);\n this._createPopup(polyline, data);\n return this.container;\n }\n }]);\n return PolylineAnnotationElement;\n }(AnnotationElement);\n var PolygonAnnotationElement = /*#__PURE__*/function (_PolylineAnnotationEl) {\n _inherits(PolygonAnnotationElement, _PolylineAnnotationEl);\n var _super15 = _createSuper(PolygonAnnotationElement);\n function PolygonAnnotationElement(parameters) {\n var _this12;\n _classCallCheck(this, PolygonAnnotationElement);\n _this12 = _super15.call(this, parameters);\n _this12.containerClassName = \"polygonAnnotation\";\n _this12.svgElementName = \"svg:polygon\";\n return _this12;\n }\n return PolygonAnnotationElement;\n }(PolylineAnnotationElement);\n var CaretAnnotationElement = /*#__PURE__*/function (_AnnotationElement10) {\n _inherits(CaretAnnotationElement, _AnnotationElement10);\n var _super16 = _createSuper(CaretAnnotationElement);\n function CaretAnnotationElement(parameters) {\n var _parameters$data$titl8, _parameters$data$cont8, _parameters$data$rich8;\n _classCallCheck(this, CaretAnnotationElement);\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 || (_parameters$data$rich8 = parameters.data.richText) !== null && _parameters$data$rich8 !== void 0 && _parameters$data$rich8.str);\n return _super16.call(this, parameters, {\n isRenderable: isRenderable,\n ignoreBorder: true\n });\n }\n _createClass(CaretAnnotationElement, [{\n key: \"render\",\n value: function render() {\n this.container.className = \"caretAnnotation\";\n if (!this.data.hasPopup) {\n this._createPopup(null, this.data);\n }\n return this.container;\n }\n }]);\n return CaretAnnotationElement;\n }(AnnotationElement);\n var InkAnnotationElement = /*#__PURE__*/function (_AnnotationElement11) {\n _inherits(InkAnnotationElement, _AnnotationElement11);\n var _super17 = _createSuper(InkAnnotationElement);\n function InkAnnotationElement(parameters) {\n var _parameters$data$titl9, _parameters$data$cont9, _parameters$data$rich9;\n var _this13;\n _classCallCheck(this, InkAnnotationElement);\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 || (_parameters$data$rich9 = parameters.data.richText) !== null && _parameters$data$rich9 !== void 0 && _parameters$data$rich9.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 _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 var _iterator20 = _createForOfIteratorHelper(data.inkLists),\n _step20;\n try {\n for (_iterator20.s(); !(_step20 = _iterator20.n()).done;) {\n var inkList = _step20.value;\n var points = [];\n var _iterator21 = _createForOfIteratorHelper(inkList),\n _step21;\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 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\", \"transparent\");\n this._createPopup(polyline, data);\n svg.appendChild(polyline);\n }\n } catch (err) {\n _iterator20.e(err);\n } finally {\n _iterator20.f();\n }\n this.container.append(svg);\n return this.container;\n }\n }]);\n return InkAnnotationElement;\n }(AnnotationElement);\n var HighlightAnnotationElement = /*#__PURE__*/function (_AnnotationElement12) {\n _inherits(HighlightAnnotationElement, _AnnotationElement12);\n var _super18 = _createSuper(HighlightAnnotationElement);\n function HighlightAnnotationElement(parameters) {\n var _parameters$data$titl10, _parameters$data$cont10, _parameters$data$rich10;\n _classCallCheck(this, HighlightAnnotationElement);\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 || (_parameters$data$rich10 = parameters.data.richText) !== null && _parameters$data$rich10 !== void 0 && _parameters$data$rich10.str);\n return _super18.call(this, parameters, {\n isRenderable: isRenderable,\n ignoreBorder: true,\n createQuadrilaterals: true\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 if (this.quadrilaterals) {\n return this._renderQuadrilaterals(\"highlightAnnotation\");\n }\n this.container.className = \"highlightAnnotation\";\n return this.container;\n }\n }]);\n return HighlightAnnotationElement;\n }(AnnotationElement);\n var UnderlineAnnotationElement = /*#__PURE__*/function (_AnnotationElement13) {\n _inherits(UnderlineAnnotationElement, _AnnotationElement13);\n var _super19 = _createSuper(UnderlineAnnotationElement);\n function UnderlineAnnotationElement(parameters) {\n var _parameters$data$titl11, _parameters$data$cont11, _parameters$data$rich11;\n _classCallCheck(this, UnderlineAnnotationElement);\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 || (_parameters$data$rich11 = parameters.data.richText) !== null && _parameters$data$rich11 !== void 0 && _parameters$data$rich11.str);\n return _super19.call(this, parameters, {\n isRenderable: isRenderable,\n ignoreBorder: true,\n createQuadrilaterals: true\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 if (this.quadrilaterals) {\n return this._renderQuadrilaterals(\"underlineAnnotation\");\n }\n this.container.className = \"underlineAnnotation\";\n return this.container;\n }\n }]);\n return UnderlineAnnotationElement;\n }(AnnotationElement);\n var SquigglyAnnotationElement = /*#__PURE__*/function (_AnnotationElement14) {\n _inherits(SquigglyAnnotationElement, _AnnotationElement14);\n var _super20 = _createSuper(SquigglyAnnotationElement);\n function SquigglyAnnotationElement(parameters) {\n var _parameters$data$titl12, _parameters$data$cont12, _parameters$data$rich12;\n _classCallCheck(this, SquigglyAnnotationElement);\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 || (_parameters$data$rich12 = parameters.data.richText) !== null && _parameters$data$rich12 !== void 0 && _parameters$data$rich12.str);\n return _super20.call(this, parameters, {\n isRenderable: isRenderable,\n ignoreBorder: true,\n createQuadrilaterals: true\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 if (this.quadrilaterals) {\n return this._renderQuadrilaterals(\"squigglyAnnotation\");\n }\n this.container.className = \"squigglyAnnotation\";\n return this.container;\n }\n }]);\n return SquigglyAnnotationElement;\n }(AnnotationElement);\n var StrikeOutAnnotationElement = /*#__PURE__*/function (_AnnotationElement15) {\n _inherits(StrikeOutAnnotationElement, _AnnotationElement15);\n var _super21 = _createSuper(StrikeOutAnnotationElement);\n function StrikeOutAnnotationElement(parameters) {\n var _parameters$data$titl13, _parameters$data$cont13, _parameters$data$rich13;\n _classCallCheck(this, StrikeOutAnnotationElement);\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 || (_parameters$data$rich13 = parameters.data.richText) !== null && _parameters$data$rich13 !== void 0 && _parameters$data$rich13.str);\n return _super21.call(this, parameters, {\n isRenderable: isRenderable,\n ignoreBorder: true,\n createQuadrilaterals: true\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 if (this.quadrilaterals) {\n return this._renderQuadrilaterals(\"strikeoutAnnotation\");\n }\n this.container.className = \"strikeoutAnnotation\";\n return this.container;\n }\n }]);\n return StrikeOutAnnotationElement;\n }(AnnotationElement);\n var StampAnnotationElement = /*#__PURE__*/function (_AnnotationElement16) {\n _inherits(StampAnnotationElement, _AnnotationElement16);\n var _super22 = _createSuper(StampAnnotationElement);\n function StampAnnotationElement(parameters) {\n var _parameters$data$titl14, _parameters$data$cont14, _parameters$data$rich14;\n _classCallCheck(this, StampAnnotationElement);\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 || (_parameters$data$rich14 = parameters.data.richText) !== null && _parameters$data$rich14 !== void 0 && _parameters$data$rich14.str);\n return _super22.call(this, parameters, {\n isRenderable: isRenderable,\n ignoreBorder: true\n });\n }\n _createClass(StampAnnotationElement, [{\n key: \"render\",\n value: function render() {\n this.container.className = \"stampAnnotation\";\n if (!this.data.hasPopup) {\n this._createPopup(null, this.data);\n }\n return this.container;\n }\n }]);\n return StampAnnotationElement;\n }(AnnotationElement);\n var FileAttachmentAnnotationElement = /*#__PURE__*/function (_AnnotationElement17) {\n _inherits(FileAttachmentAnnotationElement, _AnnotationElement17);\n var _super23 = _createSuper(FileAttachmentAnnotationElement);\n function FileAttachmentAnnotationElement(parameters) {\n var _this14$linkService$e;\n var _this14;\n _classCallCheck(this, FileAttachmentAnnotationElement);\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 _createClass(FileAttachmentAnnotationElement, [{\n key: \"render\",\n value: function render() {\n var _this$data$titleObj, _this$data$contentsOb;\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 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 || this.data.richText)) {\n this._createPopup(trigger, this.data);\n }\n this.container.appendChild(trigger);\n return this.container;\n }\n }, {\n key: \"_download\",\n value: function _download() {\n var _this$downloadManager;\n (_this$downloadManager = this.downloadManager) === null || _this$downloadManager === void 0 ? void 0 : _this$downloadManager.openOrDownloadData(this.container, this.content, this.filename);\n }\n }]);\n return FileAttachmentAnnotationElement;\n }(AnnotationElement);\n var AnnotationLayer = /*#__PURE__*/function () {\n function AnnotationLayer() {\n _classCallCheck(this, AnnotationLayer);\n }\n _createClass(AnnotationLayer, null, [{\n key: \"render\",\n value: function render(parameters) {\n var sortedAnnotations = [],\n popupAnnotations = [];\n var _iterator22 = _createForOfIteratorHelper(parameters.annotations),\n _step22;\n try {\n for (_iterator22.s(); !(_step22 = _iterator22.n()).done;) {\n var _data = _step22.value;\n if (!_data) {\n continue;\n }\n if (_data.annotationType === _util.AnnotationType.POPUP) {\n popupAnnotations.push(_data);\n continue;\n }\n sortedAnnotations.push(_data);\n }\n } catch (err) {\n _iterator22.e(err);\n } finally {\n _iterator22.f();\n }\n if (popupAnnotations.length) {\n sortedAnnotations.push.apply(sortedAnnotations, popupAnnotations);\n }\n var div = parameters.div;\n for (var _i7 = 0, _sortedAnnotations = sortedAnnotations; _i7 < _sortedAnnotations.length; _i7++) {\n var data = _sortedAnnotations[_i7];\n var element = AnnotationElementFactory.create({\n data: data,\n layer: 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 if (element.isRenderable) {\n var rendered = element.render();\n if (data.hidden) {\n rendered.style.visibility = \"hidden\";\n }\n if (Array.isArray(rendered)) {\n var _iterator23 = _createForOfIteratorHelper(rendered),\n _step23;\n try {\n for (_iterator23.s(); !(_step23 = _iterator23.n()).done;) {\n var renderedElement = _step23.value;\n 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 div.prepend(rendered);\n } else {\n div.appendChild(rendered);\n }\n }\n }\n }\n _classStaticPrivateMethodGet(this, AnnotationLayer, _setAnnotationCanvasMap).call(this, div, parameters.annotationCanvasMap);\n }\n }, {\n key: \"update\",\n value: function update(parameters) {\n var page = parameters.page,\n viewport = parameters.viewport,\n annotations = parameters.annotations,\n annotationCanvasMap = parameters.annotationCanvasMap,\n div = parameters.div;\n var transform = viewport.transform;\n var matrix = \"matrix(\".concat(transform.join(\",\"), \")\");\n var scale, ownMatrix;\n var _iterator24 = _createForOfIteratorHelper(annotations),\n _step24;\n try {\n for (_iterator24.s(); !(_step24 = _iterator24.n()).done;) {\n var data = _step24.value;\n var elements = div.querySelectorAll(\"[data-annotation-id=\\\"\".concat(data.id, \"\\\"]\"));\n if (elements) {\n var _iterator25 = _createForOfIteratorHelper(elements),\n _step25;\n try {\n for (_iterator25.s(); !(_step25 = _iterator25.n()).done;) {\n var element = _step25.value;\n if (data.hasOwnCanvas) {\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 if (!ownMatrix) {\n scale = Math.abs(transform[0] || transform[1]);\n var ownTransform = transform.slice();\n for (var i = 0; i < 4; i++) {\n ownTransform[i] = Math.sign(ownTransform[i]);\n }\n ownMatrix = \"matrix(\".concat(ownTransform.join(\",\"), \")\");\n }\n var left = rect[0] * scale;\n var top = rect[1] * scale;\n element.style.left = \"\".concat(left, \"px\");\n element.style.top = \"\".concat(top, \"px\");\n element.style.transformOrigin = \"\".concat(-left, \"px \").concat(-top, \"px\");\n element.style.transform = ownMatrix;\n } else {\n element.style.transform = matrix;\n }\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 _classStaticPrivateMethodGet(this, AnnotationLayer, _setAnnotationCanvasMap).call(this, div, annotationCanvasMap);\n div.hidden = false;\n }\n }]);\n return AnnotationLayer;\n }();\n exports.AnnotationLayer = AnnotationLayer;\n function _setAnnotationCanvasMap(div, annotationCanvasMap) {\n if (!annotationCanvasMap) {\n return;\n }\n var _iterator26 = _createForOfIteratorHelper(annotationCanvasMap),\n _step26;\n try {\n for (_iterator26.s(); !(_step26 = _iterator26.n()).done;) {\n var _step26$value = _slicedToArray(_step26.value, 2),\n id = _step26$value[0],\n canvas = _step26$value[1];\n var element = div.querySelector(\"[data-annotation-id=\\\"\".concat(id, \"\\\"]\"));\n if (!element) {\n continue;\n }\n var firstChild = element.firstChild;\n if (firstChild.nodeName === \"CANVAS\") {\n element.replaceChild(canvas, firstChild);\n } else {\n element.insertBefore(canvas, firstChild);\n }\n }\n } catch (err) {\n _iterator26.e(err);\n } finally {\n _iterator26.f();\n }\n annotationCanvasMap.clear();\n }\n\n /***/\n }, /* 149 */\n /***/function (__unused_webpack_module, exports) {\n \"use strict\";\n\n Object.defineProperty(exports, \"__esModule\", {\n value: true\n });\n exports.ColorConverters = void 0;\n function _slicedToArray(arr, i) {\n return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest();\n }\n function _nonIterableRest() {\n 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 }\n function _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return _arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);\n }\n function _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n for (var i = 0, arr2 = new Array(len); i < len; i++) {\n arr2[i] = arr[i];\n }\n return arr2;\n }\n function _iterableToArrayLimit(arr, i) {\n var _i = arr == null ? null : typeof Symbol !== \"undefined\" && arr[Symbol.iterator] || arr[\"@@iterator\"];\n if (_i == null) return;\n var _arr = [];\n var _n = true;\n var _d = false;\n var _s, _e;\n try {\n for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) {\n _arr.push(_s.value);\n if (i && _arr.length === i) break;\n }\n } catch (err) {\n _d = true;\n _e = err;\n } finally {\n try {\n if (!_n && _i[\"return\"] != null) _i[\"return\"]();\n } finally {\n if (_d) throw _e;\n }\n }\n return _arr;\n }\n function _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n }\n function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n }\n function _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n }\n function _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n return Constructor;\n }\n function makeColorComp(n) {\n return Math.floor(Math.max(0, Math.min(1, n)) * 255).toString(16).padStart(2, \"0\");\n }\n var ColorConverters = /*#__PURE__*/function () {\n function ColorConverters() {\n _classCallCheck(this, ColorConverters);\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 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 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 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 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 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 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 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 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 return ColorConverters;\n }();\n exports.ColorConverters = ColorConverters;\n\n /***/\n }, /* 150 */\n /***/function (__unused_webpack_module, exports, __w_pdfjs_require__) {\n \"use strict\";\n\n Object.defineProperty(exports, \"__esModule\", {\n value: true\n });\n exports.XfaLayer = void 0;\n var _util = __w_pdfjs_require__(4);\n var _xfa_text = __w_pdfjs_require__(147);\n function _slicedToArray(arr, i) {\n return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest();\n }\n function _nonIterableRest() {\n 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 }\n function _iterableToArrayLimit(arr, i) {\n var _i = arr == null ? null : typeof Symbol !== \"undefined\" && arr[Symbol.iterator] || arr[\"@@iterator\"];\n if (_i == null) return;\n var _arr = [];\n var _n = true;\n var _d = false;\n var _s, _e;\n try {\n for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) {\n _arr.push(_s.value);\n if (i && _arr.length === i) break;\n }\n } catch (err) {\n _d = true;\n _e = err;\n } finally {\n try {\n if (!_n && _i[\"return\"] != null) _i[\"return\"]();\n } finally {\n if (_d) throw _e;\n }\n }\n return _arr;\n }\n function _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n }\n function _createForOfIteratorHelper(o, allowArrayLike) {\n var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"];\n if (!it) {\n if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") {\n if (it) o = it;\n var i = 0;\n var F = function F() {};\n return {\n s: F,\n n: function n() {\n if (i >= o.length) return {\n done: true\n };\n return {\n done: false,\n value: o[i++]\n };\n },\n e: function e(_e2) {\n throw _e2;\n },\n f: F\n };\n }\n throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n }\n var normalCompletion = true,\n didErr = false,\n err;\n return {\n s: function s() {\n it = it.call(o);\n },\n n: function n() {\n var step = it.next();\n normalCompletion = step.done;\n return step;\n },\n e: function e(_e3) {\n didErr = true;\n err = _e3;\n },\n f: function f() {\n try {\n if (!normalCompletion && it[\"return\"] != null) it[\"return\"]();\n } finally {\n if (didErr) throw err;\n }\n }\n };\n }\n function _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return _arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);\n }\n function _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n for (var i = 0, arr2 = new Array(len); i < len; i++) {\n arr2[i] = arr[i];\n }\n return arr2;\n }\n function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n }\n function _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n }\n function _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n return Constructor;\n }\n var XfaLayer = /*#__PURE__*/function () {\n function XfaLayer() {\n _classCallCheck(this, XfaLayer);\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 switch (element.name) {\n case \"textarea\":\n if (storedData.value !== null) {\n html.textContent = storedData.value;\n }\n if (intent === \"print\") {\n break;\n }\n html.addEventListener(\"input\", function (event) {\n storage.setValue(id, {\n value: event.target.value\n });\n });\n break;\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 if (intent === \"print\") {\n break;\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 if (intent === \"print\") {\n break;\n }\n html.addEventListener(\"input\", function (event) {\n storage.setValue(id, {\n value: event.target.value\n });\n });\n }\n break;\n case \"select\":\n if (storedData.value !== null) {\n var _iterator = _createForOfIteratorHelper(element.children),\n _step;\n try {\n for (_iterator.s(); !(_step = _iterator.n()).done;) {\n var option = _step.value;\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 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 if (attributes.type === \"radio\") {\n attributes.name = \"\".concat(attributes.name, \"-\").concat(intent);\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 if (value === null || value === undefined || key === \"dataId\") {\n continue;\n }\n if (key !== \"style\") {\n if (key === \"textContent\") {\n html.textContent = value;\n } else if (key === \"class\") {\n if (value.length) {\n html.setAttribute(key, value.join(\" \"));\n }\n } else {\n if (isHTMLAnchorElement && (key === \"href\" || key === \"newWindow\")) {\n continue;\n }\n html.setAttribute(key, value);\n }\n } else {\n Object.assign(html.style, value);\n }\n }\n if (isHTMLAnchorElement) {\n var _linkService$addLinkA;\n if (!linkService.addLinkAttributes) {\n (0, _util.warn)(\"XfaLayer.setAttribute - missing `addLinkAttributes`-method on the `linkService`-instance.\");\n }\n (_linkService$addLinkA = linkService.addLinkAttributes) === null || _linkService$addLinkA === void 0 ? void 0 : _linkService$addLinkA.call(linkService, html, attributes.href, attributes.newWindow);\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.xfaHtml;\n var intent = parameters.intent || \"display\";\n var rootHtml = document.createElement(root.name);\n if (root.attributes) {\n this.setAttributes({\n html: rootHtml,\n element: root,\n intent: intent,\n linkService: linkService\n });\n }\n var stack = [[root, -1, rootHtml]];\n var rootDiv = parameters.div;\n rootDiv.appendChild(rootHtml);\n if (parameters.viewport) {\n var transform = \"matrix(\".concat(parameters.viewport.transform.join(\",\"), \")\");\n rootDiv.style.transform = transform;\n }\n if (intent !== \"richText\") {\n rootDiv.setAttribute(\"class\", \"xfaLayer xfaFont\");\n }\n var textDivs = [];\n while (stack.length > 0) {\n var _child$attributes;\n var _stack = _slicedToArray(stack[stack.length - 1], 3),\n parent = _stack[0],\n i = _stack[1],\n html = _stack[2];\n if (i + 1 === parent.children.length) {\n stack.pop();\n continue;\n }\n var child = parent.children[++stack[stack.length - 1][1]];\n if (child === null) {\n continue;\n }\n var name = child.name;\n if (name === \"#text\") {\n var node = document.createTextNode(child.value);\n textDivs.push(node);\n html.appendChild(node);\n continue;\n }\n var childHtml = void 0;\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 html.appendChild(childHtml);\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 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 if (_xfa_text.XfaText.shouldBuildText(name)) {\n textDivs.push(_node);\n }\n childHtml.appendChild(_node);\n }\n }\n var _iterator2 = _createForOfIteratorHelper(rootDiv.querySelectorAll(\".xfaNonInteractive input, .xfaNonInteractive textarea\")),\n _step2;\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 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 return XfaLayer;\n }();\n exports.XfaLayer = XfaLayer;\n\n /***/\n }, /* 151 */\n /***/function (__unused_webpack_module, exports, __w_pdfjs_require__) {\n \"use strict\";\n\n Object.defineProperty(exports, \"__esModule\", {\n value: true\n });\n exports.renderTextLayer = renderTextLayer;\n var _util = __w_pdfjs_require__(4);\n function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n }\n function _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n }\n function _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n return Constructor;\n }\n function _createForOfIteratorHelper(o, allowArrayLike) {\n var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"];\n if (!it) {\n if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") {\n if (it) o = it;\n var i = 0;\n var F = function F() {};\n return {\n s: F,\n n: function n() {\n if (i >= o.length) return {\n done: true\n };\n return {\n done: false,\n value: o[i++]\n };\n },\n e: function e(_e) {\n throw _e;\n },\n f: F\n };\n }\n throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n }\n var normalCompletion = true,\n didErr = false,\n err;\n return {\n s: function s() {\n it = it.call(o);\n },\n n: function n() {\n var step = it.next();\n normalCompletion = step.done;\n return step;\n },\n e: function e(_e2) {\n didErr = true;\n err = _e2;\n },\n f: function f() {\n try {\n if (!normalCompletion && it[\"return\"] != null) it[\"return\"]();\n } finally {\n if (didErr) throw err;\n }\n }\n };\n }\n function _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return _arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);\n }\n function _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n for (var i = 0, arr2 = new Array(len); i < len; i++) {\n arr2[i] = arr[i];\n }\n return arr2;\n }\n var MAX_TEXT_DIVS_TO_RENDER = 100000;\n var DEFAULT_FONT_SIZE = 30;\n var DEFAULT_FONT_ASCENT = 0.8;\n var ascentCache = new Map();\n var AllWhitespaceRegexp = /^\\s+$/g;\n function getAscent(fontFamily, ctx) {\n var cachedAscent = ascentCache.get(fontFamily);\n if (cachedAscent) {\n return cachedAscent;\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 if (ascent) {\n ctx.restore();\n var ratio = ascent / (ascent + descent);\n ascentCache.set(fontFamily, ratio);\n return ratio;\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 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 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 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 ctx.restore();\n if (ascent) {\n var _ratio = ascent / (ascent + descent);\n ascentCache.set(fontFamily, _ratio);\n return _ratio;\n }\n ascentCache.set(fontFamily, DEFAULT_FONT_ASCENT);\n return DEFAULT_FONT_ASCENT;\n }\n function 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 task._textDivs.push(textDiv);\n var tx = _util.Util.transform(task._viewport.transform, geom.transform);\n var angle = Math.atan2(tx[1], tx[0]);\n var style = styles[geom.fontName];\n if (style.vertical) {\n angle += Math.PI / 2;\n }\n var fontHeight = Math.hypot(tx[2], tx[3]);\n var fontAscent = fontHeight * getAscent(style.fontFamily, ctx);\n var left, top;\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 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 if (task._fontInspectorEnabled) {\n textDiv.dataset.fontName = geom.fontName;\n }\n if (angle !== 0) {\n textDivProperties.angle = angle * (180 / Math.PI);\n }\n var shouldScaleText = false;\n if (geom.str.length > 1 || task._enhanceTextSelection && AllWhitespaceRegexp.test(geom.str)) {\n shouldScaleText = true;\n } else if (geom.str !== \" \" && geom.transform[0] !== geom.transform[3]) {\n var absScaleX = Math.abs(geom.transform[0]),\n absScaleY = Math.abs(geom.transform[3]);\n if (absScaleX !== absScaleY && Math.max(absScaleX, absScaleY) / Math.min(absScaleX, absScaleY) > 1.5) {\n shouldScaleText = true;\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 task._textDivProperties.set(textDiv, textDivProperties);\n if (task._textContentStream) {\n task._layoutText(textDiv);\n }\n if (task._enhanceTextSelection && textDivProperties.hasText) {\n var angleCos = 1,\n angleSin = 0;\n if (angle !== 0) {\n angleCos = Math.cos(angle);\n angleSin = Math.sin(angle);\n }\n var divWidth = (style.vertical ? geom.height : geom.width) * task._viewport.scale;\n var divHeight = fontHeight;\n var m, b;\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 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 function render(task) {\n if (task._canceled) {\n return;\n }\n var textDivs = task._textDivs;\n var capability = task._capability;\n var textDivsLength = textDivs.length;\n if (textDivsLength > MAX_TEXT_DIVS_TO_RENDER) {\n task._renderingDone = true;\n capability.resolve();\n return;\n }\n if (!task._textContentStream) {\n for (var i = 0; i < textDivsLength; i++) {\n task._layoutText(textDivs[i]);\n }\n }\n task._renderingDone = true;\n capability.resolve();\n }\n function findPositiveMin(ts, offset, count) {\n var result = 0;\n for (var i = 0; i < count; i++) {\n var t = ts[offset++];\n if (t > 0) {\n result = result ? Math.min(t, result) : t;\n }\n }\n return result;\n }\n function expand(task) {\n var bounds = task._bounds;\n var viewport = task._viewport;\n var expanded = expandBounds(viewport.width, viewport.height, bounds);\n for (var i = 0; i < expanded.length; i++) {\n var div = bounds[i].div;\n var divProperties = task._textDivProperties.get(div);\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 task._textDivProperties.set(div, divProperties);\n continue;\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 for (var j = 0, jj = points.length; j < jj; j++) {\n var t = _util.Util.applyTransform(points[j], m);\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 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 task._textDivProperties.set(div, divProperties);\n }\n }\n function 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 var _iterator = _createForOfIteratorHelper(bounds),\n _step;\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 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 var _iterator2 = _createForOfIteratorHelper(bounds),\n _step2;\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 return expanded;\n }\n function 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 var _iterator3 = _createForOfIteratorHelper(bounds),\n _step3;\n try {\n for (_iterator3.s(); !(_step3 = _iterator3.n()).done;) {\n var boundary = _step3.value;\n var i = 0;\n while (i < horizon.length && horizon[i].end <= boundary.y1) {\n i++;\n }\n var j = horizon.length - 1;\n while (j >= 0 && horizon[j].start >= boundary.y2) {\n j--;\n }\n var _horizonPart = void 0,\n _affectedBoundary = void 0;\n var q = void 0,\n k = void 0,\n maxXNew = -Infinity;\n for (q = i; q <= j; q++) {\n _horizonPart = horizon[q];\n _affectedBoundary = _horizonPart.boundary;\n var xNew = void 0;\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 if (xNew > maxXNew) {\n maxXNew = xNew;\n }\n }\n boundary.x1New = maxXNew;\n for (q = i; q <= j; q++) {\n _horizonPart = horizon[q];\n _affectedBoundary = _horizonPart.boundary;\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 var changedHorizon = [];\n var lastBoundary = null;\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 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 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 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 for (q = i; q <= j; q++) {\n _horizonPart = horizon[q];\n _affectedBoundary = _horizonPart.boundary;\n if (_affectedBoundary.x2New !== undefined) {\n continue;\n }\n var used = false;\n for (k = i - 1; !used && k >= 0 && horizon[k].start >= _affectedBoundary.y1; k--) {\n used = horizon[k].boundary === _affectedBoundary;\n }\n for (k = j + 1; !used && k < horizon.length && horizon[k].end <= _affectedBoundary.y2; k++) {\n used = horizon[k].boundary === _affectedBoundary;\n }\n for (k = 0; !used && k < changedHorizon.length; k++) {\n used = changedHorizon[k].boundary === _affectedBoundary;\n }\n if (!used) {\n _affectedBoundary.x2New = maxXNew;\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 for (var _i3 = 0, _horizon = horizon; _i3 < _horizon.length; _i3++) {\n var horizonPart = _horizon[_i3];\n var affectedBoundary = horizonPart.boundary;\n if (affectedBoundary.x2New === undefined) {\n affectedBoundary.x2New = Math.max(width, affectedBoundary.x2);\n }\n }\n }\n var TextLayerRenderTask = /*#__PURE__*/function () {\n function TextLayerRenderTask(_ref) {\n var _globalThis$FontInspe,\n _this = this;\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 _classCallCheck(this, TextLayerRenderTask);\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 this._capability.promise[\"finally\"](function () {\n if (!_this._enhanceTextSelection) {\n _this._textDivProperties = null;\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 _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 if (this._reader) {\n this._reader.cancel(new _util.AbortException(\"TextLayer task cancelled.\"))[\"catch\"](function () {});\n this._reader = null;\n }\n if (this._renderTimer !== null) {\n clearTimeout(this._renderTimer);\n this._renderTimer = null;\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 this._container.classList.add(\"markedContent\");\n if (items[i].id !== null) {\n this._container.setAttribute(\"id\", \"\".concat(items[i].id));\n }\n parent.appendChild(this._container);\n } else if (items[i].type === \"endMarkedContent\") {\n this._container = this._container.parentNode;\n }\n continue;\n }\n this._textContentItemsStr.push(items[i].str);\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 var transform = \"\";\n if (textDivProperties.canvasWidth !== 0 && textDivProperties.hasText) {\n var _textDiv$style = textDiv.style,\n fontSize = _textDiv$style.fontSize,\n fontFamily = _textDiv$style.fontFamily;\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 var _this$_layoutTextCtx$ = this._layoutTextCtx.measureText(textDiv.textContent),\n width = _this$_layoutTextCtx$.width;\n if (width > 0) {\n var scale = textDivProperties.canvasWidth / width;\n if (this._enhanceTextSelection) {\n textDivProperties.scale = scale;\n }\n transform = \"scaleX(\".concat(scale, \")\");\n }\n }\n if (textDivProperties.angle !== 0) {\n transform = \"rotate(\".concat(textDivProperties.angle, \"deg) \").concat(transform);\n }\n if (transform.length > 0) {\n if (this._enhanceTextSelection) {\n textDivProperties.originalTransform = transform;\n }\n textDiv.style.transform = transform;\n }\n if (textDivProperties.hasText) {\n this._container.appendChild(textDiv);\n }\n if (textDivProperties.hasEOL) {\n var br = document.createElement(\"br\");\n br.setAttribute(\"role\", \"presentation\");\n this._container.appendChild(br);\n }\n }\n }, {\n key: \"_render\",\n value: function _render() {\n var _this2 = this;\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 var canvas = this._document.createElement(\"canvas\");\n canvas.height = canvas.width = DEFAULT_FONT_SIZE;\n canvas.mozOpaque = true;\n this._layoutTextCtx = canvas.getContext(\"2d\", {\n alpha: false\n });\n if (this._textContent) {\n var textItems = this._textContent.items;\n var textStyles = this._textContent.styles;\n this._processItems(textItems, textStyles);\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 if (done) {\n capability.resolve();\n return;\n }\n Object.assign(styleCache, value.styles);\n _this2._processItems(value.items, styleCache);\n pump();\n }, capability.reject);\n };\n this._reader = this._textContentStream.getReader();\n pump();\n } else {\n throw new Error('Neither \"textContent\" nor \"textContentStream\" parameters specified.');\n }\n capability.promise.then(function () {\n styleCache = null;\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 if (!this._enhanceTextSelection || !this._renderingDone) {\n return;\n }\n if (this._bounds !== null) {\n expand(this);\n this._bounds = null;\n }\n var transformBuf = [],\n paddingBuf = [];\n for (var i = 0, ii = this._textDivs.length; i < ii; i++) {\n var div = this._textDivs[i];\n var divProps = this._textDivProperties.get(div);\n if (!divProps.hasText) {\n continue;\n }\n if (expandDivs) {\n transformBuf.length = 0;\n paddingBuf.length = 0;\n if (divProps.originalTransform) {\n transformBuf.push(divProps.originalTransform);\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 if (divProps.paddingRight > 0) {\n paddingBuf.push(\"\".concat(divProps.paddingRight / divProps.scale, \"px\"));\n } else {\n paddingBuf.push(0);\n }\n if (divProps.paddingBottom > 0) {\n paddingBuf.push(\"\".concat(divProps.paddingBottom, \"px\"));\n } else {\n paddingBuf.push(0);\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 div.style.padding = paddingBuf.join(\" \");\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 return TextLayerRenderTask;\n }();\n function 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 task._render(renderParameters.timeout);\n return task;\n }\n\n /***/\n }, /* 152 */\n /***/function (__unused_webpack_module, exports, __w_pdfjs_require__) {\n \"use strict\";\n\n Object.defineProperty(exports, \"__esModule\", {\n value: true\n });\n exports.SVGGraphics = void 0;\n var _util = __w_pdfjs_require__(4);\n var _display_utils = __w_pdfjs_require__(1);\n var _is_node = __w_pdfjs_require__(6);\n function _toConsumableArray(arr) {\n return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread();\n }\n function _nonIterableSpread() {\n 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 }\n function _iterableToArray(iter) {\n if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter);\n }\n function _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) return _arrayLikeToArray(arr);\n }\n function _slicedToArray(arr, i) {\n return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest();\n }\n function _nonIterableRest() {\n 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 }\n function _iterableToArrayLimit(arr, i) {\n var _i = arr == null ? null : typeof Symbol !== \"undefined\" && arr[Symbol.iterator] || arr[\"@@iterator\"];\n if (_i == null) return;\n var _arr = [];\n var _n = true;\n var _d = false;\n var _s, _e;\n try {\n for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) {\n _arr.push(_s.value);\n if (i && _arr.length === i) break;\n }\n } catch (err) {\n _d = true;\n _e = err;\n } finally {\n try {\n if (!_n && _i[\"return\"] != null) _i[\"return\"]();\n } finally {\n if (_d) throw _e;\n }\n }\n return _arr;\n }\n function _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n }\n function _createForOfIteratorHelper(o, allowArrayLike) {\n var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"];\n if (!it) {\n if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") {\n if (it) o = it;\n var i = 0;\n var F = function F() {};\n return {\n s: F,\n n: function n() {\n if (i >= o.length) return {\n done: true\n };\n return {\n done: false,\n value: o[i++]\n };\n },\n e: function e(_e2) {\n throw _e2;\n },\n f: F\n };\n }\n throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n }\n var normalCompletion = true,\n didErr = false,\n err;\n return {\n s: function s() {\n it = it.call(o);\n },\n n: function n() {\n var step = it.next();\n normalCompletion = step.done;\n return step;\n },\n e: function e(_e3) {\n didErr = true;\n err = _e3;\n },\n f: function f() {\n try {\n if (!normalCompletion && it[\"return\"] != null) it[\"return\"]();\n } finally {\n if (didErr) throw err;\n }\n }\n };\n }\n function _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return _arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);\n }\n function _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n for (var i = 0, arr2 = new Array(len); i < len; i++) {\n arr2[i] = arr[i];\n }\n return arr2;\n }\n function _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n }\n function _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n return Constructor;\n }\n function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n }\n var SVGGraphics = function SVGGraphics() {\n _classCallCheck(this, SVGGraphics);\n (0, _util.unreachable)(\"Not implemented: SVGGraphics\");\n };\n exports.SVGGraphics = SVGGraphics;\n {\n var opListToTree = function opListToTree(opList) {\n var opTree = [];\n var tmp = [];\n var _iterator = _createForOfIteratorHelper(opList),\n _step;\n try {\n for (_iterator.s(); !(_step = _iterator.n()).done;) {\n var opListElement = _step.value;\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 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 return opTree;\n };\n var pf = function pf(value) {\n if (Number.isInteger(value)) {\n return value.toString();\n }\n var s = value.toFixed(10);\n var i = s.length - 1;\n if (s[i] !== \"0\") {\n return s;\n }\n do {\n i--;\n } while (s[i] === \"0\");\n return s.substring(0, s[i] === \".\" ? i : i + 1);\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 return \"scale(\".concat(pf(m[0]), \" \").concat(pf(m[3]), \")\");\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 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 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 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 for (var i = 0; i < 256; i++) {\n var c = i;\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 crcTable[i] = c;\n }\n function crc32(data, start, end) {\n var crc = -1;\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 return crc ^ -1;\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 function adler32(data, start, end) {\n var a = 1;\n var b = 0;\n for (var _i2 = start; _i2 < end; ++_i2) {\n a = (a + (data[_i2] & 0xff)) % 65521;\n b = (b + a) % 65521;\n }\n return b << 16 | a;\n }\n function deflateSync(literals) {\n if (!_is_node.isNodeJS) {\n return deflateSyncUncompressed(literals);\n }\n try {\n var input;\n if (parseInt(process.versions.node) >= 8) {\n input = literals;\n } else {\n input = Buffer.from(literals);\n }\n var output = require(\"zlib\").deflateSync(input, {\n level: 9\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 return deflateSyncUncompressed(literals);\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 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 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 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 switch (kind) {\n case _util.ImageKind.GRAYSCALE_1BPP:\n colorType = 0;\n bitDepth = 1;\n lineSize = width + 7 >> 3;\n break;\n case _util.ImageKind.RGB_24BPP:\n colorType = 2;\n bitDepth = 8;\n lineSize = width * 3;\n break;\n case _util.ImageKind.RGBA_32BPP:\n colorType = 6;\n bitDepth = 8;\n lineSize = width * 4;\n break;\n default:\n throw new Error(\"invalid format\");\n }\n var literals = new Uint8Array((1 + lineSize) * height);\n var offsetLiterals = 0,\n offsetBytes = 0;\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 if (kind === _util.ImageKind.GRAYSCALE_1BPP && isMask) {\n offsetLiterals = 0;\n for (var _y = 0; _y < height; _y++) {\n offsetLiterals++;\n for (var _i3 = 0; _i3 < lineSize; _i3++) {\n literals[offsetLiterals++] ^= 0xff;\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 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 var SVGExtraState = /*#__PURE__*/function () {\n function SVGExtraState() {\n _classCallCheck(this, SVGExtraState);\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 _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 return SVGExtraState;\n }();\n var clipCount = 0;\n var maskCount = 0;\n var shadingCount = 0;\n exports.SVGGraphics = SVGGraphics = /*#__PURE__*/function () {\n function SVGGraphics(commonObjs, objs) {\n var forceDataSchema = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n _classCallCheck(this, SVGGraphics);\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 for (var op in _util.OPS) {\n this._operatorIdMapping[_util.OPS[op]] = op;\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 var fnArray = operatorList.fnArray;\n var argsArray = operatorList.argsArray;\n for (var i = 0, ii = fnArray.length; i < ii; i++) {\n if (fnArray[i] !== _util.OPS.dependency) {\n continue;\n }\n var _iterator2 = _createForOfIteratorHelper(argsArray[i]),\n _step2;\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 _this.current.dependencies.push(promise);\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 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 this.viewport = viewport;\n var svgElement = this._initialize(viewport);\n return this.loadDependencies(operatorList).then(function () {\n _this2.transformMatrix = _util.IDENTITY_MATRIX;\n _this2.executeOpTree(_this2.convertOpList(operatorList));\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 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 return opListToTree(opList);\n }\n }, {\n key: \"executeOpTree\",\n value: function executeOpTree(opTree) {\n var _iterator3 = _createForOfIteratorHelper(opTree),\n _step3;\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 switch (fnId | 0) {\n case _util.OPS.beginText:\n this.beginText();\n break;\n case _util.OPS.dependency:\n break;\n case _util.OPS.setLeading:\n this.setLeading(args);\n break;\n case _util.OPS.setLeadingMoveText:\n this.setLeadingMoveText(args[0], args[1]);\n break;\n case _util.OPS.setFont:\n this.setFont(args);\n break;\n case _util.OPS.showText:\n this.showText(args[0]);\n break;\n case _util.OPS.showSpacedText:\n this.showText(args[0]);\n break;\n case _util.OPS.endText:\n this.endText();\n break;\n case _util.OPS.moveText:\n this.moveText(args[0], args[1]);\n break;\n case _util.OPS.setCharSpacing:\n this.setCharSpacing(args[0]);\n break;\n case _util.OPS.setWordSpacing:\n this.setWordSpacing(args[0]);\n break;\n case _util.OPS.setHScale:\n this.setHScale(args[0]);\n break;\n case _util.OPS.setTextMatrix:\n this.setTextMatrix(args[0], args[1], args[2], args[3], args[4], args[5]);\n break;\n case _util.OPS.setTextRise:\n this.setTextRise(args[0]);\n break;\n case _util.OPS.setTextRenderingMode:\n this.setTextRenderingMode(args[0]);\n break;\n case _util.OPS.setLineWidth:\n this.setLineWidth(args[0]);\n break;\n case _util.OPS.setLineJoin:\n this.setLineJoin(args[0]);\n break;\n case _util.OPS.setLineCap:\n this.setLineCap(args[0]);\n break;\n case _util.OPS.setMiterLimit:\n this.setMiterLimit(args[0]);\n break;\n case _util.OPS.setFillRGBColor:\n this.setFillRGBColor(args[0], args[1], args[2]);\n break;\n case _util.OPS.setStrokeRGBColor:\n this.setStrokeRGBColor(args[0], args[1], args[2]);\n break;\n case _util.OPS.setStrokeColorN:\n this.setStrokeColorN(args);\n break;\n case _util.OPS.setFillColorN:\n this.setFillColorN(args);\n break;\n case _util.OPS.shadingFill:\n this.shadingFill(args[0]);\n break;\n case _util.OPS.setDash:\n this.setDash(args[0], args[1]);\n break;\n case _util.OPS.setRenderingIntent:\n this.setRenderingIntent(args[0]);\n break;\n case _util.OPS.setFlatness:\n this.setFlatness(args[0]);\n break;\n case _util.OPS.setGState:\n this.setGState(args[0]);\n break;\n case _util.OPS.fill:\n this.fill();\n break;\n case _util.OPS.eoFill:\n this.eoFill();\n break;\n case _util.OPS.stroke:\n this.stroke();\n break;\n case _util.OPS.fillStroke:\n this.fillStroke();\n break;\n case _util.OPS.eoFillStroke:\n this.eoFillStroke();\n break;\n case _util.OPS.clip:\n this.clip(\"nonzero\");\n break;\n case _util.OPS.eoClip:\n this.clip(\"evenodd\");\n break;\n case _util.OPS.paintSolidColorImageMask:\n this.paintSolidColorImageMask();\n break;\n case _util.OPS.paintImageXObject:\n this.paintImageXObject(args[0]);\n break;\n case _util.OPS.paintInlineImageXObject:\n this.paintInlineImageXObject(args[0]);\n break;\n case _util.OPS.paintImageMaskXObject:\n this.paintImageMaskXObject(args[0]);\n break;\n case _util.OPS.paintFormXObjectBegin:\n this.paintFormXObjectBegin(args[0], args[1]);\n break;\n case _util.OPS.paintFormXObjectEnd:\n this.paintFormXObjectEnd();\n break;\n case _util.OPS.closePath:\n this.closePath();\n break;\n case _util.OPS.closeStroke:\n this.closeStroke();\n break;\n case _util.OPS.closeFillStroke:\n this.closeFillStroke();\n break;\n case _util.OPS.closeEOFillStroke:\n this.closeEOFillStroke();\n break;\n case _util.OPS.nextLine:\n this.nextLine();\n break;\n case _util.OPS.transform:\n this.transform(args[0], args[1], args[2], args[3], args[4], args[5]);\n break;\n case _util.OPS.constructPath:\n this.constructPath(args[0], args[1]);\n break;\n case _util.OPS.endPath:\n this.endPath();\n break;\n case 92:\n this.group(opTreeElement.items);\n break;\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 if (fontSize === 0) {\n return;\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 var _iterator4 = _createForOfIteratorHelper(glyphs),\n _step4;\n try {\n for (_iterator4.s(); !(_step4 = _iterator4.n()).done;) {\n var glyph = _step4.value;\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 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 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 if (glyph.isInFont || font.missingFile) {\n current.xcoords.push(current.x + scaledX);\n if (vertical) {\n current.ycoords.push(-current.y + scaledY);\n }\n current.tspan.textContent += character;\n } else {}\n var charWidth = void 0;\n if (vertical) {\n charWidth = width * widthAdvanceScale - spacing * fontDirection;\n } else {\n charWidth = width * widthAdvanceScale + spacing * fontDirection;\n }\n x += charWidth;\n }\n } catch (err) {\n _iterator4.e(err);\n } finally {\n _iterator4.f();\n }\n current.tspan.setAttributeNS(null, \"x\", current.xcoords.map(pf).join(\" \"));\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 if (vertical) {\n current.y -= x;\n } else {\n current.x += x * textHScale;\n }\n current.tspan.setAttributeNS(null, \"font-family\", current.fontFamily);\n current.tspan.setAttributeNS(null, \"font-size\", \"\".concat(pf(current.fontSize), \"px\"));\n if (current.fontStyle !== SVG_DEFAULTS.fontStyle) {\n current.tspan.setAttributeNS(null, \"font-style\", current.fontStyle);\n }\n if (current.fontWeight !== SVG_DEFAULTS.fontWeight) {\n current.tspan.setAttributeNS(null, \"font-weight\", current.fontWeight);\n }\n var fillStrokeMode = current.textRenderingMode & _util.TextRenderingMode.FILL_STROKE_MASK;\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 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 if (fillStrokeMode === _util.TextRenderingMode.STROKE || fillStrokeMode === _util.TextRenderingMode.FILL_STROKE) {\n var lineWidthScale = 1 / (current.textMatrixScale || 1);\n this._setStrokeAttributes(current.tspan, lineWidthScale);\n }\n var textMatrix = current.textMatrix;\n if (current.textRise !== 0) {\n textMatrix = textMatrix.slice();\n textMatrix[5] += current.textRise;\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 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 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 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 if (this.embedFonts && !fontObj.missingFile && !this.embeddedFonts[fontObj.loadedName]) {\n this.addFontStyle(fontObj);\n this.embeddedFonts[fontObj.loadedName] = fontObj;\n }\n current.fontMatrix = fontObj.fontMatrix || _util.FONT_IDENTITY_MATRIX;\n var bold = \"normal\";\n if (fontObj.black) {\n bold = \"900\";\n } else if (fontObj.bold) {\n bold = \"bold\";\n }\n var italic = fontObj.italic ? \"italic\" : \"normal\";\n if (size < 0) {\n size = -size;\n current.fontDirection = -1;\n } else {\n current.fontDirection = 1;\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 var current = this.current;\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 var inv = _util.Util.inverseTransform(this.transformMatrix);\n var bl = _util.Util.applyTransform([0, 0], inv);\n var br = _util.Util.applyTransform([0, height], inv);\n var ul = _util.Util.applyTransform([width, 0], inv);\n var ur = _util.Util.applyTransform([width, height], inv);\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 if (this.current.fillAlpha < 1) {\n rect.setAttributeNS(null, \"fill-opacity\", this.current.fillAlpha);\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 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 var _args$ = _slicedToArray(args[4], 4),\n x0 = _args$[0],\n y0 = _args$[1],\n x1 = _args$[2],\n y1 = _args$[3];\n var xstep = args[5];\n var ystep = args[6];\n var paintType = args[7];\n var tilingId = \"shading\".concat(shadingCount++);\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 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 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 if (paintType === 2) {\n var cssColor = _util.Util.makeHexColor.apply(_util.Util, _toConsumableArray(color));\n this.current.fillColor = cssColor;\n this.current.strokeColor = cssColor;\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 if (typeof args === \"string\") {\n args = this.objs.get(args);\n }\n switch (args[0]) {\n case \"RadialAxial\":\n var shadingId = \"shading\".concat(shadingCount++);\n var colorStops = args[3];\n var gradient;\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 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 default:\n throw new Error(\"Unknown RadialAxial type: \".concat(args[1]));\n }\n var _iterator5 = _createForOfIteratorHelper(colorStops),\n _step5;\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 this.defs.appendChild(gradient);\n return \"url(#\".concat(shadingId, \")\");\n case \"Mesh\":\n (0, _util.warn)(\"Unimplemented pattern Mesh\");\n return null;\n case \"Dummy\":\n return \"hotpink\";\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 var _iterator6 = _createForOfIteratorHelper(ops),\n _step6;\n try {\n for (_iterator6.s(); !(_step6 = _iterator6.n()).done;) {\n var op = _step6.value;\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 case _util.OPS.moveTo:\n x = args[j++];\n y = args[j++];\n d.push(\"M\", pf(x), pf(y));\n break;\n case _util.OPS.lineTo:\n x = args[j++];\n y = args[j++];\n d.push(\"L\", pf(x), pf(y));\n break;\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 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 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 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 d = d.join(\" \");\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 this._ensureTransformGroup().appendChild(current.path);\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 if (!this.pendingClip) {\n return;\n }\n if (!current.element) {\n this.pendingClip = null;\n return;\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 if (this.pendingClip === \"evenodd\") {\n clipElement.setAttributeNS(null, \"clip-rule\", \"evenodd\");\n } else {\n clipElement.setAttributeNS(null, \"clip-rule\", \"nonzero\");\n }\n this.pendingClip = null;\n clipPath.appendChild(clipElement);\n this.defs.appendChild(clipPath);\n if (current.activeClipUrl) {\n current.clipGroup = null;\n var _iterator7 = _createForOfIteratorHelper(this.extraStack),\n _step7;\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 clipPath.setAttributeNS(null, \"clip-path\", current.activeClipUrl);\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 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 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 switch (key) {\n case \"LW\":\n this.setLineWidth(value);\n break;\n case \"LC\":\n this.setLineCap(value);\n break;\n case \"LJ\":\n this.setLineJoin(value);\n break;\n case \"ML\":\n this.setMiterLimit(value);\n break;\n case \"D\":\n this.setDash(value[0], value[1]);\n break;\n case \"RI\":\n this.setRenderingIntent(value);\n break;\n case \"FL\":\n this.setFlatness(value);\n break;\n case \"Font\":\n this.setFont(value);\n break;\n case \"CA\":\n this.setStrokeAlpha(value);\n break;\n case \"ca\":\n this.setFillAlpha(value);\n break;\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 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 if (current.element) {\n this._setStrokeAttributes(current.element);\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 if (lineWidthScale !== 1 && dashArray.length > 0) {\n dashArray = dashArray.map(function (value) {\n return lineWidthScale * value;\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 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 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 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 if (!imgData) {\n (0, _util.warn)(\"Dependent image with object ID \".concat(objId, \" is not ready yet\"));\n return;\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 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 this._ensureTransformGroup().appendChild(rect);\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 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 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 if (this.current.activeClipUrl) {\n this._ensureClipGroup().appendChild(this.tgrp);\n } else {\n this.svg.appendChild(this.tgrp);\n }\n }\n return this.tgrp;\n }\n }]);\n return SVGGraphics;\n }();\n }\n\n /***/\n }, /* 153 */\n /***/function (__unused_webpack_module, exports, __w_pdfjs_require__) {\n \"use strict\";\n\n function _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") {\n _typeof = function _typeof(obj) {\n return typeof obj;\n };\n } else {\n _typeof = function _typeof(obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n };\n }\n return _typeof(obj);\n }\n Object.defineProperty(exports, \"__esModule\", {\n value: true\n });\n exports.PDFNodeStream = void 0;\n var _regenerator = _interopRequireDefault(__w_pdfjs_require__(2));\n var _util = __w_pdfjs_require__(4);\n var _network_utils = __w_pdfjs_require__(154);\n function _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n \"default\": obj\n };\n }\n function _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n writable: true,\n configurable: true\n }\n });\n if (superClass) _setPrototypeOf(subClass, superClass);\n }\n function _setPrototypeOf(o, p) {\n _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n return _setPrototypeOf(o, p);\n }\n function _createSuper(Derived) {\n var hasNativeReflectConstruct = _isNativeReflectConstruct();\n return function _createSuperInternal() {\n var Super = _getPrototypeOf(Derived),\n result;\n if (hasNativeReflectConstruct) {\n var NewTarget = _getPrototypeOf(this).constructor;\n result = Reflect.construct(Super, arguments, NewTarget);\n } else {\n result = Super.apply(this, arguments);\n }\n return _possibleConstructorReturn(this, result);\n };\n }\n function _possibleConstructorReturn(self, call) {\n if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) {\n return call;\n } else if (call !== void 0) {\n throw new TypeError(\"Derived constructors may only return object or undefined\");\n }\n return _assertThisInitialized(self);\n }\n function _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n return self;\n }\n function _isNativeReflectConstruct() {\n if (typeof Reflect === \"undefined\" || !Reflect.construct) return false;\n if (Reflect.construct.sham) return false;\n if (typeof Proxy === \"function\") return true;\n try {\n Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {}));\n return true;\n } catch (e) {\n return false;\n }\n }\n function _getPrototypeOf(o) {\n _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {\n return o.__proto__ || Object.getPrototypeOf(o);\n };\n return _getPrototypeOf(o);\n }\n function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {\n try {\n var info = gen[key](arg);\n var value = info.value;\n } catch (error) {\n reject(error);\n return;\n }\n if (info.done) {\n resolve(value);\n } else {\n Promise.resolve(value).then(_next, _throw);\n }\n }\n function _asyncToGenerator(fn) {\n return function () {\n var self = this,\n args = arguments;\n return new Promise(function (resolve, reject) {\n var gen = fn.apply(self, args);\n function _next(value) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value);\n }\n function _throw(err) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err);\n }\n _next(undefined);\n });\n };\n }\n function _createForOfIteratorHelper(o, allowArrayLike) {\n var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"];\n if (!it) {\n if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") {\n if (it) o = it;\n var i = 0;\n var F = function F() {};\n return {\n s: F,\n n: function n() {\n if (i >= o.length) return {\n done: true\n };\n return {\n done: false,\n value: o[i++]\n };\n },\n e: function e(_e) {\n throw _e;\n },\n f: F\n };\n }\n throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n }\n var normalCompletion = true,\n didErr = false,\n err;\n return {\n s: function s() {\n it = it.call(o);\n },\n n: function n() {\n var step = it.next();\n normalCompletion = step.done;\n return step;\n },\n e: function e(_e2) {\n didErr = true;\n err = _e2;\n },\n f: function f() {\n try {\n if (!normalCompletion && it[\"return\"] != null) it[\"return\"]();\n } finally {\n if (didErr) throw err;\n }\n }\n };\n }\n function _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return _arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);\n }\n function _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n for (var i = 0, arr2 = new Array(len); i < len; i++) {\n arr2[i] = arr[i];\n }\n return arr2;\n }\n function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n }\n function _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n }\n function _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n return Constructor;\n }\n ;\n var fs = require(\"fs\");\n var http = require(\"http\");\n var https = require(\"https\");\n var url = require(\"url\");\n var fileUriRegex = /^file:\\/\\/\\/[a-zA-Z]:\\//;\n function parseUrl(sourceUrl) {\n var parsedUrl = url.parse(sourceUrl);\n if (parsedUrl.protocol === \"file:\" || parsedUrl.host) {\n return parsedUrl;\n }\n if (/^[a-z]:[/\\\\]/i.test(sourceUrl)) {\n return url.parse(\"file:///\".concat(sourceUrl));\n }\n if (!parsedUrl.host) {\n parsedUrl.protocol = \"file:\";\n }\n return parsedUrl;\n }\n var PDFNodeStream = /*#__PURE__*/function () {\n function PDFNodeStream(source) {\n _classCallCheck(this, PDFNodeStream);\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 _createClass(PDFNodeStream, [{\n key: \"_progressiveDataLength\",\n get: function get() {\n var _this$_fullRequestRea, _this$_fullRequestRea2;\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 var rangeReader = this.isFsUrl ? new PDFNodeStreamFsRangeReader(this, start, end) : new PDFNodeStreamRangeReader(this, start, end);\n this._rangeRequestReaders.push(rangeReader);\n return rangeReader;\n }\n }, {\n key: \"cancelAllRequests\",\n value: function cancelAllRequests(reason) {\n if (this._fullRequestReader) {\n this._fullRequestReader.cancel(reason);\n }\n var _iterator = _createForOfIteratorHelper(this._rangeRequestReaders.slice(0)),\n _step;\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 return PDFNodeStream;\n }();\n exports.PDFNodeStream = PDFNodeStream;\n var BaseFullReader = /*#__PURE__*/function () {\n function BaseFullReader(stream) {\n _classCallCheck(this, BaseFullReader);\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 if (!this._rangeChunkSize && !this._disableRange) {\n this._disableRange = true;\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 _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 case 2:\n if (!this._done) {\n _context.next = 4;\n break;\n }\n return _context.abrupt(\"return\", {\n value: undefined,\n done: true\n });\n case 4:\n if (!this._storedError) {\n _context.next = 6;\n break;\n }\n throw this._storedError;\n case 6:\n chunk = this._readableStream.read();\n if (!(chunk === null)) {\n _context.next = 10;\n break;\n }\n this._readCapability = (0, _util.createPromiseCapability)();\n return _context.abrupt(\"return\", this.read());\n case 10:\n this._loaded += chunk.length;\n if (this.onProgress) {\n this.onProgress({\n loaded: this._loaded,\n total: this._contentLength\n });\n }\n buffer = new Uint8Array(chunk).buffer;\n return _context.abrupt(\"return\", {\n value: buffer,\n done: false\n });\n case 14:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee, this);\n }));\n function read() {\n return _read.apply(this, arguments);\n }\n return read;\n }()\n }, {\n key: \"cancel\",\n value: function cancel(reason) {\n if (!this._readableStream) {\n this._error(reason);\n return;\n }\n this._readableStream.destroy(reason);\n }\n }, {\n key: \"_error\",\n value: function _error(reason) {\n this._storedError = reason;\n this._readCapability.resolve();\n }\n }, {\n key: \"_setReadableStream\",\n value: function _setReadableStream(readableStream) {\n var _this = this;\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 _this._readCapability.resolve();\n });\n readableStream.on(\"error\", function (reason) {\n _this._error(reason);\n });\n if (!this._isStreamingSupported && this._isRangeSupported) {\n this._error(new _util.AbortException(\"streaming is disabled\"));\n }\n if (this._storedError) {\n this._readableStream.destroy(this._storedError);\n }\n }\n }]);\n return BaseFullReader;\n }();\n var BaseRangeReader = /*#__PURE__*/function () {\n function BaseRangeReader(stream) {\n _classCallCheck(this, BaseRangeReader);\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 _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 case 2:\n if (!this._done) {\n _context2.next = 4;\n break;\n }\n return _context2.abrupt(\"return\", {\n value: undefined,\n done: true\n });\n case 4:\n if (!this._storedError) {\n _context2.next = 6;\n break;\n }\n throw this._storedError;\n case 6:\n chunk = this._readableStream.read();\n if (!(chunk === null)) {\n _context2.next = 10;\n break;\n }\n this._readCapability = (0, _util.createPromiseCapability)();\n return _context2.abrupt(\"return\", this.read());\n case 10:\n this._loaded += chunk.length;\n if (this.onProgress) {\n this.onProgress({\n loaded: this._loaded\n });\n }\n buffer = new Uint8Array(chunk).buffer;\n return _context2.abrupt(\"return\", {\n value: buffer,\n done: false\n });\n case 14:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2, this);\n }));\n function read() {\n return _read2.apply(this, arguments);\n }\n return read;\n }()\n }, {\n key: \"cancel\",\n value: function cancel(reason) {\n if (!this._readableStream) {\n this._error(reason);\n return;\n }\n this._readableStream.destroy(reason);\n }\n }, {\n key: \"_error\",\n value: function _error(reason) {\n this._storedError = reason;\n this._readCapability.resolve();\n }\n }, {\n key: \"_setReadableStream\",\n value: function _setReadableStream(readableStream) {\n var _this2 = this;\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 _this2._readCapability.resolve();\n });\n readableStream.on(\"error\", function (reason) {\n _this2._error(reason);\n });\n if (this._storedError) {\n this._readableStream.destroy(this._storedError);\n }\n }\n }]);\n return BaseRangeReader;\n }();\n function 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 var PDFNodeStreamFullReader = /*#__PURE__*/function (_BaseFullReader) {\n _inherits(PDFNodeStreamFullReader, _BaseFullReader);\n var _super = _createSuper(PDFNodeStreamFullReader);\n function PDFNodeStreamFullReader(stream) {\n var _this3;\n _classCallCheck(this, PDFNodeStreamFullReader);\n _this3 = _super.call(this, stream);\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 _this3._headersCapability.reject(error);\n return;\n }\n _this3._headersCapability.resolve();\n _this3._setReadableStream(response);\n var getResponseHeader = function getResponseHeader(name) {\n return _this3._readableStream.headers[name.toLowerCase()];\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 _this3._isRangeSupported = allowRangeRequests;\n _this3._contentLength = suggestedLength || _this3._contentLength;\n _this3._filename = (0, _network_utils.extractFilenameFromHeader)(getResponseHeader);\n };\n _this3._request = null;\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 _this3._request.on(\"error\", function (reason) {\n _this3._storedError = reason;\n _this3._headersCapability.reject(reason);\n });\n _this3._request.end();\n return _this3;\n }\n return PDFNodeStreamFullReader;\n }(BaseFullReader);\n var PDFNodeStreamRangeReader = /*#__PURE__*/function (_BaseRangeReader) {\n _inherits(PDFNodeStreamRangeReader, _BaseRangeReader);\n var _super2 = _createSuper(PDFNodeStreamRangeReader);\n function PDFNodeStreamRangeReader(stream, start, end) {\n var _this4;\n _classCallCheck(this, PDFNodeStreamRangeReader);\n _this4 = _super2.call(this, stream);\n _this4._httpHeaders = {};\n for (var property in stream.httpHeaders) {\n var value = stream.httpHeaders[property];\n if (typeof value === \"undefined\") {\n continue;\n }\n _this4._httpHeaders[property] = value;\n }\n _this4._httpHeaders.Range = \"bytes=\".concat(start, \"-\").concat(end - 1);\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 _this4._setReadableStream(response);\n };\n _this4._request = null;\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 _this4._request.on(\"error\", function (reason) {\n _this4._storedError = reason;\n });\n _this4._request.end();\n return _this4;\n }\n return PDFNodeStreamRangeReader;\n }(BaseRangeReader);\n var PDFNodeStreamFsFullReader = /*#__PURE__*/function (_BaseFullReader2) {\n _inherits(PDFNodeStreamFsFullReader, _BaseFullReader2);\n var _super3 = _createSuper(PDFNodeStreamFsFullReader);\n function PDFNodeStreamFsFullReader(stream) {\n var _this5;\n _classCallCheck(this, PDFNodeStreamFsFullReader);\n _this5 = _super3.call(this, stream);\n var path = decodeURIComponent(_this5._url.path);\n if (fileUriRegex.test(_this5._url.href)) {\n path = path.replace(/^\\//, \"\");\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 _this5._storedError = error;\n _this5._headersCapability.reject(error);\n return;\n }\n _this5._contentLength = stat.size;\n _this5._setReadableStream(fs.createReadStream(path));\n _this5._headersCapability.resolve();\n });\n return _this5;\n }\n return PDFNodeStreamFsFullReader;\n }(BaseFullReader);\n var PDFNodeStreamFsRangeReader = /*#__PURE__*/function (_BaseRangeReader2) {\n _inherits(PDFNodeStreamFsRangeReader, _BaseRangeReader2);\n var _super4 = _createSuper(PDFNodeStreamFsRangeReader);\n function PDFNodeStreamFsRangeReader(stream, start, end) {\n var _this6;\n _classCallCheck(this, PDFNodeStreamFsRangeReader);\n _this6 = _super4.call(this, stream);\n var path = decodeURIComponent(_this6._url.path);\n if (fileUriRegex.test(_this6._url.href)) {\n path = path.replace(/^\\//, \"\");\n }\n _this6._setReadableStream(fs.createReadStream(path, {\n start: start,\n end: end - 1\n }));\n return _this6;\n }\n return PDFNodeStreamFsRangeReader;\n }(BaseRangeReader);\n\n /***/\n }, /* 154 */\n /***/function (__unused_webpack_module, exports, __w_pdfjs_require__) {\n \"use strict\";\n\n Object.defineProperty(exports, \"__esModule\", {\n value: true\n });\n exports.createResponseStatusError = createResponseStatusError;\n exports.extractFilenameFromHeader = extractFilenameFromHeader;\n exports.validateRangeRequestCapabilities = validateRangeRequestCapabilities;\n exports.validateResponseStatus = validateResponseStatus;\n var _util = __w_pdfjs_require__(4);\n var _content_disposition = __w_pdfjs_require__(155);\n var _display_utils = __w_pdfjs_require__(1);\n function 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 if (!Number.isInteger(length)) {\n return returnValues;\n }\n returnValues.suggestedLength = length;\n if (length <= 2 * rangeChunkSize) {\n return returnValues;\n }\n if (disableRange || !isHttp) {\n return returnValues;\n }\n if (getResponseHeader(\"Accept-Ranges\") !== \"bytes\") {\n return returnValues;\n }\n var contentEncoding = getResponseHeader(\"Content-Encoding\") || \"identity\";\n if (contentEncoding !== \"identity\") {\n return returnValues;\n }\n returnValues.allowRangeRequests = true;\n return returnValues;\n }\n function extractFilenameFromHeader(getResponseHeader) {\n var contentDisposition = getResponseHeader(\"Content-Disposition\");\n if (contentDisposition) {\n var filename = (0, _content_disposition.getFilenameFromContentDispositionHeader)(contentDisposition);\n if (filename.includes(\"%\")) {\n try {\n filename = decodeURIComponent(filename);\n } catch (ex) {}\n }\n if ((0, _display_utils.isPdfFile)(filename)) {\n return filename;\n }\n }\n return null;\n }\n function createResponseStatusError(status, url) {\n if (status === 404 || status === 0 && url.startsWith(\"file:\")) {\n return new _util.MissingPDFException('Missing PDF \"' + url + '\".');\n }\n return new _util.UnexpectedResponseException(\"Unexpected server response (\".concat(status, \") while retrieving PDF \\\"\").concat(url, \"\\\".\"), status);\n }\n function validateResponseStatus(status) {\n return status === 200 || status === 206;\n }\n\n /***/\n }, /* 155 */\n /***/function (__unused_webpack_module, exports, __w_pdfjs_require__) {\n \"use strict\";\n\n Object.defineProperty(exports, \"__esModule\", {\n value: true\n });\n exports.getFilenameFromContentDispositionHeader = getFilenameFromContentDispositionHeader;\n var _util = __w_pdfjs_require__(4);\n function _slicedToArray(arr, i) {\n return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest();\n }\n function _nonIterableRest() {\n 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 }\n function _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return _arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);\n }\n function _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n for (var i = 0, arr2 = new Array(len); i < len; i++) {\n arr2[i] = arr[i];\n }\n return arr2;\n }\n function _iterableToArrayLimit(arr, i) {\n var _i = arr == null ? null : typeof Symbol !== \"undefined\" && arr[Symbol.iterator] || arr[\"@@iterator\"];\n if (_i == null) return;\n var _arr = [];\n var _n = true;\n var _d = false;\n var _s, _e;\n try {\n for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) {\n _arr.push(_s.value);\n if (i && _arr.length === i) break;\n }\n } catch (err) {\n _d = true;\n _e = err;\n } finally {\n try {\n if (!_n && _i[\"return\"] != null) _i[\"return\"]();\n } finally {\n if (_d) throw _e;\n }\n }\n return _arr;\n }\n function _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n }\n function getFilenameFromContentDispositionHeader(contentDisposition) {\n var needsEncodingFixup = true;\n var tmp = toParamRegExp(\"filename\\\\*\", \"i\").exec(contentDisposition);\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 tmp = rfc2231getparam(contentDisposition);\n if (tmp) {\n var _filename = rfc2047decode(tmp);\n return fixupEncoding(_filename);\n }\n tmp = toParamRegExp(\"filename\", \"i\").exec(contentDisposition);\n if (tmp) {\n tmp = tmp[1];\n var _filename2 = rfc2616unquote(tmp);\n _filename2 = rfc2047decode(_filename2);\n return fixupEncoding(_filename2);\n }\n function toParamRegExp(attributePattern, flags) {\n return new RegExp(\"(?:^|;)\\\\s*\" + attributePattern + \"\\\\s*=\\\\s*\" + \"(\" + '[^\";\\\\s][^;\\\\s]*' + \"|\" + '\"(?:[^\"\\\\\\\\]|\\\\\\\\\"?)+\"?' + \")\", flags);\n }\n function textdecode(encoding, value) {\n if (encoding) {\n if (!/^[\\x00-\\xFF]+$/.test(value)) {\n return value;\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 return value;\n }\n function fixupEncoding(value) {\n if (needsEncodingFixup && /[\\x80-\\xff]/.test(value)) {\n value = textdecode(\"utf-8\", value);\n if (needsEncodingFixup) {\n value = textdecode(\"iso-8859-1\", value);\n }\n }\n return value;\n }\n function rfc2231getparam(contentDispositionStr) {\n var matches = [];\n var match;\n var iter = toParamRegExp(\"filename\\\\*((?!0\\\\d)\\\\d+)(\\\\*?)\", \"ig\");\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 = parseInt(n, 10);\n if (n in matches) {\n if (n === 0) {\n break;\n }\n continue;\n }\n matches[n] = [quot, part];\n }\n var parts = [];\n for (var _n2 = 0; _n2 < matches.length; ++_n2) {\n if (!(_n2 in matches)) {\n break;\n }\n var _matches$_n = _slicedToArray(matches[_n2], 2),\n _quot = _matches$_n[0],\n _part = _matches$_n[1];\n _part = rfc2616unquote(_part);\n if (_quot) {\n _part = unescape(_part);\n if (_n2 === 0) {\n _part = rfc5987decode(_part);\n }\n }\n parts.push(_part);\n }\n return parts.join(\"\");\n }\n function rfc2616unquote(value) {\n if (value.startsWith('\"')) {\n var parts = value.slice(1).split('\\\\\"');\n for (var i = 0; i < parts.length; ++i) {\n var quotindex = parts[i].indexOf('\"');\n if (quotindex !== -1) {\n parts[i] = parts[i].slice(0, quotindex);\n parts.length = i + 1;\n }\n parts[i] = parts[i].replace(/\\\\(.)/g, \"$1\");\n }\n value = parts.join('\"');\n }\n return value;\n }\n function rfc5987decode(extvalue) {\n var encodingend = extvalue.indexOf(\"'\");\n if (encodingend === -1) {\n return extvalue;\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 function rfc2047decode(value) {\n if (!value.startsWith(\"=?\") || /[\\x00-\\x19\\x80-\\xff]/.test(value)) {\n return value;\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 try {\n text = atob(text);\n } catch (e) {}\n return textdecode(charset, text);\n });\n }\n return \"\";\n }\n\n /***/\n }, /* 156 */\n /***/function (__unused_webpack_module, exports, __w_pdfjs_require__) {\n \"use strict\";\n\n Object.defineProperty(exports, \"__esModule\", {\n value: true\n });\n exports.PDFNetworkStream = void 0;\n var _regenerator = _interopRequireDefault(__w_pdfjs_require__(2));\n var _util = __w_pdfjs_require__(4);\n var _network_utils = __w_pdfjs_require__(154);\n function _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n \"default\": obj\n };\n }\n function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {\n try {\n var info = gen[key](arg);\n var value = info.value;\n } catch (error) {\n reject(error);\n return;\n }\n if (info.done) {\n resolve(value);\n } else {\n Promise.resolve(value).then(_next, _throw);\n }\n }\n function _asyncToGenerator(fn) {\n return function () {\n var self = this,\n args = arguments;\n return new Promise(function (resolve, reject) {\n var gen = fn.apply(self, args);\n function _next(value) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value);\n }\n function _throw(err) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err);\n }\n _next(undefined);\n });\n };\n }\n function _createForOfIteratorHelper(o, allowArrayLike) {\n var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"];\n if (!it) {\n if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") {\n if (it) o = it;\n var i = 0;\n var F = function F() {};\n return {\n s: F,\n n: function n() {\n if (i >= o.length) return {\n done: true\n };\n return {\n done: false,\n value: o[i++]\n };\n },\n e: function e(_e) {\n throw _e;\n },\n f: F\n };\n }\n throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n }\n var normalCompletion = true,\n didErr = false,\n err;\n return {\n s: function s() {\n it = it.call(o);\n },\n n: function n() {\n var step = it.next();\n normalCompletion = step.done;\n return step;\n },\n e: function e(_e2) {\n didErr = true;\n err = _e2;\n },\n f: function f() {\n try {\n if (!normalCompletion && it[\"return\"] != null) it[\"return\"]();\n } finally {\n if (didErr) throw err;\n }\n }\n };\n }\n function _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return _arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);\n }\n function _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n for (var i = 0, arr2 = new Array(len); i < len; i++) {\n arr2[i] = arr[i];\n }\n return arr2;\n }\n function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n }\n function _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n }\n function _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n return Constructor;\n }\n ;\n var OK_RESPONSE = 200;\n var PARTIAL_CONTENT_RESPONSE = 206;\n function getArrayBuffer(xhr) {\n var data = xhr.response;\n if (typeof data !== \"string\") {\n return data;\n }\n var array = (0, _util.stringToBytes)(data);\n return array.buffer;\n }\n var NetworkManager = /*#__PURE__*/function () {\n function NetworkManager(url) {\n var args = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n _classCallCheck(this, NetworkManager);\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 this.getXhr = args.getXhr || function NetworkManager_getXhr() {\n return new XMLHttpRequest();\n };\n this.currXhrId = 0;\n this.pendingRequests = Object.create(null);\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 for (var prop in listeners) {\n args[prop] = listeners[prop];\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 for (var property in this.httpHeaders) {\n var value = this.httpHeaders[property];\n if (typeof value === \"undefined\") {\n continue;\n }\n xhr.setRequestHeader(property, value);\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 xhr.responseType = \"arraybuffer\";\n if (args.onError) {\n xhr.onerror = function (evt) {\n args.onError(xhr.status);\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 var pendingRequest = this.pendingRequests[xhrId];\n if (!pendingRequest) {\n return;\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 if (!pendingRequest) {\n return;\n }\n var xhr = pendingRequest.xhr;\n if (xhr.readyState >= 2 && pendingRequest.onHeadersReceived) {\n pendingRequest.onHeadersReceived();\n delete pendingRequest.onHeadersReceived;\n }\n if (xhr.readyState !== 4) {\n return;\n }\n if (!(xhrId in this.pendingRequests)) {\n return;\n }\n delete this.pendingRequests[xhrId];\n if (xhr.status === 0 && this.isHttp) {\n var _pendingRequest$onErr;\n (_pendingRequest$onErr = pendingRequest.onError) === null || _pendingRequest$onErr === void 0 ? void 0 : _pendingRequest$onErr.call(pendingRequest, xhr.status);\n return;\n }\n var xhrStatus = xhr.status || OK_RESPONSE;\n var ok_response_on_range_request = xhrStatus === OK_RESPONSE && pendingRequest.expectedStatus === PARTIAL_CONTENT_RESPONSE;\n if (!ok_response_on_range_request && xhrStatus !== pendingRequest.expectedStatus) {\n var _pendingRequest$onErr2;\n (_pendingRequest$onErr2 = pendingRequest.onError) === null || _pendingRequest$onErr2 === void 0 ? void 0 : _pendingRequest$onErr2.call(pendingRequest, xhr.status);\n return;\n }\n var chunk = getArrayBuffer(xhr);\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 (_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 return NetworkManager;\n }();\n var PDFNetworkStream = /*#__PURE__*/function () {\n function PDFNetworkStream(source) {\n _classCallCheck(this, PDFNetworkStream);\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 _createClass(PDFNetworkStream, [{\n key: \"_onRangeRequestReaderClosed\",\n value: function _onRangeRequestReaderClosed(reader) {\n var i = this._rangeRequestReaders.indexOf(reader);\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 this._rangeRequestReaders.push(reader);\n return reader;\n }\n }, {\n key: \"cancelAllRequests\",\n value: function cancelAllRequests(reason) {\n var _this$_fullRequestRea;\n (_this$_fullRequestRea = this._fullRequestReader) === null || _this$_fullRequestRea === void 0 ? void 0 : _this$_fullRequestRea.cancel(reason);\n var _iterator = _createForOfIteratorHelper(this._rangeRequestReaders.slice(0)),\n _step;\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 return PDFNetworkStream;\n }();\n exports.PDFNetworkStream = PDFNetworkStream;\n var PDFNetworkStreamFullRequestReader = /*#__PURE__*/function () {\n function PDFNetworkStreamFullRequestReader(manager, source) {\n _classCallCheck(this, PDFNetworkStreamFullRequestReader);\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 if (!this._rangeChunkSize && !this._disableRange) {\n this._disableRange = true;\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 _createClass(PDFNetworkStreamFullRequestReader, [{\n key: \"_onHeadersReceived\",\n value: function _onHeadersReceived() {\n var fullRequestXhrId = this._fullRequestId;\n var fullRequestXhr = this._manager.getRequestXhr(fullRequestXhrId);\n var getResponseHeader = function getResponseHeader(name) {\n return fullRequestXhr.getResponseHeader(name);\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 if (allowRangeRequests) {\n this._isRangeSupported = true;\n }\n this._contentLength = suggestedLength || this._contentLength;\n this._filename = (0, _network_utils.extractFilenameFromHeader)(getResponseHeader);\n if (this._isRangeSupported) {\n this._manager.abortRequest(fullRequestXhrId);\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 requestCapability.resolve({\n value: data.chunk,\n done: false\n });\n } else {\n this._cachedChunks.push(data.chunk);\n }\n }\n this._done = true;\n if (this._cachedChunks.length > 0) {\n return;\n }\n var _iterator2 = _createForOfIteratorHelper(this._requests),\n _step2;\n try {\n for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {\n var _requestCapability = _step2.value;\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 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 this._headersReceivedCapability.reject(this._storedError);\n var _iterator3 = _createForOfIteratorHelper(this._requests),\n _step3;\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 this._requests.length = 0;\n this._cachedChunks.length = 0;\n }\n }, {\n key: \"_onProgress\",\n value: function _onProgress(evt) {\n var _this$onProgress;\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 throw this._storedError;\n case 2:\n if (!(this._cachedChunks.length > 0)) {\n _context.next = 5;\n break;\n }\n chunk = this._cachedChunks.shift();\n return _context.abrupt(\"return\", {\n value: chunk,\n done: false\n });\n case 5:\n if (!this._done) {\n _context.next = 7;\n break;\n }\n return _context.abrupt(\"return\", {\n value: undefined,\n done: true\n });\n case 7:\n requestCapability = (0, _util.createPromiseCapability)();\n this._requests.push(requestCapability);\n return _context.abrupt(\"return\", requestCapability.promise);\n case 10:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee, this);\n }));\n function read() {\n return _read.apply(this, arguments);\n }\n return read;\n }()\n }, {\n key: \"cancel\",\n value: function cancel(reason) {\n this._done = true;\n this._headersReceivedCapability.reject(reason);\n var _iterator4 = _createForOfIteratorHelper(this._requests),\n _step4;\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 this._requests.length = 0;\n if (this._manager.isPendingRequest(this._fullRequestId)) {\n this._manager.abortRequest(this._fullRequestId);\n }\n this._fullRequestReader = null;\n }\n }]);\n return PDFNetworkStreamFullRequestReader;\n }();\n var PDFNetworkStreamRangeRequestReader = /*#__PURE__*/function () {\n function PDFNetworkStreamRangeRequestReader(manager, begin, end) {\n _classCallCheck(this, PDFNetworkStreamRangeRequestReader);\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 _createClass(PDFNetworkStreamRangeRequestReader, [{\n key: \"_close\",\n value: function _close() {\n var _this$onClosed;\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 if (this._requests.length > 0) {\n var requestCapability = this._requests.shift();\n requestCapability.resolve({\n value: chunk,\n done: false\n });\n } else {\n this._queuedChunk = chunk;\n }\n this._done = true;\n var _iterator5 = _createForOfIteratorHelper(this._requests),\n _step5;\n try {\n for (_iterator5.s(); !(_step5 = _iterator5.n()).done;) {\n var _requestCapability2 = _step5.value;\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 this._requests.length = 0;\n this._close();\n }\n }, {\n key: \"_onError\",\n value: function _onError(status) {\n this._storedError = (0, _network_utils.createResponseStatusError)(status, this._url);\n var _iterator6 = _createForOfIteratorHelper(this._requests),\n _step6;\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 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 (_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 throw this._storedError;\n case 2:\n if (!(this._queuedChunk !== null)) {\n _context2.next = 6;\n break;\n }\n chunk = this._queuedChunk;\n this._queuedChunk = null;\n return _context2.abrupt(\"return\", {\n value: chunk,\n done: false\n });\n case 6:\n if (!this._done) {\n _context2.next = 8;\n break;\n }\n return _context2.abrupt(\"return\", {\n value: undefined,\n done: true\n });\n case 8:\n requestCapability = (0, _util.createPromiseCapability)();\n this._requests.push(requestCapability);\n return _context2.abrupt(\"return\", requestCapability.promise);\n case 11:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2, this);\n }));\n function read() {\n return _read2.apply(this, arguments);\n }\n return read;\n }()\n }, {\n key: \"cancel\",\n value: function cancel(reason) {\n this._done = true;\n var _iterator7 = _createForOfIteratorHelper(this._requests),\n _step7;\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 this._requests.length = 0;\n if (this._manager.isPendingRequest(this._requestId)) {\n this._manager.abortRequest(this._requestId);\n }\n this._close();\n }\n }]);\n return PDFNetworkStreamRangeRequestReader;\n }();\n\n /***/\n }, /* 157 */\n /***/function (__unused_webpack_module, exports, __w_pdfjs_require__) {\n \"use strict\";\n\n Object.defineProperty(exports, \"__esModule\", {\n value: true\n });\n exports.PDFFetchStream = void 0;\n var _regenerator = _interopRequireDefault(__w_pdfjs_require__(2));\n var _util = __w_pdfjs_require__(4);\n var _network_utils = __w_pdfjs_require__(154);\n function _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n \"default\": obj\n };\n }\n function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {\n try {\n var info = gen[key](arg);\n var value = info.value;\n } catch (error) {\n reject(error);\n return;\n }\n if (info.done) {\n resolve(value);\n } else {\n Promise.resolve(value).then(_next, _throw);\n }\n }\n function _asyncToGenerator(fn) {\n return function () {\n var self = this,\n args = arguments;\n return new Promise(function (resolve, reject) {\n var gen = fn.apply(self, args);\n function _next(value) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value);\n }\n function _throw(err) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err);\n }\n _next(undefined);\n });\n };\n }\n function _createForOfIteratorHelper(o, allowArrayLike) {\n var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"];\n if (!it) {\n if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") {\n if (it) o = it;\n var i = 0;\n var F = function F() {};\n return {\n s: F,\n n: function n() {\n if (i >= o.length) return {\n done: true\n };\n return {\n done: false,\n value: o[i++]\n };\n },\n e: function e(_e) {\n throw _e;\n },\n f: F\n };\n }\n throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n }\n var normalCompletion = true,\n didErr = false,\n err;\n return {\n s: function s() {\n it = it.call(o);\n },\n n: function n() {\n var step = it.next();\n normalCompletion = step.done;\n return step;\n },\n e: function e(_e2) {\n didErr = true;\n err = _e2;\n },\n f: function f() {\n try {\n if (!normalCompletion && it[\"return\"] != null) it[\"return\"]();\n } finally {\n if (didErr) throw err;\n }\n }\n };\n }\n function _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return _arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);\n }\n function _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n for (var i = 0, arr2 = new Array(len); i < len; i++) {\n arr2[i] = arr[i];\n }\n return arr2;\n }\n function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n }\n function _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n }\n function _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n return Constructor;\n }\n ;\n function 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 function createHeaders(httpHeaders) {\n var headers = new Headers();\n for (var property in httpHeaders) {\n var value = httpHeaders[property];\n if (typeof value === \"undefined\") {\n continue;\n }\n headers.append(property, value);\n }\n return headers;\n }\n var PDFFetchStream = /*#__PURE__*/function () {\n function PDFFetchStream(source) {\n _classCallCheck(this, PDFFetchStream);\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 _createClass(PDFFetchStream, [{\n key: \"_progressiveDataLength\",\n get: function get() {\n var _this$_fullRequestRea, _this$_fullRequestRea2;\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 var reader = new PDFFetchStreamRangeReader(this, begin, end);\n this._rangeRequestReaders.push(reader);\n return reader;\n }\n }, {\n key: \"cancelAllRequests\",\n value: function cancelAllRequests(reason) {\n if (this._fullRequestReader) {\n this._fullRequestReader.cancel(reason);\n }\n var _iterator = _createForOfIteratorHelper(this._rangeRequestReaders.slice(0)),\n _step;\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 return PDFFetchStream;\n }();\n exports.PDFFetchStream = PDFFetchStream;\n var PDFFetchStreamReader = /*#__PURE__*/function () {\n function PDFFetchStreamReader(stream) {\n var _this = this;\n _classCallCheck(this, PDFFetchStreamReader);\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 if (!this._rangeChunkSize && !this._disableRange) {\n this._disableRange = true;\n }\n if (typeof AbortController !== \"undefined\") {\n this._abortController = new AbortController();\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 _this._reader = response.body.getReader();\n _this._headersCapability.resolve();\n var getResponseHeader = function getResponseHeader(name) {\n return response.headers.get(name);\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 _this._isRangeSupported = allowRangeRequests;\n _this._contentLength = suggestedLength || _this._contentLength;\n _this._filename = (0, _network_utils.extractFilenameFromHeader)(getResponseHeader);\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 _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 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 case 2:\n _context.next = 4;\n return this._reader.read();\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 if (!done) {\n _context.next = 9;\n break;\n }\n return _context.abrupt(\"return\", {\n value: value,\n done: done\n });\n case 9:\n this._loaded += value.byteLength;\n if (this.onProgress) {\n this.onProgress({\n loaded: this._loaded,\n total: this._contentLength\n });\n }\n buffer = new Uint8Array(value).buffer;\n return _context.abrupt(\"return\", {\n value: buffer,\n done: false\n });\n case 13:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee, this);\n }));\n function read() {\n return _read.apply(this, arguments);\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 if (this._abortController) {\n this._abortController.abort();\n }\n }\n }]);\n return PDFFetchStreamReader;\n }();\n var PDFFetchStreamRangeReader = /*#__PURE__*/function () {\n function PDFFetchStreamRangeReader(stream, begin, end) {\n var _this2 = this;\n _classCallCheck(this, PDFFetchStreamRangeReader);\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 if (typeof AbortController !== \"undefined\") {\n this._abortController = new AbortController();\n }\n this._headers = createHeaders(this._stream.httpHeaders);\n this._headers.append(\"Range\", \"bytes=\".concat(begin, \"-\").concat(end - 1));\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 _this2._readCapability.resolve();\n _this2._reader = response.body.getReader();\n })[\"catch\"](this._readCapability.reject);\n this.onProgress = null;\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 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 case 2:\n _context2.next = 4;\n return this._reader.read();\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 if (!done) {\n _context2.next = 9;\n break;\n }\n return _context2.abrupt(\"return\", {\n value: value,\n done: done\n });\n case 9:\n this._loaded += value.byteLength;\n if (this.onProgress) {\n this.onProgress({\n loaded: this._loaded\n });\n }\n buffer = new Uint8Array(value).buffer;\n return _context2.abrupt(\"return\", {\n value: buffer,\n done: false\n });\n case 13:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2, this);\n }));\n function read() {\n return _read2.apply(this, arguments);\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 if (this._abortController) {\n this._abortController.abort();\n }\n }\n }]);\n return PDFFetchStreamRangeReader;\n }();\n\n /***/\n }\n /******/];\n /************************************************************************/\n /******/ // The module cache\n /******/\n var __webpack_module_cache__ = {};\n /******/\n /******/ // The require function\n /******/\n function __w_pdfjs_require__(moduleId) {\n /******/ // Check if module is in cache\n /******/var cachedModule = __webpack_module_cache__[moduleId];\n /******/\n if (cachedModule !== undefined) {\n /******/return cachedModule.exports;\n /******/\n }\n /******/ // Create a new module (and put it into the cache)\n /******/\n var module = __webpack_module_cache__[moduleId] = {\n /******/id: moduleId,\n /******/loaded: false,\n /******/exports: {}\n /******/\n };\n /******/\n /******/ // Execute the module function\n /******/\n __webpack_modules__[moduleId].call(module.exports, module, module.exports, __w_pdfjs_require__);\n /******/\n /******/ // Flag the module as loaded\n /******/\n module.loaded = true;\n /******/\n /******/ // Return the exports of the module\n /******/\n return module.exports;\n /******/\n }\n /******/\n /************************************************************************/\n /******/ /* webpack/runtime/node module decorator */\n /******/\n (function () {\n /******/__w_pdfjs_require__.nmd = function (module) {\n /******/module.paths = [];\n /******/\n if (!module.children) module.children = [];\n /******/\n return module;\n /******/\n };\n /******/\n })();\n /******/\n /************************************************************************/\n var __webpack_exports__ = {};\n // This entry need to be wrapped in an IIFE because it need to be in strict mode.\n (function () {\n \"use strict\";\n\n var exports = __webpack_exports__;\n Object.defineProperty(exports, \"__esModule\", {\n value: true\n });\n Object.defineProperty(exports, \"AnnotationLayer\", {\n enumerable: true,\n get: function get() {\n return _annotation_layer.AnnotationLayer;\n }\n });\n Object.defineProperty(exports, \"AnnotationMode\", {\n enumerable: true,\n get: function get() {\n return _util.AnnotationMode;\n }\n });\n Object.defineProperty(exports, \"CMapCompressionType\", {\n enumerable: true,\n get: function get() {\n return _util.CMapCompressionType;\n }\n });\n Object.defineProperty(exports, \"GlobalWorkerOptions\", {\n enumerable: true,\n get: function get() {\n return _worker_options.GlobalWorkerOptions;\n }\n });\n Object.defineProperty(exports, \"InvalidPDFException\", {\n enumerable: true,\n get: function get() {\n return _util.InvalidPDFException;\n }\n });\n Object.defineProperty(exports, \"LinkTarget\", {\n enumerable: true,\n get: function get() {\n return _display_utils.LinkTarget;\n }\n });\n Object.defineProperty(exports, \"LoopbackPort\", {\n enumerable: true,\n get: function get() {\n return _api.LoopbackPort;\n }\n });\n Object.defineProperty(exports, \"MissingPDFException\", {\n enumerable: true,\n get: function get() {\n return _util.MissingPDFException;\n }\n });\n Object.defineProperty(exports, \"OPS\", {\n enumerable: true,\n get: function get() {\n return _util.OPS;\n }\n });\n Object.defineProperty(exports, \"PDFDataRangeTransport\", {\n enumerable: true,\n get: function get() {\n return _api.PDFDataRangeTransport;\n }\n });\n Object.defineProperty(exports, \"PDFDateString\", {\n enumerable: true,\n get: function get() {\n return _display_utils.PDFDateString;\n }\n });\n Object.defineProperty(exports, \"PDFWorker\", {\n enumerable: true,\n get: function get() {\n return _api.PDFWorker;\n }\n });\n Object.defineProperty(exports, \"PasswordResponses\", {\n enumerable: true,\n get: function get() {\n return _util.PasswordResponses;\n }\n });\n Object.defineProperty(exports, \"PermissionFlag\", {\n enumerable: true,\n get: function get() {\n return _util.PermissionFlag;\n }\n });\n Object.defineProperty(exports, \"PixelsPerInch\", {\n enumerable: true,\n get: function get() {\n return _display_utils.PixelsPerInch;\n }\n });\n Object.defineProperty(exports, \"RenderingCancelledException\", {\n enumerable: true,\n get: function get() {\n return _display_utils.RenderingCancelledException;\n }\n });\n Object.defineProperty(exports, \"SVGGraphics\", {\n enumerable: true,\n get: function get() {\n return _svg.SVGGraphics;\n }\n });\n Object.defineProperty(exports, \"UNSUPPORTED_FEATURES\", {\n enumerable: true,\n get: function get() {\n return _util.UNSUPPORTED_FEATURES;\n }\n });\n Object.defineProperty(exports, \"UnexpectedResponseException\", {\n enumerable: true,\n get: function get() {\n return _util.UnexpectedResponseException;\n }\n });\n Object.defineProperty(exports, \"Util\", {\n enumerable: true,\n get: function get() {\n return _util.Util;\n }\n });\n Object.defineProperty(exports, \"VerbosityLevel\", {\n enumerable: true,\n get: function get() {\n return _util.VerbosityLevel;\n }\n });\n Object.defineProperty(exports, \"XfaLayer\", {\n enumerable: true,\n get: function get() {\n return _xfa_layer.XfaLayer;\n }\n });\n Object.defineProperty(exports, \"addLinkAttributes\", {\n enumerable: true,\n get: function get() {\n return _display_utils.addLinkAttributes;\n }\n });\n Object.defineProperty(exports, \"build\", {\n enumerable: true,\n get: function get() {\n return _api.build;\n }\n });\n Object.defineProperty(exports, \"createObjectURL\", {\n enumerable: true,\n get: function get() {\n return _util.createObjectURL;\n }\n });\n Object.defineProperty(exports, \"createPromiseCapability\", {\n enumerable: true,\n get: function get() {\n return _util.createPromiseCapability;\n }\n });\n Object.defineProperty(exports, \"createValidAbsoluteUrl\", {\n enumerable: true,\n get: function get() {\n return _util.createValidAbsoluteUrl;\n }\n });\n Object.defineProperty(exports, \"getDocument\", {\n enumerable: true,\n get: function get() {\n return _api.getDocument;\n }\n });\n Object.defineProperty(exports, \"getFilenameFromUrl\", {\n enumerable: true,\n get: function get() {\n return _display_utils.getFilenameFromUrl;\n }\n });\n Object.defineProperty(exports, \"getPdfFilenameFromUrl\", {\n enumerable: true,\n get: function get() {\n return _display_utils.getPdfFilenameFromUrl;\n }\n });\n Object.defineProperty(exports, \"getXfaPageViewport\", {\n enumerable: true,\n get: function get() {\n return _display_utils.getXfaPageViewport;\n }\n });\n Object.defineProperty(exports, \"isPdfFile\", {\n enumerable: true,\n get: function get() {\n return _display_utils.isPdfFile;\n }\n });\n Object.defineProperty(exports, \"loadScript\", {\n enumerable: true,\n get: function get() {\n return _display_utils.loadScript;\n }\n });\n Object.defineProperty(exports, \"removeNullCharacters\", {\n enumerable: true,\n get: function get() {\n return _util.removeNullCharacters;\n }\n });\n Object.defineProperty(exports, \"renderTextLayer\", {\n enumerable: true,\n get: function get() {\n return _text_layer.renderTextLayer;\n }\n });\n Object.defineProperty(exports, \"shadow\", {\n enumerable: true,\n get: function get() {\n return _util.shadow;\n }\n });\n Object.defineProperty(exports, \"version\", {\n enumerable: true,\n get: function get() {\n return _api.version;\n }\n });\n var _display_utils = __w_pdfjs_require__(1);\n var _util = __w_pdfjs_require__(4);\n var _api = __w_pdfjs_require__(136);\n var _annotation_layer = __w_pdfjs_require__(148);\n var _worker_options = __w_pdfjs_require__(142);\n var _is_node = __w_pdfjs_require__(6);\n var _text_layer = __w_pdfjs_require__(151);\n var _svg = __w_pdfjs_require__(152);\n var _xfa_layer = __w_pdfjs_require__(150);\n var pdfjsVersion = '2.12.313';\n var pdfjsBuild = 'a2ae56f39';\n {\n if (_is_node.isNodeJS) {\n var _require = __w_pdfjs_require__(153),\n PDFNodeStream = _require.PDFNodeStream;\n (0, _api.setPDFNetworkStreamFactory)(function (params) {\n return new PDFNodeStream(params);\n });\n } else {\n var _require2 = __w_pdfjs_require__(156),\n PDFNetworkStream = _require2.PDFNetworkStream;\n var _require3 = __w_pdfjs_require__(157),\n PDFFetchStream = _require3.PDFFetchStream;\n (0, _api.setPDFNetworkStreamFactory)(function (params) {\n if ((0, _display_utils.isValidFetchUrl)(params.url)) {\n return new PDFFetchStream(params);\n }\n return new PDFNetworkStream(params);\n });\n }\n }\n })();\n\n /******/\n return __webpack_exports__;\n /******/\n }()\n );\n});"],"sourceRoot":""}